66
A good way to think of this is that an outgoing packet “punches a hole” in the router, through which authorized reply
packets may be returned to the codec for a limited time.
Switchboard aids in breaking through these different types of routers for incoming calls. Because it is in constant contact
with all subscribed codecs, it can send and receive test patterns to determine whether one or more NAT routers exist on
a link and what type they are. It can then choose a connection method to be used to circumvent any issues. Switchboard
can:
•
Instruct the calling codec to make a normal connection (No NAT detected).
•
Use the hole punched by connection to the Directory Server for incoming connections from other
codecs.
•
Instruct the called codec to make the connection in the reverse direction.
The second option, which utilizes the outgoing Directory Server “ping” described earlier, is very useful. The interval of
this ping is adjustable, but defaults to about one minute, which is short enough to keep a hole punched through the
majority of NAT routers.
These techniques are based loosely, with enhancements, on a generic Internet protocol called STUN (Simple Traversal
of UDP through NAT). The system works well in all environments except one; when both users are sitting behind a
symmetric NAT. In this situation, calls will fail even with Switchboard. The only option in that environment is to resort to
port forwarding on one side of the link.