silo: scalable internet with local addressing
TRANSCRIPT
SILOScalable Internet with Local Addressing
& Orthogonal Routing
Dae Young KIMCNU / Kyoto [email protected]
Key Words
• Scalable
• recursive; inwards & outwards
• Local
• to a given autonomous site
• Orthogonal
• interior opaque to exterior
Architecture
• Internet: a network of autonomous sites
• Site: a collection of nodes
• Site named by a global site address
• Node named by a local node address
• Exterior routing on site addresses
• Interior routing on node addresses
Global Internet = {sites}
1
4
3
2
25
15
41
37
22
11
11
site = {nodes} = {subnets}
1 2
3
4
5
6
91
94
97
101
96
Scope
subnet
site site
mac addr subnet
subnet subnet subnet
node nameglobal
site addr
subnet addr
node addr site
APP
TP/IP
NameS
SiteISPb
ISPc
{addr, site}
name
G
Gnodeaddr
name1
2
3
66’
7
ISPa
iAS6’’
4
5
{addr, site}
Operational Overview
Routing
• Interior & Exterior routings orthogonal
• Interior routing on node address
• Exterior routing on site address
• Sites equivalent to network nodes
• Any routing protocols possible
Exterior Routing
1
2
3
4
Flat Exterior Routing
1
3
4
2
25
15
41
37
22
11
37
25
15
22
1
3
2
1
1
11
41 3
dst:41
2
2
1
11
11
Virtual Exterior Routing
1
4
3
2
25
15
41
37
22
11
1111 12
13
21 41
42
Flat Interior Routing
1 2
3
4
5
6
91
94
97
101
96
1 1
12
2
91
91
94
97
97
-
96
96
94
-
1
2
3
4
5
6 94 94
1
2
3
4
5
91
91
94
97
97 97
-
6 94 -
91
91
94
97
97
96
-
-
94
96
1
2
3
4
5
6 94 94
91
97
91
Flat Interior Routing
1 2
3
4
56
91
94
97
101
96
1 1
12
2
91
91
94
97
97
-
96
96
94
-
1
2
3
4
5
6 94 94
1
2
3
4
5
91
91
94
97
97 97
-
6 94 -
91
91
94
97
97
96
-
-
94
96
1
2
3
4
5
6 94 94
91
97
91
91
91
94
97
97
96
-
-
94
96
1
2
3
4
5
6 94 94
91
91
94
97
97
-
96
96
94
-
1
2
3
4
5
6 94 94
1
2
3
4
5
91
91
94
97
97
97
97
-
91
6 94 -
91
Flat Interior Routing
1 2
3
4
5
91
94
97
101
96
1 1
12
26
{94:-6} {94:-6}
{91:+6}
{91:+6}
Flat Interior Routing
1 2
3
4
5
91
94
97
101
96
1 1
12
26
91
91
94
97
97
-
96
96
94
-
1
2
3
4
5
6 91 -
91
91
94
97
97
97
97
-
91
1
2
3
4
5
6 91 91
91
91
91
94
97
97
96
-
-
94
96
1
2
3
4
5
6 91 96
Mapped Interior Routing
1 2
3
4
5
6
91
94
97
101
96
1 1
12
2
1
2
3
4
5
91
91
94
97
97
6 94
mapper
{addr, subnet}= {addr, router}
Mapped Interior Routing
1 2
3
4
56
91
94
97
101
96
1 1
12
2
1
2
3
4
5
91
91
94
97
97
6 94
mapper
{addr, subnet}= {addr, router}
3
4
5
6
1 2
3
4
5
91
94
97
101
96
1 1
12
26
{94:-6}
{91:+6}
1
2
3
4
5
91
91
94
97
97
6 94
mapper
{addr, subnet}= {addr, router}
Mapped Interior Routing
1 2
3
4
5
91
94
97
101
96
1 1
12
26
1
2
3
4
5
6
mapper 91
91
94
97
97
91
{addr, subnet}= {addr, router}
Mapped Interior Routing
Implementation Choices
• IPv4 (or IPv6 address) for node address
• AS# for site address
• DNS extended for NameS
• OSPF+ or IS-IS+ for interior routing
• BGP4+ for exterior routing
Consequences
• Recursively scalable without bound
• No address depletion, No governance
• No routing table explosion
• Inherent fast host / nw mobility by routers
• Effortless ISP migration and multi-homing
• ... without resorting to ID/Loc Separation
Others
• HIP ;mobility
• Shim6 ;multi-homing
• GSE ;multi-homing
• LISP ;local & PA address
• ILNP ;global ID & Loc
• CCN ;app arch
Conclusions
• Scalable Internet
• by local addressing & orthogonal routing
• feasible and deployable
• Further works for proof of concept
Acknowledgements
• Work done during a stay at ACCMS, Kyoto University with their support.
• Profound thanks to Prof. Yasuo OKABE.
References
• RFC 1498, On the Naming and Binding of Network Destinations, J. Saltzer, 1993.
• RFC 1955, ENCAPS, B. Hinden, 1996.
• John Day, Patterns in Network Architecture, Prentice-Hall, 2008.
• Discussions at IRTF/RRG.
Appendix
Inter-Net
link
relay-node= router
stub-node= host
N & A Classics
• Name: identifier of an object (node)
• Address: locator of an object
• The two are different and distinct
• Need both to locate/identify an object
• “There’s no identifying an object without locating it, and vice-versa” - Jerry Saltzer
ID/Loc Separation?
Node ID
MAC address
Locator
LAN
Namingthe same thing
twice!
Fallacy of IP Address
BobAlice
?
?
xTo: I1
I1
I2
Name the node,not the interface!
ID == Address !
• Need only ID
• ID points to a node, not an interface.
• ID should be routable in inter-net.
• So, ID is a node address.
• Address is the right term, not ID!
Address == Name !
iPAD-dy.kr
168.188.68.120
00:25:00:21:e4:a9
name
address name
address
DNS
ARP
APP
inter-net
network
iPAD-dy
PoA
Global Name & Local AddressWhy bother keeping both global?
192.168.2.100 192.168.2.100
iPAD-dy.kr NameS iPAD-dy.jp
ASk ASj
{IPx} {IPy}
{x,y} = {4, 6}