Trafficmanagement1

30
1 Traffic Management

Transcript of Trafficmanagement1

Page 1: Trafficmanagement1

1

Traffic Management

Page 2: Trafficmanagement1

2

Traffic Management

• Congestion Overview

– Congestion can occur anytime the amount of data that needs to be transmitted by a particular media exceeds the bandwidth of that media.

– Congestion anywhere in the path results in delays for user applications

– Periodic congestion often occurs due to the busty nature of today’s network applications and some temporary congestion is to be expected in each network. Continual congestion or slowness is not normal and the causes should be determined.

Page 3: Trafficmanagement1

3

Traffic Management

• Traffic in an IP Network

– Data: Examples are

• File transfer: FTP and TFTP protocols

• e-mail: SMTP protocol

– Overhead: Examples are

• Routing protocol updates

• Broadcast requests, such as for a Domain Name Server (DNS)

• The use of Address Resolution Protocol (ARP) to resolve logical-to-physical addressing issues.

• Traffic Congestion is Caused by the Following:

– Bursts of user application traffic

– Multicast and broadcast traffic

– Over-utilized low bandwidth links

– Network design issues

Page 4: Trafficmanagement1

4

Traffic Management

• Network Congestion Can be Controlled in the Router Through the Use of:

– Adjusting timers on periodic announcements

• To lengthen the interval between the broadcast by adjusting timers reduces the overall traffic load on the link.

– Providing static entries in routing tables.

• The use of static entries in a routing table can obviate the need to dynamically advertise network routes across that link. This technique is very effective for serial lines.

– Applying standard access lists

• Standard access lists usually filter traffic based upon source addressing characteristics. It can prevent irrelevant traffic from reaching critical links.

– Priority and queues

• Reorder application traffic flowing across a serial link in a priority queue so that all traffic of a particular type gets through first, or in a queue where traffic gets a certain percentage of the bandwidth.

Page 5: Trafficmanagement1

5

Traffic Management

• Access List

– An access list is a series of rules that control the traffic that flows into or out of an interface of a router. An access list is a sequential collection of permits and deny conditions that apply to IP addresses.

– The router tests addresses against the conditions in an access list one by one.

– The first match determines whether the router accept or rejects the address.

– Because the router stops testing conditions after the first match, the order of the conditions is critical.

– If no condition match, the router reject the address.

Page 6: Trafficmanagement1

6

Traffic Management

Incoming packet Access list?

Does source address match?

More entries? Apply condition

Deny Permit Route to interface and forward packet

Next entry in list

Yes

Yes

Yes

No

No

Issue ICMP Host Unreachable

Message

No

Note: For inbound access lists, after receiving a packet, the router checks the source address of the packet against the access listIf the access list permits the address, the router continues to process the packet. If the access list rejects the address, the router discards the packet and returns an ICMP Host Unreachable message.

Inbound Access List Processing

Page 7: Trafficmanagement1

7

Traffic Management

• The syntax of an entry in a standard access list (CISCO IOS)

#access-list number action source

The parameters are:

number: A number between 1 and 99, identifying the list for future reference

action: The keyword permit or deny, indicating whether to allow or block the packet

source: The packet’s source address

The following table shows three ways to specify the source

addresses. In most cases, the address/mask pairs is used to specify

blocks of addresses.

Source Syntax Example Explanation

address mask 192.168.2.0 0.0.0.255 Describes a block of IP address. The mask is used as a wildcard; a one(1) in the mask indicates that we “do not care” about the corresponding bit in the address. A zero (0) in the mask means that the corresponding bit must match exactly. This example specifies address from 192.168.2.0 to 192.168.2.255. That is, the wildcard mask says that we ignore the last byte of the address when figuring out whether an address matches

host address host 192.168.2.1 The given address must be matched exactly.

any any any IP address will match.

Page 8: Trafficmanagement1

8

Traffic Management

• Examples of Access List Processing– Example 1

#access-list 1 deny 10.10.1.0 0.0.0.255#access-list 1 deny 10.10.2.0 0.0.0.255#access-list 1 permit anyNote:

The router processes each line in order until it finds a match. Therefore, if a packet arrives from 10.10.2.13, it matches the second rule in the list and so is denied.

– Example 2#access-list 1 permit any#access-list 1 deny 10.10.1.0 0.0.0.255

#access-list 1 deny 10.10.2.0 0.0.0.255Note:

The first line permits all traffic because all incoming packets match it. The second and third lines are never used. Therefore, access lists must be ordered carefully.

Page 9: Trafficmanagement1

Traffic Management

Traffic Management is concerned with delivery of QoS to the end user and with efficient use of network resources.

Based on traffic granularity traffic management is classified into three levels:-

• Packet level

• Flow level

• Flow aggregated level

9

