DOC PREVIEW
Stanford CS 144 - Introduction to Computer Networking

This preview shows page 1-2-3-24-25-26-27-49-50-51 out of 51 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 51 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 51 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 51 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 51 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 51 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 51 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 51 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 51 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 51 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 51 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 51 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS144 – Introduction to ComputerNetworkingInstructor: Philip LevisCAs: Kirian Abraham, Tahir Azim, Arda Kara,Behram Mistree, Harsh NayyarSection Leaders: Alex Quach, Pong [email protected]://cs144.scs.stanford.edu/Networks class• Goal: Teach the concepts underlying networks- How do networks work? What can one do with them?- Give you a basic understanding of the Internet- Give you experience using and writing protocols- Give you tools to understand new protocols & applications• Prerequisites:- CS110 or equiv; class assumes you are comfortable with Cand gdb, some socket programming helpful (e.g., CS110web server)Administrivia• All assignments are on the web page• Text: Kurose & Ross, Computer Networking: ATop-Down Approach, 4th or 5th edition- Instructors working from 4th edition, either OK- Don’t need lab manual or Ethereal (used book OK)• Syllabus on web page- Gives which textbook chapters correspond to lectures(Lectures and book topics will mostly overlap)- Extra (not required) questions for further understanding- Papers sometimes, to make concepts more concrete(Read the papers before class for discussion)- Subject to change! (Reload before checking assignments)Online Resources• Old school web page: http://cs144.stanford.edu• We use Piazza for assignments: please send allassignment questions there- Link on http://cs144.stanford.edu- Piazzza allows you to answer questions and rate answers• Send all staff communication to staff list- Goes to whole staff, so first available person can respond- CCing list ensures we give students consistent information- Also, some of us get lots of email. . . much easier for us toprioritize a specific mailing listGrading• Exams: Midterm & Final• Programming labs- 5 lab assignments implemented in C- If you are not comfortable with C and gdb they will bepainful• Two writing homework assignments- One question each week, pick 2- Opportunity to rewrite and resubmit based on feedback• Administrative handout has details on grading,please put questions on PiazzaLabs• Labs are due by the beginning of class- Lab 1: Stop & wait- Lab 2: Reliable transport- Lab 3: Static routing- Lab 4: Dynamic routing- Lab 5: NAT• Most assignments due at start of Wednesdaylecture- Late policy: can turn in late until 8:59PM that Friday, gradecapped at 90%- Lab 1: Due at start of Monday lecture, late is 8:59PM onWednesdaySection• Place and time TBA• Led by TAs and section leaders• Practical assignment help and guidance• This week: gdb tutorialWhy You Should Care About the Internet(just 12 months)Societal Change 2010Societal Change 2011Political Change 2010Political Change 2011Political Change by ForceEconomic ChangeMore Economic ChangeEducational Change 2010Educational Change 2011Dominance in Technology TodayMobile DevicesWhy You Should Take This Course• The Internet is driving tremendous changes in theworld• It is continuously growing and evolving- Any facts you learn will inevitably be out of date- Learn general principles of networks• Goal: Teach the underlying concepts of networks- How do networks work? What can one do with them?- Give you a basic understanding of the Internet- Give you experience using and writing protocols- Give you tools to understand new protocols & applicationsToday’s Lecture• Basic networking abstractions- Protocols- OSI layers and the Internet Hourglass• Transport protocols: TCP and UDP• Protocol performance tradeoffs• Programming refresher for lab 1+2- Review of file descriptors- Some functions from the socket API• Next lecture: basics of reliability and server socketprogrammingNetworks• What is a network?- A system of lines/channels that interconnect- E.g., railroad, highway, plumbing, communication,telephone, computer• What is a computer network?- A form of communication network—moves information- Nodes are general-purpose computers• Why study computer networks?- Many nodes are general-purpose computers- You can program the nodes- Very easy to innovate and develop new uses of network- Contrast: Old PSTN – all logic is in the coreBuilding blocks• Nodes: Computers, dedicated routers, . . .• Links: Coax, twisted pair, fibers, radio . . .(a) point-to-point(b) multiple access – every node sees every packet(a)(b)…From Links to Networks• To scale to more nodes, use switching- nodes can connect multiple other nodes, or- Recursively, one node can connect multiple networksProtocol layeringTCPIPLink LayerUDPApplication• Can view network encapsulation as a stack• A network packet (IP) from A to D must be put inlink layer packets A to B, B to C, and C to D- Each layer produces packets that become the payload of thelower-layer’s packets- This is almost correct, but TCP/UDP “cheat” to detectcertain errors in IP-level information like addressOSI layersOne or more nodeswithin the networkEnd hostApplicationPresentationSessionTransportNetworkData linkPhysicalNetworkData linkPhysicalNetworkData linkPhysicalEnd hostApplicationPresentationSessionTransportNetworkData linkPhysical• Layers typically fall into 1 of 7 categoriesLayers (and lectures)• Physical – sends individual bits (9, 13)• Data link – sends frames, handles access control toshared media (e.g., coax) (9, 13)• Network – delivers packets, using routing (4, 6, 7)• Transport – demultiplexes, provides reliability &flow control (3, 5)• Session – can tie together multiple streams (e.g.,audio & video) (15)• Presentation – crypto, conversion betweenrepresentations (15)• Application – what end user gets, e.g., HTTP (2, 11)Addressing• Each node typically has unique address- (or at least is made to think it does when there is shortage)• Each layer can have its own addressing- Link layer: e.g., 48-bit Ethernet address (interface)- Network layer: 32-bit IP address (node)- Transport layer: 16-bit TCP port (service)• Routing is process of delivering data to destinationacross multiple link hops• Special addresses can exist for broadcast/multicastHourglass…FTPTCPUDPIPNET1NET2NETnHTTP NV TFTP• Many application protocols over TCP & UDP• IP works over many types of network• This is “Hourglass” philosophy of Internet- Idea: If everybody just supports IP, can use many differentapplications over many different networks- In practice, some claim narrow waist is now network andtransport layers, due to NAT (lecture 10)Internet protocol• Most computer nets connected


View Full Document

Stanford CS 144 - Introduction to Computer Networking

Documents in this Course
IP Review

IP Review

22 pages

Load more
Download Introduction to Computer 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 Introduction to Computer 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 Introduction to Computer 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?