Hi,

In draft-ietf-sipping-call-flows-01, I have the following doubts

1).

   User A          Proxy 1          Proxy 2          User B
     |                |                |                |
     |   INVITE F1    |                |                |
     |--------------->|                |                |
     |     407 F2     |                |                |
     |<---------------|                |                |
     |     ACK F3     |                |                |
     |--------------->|                |                |
     |   INVITE F4    |                |                |
     |--------------->|   INVITE F5    |                |

   F1 INVITE A -> Proxy 1
   ...
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9
   ...
   CSeq: 1 INVITE
   ...

   F4 INVITE A -> Proxy 1
   ...
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9
   ...
   CSeq: 2 INVITE

   When Proxy1 receives the message F4, it would recognize F4 has
retransmission of F1 and not an new INVITE since they use the same branchid
. Since the original INVITE server transaction in proxy 1 would be deleted
only after Timer I timeout. Should not branch-Id of F4 be different from
that of F1 ?? Or is that proxy need to process CSeq to capture it??

2). ACK for 2xx responses bear the same branch-Id how??

   User A          Proxy 1          Proxy 2          User B

     |--------------->|                |                |
     |   INVITE F4    |                |                |
     |--------------->|   INVITE F5    |                |
     |                |--------------->|   INVITE F7    |
     |                |                |--------------->|
     ..............
     |     ACK F15    |                |                |
     |--------------->|    ACK F16     |                |
     |                |--------------->|     ACK F17    |
     |                |                |--------------->|

F7 Via :

   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.168.255.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9
    ;received=192.168.100.101

F17 Via :

   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.168.255.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9
    ;received=192.168.100.101

In the above example, the issues are
        1. UAC should have used some other branch-Id other than the one used in
INVITE for ACK(For 200).
      2. Proxies in the line could not have placed the same branch-Id, since
they would have forgotten it by the time, since receiving 200 transaction
deletes the INVITE transaction.
UAS should not use branch-Id for matching ACK for 200 and should simply use
Call-Id, To-Tag, From-Tag and CSeq for it. right ??

- Sp.Raja

_______________________________________________
Sip-implementors mailing list
[EMAIL PROTECTED]
http://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to