Page 10: Trafficmanagement1

Traffic management at Packet level

10

Page 11: Trafficmanagement1

11

Traffic Management

• FIFO (first in, first out)– The first packet received is the first to be sent out– Delay and loss experienced by packets in FIFO queuing system depends

on packet interarrival times and on packet length– The main problem with FIFO is that it does not separate packets

according to the queue to which they belong. Application, such as telephony, could flood the routers with its own packets, thereby causing other application’s packets to be discarded.

• Priority queuing – A very stringent algorithm that can cause one type of traffic to

monopolize available bandwidth, because as long as there are high-priority packets in the queue, they’ll be processed first. Other traffic is processed only when there’s available bandwidth left over from high-priority traffic.

• Fair queuing– Share equally with all traffic but gives low volume traffic higher

priority. Instead of assigning priorities to each packet, this algorithm tracks the session that a packet belongs to. There is no queue list to configure or apply to the interface.

– Three different systems• Ideal fluid flow fair queuing system• Packet-by packet fair queuing system• Packet-by-packet weighted fair queuing system

Page 12: Trafficmanagement1

12

Traffic Management

• Quality of Service (QoS)

– A set of metrics used to measure the quality of transmission and service available of any given transmission system.

– A guaranteed throughput level for critical network application. QoS parameters are used in traffic engineering to state the level of loss (inverse of throughput), latency, and jitter that a traffic stream will be guaranteed in a network.

• Queue:

– Broadly, any list of elements arranged in an orderly fashion and ready for processing.

– In routing, it refers to a backlog of information packets waiting in line to be transmitted over a router interface.

Page 13: Trafficmanagement1

13

Packet buffer

Transmission link

Arrivingpackets

Packet discardwhen full

Packet buffer

Transmissionlink

Arrivingpackets

Class 1 discardwhen full

Class 2discardwhen thresholdexceeded

(a)

(b)

Figure 7.41 (a) FIFO queuing; (b) FIFO queuing with discard priority

Page 14: Trafficmanagement1

14

Transmission link

Packet discardwhen full

High-prioritypackets

Low-prioritypackets

Packet discardwhen full

When high-priorityqueue empty

Figure 7.42 Head-of-line (HOL) priority queueing

Page 15: Trafficmanagement1

15

Sorted packet buffer

Transmissionlink

Arrivingpackets

Packet discardwhen full

Taggingunit

Figure 7.43 Sorting packets according to priority tag

Page 16: Trafficmanagement1

16

Traffic Management

• Ideal fluid flow fair queuing system– Transmission bandwidth is divided equally among all nonempty

