18
Flow Aware Networking Dominik Najder © 2007 Katedra Telekomunikacji AGH Flow Aware Networking Queue Model

Flow Aware Networking

  • Upload
    linh

  • View
    43

  • Download
    0

Embed Size (px)

DESCRIPTION

Flow Aware Networking. Queue Model. Table of contents:. Traffic conditioning mechanisms Scheduling mechanisms Is it possible to implement DiffServ congestion solutions into FAN? Fan Router Priority Fair Queuing Priority Deficit Round Robin PFQ vs PDRR What is the future?. - PowerPoint PPT Presentation

Citation preview

Page 1: Flow Aware Networking

Flow Aware Networking

Dominik Najder © 2007 Katedra Telekomunikacji AGH

Flow Aware Networking

Queue Model

Page 2: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 2/18

Table of contents:

Traffic conditioning mechanisms

Scheduling mechanisms

Is it possible to implement DiffServ congestion solutions into FAN?

Fan Router

Priority Fair Queuing

Priority Deficit Round Robin

PFQ vs PDRR

What is the future?

Page 3: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 3/18

Traffic conditioning mechanisms

4 types of operation

The last mechanisms before scheduling

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 4: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 4/18

Scheduling mechanisms

Assures differential quality in routing packets assigned to different flows

Different packet types Different quality of service

Many algorithms (FCFS, PS, FQ etc.)

Quality

Selecting which packets should be sent first Selecting which packets may be dropped

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 5: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 5/18

Is it possible to implement DiffServ congestion solutions into FAN?

Differences in congestion control ideas:

DiffServ FAN

AC, classifier, traffic conditioner, scheduler blocks Only AC and scheduler blocks – cross protect router

Admission control performed only in edge routers Admission control performed in every router

No information about flows inside router memory – QoS based on information about agregates

Router holds only flow list, without declaration info for traffic class

Domain agent Bandwidth Broker No central agents

No info about network state hold in routers Information based on measurements held in every router

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 6: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 6/18

Measurement Based Admission Control (MBAC)

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 7: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 7/18

Cross-protect in FAN router

Incoming packets Outgoing packets

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 8: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 8/18

Priority Fair Queuing

Modified version of Start-time Fair Queuing

Push-In First-Out queue, each element has timestamp

Active Flow list

Virtual Time counter

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 9: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 9/18

SFQ algorithm

Packet arrival:Packet arrival:

1. on arrival of l-byte packet p of flow f:

2. if f is a registered in ActiveList do

3. p.TimeStamp = f.FinishTag

4. f.FinishTag += l

5. else

6. add f to ActiveList

7. p.TimeStamp = VirtualTime

8. f.FinishTag = VirtualTime + l

Packet departure:Packet departure:

1. transmit packets in increasing TimeStamp order

2. at the start of transmission of packet p:

3. VirtualTime = p.TimeStamp

4. for all flows f registered in ActiveList

5. if (f.FinishTag < VirtualTime)

6. remove f

7. if no packets in scheduler VirtualTime = 0

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 10: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 10/18

PFQ algorithm

Packet arrival:Packet arrival:1. if PIFO congested, reject packet p at head of longest backlog

2. if f is registered in flow list F

3. if bytes >= MTU

4. p.TimeStamp = f.FinishTag

5. else begin

6. p.TimeStamp = virtual time

7. put behind P, update P

8. f.FinishTag += l

9. else

10. p.TimeStamp = VirtualTime

11. put behind P, update P

12. if flow list is not saturated

13. add flow

14. f.FinishTag = virtual time + l

Main disadvantage:Main disadvantage:

SCALABILTYSCALABILTY

Per packet computational Per packet computational complexity is complexity is O (logQ), where:O (logQ), where:

Q – number of flows server by the Q – number of flows server by the routerrouter

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 11: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 11/18

Priority Deficit Round Robin

Based on standard DRR

Per flow f state:

– f.Identier - the flow identifier (possibly a hash of the relevant header fields)

– f.Queue - current length in bytes of flow f queue

– f.Quantum - value of flow f quantum ( >= MTU bytes)

– f.Deficit - current flow deficit

– f.FIFO - addresses of head and tail packets of a linked list forming the flow f FIFO

– f.Next - the next flow in the DRR schedule following flow f

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 12: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 12/18

Priority Deficit Round Robin simplified algorithm

Packet Packet enqueueenqueue::1. If no free buffers left then

2. dropPacket();

3. i = ExtractFlow(p);

4. If (i is not registered in AFL)

5. InsertActiveList(i);

6. i.DC = 0;

7. i.ByteCount = size(p);

8. Enqueue(PQ, p)

9. Else

10. i.ByteCount += size(p);

11. If (i.ByteCount <= i.Q) then

12. Enqueue(PQ, p);

13. Else

14.Enqueue(i.Queue, p);

Packet Packet dequeuedequeue::1. While (PQ not empty) do

2. p = Dequeue(PQ); i = ExtractFlow(p);

3. Send(p); i.DC -= Size(p);

4. If (AFL is not empty) then

5. Get head of AFL - flow i;

6. i.DC += i.Q;

7. While ((i.DC >= 0) and (Queue i not empty)) do

8. PacketSize = Size (Head(i.Queue));

9. If (PacketSize <= i.DC) then

10.Send(Dequeue(i.Queue));

11. i.DC -= PacketSize;

12. Else

13.break;

14. RemoveActiveList(i);

15. If (Queue i is not empty) then

16. InsertActiveList(i);

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 13: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 13/18

Deficit Round Robin simple example introduction

1200

800

1500

1000

Traffic

Source 1

Traffic

Source 2

Traffic

Source 3

Quantum

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 14: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 14/18

Deficit Round Robin simple example, round 1

1200

800

1500

1000

Traffic

Source 1

Traffic

Source 2

Traffic

Source 3

Quantum

Deficit Packet served

1000 No

1000 – 800 = 200 Yes

1000 No

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 15: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 15/18

Deficit Round Robin simple example, round 2

1200

800

1500

1000

Traffic

Source 1

Traffic

Source 2

Traffic

Source 3

Quantum

Deficit Packet served

Deficit Packet served

1000 No 2000-1200 = 800 Yes

1000 – 800 = 200 Yes 0 No

1000 No2000–1500 = 500

Yes

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 16: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 16/18

PFQ vs PDRR

Which solution is better?

PFQ:PFQ:

-simple

-but higher computational complexity O(logQ) – not well scalable

PDRR:PDRR:

-more complex, bigger amount of data to be held inside router

-computation complexity O(1) – very scalable, main FAN feature over DiffServ

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 17: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 17/18

What is the future?

Redesign of IPv6 packet

Minimized header overhead and reduced header process for the majority of packets

Less essential fields removed or moved to extension headers

Traffic class in IPv6= TOS in IPv4

New Flow Label

Traffic conditioning mechanisms| Scheduling mechanisms| DiffServ congestion solutions in FAN| Fan Router| PFQ| PDRR| PFQ vs PDRR| What is the future?

Page 18: Flow Aware Networking

Flow Aware Networking

© 2007 Katedra Telekomunikacji AGHDominik Najder slide 18/18

Thank you