IPv6Network - Transport Protocol Translation A disadvantage of proxying is that it requires a lot of knowledge of the application layer protocols such as HTTP and FTP. This knowledge allows for extra features such as caching, but most of the time, these extra features aren’t needed anyway, so a much simpler form of translation between IPv6 and IPv4 can be used: Transport Relay Translation (TRT, RFC 3142). A TRT implementation listens for incoming TCP (and sometimes UDP) sessions on the IPv6 side. When a session comes in, the TRT device sets up a TCP connection to the IPv4 address encoded in the bottom 32 bits of the IPv6 destination address and then proceeds to relay data between the two TCP sessions. This works very well for all parties involved: the IPv6 host that originated the first session only speaks IPv6, the IPv4 destination host only speaks IPv4, and the TRT device doesn’t have to know about the particulars of the communication; it just copies data between both TCP sessions. There are only two slight downsides. First, application protocols that put IP addresses in the data stream (such as FTP, SIP, and RTSP) don’t work without additional “application layer gateway” (ALG) glue. Second, IPsec doesn’t work with TRT, as IPsec lives below the TCP level and is therefore not translated or forwarded.