CSE561: Graduate Computer Networking Venkat Padmanabhan Microsoft Research CSE561 Spring 2001 Venkat Padmanabhan 1 Prelimaries Instructor: Venkat Padmanabhan Email: padmanab@cs.washington.edu Lectures: MF, 12:00-1:20 PM, EE1 003 Office hours: MF 1:30-2:00 PM, Sieg 226D TA: Andrew Whitaker Email: andrew@cs.washington.edu Office hours: Th 2:30-3:30 PM, Sieg 433 Home page: http://www.cs.washington.edu/education/cour ses/561/01sp/ CSE561 Spring 2001 Venkat Padmanabhan 2 What’s this class about? • Reading 25-30 papers spanning a wide spectrum of the networking research literature • Learning how to critique networking research • Learning how to do networking research through a hands-on project CSE561 Spring 2001 Venkat Padmanabhan 3 Am I ready to take this class? • If you have taken CSE 461 or an equivalent undergraduate class elsewhere, then you’re all set. • If you haven’t but have at least some background in computer systems, you can read through a basic textbook (e.g., the book by Peterson & Davie) without much effort. • Minimal coverage of basic material in class CSE561 Spring 2001 Venkat Padmanabhan 4 Syllabus Focus on the Internet-related research • Design philosophy and architecture • Medium access control (Ethernet, wireless) • Routing (BGP) • Transport (TCP) • Applications (Web/HTTP, audio/video) • Novel paradigms (multicast, active networks) • Novel networks (wireless, mobile) • Security (protocol vulnerability, DoS attacks) CSE561 Spring 2001 Venkat Padmanabhan 5 What you are expected to do • Read and review research papers (20%) • Actively participate in discussions in class and on the mailing list (10%) • Take midterm exam (20%) • Define and work on a networking research project (50%) CSE561 Spring 2001 Venkat Padmanabhan 6 Literature Review • 25-30 research papers – all available online on the course home page – only need to review papers marked as such – “optional reading” need not be reviewed • Review (one page max per paper) – summarize paper in just a few sentences – highlight contributions/lessons learned – point out shortcomings in assumptions, approach, data, etc. (ignore presentation problems!) – bonus points for comparing and contrasting with related literature (from reading list or elsewhere) CSE561 Spring 2001 Venkat Padmanabhan 7 Literature Review (contd.) • Reviews – OK to discuss papers with others at any time – But you must write your own review! – Hardcopy due at the start of each lecture – You may choose to post your review on the mailing list after the lecture period to get some discussion going CSE561 Spring 2001 Venkat Padmanabhan 8 Class Participation • Read the papers before coming to class • Actively participate in discussion in class and on the mailing list • Remember: there are few absolute truths in networking. So don’t be afraid to be a contrarian. CSE561 Spring 2001 Venkat Padmanabhan 9 Mid-term Exam • Scheduled for Friday, May 11 • Focus on understanding rather than the knowledge of facts CSE561 Spring 2001 Venkat Padmanabhan 10 Project • Define and work on a research project that – is interesting – explores novel issues or approaches – is doable in the available time • Groups of 2-3 students (not a rule) • You are encouraged to come up with ideas – feel free to brainstorm on ideas with others – aim high! The best projects could lead to papers at the top conferences (SIGCOMM,Infocom,Mobicom) – I’ll distribute a list of potential projects in class next week CSE561 Spring 2001 Venkat Padmanabhan 11 Project (contd.) • Project scope – implementation, simulation, measurement, analysis, or some combination thereof – this is not about doing a literature survey • The process – initial meeting (April 6) – 1-2 page project proposal due April 13 • problem statement, specific goals, resources you need, plan of attack, (anticipated) deliverables • not a rigid document CSE561 Spring 2001 Venkat Padmanabhan 12 Project (contd.) • The process (contd.) – checkpoint meetings after class on May 7 – project presentations and final report due the first week of June (exact date TBD) CSE561 Spring 2001 Venkat Padmanabhan 13 Elements of a Network • Links carry information (bits) – Wire, wireless, fiber optic, smoke signals … • Switches move bits between links – Routers, gateways, bridges, CATV headend, PABXs, … • Hosts are the communication endpoints – PC, PDA, cell phone, toaster, … CSE561 Spring 2001 Venkat Padmanabhan 14 Example – Local Area Network Ethernet Hub Cable Modem Printer Laptop PC • Your home network – Ethernet is a broadcast-capable multi-access LAN CSE561 Spring 2001 Venkat Padmanabhan 15 Example – An Internetwork ISP 2 ISP 1 Local Net 1 Local Net 2 • Internetwork is a network of networks • The Internet is a global internetwork in which all participants speak a common language, IP. CSE561 Spring 2001 Venkat Padmanabhan 16 Key Features of the Internet • Distributed – decentralized operation, global reach • Large-scale – 110 million hosts (Jan 2001) and growing • Heterogeneous – links, end-points • Intelligent end-points – supercomputers, PCs, PDAs • Multi-purpose – Web, audio/video conferencing, telnet CSE561 Spring 2001 Venkat Padmanabhan 17 Growth of the Internet CSE561 Spring 2001 Venkat Padmanabhan 18 Network Components Say you want download a file from host A onto host B. What problems do you need to solve? CSE561 Spring 2001 Venkat Padmanabhan 19 Host Discovery Locating the remote host • The “naming” problem – provides a level of indirection between names and addresses • Domain Name System (DNS) – the “telephone directory” of the Internet CSE561 Spring 2001 Venkat Padmanabhan 20 Medium Access Control Putting bits on the wire • The network carries packets, not bits – framing to create packets out of bits • Physical medium may be shared – example: Ethernet, wireless – medium access control (MAC) to arbitrate amongst several contenders • Actually, the network only carries electrical or optical signals – modulation to convert digital data into analog signals CSE561 Spring 2001 Venkat Padmanabhan 21 Routing How do a packet find its way through the network? • Internet is distributed – no central “brain” – routing happens in a decentralized manner • Internet is not owned by any one organization – hierarchical routing architecture – intra-domain and inter-domain CSE561 Spring 2001 Venkat Padmanabhan 22 Transport Protocol How do you ensure reliable transmission of the file over an unreliable network? • Links and routers are a shared resource – a packet may be dropped when the resource is overutilized (or even otherwise!) – resources need to be apportioned “fairly” • Need to perform loss recovery and congestion control • Transmission Control Protocol (TCP) – responsible the vast majority of Internet traffic CSE561 Spring 2001 Venkat Padmanabhan 23 Interaction of Transport Protocols with Applications One size doesn’t fit all • Transfer size – a protocol designed for large file transfers may be too heavyweight for exchanging short messages • Reliability – necessary for ordinary file transfer – not necessary for live streaming audio CSE561 Spring 2001 Venkat Padmanabhan 24 Multicast Several clients may want to download a file at the same time • Repeated unicast would be inefficient • Need to multicast the file – avoid sending a packet over a link repeatedly • Multicast makes existing problems harder, especially because of heterogeneity – routing – loss recovery – congestion control CSE561 Spring 2001 Venkat Padmanabhan 25 Resource Discovery Say you have a choice of where to download the file from • Best to download it from “nearest” source – this is exactly the goal of content distribution networks (e.g., Akamai) • But Internet “distance” is not a static metric and is hard to measure CSE561 Spring 2001 Venkat Padmanabhan 26 Security It ain’t a friendly world out there! • Eavesdropping on conversations • Masquerading as another entity – man-in-the-middle attack • Non-compliance with the protocols • Deliberate overconsumption of resources – denial of service attack CSE561 Spring 2001 Venkat Padmanabhan 27 Mobility Hosts and/or networks may be mobile • Examples: – a person carrying a laptop from work to home – a planeload of people • Maintaining Internet connectivity in the face of mobility – mobility impacts most of the other components (discovery, routing, transport, applications, security) CSE561 Spring 2001 Venkat Padmanabhan 28 Lecture Roadmap 1. 2. 3. 4. 5. 6. Internet design principles and architecture Medium Access Control Internet routing Router architectures Transport protocols: congestion control Transport protocols: interaction with applications 7. Router support for congestion control 8. Multicast routing CSE561 Spring 2001 Venkat Padmanabhan 29 Lecture Roadmap (contd.) 9. 10. 11. 12. 13. 14. 15. 16. Multicast transport and applications Naming Resource discovery and selection Host and network mobility Wireless networks (medium access control) Wireless networks (TCP interactions) Network and protocol vulnerability Active networks CSE561 Spring 2001 Venkat Padmanabhan 30 Topics Not Covered • • • • • Quality of service Real-time communication Traffic measurement and analysis Ad-hoc networks … and many others CSE561 Spring 2001 Venkat Padmanabhan 31 Next Lecture: Internet Design Principles and Architecture • History and evolution of the Internet • Current architecture • Defining principles: – – – – – layering datagram service statistical multiplexing decentralized architecture end-to-end principle CSE561 Spring 2001 Venkat Padmanabhan 32 Next Lecture (contd.) • Papers to read – D. Clark, The Design Philosophy of the DARPA Internet Protocols, ACM SIGCOMM 1988 – .H. Saltzer, D.P. Reed, D.D. Clark, End-toEnd Arguments in System Design, ACM TOCS, November 1984 • The optional papers are also classics! • No reviews due CSE561 Spring 2001 Venkat Padmanabhan 33