Hi All
I have a question about the CORRECT operation of UA when making a call via a
forking proxy:
Lets say UA1 calls 7000(a)sip.com and user 7000(a)sip.com is available at UA2
and UA3 i.e. the
Proxy forks the request.
UA1 Forking UA2
UA3
Proxxy
1 |------INVITE---------->| |
|
2 | |--------INVITE-------------->|
|
3 |
|---------------------------INVITE------------->|
4 | |<---RINGING(totag=1234)------|
|
5 |<---RINGING(totag=1234)| |
|
6 |
|<------------------RINGING(totag=5768)---------|
7 |<---RINGING(totag=5678)| |
|
| |
| |
| |
| |
NOW UA3 WILL ANSWER
| |<----------------200 OK
(totag=5678)-----------|
8 |<-200 OK (totag=5678)--| |
|
9 |---ACK (totag=1234)--->| |
|
10 | |------------------ACK
(totag=1234)------------>|
AT THIS STAGE UA 3 IGNORES THE ACK AS IT DOES NOT CORRESPOND TO
ORIGINATING 200 OK AND THE
CALL IS NOT SETUP
* UA1 is using the to-tag of the first 180 RINGING it received (frame 5) no
matter what the to-tag in the
200 OK is
* My question here is: who is in the wrong???? The proxy or UA1?
* Should the proxy change the to-tag of the ACK before forewarding it to
UA3???
Any help/guidance would be much appreciated
Jason Penton
Rhodes University
Grahamstown
South Africa