PlanetLab Inspiration and Partner for ENGINE Jiří Navrátil jiri@cesnet.cz Talk overview • First set of questions • What is the relation ENGINE and PlanetLab • Convergence of ENGINE and NREN infrastructure • Second set of questions • How to understand ENGINE a new sort of testbed GENI starting in the US and Europe My impression of it and first set of questions • Too general picture to understand it • What is main difference ENGINE and the other testbeds ? • Who are the main users and main purpose of ENGINE ? if computer scientists, they are sitting in the University campuses • How to connect them into the ENGINE ? If new Network applications Who are its users, who provide the servers ? • Why the principles used in PlanetLab are the key points for GENI ? PlanetLab main goals • PlanetLab is concorcium of the Universities and academic institutions established in 2002 by 3 US universities (UC Berkeley, UofWashington, and Princeton University) with the goals which can be shortly described in three main points • to provide infrastructure for planetary scale experiments with networking services • to provide platform for new novel services with real users • to catalyze the evolution of the Internet to new service-oriented architecture App - A App - B App - C App - D Services/Applications and Node/Slice in Virtual Lab N1 N3 N8 N7 N2 N4 N9 N6 N5 On each node can run more users (slices) Each of them is running in own virtual system One user can run more applications Node SLICE App1 App2 App3 The layers have own addresses for objects, own routing h App. Layer 1 c f b a g e d App. Layer 2 p1 p999 p100 App. Layer 3 p2 p111 axel@cern.ch ed@rice.edu marie@volny.cz tom@stanford.edu jn@.cvut.cz 11e0fe jiri@cesnet.cz ... 11e0fe App. Layer 99 f11e00 c1e0fe 11e0fe 11e0fe 81e0fe 11e0fe abe0fe 2122fe a1e0fe 41e2f0 71721e bbe0fe Not only PlanetLab but also other applications as Skype, Napster, GNet,… From: David Alderson CALTECH , NSF Find meeting, Dec. 2005 PASTRY (DHT) function Lookup (key) $pdata= $persons{“joe”} key value index jiri 1 2 joe 121 224 -1 RNode 0 92,168, $3900 RNode 88,180, $8880 = 16 mil. objects d471f1 key c2d0 tom jerry 991 82,181, $1900 992 80,180, $8900 d46a1c d467c4 d462ba Range of local keys (c2d1 – 32aaff) Hash Table d4213f How to address objects RNode Local Range ..67c5 to ..71f1 Not forwarding ! 32ab00 Forwarding to d4xxxx $key=“dabcf2” $ip = $address {$key} key index 1faab1 65a1fc dabcf0 dabcf1 dabcf2 1 2 Forwarding to dxxxxx ip 148.33.244.1 121 Lookup (d46a1c) 128.128.22.11 990 192.161.1.12 991 192.161.1.12 992 192.12.12.121 d13da3 RNode RNode from RN with KEY: 65a1fc In Pastry max key=ffff ffff ffff ffff SOA Service-Oriented Architecture Application L a y e r INFRASTRUCTURE c b App. Layer a B IP layer (path capacity) C A SOA Service-Oriented Architecture Application L a y e r INFRASTRUCTURE c b Layer 3 a Reality is determined by BGP B IP layer AS AS 112 AS 333 AS 332 C A AS 111 a1e0fe AS 6732 B AS IP layer A Rx Router with different routing strategy for different applications or several virtual routers in one HW CRS-1 or GPBS or ? Rx Rx IP layer Rx Rx Rx AS Rx Rx Rx Convergence of ENGINE and PlaneLab ENGINE Potential PoPs and Links NORDUnet SUnet UKERNA UK DK NLR DFN PL PSNC RENATER FR DE CZ ES RedIRIS CH SWITCH & CERN Wave or link color codes: Cisco CRS-1 router Open-source router 40G wave 10GE wave 1GE link Wave or link on GEANT2 fiber Wave or link on cross-border fiber Wave or link on country NRENs Wave or link as managed service CESNET ENGINE (two sides of testbed) ENGINE scientific Network engineering The ENGINE and NREN integration (connections, VLAN, users, etc.) GN2 NREN ENGINE testbed PL DE VR u3 UNI-1 u4 w1 direct vlan u1 u2 CESNET backbone NREN CZ CH w3 UNI-2 NREN w2 Users resources Green – part of ENGINE testbed workstations User’s machines u5 u6 via workstation ENGINE users (connections, VLAN, etc.) u4 ENGINE testbed PL u1 u2 u1, u2, w3 directly on ENGINE-VLAN u4,u5 via w3 DE VR CZ CH w3 u5 Users resources NREN infrastructure Virtual part of ENGINE testbed workstations User’s machines ENGINE virtual environment (connections, VLAN, vAS, IPaddresses, etc.) client | peer u4 u1 VR u2 client | peer u1, u2, w3 directly on ENGINE-VLAN u4,u5 via w3 NREN-CZ VR VR CZ w3 with special service u5 vAS1 vAS2 vAS3 IP range IP range IP range Users resources Green – part of ENGINE testbed workstations User’s machines ENGINE users and applications u44 Cheap and flexible infrastructure for many scientific users and different network applications u43 NREN PL u1 VR u11 u2 DE u3 VR VR CH u21 u4 u5 CZ VR u22 Ingres WS1 NREN Ingres WS2 u6 u7 NREN Ingres WS3 Ingres WS4 u35 u33 u34 u1, u2 .u21,u22 Ingres WS u4,u6,u7,… directly on ENGINE-VLAN connection via LAN or internet ENGINE users and applications u44 Cheap and flexible infrastructure u43 for many scientific users and wide spectrum of network applications NREN PL u1 VR u11 u2 PLbws DE u3 VR VR PLbws CH u21 PLbws u4 u5 CZ VR u22 Ingres WS1 NREN Ingres WS2 u6 u7 NREN Ingres WS3 Ingres WS4 u35 u33 u34 u1, u2 .u21,u22 Ingres WS u4,u6,u7,… directly on ENGINE-VLAN connection via LAN or internet What type of users and applications can utilize this architecture ? • NREN itself ? YES for Network engineering • ordinary Internet users ? Why ? • Researchers and research teams ? Yes but who is ready ? (HW, SW, people) • Modern network applications Yes, they are ready in PlanetLab ! PlanetLab in frame of GREN (Global Research and Educational Networks) Existing tools and network applications can be re-implemented or extended into new architecture ! • Peer-to-Peer Systems (DHT Distributed Hash Table) CAN, Chord, Pastry, Tapestry (building routing tables adaptively, automatic reconfiguring, using effective algorithms) • Systems using effectively whole available infrastructure CDN – Content Distributed Network Replication and other systems based on “Behive” principles with O(1) lookup, Load peak multiplexing http://coblitz.codeen.org:3125/http://ephyra.cvut.cz/links/tmp/FLOWS/CVUT/RAW/rawflow.02-15-2006.5 In internet all peers are connected (logical full mesh) Can users utilize all infrastructure effectively? BitTorrent Seed node Seed node distribute file into all other nodes in the network with active engage of all nodes and segments ENGINE (NE - second side of testbed) ENGINE scientific Network engineering (Heavy Commercial solution) TOO STATIC Simple virtual solution Fully meshed backbone with service shared virtual or optical l paths Simple routing Load balancing Fast level of resilience Easy Plug-in ENGINE future NGI backbone ? Similar to the idea in the project “Millions Node access Network” H. Zhang et all in http://100x100network.org NRENs From: GENI backbone working group, Thank You for your attention Questions ?