Discussion:
[Sip-implementors] Proxy forwarding invite with multiple via headers
padmaja venkata
2008-06-13 10:47:06 UTC
Permalink
Hi all,

Is it OK if the proxy forwards the received invite with multiple via headers
of its own inserted?

For example:

The received invite is this:

INVITE sip:2041 at 192.168.50.52 <sip%3A2041 at 192.168.50.52> SIP/2.0
Call-Id: call-F131DDC9-49A2-2110-1103-B at 192.168.50.205
Contact: <sip:2051 at 192.168.50.205 <sip%3A2051 at 192.168.50.205>>
Content-Length: 249
Content-Type: application/sdp
Cseq: 1 INVITE
From: <sip:2051 at 192.168.50.52 <sip%3A2051 at 192.168.50.52>>;tag=c0a832cd-17
Max-Forwards: 16
Min-Se: 600
Session-Expires: 3600
Session-Guid: 859321956-1634023014-905969664-2513471912
Supported: 100rel,timer
To: <sip:2041 at 192.168.50.52 <sip%3A2041 at 192.168.50.52>>
User-Agent: Quintum/1.0.0 SN/0030E12004B0 SW/P106-11-00
Via: SIP/2.0/UDP 192.168.50.205;branch=z9hG4bK-tenor-c0a8-32cd-0033

The proxy at 192.168.50.52 forwarded this as follows:

INVITE sip:2041 at 192.168.50.204 <sip%3A2041 at 192.168.50.204> SIP/2.0
Record-Route: <sip:192.168.50.52:5060
;lr;sipXecs-rs=%2Afrom%7EYzBhODMyY2QtMTc%60.400_authrules%2Aauth%7E%211590e935cd4ae900a36d10202f501d7c>
Call-Id: call-F131DDC9-49A2-2110-1103-B at 192.168.50.205
Contact: <sip:2051 at 192.168.50.205 <sip%3A2051 at 192.168.50.205>>
Content-Length: 249
Content-Type: application/sdp
Cseq: 1 INVITE
From: <sip:2051 at 192.168.50.52 <sip%3A2051 at 192.168.50.52>>;tag=c0a832cd-17
Max-Forwards: 16
Min-Se: 600
Session-Expires: 3600
Session-Guid: 859321956-1634023014-905969664-2513471912
Supported: 100rel,timer
To: <sip:2041 at 192.168.50.52 <sip%3A2041 at 192.168.50.52>>
User-Agent: Quintum/1.0.0 SN/0030E12004B0 SW/P106-11-00
Via: SIP/2.0/UDP 192.168.50.52
;branch=z9hG4bK-sipXecs-0137aac61e5301ead76e6566cdb0f2d3be5e
Via: SIP/2.0/UDP 192.168.50.52
;branch=z9hG4bK-sipXecs-0134499c81a909946eaed847046c2535f409%e8c783cad7ee777c922618d09949ebd4
Via: SIP/2.0/UDP 192.168.50.52
;branch=z9hG4bK-sipXecs-012ea2e73188173f014705446d987568ab32%dbb67e4f9a5bca399689a4d127429e37
Via: SIP/2.0/UDP 192.168.50.205;branch=z9hG4bK-tenor-c0a8-32cd-0033

There are 3 via header fields inserted by proxy. Is this OK and in
accordance with the RFC?

Thanks,
Padmaja
Avasarala Ranjit-A20990
2008-06-13 10:59:44 UTC
Permalink
Yes it is correct to have multiple Vias in a SIP Request. It indicates
how many proxies the request has gone thru before reaching the final
destination.

Actually as per RFC 3261, every proxy adds a Via header inserting its
own address before forwarding the request further. This is explained in
section 4 of RFC 3261.


Regards
Ranjit

-----Original Message-----
From: sip-implementors-bounces at lists.cs.columbia.edu
[mailto:sip-implementors-bounces at lists.cs.columbia.edu] On Behalf Of
padmaja venkata
Sent: Friday, June 13, 2008 4:17 PM
To: sip-implementors at lists.cs.columbia.edu
Subject: [Sip-implementors] Proxy forwarding invite with multiple via
headers

Hi all,

Is it OK if the proxy forwards the received invite with multiple via
headers of its own inserted?

For example:

The received invite is this:

