150 likes | 312 Views
ORCA-BEN Spiral 1 Status. Yufeng Xin, Ilia Baldine Renaissance Computing Institute { yxin,ibaldin}@ renci. org Jeff Chase Duke University chase@cs.duke.edu. Status. Finished development of NDL java toolkit prototype
E N D
ORCA-BEN Spiral 1 Status Yufeng Xin, Ilia Baldine Renaissance Computing Institute {yxin,ibaldin}@renci.org Jeff Chase Duke University chase@cs.duke.edu
Status • Finished development of NDL java toolkit prototype • Developed universal driver framework for network elements and completed driver implementation for 6509, DTN and Polatis) • Finished the integration of BEN to ORCA including slivering of 6509, DTN, and Polatis • Demonstrated creation of end-to-end VLAN path using BEN and NLR to GPO • Demonstrated a prototype of MIN multi-layer visual network management tool • Cluster-D Clearinghouse is being stood up • http://geni.renci.org:8080/ • Rest of Spiral 1 time we will spend • In bug-fixes/stability enhancements • Improving documentation • Working with other Cluster D projects to help meet their goals
End-to-End Slice “Stitching” Scenario End-to-End Slice “Stitching”
Our Networking Scenario • Many “Internet” experiments assume single transport layer • Single graph of links and nodes • Focus on other complicated logics • Transport network researchers need to specify more information inside the link and node: Multi-layered network • Embedding of higher level networks into lower level networks • Defining proper layer adaptations • Path computation becomes a hard problem
BEN, ITU G.805, and NDL • BEN: Cross-layer transport network testbed • VLAN->GE Ethernet->10G Ethernet->Lambda->OCG->Fiber • VLAN->Ethernet->DTN bandwidth pool (bandwidth virtualization) • Switching: Fiber, OCG, Lambda, Sub-Lambda, Ethernet • Possible multiple end-to-end paths cross different layers • So complex that an abstract model is desired • ITU G.805: Network elements <->Functional elements <-> Ontology • Topology Connectivity and switching capability • Cross-layer adaptation, aggregation, and capacity • It’s complex and abstract, suitable for ontology • NDL is a set of ontology based on G.805 • Resource description with focuses on connectivity and cross-layer adaptation description • RDFS/XML • Logic constraints and cross-layer path computation • Modular design
Related ITU standards • General architecture/models • G.805: Generic functional architecture of transport networks • G.809: Functional architecture of connectionless layer networks • Technology specific descriptions of architectures • G.803: SDH • G.872: Optical transport • G.8010: Ethernet • G.8110: MPLS
How we use/extend NDL in ORCA • NDL-OWL extends NDL in OWL: Richer semantics and inference capability • Unified semantic for substrate description, request description, and slice configuration • Dynamic path computation based on RDF query • End-to-end cross-layer path availability • Virtual topology mapping • Mapping to the switching and configuration actions in each device along the path • Available resource and used resource • Existing toolkits: • Protégé: build and maintain Ontology and RDF • Jena API library: • Jena: Ontology model (resource, property) creation, modification, and validation • ARQ: SPARQL query langauage • Gleen: subGraph query API
Request Description <rdf:RDFxml:base=https://geni-orca.renci.org/owl/request-6509.rdf> <owl:Ontologyrdf:about=""> <owl:importsrdf:resource="https://geni-orca.renci.org/owl/request.owl"/> </owl:Ontology> <request:Reservationrdf:about="#reservation-renci-unc-vm-1"> <request:StartingTime>2009-07-07T:13:00:00:00Z</request:StartingTime> <request:EndingTime>2009-07-07T:20:00:00:00Z</request:EndingTime> <layer:atLayerrdf:resource="https://geni-orca.renci.org/owl/ethernet.owl#EthernetNetworkElement"/> </request:Reservation> <topology:Devicerdf:about="https://geni-orca.renci.org/owl/ben.rdf#Renci/VMSite"> <topology:connectedTordf:resource="https://geni-orca.renci.org/owl/ben.rdf#UNC/VMSite"/> </topology:Device> </rdf:RDF>
Substrate Description • <topology:Interfacerdf:about="#UNC/Infinera/DTN/fB/1/fiber"> • <rdf:typerdf:resource="https://geni-orca.renci.org/owl/dtn.owl#FiberNetworkElement"/> • <dtn:availableOCGSetrdf:resource="#UNC/Infinera/DTN/fB/1/fiber/availableOCGSet"/> • <dtn:usedOCGSetrdf:resource="#UNC/Infinera/DTN/fB/1/fiber/usedOCGSet"/> • <dtn:OCGrdf:resource="#UNC/Infinera/DTN/fB/1/ocgB/1"/> • <topology:interfaceOfrdf:resource="https://geni-orca.renci.org/owl/ben.rdf#UNC/Infinera/DTN"/> • <topology:linkTordf:resource="https://geni-orca.renci.org/owl/ben.rdf#UNC/Polatis/f6-22"/> • <topology:connectionDirectionrdf:resource="https://geni-orca.renci.org/owl/layer.owl#BIDirectional"/> • </topology:Interface>
RDF Query • Connection List query String selectStr = "SELECT ?resource ?object "; String fromStr="”; String whereStr = "WHERE {" +"?resource "+"ndl:connectedTo "+"?object”+" }"; • SubGrapgh query: String s ="SELECT ?a ?b ?c "; String ffromStr = ""; String whereStr = "WHERE {" + "(<"+url1+"> '[ndl:hasInterface]+/([ndl:hasInputInterface]|[ndl:hasOutputInterface])*/([ndl:linkTo]|[ndl:connectedTo])+/[ndl:interfaceOf]+' <"+url2+">) gleen:Subgraph (?a ?b ?c)”+" }"; • A complicated one: String selectStr = "SELECT ?intf ?intf_peer ?c ”; String fromStr="”; String whereStr= "WHERE {" + "?p a layer:AdaptationProperty. ”+ "<"+rsURI+">" + " ndl:hasInterface ?intf. ”+ "?intfndl:connectedTo ?intf_peer." + "?intf ?p ?a.”+ "?intf_peerndl:inConnection true."+ "?intf_peer ?l ?r."+ "?rrdf:typelayer:Layer."+ "?intf_peerndl:interfaceOf ?b.”+ "?bndl:hasSwitchMatrix ?sw. "+ "?swlayer:switchingCapability ?c"+ " }";
Why RDF/OWL (Or Why not XML) • RDF advantage: • Ontology:well-defined meaning for every element. This is both an advantage to the schema author, as well as for users. • Language aiming in meaning and inference, rather that validation • Support for information integration and reuse of shared vocabularies • Separation of syntax from data modelling • Web embedding • Extensibility: A user can mix two ontologies in his application, even when neither ontology author was aware of the other schema. • Support for inference and classification, based on a formal semantics • Toolset: Because RDF is meant as a generic way of describing information, there are several tools which can automatically “make sense” of your data. • Inference and query capability means much less lines of your codes • RDF Limitation: • Verbosity and performance • Inability to natively represent uncertain data and continuous domains • No built-in representation of processes and change • It’s for the computer to read, not a human, and there are tools
Future NDL-OWL Work • Unified spectrum-based resource representation, allocation, control and management • Path computation based on rules and constraint logic programming and optimization • Problems: • Introducing time for resource scheduling • Precise resource accounting in the ontology • Further ontology extensions (xDL) • CDL: Cloud computing: Ontology for software and virtual machine • MDL: Substrate measurement capabilities • WDL: Wireless • All extending common vocabularies to introduce new relationships
Combining RDF/OWL with XML • XML data as RDF resource: if the data can be identified by a URI (for example via a document URL or an XPointer URI reference) • XML fragment the object of a RDF statement: XML sub-tree as rdf:XMLLiteral • Limitations: • XML complextype is not a class • Lack of automation tools for the mixture