22
Resource Representations in GENI • Rob Sherwood, OpenFlow • Hongwei Zhang, Wireless sensor network description language • Ilia Baldine, Yufeng Xin, Semantic Resource Descriptions in ORCA • BACK at 10:45 [email protected] Presentation title goes here 1

Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Embed Size (px)

Citation preview

Page 1: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Presentation title goes here 1

Resource Representations in GENI

• Rob Sherwood, OpenFlow• Hongwei Zhang, Wireless sensor network

description language• Ilia Baldine, Yufeng Xin, Semantic Resource

Descriptions in ORCA

• BACK at 10:45• [email protected]

Page 2: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Semantic Resource Descriptions in ORCA (Part 2)

Yufeng Xin and Ilia Baldine

Page 3: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

3

NDL-OWL in ORCA

– Last time (GEC7):• Introduction RDF and OWL• Example of NDL-OWL descriptions

– Today:• Short recap• How we use NDL-OWL in ORCA

Page 4: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

NDL-OWL in ORCA 4

Resource representations in GENI

• Used by elements of control frameworks• Used by experimenter tools• Visualizations, performance measurements etc.

etc.• Have a lifecycle

– Current state of the substrate– Request specification– Slice specification– ‘As-built’ manifest

Page 5: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

5

Why NDL(-OWL)?

Application layer

Network/routing layer

Optical/physical layer

Cross-Layer Information

Exchange

Page 6: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

6

Using G.805 model in BEN

• BEN Layers– Fiber– OCG/DWDM– Lambda– Ethernet– IP

• Detailed information about layers and adaptations is required– Optimized management– Cross-layer

measurements

Page 7: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Presentation title goes here 7

XML vs. RDF

Page 8: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

8

SPARQL/GLEEN

• SPARQL – SQL-like query language for RDF graphs

SELECT ?pop1 ?lat ?lon

