routing2

advertisement
Routing & Architecture
Comparison about:
DCell , PortLand ,VL2 ,
BCube , MDCube
Point of views:
Goals , artecheture ,
routing algorithm , fault tolerance ,
broadcast and multicast ,
evaluation and compare,
Goals
Comparison about:
DCell , PortLand ,VL2 ,
BCube , MDCube
Goals
DCell
PortLand
VL2
Scalable + incremental
expansion
VM migration
Support high huge data
centers with uniform
high capacity between
servers
Fault-tolerance
Adminstrator
not need to configure
any switch
Performances isolation
between services
High network capacity
Any end host should
efficiently communicate
with others.
Ethernet layer-2
semantic
No forwarding loop
Failure detection
Goals
BCube
MDCube
An architecture model for modular
data center (MDC).
Solve the scalability problem on
BCube with small cost by increasing
the diameter and some change of
routing algorithm.
High performance.
For the same number of nodes, cost
is significantly lower than BCube.
Robust, graceful performance
degradation for both switch/server
faults
Artecheture
Comparison about:
DCell , PortLand ,VL2 ,
BCube , MDCube
artecheture

DCell
artecheture

PortLand
artecheture

VL2
DCell
PortLand
VL2
artecheture
artecheture
cost
high wiring cost
(compare the expensive
core switch)
---
---
diameter
2^(k+1) – 1
6
6
artecheture

BCube
Recursively define architecture
artecheture

MDCube
Base on the architecture of BCube and some high
speed fiber link. Each container is a BCube, and
connect them with fiber. Usually one or two
dimensions.
artecheture

MDCube
BCube
artecheture
MDCube
artecheture
cost
Only need cheap switches,
but need a lot of switches
when the number of nodes is
very huge.
With the help of fiber, the number of
switches is much lower than BCube. If
the level of BCube is not high( 2 or 3 ),
then the cost will be low even
compare to other architecture
(FatTree, DCell, etc.)
diameter
2* log p n
p = number of ports in a
switch
n = number of nodes
n= p^(k+1)
k = level of Bcube
4k+3+D(2k+3)
k is the level of Bcube
D is the level of MDCube.
artecheture

Diameter Compare
Architecture
Diameter
Balance Tree
2k
Fat-Tree
6
DCell
2^(k+1) – 1
BCube
K+1
Routing Algorithm
Comparison about:
DCell , PortLand ,VL2 ,
BCube , MDCube
DCell
PortLand
VL2
routing algorithm
Divide-and-conquer
Two nodes src and dst that
are in the same DCell(k) but
in two different DCell(k-1)s.
When computing the path
from src to dst in a DCell k,
we first calculate the
intermediate link (n1; n2)
that interconnects the two
DCell(k-1)s.
Just as TCP
Agent add the header
PortLand
DCell
routing algorithm
VL2
Divide-and-conquer
Two nodes src and dst that are in the same DCell(k) but in two
different DCell(k-1)s.
When computing the path from src to dst in a DCell k,
we first calculate the intermediate link (n1; n2) that
interconnects the two DCell(k-1)s.
DCell
PortLand
routing algorithm
Just as TCP
VL2
DCell
PortLand
VL2
routing algorithm
Agent add the header
routing algorithm
BCube
MDCube
Each packet header contains the
routing path of the packet, the relay
node don’t have to decide the next
node.
One-to-one:
One-to-one:
One-to-many:
All-to-all:
One-to-all:
All-to-all:
MDCube
BCube
routing algorithm
Each packet header contains the routing path of the packet, the relay node don’t
have to decide the next node.
One-to-one:
For node A = (a0,…,ak), B = (b0,…,bk), we can route A to B by changing one bit of
the ID each time. Since the ID of the node is at most k+1, the length of the routing
path is at most 2( k+1).
There are k+1 parallel path.
One-to-many:
If node A want to send the data to x nodes, and x <= number of ports p, then we
can construct a complete graph on these x+1 (including A) nodes by another x
nodes as relays.
One-to-all:
Can build (k+1) edge disjoint trees, and use them to broadcast
All-to-all:
Can reach a good Aggregate Bottleneck Throughput (ABT) which is Θ(n)
BCube
MDCube
routing algorithm
One-to-one:
In the container, the routing algorithm is the same as BCube.
When the path cross the container, correct the container ID one-by-one. The
hops needed to intermediate the containers are 2D(k+1) + (D+1), D+1 is for the
high speed link. This number plus the hop need in the two ends, which is 2*2(k+1),
is the maximum hop needed in one routing path.
There are k+1 parallel path.
All-to-all:
Similar to BCube, MDCube has ABT =Θ(n)
Fault Tolerance
Comparison about:
DCell , PortLand ,VL2 ,
BCube , MDCube
fault tolerance
DCell
Local-reroute and Proxy, Local Link-state, Jump-up for Rack
Failure
PortLand
Multi-rooted tree
VL2
Completely bipartite
BCube
Yes, and has a good result on both switch and server fault.
MDCube
Good because of BCube.
fault tolerance - BCube
fault tolerance - BCube
Broadcast & Multicast
Comparison about:
DCell , PortLand ,VL2 ,
BCube , MDCube
broadcast and multicast
DCell :
a sender delivers the broadcast packet to all its k + 1 neighbors
when broadcasting a packet in a DCell(k).
PortLand : nothing special
VL2 :
not mentioned
BCube:
Both can be reached.
Do broadcast by constructing edge disjoint trees.
Do multicast by using some relay nodes.
MDCube:
Similar to BCube.
Evalution & Compare
Comparison about:
DCell , PortLand ,VL2 ,
BCube , MDCube
evalution and compare

DCell :

1. The link failure incurs only 1-second throughput
degradation, while the node failure incurs a 5second throughput outage that corresponds to our
link-state timeout value.

2. The aggregate throughput of DCell was about 2
times faster than Tree.
evalution and compare

PortLand :
Convergence time : 70ms (TCP : 200ms)
 Scalability : 100ARPs/sec/host 30000 nodes 
control traffic 400Mbps; Core required : 70
 VM migration : throughput drops to zero in
200-600ms, fully recovered after 32s

evalution and compare

VL2 :
Uniform high capacity
 VLB fairness
 Performance Isolation
 Directory-system performance

evalution and compare

BCube:
evalution and compare

BCube:
evalution and compare

MDCube:
evalution and compare

MDCube:
evalution and compare

MDCube:
Download