Understanding the Globally Routable User Agent URI

The Globally Routable User Agent URI (GRUU) is an extension of SIP that is currently defined in an Internet Draft published by IETF. The GRUU is specifically designed to implement reliable routing to a specific device of an end user. A plain SIP URI, such as sip:[email protected], is a URI that refers specifically to a user, and a GRUU is a URI that refers to a specific device. The Communicator client running on each user’s computer will have its own GRUU that enables other applications to route messages specifically to a particular device. A GRUU can be used within multiple separate SIP dialogs to reach the same device. This works not just for client applications but also for server applications (for example, the Mediation Server, which was discussed in Chapter 3).

The GRUU is widely applied across the server to solve a variety of problems, including but not limited to Enterprise Voice call transfer or conference escalation scenarios, which require the ability to establish a new dialog with a specific endpoint. The GRUU is also used to address scenarios where one endpoint in a dialog is server based and, therefore, the To and From headers in the dialog cannot be resolved to a specific user agent. In the original SIP standard, it is not possible to construct a URI that could be routed to and from anywhere (including the Internet) and reach a specific device or user agent.

The GRUU is a SIP URI that follows the general form shown here:

sip:<user>@<domain or FQDN>;opaque=<private>;grid=<optional cookie>;gruu

Here is an example:

sip:[email protected];opaque=user:epid:qIIWS2j5AVeD_HxnQdxmlwAA;gruu

The opaque parameter in combination with the address of record (AOR) (as in this example, [email protected]) makes this URI unique even though the prefix of the URI is still the standard user address. The gruu parameter specifies that this URI has all the properties of a GRUU and can be used with multiple separate SIP dialogs to reach the same endpoint. The grid parameter is optional, and a user agent instance inserts it when the user agent uses the GRUU to route to itself. If the grid parameter is included in a request, it helps the user agent instance determine the context of the request.

GRUU Creation

The server is responsible for creating a GRUU and returning it to the client through the SIP registration mechanism if the client requests one at registration time. The GRUU returned to the client during the registration process is not managed or exposed to the administrator in any way. This process is handled entirely by the User Services module and can be inspected only by examining the registration database itself. The GRUU can be used anywhere you would normally use a URI.

How Office Communications Server Uses GRUU

Prior to Office Communications Server 2007, the server used a proprietary extension called an End-Point Identifier (EPID) to address a specific endpoint. In Office Communications Server 2007, the GRUU replaces the EPID where possible. Office Communications Server 2007 supports backward compatibility with EPIDs, but as much as possible, all new applications and clients should use the GRUU instead.

Office Communications Server uses the GRUU in the following ways:

  • Communicator 2007 clients request and receive a GRUU at registration time that they will use in their Contact header for all subsequent SIP dialogs, such as Enterprise Voice calls, conferencing, and so on.

  • Microsoft Live Meeting 2007 uses one aspect of GRUU known as the +sip.instance to create a unique identifier for each meeting client in a conference. This is necessary because the meeting client does not actually register with the server and therefore cannot obtain a genuine GRUU from the server for use in its SIP Contact header.

  • Clients use the GRUU of the Media Relay Access Server (MRAS) application (co-located with the A/V Conferencing Server) to send requests to the MRAS without necessarily knowing the FQDN of the server or being able to directly connect to the MRAS. The client learns the MRAS application’s GRUU through in-band provisioning. The A/V Conferencing Server uses the MRAS application GRUU that is configured in Windows Management Instrumentation (WMI).

  • Enterprise Voice user agents send their QoS metric reports to a GRUU, which identifies the metrics collection point. (The Mediation Server and A/V Conferencing Server use the collection point GRUU that is configured in WMI.

  • The voice mail server (Microsoft Exchange Server’s Unified Messaging) for a given user will be identified by a GRUU. The user’s client learns this GRUU through in-band provisioning (for itself) and through presence (for someone else). An application running on the server, Exchange Unified Messaging (Ex-UM) Routing, resolves the GRUU to a specific Ex-UM server that handles user voice mailboxes. An application can be written that resolves the GRUU for non–Microsoft Exchange voice mail systems.

  • Pools use GRUU to address other pools for batched subscriptions.

  • The Mediation Server uses GRUU to identify different outbound gateways that are connected to the Mediation Server. This enables Office Communications Server to send messages to a single FQDN/port on the Mediation Server and have the messages routed correctly to the proper outbound IP-PSTN gateway. (This GRUU is not exposed in any way to the client; it is used only for server-to-server communications.)

  • During conference creation, the client addresses the Focus Factory by using a GRUU that is composed in part by the meeting organizer’s SIP URI. This Focus Factory GRUU is sent to the client via in-band provisioning. The Focus Factory is the central policy and state manager for a conference and acts as the coordinator for all aspects of the conference. For details about the Focus Factory, see Chapter 6.

  • Conferences are identified using a GRUU that is constructed from the organizer’s SIP URI. This GRUU is routable within the SIP network and enables conference requests to be routed to the appropriate conference Focus. The Focus is the central policy and state manager for a conference and acts as the coordinator for all aspects of the conference. For details about the Focus, see Chapter 6.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset