DRAGON Dynamic Resource Allocation via GMPLS Optical Networks API Overview Jaroslav Flidr, Peter...

7
DRAGON Dynamic Resource Allocation via GMPLS Optical Networks API Overview Jaroslav Flidr, Peter O’Neil, Chris Tracy Mid-Atlantic Crossroads

Transcript of DRAGON Dynamic Resource Allocation via GMPLS Optical Networks API Overview Jaroslav Flidr, Peter...

Page 1: DRAGON Dynamic Resource Allocation via GMPLS Optical Networks API Overview Jaroslav Flidr, Peter O’Neil, Chris Tracy Mid-Atlantic Crossroads.

DRAGONDynamic Resource Allocation via GMPLS Optical Networks

API Overview

Jaroslav Flidr, Peter O’Neil, Chris Tracy

Mid-Atlantic Crossroads

Page 2: DRAGON Dynamic Resource Allocation via GMPLS Optical Networks API Overview Jaroslav Flidr, Peter O’Neil, Chris Tracy Mid-Atlantic Crossroads.

3rd GENI Engineering Conference

DRAGON/IDC - API

o What it consists of• DRAGON Web Services and binary API• DRAGON UNI and CLI interfaces• IDC/OSCARS Web Services Interfaces

o What it can do• schedule resources• enforce policies• authenticate • control Ethernet (VLANs) and TDM (SONET/SDH) resources• provision a Layer 2 path across different domains and heterogeneous

network elements

o How• Web Services interfaces• binary interfaces• UNI/CLI interfaces

a simple interface to a very complex, distributed system

Page 3: DRAGON Dynamic Resource Allocation via GMPLS Optical Networks API Overview Jaroslav Flidr, Peter O’Neil, Chris Tracy Mid-Atlantic Crossroads.

3rd GENI Engineering Conference

DRAGON as a Black Box

HorizontalVertical

Vertical

AAA•

reservation•

full inter-domain capabilities•

topology•

provisioning

o User• a researcher• another domain

topo

logy

•pr

ovis

ioni

ng•

limite

d in

ter-

dom

ain

capa

bilit

ies

Web Services API(IDC/OSCARS)

Wrapper / Translator API

binary API

UNI

CLI

port / VLAN / time slotsport / VLAN / time slots

Page 4: DRAGON Dynamic Resource Allocation via GMPLS Optical Networks API Overview Jaroslav Flidr, Peter O’Neil, Chris Tracy Mid-Atlantic Crossroads.

3rd GENI Engineering Conference

API - Detail

Network Infrastructure Layer 2 Ethernet, SONET/SDH

DRAGON Layer Control Plane(Intra-domain)

hardware interface(network element

drivers)

DRAGON Layer (Inter-domain)

cont

rol l

ink

(snm

p, T

L1,

CL

I)

domain control interface

Sw

itch

es,

RO

AD

Ms,

etc

.V

LSR

sN

AR

Bs

IDC

s

optional inter-domain interface

Web 2.0 Layer(Inter-domain)

Web Services API

internal API

exported API

UNICLIi/f’s

Abstraction Layer(Internet2 DCN, ESNet OSCARS extensions)

Page 5: DRAGON Dynamic Resource Allocation via GMPLS Optical Networks API Overview Jaroslav Flidr, Peter O’Neil, Chris Tracy Mid-Atlantic Crossroads.

3rd GENI Engineering Conference

API types

o Web Services (based on PerfSonar, NDL schemas)• external (provided by IDC/OSCARS)

reservation topology exchange provisioning full inter-domain communication

• internal (provided by TERCE) topology exchange provisioning limited inter-domain communication

o Binary (provided by NARB)• topology exchange• provisioning• limited inter-domain communication

Page 6: DRAGON Dynamic Resource Allocation via GMPLS Optical Networks API Overview Jaroslav Flidr, Peter O’Neil, Chris Tracy Mid-Atlantic Crossroads.

3rd GENI Engineering Conference

External Web Services API Example

o Web Services interface• open for authenticated users and/or another domains

WSDL fragment:<?xml version="1.0" encoding="UTF-8"?><wsdl:definitions name="OSCARS" . . . > <wsdl:portType name="OSCARS"> <wsdl:operation name="createReservation"> </wsdl:operation> <wsdl:operation name="cancelReservation"> </wsdl:operation> <wsdl:operation name="queryReservation"> </wsdl:operation> <wsdl:operation name="modifyReservation"> </wsdl:operation> <wsdl:operation name="listReservations"> </wsdl:operation> <wsdl:operation name="getNetworkTopology"> </wsdl:operation> <wsdl:operation name="initiateTopologyPull"> </wsdl:operation> <wsdl:operation name="createPath"> </wsdl:operation> <wsdl:operation name="refreshPath"> </wsdl:operation> <wsdl:operation name="teardownPath"> </wsdl:operation> <wsdl:operation name="forward"> </wsdl:operation> </wsdl:portType> . . . <wsdl:service name="OSCARS"> <wsdl:port name="OSCARS" binding="tns:OSCARSSOAP"> <soap:address location="https://oscars-dev.es.net:9090/axis2/services/OSCARS"/> </wsdl:port> </wsdl:service></wsdl:definitions>

Page 7: DRAGON Dynamic Resource Allocation via GMPLS Optical Networks API Overview Jaroslav Flidr, Peter O’Neil, Chris Tracy Mid-Atlantic Crossroads.

3rd GENI Engineering Conference

Functionality

Network Infrastructure Layer 2 Ethernet, SONET/SDH

DRAGON Layer Control Plane(Intra-domain)

hardware interface(network element

drivers)

DRAGON Layer (Inter-domain)

cont

rol l

ink

(snm

p, T

L1,

CL

I)

domain control interface

Sw

itch

es,

RO

AD

Ms,

etc

.V

LSR

sN

AR

Bs

IDC

s

optional inter-domain interface

Web 2.0 Layer(Inter-domain)

Web Services API

internal API

exported API

UNICLIi/f’s

Abstraction Layer(Internet2 DCN, ESNet OSCARS extensions)

<?xml version="1.0"?><soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <!-- Security headers and X.509 go here --> <soap:Body> <m:createReservation xmlns:m="http://oscars.es.net/OSCARS"> <m:startTime>1179755264</m:startTime> <m:endTime>1179755864</m:endTime> <m:bandwidth>1000</m:bandwidth> <m:description>Example reservation</m:description> <m:pathInfo> <m:pathSetupMode>user-xml</pathSetupMode> <m:layer2Info> <m:srcEndpoint>urn:ogf:network:domain1:node1:port1:link1</m:srcEndpoint> <m:destEndpoint>urn:ogf:network:domain3:node2:port2:link1</m:destEndpoint> </m:layer2Info> </m:pathInfo> </m:createReservation> </soap:Body></soap:Envelope>

createReservation

findPath findPath

createPath

<?xml version="1.0"?><soap:Envelope xmlns:soap=http://www.w3.org/2001/12/soap-envelope soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <!-- Security headers and X.509 go here --> <soap:Body> <m:createPath xmlns:m="http://oscars.es.net/OSCARS"> <m:globalReservationId>domain1-1000</m:globalReservationId > </m:createPath> </soap:Body></soap:Envelope>