UDPTunnel is a small program which can tunnel UDP packets bi-directionally over a TCP connection.

UDPTunnel's primary  purpose  (and  original  motivation)  is  to  allow  multi-media
       conferences to traverse a firewall which allows only outgoing TCP connections.

       UDPTunnel  can  be  run  in  two  modes:  a client mode and a server mode. The client mode
       initiates the TCP connection before  relaying  UDP;  the  server  waits  for  an  incoming
       connection  before  doing so. After the TCP connection is established, the behavior of the
       two modes is identical. If you are using UDPTunnel to traverse  a  firewall  as  discussed
       above,  the  client  would be run inside the firewall, and the server would be run outside