120 likes | 193 Views
PlanetLab-Based Control Framework for GENI. Larry Peterson Princeton University. Parts List. Slice Interface - create & control slices/slivers. Registry (R) - users, slices, components, authorities - exports registry interface. Registry Interface - bind & resolve naming info.
E N D
PlanetLab-Based Control Framework for GENI Larry Peterson Princeton University
Parts List Slice Interface - create & control slices/slivers Registry (R) - users, slices, components, authorities - exports registry interface Registry Interface - bind & resolve naming info Slice Manager (SM) - creates & controls slices - exports researcher interface Management Interface - query & reboot components Aggregate Manager (AM) - responsible for a set of components - exports slice & mgmt interfaces Uber Researcher Interface - slice interface & so much more Component Manager (CM) - controls a component - exports slice & mgmt interfaces
CM AM CM CM SM R Vanilla PlanetLab User PLC …
CM AM CM CM SM R Alternative Slice Manager User Emulab PLC SM …
CM CM CM CM CM CM AM SM R Common Registry User Emulab PLC SM AM … …
SM CM CM CM AM CM CM CM AM R Multiple Aggregates User VINI PLC … …
SM SM CM CM AM CM CM CM AM CM R R Full Federation User User PLE PLC … …
About the Code svn.planet-lab.org • MyPLC distribution (set up & extend a “private planetlab”) • developer’s mailing list • browse source code : geniwrapper /plc : plc wrapper (extends PLC) • registry & slice interfaces /component : node wrapper (extends NM) • slice & mgmt interfaces /util : secure remote invocation machinery /cmdline : client tools • module documentation interface specs evolving data model for rspecs (EMF-based)
PlanetLab EcoSystem • Components & Aggregates • Support for Wireless & Disconnected Operation • PlanetBridge • OneLab (INRIA, UPMC) • Support for High-Performance • NetFPGA (Stanford) • Network Processors (WashU) • VINI Backbone • deployed on Internet2 & NLR • Telco Deployments (TP, BT, AT&T,…) • OpenFlow Enterprise (Stanford) • Cisco Service Node (Cisco) • Scaleable Clusters (HP)
EcoSystem (cont) • Federation Partners • OneLab (EU), CoreLab (JP), G-Labs (Germany) • South Korea, RedCLARA (Latin America),… • User-Level Services • Emulab (Utah) • Stork/Raven (Arizona) • Plush/Gush (Williams)
Engineering Decisions • PLC (aggregate) maintains all authoritative state • nodes only cache • PLC (aggregate) accumulates all resource rights • nodes redeem tickets but do not grant tickets • implements policy (best effort + select guarantees) • Tickets are idempotent • bw = 1Mbps implies absolute setting, not increment • PlanetLab O&M interface >> GENI Mgmt interface
R AM Initial Deployment User Emulab (and others) Note: What we have been calling the SM is the same as what we’re now calling the AoA = Aggregate of Aggregates. This slide tries to relate the abstract modules from the previous slides with the actual code in the geniwrapper and MyPLC. GUI PLC SM (AoA) plc wrapper Note: The Mgmt Interface (green) is not used in this example. In practice, we will ignore it for the time being, and use only PlanetLab’s “native” O&M interface. …other aggregates… PLCAPI & DB PLE PLJ VINI M-Lab GetSliver( ) still used internally. Emulab (and others) Note: No external actors directly call PLCAPI or the NM. Node …other registries… component wrapper CM Note: PLE & PLJ will have their own SM/AoA that point to PLC’s AM (or maybe they will point to PLC’s SM/AoA). NM