queues. (For example, if the total number of flows in the system is n and the transmission capacity is C, then each flow is guaranteed at least C/n (bits/second)

– One approach could be to service each nonempty queue one bit at a time in round-robin fashion

Page 17: Trafficmanagement1

17

Transmission link

Packet flow 1

Packet flow 2

Packet flow n

C bits/second

Approximatedbit-levelround robinservice

Figure 7.44 Ideal fluid flow system

Page 18: Trafficmanagement1

18

Traffic Management

• Packet-by-packet fair queueing system– One approach could be to service each nonempty queue one

packet at a time in round-robin fashion.

• This approach is not really fair. For example, if the packets of one flow are twice the size of packets in another flow, then in the long run the first flow will obtain twice the bandwidth of the second flow.

– A better approach is based on finish tag concept. The goal of this approach is to to have each packet’s completion time approximate that of a ideal fluid flow fair queuing system

• Each time a packet arrives at a queue, the completion time of the packet is derived from an ideal fluid flow fair queuing system. The number is used as a finish tag for the packet.

• Each time the transmission of a packet is complete. The next packet to be transmit is the one with smallest finish tag among all of the queues.

Page 19: Trafficmanagement1

19

Queue 1@ t=0

Queue 2@ t=0

1

t1 2

Ideal fluid flow system:both packets served at rate 1/2

Both packetscomplete serviceat t=2

0

1

t1 2

Packet-by-packet queueing system:queue 1 served first at rate 1;then queue 2 served at rate 1.

Packet from queue 2being served

Packet fromqueue 1 beingserved

Packet fromqueue 2 waiting

0

Figure 7.45 Ideal fluid flow system and packet-by-packet fair queuing system

(two packets of equal length)

Page 20: Trafficmanagement1

20

Traffic Management

• Round (in terms of ideal fluid flow fair queuing system)– A round consists of a cycle in which all n queues are offered

service, one bit at a time

– The actual duration of a given round is the actual number of queues nactive (t) that have information to transmit.

• When the number of active queues is large, the duration of a round is large

• When the number of active queue is small, the duration of a round is small

– Round is in unit of bit

Page 21: Trafficmanagement1

21

Traffic Management

• Meaning of the equation dR(t)/dt = C/nactive(t)– Given a ideal fluid flow fair queuing system, and given the fact

that the system started at t = 0

– Let R(t) be the number of the rounds at time t, that is, the number of cycles of services to all n queues. Assuming R(t) is a continuous function, then

dR(t)/dt = C/nactive(t)

– Interpretation of the equation above

• For a given duration and number of active queues, the higher the transmission capacity in bits/second, the more rounds can be completed.

• For a given duration and transmission capacity, more active queues means less round can be completed.

Page 22: Trafficmanagement1

22

Rounds Generalize so R(t) is continuous, not discrete

R(t) grows at rate inverselyproportional to nactive(t)

Figure 7.46 Computing the finishing time in packet-by-packet fair queueing and weighted fair queueing

Page 23: Trafficmanagement1

23

Traffic Management

• Packet-by-packet weighted fair queuing system– Because different users have different requirements, each user

flow has a weight that determines its relative share of the bandwidth.

Page 24: Trafficmanagement1

24

Queue 1@ t=0

Queue 2@ t=0

2

1

t3

Ideal fluid flow system:both packets served at rate 1/2

Packet from queues served at rate 1

0

2

1

t1 2

Packet-by-packet fair queueing:queue 2 served at rate 1

Packet fromqueue 1 beingserved at rate 1

Packet fromqueue 2 waiting

0 3

Figure 7.47 Ideal fluid flow system and packet-by-packet fair queuing system

(two packets of different lengths)

Page 25: Trafficmanagement1

25

Queue 1@ t=0

Queue 2@ t=0

1

t1 2

Ideal fluid flow system:packet from queue 1served at rate 1/4;

Packet from queue 1 served at rate 1

Packet from queue 2served at rate 3/4 0

1

t1 2

Packet-by-packet weighted fair queueing:queue 2 served first at rate 1;then queue 1 served at rate 1.

Packet from queue 1being servedPacket from

queue 2 beingserved

Packet fromqueue 1 waiting

0

Figure 7.48 Ideal fluid flow system and Packet-by-packet weighted fair queuing system

Page 26: Trafficmanagement1

26

Traffic Management

• Calculation of finish tags– Notation

• k: k-th packet• i: i-th flow• C: Capacity in bits/second• P(i,k): length of k-th packet from i-th flow in bits• R(t): the number of rounds at time t in bits• F(i,k): finish tag of k-th packet for i-th flow

– Case 1 Empty queue: Suppose that k-th packet from flow i arrives at an empty queue at time tk

i and suppose that the packet has length P(i,k), then

F(i,k) = R(tki )+ P(i,k)

finish tag bits completed at time tki packet length in bits

Page 27: Trafficmanagement1

27

Traffic Management

• Calculation of finish tags

– Case 2 Non-empty queue: Suppose that k-th packet from flow i arrives at an non-empty queue at time tk

i and suppose that the packet has length P(i,k), then

F(i,k) = F(i, k-1) + P(i,k)

finish tag finish tag of the previous packet in queue packet length in bits

– General case for packet-by-packet fair queueing system

F(i,k) = max {F(i, k-1), R(tki) } + P(i,k)

Page 28: Trafficmanagement1

28

Traffic Management

• Calculation of finish tags– General case for packet-by-packet weighted fair queueing system

F(i,k) = max {F(i, k-1), R(tki) } + P(i,k)/wi

where wi is the weight of i-th flow

Page 29: Trafficmanagement1

29

Traffic Management

• Example ( Chapter 7 problem 51)

Problem statement: consider a packet-by-packet fair queuing system with three logical queues and with service rate of one unit per second. Show the sequence of transmission for this system for the following packet arrival pattern.

Queue 1: arrival at time t = 0, length 2; arrival at t = 4, length 1;

Queue 2: arrival at time t = 1, length 3; arrival at t = 2, length 1.

Queue 3: arrival at time t = 3, length 5.

Page 30: Trafficmanagement1

30

Traffic Management

Queue Packets’ arrival time and length

F(queue number, packet number) Order of transmission

Queue 1 Packet 1: t = 0, L = 2

Packet 2: t = 4, L = 1

F(1,1) = R(0) + 2 = 0 + 2 = 2

F(1,2) = max{F(1,1), R(4)} + 1 =

Max {2, 4} + 1 = 4 +1 = 5

1

4

Queue 2 Packet 1: t = 1, L = 3

Packet 2: t = 2, L = 1

F(2,1) = R(1) + 3 = 1 + 3 = 4

F(2,2) = max {F(2,1),R(2)} + 1 =

Max (4,2} + 1 = 5

2

3

Queue 3 Packet 1: t = 3, L = 5

F(3,1) = R(3) + 5 = = 3+ 5 = 8 5