In SIP messages, VIA already specify where the client is. Then why we need CONTACT?
Thanks for any help in advance!
In SIP messages, VIA already specify where the client is. Then why we need CONTACT?
Thanks for any help in advance!
From RFC3261[1]:
“While the Via header field tells other elements where to send the
response, the Contact header field tells other elements where to send
future requests.”
As SIP is somewhat of a standard (some points are not clear enough in practice) you can consult the RFC for questions like these.
A typical case would be a load balancing proxy. Once the call reaches a particular worker, the contact header will directly identify that worker, so that the proxy is cut out of further interactions.
It’s also used in a REGISTER to provide a binding for an address of record, so you know where to contact when that AOR is looked up.