1 / 24

Computer Networks

This topic covers the basics of computer networks, including protocol stacks, network connections, and distributed file systems. It also introduces the OSI 7-layer model and its functions.

cedna
Download Presentation

Computer Networks

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. Computer Networks CS-502 Operating SystemsFall 2006 (Slides include materials from Operating System Concepts, 7th ed., by Silbershatz, Galvin, & Gagne and from Modern Operating Systems, 2nd ed., by Tanenbaum) Networks

  2. Computer Networks • Much more than can be covered in this course • CS 513, CS 577 • Textbook:– • Distributed Computing – Chapters 16 – 18 • Other references to networks in other chapters Networks

  3. Context • Networking was formerly regarded as “just another form of I/O” • Today, focus is Distributed Computing • Shared files and other resources among systems on the network • NFS, remote printing, etc. • Integrated computations across network • Airline reservations, ATMs, etc. • Interactive games and multimedia • … Networks

  4. Outline • Previously covered • Remote Procedure Call (week 3, as part of Interprocess Communication) • This topic • Protocol Stack • Kinds of network connections • Socket interface • Next topic • Distributed File Systems Networks

  5. Computer A Computer B Computer C The Network Process k Process i Process j Networks

  6. Network Goal • Allow activities on multiple computer systems to communicate with each other • Shared memory, files, or data • Message passing • Remote Procedure Call • Create abstractions that make these (relatively) transparent Networks

  7. Principal Abstraction – Socket • Originally created in BSD Unix • Subsequently, part of most operating systems • Allows opening a connection between two processes across network • Connection: • a serial conversation between two end points • e.g., processes, threads, tasks on different machines • organized as a sequence of messages or datagrams • distinct from all other connections Networks

  8. Network Stack • 1983 – Open System Interconnection (OSI) 7 layer Reference Model • Working group of the International Standards Organization (ISO) • Defines seven layers • Describe how applications communicate with each other • Via network-aware devices • Most day-to-day protocols • work on a slightly modified layer system • E.g. TCP/ IP uses a 6-rather than a 7-layer model Networks

  9. OSI 7-layer model • Primarily a software and protocol architecture • Layers of model correspond to layers of abstraction • Each layer has a well-defined function • Layers chosen so that … • international standards can be defined • Boundaries between layers chosen to … • minimize information flow across interfaces • Number of layers:– • Large enough • Distinct functions need not be thrown together • Small enough • Architecture does not become unwieldy Networks

  10. Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer The OSI 7-layer model(in a nutshell) Silbershatz, §§16.6-16.7 Networks

  11. Annotated OSI 7-Layer Stack Silbershatz, page 630 Networks

  12. The OSI 7-layer model (continued) • Layer 1 – Physical Layer • Defines the physical and electrical characteristics of the network. • Transmitting of raw bits over the communication channel • Layer 2 – Data Link Layer • Take the raw transmission facility and transform it into an abstract link that appears free of errors to layer 3. • Error correcting coding (e.g. FEC) • Rate Control (Slow device not overrun by high speed device) Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer Networks

  13. The OSI 7-layer model (continued) • Layer 3 – Network Layer • Controlling the operation of the subnet • How packets are routed • Congestion Control • Accounting function (billing) • Network Statistics • Example - IP layer (IPv4, IPv6) • Differences between v4, v6 source/destination addressing • V4 – 32 bit addressing • V6 – 128 bit addressing Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer Networks

  14. The OSI 7-layer model (continued) • Layer 4 – Transport Layer • Accept data from higher layers • Split it up into smaller units if need be • Passes these to the network layer • Ensures that the packets all arrive correctly at the destination in the right order • Isolates higher layers from changes in the underlying hardware • Type of service to provide • Reliable or unreliable delivery • True end-to-end layer • Example:– TCP or UDP Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer Networks

  15. The OSI 7-layer model (continued) • Layer 5 - Session Layer • Allows users on different machines to establish sessions between them • Example SSL, RPC • Layer 6 – Presentation Layer • Performs certain functions that are requested sufficiently often to warrant finding a general solution for them rather than letting each user solve the problem • Example – encoding data • Layer 7 – Application Layer • User layer protocol, multiple protocols required • Example – http, ftp, smtp Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer Networks

  16. Sending Process Receiving Process Data Application Layer Application Layer AH Data Presentation Layer Presentation Layer PH Data Session Layer Session Layer SH Data Transport Layer Transport Layer TH Data Network Layer Network Layer NH Data Data Link Layer Data Link Layer DH Data DT Physical Layer Physical Layer Bits Example of OSI Model Networks

  17. TCP/IP The TCP/IP Protocol Layers Networks

  18. Some Terms • Packet: • A unit of communication at Data Link layer • aka datagram • IP Address: • A four-part “number” used by Network Layer to route a packet from one computer to another • Port: • A 16-bit number used within one computer to identify who/where to send packet to • Well-known port: • A port with number < 1024, used by agreement for standard services (telnet, ftp, smtp, pop, etc.) Networks

  19. More Terms • Socket: • End point of a communication • Usually used in pairs, one for each direction • Comprises [IP Address: Port #] • Connection: • A logical linkage between pairs of sockets at two endpoints for purposes of a particular communication between those endpoints Networks

  20. Establishing a Connection • Process a on machine m creates a socket • OS assigns a new port number q to that socket • Process a attempts to open a connection to machine n:p • p is a well-known port • Process b on machine n is listening on p • Receives request from m:q • Process b forks a process or spawns a thread c to talk with m:q, then resumes listening on p • Thread/process c • Creates a new socket r for this connection • Replies to m:q with return address n:r • a and c continue to communicate over this pair of sockets until they are finished. Networks

  21. Reliable Connections • Transport layer partitions messages into packets • TCP – Transmission Control Protocol • Sequence number of current packet • Sequence number of last packet received correctly • Receiver keeps track of seq. # of packets • Reassembles in right order • Notify sender of missing, broken packets • Sender keeps copy of each packet until receipt acknowledged • Retransmits packets if no acknowledgement Networks

  22. Connection-less communication • UDP – User Datagram Protocol • Used when a certain number of errors can be tolerated and also • Where recovery from those errors is easy • Example in next topic – NFS, the Network File System Networks

  23. Summary • Socket, connection • Network stack, 7-layer model • Establishing a connection • Reliable transmission • Reading assignment • Silbershatz Chapter 16 Networks

  24. Next Topic Networks

More Related