Title: Network Coding in a Multicast Switch
1Network Coding in a Multicast Switch
- Jay Kumar Sundararajan
- joint work with
2The Multicast Switch Model
Line rate 1 packet per slot
3The Multicast Switch Model
I
O
Example i 3 J 2,3,4
Flow
i is the input, J is the fanout
4The Multicast Switch Model
Crossbar constraints
- INPUT
- Can transmit only one packet at a time
- Can send it to many outputs
- OUTPUT
- Can receive from at most one input at a time
5The Multicast Switch Model
Crossbar constraints
- INPUT
- Can transmit only one packet at a time
- Can send it to many outputs
- OUTPUT
- Can receive from at most one input at a time
6The Multicast Switch Model
Crossbar constraints
- INPUT
- Can transmit only one packet at a time
- Can send it to many outputs
- OUTPUT
- Can receive from at most one input at a time
7The Multicast Switch Model
Crossbar constraints
- INPUT
- Can transmit only one packet at a time
- Can send it to many outputs
- OUTPUT
- Can receive from at most one input at a time
8(No Transcript)
9(No Transcript)
10Network Coding for Higher Throughput
(This example also appeared in Sundararajan et
al. 06)
11Network Coding for Higher Throughput
Conclusion If inputs are allowed to transmit
linear combinations of packets of a flow, i.e.,
linear intra-flow network coding is allowed, then
we can get a strictly higher throughput.
(This example also appeared in Sundararajan et
al. 06)
12Questions
- Given the rates, find a schedule using rate
decomposition - Unicasts Birkhoff-von Neumann decomposition
(Chang et al. 00) - Understand the rate region
- Unicasts Admissible region is achievable
(McKeown et al. 96) - Multicast without network coding Convex hull of
modified departure vectors (Marsan et al. 03) - What is the effect of the traffic pattern on
these questions?
13Enhanced Conflict Graph
TRAFFIC PATTERN
ENHANCED CONFLICT GRAPH
ENHANCED CONFLICT GRAPH
V One vertex for every subflow G
( V, E ) E Connect two vertices if the
subflows conflict Weights Rates of the
subflows
14Enhanced Conflict Graph
TRAFFIC PATTERN
ENHANCED CONFLICT GRAPH
ENHANCED CONFLICT GRAPH
Valid switch configuration Stable set (A
set of vertices no two of which are connected)
15Enhanced Conflict Graph
TRAFFIC PATTERN
ENHANCED CONFLICT GRAPH
ENHANCED CONFLICT GRAPH
Time-sharing of valid service configurations
(Schedule) Convex combination of stable sets
16Enhanced Conflict Graph
TRAFFIC PATTERN
ENHANCED CONFLICT GRAPH
ENHANCED CONFLICT GRAPH
Rate region Convex hull of stable sets
17Rate Region
- Virtual queue for a subflow (i, J, k)
- (similar to Ho et al. 05)
- Maintains the number of linearly independent
degrees of freedom yet to be delivered from input
i to output k for flow (i, J), for each - Arrival Whenever there is an arrival for flow
(i, J) - Service When an innovative packet from flow
(i,J) is conveyed to output k
Result Let r be the vector of arrival rates to
the virtual queues. r is achievable iff r is in
the stable set polytope of the enhanced conflict
graph.
18Proof outline Achievability
Schedule over a frame
Maximum Distance Separable ( n, k ) MDS code
?
19Understanding the traffic pattern
- Computing offline schedule Fractional weighted
coloring of ECG - If ECG is perfect, then
- Polynomial algorithm for finding schedule
- Entire admissible region is achievable
- Minimum speedup needed to sustain given rates
Fractional weighted chromatic number of ECG
Enhanced conflict graph (ECG) summarizes the
nature of the traffic pattern
20How much benefit?
2 x 3 switch all possible flows
21Online max-weight algorithm
- ECG vertex weight the size of the virtual queue
corresponding to a subflow (i.e., number of
degrees of freedom yet to be delivered) - Maximum weighted stable set algorithm In each
slot - Compute the maximum weighted stable set in the
ECG - Activate this set of queues
- For queues of the same flow, compute a linear
combination that is simultaneously innovative to
all recipients (Requires large enough field size) - We can use similar techniques as in Tass. et al.
92 to prove stability of the virtual queues - Randomized variant of max weight algorithm (Tass.
98) - Using a batching process, we can stabilize the
physical queues as well
22Simulation results
- 4 x 3 switch
- Traffic mix of unicast and special pattern
- Used randomized variant of max weight scheduling
23Conclusions
- Network coding in multicast switches gives
- Larger rate region than fanout splitting
- Insightful graph theoretic characterization of
the rate region - Scope for use of results/algorithms from graph
theory literature - Scheduling algorithm, throughput, speedup
- Future Work
- Inter-flow coding
- Multi-stage unicast switches
- Coding across many switches
24Two Service Strategies