1 / 14

CS 3204 Operating Systems

This lecture discusses network layering, delay measurement, and implementation issues in operating systems. It also covers advantages of layering, services vs protocols, and the TCP/IP reference model.

jcolclough
Download Presentation

CS 3204 Operating Systems

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. CS 3204Operating Systems Godmar Back Lecture 40

  2. Announcements • Project 4 due Wed, May 3, 11:59pm • Read chapter 13 (networking) CS 3204 Spring 2006

  3. Networking (Most slides from Kurose/Ross: Computer Networking – A Top Approach Featuring The Internet)

  4. 3 probes 3 probes 3 probes traceroute Provides delay measurement from source to router along end-end Internet path towards destination • Problem: • Don’t know which route is taken • How: • Send probes to destination • Tell probes to die off after i hops, i = 1..30 • Ask router to send echo packets if packets dies • Measure RTT CS 3204 Spring 2006

  5. application transport network link physical Layered Protocol Architecture • What is a layered architecture? • Motivation • Terminology • Reference Models • Implementation Issues CS 3204 Spring 2006

  6. Advantages of Layering • Decomposition • Masters complexity • Encapsulation • Hiding of implementation details • Evolution • Layers can change/be replaced • Alternative implementations can be added, possibly coexist • Robustness • Testing layers independently increases confidence CS 3204 Spring 2006

  7. Services vs Protocols (horizontal component) • Layer k may interact with peer layer konly via protocols CS 3204 Spring 2006

  8. Interfaces vs Protocols • Duality • Both describe rules regarding order and format of “communication” between entities • Difference: • Interface – vertical: between layers • Protocol – horizontal: between peers • NB: Term “protocol” is sometimes used to describe module implementing a layer CS 3204 Spring 2006

  9. TCP/IP Reference Model CS 3204 Spring 2006

  10. DNS NFS HTTP FTP UDP TCP IP Ethernet ATM Wireless TCP/IP Hourglass View Application Transport Internet Host-To-Network CS 3204 Spring 2006

  11. source network link physical message application transport network link physical segment link physical datagram frame M M Ht Ht M M switch Hn Hn Hn Hn Ht Ht Ht Ht M M M M Hl Hl Hl Hl Hl Hl Hn Hn Hn Hn Hn Hn Ht Ht Ht Ht Ht Ht M M M M M M destination application transport network link physical router Encapsulation CS 3204 Spring 2006

  12. User App user Socket Kernel:“top-half” Kernel:“sw interrupt” TCP Layer IP Layer Kernel:“hw interrupt” Network Device Typical Implementation may cross multiple boundaries! CS 3204 Spring 2006

  13. Queuing Layer k+1 send queues recv queues Layer k Layer k-1 CS 3204 Spring 2006

  14. General Implementation Issues • Who schedules a layer’s processing: • On send: application thread • What if queues are full? Blocking vs. nonblocking • Who does retransmit if necessary? • On receive: interrupt-driven • Not all processing done right away: some delayed processing • Sometimes interrupts can be too slow; polling based approach used instead • Memory management/Protection Issues: • How to you prepend headers? • How do you strip headers? • When are copies needed? • Who allocates and frees packet buffers? CS 3204 Spring 2006

More Related