GENI Network StitchingOverview and Status
GEC 15Houston, Texas
October 23, 2012
Tom LehmanXi Yang
University of MarylandMid-Atlantic Crossroads (MAX)
Stitching Architecture Objectives
• Inter-Aggregate Network Stitching• Enable the provision of inter-aggregate
network connections as part of multi-aggregate slice instantiations
• Stitching based on Layer2 (Ethernet VLANs) to start
• Integrate stitching into standard GENI AM API processes/functions
• Leverage deployed dynamic network services/infrastructure where it helps GENI
GENI Network Stitching Architecture
Stitching Architecture Components
• Stitching Extension for RSpecs• Stitching Topology Service• Stitching Computation Service (with workflow
rule generation)• Workflow Execution stitching library (for
integration into clients such as OMNI and others)
• GENI AM APIv3 Features to facilitate Stitching with negotiation
Stitching Extension Status• Mechanism for Advertisement RSpecs to define and
describe inter-aggregate touch points • Advertisement RSpecs contain mostly static data, e.g.,10G physical
inter-connect with vlans 2050-2099 reserved for GENI use• Mechanism for Request RSpecs and Manifest RSpecs to
define slice specific stitching details• A set of stitching extension construction rules are
available• describes how to take an Advertisement RSpec and generate a
Stitching extension.• describes how to construct a Request RSpec with stitching
extension• More details here: geni.maxgigapop.net Network Stitching
Stitching Extension StatusImplementation Status
• Implemented by ProtoGENI AM (available for all Emulab based aggregates)
• Implemented by MAX AM (instances also being used for experimental Internet2 ION and LONI Regional Network AM)
• Internet2 SDN/OpenFlow AM also planning to implement
• ExoGENI AM also planning to implement• Current stitching extension is version is v0.1• v0.2 ready for discussion. adds an aggregatecapabilities
element to allow capabilities like vlanproducer/vlanconsumer to be expressed
http://hpn.east.isi.edu/rspec/ext/stitch/0.1/stitch-schema.xsdhttp://hpn.east.isi.edu/rspec/ext/stitch/0.2-tmp/stitch-schema.xsd*v0.2 element
note: these schemas will move to geni.net soon
aggregate
aggregatetypestitchingmode (chain|tree|both)scheduledservicesnegotiatedservicesaggregatecapabilities*sequence of {node, port, link}
stitching
path
globalIdsequence of {hop}
hop
type (strict | loose)choices {aggregate, node, port, link}nextHoplinkportnode
technology specific details here
Stitching Extension Schema
Topology Service Status• Stitching Topology Service
• collects Advertisement RSPECs from all GENI AMs • Allows the building of larger views (global if desired) of inter-
connected GENI AM space• will be working with GEMINI project to build Stitching
Topology Functionality into their UNIS based Topology Service• will also integrate topology data collection and views across
the dynamic networking/perfsonar space to enable GENI stitching to better leverage these capabilities
• Implementation Status• currently refining requirements and evaluating GEMINI
topology service• some initial implementation work underway by GEMINI
project to collect AM Advertisement RSpecs
Computation Service StatusWorkflow Execution Status
• Stitching Computation Service • use Topology Service information to perform slice
instantiation specific computations• includes a workflow rule generation function to facilitate use
by clients such as OMNI• evaluating existing computation software to determine best
starting point (ARCHSTONE, OSCARS, OESS)
• Stitching Workflow Execution• uses output from computation service and executes the
workflow steps to accomplish network stitching. • will be integrated into Omni tool as a stitching library• similar integration for other client tools such as Flack and GENI
Portal also possible
GENI AM APIv3 – Stitching Negotiation• GENI AM APIv3
• changes AM interaction from "CreateSliver" to "Allocate, Provision" paradigm (similar to the GetTicket, RedeemTicket model)
• when trying to find compatible resources (in this case bandwidth and vlans) across multiple independent aggregates, there is value in being able to "negotiate"
• we plan to incorporate this "negotiation" feature in to future stitching operations. there a few open issues on this topic.
• more information on this concept is available here: geni.maxgigapop.net Network Stitching
• Current Stitching implementations do not require this negotiation feature because we can intelligently utilize the various aggregate capabilities such as VLAN translation when sequencing Sliver requests.
Stitching Architecture Objectives
• Inter-Aggregate Network Stitching• Enable the provision of inter-aggregate
network connections as part of multi-aggregate slice instantiations
• Stitching based on Layer2 (Ethernet VLANs) to start
• Integrate stitching into standard GENI AM API processes/functions
• Leverage deployed dynamic network services/infrastructure where it helps GENI
• GENI Resources will be connected to a variety of wide area, regional, and campus infrastructures
• Some of these infrastructures will have GENI AMs, some will not
GENI Network Stitching Environment
• Stitching should be able to accommodate the unstructured placement of GENI resources in this ecosystem
Existing Dynamic Network Services/Infrastructure
• Internet2's Advanced Layer2 Network Services• ION Service• SDN/OpenFlow Network
• Both of these provide the Dynamic Circuit Network (DCN) service today• Ethernet Virtual Private Line (EVPL) (multi-domain,
schedulable)• Internet2 is developing a GENI AM for the SDN/OpenFlow
network. Additional services will be available once this GENI AM implementation is complete.
• Internet2 will run a GENI AM to "cover" ION on a trial basis to facilitate GENI Stitching• based on the MAX Regional Network GENI AM• will allow for immediate GENI stitching across ION and
SDN/OpenFlow Network
• Regional and Campus Networks• DCN Services as part of DYNES project or other
initiatives• Static VLAN services
•Exchange Points such as MANLAN, WIX, TransPAC, others
• DCN Services• Static VLAN services •Other Networks such such as ESnet SDN,
RNP (Brazil), JGN2 (Japan), USLHCNet•DCN Services
Existing Dynamic Network Services/Infrastructure
• Initial implementations for the following available by GEC16• ProtoGENI/InstaGENI, MAX, and ION AMs using stitching
extension v2• Topology Service (working with GEMINI project)• Computation Service• Omni Stitching Library
• After GEC16 • AMs using GENI AM APIv3 for negotiation• GENI Portal stitching incorporation
• Other issues to discuss• shared vlan extension, vlanproducer/vlanconsumer
use, negotiation with GENI AM APIv3
Stitching Objectives, Plans, Schedules
Thank you
Questions or Comments?
Stitching Topology Examples
Stitching Topology Examples
Advertisement (aggregate element) – Graph View
Request (path element) – Graph View
• Hops can be loose or strict• Hops can be specified at the aggregate, node,
port, or link level• Manifests will look similar to Requests
(annotated with instantiated info)
Request RSpec Example