1 / 28

User Programmable Virtualized Networks

User Programmable Virtualized Networks. Towards a scientific framework for engineering the next generation of computer network applications. Rudolf Strijkers. Rudolf Strijkers. MSc Computational Science UvA , PhD candidate UvA

nuala
Download Presentation

User Programmable Virtualized Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. User Programmable Virtualized Networks Towards a scientific framework for engineering the next generation of computer network applications Rudolf Strijkers

  2. Rudolf Strijkers • MSc Computational Science UvA, PhD candidate UvA • Employed by Netherlands Organization for Applied Scientific Research TNO • Funded by the Center for Intelligent Observation System • Supervisor and mentor: Robert Meijer • Senior Strategist at TNO and Professor at UvA • Co-supervisor: Cees de Laat • University of Amsterdam, System and Network Engineering Research group. Rudolf Strijkers

  3. Introduction • In my PhD research, I explore an alternative network model, User Programmable Virtualized Networks, to identify fundamental challenges in computer network applications and to find the minimal structure of possible solutions. The goal is to find a scientific framework for engineering the next generation of computer networks and distributed applications. • Programmable networks will provide advanced networks services in Cyber-Physical Systems Rudolf Strijkers

  4. How to configure 10000km of sensors, computers, supercomputers and telecom?[7] Rudolf Strijkers

  5. Rudolf Strijkers

  6. Internet Connected Car Communicate anywhere, anytime, any service How does the programmable antennae point at the car at the right moment at the right place with the right communication technology? Many interconnection technologies with different properties Varying network service levels Varying scales of control Can applications or networks afford transparency of either domain? Source: nederland breedbandland Rudolf Strijkers

  7. My golden rules Only the developer knows how many resources, which type of resources, and at what time resources are needed for optimal application execution. Only the developer knows how to deal with failures in application-specific contexts. Networks can only assume or guess what applications want, if no explicit interface exists. Rudolf Strijkers

  8. Rationale for exploring an alternative architectural model • The development of current networks envisioned a certain domain of applications, i.e. networks implement application domain knowledge • For future applications the application domain is unknown: Oops, problem. • Large diversity in technologies: Sensors, Satellites, data center, clusters, many-core processors • Drives the research question: what is the minimal structure of computer network applications (network service, distributed application, sensor network)? • If network behavior is implemented in the application domain, what are the architectural consequences for networks and applications? Rudolf Strijkers

  9. Alternative Architectural Model:User Programmable Virtualized Networks[6] • We need the suitable abstractions for our problem domain • In other words, layers don’t fit (just yet) • Through a software representation of network elements, the network service of a collection of network elements is programmed in the application domain • The network service becomes a distributed application Application NC NC NC NE NE NE AC AC AC Rudolf Strijkers

  10. Example: Integrating Networks with Mathematica • Mathematica contains a large library of functions,such as: shortest paths, network flows,articulation vertices • Transaction services are available to reserve and provision network resources • Topology matters can be dealt withalgorithmically • Only one NC is needed to control the complete network. 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} Needs["WebServices`"] <<DiscreteMath`Combinatorica` <<DiscreteMath`GraphPlot` InstallService[http://localhost:3000/network_service/service.wsdl] {GetAllLinks,GetAllElements,NetworkTokenTransaction} Rudolf Strijkers

  11. Example: Integrating Networks with Mathematica Show the e-Science/RON demo, Rudolf[1, 6] Rudolf Strijkers

  12. Binding applications and network services • For any network service (including best-effort), the network needs to implement application domain assumptions • Network needs to recognize traffic to apply specific behavior: • at minimum: interface, <location, name, service>SAP • to support any service: packet id, tokens (parameters + state) • QoS, for example, is parameterization • Routing in a loop is optimized by putting state in the packet • Lessons learnt from Active Networks! • However, tokens • can span multiple network domains • and bind to policies or cryptographic identities Rudolf Strijkers

  13. Binding applications and network services Application/Network Operator state parameters program NE NE packet Rudolf Strijkers

  14. Binding applications and network services Application/Network Operator state parameters program NE NE packet Rudolf Strijkers

  15. Binding applications and network services Application/Network Operator state parameters program NE NE packet Rudolf Strijkers

  16. Supporting Communities in Programmable Networks: gTBN[8] • An advanced case that implements support for application, administrative, judicial or community domains over inter-domain and public networks in the context of Grid Computing • Freedom can only be gained by building walls • (Alternative to firewalling) • Associate VOs with tags (rather than to a collection of SAPs) • Network service associated with tags • In this case, putting VO identification in packets leads to reduction of network control complexity • We need vendor support to process tags • I’m sure that OpenFlow will come up with something like this soon (don’t ask me to bet on it though) Rudolf Strijkers

  17. generalised Token Based Networking Virtual Organization 1 3rd Party NegotiateService Policies and Rules Application 3 Specialized Network Service Token NE NE AC 2 AC AC AC Rudolf Strijkers

  18. gTBN proof of concept • 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 • Run the application 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 Rudolf Strijkers

  19. Once networks can be programmed with any service, what is there to say about the structure of a network service?[2,3] • From a developers point of view the implementation of a network service is a control loop in which topology, paths and services are continuously monitored and adjusted to match application specific qualities. • In short: network services differ in how they maintain their service level • Scalability • Information dissemination • Span of control • Robustness • How failure affects accuracy Rudolf Strijkers

  20. Application Framework for Programmable Network Control[3] • We put the human in the control loop (don’t bother about automation, yet) first and we made a fancy demo. Rudolf Strijkers

  21. Interactive Networks @ Super Computing 2008, ‘The Dutch have it!’[5,9] Rudolf Strijkers

  22. Video! Rudolf Strijkers

  23. Network Resource Control for Grid Workflow Management Systems[4] • Proof of concept that enables Grid applications to program networks • Show the video: • open browser Rudolf Strijkers

  24. Current status • We have extended the presented architecture to Clouds[10], which enables us to create Grids on-demand (Transient Grids) • Currently, our team of 6 is implementing a TGrid system for multiple Clouds • Enables applications to create and use unlimited (as much as there is money and VMs) Grids • We are creating a huge problem for developers • How to develop applications that scale to thousands of instances over a general purpose computing infrastructure? • How to manage the dataflows between applications, sensor networks, virtual Cloud networks, and the Internet? • How about reachability and failures with thousands of application instances? Rudolf Strijkers

  25. Conclusion • ICT will be used to optimize physical and virtual resources, such as dikes, highways, and air traffic, including optimization of communication networks and computational resources • Need for on-demand access to computation, and configuration of communication resources in under dimensioned infrastructures • Need for intelligent systems, i.e. applications designed for specific control of networks, computation and applications • In this talk, the basic architectural structure of such systems was presented • Basically, networks need to be smart again to catch up with the infrastructure needs of Cyber-Physical Systems Rudolf Strijkers

  26. What I didn’t tell • Multi-scale control in programmable networks • automate network service scaling • The role of naming (DNS) in programmable networks • interface between applications and networks for implementing failover, mobility, load-balancing, application-specific services and Socket API • Compiling network services from object oriented programs • Network operators gain fine grained control and unified life-cycle management of network services • Our Super Computing 2010 InterCloud demo currently under development. Please come and see at SC2010! Rudolf Strijkers

  27. Thanks! Thanks! Questions? Rudolf Strijkers Questions?

  28. References • R. J. Strijkers and R. J. Meijer, "Integrating networks with Mathematica," in 9th International Mathematica Symposium 2008 Maastricht, 2008. • R. Strijkers, et al., "Interactive Control over a Programmable Computer Network using a Multi-touch Surface," in ICCS 2009 Baton Rouge, Louisiana: LNCS, 2009. • R. Strijkers, M. Cristea, C. d. Laat, and R. Meijer, "Application Framework for Programmable Network Control," in 1st International Workshop on Network Embedded Management & Applications Niagara Falls, Canada: Springer, 2010. • R. Strijkers, et al., "Network Resource Control for Grid Workflow Management Systems," in Proceedings of the 2010 6th World Congress on Services: IEEE Computer Society, 2010. • R. Strijkers, "Interactive Networks at Super Computing 2008". [Online]. Available: http://ciosresearch.org/interactive_networks [Accessed: June, 2009]. • R. J. Meijer, R. J. Strijkers, L. Gommans, and C. de Laat, "User Programmable Virtualized Networks," in Proceedings of IEEE International Conference on e-Science and Grid Computing: IEEE Computer Society, 2006. • R. J. Meijer and A. R. Koelewijn, "The Development of an Early Warning System for Dike Failures," in 1st International Conference and Exhibition on WATERSIDE SECURITY Copenhagen, Denmark, 2008. • M. Cristea, R. Strijkers, D. Marchal, L. Gommans, C. de Laat, and R.J. Meijer., "Supporting Communities in Programmable Networks: gTBN," in IFIP Integrated Management 2009 New York 2009. • G. Cook, "ICT and E-Science as an Innovation Platform in The Netherlands," in Cook Report on Internet Protocol: Cook Network Consultants, 2009. • R. Strijkers, et al., "AMOS: Using the Cloud for On-Demand Execution of e-Science Applications," in IEEE e-Science 2010 Brisbane, Australia: IEEE Computer Society, 2010. Rudolf Strijkers

More Related