WHERE {

?pop1 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://geni-orca.renci.org/owl/collections.owl#Set> .

?pop1 <http://geni-orca.renci.org/owl/location.owl#locatedAt> ?loc .

?loc <http://www.w3.org/2003/01/geo/wgs84_pos#lat> ?lat .

?loc <http://www.w3.org/2003/01/geo/wgs84_pos#long> ?lon . }

• GLEEN – extension to SPARQL for network path finding

Page 9: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Retrieve all connected resources

• Retrieve all edges in the topology

SELECT DISTINCT ?src ?dst ?connection ?bw WHERE {{?src ndl:connectedTo ?dst} UNION {?connection a ndl:NetworkConnection. ?connection ndl:hasInterface ?src. ?connection ndl:hasInterface ?dst.?connection layer:bandwidth ?bw.FILTER(?src != ?dst)

} UNION {?connection a ndl:NetworkConnection. ?connection ndl:hasInterface ?intf1. ?connection ndl:hasInterface ?intf2.?src ndl:hasInterface ?intf1. ?dst ndl:hasInterface ?intf2.?src a compute:Server. ?dst a compute:Server.?connection layer:bandwidth ?bw.FILTER(?src != ?dst)

}}

• Produces a list of <src, dst, edge, bandwidth> tuples• Very verbose!

Page 10: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Gleen:OnPath example

SELECT ?object WHERE {

<http://some/resource> gleen:OnPath ('[ndl:hasInterface]*/([ndl:connectedTo] | [ndl:switchedTo] | [ndl:linkTo])+/[ndl:interfaceOf]*’ ?object).

FILTER(?object != <http://some/resource>)

}

• Return: a list of neighboring devices or interfaces of resource http://some/resource in the RDF graph

Page 11: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Gleen:SubGraph

SELECT ?a ?b ?c WHERE {

(<http://some/resource> gleen:OnPath ('[ndl:hasInterface]+/([ndl:connectedTo]|[ndl:switchedTo]|[ndl:linkTo])*/[ndl:interfaceOf]' <http://some/other/resource>)

gleen:Subgraph (?a ?b ?c). ?a rdf:type ndl:Interface.

?c rdf:type ndl:Interface.

}

• Return: a list of intermediate links/connections between two connected resources in the RDF graph.

• Not necessarily in-order!

Page 12: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Presentation title goes here 12

Using NDL-OWL resource descriptions in ORCA

• Initial substrate descriptions used by ‘authority’ actors• Transit authorities use NDL for internal (intra-domain)

multi-layered path computation• Abstracted descriptions advertized by brokers for inter-

domain path finding– Full and abstract site NDL-OWL descriptions available through

registry

• User requests expressed as desired topology descriptions with specific resources

• FormatX -> NDL-OWL conversions– FormatX = {NS2, PG RSpec, PL RSpec, … }

Page 13: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

13

ORCA inter-actor NDL passing

Page 14: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Authority actor NDL Operations

• Initial substrate NDL created by the operator• Abstract domain NDL model computed by the

authority actor based on the initial description:– DomainService class

• Topology abstraction advertisement – Border interfaces and available resources (for bandwidth accounting)– Switching capability

• Delegated resource and units• Access method (ORCAActor, etc.)• Label producer?

– To assist stitching precedence computation

Page 15: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Abstraction Domain NDL<rdf:Description rdf:about="http://geni-orca.renci.org/owl/nlr.rdf#NLR/Domain">

<domain:hasService rdf:resource="http://geni-orca.renci.org/owl/nlr.rdf#NLR/Domain/NetworkService/1"/>

<rdfs:label xml:lang="en">http://geni-orca.renci.org/owl/nlr.rdf</rdfs:label>

<ndl:hasSwitchMatrix rdf:resource="http://geni-orca.renci.org/owl/nlr.rdf#NLR/Domain/SwitchingMatrix"/>

<ndl:hasInterface rdf:resource="http://geni-orca.renci.org/owl/nlr.rdf#NLR/StarLight/Cisco/6509/TenGigabitEthernet/1/3/fiber"/>

<rdf:type rdf:resource="http://geni-orca.renci.org/owl/topology.owl#Device"/>

<rdf:type rdf:resource="http://geni-orca.renci.org/owl/topology.owl#NetworkDomain"/>

<layer:isLabelProducer rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">true</layer:isLabelProducer>

<ndl:hasInterface rdf:resource="http://geni-orca.renci.org/owl/nlr.rdf#NLR/Renci/Cisco/6509/TenGigabitEthernet/1/2/fiber"/>

</rdf:Description>

Page 16: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Broker: Resource allocation

• Consumes the abstract NDL from all the sites– Keeping track of resource allocation and domain

interface resources (e.g. bandwidth on border interfaces)

• Passes the abstract NDL to the service manager upon query

Page 17: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Service Manager controller policy

• Assemble the abstract descriptions into a Inter-domain NDL-OWL model

• Accept user allocation request the request in NDL-OWL format

• Perform the inter-domain path computation– Which domains will need to provide resources to

create this path

• Compute the dependency tree of domains to determine what order the resources will be requested in

• Form the reservations and DomainRequest(s) for authorities in NDL-OWL

• Redeem the DomainRequest(s) to sites.

Page 18: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

19

Converting to NDL-OWL

• Emulab NS2 -> NDL-OWL converter (many thanks to Rob Ricci for his help)– For testing: web page (.jsp)– For production use: XMLRPC service

• http://geni-test.renci.org/ndl-conversion/convert.jsp

• PG and PL RSpec coming– To be used in conjunction with ORCA XMLRPC

controller offering PG interface

Page 19: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Label Stitching Problem

• Multiple domains on the path need to create a seamless connection• Label negotiation is required at domain peering points

– E.g. VLAN tag can be generated, translated, accepted or tunneled

• Sites or devices inside domains have various capabilities:– Switching capability (Layer-specific: VLAN, Lambda, ..)– Label producer vs. consumer (or both)– Label translation capability– Available label set (constraint)

• Multiple domain label assignment and stitching solutions possible:– Fully centralized – single point of failure– Distributed (RSVP) – slow, hard to optimize– Coordinated – for a given connection an entity coordinates the order/sequence in

which domains stitch/connect to one another

Page 20: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Example of a path dependency

NLR

BEN

RenciNet RENCI

VMs

DukeVMs

DukeNet

UmassVise

StarLight

Page 21: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

ORCA redeem dependency tree• Neighbor relationship

– Peer relationship • Both are label producers or pre-configured

– Provider-customer relationship (NRL-BEN)• Translating at the customer

– Master-Slave relationship (Access network - VM sites)• Slaves wait and use the same label from the master

• Redeem dependency tree– Determines the order in which controller policy ‘redeems’

resources given by the broker from domains.– Domains pass back relevant information needed by their

neighbors to perform the stitching.

Page 22: Resource Representations in GENI Rob Sherwood, OpenFlow Hongwei Zhang, Wireless sensor network description language Ilia Baldine, Yufeng Xin, Semantic

Future work

• Add expressivity to– NDL-OWL requests– Edge resource descriptions and IP layer– Measurement resources

• Topology mapping and multi-point support• Persistent RDF/OWL storage• More advanced reasoning and rule based

implementation– Using inference and various logics

• Slice manifest NDL