SIP Proxies and Routing - SIP

What is Stateless Proxy Server?

The messages received are simply forwarded by the stateless proxy server. The call information or the transaction information is not stored by this server.

  • Once the stateless proxies are forwarded, they will forget about the SIP request.
  • Through stateless proxies, the transactions are very fast.

What is Stateful Proxy Server?

Every request and response received is tracked by the stateful proxy server. The stored information is used in future. The request is retransmitted and a response is not received from the other side.

  • The request when forwarded is remembered by the stateful proxy, enabling advance routing. The transaction state is maintained by stateful proxies.
  • Transaction is not as fast with stateful proxies as stateless.
  • At times, the stateful proxies can retransmit and fork.

What is Via and Record-route?


The proxies that are in the path of subsequent requests for the same call-id insert the Record-Route header, which the user agent uses to route the subsequent requests.


The servers insert the Via headers into requests to detect the loops and help the responses to identify the client. This helps the responses to reach the destinations.

  • Via header field is used for generating UA when the request is sent.
  • The Via header field is added by the proxy forwarding the request at the top of the list of Via header fields.
  • A proxy or UA generating 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.
  • The response checks are received by the proxy through the header field and is matched with the own address. The response is discarded, if the header field is not matched.
  • The top Via header field is then removed, and the response forwarded to the address specified in the next Via header field.

The protocolname, versionnumber and transport form the Via header fields and contain the portnumbers and parameters like received, rport and branch.

  • In case UA or proxy receives the request from different address, a received tag is added to Via header field.
  • By using UAs and proxies, a branch parameter is added to Via header fields that is computed as hash function of the Request-URI.

All rights reserved © 2020 Wisdom IT Services India Pvt. Ltd Protection Status

SIP Topics