a distributed algorithm to provide qos by avoiding cycles...

23
1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed algorithm to provide QoS by avoiding cycles in routes Juan Echagüe 1 , M. Prieto 2 , J. Villadangos 2 , V. Cholvi 1 (1) Universidad Jaum e I, Castellón (Spain) (2) Universidad Pública de Navarra, Pamplona (Spain)

Upload: others

Post on 14-Feb-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

1

Workshop on Quality of Service RoutingBarcelona, October 1, 2004

A distributed algorithm to provide QoSby avoiding cycles in routes

Juan Echagüe1, M. Prieto2, J. Villadangos2, V. Cholvi1

(1) Universidad Jaum e I, Castellón (Spain)(2) Universidad Pública de Navarra, Pamplona (Spain)

Page 2: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

2

Agenda

• Stability in packet-switched networks• Previous results• Distributed turn prohibition algorithm• Conclusions

Page 3: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

3

StabilityDefinition of stability (1): A packet scheduling

protocol P is universally stable if for anytopology, bounding the input traffic, thenumber of packets at the network is bounded

Definition of stability (2): A network topology G isuniversally stable if for any greedy schedulingprotocol , bounding the input traffic, thenumber of packets at the network is bounded

Page 4: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

4

Stability (II)• Packet scheduling protocols

• Universally stables: FTG, NTS, SIS, LIS• Not Universally stables: FIFO, LIFO, NTG, FFS

• Traffic pattern• Adversarial models: AQT(w,r), LB(b,r)

• Stability if r ≤1/d (d is the maximum number of links crossed by any packet)

• Network topologies• DAG is universally stable (Andrews)• Ring is universally stable (Tassiulas, Andrews)• Any topology is stable if there are no cycles

• The tree topology is universally stable

Page 5: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

5

Stablity (III)

• Example of network topology that currently we know is stable

0 1

Page 6: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

6

Stablity (III)

• Example of network topology that currently it is not know if it is universally stable

0 1

Page 7: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

7

Cycle: packet crosses twice the same link

3

01

4

2

Page 8: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

8

Cycle caused by feed-forward packets

3

01

4

2

Page 9: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

9

Cycle avoidance in real world

• Pause messages of IEEE 802.3x’s flow control mechanism can produce deadlock. It is solved by using the spanning tree protocol (IEEE 802.1d)

• In the wormhole routing mechanism when there are cycles in the channel dependency graph (CDG) deadlock may arise (Duato)

Page 10: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

10

Previous results• Spanning tree

• Transform any Topology into a Spanning tree, forbidding the use of links not belonging to the tree

2

14

3

5

6 7

Root

2

14

3

5

6 7

Page 11: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

11

Previous results (II)• Turn-Prohibition

• Turn: Pair of input-output links around a node• Instead forbid a whole link forbids a turn

(Shoreder in Autonet’91)• Starobinski proposed a centralized optimization

algorithm which requires full topology knowledge. It is optimal in the total number of prohibited turns

Page 12: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

12

Previous results (III)• Turn-Prohibition

2

14

3

5

6 7 4

3

51

26 7

Page 13: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

13

Distributed Turn-prohibition Algorithm

Actions• Performs a depth search (spanning tree)• Forbids turns meanwhile exploring the network

Properties• Explores all nodes• Break all cycles by prohibiting turns• Connectivity is granted• Cost in messages is function of the number of links:

2|E|• It is not optimal

Page 14: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

14

Distributed Turn-prohibition Algorithm (II)Only a node initiates DTP

Page 15: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

15

Application example3

0

1

4

2

GO

GOGO

BACKGO

GOBACK

GO BACK

SEARCH

SEARCH

GO

GO

BACK

SEARCHSEARCH

0

1

3

4

2

Page 16: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

16

Application example (II)

• Spanning tree resulting on the depth search3

0

1

4

2

Page 17: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

17

Correctness proof

• Theorem 1: The algorithm is traversal:• Each computation has one initiator• When a node receives a message either sends

out a message or ends the computation• Theorem 2: The algorithm breaks all the

cycles of the system• Theorem 3: The system remains connected

Page 18: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

18

Performance evaluation

• Comparison of the number of forbiddenturns between Starobinski’s optimal solution and DTP algorithm

• Experiments:• Topologies:

• GT-ITM (ns-2) with topologies: flat, hierarchical, transit-stub

• Discrete event-driven simulator

Page 19: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

19

Performance evaluation (II)

• Experiment 1: how increasing the number of nodes affect de percentage of prohibited turns (network degree = 4).

Page 20: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

20

Performance evaluation (III)

• How increasing the network degree affects de percentage of prohibited turns (120 nodes).

Page 21: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

21

Self-configuring distributed turn prohibition (SDTP)

1. When a node receives a GO message SDTP assigns an ordered label to the node.

1. When label l fails (fail-stop):2. Invalidate all nodes with label higher than l3. Start applying DTP from the node with

highest label not invalidated linked with any of the invalidated nodes.

4. Apply previous step until there are no invalidated nodes

Page 22: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

22

Example of SDTP application

0/B

1/A

4/C E

3/D

2/

GO

GOBACK

D

Page 23: A distributed algorithm to provide QoS by avoiding cycles ...qofis.ccaba.upc.edu/pdf/wqosr04echague.pdf · 1 Workshop on Quality of Service Routing Barcelona, October 1, 2004 A distributed

23

Conclusions

• We have proposed an algorithm to provide network stability (QoS) by avoiding cycles in packet routes

• Our algorithm can be used in conjunction with any routing algorithm

• Performance of the algorithms are not far from optimal turn-prohibition solution

• We are working in a multiple initiator algorithm which multiple instances collaborate to the resulting topology