Stitching: the ORCA View GEC10 Stitching: the ORCA View Jeff Chase Duke University
How to join slivers/slices across different aggregates end-to-end? Stitching How to join slivers/slices across different aggregates end-to-end? Common labels at junction points How to connect them? AMs negotiate? CH or SM coordinate? Isolation, security? Who can reason about overall topology? Chase GEC6 CF
Point 1. Stitching is more than network topology.
A Broad(er?) View of Stitching L2 VLAN stitching, etc. Stitching within the guest/tenant/experiment Sliver “contextualization” and logical client/server linkages, worker/master linkages, etc. Multi-layer adaptations Dependencies of cross-layer configuration... …down to “where the bits meet the glass”. OpenFlow? Not limited to topologically adjacent AMs.
Point 2. What is common: produce/consume labels (tags) along the arcs of a DAG of configuration steps spanning multiple aggregates. Except that does not support tag negotiation…
Sequenced Stitching Propagate VLAN tags to successors RENCI VMs BEN Propagate VLAN tags to successors As configuration properties Under SM control Secure stitching? UNC VMs NLR Duke Net Duke VMs Leases arranged in a partial order Stitching tokens pass “down” the DAG. Dependencies inferred from topology/representations Chase GEC7 Plenary
A Closer Look: Instantiation VLAN tag through DukeNet to BEN Request to ViSE immediately Start Duke Eucalyptus when DukeNet VLAN tag is known Request NLR/Sherpa link to Starlight immediately When NLR/Sherpa path is ready, stitch one end to ViSE through Starlight… …stand up BEN path and stitch to Sherpa path at one end, and to Duke Eucalyptus VM on the other. Chase GEC7 Plenary
Point 3. Infer the DAG from declarative representations of substrates and slices.
Representing Complex Substrates Multiple layers Topology Location Dynamic state Cyberphysical What does CH know? Declarative vs. code Chase GEC6 CF
Point 4. ORCA has a general stitching architecture that matches the substance of this proposal (3a). Except that ORCA does not do tag negotiation…
“Stitching” in ORCA RENCI/GENI clearinghouse Broker Engine SM tickets leases Multiple aggregate managers/authorities Exchange of labels, tokens, configuration attributes etc. through SM. Chase GEC3 Plenary
“Stitching” in ORCA SM Topology info Labels Labels RENCI/GENI clearinghouse Broker Engine Topology info SM Labels Labels Multiple aggregate managers/authorities Exchange of labels, tokens, configuration attributes etc. through SM. Chase GEC3 Plenary
Original source: USENIX 2006 [Irwin et. al.] From the “ORCA book” Original source: USENIX 2006 [Irwin et. al.] RENCI plugins infer the DAGs from NDL-OWL specs. (Yufeng Xin)
ORCA Actor Roles For GENI the ORCA SMs run as hosted services. ORCA Actors Broker (CH) Operators Web portal request Slice Manager (SM) Java ticket delegate Web portal Web portal XML – RPC redeem Authority/AM Users and tools lease For GENI the ORCA SMs run as hosted services. Chase GEC3 Plenary
Broker
Conclusion We have done a lot of work, and it works, and we’d like to not have to redo it unless it gets better. Tom Lehman has also done a lot of work, and is an expert, and has produced a solid and impressive proposal. We want to “play well with others”. We are concerned about adding new boxes to our architecture or barnacles on our specs. “Neither more nor less than are required.” NDL-OWL is good. SM is required. Brokers help. To discuss: security, tag negotiation, multipass, parallelism.