Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

The hague rina-workshop-interop-deployment_vincenzo


Published on

RINA interop and deployment

Published in: Internet
  • Be the first to comment

  • Be the first to like this

The hague rina-workshop-interop-deployment_vincenzo

  1. 1. RINA interoperability with the Internet Vincenzo Maffione, Gino Carrozzo (Nextworks) SDN & OpenFlow World Congress The Hague (NL) – 11-14 October 2016 1/6
  2. 2. RINA and the Internet: two practical issues 1. How do we deploy RINA together with the Internet? ● Three solutions: o RINA as an overlay o RINA as a substrate o RINA/TCP gateways 2. How do we port existing network applications to RINA? ● A POSIX-like API for RINA 2/6
  3. 3. RINA as an overlay ● Shim DIFs wrap legacy technologies ○ Shim over Ethernet ○ Shim over UDP (or TCP) ● We can wrap the Internet in a shim DIF over UDP ● Pro: RINA applications benefit from QoS, mobility, security, … ● Con: Applications need to be ported to RINA 3/6 A InternetEthernet Shim DIFs B Shim DIF over UDP Ethernet Shim DIFs RINA network RINA network Banking DIF Border router Border router Server host Client host
  4. 4. RINA as a substrate ● Adapter applications to tunnel IP traffic through RINA flows ○ TUN/TAP software devices used to intercept IP traffic ● Pro: Unmodified TCP/IP (socket) applications can run over RINA ● Con: Tunneling introduces overhead (latency, CPU cycles) ● Applications indirectly benefit from RINA (QoS, security, …) → limitations 4/6 app1 DIF Adapter Lower DIFs Host 1 TAP app2 Adapter Host 2 TAP app3 Adapter Host 3 TAP
  5. 5. RINA/TCP gateways ● Gateway applications to forward traffic between TCP sockets and RINA flows ● Pro: TCP clients can talk with RINA servers (and the other way around) ● Pro: Applications benefit from RINA ● Con: Forwarding introduces overhead ● Con: Client or server needs to be ported to RINA 5/6 RINA network (Arbitrary composition of DIFs) Gateway host Gateway application RINA host RINA applic. TCP applic. TCP/IP network TCP connection TCP/IP host
  6. 6. Porting applications to RINA ● We define an API that can be easily mapped to the socket API ○ Yet empowered with QoS capabilities ● RINA flows accessed through file descriptors 6/6 accept(fd1) -> (fd2, addr) listen(fd) bind(fd, addr) connect(fd, addr) socket() -> fd flow_alloc(name, qos) -> fd open() -> fd register(fd, name) flow_accept(fd1) -> (fd2,name)
  7. 7. DEMO ● Dropbear SSH client/server and nginx web server ported to RINA using a POSIX-like API ○ Small patches (100-400 lines of code) ● Connect to a Dropbear SSH server running over RINA ● Start nginx web server over RINA ● Use a normal browser to access web content served by RINA web server 7/6 VM B Gateway application VM A nginx web server Chromium browserTCP connections Laptop openssh client Dropbear ssh server n.1.DIF (normal DIF) e.1.DIF (shim DIF over Ethernet) RINA flows