INVITE sip:2041 at 192.168.50.52 <sip%3A2041 at 192.168.50.52> SIP/2.0
Call-Id: call-F131DDC9-49A2-2110-1103-B at 192.168.50.205
Contact: <sip:2051 at 192.168.50.205 <sip%3A2051 at 192.168.50.205>>
Content-Length: 249
Content-Type: application/sdp
Cseq: 1 INVITE
From: <sip:2051 at 192.168.50.52
<sip%3A2051 at 192.168.50.52>>;tag=c0a832cd-17
Max-Forwards: 16
Min-Se: 600
Session-Expires: 3600
Session-Guid: 859321956-1634023014-905969664-2513471912
Supported: 100rel,timer
To: <sip:2041 at 192.168.50.52 <sip%3A2041 at 192.168.50.52>>
User-Agent: Quintum/1.0.0 SN/0030E12004B0 SW/P106-11-00
Via: SIP/2.0/UDP 192.168.50.205;branch=z9hG4bK-tenor-c0a8-32cd-0033

The proxy at 192.168.50.52 forwarded this as follows:

INVITE sip:2041 at 192.168.50.204 <sip%3A2041 at 192.168.50.204> SIP/2.0
Record-Route: <sip:192.168.50.52:5060
;lr;sipXecs-rs=%2Afrom%7EYzBhODMyY2QtMTc%60.400_authrules%2Aauth%7E%2115
90e935cd4ae900a36d10202f501d7c>
Call-Id: call-F131DDC9-49A2-2110-1103-B at 192.168.50.205
Contact: <sip:2051 at 192.168.50.205 <sip%3A2051 at 192.168.50.205>>
Content-Length: 249
Content-Type: application/sdp
Cseq: 1 INVITE
From: <sip:2051 at 192.168.50.52
<sip%3A2051 at 192.168.50.52>>;tag=c0a832cd-17
Max-Forwards: 16
Min-Se: 600
Session-Expires: 3600
Session-Guid: 859321956-1634023014-905969664-2513471912
Supported: 100rel,timer
To: <sip:2041 at 192.168.50.52 <sip%3A2041 at 192.168.50.52>>
User-Agent: Quintum/1.0.0 SN/0030E12004B0 SW/P106-11-00
Via: SIP/2.0/UDP 192.168.50.52
;branch=z9hG4bK-sipXecs-0137aac61e5301ead76e6566cdb0f2d3be5e
Via: SIP/2.0/UDP 192.168.50.52
;branch=z9hG4bK-sipXecs-0134499c81a909946eaed847046c2535f409%e8c783cad7e
e777c922618d09949ebd4
Via: SIP/2.0/UDP 192.168.50.52
;branch=z9hG4bK-sipXecs-012ea2e73188173f014705446d987568ab32%dbb67e4f9a5
bca399689a4d127429e37
Via: SIP/2.0/UDP 192.168.50.205;branch=z9hG4bK-tenor-c0a8-32cd-0033

There are 3 via header fields inserted by proxy. Is this OK and in
accordance with the RFC?

Thanks,
Padmaja
padmaja venkata
2008-06-13 11:08:42 UTC
Permalink
Hi,

Thanks for the reply. I, however, use only one proxy and that single proxy
has inserted 3 via headers of its own. Please see the Invite from the UA and
the corresponding Invite forwarded by the proxy below. My question again is-
Is it OK to have more than one Via headers inserted by a single proxy? Is it
defined in RFC?

