Dear all, I want to submit to your attention the following interworking scenario between an User agent and a Proxy Server.
The UA sends a Register request with source UDP port Y and SIP contact header port X, including the rport parameter: *User Datagram Protocol, Src Port: Y (Y), Dst Port: 5060 (5060) Session Initiation Protocol Request-Line: REGISTER sip:%%%%%%%% SIP/2.0 Message Header Via: SIP/2.0/UDP %%%%%%%%:Y;branch=%%%%%%%%;rport Contact: <sip:%%%%%%%%:X>;+g.3gpp.smsip* The proxy server handles the registration request by replying to UA with destination UDP port Y, as suggested in RFC 3851: *User Datagram Protocol, Src Port: 5060 (5060), Dst Port: Y (Y) Session Initiation Protocol Status-Line: SIP/2.0 200 OK Message Header Via: SIP/2.0/UDP %%%%%%%%:X;branch=%%%%%%%%;received=%%%%%%%%;rport=Y Contact: <sip:%%%%%%%%:X>;expires=%%%%%%%%;+g.3gpp.smsip* So the UA is registered in the network with 2 different ports, as a kind of NAT. Later, the proxy server receives an incoming Invite message and it forwards it to UA SIP contact header port X, as suggested in RFC 3261: *User Datagram Protocol, Src Port: 5060 (5060), Dst Port: X (X) Session Initiation Protocol Request-Line: INVITE sip:%%%%%%%%:X SIP/2.0 Message Header Via: SIP/2.0/UDP %%%%%%%%:5060;branch=%%%%%%%%* The UA replies to Invite message with a 180 Ringing message from source UDP port X, that is equal to SIP contact header port: *User Datagram Protocol, Src Port: X (X), Dst Port: 5060 (5060) Session Initiation Protocol Status-Line: SIP/2.0 180 Ringing Message Header Via: SIP/2.0/UDP %%%%%%%%:5060;branch=%%%%%%%%;received=%%%%%%%% Contact: <sip:%%%%%%%%:X>* *Result:* The proxy server is not able to process the 180 Ringing message from source UDP port X, since it expects to receive the message from source UDP port Y (the one related to UA registration entry). So the 180 Ringing message has been discarded by proxy server and the call has not been established. *Questions: * - Accoriding to your opinion, is the proxy server dialog set up handling standard compliant? - Is there any standard the suggest UA to sends the 180 Ringing message from the same source UDP port Y from which the UA has sent the Registration request? - If the proxy server will forward the Invite message to UA UDP port Y instead of SIP contact port X (as described in RFC 3851) is there any standard the suggest UA to sends the 180 Ringing message from the same source UDP port (Y) on which the Invite message has been received? Gratefully if you can help to understand which case is standard compliant. Thanks a lot. Br, Dario _______________________________________________ Sip-implementors mailing list [email protected] https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
