CRTP over slow, unreliable links
Compressed RTP, which is specified in RFC 2509 was created to address wasted headers. Amazingly, this protocol can usually reduce the IP, UDP and RTP headers down to 2-4 bytes! However, it was designed for point-to-point links that are reliable and fast (i.e. those with low delays). Packet loss, long delays and out of order packets can create an unacceptable environment for VoIP.
The specific reason for this has to do with "context invalidation" or "context corruption". In essence, the RTP timestamps become out of sync when silence suppression is employed. Reinstating the context requires retransmission of packets and some two-way communication to validate the context. This, obviously, just won't do for real-time VoIP traffic.
The solution to this problem is described in an Internet Draft from the IETF's Audio/Video Transport Working Group: http://www.ietf.org/internet-drafts/draft-ietf-avt-crtp-enhance-02.txt
This draft specifies a new transport, Enhanced CRTP, which allows the context to be reestablished must faster, making RTP more suitable for links that experience occasional packet-loss or have high delays.
RFC 2509 explains how CRTP can be negotiated on PPP links with the IPCP protocol. In IPCP, protocol 0x61 negotiates RFC 2507 header compression and suboption 1 is used to negotiate CRTP. To enable Enhanced CRTP, choose suboption 2.
Of course, this will likely be controlled by your application, so check with your VoIP vendor for Enhanced CRTP support!
Thomas Alexander Lancaster IV is a consultant and author with over ten years experience in the networking industry, focused on Internet infrastructure.