Stateful Servers

Stateful proxies are more complex. Upon reception of a request, statefuli proxies create a state and keep the state
until the transactioni finishes. Some transactionsi, especially those created by INVITE, can last quite long (until callee picks up or declines the call). Because stateful proxies must maintain the state for the duration of the transactions, their performance is limited.

The ability to associate SIP messages into transactions gives stateful proxies some interesting features. Stateful proxies can perform forkingi, that means upon reception of a message two or more messages will be sent out.

Stateful proxies can absorb retransmissionsi because they know, from the transaction state, if they have already received the same message (statelessi proxies cannot do the check because they keep no state).

Stateful proxies can perform more complicated methods of finding a user. It is, for instance, possible to try to reach user's office phone and when he doesn't pick up then the call is redirected to his cell phone. Stateless proxies can't do this because they have no way of knowing how the
transaction targeted to the office phone finished.

Most SIP proxies today are stateful because their configuration is usually very complex. They often perform accounting, forking, some sort of NATi traversal aid and all those features require a stateful proxy.

Home |  Recent changes |  Search |  Glossary |  Sitemap |  Login