180 likes | 303 Views
Integrating N e tworks with Mathematica. Towards Intelligent and Interactive Networks. R. J. Strijkers. Introduction. Who Rudolf Strijkers Sponsored by TNO ICT PhD student in the SNE group of Cees de Laat Promoter: Prof. Dr. Robert Meijer What
E N D
Integrating Networks with Mathematica Towards Intelligent and Interactive Networks R. J. Strijkers
Introduction • Who • Rudolf Strijkers Sponsored by TNO ICTPhD student in the SNE group of Cees de Laat Promoter: Prof. Dr. Robert Meijer • What • Design an alternative network model for next-generation networks • Why • Context and goals • How • Things done so far • Idea’s to explore
Observations in Networking • Current Internet protocols and communication concepts are not well suited for next-generation networks: sensor networks, high-speed networks and hybrid networks • Many aspects of a network have become programmable. This allows richer behavior than traditional best-effort end-to-end services • Emergence of sensor networks and high-speed networks stimulates new research into exploitation of programmable resources Ref: Realizing the Information Future (1994)
6 Research goal • Design and implement an alternative network model for next-generation networks: • Operate in highly dynamic environments i.e.: automated adaptation to environment • Application-specific QoE: service isolation • Long life-span networks and evolving ICT systems: allow modification or not foreseen behavior to be added 4 S Application 1 3 2 S S 5 S S S 5 S S S S 6 5 6 S 6 S 5 7 10
Towards programmable network services • Extremes of application control over network services • no control : sockets • full control : all network services are exposed to applications networked applications streams next-generation applications WWWe-mail application-specific best-effort next-generation networks
User Programmable Virtualized Networks • Architectural framework that enables distributed and networked applications to define network services themselves • Network behavior is transformed into a collection of software objects: The network is software! • NCs proxy application-specific interfaces in applications • ACs represent application-specific behavior • To facilitate modification of behavior or addition of unforeseen behavior, NEs support uploading of ACs Application Application NC NC NC NE NE NE AC AC AC AC AC
Example:A transaction service in Mathematica Needs["WebServices`"] <<DiscreteMath`Combinatorica` <<DiscreteMath`GraphPlot` InstallService[“http://localhost:3000/network_service/service.wsdl”] The following methods are available from the NetworkComponent: {GetAllLinks,GetAllElements,NetworkTokenTransaction} nodePath = ConvertIndicesToNodes[ 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"]]; ConvertIndicesToNodes[ArticulationVertices[g]] Path: {192.168.3.4,192.168.3.1,139.63.77.30,139.63.77.49} Committed {139.63.77.30, 192.168.3.1}
Illustration:Dynamic rerouting application-specific traffic • Token networking implemented in Intel IXP2450 network processors (by Mihai Cristea) • Not fully UPVN yet, will be soon • End-hosts need modified TCP/IP stack to support tokenizing • Provides socket level granularity of control • Includes AAA on packet level in the network • Kernel development to include end-hosts • Legacy applications can be supported with specific adapters: • Run applications unmodified: Socket Hijacking library (by Damien Marchal) • Demonstrated a firewall use-case at OGF in Barcelona • Tested with FTP, GridFTP, OpenMPI and VLC
Demonstration session Mathematica! How did we implement this? Next, we present our architecture and implementation model
Binding user applications to network services • A network has to recognize traffic before it can apply specific behavior to it. • Tagging traffic is a way to glue applications to network behavior • Networks can know: • Everything : network behavior is fully provisioned : no tags needed • Nothing : the application knows everything : tag contains all the information • Tags are an indication for the richness of a network service • Lesson learned from active networks (AN) • Discrete AN : only an id • Integrated AN : complete program
generalised Token Based Networking CollaborativeGroup 1 3rd Party NegotiateService Policies and Rules Application 3 Specialized Network Service Token 2 NE NE AC AC AC AC
Experimental Setup • Request for network behavior • Can be predefined service bound to • a tag • Allows uploading of network services • Policies, AAA, administration • Provisioning of domains + end-hosts 1 App.1 Reservation Request 4 request bootstrap run request WS WS token CarpetD CarpetD 2 4 WS IDC1 configuration configuration App.2 Magic-carpet Magic-carpet 3 provisioning TBSIP TBSIP Gateway1 Gateway2
Multi Domain Implementation Architecture WS WS IDC1 IDC2 -gMPLS -TBSIP StarPlane WS -DRAC -VLAN Management User Host A Host B WS WS CarpetD App.1 CarpetD Transit networks App.1 App.3 Magic-carpet Magic-carpet Gateway1 Gateway2
gTBN in Grid Middleware • Applications-specific adaptation through virtualized network resources • Middleware manages resources and network services: Workflows Brokers • All application traffic is tagged • Multi domain services are achieved by negotiation between domains GRB Mathematica Mathematica Middleware NC NC NC NE NE NE NC
Conclusion • In the near future we foresee that programmable network devices will appear in networks and in Grids • We are developing technologies for creating and manipulating adaptive and application-specific network services • How can we increase efficiency and robustness in Grids using these technologies? • We are currently implementing a new infrastructure supporting FPGAs, network processors and Linux • SOAP accessible Network API for Grid Network usage. • Better be the first to implement a working proof of concept for Grids
Idea’s to explore • Network performance can have a huge impact on the performance of distributed applications • Program the network to follow high-speed paths or reroute low-priority traffic • We are currently developing the first proof of concepts in a gigabit test bed • Exploiting external tools to manipulate and program network services • ACs are exposed as SOAP web services • Implement UPVN support in Grid middleware technologies • integrates networks with resource provisioning middleware
Look into Future Work • We have looked at principles of application programmable network services and we have looked at a single entity • Next comes: • Applying the principles and components to develop a systems view • Introducing compiler technologies
Conclusion • Our goal is to find and explore next-generation networking principles: • Principles for interworking between applications and networks: User Programmable Virtualized Networks (UPVN)(eScience 2006) • Principles for binding applications to network behavior: generalized Token Based Networking (gTBN)(article to be submitted to IM2009) • Principles for automated network adaptation:Automated Adapting Networks (AANet)(IMS 2008, follow-up article & implementation in progress) • How can we implement this in Grid networks?