DOC PREVIEW
CMU CS 15441 - Lecture- Protocol Stacks

This preview shows page 1-2-3-4-5-6 out of 19 pages.

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

Unformatted text preview:

Page ‹#›1Lecture 2Protocol StacksDavid AndersenSchool of Computer ScienceCarnegie Mellon University15-441 Networking, Spring 2005http://www.cs.cmu.edu/~srini/15-441/S05/2Last Tuesday The Big Picture» Goals:– Efficiency– “ilities” (scalability, manageability, availability),– Ease of creating applications» Challenges:– Scale– Geography– Heterogeneity (** today’s focus!) A few specific details:» Circuits vs. packets» Little bit about routing» Service model and how to construct services (** today!)Page ‹#›3Today’s Lecture Last time: “Big picture” Today:» General architectural principles for networks» Introduces a few concrete models & examples Where we are going:» Thursday: Application examples (still high level)» After that: Burrowing into the details, ground up Today’s specifics:» What is a protocol.» Protocol stacks.» Some history.» Standards organizations.» Application layer.4Protocols Recall goals:» Interoperability» Reuse» Hiding underlying detailsPage ‹#›5Protocols An agreement betweenparties on whocommunication shouldtake place. Protocols may have todefine many aspects of thecommunication. Syntax:» Data encoding, language, etc. Semantics:» Error handling, termination,ordering of requests, etc. Protocols at hardware,software, all levels! Example: Buying airlineticket by typing. Syntax: English, ascii,lines delimited by “\n”Friendly greetingMuttered replyDestination?PittsburghThank you6More on Protocols Protocols are the key to interoperability.» Networks are very heterogenous:» The hardware/software of communicating parties are often notbuilt by the same vendor» Yet they can communicate because they use the same protocol Protocols exist at many levels.» Application level protocols, e.g. access to mail, distribution ofbboards, web access, ..» Protocols at the hardware level allow two boxes tocommunicate over a link, e.g. the Ethernet protocolHardwareHardware/linkNetworkApplicationComputer: x86Ethernet: 3comRouters: cisco, etc.App: EmailPage ‹#›7Interfaces Each protocol offers an interface to its users,and expects one from the layers on which itbuilds» Syntax and semantics strike again– Data formats– Interface characteristics, e.g. IP service model Protocols build upon each other» Add value– E.g., a reliable protocol running on top of IP» Reuse– E.g., OS provides TCP, so apps don’t have to rewrite8Too ManyNetwork ComponentsApplicationOperating SystemProtocol SoftwareComputerLinksRouter HardwareRouter Software(many protocols)Bridge HW/SWApplicationOperating SystemComputerNetwork InterfacePage ‹#›9Too many components 2 Links: copper, fiber, air, carrier pidgeon Running ethernet, token ring, SONET, FDDI Routers speaking BGP, OSPF, RIP, … Hosts running FreeBSD, Linux, Windows,MacOS, … People using Mozilla, Explorer, Opera, … and it changes all the time Phew! Protocols hide this stuff with simpleabstractions.10Looking at protocols Hop by hop / link protocols» Ethernet End-to-end protocols» TCP, apps, etc. Management / “control plane” protocols» Routing, etc.– Can be either link or e2e themselves– Definition somewhat vague. Standards» File formats, etc. E.g., JPEG, MPEG, MP3, …Categories not solid / religious, just a way to view things.Page ‹#›11Protocol andService LevelsApplicationEnd-to-endCoreNetwork12A Layered Network ModelThe Open Systems Interconnection (OSI) Model.ApplicationPresentationSessionTransportNetworkData linkPhysical1234567NetworkData linkPhysicalApplicationPresentationSessionTransportNetworkData linkPhysicalPage ‹#›13OSI Motivation Standard way of breaking up a system in a set ofcomponents, but the components are organized as a setof layers.» Only horizontal and vertical communication» Components/layers can be implemented and modified in isolation Each layer offers a service to the higher layer, using theservices of the lower layer. “Peer” layers on different systems communicate via aprotocol.» higher level protocols (e.g. TCP/IP, Appletalk) can run on multiplelower layers» multiple higher level protocols can share a single physical network “It’s only a model!” - TCP/IP has been crazy successful,and it’s not based on a rigid OSI model. But the OSImodel has been very successful at shaping thought.14OSI Functions (1) Physical: transmission of a bit stream. (2) Data link: flow control, framing, errordetection. (3) Network: switching and routing. (4) Transport: reliable end to end delivery. (5) Session: managing logical connections. (6) Presentation: data transformations. (7) Application: specific uses, e.g. mail, filetransfer, telnet, network management.Multiplexing takes place in multiple layersPage ‹#›15Example: Sending a Web PageHttp hdr Web pageTCP header. . .ApplicationpayloadApplicationPresentationSessionTransportNetworkData linkPhysical16Ethernet preambleA TCP / IP / 802.3 PacketMAC headerLLC / SNAP headerIP headerTCP headerDataApplicationPresentationSessionTransportNetworkData linkPhysicalHomework explores tradeoffs inheader sizes, etc., with differentapplicationsPage ‹#›17Multiplexing andDemultiplexing There may be multipleimplementations ofeach layer.» How does the receiverknow what version of alayer to use? Each header includes ademultiplexing field thatis used to identify thenext layer.» Filled in by the sender» Used by the receiver Multiplexing ooccurs atmultiple layers. E.g., IP,TCP, …IPTCPIPTCPV/HL TOS LengthID Flags/OffsetTTL Prot. H. ChecksumSource IP addressDestination IP addressOptions..18Different Sources ofComponents Application: webserver/browser, mail,distributed game,.. Presentation/session.» Often part of application» Sometimes a library Transport/network.» Typically part of the operatingsystem Datalink.» Often written by vendor of thenetwork interface hardware Physical.» Hardware: card and linkApplicationPresentationSessionTransportNetworkData linkPhysicalPage ‹#›19Limitations of theLayered Model Some layers are not always cleanly separated.» Inter-layer dependencies in implementations for performancereasons» Some dependencies in the standards (header checksums) Higher layers not always well defined.» Session, presentation, application layers Lower layers have “sublayers”.» Usually very well defined (e.g., SONET