Thanks
Padmaja
On Fri, Jun 13, 2008 at 4:29 PM, Avasarala Ranjit-A20990 <
Post by Avasarala Ranjit-A20990
Yes it is correct to have multiple Vias in a SIP Request. It indicates
how many proxies the request has gone thru before reaching the final
destination.
Actually as per RFC 3261, every proxy adds a Via header inserting its
own address before forwarding the request further. This is explained in
section 4 of RFC 3261.
Regards
Ranjit
-----Original Message-----
From: sip-implementors-bounces at lists.cs.columbia.edu
[mailto:sip-implementors-bounces at lists.cs.columbia.edu] On Behalf Of
padmaja venkata
Sent: Friday, June 13, 2008 4:17 PM
To: sip-implementors at lists.cs.columbia.edu
Subject: [Sip-implementors] Proxy forwarding invite with multiple via
headers
Hi all,
Is it OK if the proxy forwards the received invite with multiple via
headers of its own inserted?
INVITE sip:2041 at 192.168.50.52 <sip%3A2041 at 192.168.50.52> <
sip%3A2041 at 192.168.50.52 <sip%253A2041 at 192.168.50.52>> SIP/2.0
Call-Id: call-F131DDC9-49A2-2110-1103-B at 192.168.50.205
Contact: <sip:2051 at 192.168.50.205 <sip%3A2051 at 192.168.50.205> <
sip%3A2051 at 192.168.50.205 <sip%253A2051 at 192.168.50.205>>>
Content-Length: 249
Content-Type: application/sdp
Cseq: 1 INVITE
From: <sip:2051 at 192.168.50.52 <sip%3A2051 at 192.168.50.52>
<sip%3A2051 at 192.168.50.52 <sip%253A2051 at 192.168.50.52>>>;tag=c0a832cd-17
Max-Forwards: 16
Min-Se: 600
Session-Expires: 3600
Session-Guid: 859321956-1634023014-905969664-2513471912
Supported: 100rel,timer
To: <sip:2041 at 192.168.50.52 <sip%3A2041 at 192.168.50.52> <
sip%3A2041 at 192.168.50.52 <sip%253A2041 at 192.168.50.52>>>
User-Agent: Quintum/1.0.0 SN/0030E12004B0 SW/P106-11-00
Via: SIP/2.0/UDP 192.168.50.205;branch=z9hG4bK-tenor-c0a8-32cd-0033
INVITE sip:2041 at 192.168.50.204 <sip%3A2041 at 192.168.50.204> <
sip%3A2041 at 192.168.50.204 <sip%253A2041 at 192.168.50.204>> SIP/2.0
Record-Route: <sip:192.168.50.52:5060
;lr;sipXecs-rs=%2Afrom%7EYzBhODMyY2QtMTc%60.400_authrules%2Aauth%7E%2115
90e935cd4ae900a36d10202f501d7c>
Call-Id: call-F131DDC9-49A2-2110-1103-B at 192.168.50.205
Contact: <sip:2051 at 192.168.50.205 <sip%3A2051 at 192.168.50.205> <
sip%3A2051 at 192.168.50.205 <sip%253A2051 at 192.168.50.205>>>
Content-Length: 249
Content-Type: application/sdp
Cseq: 1 INVITE
From: <sip:2051 at 192.168.50.52 <sip%3A2051 at 192.168.50.52>
<sip%3A2051 at 192.168.50.52 <sip%253A2051 at 192.168.50.52>>>;tag=c0a832cd-17
Max-Forwards: 16
Min-Se: 600
Session-Expires: 3600
Session-Guid: 859321956-1634023014-905969664-2513471912
Supported: 100rel,timer
To: <sip:2041 at 192.168.50.52 <sip%3A2041 at 192.168.50.52> <
sip%3A2041 at 192.168.50.52 <sip%253A2041 at 192.168.50.52>>>
User-Agent: Quintum/1.0.0 SN/0030E12004B0 SW/P106-11-00
Via: SIP/2.0/UDP 192.168.50.52
;branch=z9hG4bK-sipXecs-0137aac61e5301ead76e6566cdb0f2d3be5e
Via: SIP/2.0/UDP 192.168.50.52
;branch=z9hG4bK-sipXecs-0134499c81a909946eaed847046c2535f409%e8c783cad7e
e777c922618d09949ebd4
Via: SIP/2.0/UDP 192.168.50.52
;branch=z9hG4bK-sipXecs-012ea2e73188173f014705446d987568ab32%dbb67e4f9a5
bca399689a4d127429e37
Via: SIP/2.0/UDP 192.168.50.205;branch=z9hG4bK-tenor-c0a8-32cd-0033
There are 3 via header fields inserted by proxy. Is this OK and in
accordance with the RFC?
Thanks,
Padmaja
_______________________________________________
Sip-implementors mailing list
Sip-implementors at lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
Scott Lawrence
2008-06-13 11:18:11 UTC
Permalink
Post by padmaja venkata
Hi,
Thanks for the reply. I, however, use only one proxy and that single proxy
has inserted 3 via headers of its own. Please see the Invite from the UA and
the corresponding Invite forwarded by the proxy below. My question again is-
Is it OK to have more than one Via headers inserted by a single proxy? Is it
defined in RFC?
Yes, it's ok. The proxy in question 'spiraled' the request (sent the
request through itself) in the course of processing it.
Benjamin Jacob
2008-06-13 14:58:17 UTC
Permalink
I think Padmaja's hinting that the proxy has inserted those 3 Vias the first time itself, before it could spiral it 'out' and receiving it back.
If the proxy had spiralled it out, there would be other proxies's Vias as well.

