Packet Routing Problems on Plane Grids Ignasi Sau Valls Mascotte - - PowerPoint PPT Presentation

packet routing problems on plane grids
SMART_READER_LITE
LIVE PREVIEW

Packet Routing Problems on Plane Grids Ignasi Sau Valls Mascotte - - PowerPoint PPT Presentation

Packet Routing Problems on Plane Grids Ignasi Sau Valls Mascotte project, CNRS/I3S-INRIA-UNSA, France Joint work with Omid Amini, Florian Huc and Janez Zerovnik AEOLUS Workshop on Scheduling Ignasi Sau Valls (MASCOTTE) Packet Routing


slide-1
SLIDE 1

Packet Routing Problems on Plane Grids

Ignasi Sau Valls

Mascotte project, CNRS/I3S-INRIA-UNSA, France

Joint work with Omid Amini, Florian Huc and Janez ˇ Zerovnik

AEOLUS Workshop on Scheduling

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 1 / 40

slide-2
SLIDE 2

Outline

Introduction

◮ Statement of the problem ◮ Preliminaries ◮ Example

Permutation routing algorithm for triangular grids

◮ Description ◮ Correctness ◮ Optimality

Permutation routing algorithm for hexagonal grids (ℓ, k)-routing algorithms Conclusions

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 2 / 40

slide-3
SLIDE 3

(ℓ, k)-routing

The (ℓ, k)-routing problem is a packet routing problem. Each processor is the origin of at most ℓ packets and the destination of no more than k packets. The goal is to minimize the number of time steps required to route all packets to their respective destinations. Permutation routing is the particular case when ℓ = k = 1

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 3 / 40

slide-4
SLIDE 4

(ℓ, k)-routing

The (ℓ, k)-routing problem is a packet routing problem. Each processor is the origin of at most ℓ packets and the destination of no more than k packets. The goal is to minimize the number of time steps required to route all packets to their respective destinations. Permutation routing is the particular case when ℓ = k = 1

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 3 / 40

slide-5
SLIDE 5

Permutation Routing

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 4 / 40

slide-6
SLIDE 6

Statement of the problem

Input:

◮ a directed graph G = (V, E)

(the host graph),

◮ a subset S ⊆ V of nodes, ◮ and a permutation π : S → S.

Each node u ∈ S wants to send a packet to π(u).

Output: Find for each pair (u, π(u)), a path form u to π(u) in G. Constraints:

◮ At each step, a packet can either move or stay at a node. ◮ No arc can be crossed by two packets at the same step. ◮ Cohabitation of multiple packets at the same node is allowed.

Goal: minimize the number of time steps required to route all packets to their respective destinations.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 5 / 40

slide-7
SLIDE 7

Statement of the problem

Input:

◮ a directed graph G = (V, E)

(the host graph),

◮ a subset S ⊆ V of nodes, ◮ and a permutation π : S → S.

Each node u ∈ S wants to send a packet to π(u).

Output: Find for each pair (u, π(u)), a path form u to π(u) in G. Constraints:

◮ At each step, a packet can either move or stay at a node. ◮ No arc can be crossed by two packets at the same step. ◮ Cohabitation of multiple packets at the same node is allowed.

Goal: minimize the number of time steps required to route all packets to their respective destinations.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 5 / 40

slide-8
SLIDE 8

Statement of the problem

Input:

◮ a directed graph G = (V, E)

(the host graph),

◮ a subset S ⊆ V of nodes, ◮ and a permutation π : S → S.

Each node u ∈ S wants to send a packet to π(u).

Output: Find for each pair (u, π(u)), a path form u to π(u) in G. Constraints:

◮ At each step, a packet can either move or stay at a node. ◮ No arc can be crossed by two packets at the same step. ◮ Cohabitation of multiple packets at the same node is allowed.

Goal: minimize the number of time steps required to route all packets to their respective destinations.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 5 / 40

slide-9
SLIDE 9

Statement of the problem

Input:

◮ a directed graph G = (V, E)

(the host graph),

◮ a subset S ⊆ V of nodes, ◮ and a permutation π : S → S.

Each node u ∈ S wants to send a packet to π(u).

Output: Find for each pair (u, π(u)), a path form u to π(u) in G. Constraints:

◮ At each step, a packet can either move or stay at a node. ◮ No arc can be crossed by two packets at the same step. ◮ Cohabitation of multiple packets at the same node is allowed.

Goal: minimize the number of time steps required to route all packets to their respective destinations.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 5 / 40

slide-10
SLIDE 10

Assumptions

We consider the store-and-forward and ∆-port model. Full duplex link: packets can be sent in the two directions of the link simultaneously.

u v uv vu

If the network is half-duplex → 2 factor approximation algorithm from an optimal algorithm for the full-duplex case, by introducing odd-even steps.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 6 / 40

slide-11
SLIDE 11

Assumptions

We consider the store-and-forward and ∆-port model. Full duplex link: packets can be sent in the two directions of the link simultaneously.

u v uv vu

If the network is half-duplex → 2 factor approximation algorithm from an optimal algorithm for the full-duplex case, by introducing odd-even steps.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 6 / 40

slide-12
SLIDE 12

Previous work

  • The permutation routing problem has been studied in:

Mobile Ad Hoc Networks Cube-Connected Cycle Networks Wireless and Radio Networks All-Optical Networks Reconfigurable Meshes...

  • But, optimal algorithms (in the worst case):

2-circulant graphs, square grids. Triangular grids: Two-terminal routing (only one message to be sent)

  • In this talk we describe optimal permutation routing algorithms for

triangular and hexagonal grids.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 7 / 40

slide-13
SLIDE 13

Previous work

  • The permutation routing problem has been studied in:

Mobile Ad Hoc Networks Cube-Connected Cycle Networks Wireless and Radio Networks All-Optical Networks Reconfigurable Meshes...

  • But, optimal algorithms (in the worst case):

2-circulant graphs, square grids. Triangular grids: Two-terminal routing (only one message to be sent)

  • In this talk we describe optimal permutation routing algorithms for

triangular and hexagonal grids.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 7 / 40

slide-14
SLIDE 14

Previous work

  • The permutation routing problem has been studied in:

Mobile Ad Hoc Networks Cube-Connected Cycle Networks Wireless and Radio Networks All-Optical Networks Reconfigurable Meshes...

  • But, optimal algorithms (in the worst case):

2-circulant graphs, square grids. Triangular grids: Two-terminal routing (only one message to be sent)

  • In this talk we describe optimal permutation routing algorithms for

triangular and hexagonal grids.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 7 / 40

slide-15
SLIDE 15

Permutation Routing on Triangular Grids

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 8 / 40

slide-16
SLIDE 16

Notation and preliminary results

Nocetti, Stojmenovi´ c and Zhang [IEEE TPDS’02]: Representation

  • f

the relative address of the nodes on a generat- ing system i, j, k on the directions of the three axis x, y, z.

x y z

This address is not unique, but we have that, being (a, b, c) and (a′, b′, c′) the addresses of two D − S pairs, (a, b, c) = (a′, b′, c′) ⇔ ∃ an integer d such that a′ = a + d, b′ = b + d, c′ = c + d.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 9 / 40

slide-17
SLIDE 17

Notation and preliminary results

Nocetti, Stojmenovi´ c and Zhang [IEEE TPDS’02]: Representation

  • f

the relative address of the nodes on a generat- ing system i, j, k on the directions of the three axis x, y, z.

x y z

This address is not unique, but we have that, being (a, b, c) and (a′, b′, c′) the addresses of two D − S pairs, (a, b, c) = (a′, b′, c′) ⇔ ∃ an integer d such that a′ = a + d, b′ = b + d, c′ = c + d.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 9 / 40

slide-18
SLIDE 18

Notation and preliminary results (2)

A relative address D − S = (a, b, c) is of the shortest path form if

◮ there is a path C from S to D, C=ai+bj+ck, ◮ and C has the shortest length over all paths going from S to D.

Theorem (NSZ’02)

An address (a, b, c) is of the shortest path form if and only if

i) at least one component is zero (that is, abc = 0), ii) and any two components do not have the same sign (that is, ab ≤ 0, ac ≤ 0, and bc ≤ 0).

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 10 / 40

slide-19
SLIDE 19

Notation and preliminary results (2)

A relative address D − S = (a, b, c) is of the shortest path form if

