TinCan: User-Defined P2P Virtual Network Overlays for Ad-hoc Collaboration

Virtual private networking (VPN) has become an increasingly important component of a collaboration environment because it ensures private, authenticated communication among participants, using existing collaboration tools, where users are distributed across multiple institutions and can be mobile. The majority of current VPN solutions are based on a centralized VPN model, where all IP traffic is tunneled through a VPN gateway. Nonetheless, there are several use case scenarios that require a model where end-to-end VPN links are tunneled upon existing Internet infrastructure in a peer-to-peer (P2P) fashion, removing the bottleneck of a centralized VPN gateway. We propose a novel virtual network — TinCan — based on peerto-peer private network tunnels. It reuses existing standards and implementations of services for discovery notification (XMPP), reflection (STUN) and relaying (TURN), facilitating configuration. In this approach, trust relationships maintained by centralized (or federated) services are automatically mapped to TinCan links. In one use scenario, TinCan allows unstructured P2P overlays connecting trusted end-user devices — while only requiring VPN software on user devices and leveraging online social network (OSN) infrastructure already widely deployed. This paper describes the architecture and design of TinCan and presents an experimental evaluation of a prototype supporting Windows, Linux, and Android mobile devices. Results quantify the overhead introduced by the network virtualization layer, and the resource requirements imposed on services needed to bootstrap TinCan links.

[1]  Dan Wing,et al.  Session Traversal Utilities for NAT (STUN) , 2020, RFC.

[2]  Hakim Weatherspoon,et al.  The Xen-Blanket: virtualize once, run everywhere , 2012, EuroSys '12.

[3]  David Wolinsky,et al.  Archer: A Community Distributed Computing Infrastructure for Computer Architecture Research and Education , 2008, CollaborateCom.

[4]  Xuxian Jiang,et al.  VIOLIN: Virtual Internetworking on Overlay Infrastructure , 2004, ISPA.

[5]  Pierre St. Juste,et al.  On the design of scalable, self-configuring virtual networks , 2009, Proceedings of the Conference on High Performance Computing Networking, Storage and Analysis.

[6]  Pierre St. Juste,et al.  SocialVPN: Enabling wide-area collaboration with integrated social and overlay networks , 2010, Comput. Networks.

[7]  P. Oscar Boykin,et al.  IP over P2P: enabling self-configuring virtual IP networks for grid computing , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[8]  Hani Jamjoom VirtualWire: system support for live migrating virtual networks across clouds , 2013, VTDC '13.

[9]  Jonathan D. Rosenberg,et al.  Traversal Using Relays around NAT (TURN): Relay Extensions to Session Traversal Utilities for NAT (STUN) , 2020, RFC.

[10]  Lin Zhong,et al.  Self-constructive high-rate system energy modeling for battery-powered mobile systems , 2011, MobiSys '11.

[11]  Peter A. Dinda,et al.  Towards Virtual Networks for Virtual Machine Grid Computing , 2004, Virtual Machine Research and Technology Symposium.

[12]  Hari Balakrishnan,et al.  Resilient overlay networks , 2001, SOSP.

[13]  José A. B. Fortes,et al.  A virtual network (ViNe) architecture for grid computing , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[14]  P. Oscar Boykin,et al.  WOW: Self-Organizing Wide Area Overlay Networks of Virtual Workstations , 2006, 2006 15th IEEE International Conference on High Performance Distributed Computing.

[15]  Robert Tappan Morris,et al.  Persistent personal names for globally connected mobile devices , 2006, OSDI '06.