SlideShare una empresa de Scribd logo
1 de 50
Descargar para leer sin conexión
CODE-N-PLAY:

      DEPLOYABLE PROTOCOL STACKS



      PouzinSociety@FutureNet 2010




                           Waterford Institute of Technology (WIT)              www: www.tssg.org          e-mail: pphelan@tssg.org
Patrick Phelan             Telecommunications Software & Systems Group (TSSG)   Tel : +353 (0)51 30-2945   mobile: +353 (0)860724364
Senior Research Engineer   Cork Road, Waterford, Ireland                        Fax: +353 (0)51 30-2901    IN: www.linkedin.com/in/1pphelan
Agenda

 • Background
    TSSG / WIT
    EU FP7 –ICT 4WARD
 • The Fun Stuff
    Prelude
    Fetching the pieces
    Network Medium
 • Roadmap
    Today
    Tomorrow
 • Demo / Backup Slides
Background




                           Waterford Institute of Technology (WIT)              www: www.tssg.org          e-mail: pphelan@tssg.org
Patrick Phelan             Telecommunications Software & Systems Group (TSSG)   Tel : +353 (0)51 30-2945   mobile: +353 (0)860724364
Senior Research Engineer   Cork Road, Waterford, Ireland                        Fax: +353 (0)51 30-2901    IN: www.linkedin.com/in/1pphelan
TSSG

 • The Telecommunications Software & Systems Group
   (TSSG) is one of the largest integrated information
   communication technology (ICT) research centres in
   Ireland.
 • TSSG is part of Waterford Institute of Technology
   (WIT), and is based at WIT’s West Campus in
   Carriganore, Co. Waterford, Ireland.
 • More Information:
    http://www.wit.ie
    http://www.tssg.org
TSSG - Balanced Ecosystem



               Commercial      Commercial
                               The Entrepreneur




      TSSG          Basic
                    Research      Basic Research
                                  The Science



                Applied
                Research       Applied Research
                               The Engineering
TSSG:


        • Basic Research (HEA, SFI)
         One of the top research centers in Ireland
          (telecommunications)

        • Applied Research (EU FP7)
         Leading Irish participant in EU FP7 funding – 11 projects
         Ranked in top 10 research institutes for Future Internet
TSSG:



        • Commercialization (EI)
            One of the top research groups for commercialization
            Leading edge innovation & technology development
             in: IMS, Web 2.0 Mobile
        • Commercial ‘Spin-offs’ / ‘Spin-ins’
            Early stage technology clusters emerging based
             around TSSG work
TSSG: Where I work 
4WARD [IP EU FP7 ICT]

 • The 4WARD project is looking to the new architecture
   and design of the Future Internet and has set itself the
   task of creating a new approach to networking
   architecture that is more flexible and better adapted to
   present and future requirements.
 • Co-Ordinator : Ericsson
    37 Partners including Nokia, Alcatel-Lucent, NEC,
     Telefonica, Deutsche Telekom, France Telecom, Telecom
     Italia…
 • More Information
    http://www.4ward-project.eu
Finally the interesting stuff…




                           Waterford Institute of Technology (WIT)              www: www.tssg.org          e-mail: pphelan@tssg.org
Patrick Phelan             Telecommunications Software & Systems Group (TSSG)   Tel : +353 (0)51 30-2945   mobile: +353 (0)860724364
Senior Research Engineer   Cork Road, Waterford, Ireland                        Fax: +353 (0)51 30-2901    IN: www.linkedin.com/in/1pphelan
Prelude: Timeline from the beginning…
Prelude: Guiding Principles
 • KISS Principle
      Light weight, Modular, Flexible, Best Practises
      Agility + Flexibility + Ease-Of-Use = Productivity
      Java (Popular, low barrier to entry)
      OSGi (Industry Standard)

 • Software Development Practices
    Convention, Configuration, Code
      In that order for higher productivity
    Service based through & through
      Looser coupling, easier maintenance
    Grows with the Scenarios
      Pick-and-choose only the features required
Executive Summary: In a nutshell

 • Java based development, deployment and execution
      No C/C++, No OS Kernel (User space), No pain
      Removal of barrier to entry
      Cross platform – OS independent.
      Off the shelf (free/community tools / platform)
      Applying Industry practises / tooling
 • Design – Develop – Deploy
 • Its Software - Nothing is impossible!

 • Network Protocol(s) / Stack implementation / testing
 • Network & Node configuration & deployment
 • Complete Programmatic Control – Repeat Scenarios
