Chapter 1: Introduction What is a Network? What is Internet? Compared with postal service & telephone system Services provided “Nuts and Bolts” description Packet Switching vs. Circuit Switching Fundamental Issues in Computer Networking Protocol and Layered Architecture Internet Protocols, Architecture & History Readings: Chapter 1, Lecture Notes CSci4211: Introduction 1 Goal and Motivating Questions Motivating Questions: Our goal: • • get “feel” and terminology • more depth, detail • later in course • • approach: • – use Internet as example What is internet? What’s so special about it? What’s a protocol? How do I build a network? How do I deal with the complexity? • What does real Internet look like now? • Why I download slowly? CSci4211: Introduction 2 Internet is the network! • • • • • It’s big! It’s diverse! It’s complex! It’s everywhere (almost)! … and it keeps growing and changing! CSci4211: Introduction 3 Inter-networking A network can be defined recursively as... – two or more nodes connected by a link, or two or more networks connected by two or more nodes Internet: networks of networks started as ARPAnet with only 4 nodes CSci4211: Introduction 4 Map of Internet csci4211 Introduction 6 csci4211 Introduction 7 More gadgets are plugged in … • servers, desktops, laptops, … • smart mobile phones, iPads, e-readers, … • now TVs, thermostats, smart meters, etc., soon toasters, fridges, … Wireless technologies revolutionizing Internet! WiFi, bluetooth, 3/4G cellular networks, … Low-tier High-tier mobile computing location services Local Area Wide Area High Mobility CSci4211: Low Mobility Introduction 8 Internet: a huge transformative & disruptive force! What has become of the Internet: •Information Service and E-Commerce Platform – deliver all kinds of information, news, music, video, shopping – web, spotify, iTune, youtube, Netflix, Hulu, … • Global Information Repository – store and search for all kinds of information – google, flickr, dropbox, icloud, … •Cyberspace and Virtual Communities – keep in touch with friends and strangers – email, facebook, twitter, … • Enormous Super-Computer – mobile, cloud computing and services We’re increasingly depending on it ! CSci4211: Introduction 9 So what’s so special about the Internet? But first, what is a Network? CSci4211: Introduction 10 What is a Network? There are many types of networks! Key Features of Networks Providing certain services • Shared resources used by many users, often concurrently Basic building blocks • • transport goods, mail, information or data nodes (active entities): process and transfer goods/data links (passive medium): passive “carrier” of goods/data Typically distributed & “multi-hop”: two “end points” cannot directly reach each other need other nodes/entities to relay CSci4211: Introduction 11 What is a Network … Compare Internet with Postal Service and Telephone System Services Provided Various Key Pieces and Their Functions How the pieces work together to provide services CSci4211: Introduction 12 Nuts and Bolts Description Network is fundamentally distributed in nature: a collection of distinct entities: “nodes” and “links” Postal: Mailboxes Local/Branch Postal Offices, Regional, Central Postal Offices Mail Sorting Machines Postmen, Delivery Trucks/Trains/Planes, Roads, … Telephone: Phones Local Switching Office, Central Switching Offices, … Telephone Switches Wires Internet ? CSci4211: Introduction 13 Internet: Building Blocks • Nodes: PCs, special-purpose hardware, … – Hosts (or end systems): servers, PCs, laptops, mobile devices, smart meters, …… – Switches: routers, switches, … • Links: coax cable, optical fiber, wireless, … – point-to-point – multiple access … CSci4211: Introduction 14 Inter-networking • A network can be defined recursively as... – two or more nodes connected by a link, or – two or more networks connected by two or more nodes • Internet: networks of networks CSci4211: Introduction 15 Service Perspective Basic Services Provided Postal: deliver mail/package from people to people Telephone: connect people for talking First class, express mail, bulk rate, certified, registered, … You may get a busy dial tone Once connected, consistently good quality, unless using cell phones Internet: transfer information between people/machines Reliable connection-oriented or unreliably connectionless services! You never get a busy dial tone, but things can be very slow! You can’t ask for express delivery (not at the moment at least!) CSci4211: Introduction 16 Fundamental Issues in Networking Network is a shared resource – Provide services for many people at same time – Carry bits/information for many people at same time •Switching and Multiplexing – How to share resources among multiple users, and transfer data from one node to another node •Naming and Addressing – How to find name/address of the party (or parties) you would like to communicate with – Address: byte-string that identifies a node • unicast, multicast and broadcast addresses •Routing and (end-to-end) Forwarding: – Routing: process of determining how to send packets towards the destination based on its address • find out neighbors, build “maps” (routing tables), … – transfer data from source to destination “hop-by-hop” CSci4211: Introduction 17 What’s so special about the Internet? • Internet is based on the notion of “packet switching” – enables statistical multiplexing – better utilization of network resources for transfer of “bursty” data traffic CSci4211: Introduction 18 Switching & Multiplexing • Network is a shared resource • How do we do it? – Provide services for many people at same time – Carry bits/information for many people at same time – Switching: how to deliver information from point A to point B? – Multiplexing: how to share resources among many users Think about postal service and telephone system! Switching and multiplexing are closely related! CSci4211: Introduction 19 Switching Strategies • Circuit switching – set up a dedicated route (“circuit”) first – carry all bits of a “conversation” on one circuit • original telephone network • Analogy: railroads and trains/subways • Packet switching – divide information into small chunks (“packets”) – each packet delivered independently – “store-and-forward” packets • Internet (also Postal Service, but they don’t tear your mail into pieces first!) • Analogy: highways and cars • Pros and Cons? - think taking subways vs. driving cars, during off-peak vs. rush hours! CSci4211: Introduction 20 Analogy: railroad and train CSci4211: Introduction 21 Analogy: Highway and cars 22 CSci4211: Introduction Circuit Switching network resources (e.g., bandwidth) divided into “pieces” • pieces allocated to calls • resource piece idle if not used by owning call (no sharing) dividing link bandwidth into “pieces” frequency division time division code division Trivia Q: You must have heard of the term “CDMA” (think the company Qualcom, for which it is most associated with), what does “CD” in CDMA stands for? 23 CSci4211: Introduction Circuit Switching: FDM and TDM Example: FDM 4 users frequency time TDM frequency CSci4211: time Introduction 24 Numerical example • How long does it take to send a file of 640,000 bits from host A to host B over a circuit-switched network? – All links are 1.536 Mbps – Each link uses TDM with 24 slots/sec – 500 msec to establish end-to-end circuit Let’s work it out! 10.5 seconds CSci4211: Introduction 25 Networks with Circuit Switching e.g., conventional (fixed-line) telephone networks End-end resources reserved for “call” • link bandwidth, switch capacity • dedicated resources: no sharing • circuit-like (guaranteed) performance • call setup required CSci4211: Introduction 26 Circuit Switched Networks • All resources (e.g. communication links) needed by a call dedicated to that call for its duration – Example: telephone network – Call blocking when all resources are used CSci4211: Introduction 27 Packet Switching Each end-end “data stream” divided into packets • users A, B packets share network resources • each packet uses full link bandwidth • resources used as needed Bandwidth division into “pieces” Dedicated allocation Resource reservation CSci4211: resource contention: aggregate resource demand can exceed amount available congestion: packets queue, wait for link use store and forward: packets move one hop at a time Node receives complete packet before forwarding Packets may suffer delay or losses! Introduction 28 Statistical Multiplexing • • • • • • Time division, but on demand rather than fixed Reschedule link on a per-packet basis Packets from different sources interleaved on the link Buffer packets that are contending for the link Buffer buildup is called congestion This is packet switching, used in computer networks CSci4211: Introduction 29 Packet Switching: Statistical Multiplexing 100 Mb/s Ethernet A B statistical multiplexing C 1.5 Mb/s queue of packets waiting for output link D E Sequence of A & B packets does not have fixed pattern, shared on demand statistical multiplexing. TDM: each host gets same slot in revolving TDM frame. CSci4211: Introduction 30 Packet-switching: store-and-forward L R R • Takes L/R seconds to transmit (push out) packet of L bits on to link or R bps • Entire packet must arrive at router before it can be transmitted on next link: store and R Example: • L = 7.5 Mbits • R = 1.5 Mbps 15 sec • delay = ? forward • delay = 3L/R (assuming zero propagation delay) more on delay later … 31 CSci4211: Introduction Packet switching versus circuit switching Packet switching allows more users to use network! • 1 Mb/s link • each user: – 100 kb/s when “active” N users – active 10% of time 1 Mbps link • circuit-switching: – 10 users • packet switching: – with 35 users, probability > 10 active less than .0004 Q: how did we get value 0.0004? M n M n n p 1 p n N 1 M 32 CSci4211: Introduction Circuit Switching vs Packet Switching Item Circuit-switched Packet-switched Dedicated “copper” path Yes No Bandwidth available Fixed Dynamic Potentially wasted bandwidth Yes No (not really!) Store-and-forward transmission No Yes Each packet/bit always follows the same route Yes Not necessarily Call setup Required Not Needed When can congestion occur At setup time On every packet Effect of congestion Call blocking Queuing delay CSci4211: Introduction 33 Packet switching vs. circuit switching Is packet switching a “slam dunk winner?” • Great for bursty data – resource sharing – simpler, no call setup • Excessive congestion: packet delay and loss – protocols needed for reliable data transfer, congestion control • Q: How to provide circuit-like behavior? – bandwidth guarantees needed for audio/video apps – still an unsolved problem (chapter 7) Q: human analogies of reserved resources (circuit switching) versus on-demand allocation (packet-switching)? 34 CSci4211: Introduction What’s so special about the Internet? • • Internet is based on the notion of “packet switching” – enables statistical multiplexing – better utilization of network resources for transfer of “bursty” data traffic Internet’s key organizational/architectural principle: “smart” end systems + “dumb” networks – architecture: functional division & function placement hourglass Internet architecture: enables diverse – “dumb” network (core): simple packet-switched, store- – “smart” end systems/edges: servers, PCs, mobile devices, …; – applications and accommodates evolving technologies forward, connectionless “datagram” service, with core functions: global addressing, routing & forwarding diverse and ever-emerging new applications! CSci4211: Introduction 35 Internet Hourglass Architecture enabling diverse applications & new types of end devices bitTorrent, DHT, SIP, DASH, …. accommodating evolving & new technologies network core network edge/end hosts p2p file sharing, skype, YouTube, Netflix, Cloud Computing WiFi, Bluetooth, Docsis, gMPLS, DWDM/fiber, …, 3G/4G cellular, …. CSci4211: Introduction 36 “Dumb” Networks & “Smart” End Systems • Five Layer Architecture: – Lower three layers are implemented everywhere – Top two layers are implemented only at hosts Host A Host B Application Application Transport Transport Router Network Datalink Physical Network Datalink Physical Physical medium Network Datalink Physical 37 CSci4211: Introduction An Overview of Network Structure: a “horizontal view” • network edge: applications and hosts • network core: – routers – network of networks • access networks, physical media: communication links 38 CSci4211: Introduction What’s the Internet: “nuts and bolts” view • millions of connected computing devices: hosts = end systems • running network apps • communication links router server workstation mobile local ISP – fiber, copper, radio, satellite – transmission rate = regional ISP bandwidth • routers: forward packets (chunks of data) company network CSci4211: Introduction 39 The network edge: • end systems (hosts): – run application programs – e.g. Web, email – at “edge of network” • client/server model – client host requests, receives service from always-on server – e.g. Web browser/server; email client/server • peer-peer model: – minimal (or no) use of dedicated servers – e.g. Skype, BitTorrent, KaZaA 40 CSci4211: Introduction The network edge: • end systems (hosts): – run application programs – e.g. Web, email – at “edge of network” • client/server model – client host requests, receives service from always-on server – e.g. Web browser/server; email client/server – Cloud & Mobile Computing • peer-peer model: – minimal (or no) use of dedicated servers – e.g. Skype, BitTorrent, KaZaA cloud computing 41 CSci4211: Introduction Network edge: connection-oriented service Goal: data transfer between end systems • handshaking: setup (prepare for) data transfer ahead of time – Hello, hello back human protocol – set up “state” in two communicating hosts • TCP - Transmission Control Protocol – Internet’s connectionoriented service CSci4211: TCP service [RFC 793] • reliable, in-order bytestream data transfer – loss: acknowledgements and retransmissions • flow control: – sender won’t overwhelm receiver • congestion control: – senders “slow down sending rate” when network congested Introduction 42 Network edge: connectionless service Goal: data transfer between end systems – same as before! • UDP - User Datagram Protocol [RFC 768]: – – – – connectionless unreliable data transfer no flow control no congestion control CSci4211: App’s using TCP: • HTTP (Web), FTP (file transfer), Telnet (remote login), SMTP (email), Flash videos, DASH stream videos App’s using UDP: • streaming media, teleconferencing, DNS, Internet telephony Introduction 43 The Network Core • mesh of interconnected routers shared by many users • the fundamental questions: – how network is shared – how to find the other party (person, website, …) you want – how is data transferred through net? 44 CSci4211: Introduction On the Internet Edge … • Large # of (mobile & stationary) users • Large # of “dumb” or web smart devices & appliances • Some “always-on,” highspeed connection smart pads & • Others intermittent e-readers connectivity with varying bandwidth music video streaming streaming & IPTV others Internet • Diverse applications and services • Heterogeneous technologies social networks games dumb & smart phones POTS home users sensors & smart home surveillance VoIP banking & & security e-commerce 45 CSci4211: Introduction Within the Internet “Cloud” Network Core: •big ISPs (& cellular providers) with large geographical span •As well as medium & smaller ISPs And the “other end/edge”: •big content providers with huge data centers High bandwidth, dense and rich topology Enormous computing & storage capacities to support cloud, mobile computing/services 46 CSci4211: Introduction Well, Internet is too complex for me to learn. How can they even build it? And what’s a protocol & why do we need protocols? Motivating Questions 3-5 47 CSci4211: Introduction Network Architecture (or organizational principles) Networks are complex! • many “pieces”: – – – – – – – hosts routers links of various media hardware, software applications protocols ….. Question: Is there any hope of organizing structure or principle of network? Or at least our discussion of networks? Network architecture: “blue prints” (or principles) regarding functional division and function placement 48 CSci4211: Introduction Organization of air travel ticket (purchase) ticket (complain) baggage (check) baggage (claim) gates (load) gates (unload) runway takeoff runway landing airplane routing airplane routing airplane routing • a series of steps 49 CSci4211: Introduction Layering of airline functionality ticket (purchase) ticket (complain) ticket baggage (check) baggage (claim baggage gates (load) gates (unload) gate runway (takeoff) runway (land) takeoff/landing airplane routing airplane routing airplane routing departure airport airplane routing airplane routing intermediate air-traffic control centers arrival airport Layers: each layer implements a service – via its own internal-layer actions – relying on services provided by layer below 50 CSci4211: Introduction Why Layering? Dealing with complex systems: • explicit structure allows identification, relationship of complex system’s pieces – layered reference model for discussion • modularization eases maintenance, updating of system – change of implementation of layer’s service transparent to rest of system – e.g., change in gate procedure doesn’t affect rest of system 51 CSci4211: Introduction Internet Protocol Stack • application: supporting network applications – FTP, SMTP, HTTP, DASH, … • transport: process-process data transfer – TCP, UDP • network: routing of datagrams from source to destination – IP, routing protocols • link: data transfer between neighboring network elements application transport network link physical – PPP, Ethernet • physical: bits “on the wire” 52 CSci4211: Introduction Layered Architecture • Layering simplifies the architecture of complex system • Layer N relies on services from layer N-1 to provide a service to layer N+1 • Interfaces define the services offered • Service required from a lower layer is independent of its implementation – Layer N change doesn’t affect other layers – Information/complexity hiding – Similar to object oriented methodology CSci4211: Introduction 53 Protocols and Services • Protocols are used to implement services – Peering entities in layer N provide service by communicating with each other using the service provided by layer N-1 • Logical vs physical communication CSci4211: Introduction 54 What’s a protocol? human protocols: • “what’s the time?” • “I have a question” • introductions network protocols: • machines rather than humans • all communication activity in Internet governed by protocols (why this concept is so important!!!) 55 CSci4211: Introduction Human protocol Alice Hi Bob • protocols define: – Format. – Order of msgs sent and received among network entities (two or more) – Actions taken on msg transmission, receipt Hi Got the time? 2:00pm Q: What are the purposes of first hi-hi exchange Make sure 1. Bob is awake Bob can understand English 2 Bob can speak 3 English Bob is willing 4 to talk CSci4211: Introduction 56 What’s a protocol? a human protocol and a computer network protocol: Hi TCP connection request Hi TCP connection response Got the time? Get http://www.cnn.com 2:00 <file> time Q: Other human protocols? (e.g., in-class interaction) CSci4211: Introduction 57 Protocols • Protocol: rules by which network elements communicate • Protocols define the agreement between peering entities – The format and the meaning of messages exchanged • Protocols in everyday life – Examples: traffic control, open round-table discussion etc CSci4211: Introduction 58 Protocol Packets • Protocol data units (PDUs): – packets exchanged between peer entities • Service data units (SDUs): – packets handed to a layer by an upper layer • Data at one layer is encapsulated in packet at a lower layer – Envelope within envelope: PDU = SDU + (optional) header or trailer CSci4211: Introduction 59 Encapsulation source message segment M Ht M datagram Hn Ht M frame Hl Hn Ht M application transport network link physical link physical switch destination M Ht M Hn Ht Hl Hn Ht M M Hn Ht Hl Hn Ht application transport network link physical M M network link physical Hn Ht M router CSci4211: Introduction 60 Internet and ISO/OSI Reference Models CSci4211: Introduction 61 ISO/OSI Reference Model • Application layer • Examples: smtp, http, ftp, dash, etc – process-to-process communication – all layers exist to support this layer • Presentation layer (OSI only) – conversion of data to common format • Example: “little endian” vs. “big endian” byte orders – multimedia streaming presentation (e.g., mpeg-dash) • Session layer (OSI only) – session setup (and authentication) – recovery from failure (broken session) • Internet applications perform presentation/session layer functions, e.g., “little” & “big” endian conversions CSci4211: Introduction 62 ISO/OSI Reference Model (cont’d) • Transport layer: end-to-end data delivery, e.g., – connection-oriented (TCP) or connection-less (UDP) services – error control, flow/congestion control, … • Network layer: examples: IP, X.25 – (global) naming and addressing, routing (build routing tables) – forwarding packets hop-by-hop across networks – avoidance of congested/failed links, traffic engineering, … • Data link layer: data transfer between “neighboring” elements – Examples: Ethernet, 802.11 WiFi, PPP – framing and error/flow control – media access control • Physical layer (EE stuff) – encoding/decoding information (bits) into physical media – modulating & transmitting raw Introduction bits (0/1) over wire CSci4211: 63 Comments on Layering • Layering simplifies the architecture of complex system • Advantages – modularization eases maintenance and updating – hide lower layer complexity/implementation details from higher layers • Layering considered harmful? – Q: which layer should implement what functionality? • e.g., reliability, hop-by-hop basis or end-to-end basis? • Possible Drawbacks? – possible duplication of functionality between layers • error recovery at link layer and transport layer – Other possible drawbacks? CSci4211: Introduction 64 Internet Protocol “Zoo” Flash DASH RealAudio SOAP applicatio n IPTV P2P …..….. HTTP DNS VoIP RealVideo NFS/RPC FTP, SCP telnet, ssh SMTP ICMP, OSPF, RIP, BGP, … MPLS/gMPLS PPP 802.11 WiFi DWDM DSL or DOCSIS CSci4211: Introduction 2.5G/3G/4G (GPRS,UMTS, WiMAX, LTE, …) Cellular Radio Networks 65 What real Internet looks like now? CSci4211: Introduction 66 Internet Structure Internet: “networks of networks”! International lines IXPs or private peering National or tier-1 ISP National or tier-1 ISP Regional or local ISP company university Internet eXcange Points Regional ISPs local ISPs company LANs Home users access via WiFi hotspots Home users CSci4211: Introduction 67 Internet structure: network of networks • Roughly hierarchical • At center: “tier-1” ISPs (e.g., Verizon, Sprint, AT&T, L3, Cable and Wireless), national/international coverage – treat each other as equals Tier-1 providers interconnect (peer) privately Tier 1 ISP Tier 1 ISP CSci4211: IXP Tier-1 providers also interconnect at Internet Exchange Point Tier 1 ISP Introduction 68 Tier-1 ISP: e.g., Sprint POP: point-of-presence to/from backbone peering … … . … … … to/from customers CSci4211: Introduction 69 Internet structure: network of networks • “Tier-2” ISPs: smaller (often regional) ISPs – Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs Tier-2 ISP pays tier-1 ISP for connectivity to rest of Internet tier-2 ISP is customer of tier-1 provider Tier-2 ISP Tier-2 ISP Tier 1 ISP Tier 1 ISP Tier-2 ISP CSci4211: IXP Tier 1 ISP Tier-2 ISPs also peer privately with each other, interconnect at IXP Tier-2 ISP Tier-2 ISP Introduction 70 Internet structure: network of networks • “Tier-3” ISPs and local ISPs – last hop (“access”) network (closest to end systems) local ISP Local and tier3 ISPs are customers of higher tier ISPs connecting them to rest of Internet Tier 3 ISP Tier-2 ISP local ISP local ISP local ISP Tier-2 ISP Tier 1 ISP Tier 1 ISP Tier-2 ISP local local ISP ISP CSci4211: IXP Tier 1 ISP Tier-2 ISP local ISP Introduction Tier-2 ISP local ISP 71 Internet structure: network of networks • a packet passes through many networks! traceroute www.cnn.com A local ISP Routing & forwarding: how do packets go from A to B? Tier 3 ISP Tier-2 ISP local ISP local ISP local ISP Tier-2 ISP Tier 1 ISP Tier 1 ISP Tier-2 ISP local local ISP ISP CSci4211: IXP Tier 1 ISP Tier-2 ISP local ISP Introduction Tier-2 ISP local ISP B 72 Map of Internet Why it takes so long to download my friends’ pictures from web? Or why $#@! can’t I access the Internet now? Motivating Question 6 CSci4211: Introduction 74 Fundamental Problems in Networking … Or what can go wrong? • Bit-level errors: due to electrical interferences • “Frame-level” errors: media access delay or frame collision due to contention/collision/interference • Packet-level errors: packet delay or loss due to network congestion/buffer overflow • Out of order delivery: packets may takes different paths • Link/node failures: cable is cut or system crash CSci4211: Introduction 75 Four sources of packet delay 1. nodal processing: 2. queueing • check bit errors • determine output link • • time waiting at output link for transmission depends on congestion level of router transmission A propagation B nodal processing queueing CSci4211: Introduction 76 Delay in packet-switched networks 3. Transmission delay: • R=link bandwidth (bps) • L=packet length (bits) • time to send bits into link = L/R 4. Propagation delay: • d = length of physical link • s = propagation speed in medium (~2x108 m/sec) • propagation delay = d/s transmission A propagation B nodal processing queueing CSci4211: Note: s and R are very different quantitites! Introduction 77 Nodal delay dnodal dproc dqueue dtrans dprop • dproc = processing delay – typically a few microsecs or less • dqueue = queuing delay – depends on congestion • dtrans = transmission delay – = L/R, significant for low-speed links • dprop = propagation delay – a few microsecs to hundreds of msecs CSci4211: Introduction 78 Statistical Multiplexing and Queueing 10 Mbs Ethernet A B statistical multiplexing C 1.5 Mbs queue of packets waiting for output link 45 Mbs D CSci4211: E Introduction 79 Queueing delay (revisited) • R=link bandwidth (bps) • L=packet length (bits) • a=average packet arrival rate traffic intensity = La/R • La/R ~ 0: average queueing delay small • La/R -> 1: delays become large • La/R > 1: more “work” arriving than can be serviced, average delay infinite! CSci4211: Introduction 80 Queueing delay and Packet loss • Queue (aka buffer) preceding link in buffer has finite capacity • When packet arrives to full queue, packet is dropped (aka lost) • lost packet may be retransmitted by previous node, by source end system, or not retransmitted at all CSci4211: Introduction 81 “Real” Internet delays and routes • What do “real” Internet delay & loss look like? • Traceroute program: provides delay measurement from source to router along end-end Internet path towards destination. For all i: – sends three packets that will reach router i on path towards destination – router i will return packets to sender – sender times interval between transmission and reply. 3 probes 3 probes 3 probes CSci4211: Introduction 82 “Real” Internet delays and routes Let’s Traceroute to www.bbc.com CSci4211: Introduction 83 Throughput • throughput: rate (bits/time unit) at which bits transferred between sender/receiver – instantaneous: rate at given point in time – average: rate over longer period of time link capacity that can carry server, with server sends bits pipe Rs bits/sec fluid at rate file of F bits (fluid) into pipe Rs bits/sec) to send to client CSci4211: link that capacity pipe can carry Rfluid c bits/sec at rate Rc bits/sec) Introduction 84 Throughput (cont’d) • Rs < Rc What is average end-end throughput? Rs bits/sec Rs Rc bits/sec > Rc What is average end-end throughput? Rs bits/sec Rc bits/sec bottleneck link link on end-end path that constrains end-end throughput CSci4211: Introduction 85 Throughput: Internet scenario • per-connection end-end throughput: min(Rc,Rs,R/10) • in practice: Rc or Rs is often bottleneck CSci4211: Rs Rs Rs R Rc Rc Rc 10 connections (fairly) share backbone bottleneck link R bits/sec Introduction 86 What’s the Internet: Recap • protocols control sending, receiving of messages router server – e.g., TCP, IP, HTTP, FTP, PPP • Internet: “network of networks” workstation mobile local ISP – loosely hierarchical – public Internet versus private intranet regional ISP • Internet standards – RFC: Request for comments – IETF: Internet Engineering Task Force – IEEE CSci4211: company network Introduction 87 Fundamental Issues in Networking Network is a shared resource – Provide services for many people at same time – Carry bits/information for many people at same time • Switching and Multiplexing – How to share resources among multiple users, and transfer data from one node to another node • Naming and Addressing – How to find name/address of the party (or parties) you would like to communicate with – Address: byte-string that identifies a node • unicast, multicast and broadcast addresses • Routing and Switching/Forwarding: – process of determining how to send packets towards the destination based on its address: finding out neighbors, building routing tables – transferring data from source to destination CSci4211: Introduction 88 Fundamental Problems in Networking … Or what can go wrong? • Bit-level errors: due to electrical interferences • “Frame-level” errors: media access delay or frame collision due to contention/collision/interference • Packet-level errors: packet delay or loss due to network congestion/buffer overflow • Out of order delivery: packets may takes different paths • Link/node failures: cable is cut or system crash CSci4211: Introduction 89 Fundamental Problems in Networking What can be done? • Add redundancy to detect and correct erroneous packets • Acknowledge received packets and retransmit lost packets • Assign sequence numbers and reorder packets at the receiver • Sense link/node failures and route around failed links/nodes Goal: to fill the gap between what applications expect and what underlying technology provides CSci4211: Introduction 90 The Internet Network layer Transport layer: TCP, UDP Network layer IP protocol •addressing conventions •packet handling conventions Routing protocols •path selection •RIP, OSPF, BGP routing table ICMP protocol •error reporting •router “signaling” Data Link layer (Ethernet, WiFi, PPP, …) Physical Layer (fiber optics, radio, …) CSci4211: Introduction 91 Introduction: Summary Answers to 6 motivating questions • What is internet? What so special about it? • What internet looks like now? • How I deal with the complexity? • What’s a protocol? • How I build a network? • Why do I suffer delays? CSci4211: You now have: • context, overview, “feel” of networking • more depth, detail Introduction to follow! 92 Internet Summary • Computer networks/Internet use packet switching • Layered architecture for handling complexity & attaining maintainability – Key notions: protocols, services and interfaces • Internet is based on TCP/IP protocol suite – Networks of networks! – Shared, distributed and complex system in global scale – No centralized authority • Fundamental issues in networking – addressing/naming – routing/forwarding – error/flow/congestion control, media access control CSci4211: Introduction 93 Readings for Next Week • Read Chapter 1 • Review these lecture notes – Read the supplementary notes that follow these one if you have time • Read Chapter 2: sections 2.1 –2.6 – – – – – Learn how web works Learn how email works Understand what Domain Name System does for us P2P File Sharing Glance through Chapter 7: sections 7.1-7.2 CSci4211: Introduction 94 Supplementary Readings • • • • • How big is Internet, Who pays for it? Access Network Technologies NAPs, Private Peering and ISPs Internet “Governing” Bodies History of Internet CSci4211: Introduction 95 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 CSci4211: Introduction 96 Physical Media • physical link: transmitted data bit propagates across link • guided media: – signals propagate in solid media: copper, fiber Twisted Pair (TP) • two insulated copper wires – Category 3: traditional phone wires, 10 Mbps Ethernet – Category 5 TP: 100Mbps Ethernet • unguided media: – signals propagate freely e.g., radio CSci4211: Introduction 97 Physical Media: coax, fiber Coaxial cable: • wire (signal carrier) within a wire (shield) – baseband: single channel on cable – broadband: multiple channel on cable • bidirectional • common use in 10Mbs Ethernet CSci4211: Fiber optic cable: • glass fiber carrying light pulses • high-speed operation: – 100Mbps Ethernet – high-speed point-to-point transmission (e.g., 5 Gps) • low error rate Introduction 98 Physical media: radio • signal carried in electromagnetic spectrum • no physical “wire” • bidirectional • propagation environment effects: – reflection – obstruction by objects – interference CSci4211: Radio link types: • microwave – e.g. up to 45 Mbps channels • LAN (e.g., waveLAN) – 2Mbps, 11Mbps • wide-area (e.g., cellular) – e.g. CDPD, 10’s Kbps • satellite – up to 50Mbps channel (or multiple smaller channels) – 270 Msec end-end delay – geosynchronous versus LEOS Introduction 99 Access networks Q: How to connection 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? • shared or dedicated? CSci4211: Introduction 100 Residential access: Dial-up Modem central office home PC telephone network home dial-up modem Internet ISP modem (e.g., AOL) Uses existing telephony infrastructure Home is connected to central office up to 56Kbps direct access to router (often less) Can’t surf and phone at same time: not “always on” CSci4211: Introduction 101 Residential access: Digital Subscriber Line (DSL) Existing phone line: 0-4KHz phone; 4-50KHz upstream data; 50KHz-1MHz downstream data home phone Internet DSLAM telephone network splitter DSL modem home PC central office Also uses existing telephone infrastruture up to 1 Mbps upstream (today typically < 256 kbps) up to 8 Mbps downstream (today typically < 1 Mbps) dedicated physical line to telephone central office CSci4211: Introduction 102 Residential access: cable modems • HFC: hybrid fiber coax – asymmetric: up to 30Mbps downstream, 2 Mbps upstream • Network of cable and fiber attaches homes to ISP router – homes share access to router • Deployment: available via cable TV companies – Comcast triple play: Internet, vioce and TV CSci4211: Introduction 103 Residential access: cable modems CSci4211: Introduction Diagram: http://www.cabledatacomnews.com/cmic/diagram.html 104 Physical Media used in HFC Coaxial cable: Fiber optic cable: • two concentric copper conductors • bidirectional • baseband: glass fiber carrying light • broadband: low error rate: repeaters – single channel on cable – legacy Ethernet – multiple channels on cable – HFC CSci4211: pulses, each pulse a bit high-speed operation: high-speed point-to-point transmission (e.g., 10’s100’s Gps) spaced far apart ; immune to electromagnetic noise Introduction 105 Cable Network Architecture: Overview Typically 500 to 5,000 homes cable headend cable distribution network (simplified) CSci4211: home Introduction 106 Cable Network Architecture: Overview cable headend cable distribution network (simplified) CSci4211: home Introduction 107 Cable Network Architecture: Overview FDM: V I D E O V I D E O V I D E O V I D E O V I D E O V I D E O D A T A D A T A C O N T R O L 1 2 3 4 5 6 7 8 9 Channels cable headend cable distribution network CSci4211: home Introduction 108 Ethernet Internet access 100 Mbps Institutional router Ethernet switch To Institution’s ISP 100 Mbps 1 Gbps 100 Mbps server • Typically used in companies, universities, etc 10 Mbs, 100Mbps, 1Gbps, 10Gbps Ethernet Today, end systems typically connect into Ethernet switch CSci4211: Introduction 109 Wireless access networks • shared wireless access network connects end system to router – via base station aka “access point” • wireless LANs: – 802.11b/g (WiFi): 11 or 54 Mbps • wider-area wireless access router base station – provided by telco operator – ~1Mbps over cellular system (3G) – next up (?): WiMAX (10’s Mbps) over wide area and LTE (100’s Mbps) • satellite – Kbps to 45Mbps channel (or multiple smaller channels) – 270 msec end-end delay – geosynchronous versus low altitude CSci4211: Introduction mobile hosts 110 Case Study: Home networks Typical home network components: • DSL or cable modem • router/firewall/NAT • Ethernet • wireless access point to/from cable headend cable modem wireless laptops router/ firewall Ethernet CSci4211: Introduction wireless access point 111 Origin of Internet? Started by U.S. research/military organizations: • Three Major Actors: – DARPA: Defense Advanced Research Projects Agency • funds technology with military goals – DoD: U.S. Department of Defense • early adaptor of Internet technology for production use – NSF: National Science Foundation • funds university research CSci4211: Introduction 112 Pre-Internet Modes of Human Telecommunications The Dark Age before the Internet: before 1960 Non-electrical (source: wikipedia) • • • • • • • • Prehistoric: Fires, Beacons, Smoke signals, drums, Horns 6th century BCE: (snail) mail (e.g., delivered by human couriers on horse) 5th century BCE: Pigeon post 4th century BCE: Hydraulic semaphores, heliographs (shield signals) 15th century CE: Maritime flag semaphores 1672: First experimental acoustic (mechanical) telephone 1790: Semaphore lines (optical telegraphs) 1867: Signal lamps; 1877: Acoustic phonograph • • • • 1830: telegraph 1876: circuit-switching (telephone) 1896: radio TV (1940?) , and later cable TV (1970s) Electrical: CSci4211: Introduction 113 Internet History 1961-1972: Early packet-switching principles • 1961: Kleinrock - queueing theory shows effectiveness of packetswitching • 1964: Baran - packetswitching in military nets • 1967: ARPAnet conceived by Advanced Research Projects Agency • 1969: first ARPAnet node operational CSci4211: • 1972: – ARPAnet public demonstration – NCP (Network Control Protocol) first host-host protocol – first e-mail program – ARPAnet has 15 nodes Introduction 114 Internet History 1972-1980: Internetworking, new and proprietary nets • 1970: ALOHAnet satellite network in Hawaii • 1974: Cerf and Kahn architecture for interconnecting networks • 1976: Ethernet at Xerox PARC • ate70’s: proprietary architectures: DECnet, SNA, XNA • late 70’s: switching fixed length packets (ATM precursor) • 1979: ARPAnet has 200 nodes CSci4211: Cerf and Kahn’s internetworking principles: – minimalism, autonomy - no internal changes required to interconnect networks – best effort service model – stateless routers – decentralized control define today’s Internet architecture Introduction 115 Internet History 1980-1990: new protocols, a proliferation of networks • 1983: deployment of TCP/IP • 1982: smtp e-mail protocol defined • 1983: DNS defined for name-to-IPaddress translation • 1985: ftp protocol defined • 1988: TCP congestion control CSci4211: • new national networks: Csnet, BITnet, NSFnet, Minitel • 100,000 hosts connected to confederation of networks Introduction 116 Internet History 1990, 2000’s: commercialization, the Web, new apps • Early 1990’s: ARPAnet decommissioned • 1991: NSF lifts restrictions on commercial use of NSFnet (decommissioned, 1995) • early 1990s: Web – hypertext [Bush 1945, Nelson 1960’s] – HTML, HTTP: Berners-Lee – 1994: Mosaic, later Netscape – late 1990’s: commercialization of the Web CSci4211: Late 1990’s – 2000’s: • more killer apps: instant messaging, P2P file sharing • network security to forefront • est. 50 million host, 100 million+ users • backbone links running at Gbps • Napster, BitTorrent, … • Myspace, Facebook, twitter,.. • YouTube, Netflix, Hulu, … Now to the future: • … (your invention here!) Introduction 117 Who Runs the Internet “nobody” really! • standards: Internet Engineering Task Force (IETF) • names/numbers: The Internet Corporation for Assigned Names and Numbers (ICANN) • DNS root server operators, domain name registrars • networks: ISPs (Internet Service Providers), IXPs (Internet Exchange Points), …… • fibers: telephone companies (mostly) • content: companies, universities, governments, individuals, …; • content distribution networks, … CSci4211: Introduction 118 Internet “Governing” Bodies • Internet Society (ISOC): membership organization – raise funds for IAB, IETF& IESG, elect IAB • Internet Engineering Task Force (IETF): – a body of several thousands or more volunteers – organized in working groups (WGs) – meet three times a year + email • Internet Architecture Board – architectural oversight, elected by ISOC • Steering Group (IESG): approves standards, – Internet standards, subset of RFC • RFC: “Request For Comments”, since 1969 – most are not standards, also • experimental, informational and historic(al) CSci4211: Introduction 119 Internet Names and Addresses • Internet Corporation for Assigned Names and Numbers (ICAAN): – coordinate IPv4 & IPv6 address spaces, keep track of numbers (e.g., protocol identifiers), delegates Internet address assignment to regional Internet registries – manage top-level domain names & operations of root name servers – designate authority for each top-level domain; create new TLDs • Regional Internet Registries: AfriNIC, APNIC, ARIN, LACMIC, RIPE NCC: – manage the allocation and registration of Internet number resources – e.g., hand out blocks of addresses to ISPs; assign AS numbers – maintain WHOIS registries – …. CSci4211: Introduction 120