◮ there is a path C from S to D, C=ai+bj+ck, ◮ and C has the shortest length over all paths going from S to D.

Theorem (NSZ’02)

An address (a, b, c) is of the shortest path form if and only if

i) at least one component is zero (that is, abc = 0), ii) and any two components do not have the same sign (that is, ab ≤ 0, ac ≤ 0, and bc ≤ 0).

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 10 / 40

slide-20
SLIDE 20

Notation and preliminary results (3)

Corollary (NSZ’02)

Any address has a unique shortest path form.

Corollary (NSZ’02)

If D − S = (a, b, c), then the shortest path form is one of those: (0, b − a, c − a), (a − b, 0, c − b), (a − c, b − c, 0), and thus: |D − S| = min(|b − a| + |c − a|, |a − b| + |c − b|, |a − c| + |b − c|).

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 11 / 40

slide-21
SLIDE 21

Notation and preliminary results (3)

Corollary (NSZ’02)

Any address has a unique shortest path form.

Corollary (NSZ’02)

If D − S = (a, b, c), then the shortest path form is one of those: (0, b − a, c − a), (a − b, 0, c − b), (a − c, b − c, 0), and thus: |D − S| = min(|b − a| + |c − a|, |a − b| + |c − b|, |a − c| + |b − c|).

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 11 / 40

slide-22
SLIDE 22

Notation and preliminary results (4)

Given a packet p and its relative address (a, b, c) in the shortest path form, ℓp := |a| + |b| + |c|, ℓmax := max

p (ℓp)

Trivial lower bound: Any permutation routing algorithm needs at least ℓmax routing steps.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 12 / 40

slide-23
SLIDE 23

Notation and preliminary results (4)

Given a packet p and its relative address (a, b, c) in the shortest path form, ℓp := |a| + |b| + |c|, ℓmax := max

p (ℓp)

Trivial lower bound: Any permutation routing algorithm needs at least ℓmax routing steps.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 12 / 40

slide-24
SLIDE 24

Example of an instance

a A b B c C d D e E g G h H f F

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 13 / 40

slide-25
SLIDE 25

A non-optimal intuitive algorithm

a A b B c C d D e E g G h H f F

1: 2: 3:

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 14 / 40

slide-26
SLIDE 26

A non-optimal intuitive algorithm (2)

a A b B c C d D e E g G h H f F

1: 2: 3:

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 15 / 40

slide-27
SLIDE 27

A non-optimal intuitive algorithm (3)

a A b B c C d D e E g G h H f F

1: 2: 3:

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 16 / 40

slide-28
SLIDE 28

Another non-optimal intuitive algorithm

a A b B c C d D e E g G h H f F

1: 2: 3:

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 17 / 40

slide-29
SLIDE 29

Another non-optimal intuitive algorithm (2)

a A b B c C d D e E g G h H f F

1: 2: 3:

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 18 / 40

slide-30
SLIDE 30

Another non-optimal intuitive algorithm (3)

a A b B c C d D e E g G h H f F

1: 2: 3:

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 19 / 40

slide-31
SLIDE 31

Description of Algorithm A

At each node u of the network: Preprocessing: Initially, if there is a packet at u, compute the relative address D − S of the message in the shortest path form, and add this information to the message. Reception phase: At each step, when a packet is received at u, its relative address is updated. Transmission phase:

a) If there are packets with negative components, send them immediately along the direction of this component. b) If not, for each outgoing edge order the packets according to decreasing number of remaining steps, and send the first packet of each queue.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 20 / 40

slide-32
SLIDE 32

Description of Algorithm A

At each node u of the network: Preprocessing: Initially, if there is a packet at u, compute the relative address D − S of the message in the shortest path form, and add this information to the message. Reception phase: At each step, when a packet is received at u, its relative address is updated. Transmission phase:

a) If there are packets with negative components, send them immediately along the direction of this component. b) If not, for each outgoing edge order the packets according to decreasing number of remaining steps, and send the first packet of each queue.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 20 / 40

slide-33
SLIDE 33

Description of Algorithm A

At each node u of the network: Preprocessing: Initially, if there is a packet at u, compute the relative address D − S of the message in the shortest path form, and add this information to the message. Reception phase: At each step, when a packet is received at u, its relative address is updated. Transmission phase:

