Sponsored by the National Science Foundation GENI Aggregate Manager API Tom Mitchell March 16, 2010
Sponsored by the National Science Foundation 2 February 10, 2010 GENI Aggregate Manager Spiral 2 Goals Allow GENI Aggregates to affiliate with GENI control frameworks through a common API Enable researcher access to conforming GENI Aggregates through two existing control frameworks: PlanetLab and ProtoGENI Integration with other GENI control frameworks will occur in Spiral 3 Implement three kinds of GENI Aggregate Managers: PlanetLab nodes, ProtoGENI clusters and OpenFlow switches Demonstrate a Slice containing PlanetLab, ProtoGENI, and OpenFlow resources at GEC 9
Sponsored by the National Science Foundation 3 February 10, 2010 What is an Aggregate? An aggregate is a set of managed resources (computers, virtual machines, wireless devices, network switches, VLANs, tunnels, etc.) An aggregate affiliates with a control framework An aggregate participates in a web of trust
Sponsored by the National Science Foundation 4 February 10, 2010 What is a Control Framework? A Control Framework consists of a Registry and a Slice Authority Control Frameworks are trust anchors Both PlanetLab and ProtoGENI are examples of GENI Control Frameworks PlanetLab and ProtoGENI Control Frameworks will support GENI Aggregates Spiral 2 Goal: GENI Aggregates will be able to affiliate with either the PlanetLab Control Framework or the ProtoGENI Control Framework or both
Sponsored by the National Science Foundation 5 February 10, 2010 What is a Client? A client is a researcher tool A client provides access to a Control Framework, and thus to a set of Aggregates A client helps a researcher configure, start, monitor and stop a slice Example clients include GUSH, sfi, and the ProtoGENI flash client
Sponsored by the National Science Foundation 6 February 10, 2010 What are Slivers and Slices? A Sliver is a set of resources allocated to a slice on a single aggregate A Slice is a set of slivers running on a set of aggregates
Sponsored by the National Science Foundation 7 February 10, 2010 GENI Control Framework Overview Client Control Framework Control Framework Aggregate
Sponsored by the National Science Foundation 8 February 10, 2010 GENI Control Framework: Slivers Client Control Framework Control Framework Aggregate = sliver
Sponsored by the National Science Foundation 9 February 10, 2010 Aggregate / Control Framework Operations Control Framework Control Framework Aggregate GetVersion Shutdown GetVersion Resolve
Sponsored by the National Science Foundation 10 February 10, 2010 Client / Aggregate Operations Aggregate GetVersion ListResources CreateSliver DeleteSliver SliverStatus RenewSliver Shutdown Client
Sponsored by the National Science Foundation 11 February 10, 2010 Client / Control Framework Communications In Spiral 2: Clients use an API that is specific to a Control Framework Clients create new slices via the Control Framework Clients receive slice credentials from the Control Framework Client Control Framework Control Framework
Sponsored by the National Science Foundation 12 February 10, 2010 Things this API is not addressing RSPECs –The API is intentionally agnostic to RSPECs –This puts extra burden on clients to understand a heterogeneous set Stitching –The API is intentionally agnostic to stitching –The API is intended to allow experimentation with stitching approaches Scheduling –Time is buried in RSPECs –No reservations –Anticipated in a future revision
Sponsored by the National Science Foundation 13 February 10, 2010 Where are we? Draft API published – – Gathering comments and feedback now Implementation phase expected between GEC 7 and GEC 8 Demonstration at GEC 9 News and updates via Control Framework Working Group mailing list
Sponsored by the National Science Foundation 14 February 10, 2010 Summary This is not the final API The API is intentionally minimal This is a starting point for adding required capabilities We expect the API to grow and change over time