CSC4220/6220 Computer Networks Dr. WenZhan Song Professor, Computer Science Sensorweb Research Laboratory -1- Georgia State University About Me Homepage: http://sensorweb.cs.gsu.edu/~song/ 2010 – present, Georgia State University Teaching evaluation: 4.8 (CSC 4220) 2005-2010, Washington State University - Vancouver Teaching evaluation: Average: 4.5/5 Research experience: Sensorweb for environment monitoring, smart environments and smart grid 6M+ research funding support from NSF, NASA, USGS, Boeing, including NSF CAREER award http://sensorweb.cs.gsu.edu/news.html a dream: http://www.youtube.com/watch?v=WF-RKzqNtz0 (3:49) Research has been featured in MIT technology review, National Geographic, Network World, etc 2001-2005, Illinois Institute of Technology 2004 Summer, Lucent Technologies 1999-2001, Alcatel Shanghai Bell Sensorweb Research Laboratory -2- Georgia State University Several Notes Course website: http://sensorweb.cs.gsu.edu/~song/csc4220/ Announcement through emails Confirm email: have you received an email from me? Is it okay to add your email to it? Announcement and update will be sent through mailing list. You may also ask questions through mailing list. Homework submission needs a printed hard-copy, no hand-written! Programming projects Count Java/C preferences in class – either one is fine Sensorweb Research Laboratory -3- Georgia State University What to expect Significant exposure to computer networking concepts and fundamental design principles. Coverage of Internet protocol stacks. Details of network control algorithms. running example: TCP/IP e.g. routing, congestion control, flow control, ... Able to design network protocols and systems. Sensorweb Research Laboratory -4- Georgia State University What not to expect End-user training. Trade school stuff. e.g. OSI, Appletalk, ... Massively Parallel Processing e.g. How to get Novel NetWare certified, how to setup a Cisco router, how to administrate network system Detailed discussion of non-TCP/IP protocols. e.g. How to use FTP, NetWare, WWW or HTML, … e.g. large numbers of interconnected, identical processors programmed to solve problems in parallel Telecommunication networks and standards Sensorweb Research Laboratory -5- Georgia State University Course roadmap Introduction Application Layer: WWW, FTP, email, DNS, multimedia Transport Layer: reliable end-end data transfer principles, UDP, TCP Network Layer: routing, congestion control, QoS Data Link Layer: framing, error control, flow control Medium Access Control (MAC) Layer: channel allocation multiple-access, Physical Layer: wired, wireless, satellite Other Topics: network security, social issues, hot topics, research directions Sensorweb Research Laboratory -6- Georgia State University Human Conversation vs Computer Communication Hi TCP connection req Hi TCP connection response Got the time? Get http://www.google.com/contact.html 2:00 <file> time human conversation vs computer communication Sensorweb Research Laboratory -7- Georgia State University Communication is challenging The two-army problem Sensorweb Research Laboratory -8- Georgia State University Introduction Physical overview of Internet Physical architecture Network Edge - Internet access technologies Network Core – Switching technologies Software overview of Internet Roadmap Software architecture The OSI and TCP/IP Reference Models Internet history Network standardization body Sensorweb Research Laboratory -9- Georgia State University Physical overview of Internet millions of connected computing devices: hosts = end systems running network apps communication links router server Residential access workstation mobile Network Core fiber, copper, radio, satellite transmission rate = bandwidth routers: forward packets (chunks of data) Company network Sensorweb Research Laboratory -10- Georgia State University Physical overview of Internet protocols control sending, receiving of msgs e.g., TCP, IP, HTTP, FTP, PPP Internet: “network of server Residential access workstation mobile networks” router loosely hierarchical public Internet versus private intranet Network Core Internet standards Called RFC (Request for comments), developed by IETF (Internet Engineering Task Force) Sensorweb Research Laboratory -11- Company network Georgia State University Metric Units metric prefixes for data rate Note: data rates – kbps (103), Mbps(106), Gbps(109) … bits per second data sizes – KB (210), MB(220), GB(230), … bytes ms(msec): millisecond µs: microsecond ns: nanosecond Sensorweb Research Laboratory -12- Georgia State University Introduction Physical overview of Internet Physical architecture Network Edge - Internet access technologies Residential access Company access Network Core – Switching technologies Software overview of Internet Roadmap Software architecture The OSI and TCP/IP Reference Models Internet history Network standardization body Sensorweb Research Laboratory -13- Georgia State University Residential Internet Access Phone Company Cable TV Company Dialup ADSL HFC Wireless Company WiMax Sensorweb Research Laboratory -14- Georgia State University Residential access Phone Company Dialup via modem up to 56Kbps direct access to router (often less) Can’t surf and phone at same time: can’t be “always on” ADSL: asymmetric digital subscriber line up to 1 Mbps upstream (today typically < 256 kbps) up to 8 Mbps downstream (today typically < 1 Mbps) Sensorweb Research Laboratory -15- Georgia State University Dialup Local loops Trunks Analog twisted pairs going to houses and businesses Digital fiber optics connecting the switching offices Toll Office (Switching offices) Where calls are moved from one trunk to another Sensorweb Research Laboratory -16- Georgia State University ADSL: asymmetric digital subscriber line Design goal: (1) Work over exist 3 UTP twisted pair local loops. (2) Not affect customers’ existing telephone and fax machine (3) Much faster than 56kbps (4) Always on – monthly charge Sensorweb Research Laboratory -17- Georgia State University ADSL A typical ADSL equipment configuration. Sensorweb Research Laboratory -18- Georgia State University ADSL 256 Channel over 1.1MHz: 0 (POTS), 1-5(unused), 6-255(data channels) ANSI T1.413 and ITU G.992.1: up to 8 Mbps downstream and 1 Mbps upstream. Standard service: 512 kbps downstream and 64 kbps upstream Premium service: 1 Mbps downstream and 256 kbps upstream Sensorweb Research Laboratory -19- Georgia State University Residential access Cable TV Company HFC: hybrid fiber coax asymmetric: up to 27Mbps downstream, 9 Mbps upstream network of cable and fiber attaches homes to ISP router homes in same community share bandwidth deployment: available via cable TV companies Sensorweb Research Laboratory -20- Georgia State University Community Antenna Television An early cable television system. Sensorweb Research Laboratory -21- Georgia State University HFC Internet over TV Cable Sensorweb Research Laboratory -22- Georgia State University Compare to ADSL Internet over ADSL Sensorweb Research Laboratory -23- Georgia State University Cable vs ADSL Cable ADSL Physical Coax Twisted pair Medium access Shared Independent Security Okay Better ISP choices Usually not Flexible Data rate Depends on # of 1Mbps down shared users, 256kbps up Up to 27Mbps/9Mbps Sensorweb Research Laboratory -24- Georgia State University Spectrum Allocation Frequency allocation in a typical cable TV system used for Internet access Sensorweb Research Laboratory -25- Georgia State University Signal Splitter Sensorweb Research Laboratory -26- Georgia State University Cable Modems Typical details of the upstream and downstream channels in North America. Upstream: QPSK, slotted Aloha with binary exponential backoff Downstream: QAM–64/QAM-256, time division multiplexing Sensorweb Research Laboratory -27- Georgia State University Residential access Wireless Company 400~700kbps Up to 2Mbps - according to Verizon Wireless Local Loop Example: IEEE 802.16 WiMax – Verizon Wireless Sensorweb Research Laboratory -28- Georgia State University Other ways for residential access? Electricity company PLC (Power Line Communication) BPL (Broadband over Power Line) http://en.wikipedia.org/wiki/Power_line_communication How about other utility companies: Gas, Water, …… Sensorweb Research Laboratory -29- Georgia State University Introduction Physical overview of Internet Physical architecture Network Edge - Internet access technologies Residential access Company access Network Core – Switching technologies Software overview of Internet Roadmap Software architecture The OSI and TCP/IP Reference Models Internet history Network standardization body Sensorweb Research Laboratory -30- Georgia State University Company access: local area networks company/univ local area network (LAN) connects end system to edge router Ethernet: shared or dedicated link connects end system and router 10 Mbs, 100Mbps, Gigabit Ethernet Sensorweb Research Laboratory -31- Georgia State University Wireless access networks Shared wireless access network connects end system to router wireless LANs: 802.11b (WiFi): 11 Mbps 802.11a, 802.11g … wider-area wireless access via base station aka “access point” router base station WiMax – talked before 3G ~ 384 kbps 4G ~ 100Mbps – 1Gbps WAP/GPRS in Europe wireless ad hoc networking mobile hosts Talk with each other directly inside Through a gateway to visit outside Sensorweb Research Laboratory -32- Ad hoc networking Georgia State University Introduction Physical overview of Internet Physical architecture Network Edge - Internet access technologies Network Core – Switching technologies circuit switching packet switching Software overview of Internet Roadmap Software architecture The OSI and TCP/IP Reference Models Internet history Network standardization body Sensorweb Research Laboratory -33- Georgia State University The Network Core mesh of interconnected routers the fundamental question: how is data transferred through net? circuit switching: dedicated circuit per call: telephone net packet-switching: data sent thru net in discrete “chunks” Sensorweb Research Laboratory -34- Georgia State University Network Core: Circuit Switching End-end resources reserved for “call” link bandwidth, switch capacity dedicated resources: no sharing circuit-like (guaranteed) performance call setup required Sensorweb Research Laboratory -35- Georgia State University Network Core: 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) Sensorweb Research Laboratory -36- dividing link bandwidth into “pieces” frequency division time division Georgia State University Circuit Switching: FDM and TDM Example: FDM 4 users frequency time TDM frequency time Sensorweb Research Laboratory -37- Georgia State University Numerical example How long does it take to send a file of 640,000 bits from host A to host B over a circuitswitched network? All links are 1.536 Mbps = 1536 kbps Each link uses TDM with 24 slots 500 msec to establish end-to-end circuit Solution: Each circuit transmission rate: 1.536Mbps/24 = 64kbps Time to transmit file: 640,000bits/64kbps = 10 sec Total: 10.5 sec Sensorweb Research Laboratory -38- Georgia State University Network Core: Packet Switching 10 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 statistical multiplexing. In TDM each host gets same slot in revolving TDM frame. Sensorweb Research Laboratory -39- Georgia State University Network Core: Packet Switching each end-end data stream divided into packets user A, B packets share network resources each packet uses full link bandwidth resources used as needed Bandwidth division into “pieces” Dedicated allocation Resource reservation Sensorweb Research Laboratory 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 -40- Node receives complete packet before forwarding Georgia State University Packet-switching: store-and-forward L R R R Example: L = 7.5 Mbits R = 1.5 Mbps delay = 15 sec Takes L/R seconds to transmit (push out) packet of L bits on to link of R bps Entire packet must arrive at router before it can be transmitted on next link: store and forward delay = 3L/R Sensorweb Research Laboratory -41- Georgia State University Packet switching versus circuit switching Packet switching allows more users to use network! 1 Mb/s link each user: circuit-switching: 100 kb/s when “active” active 10% of time N users 10 users 1 Mbps link packet switching: with 35 users, probability of more than 10 active users is less than .0004 n10 Pp0.1 (n | 35) 1 n0 Pp0.1 (n | 35) 35 9 probability of exact n of N users active: Sensorweb Research Laboratory -42- Georgia State University Packet switching versus 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 Sensorweb Research Laboratory -43- Georgia State University Packet-switched networks: forwarding Goal: move packets through routers from source to destination datagram network: we’ll study several path selection (i.e. routing) algorithms destination address in packet determines next hop routes may change during session analogy: driving, asking directions virtual circuit network: each packet carries tag (virtual circuit ID), tag determines next hop fixed path determined at call setup time, remains fixed thru call routers maintain per-call state Sensorweb Research Laboratory -44- Georgia State University Network Taxonomy Networks Packet-switched networks Circuit-switched networks FDM Networks with VCs TDM e.g., telephone networks e.g., ATM networks Datagram Networks e.g., Internet • Datagram network is not either connection-oriented or connectionless. • Internet provides both connection-oriented (TCP) and connectionless services (UDP) to apps. Sensorweb Research Laboratory -45- Georgia State University Connection-oriented vs Connectionless Key differences: Connection-oriented: packets arrives in the order of sending out (e.g., FIFO), and need connection setup phase Connectionless: packets may (or may not) arrive in different order of sending out, and does not need connection pre-setup Example: Circuit Switch Network: connection-oriented Packet Switch Network Virtual circuit network: connection-oriented Datagram network depends on layers and protocols: TCP – connection-oriented UDP, IP - connectionless Sensorweb Research Laboratory -46- Georgia State University Introduction Physical overview of Internet Physical architecture Network Edge - Internet access technologies Circuit switching: setup path before communication, have dedicated resource per call Packet switching: store and forward, share resource and need contend for Software overview of Internet Residential access: dialup, ADSL, cable, WiMax Company access: LAN, WLAN Network Core – Switching technologies Roadmap Software architecture The OSI and TCP/IP Reference Models Internet history Network standardization body Sensorweb Research Laboratory -47- Georgia State University Protocol “Layers” Networks are complex! many “pieces”: hosts routers links of various media applications protocols hardware, software Sensorweb Research Laboratory Question: Is there any hope of organizing structure of network? Or at least our discussion of networks? -48- Georgia State University Internet protocol stack application: supporting network applications transport: host-host data transfer IP, routing protocols link: data transfer between neighboring network elements, including encapsulating bits into frames TCP, UDP network: routing of datagrams from source to destination FTP, SMTP, HTTP, etc PPP, Ethernet, etc application transport network link physical physical: bits “on the wire” Sensorweb Research Laboratory -49- Georgia State University Analogy scenario The philosopher-translator-secretary architecture. Sensorweb Research Laboratory -50- Georgia State University Services to Protocols Relationship The relationship between a service and a protocol: each layer implements a service via its own internal-layer actions or protocols relying on services provided by layer below Sensorweb Research Laboratory -51- Georgia State University 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., changing common language of translators does not affect the communication between the philosopher layering considered harmful? Sensorweb Research Laboratory -52- Georgia State University source message segment Ht datagram Hn Ht frame Hl Hn Ht M M M M application transport network link physical Typical network flow Hl Hn Ht M link physical Hl Hn Ht M switch destination M Ht M Hn Ht Hl Hn Ht M M application transport network link physical Sensorweb Research Laboratory Hn Ht Hl Hn Ht M M network link physical Hn Ht Hl Hn Ht M M router -53- Georgia State University General situation of end-end flow Example information flow supporting virtual communication in layer 5. Sensorweb Research Laboratory -54- Georgia State University Introduction Physical overview of Internet Physical architecture Network Edge - Internet access technologies Network Core – Switching technologies Software overview of Internet Roadmap Software architecture The OSI and TCP/IP Reference Models Internet history Network standardization body Sensorweb Research Laboratory -55- Georgia State University The design principles of OSI Reference Models A layer should be created when a different abstraction is needed Each layer should perform a well-defined function The function of each layer should be chosen with an eye toward defining internationally standardized protocols The layer boundaries should be chosen to minimize the information flow across the interfaces The number of layers should be large enough that functions need not be thrown together in the same layer out of necessity and small enough that the architecture does not become unwieldy Sensorweb Research Laboratory -56- Georgia State University OSI Reference Models The OSI reference model. Sensorweb Research Laboratory Concern the syntax and semantics of information transmitted Allow users on different machines to establish sessions -57- Georgia State University TCP/IP Reference Models The TCP/IP reference model. Sensorweb Research Laboratory -58- Georgia State University TCP/IP Reference Models 123 Major protocol and application components common to most commercial TCP/IP software packages and their relationship Sensorweb Research Laboratory -59- Georgia State University A Critique of the OSI Model and Protocols Bad Bad Bad Bad timing technology implementations politics Sensorweb Research Laboratory -60- Georgia State University A Critique of the TCP/IP Reference Model Service, interface, and protocol not distinguished Not a general model Host-to-network “layer” not really a layer No mention of physical and data link layers Minor protocols deeply entrenched, hard to replace Sensorweb Research Laboratory -61- Georgia State University Hybrid flow in the lecture application: supporting network applications transport: host-host data transfer IP, routing protocols link: data transfer between neighboring network elements, including encapsulating bits into frames TCP, UDP network: routing of datagrams from source to destination FTP, SMTP, HTTP, DNS MAC (Multiple Access Control) sublayer application transport network link physical physical: bits “on the wire” Sensorweb Research Laboratory -62- Georgia State University Introduction Physical overview of Internet Physical architecture Network Edge - Internet access technologies Network Core – Switching technologies Software overview of Internet Roadmap Software architecture The OSI and TCP/IP Reference Models Internet history Network standardization body Sensorweb Research Laboratory -63- Georgia State University Internet History 1961-1972: Early packet-switching principles 1961: Kleinrock - queueing theory shows effectiveness of packetswitching 1964: Baran - packet-switching in military nets 1967: ARPAnet conceived by Advanced Research Projects Agency 1969: first ARPAnet node operational (a) Structure of the telephone system. (b) Baran’s proposed distributed switching system. Sensorweb Research Laboratory -64- Georgia State University Internet History 1961-1972: Early packet-switching principles 1972: ARPAnet demonstrated publicly NCP (Network Control Protocol) first host-host protocol first e-mail program ARPAnet has 15+ nodes Growth of the ARPANET (a) December 1969. (b) July 1970. (c) March 1971. (d) April 1972. (e) September 1972. Sensorweb Research Laboratory -65- Georgia State University Internet History 1972-1980: Internetworking, new and proprietary nets 1970: ALOHAnet satellite network in Hawaii 1973: Metcalfe’s PhD thesis proposes Ethernet 1974: Cerf and Kahn architecture for interconnecting networks late70’s: proprietary architectures: DECnet, SNA, XNA late 70’s: switching fixed length packets (ATM precursor) 1979: ARPAnet has 200 nodes Sensorweb Research Laboratory 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 -66- Georgia State University 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 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 of the Web Sensorweb Research Laboratory -67- Georgia State University Internet Usage Traditional applications (1970 – 1990) E-mail News Remote login File transfer Today in addition WWW: news, shopping, gaming, maps, trading, etc Multimedia: Internet video, audio, radio P2P file sharing Blogs Messenger …… Sensorweb Research Laboratory -68- Georgia State University Introduction Physical overview of Internet Physical architecture Network Edge - Internet access technologies Network Core – Switching technologies Software overview of Internet Roadmap Software architecture The OSI and TCP/IP Reference Models Internet history Network standardization body Sensorweb Research Laboratory -69- Georgia State University Network Standardization Telecommunications World ITU (International Telecommunication Union), called CCITT during 1956-1993 International Standards World ISO (International Standards Organization) U.S: ANSI (American National Standards Institute) Other countries … IEEE (Institute of Electrical and Electronics Engineers) Internet Standards World Internet Society IAB (Internet Activities Board) IRTF (Internet Research Task Force): long-term research IETF (Internet Engineering Task Force): short-term engineering issues – RFC documents Sensorweb Research Laboratory -70- Georgia State University IEEE 802 Standards The 802 working groups. The important ones are marked with *. The ones marked with are hibernating. The one marked with † gave up. Sensorweb Research Laboratory -71- Georgia State University Summary Covered a “ton” of material! Physical overview of Internet to follow! Software overview of Internet Physical architecture Network Edge - Internet access technologies Network Core – Switching technologies You now have: context, overview, “feel” of networking more depth, detail Software architecture The OSI and TCP/IP Reference Models Internet history Names and terms in network society Sensorweb Research Laboratory -72- Georgia State University Suggestion Read Chapter 1 Preview Chapter 2 (Application Layer) Install WireShark and read its manual: http://www.wireshark.org/download.html Wireshark is a free and open-source packet analyzer. It is used for network troubleshooting, analysis, software and communications protocol development, and education. Originally named Ethereal, in May 2006 the project was renamed Wireshark due to trademark issues. Sensorweb Research Laboratory -73- Georgia State University