Supporting Intermediary Session Policies in SIP
The Session Initiation Protocol (SIP) was designed to support establishment and maintenance of end-to-end sessions. Proxy servers provide call routing, authentication and authorization, mobility, and other signaling services that are independent of the session. Effectively, proxies provide signaling policy enforcement. However, numerous scenarios have arisen which require the involvement of proxies in some aspect of the session policy. SIP has no support for such capabilities, as the community has generally considering involvement of proxies in session details 'evil'. Practical implementations have therefore resorted to non-standard manipulation of SDP messages in order to enforce session policy. These implementations are fragile and frought with problems. In this document, we discuss a middle-ground approach which permits proxies limited involvement in session policy, but retains the robustness that derives from the current prohibition on SDP manipulation.