Full width home advertisement

Welcome Home

Post Page Advertisement [Top]

What are Via Headers in SIP?

Via headers are inserted by servers into requests to discover loops holes and to allow responses to find their way back to the client. They have no control on the routing of future requests (or responses).

1. A UA producing a request records its own address in a Via header field.

2. A proxy sending the request adds a Via header field having its own address to the top of the list of Via header fields.

3. A proxy or UA yielding a response to a request copies all the Via header fields from the request in order into the response, then sends the response to the address specified in the top Via header field.

4. A proxy receiving a response checks the top Via header field and corresponds its own address. If it does not correspond, the response has been discarded.

5. The top Via header field is then separated, and the response sent to the address specified in the next Via header field.

Via header fields contain protocol name, version number, and transport (SIP/2.0/UDP, SIP/2.0/TCP, etc.) and may contain port numbers and parameters such as received, rport, branch, maddr, and ttl.

6. A received tag is included to a Via header field if a UA or proxy receives the request from a dissimilar address than that specified in the top Via header field.

7. A branch parameter is included to Via header fields by UAs and proxies, which is calculated as a hash function of the Request-URI, and the To, From, Call-ID, and CSeq number.

No comments:

Post a Comment

Bottom Ad [Post Page]