Care to clear this Padmaja?
From: Scott Lawrence <slawrence at pingtel.com>
Subject: Re: [Sip-implementors] Proxy forwarding invite with multiple via headers
To: "padmaja venkata" <rvpadmaja at gmail.com>
Cc: sip-implementors at lists.cs.columbia.edu
Date: Friday, June 13, 2008, 11:18 AM
Post by padmaja venkata
Hi,
Thanks for the reply. I, however, use only one proxy
and that single proxy
Post by padmaja venkata
has inserted 3 via headers of its own. Please see the
Invite from the UA and
Post by padmaja venkata
the corresponding Invite forwarded by the proxy below.
My question again is-
Post by padmaja venkata
Is it OK to have more than one Via headers inserted by
a single proxy? Is it
Post by padmaja venkata
defined in RFC?
Yes, it's ok. The proxy in question 'spiraled'
the request (sent the
request through itself) in the course of processing it.
_______________________________________________
Sip-implementors mailing list
Sip-implementors at lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
Paul Kyzivat
2008-06-13 15:15:14 UTC
Permalink
It doesn't matter. The proxy can explain it in a variety of ways.
*Conceptually* this has passed through multiple proxies that happen to
share the same address and port. It is not for somebody else to judge
whether those are really separate proxies or part of a single proxy.

Note that this isn't conceptually much different from double
Record-Routing which has proven to be useful.

Why are you questioning these multiple Vias? What business is it of yours?

Paul
Post by Benjamin Jacob
I think Padmaja's hinting that the proxy has inserted those 3 Vias the first time itself, before it could spiral it 'out' and receiving it back.
If the proxy had spiralled it out, there would be other proxies's Vias as well.
Care to clear this Padmaja?
From: Scott Lawrence <slawrence at pingtel.com>
Subject: Re: [Sip-implementors] Proxy forwarding invite with multiple via headers
To: "padmaja venkata" <rvpadmaja at gmail.com>
Cc: sip-implementors at lists.cs.columbia.edu
Date: Friday, June 13, 2008, 11:18 AM
Post by padmaja venkata
Hi,
Thanks for the reply. I, however, use only one proxy
and that single proxy
Post by padmaja venkata
has inserted 3 via headers of its own. Please see the
Invite from the UA and
Post by padmaja venkata
the corresponding Invite forwarded by the proxy below.
My question again is-
Post by padmaja venkata
Is it OK to have more than one Via headers inserted by
a single proxy? Is it
Post by padmaja venkata
defined in RFC?
Yes, it's ok. The proxy in question 'spiraled'
the request (sent the
request through itself) in the course of processing it.
_______________________________________________
Sip-implementors mailing list
Sip-implementors at lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
_______________________________________________
Sip-implementors mailing list
Sip-implementors at lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
Scott Lawrence
2008-06-13 15:15:12 UTC
Permalink
Post by Benjamin Jacob
I think Padmaja's hinting that the proxy has inserted those 3 Vias the
first time itself, before it could spiral it 'out' and receiving it
back.
The proxy in this case is the sipXecs proxy, which sometimes spirals
messages through itself directly; in his configuration for that address,
twice.

In this particular case, the problem actually appears to be that the
branch parameter in some of those interior Via headers has a '%'
character in it - the receiving system is upset by that (I'm not at all
clear on why implementors find it necessary to parse anything but the
topmost Via). We've seen this on a couple of other implementations as
well, and have changed that to a '$', which is legal in a token.
Post by Benjamin Jacob
If the proxy had spiralled it out, there would be other proxies's Vias as well.
True.
--
Scott Lawrence tel:+1.781.229.0533;ext=162 or sip:slawrence at pingtel.com
sipXecs project coordinator - SIPfoundry http://www.sipfoundry.org/sipXecs
Nitin Arora
2008-06-16 04:33:06 UTC
Permalink
Padmajit,

if it is the case of spiraling then its okay to have multiple vias with same
'sentby' value but different branch ids.
but if your question is that proxy inserts multiple Via's first time itself
when it forwards the request then it makes no sense.

Why:
Proxy will forward the request on some particular single transaction and
which will be identified by the branch Id in the request.
So there is no point of inserting multiple branch Id's in the request. I
think it should clear your doubt.

Of course multiple branch Id's would be generated in case of forking but in
that case multiple requests will be forwarded with different branch Id's
not a single request with multiple branch Id's.

- Nitin




