Title: Lecture, November 27, 2002
1Lecture, November 27, 2002
- TCP
- Other Internet Protocols Internet Traffic
- Scalability of Virtual Circuit Networks
- QoS
2IPv6
3UDP
4TCP
- Supports
- Error control. For each segment
- Sequence numbers.
- Acknowledgment.
- Timeout
- Example stop and wait protocol. Very
inefficient. - Window based
- Flow Control
- Congestion Control
5(No Transcript)
6TCP
7TCP 1 bit flags
- ACK when set the ack value is valid
- SYN, RST, FIN used for connection establishment
and tear-down - PUSH data should be passed to the upper layer
immediately. - URG there is urgent information in the data
8Data streaming. MSS- maximum segment size
9TCP flow control window
10(No Transcript)
11TCP is a connection-oriented protocol for
client-server communication
12(No Transcript)
13TCP congestion control
- Host centric, feedback-based resource allocation
policy. - The congestion control window is affected by the
timing of the acknowledgments. A late or missing
acknowledgment signals that the network is
congested.
14(No Transcript)
15Other Internet protocols
- ICMP used by hosts and routers to exchange
network layer information, e.g., error reporting - RIP Routing Information Protocol
- OSPF Open Shortest Path First Protocol
16Internet traffic
- TCP ? 90 95 of the Internet traffic
- 65-75 of TCP traffic is Web related
- 10 of TCP traffic is due to News
- 5 of TCP traffic is due to Email
- 5 of TCP traffic is due to FTP
- 1 of TCP traffic is due to Napster
- UDP ? 5 10 of the Internet traffic
- DNS
- Realaudio
- games
17Scalability issues with VCs
- Assume a router with
- n input and n output lines of b Gbps
- average packet size l bytes
- determine the size of the routing table
18(No Transcript)
19Original Algorithm for Adaptive Retransmission
- Measure SampleRTT for each segment/ACK pair
- Compute weighted average of RTT
- EstimatedRTT a x EstimatedRTT (1- a) x
SampleRTT - where 0.8 lt a lt 0.9
- Set timeout based on EstimatedRTT
- TimeOut 2 x EstimatedRTT
20Karn/Partridge Algorithm
- Do not sample RTT when re-transmitting
- Double timeout after each retransmission
21Karn/Partridge Algorithm
22Jacobson/Karels Algorithm
- New calculation for average RTT
- Diff SampleRTT - EstimatedRTT
- EstimatedRTT EstimatedRTT (d x
- Deviation Deviation d(Diff- Deviation)
- where d is a fraction between 0 and 1
- Consider variance when setting timeout value
- TimeOut m x EstimatedRTT f x Deviation
- where m 1 and f 4
- Notes
- algorithm only as good as granularity of clock
(500 microseconds on Unix) - accurate timeout mechanism important to
congestion control (later)
23Congestion Control Mechanisms
- The sender must perform retransmissions to
compensate for lost packets due to buffer
overflow. - Unneeded retransmissions by the sender due to
large delays causes a router to use link
bandwidth to forward unneeded copies of a packet. - When a packet is dropped along a path the
capacity used used at each upstream routers to
forward packets to the point where it was dropped
was wasted.
24Delay/Throughput Tradeoffs
25(No Transcript)
26Router with infinite buffer capacity
27Fairness of TCP congestion mechanism
28Flows and resource allocation
- Flow sequence of packets with a common
characteristics - A layer-N flow ? the common attribute a layer-N
attribute - All packets exchanged between two hosts ? network
layer flow - All packets exchanged between two processes ?
transport layer flow
29(No Transcript)
30Min-max fair bandwidth allocation
- Goal fairness in a best-effort network.
- Consider
- Unidirectional flows
- Routers with infinite buffer space
- Link capacity is the only limiting factor.
31Algorithm
- Start with an allocation of zero Mbps for each
flow. - Increment equally the allocation for each flow
until one of the links of the network becomes
saturated. Now all the flows passing through the
saturated link get an equal fraction of the link
capacity. - Increment equally the allocation for each flow
that does not pass through the first saturated
link until a second link becomes saturated. Now
all the flows passing through the saturated link
get an equal fraction of the link capacity. - Continue by incrementing equally the allocations
of all flows that do not use a saturated link
until all flows use at least one saturated link.
32QoS in a datagram network?
- Packet Classification.
- Buffer acceptance algorithms.
- Explicit Congestion Notification.
- Flow measurements
33Packet classification
- Identify the flow the packet belongs to.
- The edge routers may be able to do that.
- MPLS multi protocol label switch. Add an extra
header in front of the IP header. Now a router
decides the output link based upon the input link
and the MPLS header.
34Buffer acceptance algorithms
- Tail Drop.
- RED Random Early Detection
- RIO Random Early Detection with In and Out
packet dropping strategies.
35(No Transcript)
36Explicit Congestion Notification (ECN)
- Routers could prevent congestion by informing the
source of the packets when they become lightly
congested, but before they start dropping
packets. - This strategy is called source quench.
37Source quench
- A router sets a congestion notification flag in
the IP header to inform the destination that
signs of congestion are visible. - The destination informs the source by setting a
flag in the TCP header of segments carrying
acknowledgments.
38Problems with ECN
- (1) TCP must be modified to support the new flag.
- (2) Routers must be modified to distinguish
between ECN-capable flows and those who do not
support ECN. - (3) IP must be modified to support the congestion
notification flag. - (4) TCP should allow the sender to confirm the
congestion notification to the receiver, because
acknowledgments could be lost.
39Flow measurements
- How to choose the measurement interval to
accommodate bursty traffic? - Token bucket
40The token bucket filter
- Characterized by (1) A token rate R, and (2)
The depth of the bucket, B - Basic idea the sender is allocated tokens at a
given rate and can accumulate tokens in the
bucket until the bucket is filled. To send a byte
the sender must have a token. The maximum burst
can be of size B because at most B token can be
accumulated.
41 Example
- Flow A generates data at a constant rate of 1
Mbps. Its filter will support a rate of 1 Mbps
and a bucket depth of 1 byte, - Flow B alternates between 0.5 and 2.0 Mbps. Its
filter will support a rate of 1 Mbps and a bucket
depth of 1 Mbps - Note a single flow can be described by many
token buckets.
42 Example
43(No Transcript)
44Token bucket
- L packet length
- C of tokens in the bucket
- --------------------------------------------------
- - if ( L lt C )
- accept the packet
- C C - L
-
- else
- drop the packet
45A shaping buffer delays packets that do not
confirm to the traffic shape
- if ( L lt C )
- accept the packet
- C C - L
- else / the packet arrived early, delay it /
- while ( C lt L )
- wait
- transmit the packet
- C C - L
46Packet Scheduling
- PS and GPS Processor Sharing Generalized
Processor Sharing - Round Robin, Weighted Round Robin
- Priority Scheduling
- Weighted Fair Queuing practical version of GPS.
Transmits packets in the order of their finishing
time.
47Weighted queuing
48RSVP- Resource Reservation Protocol
- Used to establish a path for a flow and reserve
resources along the path. - Requirements
- Accommodate faults soft state.
- Support unicast as well as multicast.
- PATH messages ? issued by sender includes TSpec
- RESV messages ? issued by the receiver includes
RSpec
49RSVP
50RSVP message
51RSVP multicast
52Integrated Services
- Support fine-grain QoS for individual flows.
- Mechanisms
- Specification of flow requirements - Flowspecs
- Admission decisions
- Resource reservation and policing
- Policy enforcement
53Flowspecs
- TSpec specify the traffic characteristics
- Rspec describe services required from network.
54Admission decisions
- Two classes
- Guaranteed Services based upon token buckets
- Controlled Load approximates a best effort
model in a lightly loaded network.
55Integrated Service Router
56Differentiated Services
- Two classes of traffic
- Regular
- Premium
- Edge routers mark the packets.
- Premium packets enjoy
- EF Expedited Forwarding
- AF Assured Forwarding