5.3 CONGESTION CONTROL ALGORITHMS

advertisement
5.3 CONGESTION CONTROL
ALGORITHMS
• Congestion means that the load is
(temporarily) greater than the resources.
• Congestion causes packet delay and loss that
degrades Quality of Service.
• Two solutions come to mind:
– increase the resources (routers, lines)
– or decrease the load.
5.3.1 Approaches to Congestion
Control (Figure 5-22)
Provisioning
• Provisioning: increases the resources by
adding resources dynamically when there is
serious congestion,
– for example, turning on spare routers or enabling
lines that are normally used only as backups
traffic-aware routing
• traffic-aware routing: makes the most of the
existing network capacity,
– For example, routes may be changed to shift
traffic away from heavily used paths by changing
the shortest path weights
admission control
• admission control: decrease the load
– For example, In a virtual-circuit network, new
connections can be refused if they would cause
the network to become congested.
Traffic Throttling
• Traffic Throttling: decrease the load by
delivering feedback to the sources whose
traffic flows are responsible for the
congestion;
– For example, the network can request these
sources to stop their traffic, or it can slow down
the traffic itself.
load shedding
• load shedding: decrease the load by
discarding packets that it cannot be delivered.
5.4 QUALITY OF SERVICE
• The parameters determine the QoS (Quality of
Service)
– bandwidth : the rate of data transfer, measured in
bits per second (bit/s)
– delay,
– jitter: The variation in the delay or packet arrival
times
– loss.
5.4.1 Application Requirements
(Figure 5-27)
5.5 INTERNETWORKING
• an internetwork is two or more different
networks are connected
• How Networks Differ
– e.g. different modulation techniques or frame
formats
– e.g. different packets format (IPv4 or IPv6)
– e.g. different maximum packets size.
5.5.1 How Networks Differ
Figure 5-38. Some of the many ways networks can differ.
5.5.2 How Networks Can Be
Connected
Figure 5-39. (a) A packet crossing different networks. (b) Network and linklayer protocol
processing.
5.5.3 Tunneling
• Tunneling is a technique used to send an IP
packet containing an IPv6 address through
IPv4 network, by encapsulation the IPv6
packet in an IPv4 packet
5.5.3 Tunneling
Figure 5-40. Tunneling a packet from Paris to London.
5.5.5 Packet Fragmentation
• Fragmentation is to allow routers to break up packets into
fragments when a large packet wants to travel through a
network whose maximum packet size is too small.
• the destination simply uses the packet number and
fragment offset to place the data in the right position, and
the end-of-packet flag to determine when it has the
complete packet.
• the destination simply uses three fields of packet header:
– the packet number
– and fragment offset to place the data in the right position,
– and the end-of-packet flag to determine when it has the
complete packet.
5.5.5 Packet Fragmentation (2)
• Two fragmentation strategies:
– Transparent fragmentation: the fragments are
reassembled in the receiver router.
– Nontransparent fragmentation: the fragments not
reassembled until the final destination
• The Disadvantage of Transparent fragmentation: packet
is needed to be repeatedly fragmented and
reassembled which leads to more processing work.
• The Disadvantage of nontransparent fragmentation:
The overhead can be higher than with transparent
fragmentation
5.5.5 Packet Fragmentation
Figure 5-42. (a) Transparent fragmentation. (b) Nontransparent
fragmentation.
5.5.5 Packet Fragmentation
Figure 5-43. Fragmentation when the elementary data size is 1 byte. (a) Original packet, containing 10 data
bytes. (b) Fragments after passing through a network with maximum packet size of 8 payload bytes plus
header. (c) Fragments after passing through a size 5 gateway.
Download