CIS679: Anycast
description
Transcript of CIS679: Anycast
![Page 1: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/1.jpg)
CIS679: Anycast
Review of Last lecture Anycast
![Page 2: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/2.jpg)
Review of Last Lecture
H.323
![Page 3: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/3.jpg)
Anycast
Unicast, multicast and anycast
![Page 4: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/4.jpg)
Usage of Anycast
Providing Service transparency DNS server, and mirrored Web site
Improving network performance load balance at application and network layers
![Page 5: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/5.jpg)
An Example for Ancast Usage
R13R12
R9
R7
R11R10
R8
R1 R2
R4
R5
R3
R6
1 mbs
1 mbs 1 mbs
1 mbs1 mbs
3 mbs
A traffic flow with SP-To-Core method
core
![Page 6: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/6.jpg)
Anycast at Different Layers
Network-layer anycast Anycast address Anycast membership management Anycast routing
Application-layer anycast
![Page 7: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/7.jpg)
Anycast Address
Shares with unicast Advantage: compatible to unicast Disadvantage: too like unicast, some benefit of
anycast lost
Separate from unicast, just like multicast Advantage: easy to make full use of anycast
semantics Disadvantage: difficult to deploy
![Page 8: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/8.jpg)
Anycast Membership Management
Similar to multicast -- IGMP But, there is more freedom
![Page 9: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/9.jpg)
Anycast RoutingAnycast Routing
Single-path Routing
The path from the source to the destination is time invariant.
Multi-path Routing The traffic from the source to the destination is split into different paths.
![Page 10: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/10.jpg)
Multi-Path Routing for Anycast Messages
Two issues Loop free routing How to select multi-path?
![Page 11: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/11.jpg)
Loop in Anycast Loop in Anycast RoutingRouting
Dest Dist hopA, H15
A, H16
A, H17
A, H18
10 R7
9 R12
8 R13
3 R14
Routing table at R10
Dest Dist hopA, H15
A, H16
A, H17
A, H18
8 R9
9 R9
10 R10
5 R10
Routing table at R7
Dest Dist hopA, H15
A, H16
A, H17
A, H18
5 R11
6 R12
13 R7
8 R7
Routing table at R9
Dest Dist hopA, H15
A, H16
A, H17
A, H18
7 R9
4 R16
13 R10
8 R10
Routing table at R12
H1~H8 Anycast packet sources G(A) = {H15, H16, H17, H18}HiRouter HostRi
1
1 1 11
H1
1H2
1
H6
1H7
1
H8
1
H15
1
H4
1
H17
1H18
1
H5
1
4
2
1
3
6
1
32
2
7
32
16
3 3
41
4
R1 R2 R3 R4
R5 R6 R7 R8
R9 R10
R14R13R12R11
R15 H16
1R16 R17 R18
5
H3
Link with distance 1 Link in a loop2
![Page 12: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/12.jpg)
Loop-free Routing
Ordered routing A router with a higher order can send anycast message
to a lower order router.
Methods to order the routers SSPF method MIN_D method SBT method CBT method
![Page 13: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/13.jpg)
The SSPF Method
SSP order: X>SSPY if Y is the next hop of X on Pssp(X, G(A)).
An anycast packet is routed to the nearest member of the anycast group.
![Page 14: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/14.jpg)
The SSPF Method
*
*
Dest Dist hopA, H15
A, H16
A, H17
A, H18
2 R11
9 R9
16 R9
11 R2
Routing table at R11
Dest Dist hopA, H15
A, H16
A, H17
A, H18
7 R5
12 R5
20 R5
15 R5
Routing table at R1
Dest Dist hopA, H15
A, H16
A, H17
A, H18
6 R11
12 R2
19 R12
14 R2
Routing table at R5
Dest Dist hopA, H15
A, H16
A, H17
A, H18
1 H15
10 R11
17 R11
12 R11
Routing table at R15
*
*
1
1 1 11
H1
1H2
1
H6
1H7
1
H8
1
H15
1
H4
1
H17
1H18
1
H5
1
4
2
1
3
6
1
32
2
7
32
16
3 3
41
4
R1 R2 R3 R4
R5 R6 R7 R8
R9 R10
R14R13R12R11
R15 H16
1R16 R17 R18
5
H3
H1~H8 Anycast packet sources G(A) = {H15, H16, H17, H18}HiRi Router Host
Link with distance 1Link on DBTs
2 Congested link 1
![Page 15: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/15.jpg)
The MIN-D Method
Function min_d()
MIN_D order X >MIN_DY if min_d(X, A) > min_d(Y, A).
An anycast packet is routed to the nearer member of the anycast group.
))).,(((min),(min_)(
HXPDAXd SPAGH
![Page 16: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/16.jpg)
The MIN-D Method
Dest Dist hopA, H15
A, H16
A, H17
A, H18
10 R7
9 R12
8 R13
3 R14
Routing table at R10
Dest Dist hopA, H15
A, H16
A, H17
A, H18
6 R9
7 R9
14 R10
9 R10
Routing table at R6
Dest Dist hopA, H15
A, H16
A, H17
A, H18
5 R11
6 R12
13 R7
8 R7
Routing table at R9
Dest Dist hopA, H15
A, H16
A, H17
A, H18
7 R9
4 R16
13 R10
8 R10
Routing table at R12
* **
**
*
*
*
1
1 1 11
H1
1H2
1
H6
1H7
1
H8
1
H15
1
H4
1
H17
1H18
1
H5
1
4
2
1
3
6
1
32
2
7
32
16
3 3
41
4
R1 R2 R3 R4
R5 R6 R7 R8
R9 R10
R14R13R12R11
R15 H16
1R16 R17 R18
5
H3
Link with distance 1 Link on a general graph 2
Congested link 1
7 7 6 6
6 6 5 5
1
5 3
4 22 4
1 11
H1~H8 Anycast packet sources G(A) = {H15, H16, H17, H18}HiRi Router with MIN-D Host2
![Page 17: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/17.jpg)
The SBT Method
SBT order: X>SBTY if X is the father of Y on the source-based tree of
Source S
An anycast packet is routed along the source-based tree rooted at the source of the packet.
![Page 18: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/18.jpg)
The SBT Method
1
1 1 11
H1
1H2
1
H6
1H7
1
H8
1
H15
1
H4
1
H17
1H18
1
H5
1
4
2
1
3
6
1
32
2
7
32
16
3 3
41
4
R1 R2 R3 R4
R5 R6 R7 R8
R9 R10
R14R13R12R11
R15 H16
1R16 R17 R18
5
H3
Link with distance 1Link on a SBT tree rooted at R3
2
Ri Router H1~H8 Anycast packet sources G(A) = {H15, H16, H17, H18}Hi Host
Dest Dist hopA, H15
A, H16
A, H17
A, H18
6 R9
7 R9
14 R10
9 R10
Routing table at R6
*
Dest Dist hopA, H15
A, H16
A, H17
A, H18
5 R11
6 R12
13 R7
8 R7
Routing table at R9
*
Dest Dist hopA, H15
A, H16
A, H17
A, H18
8 R9
9 R9
10 R10
5 R10
Routing table at R7
Dest Dist hopA, H15
A, H16
A, H17
A, H18
9 R6
10 R6
11 R7
6 R7
Routing table at R3
*
*
*
**
* *
*
![Page 19: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/19.jpg)
The CBT Method
CBT order: X>CBTY if X is the father of Y on the core-based tree.
For an anycast packet: at the on-CBT router, it is routed following CBT order. at the off-CBT router, it is routed following SSP order
![Page 20: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/20.jpg)
The CBT Method
1
1 1 11
H1
1H2
1
H6
1H7
1
H8
1
H15
1
H4
1
H17
1H18
1
H5
1
4
2
1
3
6
1
32
2
7
32
16
3 3
41
4
R1 R2 R3 R4
R5 R6 R7 R8
R9 R10
R14R13R12R11
R15 H16
1R16 R17 R18
5
H3
Ri Router H1~H8 Anycast packet sources G(A) = {H15, H16, H17, H18}Hi Host
Dest Dist hopA, H15
A, H16
A, H17
A, H18
10 R7
9 R12
8 R13
3 R14
Routing table at R10
Dest Dist hopA, H15
A, H16
A, H17
A, H18
8 R9
9 R9
10 R10
5 R10
Routing table at R7
Dest Dist hopA, H15
A, H16
A, H17
A, H18
5 R11
6 R12
13 R7
8 R7
Routing table at R9
Dest Dist hopA, H15
A, H16
A, H17
A, H18
7 R9
4 R16
13 R10
8 R10
Routing table at R12
**
*
*
**
*
*
*
Link with distance 1Link on a CBT tree rooted at R7
2Link on the truncated DBTs
2
![Page 21: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/21.jpg)
Summary of Router-ordering Methods
The number of loop-free pathsSSPF < MIN_D < SBT = CBT
Overhead in terms of the memory storageSSPF < MIN_D < CBT << SBT
![Page 22: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/22.jpg)
Multiple Path Selection
Weight Random Selection (WRS) A path with high weight has higher probability to
be selected than the path with low weight. A rule of thumb
the weight should be inversely proportionally to the distance of the route, i.e, W~ 1/D
K
j
r
j
r
ii
D
DW
1
)1
(
)1
(
• when r = 0, Wi = 1/K• when r = , Wi = 1/Di if Di < Dj for any j, o.w. 0
![Page 23: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/23.jpg)
Weight Assignment
Consider R12 with r=1 W15 = 0. 24, W16 = 0.42, W17 = 0.13, and W18 = 0.21
Dest Dist hopA, H15
A, H16
A, H17
A, H18
10 R7
9 R12
8 R13
3 R14
Routing table at R10
Dest Dist hopA, H15
A, H16
A, H17
A, H18
6 R9
7 R9
14 R10
9 R10
Routing table at R6
Dest Dist hopA, H15
A, H16
A, H17
A, H18
5 R11
6 R12
13 R7
8 R7
Routing table at R9
Dest Dist hopA, H15
A, H16
A, H17
A, H18
7 R9
4 R16
13 R10
8 R10
Routing table at R12
* **
**
*
*
*
1
1 1 11
H1
1H2
1
H6
1H7
1
H8
1
H15
1
H4
1
H17
1H18
1
H5
1
4
2
1
3
6
1
32
2
7
32
16
3 3
41
4
R1 R2 R3 R4
R5 R6 R7 R8
R9 R10
R14R13R12R11
R15 H16
1R16 R17 R18
5
H3
Link with distance 1 Link on a general graph 2
7 7 6 6
6 6 5 5
1
5 3
4 22 4
1 11
H1~H8 Anycast packet sources G(A) = {H15, H16, H17, H18}HiRi Router with MIN-D Host2
![Page 24: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/24.jpg)
Performance Evaluation
Metrics: the average end-to-end delay Evaluated systems: <α, β, γ>
α {SSP, MIN_D, SBT, CBT} β {fixed, adaptive} γ {independent, flow}
Network: ARPANET, one group with 5 members
Traffic: Poisson
![Page 25: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/25.jpg)
(a) <*, Fixed, Non-Flow>
0.00 0.50 1.00 1.50 2.00Throughput
0.000
0.005
0.010
0.015
0.020
0.025
0.030
0.035
0.040SSPGOCBTSBTDOR
0.00 0.50 1.00 1.50 2.00Throughput
0.000
0.005
0.010
0.015
0.020
0.025
0.030
0.035
0.040SSPMIN-DCBTSBTDOR
(b) <*, Fixed, Flow>
0.00 0.50 1.00 1.50 2.00Throughput
0.000
0.005
0.010
0.015
0.020
0.025
0.030
0.035
0.040SSPMIN-DCBTSBTDOR
0.00 0.50 1.00 1.50 2.00
Throughput
0.000
0.005
0.010
0.015
0.020
0.025
0.030
0.035
0.040SSPMIN-DCBTSBTDOR
(c) <*, Adaptive, Non-Flow> (d) <*, Adaptive, Flow>
Evaluation Results
![Page 26: CIS679: Anycast](https://reader036.fdocuments.us/reader036/viewer/2022081505/56815302550346895dc1242a/html5/thumbnails/26.jpg)
Conclusion
Anycast motivation Anycast address Anycast membership management Anycast routing
Multi-routing • loop-free routing methods• multiple path selection