1 / 26

Section 1.3

Network Architecture. Section 1.3. Network Architecture. Challenge Fill the gap between hardware capabilities and application expectations, and to do so while delivering “good” performance Hardware and expectations are moving targets. How do network designers cope with complexity?.

hisoki
Download Presentation

Section 1.3

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Network Architecture Section 1.3

  2. Network Architecture • Challenge • Fill the gap between hardware capabilities and application expectations, and to do so while delivering “good” performance • Hardware and expectations are moving targets

  3. How do network designers cope with complexity? • Networking basic concepts: • Layering • Protocols • Standards

  4. Abstraction through layering • Decompose the problem of building a network into manageable components • Network components are organized in layers • Each layer provides some functionality • Each layer relies on services from layer below and provide services to layer above Distributed Applications (e.g. WWW) Application-to-application channels Host-to-host connectivity Link hardware

  5. Application programs Message stream channel Request/reply channel Host-to-host connectivity Hardware Layering: continued • Interface between layers defines interaction • Hides implementation details • Layers can change without disturbing other layers • modify a layer independently of other layers • Allows alternative abstractions within the same layer

  6. How do network designers cope with complexity? • Networking basic concepts: • Layering • Protocols • Standards

  7. Can I meet with you for 1.5 hours starting at 4:30pm on February 28, 2008? I can’t. I can’t. Can I meet with you for 1.5 hours starting at 3:00pm on February 28, 2008? Can I meet with you for 1.5 hours starting at 1:30pm on February 28, 2008? Yes! Example Protocol for A Calendar Service • Making an appointment with your instructor • Specifying the messages that go back and forth • And an understanding of what each party will do

  8. This is Getting Tedious • You: When are you free to meet for 1.5 hours during the next two weeks? • Instructor: 10:30am on Feb 27 and 1:15pm on Feb 28. • You: Book me for 1.5 hours at 10:30am on Feb 27. • Instructor: Yes.

  9. Well, Not Quite Enough • Student #1: When can you meet for 1.5 hours during the next two weeks? • Instructor : 10:30am on Feb 27 and 1:15pm on Feb 28. • Student #2: When can you meet for 1.5 hours during the next two weeks? • Instructor: 10:30am on Feb 27 and 1:15pm on Feb 28. • Student #1: Book me for 1.5 hours at 10:30am on Feb 27. • Instructor: Yes. • Student #2: Book me for 1.5 hours at 10:30am on Feb 27. • Instructor: Uh… well… I can no longer can meet then. I’m free at 1:15pm on Feb 28. • Student #2: Book me for 1.5 hours at 1:15pm on Feb 28. • Instructor: Yes.

  10. Specifying the Details • How to identify yourself? • Name? National number? • How to represent dates and time? • Time, day, month, year? In what time zone? • What granularities of times to use? • Any possible start time and meeting duration? • Multiples of five minutes? • How to represent the messages? • Strings? Record with name, start time, and duration? • What do you do if you don’t get a response? • Ask again? Reply again?

  11. Example: Hyper Text Transfer Protocol, HTTP GET /ecourse/netcourse/netindex.html/ HTTP/1.1 Host: www.ju.edu.jo User-Agent: Mozilla/4.03 CRLF Request HTTP/1.1 200 OK Date: Mon, 25 Feb 2008 13:09:03 GMT Server: Netscape-Enterprise/3.5.1 Last-Modified: Mon, 25 Feb 2008 11:12:23 GMT Content-Length: 21 CRLF Site under construction Response

  12. Example: IP Packet 4-bit Header Length 8-bit Type of Service (TOS) 4-bit Version 16-bit Total Length (Bytes) 3-bit Flags 16-bit Identification 13-bit Fragment Offset 20-byte header 8-bit Time to Live (TTL) 8-bit Protocol 16-bit Header Checksum 32-bit Source IP Address 32-bit Destination IP Address Options (if any) Payload

  13. Network Protocols • Definition • A protocol is an abstract object that makes up a layer of a network system • A protocol provides a communication service that higher-layer objects use to exchange messages • Service interface • To objects on the same computer that want to use its services • Peer interface • To its counterpart on a different machine • Peers communicate using the services of lower-level protocols

  14. Higher-level protocol (TCP) Higher-level protocol (TCP) Service interface Lower-level Protocol (IP) Lower-level Protocol (IP) Peer-to-peer interface Peer-to-peer interface Interfaces Host1 Host2

  15. Terminology • Term “protocol” is overloaded • specification of peer-to-peer interface • module that implements this interface

  16. RRP HDR DATA RRP HDR DATA Layering Concepts: Encapsulation Application program Application program DATA DATA Request/ Reply Request/ Reply RRP HDR DATA Host-to-Host Host-to-Host HHP HDR

  17. Layering Concepts (continued) • Encapsulation • Higher layer protocols create messages and send them via the lower layer protocols • These messages are treated as data by the lower-level protocol • A layer protocol adds its own control information in the form of headers or trailers • Multiplexing and Demultiplexing • Multiplexing: Messages from different higher layer protocols (e.g. TCP & UDP) could use the same lower layer protocol (e.g. IP) • Demultiplexing: Use protocol keys in the header to determine correct upper-layer protocol

  18. OSI Architecture • Open Systems Interconnect (OSI) Architecture • International Standards Organization (ISO) • International Telecommunications Union (ITU, formerly CCITT) • “X dot” series: X.25, X.400, X.500 • Primarily a reference model

  19. OSI Protocol Stack • Application: Application specific protocols • Presentation: Format of exchanged data • Session: Name space for connection mgmt • Transport: Process-to-process channel • Network: Host-to-host packet delivery • Data Link: Framing of data bits • Physical: Transmission of raw bits Application Presentation Session Transport Network Data Link Physical

  20. OSI Protocol Stack (continued) Application Application Host User-Level Presentation Presentation Session Session Router Transport Transport Host OS Kernel Network Network Network Data Link Data Link Data Link Physical Physical Physical

  21. Internet Architecture • Internet Architecture (TCP/IP) • Developed with ARPANET and NSFNET • Internet Engineering Task Force (IETF) • Culture: implement, then standardize • OSI culture: standardize, then implement • Popular with release of UC Berkeley Software Distribution (BSD) Unix; i.e., free software • Standard suggestions debated publicly through “requests for comments” (RFC’s)

  22. Internet Architecture – Hourglass Design FTP HTTP NV TFTP TCP UDP IP Ethernet FDDI ATM Modem

  23. IP IP IP Ethernet interface TCP/IP Suite: End Hosts vs. Routers host host HTTP message HTTP HTTP TCP segment TCP TCP router1 router2 IP packet IP packet IP packet IP Ethernet interface SONET interface Ethernet interface Ethernet interface SONET interface

  24. Application TCP UDP IP Network Internet Architecture • Features: • No strict layering • Hourglass shape – IP is the focal point

  25. Protocol Acronyms • (T)FTP - (Trivial) File Transfer Protocol • HTTP - HyperText Transport Protocol • NV - Network Video • SMTP – Simple Mail Transfer Protocol • NTP - Network Time Protocol • TCP - Transmission Control Protocol • UDP - User Datagram Protocol • IP - Internet Protocol • FDDI - Fiber Distributed Data Interface • ATM - Asynchronous Transfer Mode

  26. Summary • Goal • Understanding of computer network functionality, with experience building and using computer networks • Steps • Identify what functions we expect from a network • Define a layered architecture • Implement network protocols and application programs

More Related