22
Update() Proposal Jonathon Duerig, Robert Ricci

Update() Proposal

  • Upload
    eden

  • View
    36

  • Download
    0

Embed Size (px)

DESCRIPTION

Update() Proposal. Jonathon Duerig , Robert Ricci. Goal. Allow Experimenters to Modify Existing Slivers. Overview. New API Methods Update() Cancel() New Allocation State geni_allocating. Current State Machine. Allocate(). Provision(). g eni _ unallocated. g eni _ allocated. - PowerPoint PPT Presentation

Citation preview

Page 1: Update() Proposal

Update() Proposal

Jonathon Duerig, Robert Ricci

Page 2: Update() Proposal

Goal

• Allow Experimenters to Modify Existing Slivers

Page 3: Update() Proposal

Overview

• New API Methods– Update()– Cancel()

• New Allocation State– geni_allocating

Page 4: Update() Proposal

Current State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

Delete()

Renew() Renew()

Page 5: Update() Proposal

Update()

• Parameters– Urns -- List of slivers to modify– Rspec -- Complete request specification for all

slivers included in the urns list• Changes user allocation, not provisioning– Existing sliver provisioning is unchanged

Page 6: Update() Proposal

State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

Delete() Renew() Renew()

geni_updating

Renew()

Update()

Page 7: Update() Proposal

State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

geni_updating

Update()

Page 8: Update() Proposal

Cancel()

• Cancel an allocation• Returns sliver to previous state• Provisioned slivers not perturbed

Page 9: Update() Proposal

State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

geni_updating

Update()

Cancel() Cancel()

Page 10: Update() Proposal

Provision()

• Implements an allocation• Modifies sliver provisioning

Page 11: Update() Proposal

State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

geni_updating

Update()

Cancel() Cancel()

Provision()

Page 12: Update() Proposal

UPDATE() RSPECS

Page 13: Update() Proposal

Update() for modify

• Urns: sliver+35, sliver+36<rspec>

<node sliver_id=“sliver+35” …>…</node><node …>…</node>

</rspec>

Page 14: Update() Proposal

State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

geni_updating

Update()

Cancel() Cancel()

Provision()

Page 15: Update() Proposal

Update() for create

• Urns: sliver+35, sliver+36<rspec>

<node sliver_id=“sliver+35” …>…</node><node …>…</node>

</rspec>

Page 16: Update() Proposal

State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

Delete()

geni_updating

Update()

Cancel() Cancel()

Provision()

Update()

Page 17: Update() Proposal

Update() for delete

• Urns: sliver+35, sliver+36<rspec>

<node sliver_id=“sliver+35” …>…</node><node …>…</node>

</rspec>

Page 18: Update() Proposal

State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

geni_updating

Update()

Cancel() Cancel()

Provision()

Provision()

Update()

Page 19: Update() Proposal

Update() Allocations

• Modifies allocations– geni_allocated– geni_updating

• Slivers remain in same state• Attached to modified allocation

Page 20: Update() Proposal

State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

Update()

geni_updating

Update()

Update()

Cancel() Cancel()

Provision()

Provision()

Update()

Page 21: Update() Proposal

State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

Update()

geni_updating

Update()

Update()

Cancel() Cancel()

Provision()

Provision()

Update()

Page 22: Update() Proposal

State Machine

geni_unallocated

geni_allocated

geni_provisioned

Allocate() Provision()

Delete() Renew()Update()

Renew()

geni_updating

Renew()Update()

Update()

Cancel() Cancel()

Provision()

Provision()

Update()