ABSTRACT

Session Initiation Protocol (SIP) messages have defined many inherent mechanisms for routing of signaling messages between its entities over the SIP network. We describe all of those routing capabilities in SIP. The SIP registrar is a routing database, while a SIP proxy routes the SIP messages to other proxies and user agents (UAs) along with source–destination paths. However, the routing over a specific path may depend on many criteria, such as administrative policies, load balancing, user preferences, static versus dynamic routing, and others. An incoming SIP message may have multiple addresses of record (AORs) and Contact Uniform Resource Identifiers (URIs), and the routing of the message to a unique location at a given device and time where and when the UA can be reached successfully is a huge challenge in real-time communications. SIP has defined the Record-Route header with Globally Routable UA URI (GRUU) to reach a user. We also describe the SIP routing schemes based on the following, in addition to static and dynamic routing: GRUU, Caller Preferences, and Location. In addition, we also explain the loop-detection algorithm in routing over the SIP network.