ChannelBind and Linux eBPF
An idea for some other implementer to consider:
When a Channel is bound on the TURN allocation from a particular TURN Client to a particular remote destination, the subsequent packets that utilize the channel have characteristics that would allow for a Linux eBPF program attached to the network subsystem to lookup the first 4 bytes in a BPF map that has the information necessary to route the packet to the remote destination without the TURN server needing to be involved. The reverse case is also true, where a packet from the remote destination can have it's 5-tuple looked up in a map to identify the TURN Client and channel number.
This would allow for substantial improvements in latency and throughput for channel data packets that did not require translation to another protocol type (e.g. UDP<->UDP works fine, UDP<->TCP wouldn't)
Source: coturn/coturn