15-744: Computer NetworkingL-1 Intro to Computer Networks2Outline• Administrivia• Layering3Who’s Who?• Professor: Srinivasan Seshan• http://www.cs.cmu.edu/~srini• [email protected]• Office hours: Friday 4:00-5:00• TA: Vijay Vasudevan• [email protected]• Office hours: Tuesday 2-3PM (or byappointment)• Course info• http://www.cs.cmu.edu/~srini/15-744/S08/4Objectives• Understand the state-of-the-art in networkprotocols, architectures and applications• Understand how networking research isdone• Teach the typical constraints and thoughtprocesses used in networking research• How is class different from undergraduatenetworking (15-441)• Training network programmers vs. trainingnetwork researchers5Web Page• Check regularly!!• Course schedule• Reading list• Lecture notes• Announcements• Assignments• Project ideas• ExamsDiscussion Site• http://great-white.cmcl.cs.cmu.edu:8080/• Currently using slashcode will be updated in a fewweeks• For each lecture, two students will create a “publicreview” of paper(s) that:• Briefly summarizes paper (1-2 paragraphs)• Provides background/related material (1-2 paragraphs)• Critiques paper and suggests discussion topics (2-3paragraph)• Try to be positive…• Why or why not keep this paper in syllabus?• What issues are left open for future research?• What are the important implications of the work?67Course Materials• Research papers• Links to ps or pdf on Web page• Combination of classic and recent work• ~40 papers• Optional readings• Recommended textbooks• For students not familiar with networking• Peterson & Davie or Kurose & Ross8Grading• Homework assignments (20%)• 4 Problem sets & hands-on assignments• Class + discussion site participation (10%)• 2 person project (35%)• Midterm exam + final exam (35%)• Closed book, in-classWaitlist• Class is heavily over-subscribed• 26 enrolled, 22 on wait-list target size = low 20’s• Unlikely to take any more students• If you are trying to add class• Position on waitlist irrelevant• You must show up for the first couple lectures andsign in• Current wait-list order will not be used, priority willbe given in the following order• Any PhD student• Any SCS student• Other students with research needs910Class Coverage• Little coverage of physical and data linklayer• Little coverage of undergraduate material• Students expected to know this• Focus on network to application layer• We will deal with:• Protocol rules and algorithms• Investigate protocol trade-offs• Why this way and not another?11Lecture TopicsTraditional• Layering• Internet architecture• Routing (IP)• Transport (TCP)• Queue management(FQ, RED)• Naming (DNS)Recent Topics• Multicast• Mobility/wireless• Active networks• QoS• Security• Network measurement• Overlay networks• P2P applications12Outline• Administrivia• Layering13What is the Objective of Networking?• Communication between applications ondifferent computers• Must understand applicationneeds/demands• Traffic data rate• Traffic pattern (bursty or constant bit rate)• Traffic target (multipoint or single destination,mobile or fixed)• Delay sensitivity• Loss sensitivity14Back in the Old Days…15Packet Switching (Internet)Packets16Packet Switching• Interleave packets from different sources• Efficient: resources used on demand• Statistical multiplexing• General• Multiple types of applications• Accommodates bursty traffic• Addition of queues17Characteristics of Packet Switching• Store and forward• Packets are self contained units• Can use alternate paths – reordering• Contention• Congestion• Delay18Internet[work]Internet[work]• A collection ofinterconnectednetworks• Host: networkendpoints(computer, PDA,light switch, …)• Router: node thatconnects networks• Internet vs. internet19Challenge• Many differences between networks• Address formats• Performance – bandwidth/latency• Packet size• Loss rate/pattern/handling• Routing• How to translate between various networktechnologies?20How To Find Nodes?InternetComputer 1 Computer 2Need naming and routing21NamingWhat’s the IP address for www.cmu.edu?It is 128.2.11.43Translates human readable names to logical endpointsLocal DNS ServerComputer 122RoutingRRRRRHHHHRRHRRouters sendpacket towardsdestinationH: HostsR: Routers23Meeting Application Demands• Reliability• Corruption• Lost packets• Flow and congestion control• Fragmentation• In-order delivery• Etc…24What if the Data gets Corrupted?InternetGET windex.htmlGET index.htmlSolution: Add a che cksu mProblem: Data Corruption0,9 9 6,7,8 21 4,5 7 1,2,3 6X25What if Network is Overloaded?Problem: Network Overload• Short bursts: buffer• What if buffer overflows?• Packets dropped• Sender adjusts rate until load = resources “congestion control”Solution: Buffering and Congestion Control26What if the Data gets Lost?InternetGET index.htmlProblem: Lost DataInternetGET index.htmlSolution: Timeout and RetransmitGET index.htmlGET index.html27Problem: Packet sizeSolution: Fragment data across packetsWhat if the Data Doesn’t Fit?• On Ethernet, max IP packet is 1.5kbytes• Typical web page is 10kbytesGETindex.htmlGET index.html28Solution: Add Sequence NumbersProblem: Out of OrderWhat if the Data is Out of Order?GETx.htindemlGET x.htindemlGET index.htmlml 4 inde 2 x.ht 3 GET 129Lots of Functions Needed• Link• Multiplexing• Routing• Addressing/naming (locating peers)• Reliability• Flow control• Fragmentation• Etc….30What is Layering?• Modular approach to network functionality• Example:Link hardwareHost-to-host connectivityApplication-to-application channelsApplication31Protocols• Module in layered structure• Set of rules governing communicationbetween network elements (applications,hosts, routers)• Protocols define:• Interface to higher layers (API)• Interface to peer• Format and order of messages• Actions taken on receipt of a message32Layering Characteristics• Each layer relies on services from layerbelow and exports services to layer above• Interface defines interaction• Hides implementation - layers can changewithout disturbing other layers (black box)33LayeringHostHostApplicationTransportNetworkLinkUser A User BLayering: technique to simplify complex systems34E.g.: OSI Model: 7 Protocol Layers• Physical: how to
View Full Document