CS 5565 Network Architecture and Protocols Godmar Back
About Me Undergraduate Work at Humboldt and Technical University Berlin PhD University of Utah Postdoctoral Work at Stanford University Joined Virginia Tech as Assistant Professor August 2004 Promoted to Associate Professor with tenure June 2010 Research Interests: Operating systems, runtime systems, virtual machines Web technologies Software engineering; languages High performance computing CS 5565 Spring 2012 11/13/2018
Course Facts Meet Tuesday/Thursday Website: 9:30am-10:45am McBryde 216 Website: http://courses.cs.vt.edu/~cs5565 Send class-related email to cs5565-staff@cs.vt.edu TA: Hao “Tony” Zhang Office hours TBA; returns Jan 30 to Blacksburg CS 5565 Spring 2012 11/13/2018
Class Format Lecture + class discussions Homeworks Exams Problem sets, small assignments Exams 1 Midterm 1 Final Programming Projects CS 5565 Spring 2012 11/13/2018
Reading Material Required Textbook James F. Kurose & Keith W. Ross: Computer Networking: A Top-down Approach. (5th Edition), 2010 Website subscription Will post reading assignments: Chapter 1 for this week CS 5565 Spring 2012 11/13/2018
Reading Material (cont’d) Will assign a few research papers Optional supplementary textbooks Tanenbaum & van Steen: Distributed Systems: Principles and Paradigms Tanenbaum: Networking Doug Comer: Internetworking with TCP/IP, Vol 1 Wright & Stevens, TCP/IP Illustrated CS 5565 Spring 2012 11/13/2018
Exams Midterm & Final Final is comprehensive Exams will include material from assigned research papers CS 5565 Spring 2012 11/13/2018
Late Policy No late submissions will be accepted. Instead, you have 4 late days: Self-granted extensions, no need to ask for permission Can be used on homeworks & projects Contact instructor in extraordinary circumstances only Job interviews do not count Presenting at a conference does count CS 5565 Spring 2012 11/13/2018
Grading 15% Midterm 25% Final 10% Homeworks 50% Projects These may be subject to change Not grading on a standard scale: Expect B+ or better if you’re consistently above median CS 5565 Spring 2012 11/13/2018
Honor Code Will be strictly enforced in this class Do not cheat Observe collaboration policy outlined in syllabus Will use MOSS for software cheating detection Do not borrow code from previous offerings Read the policies posted on the website “I was not aware…” is no excuse If in doubt, ask! CS 5565 Spring 2012 11/13/2018
On Plagiarism Constitution of the Graduate Honor System, Avoiding Plagiarism: A Guide for Graduate Students at Virginia Tech "Plagiarism includes the copying of the language, structure, ideas, and/or thoughts of another and passing off same as one's own, original work.“ Plagiarism = copying of (language || structure || ideas || thoughts) && misrepresenting CS 5565 Spring 2012 11/13/2018
Acknowledgments Many slides adapted from Kurose/Ross Some from Tannenbaum Some from Dr. Varadarajan’s CS5516 CS 5565 Spring 2012 11/13/2018
High-level Objectives Gain theoretical & practical understandings of the basics of networking Be equipped to start research in communication networks CS 5565 Spring 2012 11/13/2018
Motivation Computer networks (read: the Internet) have completely reshaped the way people communicate, live, and work (if you’re old enough to know…) Motivates study of the Internet as a vehicle for studying networks in general CS 5565 Spring 2012 11/13/2018
CS 5565 Spring 2012 11/13/2018
CS 5565 Spring 2012 11/13/2018
Number of Websites (1996-2012) CS 5565 Spring 2012 11/13/2018
Number of Internet Hosts (1990-2012) CS 5565 Spring 2012 11/13/2018
How to teach networks? Traditional Bottom-up approach E.g., Tanenbaum book Top-down approach Kurose/Ross book Applications motivate networks Will follow top-down approach Won’t be dogmatic about it application transport network link physical CS 5565 Spring 2012 11/13/2018
Topics Networking Architecture and Protocols Motivation, Overview, Definitions, Terms Application protocols Socket programming Transport Layer Service models, protocols, flow/congestion control Network Layer Service models, routing algorithms, multicasting Link Layer: Issues, performance, implementation Others: I welcome your suggestions CS 5565 Spring 2012 11/13/2018
“Not so much” topics This version of the class will not emphasize or only cover marginally Theoretical network analysis and modeling, queuing theory Network security Specifics of wireless networking Deep physical layer details (modulation, coding) Take a specific class in that area or a different offering of this course if you need background in those areas CS 5565 Spring 2012 11/13/2018
Programming Projects 4 Major Projects Plus smaller exercises You pick the programming language: recommend a high-level language, such as Python – but low-level Java/C++/C should work These projects involve a substantial amount of programming. I expect you to bring strong programming skills. CS 5565 Spring 2012 11/13/2018
Project 1 Build a reliable data transmission protocol CS 5565 Spring 2012 11/13/2018
Project 1: Reliable Data Transmission (cont’d) Focus on Layered design (you define the layers & reason about them) Understanding principles behind reliable data transmission protocols by implementing one Also a good exercise in concurrent programming Understanding performance implications by doing systematic experimentation CS 5565 Spring 2012 11/13/2018
Project 2 Part 2A: Part 2B: Implement an RPC system Implement routing protocols Using discrete-event simulator CS 5565 Spring 2012 11/13/2018
Project 2 … Node 1 Node 0 Simulator Node n-1 Outbound TCP Stream Inbound TCP Stream Outbound Request Reply Inbound Request Node 1 Node 0 … Simulator Node n-1 CS 5565 Spring 2012 11/13/2018