Fetching Pieces: SpringSource dm Server
Fetching Pieces: SpringSource dm Server

 • SpringSource dm Server™ is a completely modular,
   OSGi-based Java server designed to run enterprise Java
   applications and Spring-powered applications with a
   new degree of flexibility and reliability. The
   SpringSource dm Server is based on the new
   SpringSource Dynamic Module Kernel™ (dm Kernel).
    http://www.springsource.org/dmserver
 • OSGi™ - The Dynamic Module System for Java™
    http://www.osgi.org/Main/HomePage
 • SpringSource dm Server™ moves to Eclipse
    Project Virgo (EPL Licensing)
Fetching Pieces: Network Stack (Jnode)
Fetching Pieces: Network Stack (Jnode)

 • JNode (Java New Operating System Design Effort) is an
   open-source project to create a Java platform operating
   system. The project has taken the unique direction of
   creating all the software in Java itself, with the
   exception of some assembly language to boot and load
   the system.
    http://www.jnode.org


 • Extracted/Componentised the Network Sub-System of
   the Operating System.
    Protocols, Device & Network Infrastructure.
Fetching Pieces: Transport (XMPP)

 • XMPP – http://www.xmpp.org
    Open Standards – RFC 3920, 3921
    Underlying protocol for most IM applications.
      Jabber, Google Talk…
    Widespread use, various implementations.
    Open Source Clients / Servers / Libraries.
      Ignite Realtime – Openfire (Server) / Smack (Client Library)
      http://www.igniterealtime.org/projects/openfire/
    Interesting side effect : XMPP is a reliable transport.
      Programmatic control of “unreliability”
      Reproducible failure / congestion scenarios.
Assembly: From Models to Implementation

 •   OSGi - bundles are components.
 •   OSGi - network protocols are exposed as OSGi services
 •   OSGi - “network stack” is SOA assembled
 •   OSGi – “Application” is a component node
 •   dm Server - “Application”(s) isolated from each other
 •   dm Server – Deployment platform.
 •   The underlying network medium is XMPP – virtual
     network (overlay).
      XMPP is the current flavour of overlay.
      Abstracted at the driver interface – can be implemented
       over “sockets” or magic pixie dust if required.
Network Medium
Network Medium: Concepts
  Point-to-Point / Multi-Point




   Note:
       In terms of hardware all network connectivity is either point-to-point or multi-
       point.
Network Medium: XMPP
Network Medium: Point-to-Point
Network Medium: Multi-Point
Network Medium: Its All About The PDU


                                    The payload of one
                                    layer is encapsulated
                                    with either a
                                    header/trailer of the
                                    current layer and
                                    becomes the payload
                                    of the N-1 layer.

                                    This facilitates the
                                    encapsulation of our
                                    TCP/IP stack through
                                    XMPP and the
                                    existing TCP/IP stack
                                    unharmed.
Network Medium: Details

 • A chat room represents a hardware network.
 • A IM buddy represents a hardware Point-of-Attachment
   (POA) for our nodes.
 • A node with multiple POAs can be a member of
   multiple networks i.e. can be a router.
 • Any message sent by a node on the network can be
   seen by any other node with a POA to that network.
Network Medium: Sample PDUs




     Note: As there is full control of the network medium, we can add as much/little additional data as
           required to PDU.
Network Medium: Trace (PCAP)




              Note: Off the shelf tooling / GUIs where possible.
Roadmap




                           Waterford Institute of Technology (WIT)              www: www.tssg.org          e-mail: pphelan@tssg.org
Patrick Phelan             Telecommunications Software & Systems Group (TSSG)   Tel : +353 (0)51 30-2945   mobile: +353 (0)860724364
Senior Research Engineer   Cork Road, Waterford, Ireland                        Fax: +353 (0)51 30-2901    IN: www.linkedin.com/in/1pphelan
Today: Toolbox

 • Documentation
    Developer Build System / Install Guides
    Various free resources (internet)
 • Tools / Frameworks
    Eclipse (with additional plugins)
    SpringSource dm Server
    Java 6
 • Up and Running quickly with templates
    Spring OSGi PLAN Template
    Spring OSGi Bundle Template (similar to a JAR)
    Templated examples – starting points
Today: Status (Pictures are pretty)
Today: Status

 • IPv4 Based Network Stack (verified operational)
    Faux Socket API
    TCP / UDP / ICMP/ IP/ ARP/ RARP
    Loopback Driver / Ethernet Driver
    Device Manager / NetworkLayer Manager / Name Service
    Dynamic Stack Configuration (IP addresses/ Routes/
     Interfaces / Hostname Resolution)
    Multi-Threaded Operation
      Bundles, Threadpools (send, packet processor, etc.), logging
    Service Orientated Interaction (Protocols)
    Logging – PCAP format traces from networks.