a) If there are packets with negative components, send them immediately along the direction of this component. b) If not, for each outgoing edge order the packets according to decreasing number of remaining steps, and send the first packet of each queue.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 20 / 40

slide-34
SLIDE 34

Description of Algorithm A

At each node u of the network: Preprocessing: Initially, if there is a packet at u, compute the relative address D − S of the message in the shortest path form, and add this information to the message. Reception phase: At each step, when a packet is received at u, its relative address is updated. Transmission phase:

a) If there are packets with negative components, send them immediately along the direction of this component. b) If not, for each outgoing edge order the packets according to decreasing number of remaining steps, and send the first packet of each queue.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 20 / 40

slide-35
SLIDE 35

Description of Algorithm A

At each node u of the network: Preprocessing: Initially, if there is a packet at u, compute the relative address D − S of the message in the shortest path form, and add this information to the message. Reception phase: At each step, when a packet is received at u, its relative address is updated. Transmission phase:

a) If there are packets with negative components, send them immediately along the direction of this component. b) If not, for each outgoing edge order the packets according to decreasing number of remaining steps, and send the first packet of each queue.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 20 / 40

slide-36
SLIDE 36

Routing of the packets according to A

Algorithm A defines for each packet two directions of movement (except if a packet has only one non-zero component) For instance:

◮ if the packet address is of the type (−, 0, +) →

this packet goes first in the direction −x, and after in +z → We symbolize this rule by the arrow

◮ the routing of the address (+, −, 0) is represented by Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 21 / 40

slide-37
SLIDE 37

Routing of the packets according to A

Algorithm A defines for each packet two directions of movement (except if a packet has only one non-zero component) For instance:

◮ if the packet address is of the type (−, 0, +) →

this packet goes first in the direction −x, and after in +z → We symbolize this rule by the arrow

◮ the routing of the address (+, −, 0) is represented by Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 21 / 40

slide-38
SLIDE 38

Routing of the packets according to A

Algorithm A defines for each packet two directions of movement (except if a packet has only one non-zero component) For instance:

◮ if the packet address is of the type (−, 0, +) →

this packet goes first in the direction −x, and after in +z → We symbolize this rule by the arrow

◮ the routing of the address (+, −, 0) is represented by Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 21 / 40

slide-39
SLIDE 39

Routing the packets (2)

In this figure all the routing rules are summarized:

x y z

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 22 / 40

slide-40
SLIDE 40

Correctness of Algorithm A

At each node u of the network:

Preprocessing: Initially, if there is a packet at u, compute the relative address D − S of the message in the shortest path form, and add this information to the message. Reception phase: At each step, when a packet is received at u, its relative address is updated. Transmission phase:

a) If there are packets with negative components, send them immediately along the direction of this component.

b) If not, for each outgoing edge order the packets according to decreasing number of remaining steps, and send the first packet of each queue. Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 23 / 40

slide-41
SLIDE 41

Correctness (2)

Key observation: Packets can only wait, possibly, during their last direction.

◮ this is because if two packets meet when their first direction is not

finished yet, they must have the same origin node → contradiction.

x y z

Thus, in a) there can be at most one packet with negative component at each outgoing edge → there is no ambiguity.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 24 / 40

slide-42
SLIDE 42

Correctness (2)

Key observation: Packets can only wait, possibly, during their last direction.

◮ this is because if two packets meet when their first direction is not

finished yet, they must have the same origin node → contradiction.

x y z

Thus, in a) there can be at most one packet with negative component at each outgoing edge → there is no ambiguity.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 24 / 40

slide-43
SLIDE 43

Correctness (2)

Key observation: Packets can only wait, possibly, during their last direction.

◮ this is because if two packets meet when their first direction is not

finished yet, they must have the same origin node → contradiction.

x y z

Thus, in a) there can be at most one packet with negative component at each outgoing edge → there is no ambiguity.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 24 / 40

slide-44
SLIDE 44

Correctness (3)

At each node u of the network: Preprocessing: Initially, if there is a packet at u, compute the relative address D − S of the message in the shortest path form, and add this information to the message. Reception phase: At each step, when a packet is received at u, its relative address is updated. Transmission phase: a) If there are packets with negative components, send them immediately along the direction of this component.

