Carrier Grade Voice Over IP, Second Edition

The examples shown so far have involved one user agent communicating directly with another. Although that is certainly possible, a more likely scenario will involve the use of one or more proxy or redirect servers.
A redirect server normally responds to a request with an alternative address to which the request should be directed. The exceptions are cases where the server has received a request that cannot be supported, in which case it will return a 4XX, 5XX, or 6XX response, or when the server receives a CANCEL request, to which it should respond with a 200 response.
Consider again the example call from Daniel to Boss as depicted in Figure 5-9. Instead of the call-completion scenario depicted in Figure 5-9, let us assume that Boss is out of the office and has registered at a different location. Using a redirect server, the call scenario would be as shown in Figure 5-11.
The initial INVITE is sent to Boss at the redirect server. In this case, the Request-URI and the To: address do not include the specific host where Boss has logged in. That is likely to be the most common situation. After all, a caller is unlikely to know exactly where a given user has logged in.
The server responds with the status code 302 (moved temporarily) and within the response includes the Contact: header field. The content of this field is the address that the...