Today: Node Deployment




 • Node deployment via “Plan” file.
    • XML blueprint for “application” or nodes.
    • !Full Circle! – From models to deployment plans 
Today: Node WebGUI
Today & tomorrow: Networks of Nodes

                               • Topologies are configured
                                 using the XMPP chat
                                 room(s) and the Node
                                 connections to them.

• Currently deploying nodes
  within dm Server(s) across
  physical machines.

• In the Future – Cloud
  Deployment
Tomorrow: TODO List

 • Wireless Support
    Allow prototyping of network protocols
    Allows roaming/mobility scenarios
 • Add “Slices” support to our component bundles
    Allow easier / better 3rd party integration
    Increased flexibility for deployments
 • Cloud Deployment
    Provide PlanetLab / PanLab / Amazon integration
    Large scale experiments
    Sometimes a low end laptop might not be enough: 4WARD
     Review Demo - 5 nodes, 4 networks, 3 management domains
Tomorrow: TODO List

 • TINOS (Going Open Source)
    Currently within the 4WARD IPR Process
    Currently LGPL for all components
    What’s in a name: TINOS
      A small island off the coast of Greece.
      Who knew – picking a project name was so difficult.
    Building a community
      Remove the barrier to entry to Network Protocols/Stacks
      Educate, Educate, Educate
      Developers, Developers, Developers
Tomorrow: TODO List

 • Pouzin Society (RINA)
    Open Implementation of RINA within TINOS
    Experimental Sandbox / Testbed (within a laptop)
    Pre-Canned RINA Demos / Scenarios



                                       Contribute
                                    Help us build it
Demo Shots / Backup Slides




                           Waterford Institute of Technology (WIT)              www: www.tssg.org          e-mail: pphelan@tssg.org
Patrick Phelan             Telecommunications Software & Systems Group (TSSG)   Tel : +353 (0)51 30-2945   mobile: +353 (0)860724364
Senior Research Engineer   Cork Road, Waterford, Ireland                        Fax: +353 (0)51 30-2901    IN: www.linkedin.com/in/1pphelan
Demo Shots: OSGi Console (2 Nodes)
Demo Shots: Bundles (IPv4)
Demo Shots: Bundles (TCP)
Demo Shots: Bundles (Support)
Demo Shots: Node 1 Trace
Demo Shots: Network Trace (Arp/Ping)
Backup: IM Ping
Backup: Trace Data (netstat / ping)
Backup: Trace Data (TCP Test)
Backup: Bundles@eclipse
Backup: Java Packages / Deps examples

Más contenido relacionado

La actualidad más candente

RINA Tutorial @ IEEE Globecom 2014
RINA Tutorial @ IEEE Globecom 2014RINA Tutorial @ IEEE Globecom 2014
RINA Tutorial @ IEEE Globecom 2014Eleni Trouva
 
Internet Programming With Python Presentation
Internet Programming With Python PresentationInternet Programming With Python Presentation
Internet Programming With Python PresentationAkramWaseem
 
IRATI Experimentation, US-EU FIRE Workshop
IRATI Experimentation, US-EU FIRE WorkshopIRATI Experimentation, US-EU FIRE Workshop
IRATI Experimentation, US-EU FIRE WorkshopEleni Trouva
 
Unreliable inter process communication in Ethernet: Migrating to RINA with th...
Unreliable inter process communication in Ethernet: Migrating to RINA with th...Unreliable inter process communication in Ethernet: Migrating to RINA with th...
Unreliable inter process communication in Ethernet: Migrating to RINA with th...Eleni Trouva
 
interoperatbility between IPv4 and IPv6
interoperatbility between IPv4 and IPv6interoperatbility between IPv4 and IPv6
interoperatbility between IPv4 and IPv6Nitin Gehlot
 
Possible futures for the internet: Sander Steffann, IPv6 specialist, co-chair...
Possible futures for the internet: Sander Steffann, IPv6 specialist, co-chair...Possible futures for the internet: Sander Steffann, IPv6 specialist, co-chair...
Possible futures for the internet: Sander Steffann, IPv6 specialist, co-chair...IPv6no
 
The TCP/IP and OSI models
The TCP/IP and OSI modelsThe TCP/IP and OSI models
The TCP/IP and OSI modelsJake Weaver
 
Google and IPv6: Steinar H. Gunderson, Software engineer, Google
Google and IPv6: Steinar H. Gunderson, Software engineer, GoogleGoogle and IPv6: Steinar H. Gunderson, Software engineer, Google
Google and IPv6: Steinar H. Gunderson, Software engineer, GoogleIPv6no
 
RINA: Update on research and prototyping activities. Global Future Internet W...
RINA: Update on research and prototyping activities. Global Future Internet W...RINA: Update on research and prototyping activities. Global Future Internet W...
RINA: Update on research and prototyping activities. Global Future Internet W...Eleni Trouva
 