View Full Document

CMU CS 15441 - Lecture- Protocol Stacks

Documents in this Course
lecture

lecture

34 pages

lecture

lecture

38 pages

lecture

lecture

18 pages

lecture

lecture

28 pages

lecture

lecture

11 pages

Lecture

Lecture

64 pages

lecture

lecture

10 pages

lecture

lecture

19 pages

Lecture 6

Lecture 6

43 pages

Exam

Exam

14 pages

lecture

lecture

38 pages

Debugging

Debugging

23 pages

lecture

lecture

60 pages

review

review

27 pages

lecture

lecture

12 pages

The Web

The Web

28 pages

Lecture

Lecture

40 pages

lecture

lecture

42 pages

lecture

lecture

9 pages

lecture

lecture

10 pages

lecture

lecture

49 pages

lecture

lecture

26 pages

Project

Project

5 pages

lecture

lecture

40 pages

lecture

lecture

9 pages

lecture

lecture

41 pages

lecture

lecture

32 pages

lecture

lecture

36 pages

lecture

lecture

34 pages

lecture

lecture

45 pages

lecture

lecture

26 pages

lecture

lecture

6 pages

lecture

lecture

51 pages

Project

Project

16 pages

lecture

lecture

44 pages

lecture

lecture

13 pages

lecture

lecture

42 pages

lecture

lecture

36 pages

Project

Project

13 pages

Project

Project

33 pages

lecture

lecture

43 pages

lecture

lecture

49 pages

Load more
Download Lecture- Protocol Stacks
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 Lecture- Protocol Stacks 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 Lecture- Protocol Stacks 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?