IET COMMUNICATIONS, vol.3, no.4, pp.512-519, 2009 (SCI-Expanded)
Enabling peer-to-peer (P2P) communication for hosts behind network address translation (NAT) boxes is an important and difficult problem. Existing proposals, for example, UPnP, MIDCOM, TURN, STUN, STUNT, P2PNAT, NATBlaster among others, offer only partial, limited and non-deterministic solutions. A framework that offers a complete solution to the P2P communication problem is presented. The proposed framework is based on the use of IPv4+4 addresses and the standard IPv4 Loose Source Record Route (LSRR) option and requires no changes whatsoever to end-host protocol stacks and Internet routers. The only requirement is a simple upgrade of border routers with a new LSRR-based packet-forwarding algorithm for the P2P traffic. The implementation of a Linux-based border router that runs the proposed forwarding algorithm is detailed, and how P2P applications can benefit from this framework is described.