Ron Broersma dren-stavanger-22 nov2011
Ron Broersma dren-stavanger-22 nov2011Ron Broersma dren-stavanger-22 nov2011
Ron Broersma dren-stavanger-22 nov2011IPv6no
 
A secure tunnel technique using i pv6 transition over ipv4 channel
A secure tunnel technique using i pv6 transition over ipv4 channelA secure tunnel technique using i pv6 transition over ipv4 channel
A secure tunnel technique using i pv6 transition over ipv4 channelMade Artha
 
Network research
Network researchNetwork research
Network researchJisc
 
Rina IRATI GLIF Singapore 2013
Rina IRATI GLIF Singapore 2013Rina IRATI GLIF Singapore 2013
Rina IRATI GLIF Singapore 2013Eleni Trouva
 

La actualidad más candente (15)

RINA Tutorial @ IEEE Globecom 2014
RINA Tutorial @ IEEE Globecom 2014RINA Tutorial @ IEEE Globecom 2014
RINA Tutorial @ IEEE Globecom 2014
 
Internet Programming With Python Presentation
Internet Programming With Python PresentationInternet Programming With Python Presentation
Internet Programming With Python Presentation
 
IRATI Experimentation, US-EU FIRE Workshop
IRATI Experimentation, US-EU FIRE WorkshopIRATI Experimentation, US-EU FIRE Workshop
IRATI Experimentation, US-EU FIRE Workshop
 
SDN and metrics from the SDOs
SDN and metrics from the SDOsSDN and metrics from the SDOs
SDN and metrics from the SDOs
 
Unreliable inter process communication in Ethernet: Migrating to RINA with th...
Unreliable inter process communication in Ethernet: Migrating to RINA with th...Unreliable inter process communication in Ethernet: Migrating to RINA with th...
Unreliable inter process communication in Ethernet: Migrating to RINA with th...
 
interoperatbility between IPv4 and IPv6
interoperatbility between IPv4 and IPv6interoperatbility between IPv4 and IPv6
interoperatbility between IPv4 and IPv6
 
Possible futures for the internet: Sander Steffann, IPv6 specialist, co-chair...
Possible futures for the internet: Sander Steffann, IPv6 specialist, co-chair...Possible futures for the internet: Sander Steffann, IPv6 specialist, co-chair...
Possible futures for the internet: Sander Steffann, IPv6 specialist, co-chair...
 
2017 dagstuhl-nfv-rothenberg
2017 dagstuhl-nfv-rothenberg2017 dagstuhl-nfv-rothenberg
2017 dagstuhl-nfv-rothenberg
 
The TCP/IP and OSI models
The TCP/IP and OSI modelsThe TCP/IP and OSI models
The TCP/IP and OSI models
 
Google and IPv6: Steinar H. Gunderson, Software engineer, Google
Google and IPv6: Steinar H. Gunderson, Software engineer, GoogleGoogle and IPv6: Steinar H. Gunderson, Software engineer, Google
Google and IPv6: Steinar H. Gunderson, Software engineer, Google
 
RINA: Update on research and prototyping activities. Global Future Internet W...
RINA: Update on research and prototyping activities. Global Future Internet W...RINA: Update on research and prototyping activities. Global Future Internet W...
RINA: Update on research and prototyping activities. Global Future Internet W...
 
Ron Broersma dren-stavanger-22 nov2011
Ron Broersma dren-stavanger-22 nov2011Ron Broersma dren-stavanger-22 nov2011
Ron Broersma dren-stavanger-22 nov2011
 
A secure tunnel technique using i pv6 transition over ipv4 channel
A secure tunnel technique using i pv6 transition over ipv4 channelA secure tunnel technique using i pv6 transition over ipv4 channel
A secure tunnel technique using i pv6 transition over ipv4 channel
 
Network research
Network researchNetwork research
Network research
 
Rina IRATI GLIF Singapore 2013
Rina IRATI GLIF Singapore 2013Rina IRATI GLIF Singapore 2013
Rina IRATI GLIF Singapore 2013
 

Destacado (9)

10 fn s15
10 fn s1510 fn s15
10 fn s15
 
10 fn s36
10 fn s3610 fn s36
10 fn s36
 
10 fn s45
10 fn s4510 fn s45
10 fn s45
 
10 fn s46
10 fn s4610 fn s46
10 fn s46
 
10 fn s35
10 fn s3510 fn s35
10 fn s35
 
10 fn s37
10 fn s3710 fn s37
10 fn s37
 
10 fn s10
10 fn s1010 fn s10
10 fn s10
 
