OnVector 2009: Topology handling in GLIF Cees de Laat! GLIF.is founding member!
GLIF 2008! Visualization courtesy of Bob Patterson, NCSA Data collection by Maxine Brown.
Optical Exchange as Black Box! Optical Exchange Optical Cross Connect Switch TDM Store & Forward DWDM mux/demux!terabyte!!email!!service! Freek Dijkstra, Cees de Laat, "Optical Exchanges", GRIDNETS conference proceedings, oct 2004!
Service Matrix! From WDM! (multiple!) Single!, any bitstream To WDM (multiple!) cross-connect multicast, regenerate, multicast! WDM mux! Single!, any bitstream WDM demux! cross-connect multicast, regenerate, multicast! SONET/ SDH WDM demux*! SONET/SDH WDM mux! N/A *! SONET"# switch,# +! 1 Gb/s WDM demux *! LAN PHY WDM demux *! WAN PHY WDM demux *! VLAN tagged WDM demux *! IP over WDM demux *! N/A *! N/A *! N/A *! N/A *! N/A *! N/A *! TDM demux *! # 1 Gb/s WDM mux! N/A *! TDM mux! aggregate, conversion +! LAN PHY WAN PHY VLAN tagged # WDM mux! N/A*! TDM mux 6! aggregate, conversion! # WDM mux! N/A *! SONET switch! aggregate,# conversion! WDM mux! N/A *! TDM mux! aggregate, VLAN decap! TDM demux 6! SONET # switch! aggregate, # eth. convert! aggregate, # conversion +! conversion! aggregate, VLAN decap! aggregate, # conversion! conversion! aggregate, # conversion +! aggregate, VLAN decap! TDM demux *! aggregate, VLAN encap! aggregate, VLAN encap! aggregate, VLAN encap! Aggregate, VLAN decap & encap +! TDM demux *! L3 entry *! L3 entry *! L3 entry *! IP over WDM mux! N/A *! TDM mux! L3 exit *! L3 exit *! L3 exit *! N/A! Store & forward, L3 entry/exit+! N/A!
TV Medical CineGrid DataExploration RemoteControl Gaming Conference Workflow Management Backup Mining Media Web2.0 Visualisation NetherLight! Security Meta Clouds Distributed EventProcessing Simulations StreamProcessing Predictions
Network Description Language! From semantic Web / Resource Description Framework.! The RDF uses XML as an interchange syntax.! Data is described by triplets: Subject Predicate Object Subject Object Subject Object Subject Object Subject Object Subject Location! Device! Interface! Link! name! description! locatedat! hasinterface! connectedto! capacity! encodingtype! encodinglabel!
Network Description Language Choice of RDF instead of XML syntax Grounded modeling based on G0805 description: Article: F. Dijkstra, B. Andree, K. Koymans, J. van der Ham, P. Grosso, C. de Laat, "A Multi-Layer Network Model Based on ITU-T G.805"
A weird example! Université du Quebec! Gigabit! can adapt GE in STS"%&c! CA Net! Canada! Universiteit! van! Amsterdam! OC"#$%! )%% free*! %x OC"#$%! )+( free*! GE! StarLight! Chicago! can adapt GE in STS"%&c or STS"'c"(v! OC"#$%! )'+ free*! MAN LAN! New York! %x OC"#$%! ),' free*! NetherLight! Amsterdam! can adapt GE in STS"'c"(v!
The result :-)! Université du Quebec! Gigabit! can adapt GE in STS"%&c! CA Net! Canada! Universiteit! van! Amsterdam! OC"#$%! )%% free*! %x OC"#$%! )+( free*! GE! StarLight! Chicago! can adapt GE in STS"%&c or STS"'c"(v! OC"#$%! )'+ free*! MAN LAN! New York! %x OC"#$%! ),' free*! NetherLight! Amsterdam! can adapt GE in STS"'c"(v! Thanks to Freek Dijkstra & team!
!Edges!!Vertex!
!Device!!Links!!Interfaces!
!Switching matrix!!a devices switches data based on:! "!The source interface! "!One or more labels!!example label types:! "! VLAN! "!SONET STS Channel! "!Wavelength )!*!!Channels!!For example- all data from channel '# of interface % is forwarded to channel %+ of interface &.!
Multi-layer extensions to NDL! IP layer! layer! STS layer! OC"#$% layer! UTP! /ber! layer! layer! End host! SONET switch with! intf.! &! SONET switch! SONET switch! SONET switch with! intf.! End host! Université du Quebec! CA Net! Canada! StarLight! Chicago! MAN LAN! New York! NetherLight! Amsterdam! Universiteit! van! Amsterdam!
From network to applications From the physical architecture To the semantic model for the architecture
RDF describing Infrastructure I want Application: find video containing x, then trans-code to it view on Tiled Display RDF/CG! RDF/CG! RDF/VIZ! content content RDF/ST! RDF/NDL! RDF/NDL! RDF/CPU! COCE
Semantic Reasoning
The Problem! I want HC and AB! Success depends on the order! Wouldn t it be nice if I could request [HC, AB,...]! A B H?! C G F E D
NDL + PROLOG! Research Questions:!!order of requests!!complex requests!!usable leftovers!!reason about graphs!!find sub-graphs that comply with rules!
Mathematica enables advanced graph queries, visualizations and realtime network manipulations on UPVNs# Topology matters can be dealt with algorithmically Results can be persisted using a transaction service built in UPVN Initialization and BFS discovery of NEs Needs["WebServices`"] <<DiscreteMath`Combinatorica` <<DiscreteMath`GraphPlot` InitNetworkTopologyService["edge.ict.tno.nl"] Available methods: {DiscoverNetworkElements,GetLinkBandwidth,GetAllIpLinks,Remote, NetworkTokenTransaction} Global`upvnverbose = True; AbsoluteTiming[nes = BFSDiscover["139.63.145.94"];][[1]] 139.63.145.2 139.63.145.17 139.63.145.16 139.63.145.32 139.63.145.15 139.63.145.34 139.63.145.18 139.63.145.31 139.63.145.0 139.63.145.38 139.63.145.1 139.63.145.52 139.63.145.33 139.63.145.3 139.63.145.86 192.168.0.3 139.63.145.51 139.63.145.82 139.63.145.63 139.63.145.79 192.168.0.4 139.63.145.40 139.63.145.87 139.63.145.50 139.63.145.64 139.63.145.46 139.63.145.94 139.63.145.83 192.168.0.1 192.168.0.2 139.63.145.49 139.63.145.88 139.63.145.65 139.63.145.45 139.63.145.75 139.63.145.84 139.63.145.41 139.63.145.66 139.63.145.81 139.63.145.85 139.63.145.44 139.63.145.42 139.63.145.43 139.63.145.73 139.63.145.74 139.63.145.68 139.63.145.72 139.63.145.69 139.63.145.70 139.63.145.71 Visualisation 192.168.0.6 192.168.0.5 192.168.1.1 192.168.1.2 192.168.2.2 192.168.2.1 192.168.1.3 192.168.1.4 192.168.2.4 192.168.2.3 AbsoluteTiming[result = BFSDiscoverLinks["139.63.145.94", nes];][[1]] Getting neigbours of: 139.63.145.94 Internal links: {192.168.0.1, 139.63.145.94} (...) Getting neigbours of:192.168.2.3 Transaction on shortest path with tokens nodepath = ConvertIndicesToNodes[ Internal links: {192.168.2.3} ShortestPath[ g, Node2Index[nids,"192.168.3.4"], Node2Index[nids,"139.63.77.49"]], nids]; Print["Path: ", nodepath]; If[NetworkTokenTransaction[nodePath, "green"]==true, Print["Committed"], Print["Transaction failed"]]; 192.168.1.3 192.168.1.1 99.8 192.168.1.4 100. 192.168.1.2 100. 98.9 192.168.2.2 192.168.2.4 100. 100. 100. 192.168.0.2 99.9 Network flows using real-time bandwidth measurements 192.168.0.3 99.9 99. 192.168.0.5 95.9 192.168.0.4 94.5 192.168.0.6 96. 95.8 192.168.0.1 139.63.145.94 Path: {192.168.3.4,192.168.3.1,139.63.77.30,139.63.77.49} 100. 101. 192.168.2.1 100. Committed 192.168.2.3 100. ref: Robert J. Meijer, Rudolf J. Strijkers, Leon Gommans, Cees de Laat, User Programmable Virtualiized Networks, accepted for publication to the IEEE e-science 2006 conference Amsterdam.
TouchTable Demonstration @ SC08!
Interactive programmable networks
Chairs: OGF NML-WG Open Grid Forum - Network Markup Language workgroup Paola Grosso Universiteit van Amsterdam Martin Swany University of Delaware Purpose: To describe network topologies, so that the outcome is a standardized network description ontology and schema, facilitating interoperability between different projects. https://forge.gridforum.org/sf/projects/nml-wg
Questions?! Accepted ONDM paper: A Declarative Approach to Multi- Layer Path Finding Based on Semantic Network Descriptions.! http://delaat.net:/~delaat/papers/declarative_path_finding.pdf! Thanks: Paola Grosso & Jeroen vd Ham & Freek Dijkstra & team for several of the slides.!