b) If not, for each outgoing edge order the packets according to decreasing number of remaining steps, and send the first packet of each queue.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 25 / 40

slide-45
SLIDE 45

Correctness (4)

All the packets in in b) are moving along their last direction

◮ their negative component is already finished, otherwise they would

be in a)

Thus, since each node is the destination of at most one packet, in b) the packet with maximum remaining length at each

  • utgoing edge is unique.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 26 / 40

slide-46
SLIDE 46

Correctness (4)

All the packets in in b) are moving along their last direction

◮ their negative component is already finished, otherwise they would

be in a)

Thus, since each node is the destination of at most one packet, in b) the packet with maximum remaining length at each

  • utgoing edge is unique.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 26 / 40

slide-47
SLIDE 47

Optimality

Using this algorithm, at each step all the packets with maximum remaining distance move → every step the maximum remaining distance over all packets decreases by one → the total running time is at most ℓmax, meeting the lower bound. It is a distributed, oblivious and translation invariant algorithm.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 27 / 40

slide-48
SLIDE 48

Optimality

Using this algorithm, at each step all the packets with maximum remaining distance move → every step the maximum remaining distance over all packets decreases by one → the total running time is at most ℓmax, meeting the lower bound. It is a distributed, oblivious and translation invariant algorithm.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 27 / 40

slide-49
SLIDE 49

Optimality

Using this algorithm, at each step all the packets with maximum remaining distance move → every step the maximum remaining distance over all packets decreases by one → the total running time is at most ℓmax, meeting the lower bound. It is a distributed, oblivious and translation invariant algorithm.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 27 / 40

slide-50
SLIDE 50

Final example

a A b B c C d D e E f F g G h H i I j J

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 28 / 40

slide-51
SLIDE 51

Final example (2)

a A b B c C d D e E f F g G h H i I j J

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 29 / 40

slide-52
SLIDE 52

Permutation Routing on Hexagonal Grids

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 30 / 40

slide-53
SLIDE 53

Hexagonal grid

One can define 3 types of zigzag chains: e Any shortest path uses at most 2 types of zigzag chains

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 31 / 40

slide-54
SLIDE 54

Hexagonal grid

One can define 3 types of zigzag chains: e Any shortest path uses at most 2 types of zigzag chains

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 31 / 40

slide-55
SLIDE 55

Idea

There are 3 types of edges and 3 types of chains:

e c c c

1 2 3 1

e2 e3

Each edge belongs to exactly 2 different chains, and conversely each chain is made of 2 types of edges. Any 2 chains of different type intersect exactly on one edge. We can define 2 phases in such a way that at each phase, each type of chain uses only one type of edge.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 32 / 40

slide-56
SLIDE 56

Idea

There are 3 types of edges and 3 types of chains:

e c c c

1 2 3 1

e2 e3

Each edge belongs to exactly 2 different chains, and conversely each chain is made of 2 types of edges. Any 2 chains of different type intersect exactly on one edge. We can define 2 phases in such a way that at each phase, each type of chain uses only one type of edge.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 32 / 40

slide-57
SLIDE 57

Idea

There are 3 types of edges and 3 types of chains:

e c c c

1 2 3 1

e2 e3

Each edge belongs to exactly 2 different chains, and conversely each chain is made of 2 types of edges. Any 2 chains of different type intersect exactly on one edge. We can define 2 phases in such a way that at each phase, each type of chain uses only one type of edge.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 32 / 40

slide-58
SLIDE 58

Optimal algorithm

At each node of the network: 1) During the first step, move all packets along the direction of their negative component. If a packet’s address has only a positive component, move it along this direction. 2) From now on, change alternatively between Phase 1 and Phase 2. 3) At each step (the same for both phases):

a) If there are packets with negative components, send them immediately along the direction of this component. b) If not, for each outgoing edge order the packets according to decreasing number of remaining steps, and send the first packet of each queue.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 33 / 40

slide-59
SLIDE 59

Running time

Every 2 steps (one of Phase 1 and one of Phase 2) the maximum remaining distance over all packets decreases by one. During the first step all packets decrease their remaining distance by one. Thus, the total running time is 1 + 2(ℓmax − 1) = 2ℓmax − 1. It can also be proved that 2ℓmax − 1 is a lower bound. Thus, this algorithm is optimal.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 34 / 40

