Date of Award
7-2015
Document Type
Thesis
Degree Name
Master of Science (MS)
Department
Computer Engineering and Sciences
First Advisor
Marius C. Silaghi
Second Advisor
Ronaldo Menezes
Third Advisor
Syed Murshid
Fourth Advisor
Joerg Denzinger
Abstract
NAT traversal presents a challenge to Peer to Peer (P2P) applications, as in many instances a third party is needed to help initiate communication between two hosts when one is behind one or more NAT devices. Much work has gone into facilitating communication across NATs using various protocols, and several standards have been developed to this end. This thesis explores the advantages and disadvantages of several of these standards, including protocols for interacting with the NAT device itself (NAT Port Mapping Protocol (NATPMP), Port Control Protocol (PCP), and Universal Plug and Play (UPnP)), and those using an external server to obtain the external facing address and port mapping of a client (Session Traversal Utilities for NAT (STUN)). The results from a small series of performance tests are also described. A common technique for maintaining connections through NATs is to use some form of “keep-alive” message so that the connection mapping in the NAT device will not expire. This thesis explores several existing methods for encoding and scheduling keep-alive messages. In addition, it introduces a new state-based technique, “STUN Calc Keep-Alive”, as an extension of the STUN protocol for calculating an appropriate keep-alive interval for a User Datagram Protocol (UDP) connection with the current network configuration and efficiently adapting to NAT mapping lifetime changes. In addition to having the algorithm run on a dedicated connection, two possible implementations for running the algorithm using a “single channel”, or on the same connection as other application traffic, are described.
Recommended Citation
Widmer, Christopher Daniel, "NAT Traversal Techniques and UDP Keep-Alive Interval Optimization" (2015). Theses and Dissertations. 675.
https://repository.fit.edu/etd/675
Comments
Copyright held by author