10 fn tut3
10 fn tut310 fn tut3
10 fn tut3
 
10 fn s34
10 fn s3410 fn s34
10 fn s34
 

Similar a 10 fn s03

Future services on Janet
Future services on JanetFuture services on Janet
Future services on JanetJisc
 
ETE405-lec4.pdf
ETE405-lec4.pdfETE405-lec4.pdf
ETE405-lec4.pdfmashiur
 
4th SDN Interest Group Seminar-Session 2-2(130313)
4th SDN Interest Group Seminar-Session 2-2(130313)4th SDN Interest Group Seminar-Session 2-2(130313)
4th SDN Interest Group Seminar-Session 2-2(130313)NAIM Networks, Inc.
 
Science DMZ
Science DMZScience DMZ
Science DMZJisc
 
On SDN Research Topics - Christian Esteve Rothenberg
On SDN Research Topics - Christian Esteve RothenbergOn SDN Research Topics - Christian Esteve Rothenberg
On SDN Research Topics - Christian Esteve RothenbergCPqD
 
Tutorial: Maximizing Performance and Network Utility with a Science DMZ
Tutorial: Maximizing Performance and Network Utility with a Science DMZTutorial: Maximizing Performance and Network Utility with a Science DMZ
Tutorial: Maximizing Performance and Network Utility with a Science DMZGlobus
 
From network beginner to network programmer.v2
From network beginner to network programmer.v2From network beginner to network programmer.v2
From network beginner to network programmer.v2Telematika Open Session
 
PLNOG 8: Ivan Pepelnjak - Data Center Fabrics - What Really Matters
PLNOG 8: Ivan Pepelnjak - Data Center Fabrics - What Really Matters PLNOG 8: Ivan Pepelnjak - Data Center Fabrics - What Really Matters
PLNOG 8: Ivan Pepelnjak - Data Center Fabrics - What Really Matters PROIDEA
 
computer network NCC l4dc assingment
computer network NCC l4dc assingment computer network NCC l4dc assingment
computer network NCC l4dc assingment David Parker
 
IPv4 to IPv6 network transformation
IPv4 to IPv6 network transformationIPv4 to IPv6 network transformation
IPv4 to IPv6 network transformationNikolay Milovanov
 
Three years of OFELIA - taking stock
Three years of OFELIA - taking stockThree years of OFELIA - taking stock
Three years of OFELIA - taking stockFIBRE Testbed
 
76924356 synopsis-network
76924356 synopsis-network76924356 synopsis-network
76924356 synopsis-networklklokesh
 
ETE405-lec4.pptx
ETE405-lec4.pptxETE405-lec4.pptx
ETE405-lec4.pptxmashiur
 
Securing the Internet of Things
Securing the Internet of ThingsSecuring the Internet of Things
Securing the Internet of ThingsPaul Fremantle
 

Similar a 10 fn s03 (20)

Future services on Janet
Future services on JanetFuture services on Janet
Future services on Janet
 
SDN-based Inter-Cloud Federation for OF@TEIN
SDN-based Inter-Cloud Federation for OF@TEINSDN-based Inter-Cloud Federation for OF@TEIN
SDN-based Inter-Cloud Federation for OF@TEIN
 
CV-05.02.2017
CV-05.02.2017CV-05.02.2017
CV-05.02.2017
 
Tungsten Fabric and DPDK vRouter Architecture
Tungsten Fabric and DPDK vRouter ArchitectureTungsten Fabric and DPDK vRouter Architecture
Tungsten Fabric and DPDK vRouter Architecture
 
ETE405-lec4.pdf
ETE405-lec4.pdfETE405-lec4.pdf
ETE405-lec4.pdf
 
General Learning.pptx
General Learning.pptxGeneral Learning.pptx
General Learning.pptx
 
4th SDN Interest Group Seminar-Session 2-2(130313)
4th SDN Interest Group Seminar-Session 2-2(130313)4th SDN Interest Group Seminar-Session 2-2(130313)
4th SDN Interest Group Seminar-Session 2-2(130313)
 
Science DMZ
Science DMZScience DMZ
Science DMZ
 
On SDN Research Topics - Christian Esteve Rothenberg
On SDN Research Topics - Christian Esteve RothenbergOn SDN Research Topics - Christian Esteve Rothenberg
On SDN Research Topics - Christian Esteve Rothenberg
 
Tutorial: Maximizing Performance and Network Utility with a Science DMZ
Tutorial: Maximizing Performance and Network Utility with a Science DMZTutorial: Maximizing Performance and Network Utility with a Science DMZ
Tutorial: Maximizing Performance and Network Utility with a Science DMZ
 
