Download presentation
Presentation is loading. Please wait.
1
COP 5611 Operating Systems Spring 2010
Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 2:00-3:00 PM
2
Lecture 12 Reading Assignment: Chapters 8 from the online textbook
Homework 3 due on March 3 Midterm: Wednesday March 17, the first week after Spring Break Last time: More about layering and broadcast channels Network layer Today: End-to-end-layer Resource Management - Congestion Next time Faults, Failures and Fault-Tolerant Design Measures of Reliability and Failure Tolerance Tolerating active Faults 2 2 2 2 2
3
Requirements for routing algorithms
Routing algorithms should be dynamic and deal with: Topological changes: links go down and new links are added Congestion Run asynchronously Converge rapidly Avoid oscillatory behavior Ensure that no packet bounces around forever: add a hop count in the network header
4
Flat versus hierarchical addressing schemes
The scheme we discussed so far based on flat addresses have disadvantages: Each attachment point must have a unique address and the number of attachment points is equal to the number of systems connected to the network The number of path vectors increases linearly with the size of the network. Hierarchical addressing: e.g., two levels Region Address of the station/node within the region
5
Hierarchical addressing with two levels
6
Advantages and disadvantages of hierarchical addressing
Reduces the number of path vectors; a router for one region needs only to advertize a single path vector. Assignation of network addresses is manageable: a central authority assigns region addresses Station addresses are assigned by a regional authority. The table lookup more complicated: (1) extract the region (2) forward to another region or forward within own region. The path may no longer the shortest, the information provided by the path vector is less accurate. The network addresses are location dependent. A mobile device must get a new address when it is connected in a different location.
7
Physical and logical addresses
All devices have a physical address of the interface Must obtain a logical address ARP – address resolution protocol is a protocol used by the Internet Protocol (IP), specifically IPv4, to map IP addresses to the hardware addresses used by a data link protocol. ARP operates only across the local link that a host is connected to. Types of ARP messages ARP request ARP response RARP request RARP response
8
Internet Protocol (IPv4) over Ethernet ARP packet
bit offset 0 – 7 8 – 15 Hardware type (HTYPE) 16 Protocol type (PTYPE) 32 Hardware address length (HLEN) Protocol address length (PLEN) 48 Operation (OPER) 64 Sender hardware address (SHA) (first 16 bits) 80 (next 16 bits) 96 (last 16 bits) 112 Sender protocol address (SPA) (first 16 bits) 128 144 Target hardware address (THA) (first 16 bits) 160 176 192 Target protocol address (TPA) (first 16 bits) 208
9
Dynamic IP address assignment –DHCP servers
10
From Wide Area Networks (WAN) to Local Area Networks (LAN) – the Ethernet
11
Ethernet frame
16
Internet addresses Internet provides a layered naming environment.
Internet address= Network number + host numbers Most network numbers are global names. Network 10 reserved for private networks
17
Network address translation
Private networks NAT (Network Address Translators) map host’s private address to/from a temporarily assigned public address. Problems Communications may involve multiple parties with the addresses buried into application protocols The router running NAT is a bottleneck What if two private organizations merge?
18
Network layer errors Messages originate at the network level and are delivered to the end-to-end layer. Router error codes Packets are discarded – the router has depleted its buffer space The buffers of a router are depleted rapidly – stop sending The region identifier is invalid The station identifier is invalid The end type identifier is not valid The packet is larger than the MTU The packet hop has been exceeded The network layer implements a best-effort policy. It would be too complicated to provide guarantees of service. There is no message regarding packets dropped. It would only increase congestion!!
19
End-to-end layer Applications are too diverse to have a unique end-to-end protocol End-to end multiplexing is more complicate: You can have multiple instances of the same application running Ports – logical end points for an end-to end protocol We need to identify individual segments by sequence numbers Transport protocols operate between two attachment points TCP UDP Request-response protocol RTP – Real-Time Transport protocol.
20
3-way handshake in TCP
21
At once delivery protocols
Persistent sender It requires the sender to maintain state in the form of a table including the sequence numbers of segments sent but not acknowledged yet Provide the assurance that if possible to get through messages will be delivered If not possible to confirm delivery the application will know Does not provide any assurance about duplicates Round Trip Time Timers could trigger retransmission Static timers RTT Adaptive timers Exponentially weighted moving average using a decay factor
22
At most once delivery protocols
Requires both the sender and the receiver to maintain state. The receiver must maintain a table of previously seen nonces , segments that have been received and passed to the application layer The list of nonces may grow; it may never be possible to delete the last nonce Long messages need to be reassembled from out of order segments
23
Reliable transport protocols
Data integrity assurance that the received message contains precisely the same information as the one sent. Sender adds trailer containing a checksum; Receiver computes the checksum and verifies that it is the same as the value in the trailer Should send a NAK if they do not correspond? What if the address of the sender was damaged? There is a check sum at the link layer but is this suffient? Reliable transport protocols protocol with a persistent sender and with support for data integrity.
24
Flow control Ensure that the sender, the communication channel, and the receiver could work at the same pace. The bottleneck could be any of them Stop and wait protocols (lock step) Overlapped transmission Window based – send a range of frame. The protocol: Sender – tell me how many frames I could send Receiver – send 100 frames Window based protocols Fixed window size Variable window size
25
Lock-step-transmission (send segment and wait for acknowledgment)
26
Overlapped transmission
27
Flow control with a fixed window
28
Sliding window and self-pacing
Once a segment buffer is freed the receiver should send the permission to advance the window. Regardless of the bottleneck the solution is: Window size > = RTT x bottleneck data rate
29
Managing shared resources
Congestion - a complex phenomena leads to wasting of resources congestion collapse Managing resources in a network rather complex More than one resource Congestion collapse occurs more easily Limited options to reduce capacity The means to reduce congestion are difficult to implement Feedback path is long Source of the traffic must be able to reduce the load willing to cooperate
31
Cross-layer cooperation
Feedback Source quench Congested routers add a bit in the packet header indicating that congestion Discard a packet Control Automatic rate adaptation requires an estimation of the RTT
32
Congestion control in TCP
Slow start Duplicate acknowledgments Equilibrium Additive increase Multiplicative decrease
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.