[Serusers] Forking Proxy

Jason Penton j.penton at ru.ac.za
Thu Apr 1 09:33:46 CEST 2004


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 at sip.com and user 7000 at 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




More information about the sr-users mailing list