From network beginner to network programmer.v2
From network beginner to network programmer.v2From network beginner to network programmer.v2
From network beginner to network programmer.v2
 
Feec telecom-nw-softwarization-aug-2015
Feec telecom-nw-softwarization-aug-2015Feec telecom-nw-softwarization-aug-2015
Feec telecom-nw-softwarization-aug-2015
 
PLNOG 8: Ivan Pepelnjak - Data Center Fabrics - What Really Matters
PLNOG 8: Ivan Pepelnjak - Data Center Fabrics - What Really Matters PLNOG 8: Ivan Pepelnjak - Data Center Fabrics - What Really Matters
PLNOG 8: Ivan Pepelnjak - Data Center Fabrics - What Really Matters
 
computer network NCC l4dc assingment
computer network NCC l4dc assingment computer network NCC l4dc assingment
computer network NCC l4dc assingment
 
IPv4 to IPv6 network transformation
IPv4 to IPv6 network transformationIPv4 to IPv6 network transformation
IPv4 to IPv6 network transformation
 
Three years of OFELIA - taking stock
Three years of OFELIA - taking stockThree years of OFELIA - taking stock
Three years of OFELIA - taking stock
 
Experiences of an Irish Researcher in FP6
Experiences of an Irish Researcher in FP6Experiences of an Irish Researcher in FP6
Experiences of an Irish Researcher in FP6
 
76924356 synopsis-network
76924356 synopsis-network76924356 synopsis-network
76924356 synopsis-network
 
ETE405-lec4.pptx
ETE405-lec4.pptxETE405-lec4.pptx
ETE405-lec4.pptx
 
Securing the Internet of Things
Securing the Internet of ThingsSecuring the Internet of Things
Securing the Internet of Things
 

Más de Scott Foster (20)

10 fn tut2
10 fn tut210 fn tut2
10 fn tut2
 
10 fn tut1
10 fn tut110 fn tut1
10 fn tut1
 
10 fn s48
10 fn s4810 fn s48
10 fn s48
 
10 fn s47
10 fn s4710 fn s47
10 fn s47
 
10 fn s46
10 fn s4610 fn s46
10 fn s46
 
10 fn s45
10 fn s4510 fn s45
10 fn s45
 
10 fn s44
10 fn s4410 fn s44
10 fn s44
 
10 fn s43
10 fn s4310 fn s43
10 fn s43
 
10 fn s42
10 fn s4210 fn s42
10 fn s42
 
10 fn s40
10 fn s4010 fn s40
10 fn s40
 
10 fn s38
10 fn s3810 fn s38
10 fn s38
 
10 fn s37
10 fn s3710 fn s37
10 fn s37
 
10 fn s36
10 fn s3610 fn s36
10 fn s36
 
10 fn s35
10 fn s3510 fn s35
10 fn s35
 
10 fn s34
10 fn s3410 fn s34
10 fn s34
 
10 fn s33
10 fn s3310 fn s33
10 fn s33
 
10 fn s32
10 fn s3210 fn s32
10 fn s32
 
10 fn s31
10 fn s3110 fn s31
10 fn s31
 
10 fn s29
10 fn s2910 fn s29
10 fn s29
 
10 fn s28
10 fn s2810 fn s28
10 fn s28
 