slide-60
SLIDE 60

Running time

Every 2 steps (one of Phase 1 and one of Phase 2) the maximum remaining distance over all packets decreases by one. During the first step all packets decrease their remaining distance by one. Thus, the total running time is 1 + 2(ℓmax − 1) = 2ℓmax − 1. It can also be proved that 2ℓmax − 1 is a lower bound. Thus, this algorithm is optimal.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 34 / 40

slide-61
SLIDE 61

Running time

Every 2 steps (one of Phase 1 and one of Phase 2) the maximum remaining distance over all packets decreases by one. During the first step all packets decrease their remaining distance by one. Thus, the total running time is 1 + 2(ℓmax − 1) = 2ℓmax − 1. It can also be proved that 2ℓmax − 1 is a lower bound. Thus, this algorithm is optimal.

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 34 / 40

slide-62
SLIDE 62

(ℓ, k)-Routing

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 35 / 40

slide-63
SLIDE 63

Algorithm (in any grid)

Recall: each node can send at most ℓ packets and receive at most k packets Idea: represent the request set as a weighted bipartite graph H:

◮ split each vertex of the original graph ◮ u and v are adjacent if u wants to send a packet to v ◮ for each edge uv, let w(uv) be the length of a shortest path from u

to v on the grid

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 36 / 40

slide-64
SLIDE 64

Algorithm (in any grid)

Recall: each node can send at most ℓ packets and receive at most k packets Idea: represent the request set as a weighted bipartite graph H:

◮ split each vertex of the original graph ◮ u and v are adjacent if u wants to send a packet to v ◮ for each edge uv, let w(uv) be the length of a shortest path from u

to v on the grid

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 36 / 40

slide-65
SLIDE 65

Example

l=2 k=3

u v w(uv)

Fact: each matching in H corresponds to an instance of a permutation routing problem → it can be solved optimally

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 37 / 40

slide-66
SLIDE 66

Example

l=2 k=3

u v w(uv)

Fact: each matching in H corresponds to an instance of a permutation routing problem → it can be solved optimally

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 37 / 40

slide-67
SLIDE 67

New problem

Problem: find m := max{ℓ, k} matchings in H: M1, . . . , Mm Let c(Mi) := max{w(e)|e ∈ Mi)}, i = 1, . . . , m Objective function: min

m

  • i=1

c(Mi) Fact: min m

i=1 c(Mi) is the running time of routing a (ℓ, k)-routing

instance using this algorithm But we suspect that this problem is NP-complete...

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 38 / 40

slide-68
SLIDE 68

New problem

Problem: find m := max{ℓ, k} matchings in H: M1, . . . , Mm Let c(Mi) := max{w(e)|e ∈ Mi)}, i = 1, . . . , m Objective function: min

m

  • i=1

c(Mi) Fact: min m

i=1 c(Mi) is the running time of routing a (ℓ, k)-routing

instance using this algorithm But we suspect that this problem is NP-complete...

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 38 / 40

slide-69
SLIDE 69

New problem

Problem: find m := max{ℓ, k} matchings in H: M1, . . . , Mm Let c(Mi) := max{w(e)|e ∈ Mi)}, i = 1, . . . , m Objective function: min

m

  • i=1

c(Mi) Fact: min m

i=1 c(Mi) is the running time of routing a (ℓ, k)-routing

instance using this algorithm But we suspect that this problem is NP-complete...

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 38 / 40

slide-70
SLIDE 70

Summary and further research

We have described optimal permutation routing algorithms for triangular and hexagonal grids We have also optimal algorithms for the (1, k)-routing problem It remains to solve the (ℓ − k)-routing Permutation routing on 3-circulant graphs is still a challenging

  • pen problem...

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 39 / 40

slide-71
SLIDE 71

Summary and further research

We have described optimal permutation routing algorithms for triangular and hexagonal grids We have also optimal algorithms for the (1, k)-routing problem It remains to solve the (ℓ − k)-routing Permutation routing on 3-circulant graphs is still a challenging

  • pen problem...

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 39 / 40

slide-72
SLIDE 72

Thanks!

Ignasi Sau Valls (MASCOTTE) Packet Routing Problems on Plane Grids 8th March 2007 40 / 40