Towards Highly Available Clos-Based WAN Routers
Sucha Supittayapornpong, Barath Raghavan, Ramesh Govindan University of Southern California SIGCOMM 2019
Towards Highly Available Clos-Based WAN Routers Sucha - - PowerPoint PPT Presentation
Towards Highly Available Clos-Based WAN Routers Sucha Supittayapornpong , Barath Raghavan, Ramesh Govindan University of Southern California SIGCOMM 2019 Googles Wide Area Network This network connects datacenters, so it has to be highly
Sucha Supittayapornpong, Barath Raghavan, Ramesh Govindan University of Southern California SIGCOMM 2019
This network connects datacenters, so it has to be highly available.
from B4 and After SIGCOMM’18
2
Each datacenter has one or more routers, and each router is connected by trunks.
from B4 and After SIGCOMM’18
3
https://www.sd-wan-experts.com/blog/undersea-cables/
4
Trunk’s links are wired to the router. Real routers have 128 or 512 ports.
5
Trunk Wiring Router Router
from B4 and After SIGCOMM’18
Let’s use a toy router to develop intuitions.
6
Trunk Wiring Router Router Router
A router is built as a Clos topology.
7
Upper stage Lower stage Internal Link
It can handle any traffic matrix without loss.
8
(All-to-All 1 unit)
Equal-cost multipath (ECMP) routing can achieve the non-blocking property.
9
ECMP splits traffic equally to nexthops.
10
ECMP splits traffic equally to nexthops.
11
ECMP splits traffic equally to nexthops.
12
There is sufficient internal capacity to route traffic between lower and upper stages.
13
14
A single failure reduces internal capacity.
15
A single failure reduces internal capacity. Overall capacity can reduce by half when ECMP is used.
16
Can we completely mask internal link and switch failures?
17
Can we completely mask internal link and switch failures? If not, can we degrade gracefully? Existing approaches do neither of these.
18
19
Careful wiring enables early forwarding.
20
Previous Early forwarding
Early forwarding can reduce upflow.
21
Early forwarding can reduce upflow.
22
The router can recover full capacity in this
23
24
Weight = 0 Weight = 1
Weight = 2 Weight = 1 Weight = 21 Weight = 11
Use 2+1 = 3 weight entries Use 21+11 = 32 weight entries
25
26
27
What wiring minimizes upflow? What is the most space-efficient set of WCMP weights? What is the effective capacity for a failure pattern?
28
Computing routing table is expensive and cannot be done after failure happens. So, we must precompute tables for every possible pattern. Challenge: All of these steps must scale to very large routers.
29
30
31
Same traffic, Different wiring
32
Different traffic, Same wiring
33
Upflow is a function of wiring and traffic matrix .
34
Traffic matrix 1 Traffic matrix 2 Upflow = 2 Upflow = 4
35
Traffic matrix 1 Traffic matrix 2 Upflow = 8 Upflow = 6
36
Upflow = 4 Upflow = 8 Choose this wiring
37
38
39
40
41
Non blocking Non-blocking router C A 2 2 Abstraction simplifies traffic engineering.
Topology Abstraction
42
Blocking The router cannot be abstracted by a simple node with flow conservation anymore. Blocking router C A 2 1
43
Blocking Non-blocking
= 2 ⨉ 0.5
44
Effective capacity is the largest scaling factor that a router is non-blocking under a given failure pattern. Blocking Non-blocking, 𝜄=0.5
= 2 ⨉ 0.5
Under a failure pattern, finding effective capacity is a linear program per traffic matrix.
45
Traffic matrix 1
𝜄=0.5
Traffic matrix 2
𝜄=0.75
The effective capacity is the minimum value.
46
Traffic matrix 1
𝜄=0.5
Traffic matrix 2
𝜄=0.75
47
48
Similar Not similar
Solution: Group similar failure patterns using a graph canonicalization algorithm Calculate effective capacity for each canonical pattern
49
Similar
50
Please see this part in the paper.
Resilience of 128-port router Comparison to alternative strategies Scalability to 512-port router Routing table sizes Impact of optimizations
51
Resilience of 128-port router Comparison to alternative strategies Scalability to 512-port router Routing table sizes Impact of optimizations
52
We enumerate all multiple-of-8 trunk sizes. (34 combinations) We compute the effective capacity under all possible failure conditions.
53
4 trunks 128-port router 16 lower switches 8 upper switches Link failure Upper switch failure Lower switch failure 8 links per lower switch
54
(0,16] (16,32) 32
Our approach can mask up to 6 concurrent link failures.
55
Capacity degrades gracefully.
Lower switch failure
56
Baseline Wiring Random Wiring
Minimal-Upflow Wiring Baseline Wiring Random Wiring
57
No other approach can mask even a single link failure
The pipeline can scale to the 512-port router.
58
Lower switch failure Upper switch failure
Min-upflow wiring and early forwarding can mask significant number of failures. It improves the availability of WAN routers. It can be used to reduce the cost of WAN routers.
59
https://github.com/USC-NSL/Highly-Available-WAN-Router (Available Oct. 2019)
60