=== Stitching === ==== Organizers ==== Tom Lehman, ''USC/ISI'' Aaron Helsinger, ''GPO/BBN'' ==== Time ==== Wed 3:30 - 5:30 pm ==== Dial In ==== 866-453-5550 Participant pin: 6513886# ==== Description ==== A key architectural question for GENI has been how to connect the resources provided by multiple aggregates into a coherent network. The key objective is to enable automated and realtime network stitching for slices which span multiple aggregates. Connecting resources across aggregates remains a significant challenge and requirement for GENI. During this meeting, we will demonstrate a common RSpec element to describe stitching resources, and progress on dynamic VLAN instantiation between ProtoGENI and MAX via ION. We will then try to agree on the schema for that RSpec element, and then discuss APIs for coordinating network stitching across GENI aggregates. ==== Agenda ==== * Introduction - Aaron Helsinger (10 minutes) [attachment:"GENI Network Stitching-Intro.pdf" slides] * Stitching Architecture Review - Tom Lehman (15 minutes) [attachment:"stitching-session-gec11-lehman.pdf" slides] * Proposed Stitching Schema - Tom Lehman (15 minutes) * Demonstration - Aaron Helsinger, Chris Benninger, et al (15 minutes) [attachment:Stitching-demo.pdf slides] * Discuss and vote on stitching schema - All (10 minutes) * Stitching APIs - Tom Lehman (20 minutes) * Variations * Tree mode * Chain mode * Discussion - All (25 minutes) * Conclusion - Aaron Helsinger (10 minutes) [attachment:Stitching-summary.pdf slides] ==== Meeting Summary ==== '''Tom Lehman''' reviewed the agreed-upon GENI stitching architecture: - Several functions, to be implemented in various locations or skipped in certain scenarios : - Static topology collection - Path computation - Workflow/coordination - A common schema for describing connections between aggregates, and the capabilities of those connections. - AM API revisions to support 'chain' (AM to AM) mode, and negotiation. '''The stitching schema''' - Based on and interoperable with IDC / OSCARS / perfSonar Topology service - AMs advertise connection points - Requests and manifests list hop by hop paths - http://hpn.east.isi.edu/rspec/ext/stitch/0.1/stitch-schema.xsd - Follow links in Background Reading for examples and more information '''Aaron Helsinger''' and '''Chris Benninger''' did a demo of a tree-mode (client-driven) VLAN stitching from ProtoGENI (using the schema) across ION, to MAX. The script calculates dependencies and orders its calls appropriately. '''Tom''' briefly discussed some remaining points to cover - Negotiation: How do 2 Aggregates negotiation a common stitching mechanism and configuration? IE, how do they pick a VLAN tag? - Proposal: an AM API call that reserves a resource without instantiating it, returning the reserved resource and the other options that are available - Chain mode: need an aggregate to aggregate call - Note authorization issues ===== Comments and discussion points ===== - Not all architecture components are required. - AMs should be able to accept the complete request RSpec at each AM, allowing them to use extra information or ignore it. - The schema cannot refer to existing RFCs directly, due to some GENI customization (like identifier format). - GRE tunnels and other connection technologies must follow. - !OpenFlow support is not there - yet. - Multipoint paths are not supported in the underlying services yet. When DCN/OSCARS supports that, we can. But with a bunch of pairwise paths you can still create complex topologies. - ProtoGENI implementation of the schema is incomplete. - Rob Ricci expressed an interest in a production ION aggregate to encourage experiments to use his ION connections. - There was vigorous discussion about the feasibility and difficulties in having such a real ION aggregate (political, policy, time, money, more than technical). - How does ION track who is reserving the circuit? - Will policy allow any GENI experimenter to reserve any circuits? - Are there sufficient connections through regional networks to make this possible in general? - This discussion of stitching does not cover: - node-to-the-first-switch or other connections that are technology specific or internal to an AM, - multi layer dependencies, or - application layer dependencies (client/server). - Orca has a notion of dependencies that does cover these more general cases. ==== Possible Next steps ==== - Make sample stitching client code available - Complete schema implementation at ProtoGENI - Discuss and agree on APIs to support negotiation (eg of VLAN tags) - Investigate policy considerations in having a real ION Aggregate Manager - Prototype topology service based on perfSonar topology service - Prototype path computation service based on IDC computation service - Discuss and agree on APIs to support chain/AM-to-AM mode ==== Background Reading ==== * [wiki:GeniNetworkStitching Stitching Design Activities] * [http://geni.maxgigapop.net/twiki/bin/view/GENI/NetworkStitching Stitching Architecture as adopted at GEC10] * [https://geni.maxgigapop.net/twiki/bin/view/GENI/NetworkStitchingRpecsandWorkFlow Proposed Stitching schema and workflow] * [http://geni.maxgigapop.net/twiki/bin/view/GENI/NetworkStitchingWorkFlowExamples Stitching Workflow examples]