Standard
TM module enables statefuli [1] processing of SIP transactionsi [2]. The main use of stateful logic, which is costly in terms of memory and CPU, is some services inherently need state. For example, transactioni [3]-based accounting (module acc) needs to process transaction state as opposed to individual messages, and any kinds of forkingi [4] must be implemented statefully. Other use of stateful processing is it trading CPU caused by retransmissioni [5] processing for memory. That makes however only sense if CPU consumption per request is huge. For example, if you want to avoid costly DNS resolution for every retransmission of a request to an unresolvable destination, use stateful mode. Then, only the initial message burdens server by DNS queries, subsequent retransmissionsi [6] will be dropped and will not result in more processes blocked by DNS resolution. The price is more memory consumption and higher processing latency.
Jiri Kuthan