DOC PREVIEW
Princeton COS 461 - Key concepts in data networking

This preview shows page 1-2-3-19-20-39-40-41 out of 41 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

COS 461: Computer NetworksGoals for Today’s ClassWhat You Learn in This CourseStructure of the Course (1st Half)Structure of the Course (2nd Half)Learning the Material: PeopleContacting UsLearning the Material: BooksProgramming AssignmentsFacilities for ProgrammingGraduate Students: Two ChoicesGrading and SchedulePolicies: Write Your Own CodeOkay, so let’s get started… with a crash course in data networkingKey Concepts in NetworkingProtocols: Calendar ServiceOkay, So This is Getting TediousWell, Not Quite EnoughSpecifying the DetailsExample: HyperText Transfer ProtocolExample: IP PacketIP: Best-Effort Packet DeliveryExample: Transmission Control ProtocolProtocol StandardizationLayering: A Modular ApproachIP Suite: End Hosts vs. RoutersThe Internet Protocol SuiteLayer EncapsulationWhat if the Data Doesn’t Fit?Protocol DemultiplexingDemultiplexing: Port NumbersIs Layering Harmful?Resource Allocation: QueuesWhat if the Data gets Dropped?What if the Data is Out of Order?Resource Allocation: Congestion ControlTransmission Control ProtocolNaming: Domain Name System (DNS)Domain Name SystemDNS Resolver and Local DNS ServerConclusions1COS 461: Computer NetworksSpring 2007 (MW 1:30-2:50 in Friend 004)Jennifer RexfordTeaching Assistant: Ioannis Avramopoulos http://www.cs.princeton.edu/courses/archive/spring07/cos461/2Goals for Today’s Class•COS 461 overview–Goals of the course–Structure of the course–Learning the material–Programming assignments–Course grading–Academic policies•Key concepts in data networking–Protocols–Layering–Resource allocation –Naming3What You Learn in This Course•Skill: network programming–Socket programming–Designing and implementing protocols•Knowledge: how the Internet works–IP protocol suite–Internet architecture–Applications (Web, e-mail, P2P, VoIP, …)•Insight: key concepts in networking–Protocols–Layering–Resource allocation–Naming4Structure of the Course (1st Half)•Start at the top–Sockets: how applications view the Internet–Protocols: essential elements of a protocol•Then study the “narrow waist” of IP–IP best-effort packet-delivery service–IP addressing and packet forwarding•And how to build on top of the narrow waist–Transport protocols (TCP, UDP)–Domain Name System (DNS)–Glue (ARP, DHCP, ICMP)–End-system security and privacy (NAT, firewalls)•Looking underneath IP–Link technologies (Ethernet, wireless, …)5Structure of the Course (2nd Half)•And how to get the traffic from here to there–Internet routing architecture (the “inter” in Internet)–Intradomain and interdomain routing protocols•Building applications–Web and content-distribution networks–E-mail–Peer-to-peer file sharing–Multimedia streaming and voice-over-IP•Other approaching to building networks–Circuit switching (e.g., ATM, MPLS, …)–More on wireless networks, multicast, …6Learning the Material: People•Lecture (Jennifer Rexford)–When: MW 1:30-2:50 in Friend 004–Slides available online at course Web site–Office hours to be announced, and by appointment•Teaching Assistant (Ioannis Avramopoulos)–Office hours to be announced, and by appointment•Lab TAs in the Friend Center 016/017•Mailing list (if you’re enrolled, you’re on the list)–E-mail [email protected]–Sign up: https://lists.cs.princeton.edu/mailman/listinfo/cos461–Read often. Good place to ask (and answer!) questions7Contacting Us•Jennifer Rexford–Room 306 in Computer Science Building–E-mail at [email protected]–Phone: e-mail is better•Ioannis Avramopoulos–Room 212 In Computer Science Building–E-mail: [email protected]–Phone: 609-258-17548Learning the Material: Books•Required textbook–Computer Networks: A Systems Approach (3rd edition), by Peterson and Davie–Mostly covers the material in the first half of the class•Books on reserve–Networking text booksComputer Networking: A Top-Down Approach Featuring the Internet (3rd edition), by Kurose and Ross Computer Networks (4th edition), by Tanenbaum–Network programming referencesTCP/IP Illustrated, Volume 1: The Protocols, by StevensUnix Network Programming, Volume 1: The Sockets Networking API (3rd Edition), by Stevens, Fenner, & Rudolf•Online resources–E.g. on socket programming9Programming Assignments•Stanford Virtual Network System–Constructs virtual network topologies that integrate directly into physical networks–Traffic forwarded to your program, running in user space–http://yuba.stanford.edu/vns/•Four assignments (with target due dates)–Introduction to sockets (Mon Feb 19)–HTTP proxy (Fri Mar 9)–IP router (Mon Apr 23)–Reliable transport protocol (Tue May 15)10Facilities for Programming•Computer cluster in Friend Center 010–Friend Center 010 computers–SSH to portal.cs.princeton.edu, and then to FC 010–Machines: labpc-XX.cs.princeton.edu for XX of 01 to 30–Why: common environment, and access to lab TAs•Other option: on your own PC (not recommended)–Running GNU tools on Linux, or–Running GNU tools on Windows, or–Running a standard C development environment•Suggestion: test this week–Logging in to the FC 010 cluster–Writing and running “Hello World” in C11Graduate Students: Two Choices•Pick one of two options–Do the four programming assignments–Or, do the first two assignments, plus a research project•Research projects–Networking-related research problem–Must have a programming component–Write-up of project due on Dean’s Date–Talk to me about project ideas before spring break12Grading and Schedule•Assignments (15% each)–Assignment 1 in week 3–Assignment 2 in week 5 –Assignment 3 late in 2nd half of the semester–Assignment 4 on Dean’s Date•Two exams (30% total)–Midterm exam in week six (10%)–Final exam during exam period (20%)•Class participation (10%)–In lecture–On the listserv13Policies: Write Your Own CodeProgramming in an individual creative process much like composition. You must reach your own understanding of the problem and discover a path to its solution. During this time, discussions with friends are encouraged. However, when the time comes to write code that solves the problem, such discussions are no longer appropriate - the program must be your own work. If you have a question about how to use some feature of C, UNIX, etc., you can certainly ask your friends or the TA, but do not, under


View Full Document

Princeton COS 461 - Key concepts in data networking

Documents in this Course
Links

Links

39 pages

Lecture

Lecture

76 pages

Switches

Switches

35 pages

Lecture

Lecture

42 pages

Links

Links

39 pages

Lecture

Lecture

34 pages

Topology

Topology

42 pages

Lecture

Lecture

42 pages

Overview

Overview

42 pages

Sockets

Sockets

45 pages

Load more
Download Key concepts in data networking
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Key concepts in data networking and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Key concepts in data networking 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?