On Fri, Jun 13, 2008 at 8:28 PM, Benjamin Jacob <ben4asterisk at yahoo.com>
Post by Benjamin Jacob
I think Padmaja's hinting that the proxy has inserted those 3 Vias the
first time itself, before it could spiral it 'out' and receiving it back.
If the proxy had spiralled it out, there would be other proxies's Vias as well.
Care to clear this Padmaja?
From: Scott Lawrence <slawrence at pingtel.com>
Subject: Re: [Sip-implementors] Proxy forwarding invite with multiple via
headers
To: "padmaja venkata" <rvpadmaja at gmail.com>
Cc: sip-implementors at lists.cs.columbia.edu
Date: Friday, June 13, 2008, 11:18 AM
Post by padmaja venkata
Hi,
Thanks for the reply. I, however, use only one proxy
and that single proxy
Post by padmaja venkata
has inserted 3 via headers of its own. Please see the
Invite from the UA and
Post by padmaja venkata
the corresponding Invite forwarded by the proxy below.
My question again is-
Post by padmaja venkata
Is it OK to have more than one Via headers inserted by
a single proxy? Is it
Post by padmaja venkata
defined in RFC?
Yes, it's ok. The proxy in question 'spiraled'
the request (sent the
request through itself) in the course of processing it.
_______________________________________________
Sip-implementors mailing list
Sip-implementors at lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
_______________________________________________
Sip-implementors mailing list
Sip-implementors at lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
Brett Tate
2008-06-13 15:30:07 UTC
Permalink
Post by Scott Lawrence
In this particular case, the problem actually
appears to be that the branch parameter in some
of those interior Via headers has a '%'character
in it - the receiving system is upset by that (I'm
not at all clear on why implementors find it necessary
to parse anything but the topmost Via). We've
seen this on a couple of other implementations as
well, and have changed that to a '$', which is
legal in a token.
The '%' is valid; '$' is not.

via-branch = "branch" EQUAL token

token = 1*(alphanum / "-" / "." / "!" / "%" / "*" / "_" / "+" / "`" /
"'" / "~" )
Dale.Worley
2008-06-13 22:01:40 UTC
Permalink
From: "Brett Tate" <brett at broadsoft.com>
Post by Scott Lawrence
In this particular case, the problem actually
appears to be that the branch parameter in some
of those interior Via headers has a '%'character
in it - the receiving system is upset by that (I'm
not at all clear on why implementors find it necessary
to parse anything but the topmost Via). We've
seen this on a couple of other implementations as
well, and have changed that to a '$', which is
legal in a token.
The '%' is valid; '$' is not.

Actually, '$' is a typo; the correct character is '~'.

via-branch = "branch" EQUAL token

token = 1*(alphanum / "-" / "." / "!" / "%" / "*" / "_" / "+" / "`" /
"'" / "~" )

Dale
Rastogi, Vipul (Vipul)
2008-06-17 11:04:30 UTC
Permalink
Not necessary. A proxy can spiral SIP message to itself (may be
different application [SIP servlets]).


-----Original Message-----
From: sip-implementors-bounces at lists.cs.columbia.edu
[mailto:sip-implementors-bounces at lists.cs.columbia.edu] On Behalf Of
Benjamin Jacob
Sent: Friday, June 13, 2008 8:28 PM
To: padmaja venkata; Scott Lawrence
Cc: sip-implementors at lists.cs.columbia.edu
Subject: Re: [Sip-implementors] Proxy forwarding invite with multiple
viaheaders


I think Padmaja's hinting that the proxy has inserted those 3 Vias the
first time itself, before it could spiral it 'out' and receiving it
back.
If the proxy had spiralled it out, there would be other proxies's Vias
as well.

Care to clear this Padmaja?
From: Scott Lawrence <slawrence at pingtel.com>
Subject: Re: [Sip-implementors] Proxy forwarding invite with multiple
via headers
To: "padmaja venkata" <rvpadmaja at gmail.com>
Cc: sip-implementors at lists.cs.columbia.edu
Date: Friday, June 13, 2008, 11:18 AM
Post by padmaja venkata
Hi,
Thanks for the reply. I, however, use only one proxy
and that single proxy
Post by padmaja venkata
has inserted 3 via headers of its own. Please see the
Invite from the UA and
Post by padmaja venkata
the corresponding Invite forwarded by the proxy below.
My question again is-
Post by padmaja venkata
Is it OK to have more than one Via headers inserted by
a single proxy? Is it
Post by padmaja venkata
defined in RFC?
Yes, it's ok. The proxy in question 'spiraled'
the request (sent the
request through itself) in the course of processing it.
_______________________________________________
Sip-implementors mailing list
Sip-implementors at lists.cs.columbia.edu
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
Loading...