Presentation is loading. Please wait.

Presentation is loading. Please wait.

Jon Turner Resilient Cell Resequencing in Terabit Routers.

Similar presentations


Presentation on theme: "Jon Turner Resilient Cell Resequencing in Terabit Routers."— Presentation transcript:

1 Jon Turner Jon.Turner@wustl.edu http://www.arl.wustl.edu/~jst Resilient Cell Resequencing in Terabit Routers

2 2 - Jonathan Turner Why Resequencing? Multistage interconnection networks with buffered switch elements and dynamic routing. »scalable, bandwidth-efficient architecture »makes good use of modern CMOS ICs - single chip can provide 100 Gb/s thruput and buffer thousands of cells Load Balancing Stage Input Line Cards Output Line Cards Shared Memory Switch Elements

3 3 - Jonathan Turner Resequencing with Sequence Numbers Drawbacks »each output needs N resequencing arrays »initialization when line card comes on-line »timeouts needed to cope with lost cells »multicast requires per flow resequencing arrays Sequence Numbers Added Reseq. Arrays indexed by seq. #

4 4 - Jonathan Turner Time-Based Resequencing Single resequencing buffer per output. Cells held until “age” exceeds threshold (T ). Options for late cells. »discard (strict resequencing) or buffer (loose) Timestamps Added Timestamp Ordered Reseq. Buffer Output Buffer

5 5 - Jonathan Turner Henrion’s Strict Resequencer Design Implemented using linked lists in common memory. Constant time per cell. arriving cell ts “ready” cells T slot timing wheel now insert at timestamp mod T current time modulo T

6 6 - Jonathan Turner now Implementing Loose Resequencing Only approximates loose resequencing. »must still discard “really late” cells. »low cost of large timing wheel allows good approximation lag now T arriving cell ts 1 ts 1 +T late arriving cell ts 2 ts 2 +T “Normal” insertion range “ready” cells “waiting” cells next lag new cell inserted at timestamp+T Cannot just insert late cells into output list.

7 7 - Jonathan Turner Fast-Forwarding the Lag Pointer Lag pointer must advance to next non-empty list on every clock tick for constant time operation. »no time to check successive pointers in timing wheel »use fast-forward bits to speed-up process 01010001 01001101 00000000 00000100 00000000 00000000 00110001 01001101 1 1 0 1 0 0 1 1 summary word bit for current time next non-empty timing wheel slot Two memory reads suffice to find next slot. »32 bit words allows range of 1024 »128 bit words allows range of 16,384

8 8 - Jonathan Turner Synchronization Time-based resequencing requires synchronization of all line cards. »in small routers, requires just a common backplane signal »in large routers, line cards connected to network only by optical data cables Requires low-level clock synchronization protocol. »“master” line card issues periodic broadcast synchronization messages »network forwards sync messages with constant delay only approximate synchronization is necessary »new clock master selected on failure Independent line card clocks require adjustments. »suspend transmission when delaying clock

9 9 - Jonathan Turner Performance of Strict Resequencing Simple random traffic. 3 stage network, 8 port SEs, 512 (shared) cell buffers. 1st stage SEs use round robin load balancing for each input. Late cells rare with small speedup For systems with 10G links, delay for 256 cells is 10  s.

10 10 - Jonathan Turner Performance on Adversarial Traffic Growing network delay Cells discarded when delay exceeds T Delay drops as SE buffers drain Resequencer recovers when delay drops below T 2:1 overload at “target” output

11 11 - Jonathan Turner Performance on Bursty Traffic 100% input load. Input picks an output at random – overload at 1 in 4 outputs Stays with target output for geometrically distributed time. Poor performance even for large speedups.

12 12 - Jonathan Turner Loose Reseq. with Adversarial Traffic Arriving cells are younger than oldest waiting cells, so no resequencing errors

13 13 - Jonathan Turner Loose Reseq. with Bursty Traffic Tolerates about 3x longer bursts than strict reseq.

14 14 - Jonathan Turner Adaptive Resequencing Adjust age threshold to match observed delay. »parameters: window size (W), short term delay difference bound (  ) »variables: max delay in current measurement window (d 0 ) and previous measurement window (d -1 ) »age threshold =  + max{d 0, d -1 } »implement by extending loose, fixed threshold design Theorem. (simplified). If cell c 1 enters interconnection network just before c 2 and exits no later than  after c 2, then adaptive resequencer with W   forwards c 1 before c 2. Resequencing errors caused by excessive delay variability, rather than large delays.

15 15 - Jonathan Turner Performance on Adversarial Traffic Arriving cells are younger than oldest waiting cells, so no resequencing errors Resequencer adds small increment to network delay. Age threshold tracks network delay. Resequencer occupancy stays bounded.

16 16 - Jonathan Turner Performance on Bursty Traffic Tolerates about 2x longer bursts than loose reseq. Less sensitive to extremely large bursts Performance degrades when switch buffers fill. Caused by delay variation in first stage.

17 17 - Jonathan Turner Boosting Performance for Long Bursts Limiting first stage buffering cuts variability. Small first stage buffer gives good performance with modest “extra” delay Smallest buffer reduces switch throughput by 2%.

18 18 - Jonathan Turner Speeding up Threshold Reductions Downward age threshold adjustments are delayed by window mechanism. Can reduce delay using “finer-grained” windows. »max delay d 0,d -1,d -2,... in k measurement windows »age threshold =  + max{d 0, d -1,d -2,...} Theorem. (simplified). If cell c 1 enters interconnection network just before c 2 and exits no later than  after c 2, then adaptive resequencer with (k  1)W   forwards c 1 before c 2. For large k, max delay in threshold adjustment is cut almost in half.

19 19 - Jonathan Turner Closing Remarks Adaptive resequencing can virtually eliminate resequencing errors in multistage networks. »to handle most extreme traffic, need to limit delay variability in load balancing stages »in systems that regulate the overall flow of traffic, extreme cases should not arise at all Henrion’s strict resequencer can be modified for adaptive resequencing – O(1) time per cell. More sophisticated interconnection network can increase throughput and reduce delay variability. »per destination queues with controlled buffer sharing »per destination flow control and load balancing »timestamp-ordered switch element queues


Download ppt "Jon Turner Resilient Cell Resequencing in Terabit Routers."

Similar presentations


Ads by Google