 of the user agent in forwarding or responding to the request. A SIP: Understanding the Session Initiation Protocol Location service database Redirect or registration server User agent User agent Proxy server RTP media Figure 3.2 SIP user agent, server, and location service interaction. proxy is not a B2BUA since it is only allowed to modify requests and responses according to strict rules set out in RFC 3261. These rules preserve the end-to- end transparency of the SIP signaling while still allowing a proxy server to per- form valuable services and functions for user agents. A proxy server typically has access to a database or a location service to aid it in processing the request (determining the next hop). The interface between the proxy and the location service is not defined by the SIP protocol. A proxy can use any number of types of databases to aid in processing a request. Data- bases could contain SIP registrations, presence information, or any other type of information about where a user is located. The example of Figure 2.2 intro- duced a proxy server as a facilitator of SIP message exchange providing user loca- tion services to the caller. A proxy does not need to understand a SIP request in order to forward it-any unknown request type is assumed to use the non-INVITE transaction model. A proxy should not change the order of header fields or in general mod- ify or delete header fields. A proxy server is different from a user agent or gateway in three key ways: 1. A proxy server does not issue requests; it only responds to requests from a user agent. (A CANCEL request is an exception to this rule.) 2. A proxy server has no media capabilities. 3. A proxy server does not parse message bodies; it relies exclusively on header fields. SIP Clients and Servers Figure 3.3 shows a common network topology known as the SIP Trapezoid. In this topology, a pair of user agents in different domains establishes a session using a pair of proxy servers, one in each domain. The trapezoid refers to the shape formed by the s