10 fn s03

  • 1. CODE-N-PLAY: DEPLOYABLE PROTOCOL STACKS PouzinSociety@FutureNet 2010 Waterford Institute of Technology (WIT) www: www.tssg.org e-mail: pphelan@tssg.org Patrick Phelan Telecommunications Software & Systems Group (TSSG) Tel : +353 (0)51 30-2945 mobile: +353 (0)860724364 Senior Research Engineer Cork Road, Waterford, Ireland Fax: +353 (0)51 30-2901 IN: www.linkedin.com/in/1pphelan
  • 2. Agenda • Background  TSSG / WIT  EU FP7 –ICT 4WARD • The Fun Stuff  Prelude  Fetching the pieces  Network Medium • Roadmap  Today  Tomorrow • Demo / Backup Slides
  • 3. Background Waterford Institute of Technology (WIT) www: www.tssg.org e-mail: pphelan@tssg.org Patrick Phelan Telecommunications Software & Systems Group (TSSG) Tel : +353 (0)51 30-2945 mobile: +353 (0)860724364 Senior Research Engineer Cork Road, Waterford, Ireland Fax: +353 (0)51 30-2901 IN: www.linkedin.com/in/1pphelan
  • 4. TSSG • The Telecommunications Software & Systems Group (TSSG) is one of the largest integrated information communication technology (ICT) research centres in Ireland. • TSSG is part of Waterford Institute of Technology (WIT), and is based at WIT’s West Campus in Carriganore, Co. Waterford, Ireland. • More Information:  http://www.wit.ie  http://www.tssg.org
  • 5. TSSG - Balanced Ecosystem Commercial Commercial The Entrepreneur TSSG Basic Research Basic Research The Science Applied Research Applied Research The Engineering
  • 6. TSSG: • Basic Research (HEA, SFI)  One of the top research centers in Ireland (telecommunications) • Applied Research (EU FP7)  Leading Irish participant in EU FP7 funding – 11 projects  Ranked in top 10 research institutes for Future Internet
  • 7. TSSG: • Commercialization (EI)  One of the top research groups for commercialization  Leading edge innovation & technology development in: IMS, Web 2.0 Mobile • Commercial ‘Spin-offs’ / ‘Spin-ins’  Early stage technology clusters emerging based around TSSG work
  • 8. TSSG: Where I work 
  • 9. 4WARD [IP EU FP7 ICT] • The 4WARD project is looking to the new architecture and design of the Future Internet and has set itself the task of creating a new approach to networking architecture that is more flexible and better adapted to present and future requirements. • Co-Ordinator : Ericsson  37 Partners including Nokia, Alcatel-Lucent, NEC, Telefonica, Deutsche Telekom, France Telecom, Telecom Italia… • More Information  http://www.4ward-project.eu
  • 10. Finally the interesting stuff… Waterford Institute of Technology (WIT) www: www.tssg.org e-mail: pphelan@tssg.org Patrick Phelan Telecommunications Software & Systems Group (TSSG) Tel : +353 (0)51 30-2945 mobile: +353 (0)860724364 Senior Research Engineer Cork Road, Waterford, Ireland Fax: +353 (0)51 30-2901 IN: www.linkedin.com/in/1pphelan
  • 11. Prelude: Timeline from the beginning…
  • 12. Prelude: Guiding Principles • KISS Principle  Light weight, Modular, Flexible, Best Practises  Agility + Flexibility + Ease-Of-Use = Productivity  Java (Popular, low barrier to entry)  OSGi (Industry Standard) • Software Development Practices  Convention, Configuration, Code  In that order for higher productivity  Service based through & through  Looser coupling, easier maintenance  Grows with the Scenarios  Pick-and-choose only the features required
  • 13. Executive Summary: In a nutshell • Java based development, deployment and execution  No C/C++, No OS Kernel (User space), No pain  Removal of barrier to entry  Cross platform – OS independent.  Off the shelf (free/community tools / platform)  Applying Industry practises / tooling • Design – Develop – Deploy • Its Software - Nothing is impossible! • Network Protocol(s) / Stack implementation / testing • Network & Node configuration & deployment • Complete Programmatic Control – Repeat Scenarios
  • 15. Fetching Pieces: SpringSource dm Server • SpringSource dm Server™ is a completely modular, OSGi-based Java server designed to run enterprise Java applications and Spring-powered applications with a new degree of flexibility and reliability. The SpringSource dm Server is based on the new SpringSource Dynamic Module Kernel™ (dm Kernel).  http://www.springsource.org/dmserver • OSGi™ - The Dynamic Module System for Java™  http://www.osgi.org/Main/HomePage • SpringSource dm Server™ moves to Eclipse  Project Virgo (EPL Licensing)
  • 16. Fetching Pieces: Network Stack (Jnode)
  • 17. Fetching Pieces: Network Stack (Jnode) • JNode (Java New Operating System Design Effort) is an open-source project to create a Java platform operating system. The project has taken the unique direction of creating all the software in Java itself, with the exception of some assembly language to boot and load the system.  http://www.jnode.org • Extracted/Componentised the Network Sub-System of the Operating System.  Protocols, Device & Network Infrastructure.
  • 18. Fetching Pieces: Transport (XMPP) • XMPP – http://www.xmpp.org  Open Standards – RFC 3920, 3921  Underlying protocol for most IM applications.  Jabber, Google Talk…  Widespread use, various implementations.  Open Source Clients / Servers / Libraries.  Ignite Realtime – Openfire (Server) / Smack (Client Library)  http://www.igniterealtime.org/projects/openfire/  Interesting side effect : XMPP is a reliable transport.  Programmatic control of “unreliability”  Reproducible failure / congestion scenarios.
  • 19. Assembly: From Models to Implementation • OSGi - bundles are components. • OSGi - network protocols are exposed as OSGi services • OSGi - “network stack” is SOA assembled • OSGi – “Application” is a component node • dm Server - “Application”(s) isolated from each other • dm Server – Deployment platform. • The underlying network medium is XMPP – virtual network (overlay).  XMPP is the current flavour of overlay.  Abstracted at the driver interface – can be implemented over “sockets” or magic pixie dust if required.
  • 21. Network Medium: Concepts Point-to-Point / Multi-Point Note: In terms of hardware all network connectivity is either point-to-point or multi- point.
  • 25. Network Medium: Its All About The PDU The payload of one layer is encapsulated with either a header/trailer of the current layer and becomes the payload of the N-1 layer. This facilitates the encapsulation of our TCP/IP stack through XMPP and the existing TCP/IP stack unharmed.
  • 26. Network Medium: Details • A chat room represents a hardware network. • A IM buddy represents a hardware Point-of-Attachment (POA) for our nodes. • A node with multiple POAs can be a member of multiple networks i.e. can be a router. • Any message sent by a node on the network can be seen by any other node with a POA to that network.
  • 27. Network Medium: Sample PDUs Note: As there is full control of the network medium, we can add as much/little additional data as required to PDU.
  • 28. Network Medium: Trace (PCAP) Note: Off the shelf tooling / GUIs where possible.
  • 29. Roadmap Waterford Institute of Technology (WIT) www: www.tssg.org e-mail: pphelan@tssg.org Patrick Phelan Telecommunications Software & Systems Group (TSSG) Tel : +353 (0)51 30-2945 mobile: +353 (0)860724364 Senior Research Engineer Cork Road, Waterford, Ireland Fax: +353 (0)51 30-2901 IN: www.linkedin.com/in/1pphelan
  • 30. Today: Toolbox • Documentation  Developer Build System / Install Guides  Various free resources (internet) • Tools / Frameworks  Eclipse (with additional plugins)  SpringSource dm Server  Java 6 • Up and Running quickly with templates  Spring OSGi PLAN Template  Spring OSGi Bundle Template (similar to a JAR)  Templated examples – starting points
  • 31. Today: Status (Pictures are pretty)
  • 32. Today: Status • IPv4 Based Network Stack (verified operational)  Faux Socket API  TCP / UDP / ICMP/ IP/ ARP/ RARP  Loopback Driver / Ethernet Driver  Device Manager / NetworkLayer Manager / Name Service  Dynamic Stack Configuration (IP addresses/ Routes/ Interfaces / Hostname Resolution)  Multi-Threaded Operation  Bundles, Threadpools (send, packet processor, etc.), logging  Service Orientated Interaction (Protocols)  Logging – PCAP format traces from networks.
  • 33. Today: Node Deployment • Node deployment via “Plan” file. • XML blueprint for “application” or nodes. • !Full Circle! – From models to deployment plans 
  • 35. Today & tomorrow: Networks of Nodes • Topologies are configured using the XMPP chat room(s) and the Node connections to them. • Currently deploying nodes within dm Server(s) across physical machines. • In the Future – Cloud Deployment
  • 36. Tomorrow: TODO List • Wireless Support  Allow prototyping of network protocols  Allows roaming/mobility scenarios • Add “Slices” support to our component bundles  Allow easier / better 3rd party integration  Increased flexibility for deployments • Cloud Deployment  Provide PlanetLab / PanLab / Amazon integration  Large scale experiments  Sometimes a low end laptop might not be enough: 4WARD Review Demo - 5 nodes, 4 networks, 3 management domains
  • 37. Tomorrow: TODO List • TINOS (Going Open Source)  Currently within the 4WARD IPR Process  Currently LGPL for all components  What’s in a name: TINOS  A small island off the coast of Greece.  Who knew – picking a project name was so difficult.  Building a community  Remove the barrier to entry to Network Protocols/Stacks  Educate, Educate, Educate  Developers, Developers, Developers
  • 38. Tomorrow: TODO List • Pouzin Society (RINA)  Open Implementation of RINA within TINOS  Experimental Sandbox / Testbed (within a laptop)  Pre-Canned RINA Demos / Scenarios Contribute Help us build it
  • 39. Demo Shots / Backup Slides Waterford Institute of Technology (WIT) www: www.tssg.org e-mail: pphelan@tssg.org Patrick Phelan Telecommunications Software & Systems Group (TSSG) Tel : +353 (0)51 30-2945 mobile: +353 (0)860724364 Senior Research Engineer Cork Road, Waterford, Ireland Fax: +353 (0)51 30-2901 IN: www.linkedin.com/in/1pphelan
  • 40. Demo Shots: OSGi Console (2 Nodes)
  • 43. Demo Shots: Bundles (Support)
  • 44. Demo Shots: Node 1 Trace
  • 45. Demo Shots: Network Trace (Arp/Ping)
  • 47. Backup: Trace Data (netstat / ping)
  • 48. Backup: Trace Data (TCP Test)
  • 50. Backup: Java Packages / Deps examples