class: title, smokescreen, shelf, bottom, no-footer background-image: url(images/internetmap.png) # 181U Spring 2020 ## Introduction to the Internet <style> h1 { border-bottom: 8px solid rgb(32,67,143); border-radius: 2px; width: 90%; } .smokescreen h1 { border-bottom: none; } .small {font-size: 80%} .smaller {font-size: 70%} .small-code.remark-slide-content.compact code {font-size:1.0rem} .very-small-code.remark-slide-content.compact code {font-size:0.9rem} .line-numbers{ /* Set "line-numbers-counter" to 0 */ counter-reset: line-numbers-counter; } .line-numbers .remark-code-line::before { /* Increment "line-numbers-counter" by 1 */ counter-increment: line-numbers-counter; content: counter(line-numbers-counter); text-align: right; width: 20px; border-right: 1px solid #aaa; display: inline-block; margin-right: 10px; padding: 0 5px; } </style> --- layout: true .footer[ - 181U - See acknowledgements ] --- class: compact # Agenda * What's the Internet ? * What's a protocol ? * Network Structure * "the Core " * A bit of history --- class: compact,img-right # What's the Internet   * Billions of connected computing devices - *hosts* = *end systems* - running *network apps* * *Communication links* - fiber,copper,radio,satellite - transmission rate: **bandwidth** * *Packet Switches* forward packets (chunks of data) - *routers* and *switches* --- class: compact # Internet-connected devices   --- class: compact # What's the Internet: "nuts and bolts" view  * **Internet**: "network of networks" - Interconnected ISPs * **Protocols** control sending, receiving of messages - e.g. IP, TCP, HTTP, Skype * **Internet standards** - RFC: Request for comments - IETF: Internet Engineering Task Force. --- class: compact, col-3 # What's a protocol ? **Human Protocols** * "what's the time?" * "I have a question" * Introduction <br> **Network Protocols** * Machines rather that humans * all communication activity in Internet governed by protocols <br> **Protocols** define **format**, **order** of **messages** *sent and received* among network entities and **actions taken** on message transmission and receipt --- class: compact # What's a protocol ? A Human protocol and a computer network protocol   --- class: compact # A closer look at network structure  * **network edge** - hosts: clients and servers - servers often in data centers * **access networks, physical media** - wired, wireless communicaiton links * **network core** - interconnected routers - network of networks --- class: compact # Access networks and physical media  **Q: How to connect end systems to edge router ?** * Residential access nets * Institutional access networks (school, company) * Mobile access networks **Keep in mind** * bandwidth (bits per second) of access network * latency (end-to-end time) of messages * shared or dedicated --- class: compact # Access network: digital subscriber line (DSL)   * Use **existing** telephone line to central office DSLAM - data over DSL phone line goes to Internet - voice over DSL phone line goes to telephone network * < 2.4 Mbps upstream transmission rate (typically < 1 Mbps) * < 24 Mbps downstream transmission rate (typically < 10 Mbps) --- class: compact # Access network: cable network   **frequency division multiplexing:** different channels transmitted on different frequency bands. --- class: compact # Access network: cable network   * **HFC: hybrid fiber coax** - asymmetric: up to 30Mpbs downstream transmission rate, 2 Mbps upstream transmission rate (now much faster) * **network** of cable, fiber attaches to ISP router - homes *share access network* to cable headend - unlike DSL, which has dedicated access to central office --- class: compact # Access network: home network   --- class: compact # Enterprise access networks (Ethernet)   * Typically used in companies, universities, etc. * 100 Mpbs, 1 Ggbs, 10 Gpbs transmission rates * today, end system typically connect into Ethernet switch --- class: compact # Wireless access networks Shared *wireless* access network connects end system to router veia base station (access point).  * **wireless LANS:** - within building (100ft) - 802.11 b/g/n (WiFi): 11,54,450 Mbps transmission rate  * **wide-area wireless access** - provided by telco (cellular) operator, 10's km - between 1 and 10 Mbps - 3G, 4G:LTE --- class: compact # Host: sends *packets* of data  Host sending function: * Breaks application message into smaller chunks known as *packets* of length *L* bits. * Transmits packets into access network at transmission rate *R* \\[ \\text{transmission delay } = \\frac{L (bits)}{R (\\frac{bits}{sec})}\\] --- class: compact # Packet-switching: store-and-forward   * Takes L/R seconds to transmit L-bit packet into link at R pbs * **store and forward**: entire packet must arrive at router before it can be transmitted on next link * For N hops, end-to-end delay is NL/R (assuming no propagation delay) --- class: compact # The network core  * Mesh of interconnected routers * Packet-switching: hosts break application-layer messages into *packets* - forward packets from one router to the next, across links on path from source to destination - each packet transmitted at full link capacity --- class: compact # Two key network-core functions * **routing:** determines source-destination taken by packets (routing algorithms) * **forwarding:** moves packets from router's input to appropriate router output   --- class: compact # Internet structure: network of networks * End systems connect to Internet via **access ISPs** (Internet Service Providers) * residential, company and university ISPs * Access ISPs in turn must be interconnected * so that two hosts can send packets to each other * Resulting network of networks is very complex * evolution was driven by **economics** and **national policies** --- class: compact # Internet structure: network of networks Competitors connnected through peering links and IXPs   --- class: compact # Internet structure: network of networks   * At center a small number of well-connected large networks * **"tier-1"** commercial ISPs (e.g. Level 3, Sprint, AT&T,...) with national & international coverage * **content provider networks** (e.g. Google): private network that connects its data networks to Internet often bypassing tier-1 and regional ISPs. --- class: compact # Tier-1 ISP: Sprint   --- class: compact # Protocol "Layers" Networks are complex with many "pieces" * hosts * routers * applications * protocols * hardware/software Is there any hope of an *organizing* structure for the network ? --- class: compact # Internet protocol stack  * **application** : supports network applications * FTP, SMTP, HTTP * **transport** : process-process data transfer * TCP, UDP * **network** : routing of packets from source to destination * IP, routing protocol * **link** : data transfer between neighboring network elements * Ethernet, Wifi, PPP * **physical**: bits "on the wire" --- class: compact # Encapsulation   --- class: compact # Internet History (Early packet-switching principles)  * **1961**: Kleinrock -- queuing theory shows effectiveness of packet-switching * **1964**: Baran -- packet-switching in military nets * **1967**: ARPAnet conceived by Advanced Research Projects Agency * **1969**: First ARPAnet node operational * **1972**: * ARPAnet public demo * NCP (Network Control Protocol) first host-host protocol * first e-mail program * ARPAnet has 15 nodes --- class: compact # Internet History 1972-1980: Internetworking, new and proprietary networks  * **1970**: ALOHAnet satellite network in Hawaii * **1974**: Cerf and Kahn -- architecture for interconnecting networks * **1976**: Ethernet at Xerox PARC * **late 70's**: Proprietary architectures DECnet, SNA, XNA * **1979**: ARPAnet has 200 nodes --- class: compact, col-2 # Internet History 1980-1990: new protocols, application, proliferation of networks * **1983**: deployment of TCP/IP * **1982**: smtp e-mail protocol defined * **1983**: DNS defined for name-to-IP-address translation * **1985**: ftp protocol defined * **1988**: TCP congestion control <br> * new national networks: CSnet, BITnet, NSFnet, Minitel * 100,000 hosts connected in confederation of networks --- class: compact, col-2 # Internet History 1990,2000's commercialization, the Web, new apps * **early 1990's**: ARPAnet decomissioned * **1991** : NSF lifts restricions on commerial use of NSFnet (decommisioned 1995) * **early 1990s**: Web * hypertext (bush 1945, Nelson 1960's) * HTML, HTPP: Berners-lee * 1994: Mosaic (later Netscape) * late 1990's: commercialization of the web **Late 1990's-2000's** * New killer apps: instant messaging, P2P file sharing * Network security becomes significant issue * Backbone links running at Gpbs --- class: compact, # Internet History 2005-present * ~5 Billion devices attached to Internet (2016) * Aggressive deployment of broadband access * Increasing ubiquity of high-speed wireless acces * Emergence of on-line social networks * Service providers (Google, Microsoft,...) create their own networks * bypass Internet providing "instantaneous" access to search, content * e-commerce, universities, enterprises running their services in the "cloud" (e.g. Amazon EC2) --- class: compact # Summary  * Cover Image: The Opte Project [<a href="https://creativecommons.org/licenses/by/2.5">CC BY 2.5</a>], <a href="https://commons.wikimedia.org/wiki/File:Internet_map_1024_-_transparent,_inverted.png">via Wikimedia Commons</a> * Source Material : Much of the content of these slides adapted from the slides provided for "Computer Networking: A Top Down Approach" 7th edition by Jim Kurose and Keith Ross. That material is copyright 1996-2016 J.F Kurose and K.W. Ross.