Abstract—Peer-to-peer (P2P) communication has emerged as the mainstream of network applications. However, Network Address Translation (NAT) is a barrier to P2P applications and induces NAT traversal problems. TCP NAT traversal is more complicated than that of UDP. Two hosts must perform a three-way handshake procedure to establish a TCP connection and most NAT devices implement TCP state tracking mechanisms to trace TCP stages. This article aims to introduce and verify the applicability of four common TCP NAT traversal schemes including SNT, SLT, P2PNAT and ESi. According to the experiment results, we observe that each TCPNAT traversal scheme generates a specific packet sequence and is suitable for some specific NAT devices. No single scheme works well in every situation since NAT behavior is not standardized. Therefore, there should be a complete behavior test for NAT devices. With NAT behavior information, two hosts can choose a proper scheme for establishing a direct connection.
Index Terms—Network address translation, NAT, NAT Traversal, TCP, TCP NAT traversal.
The authors are with the Department of Computer Science, National Chiao Tung University (e-mail: firstname.lastname@example.org; Tel: +886-3-5712121ext.54792; fax: +886-3-5721490) .
Cite: Chien-Chao Tseng and Chia-Liang Lin,"How Practical Are TCP NAT Traversal Schemes?," International Journal of Innovation, Management and Technology vol. 3, no. 3, pp. 221-225 , 2012.