[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Partysip-dev] Problems forwarding with Route header + syntax
From: |
Sahil Rangari |
Subject: |
[Partysip-dev] Problems forwarding with Route header + syntax |
Date: |
Fri, 24 Oct 2003 11:27:45 -0400 |
Hi,
First, I would like to thank you for helping me with partysip installation.
I am testing some call scenarios with our sip stack.
I am facing one particular error/incomplete call, and a syntax conflict on part
of osip/partysip.
*******************
*******************
1)
Test set:
X ua ----------------P partysip ------------ Y ua
(89.101.0.30:5060) (89.101.0.30:8060) (89.3.8.8:5060)
- Y successfully registers with partysip as "address@hidden"
- X sends an Invite to P with Y's address of record.
- P forwards Invite to Y after record-routing itself.
==============
a)
INVITE sip:address@hidden:5060 SIP/2.0
...........
Route: <sip:89.101.0.30:8060;lr>
In the above call, if Invite has a pre-loaded 'Route' header,
P does not forwards it to Y. Instead, P returns a 503 to X.
The reason the Route header is present in the initial Invite is
that P serves as a outbound proxy for X. According to
RFC 3261, Section 8.1.1.1 and 8.1.2, it is desirable
to have a preloaded route designating the outbound proxy
(which is P in this example).
======================
b)
INVITE sip:address@hidden:5060 SIP/2.0
...........
If the pre-loaded route header is not include in the Invite,
it is resolved and forwarded to Y and the rest of call is completed.
Fwded as -
INVITE sip:address@hidden;maddr=89.3.8.8 SIP/2.0
.......
=======================
c)
INVITE sip:89.3.8.8:5060 SIP/2.0
.........
Route: <sip:89.101.0.30:8060;lr>
If the Invite request URI does not have address-of-record
of Y, but it's IP address, and the pre-loaded Route header,
the Invite is forwarded to Y and the rest of the call completes.
===========================
Could you point out as to why a) and c) behave differently.
A look at sip trace shouws the following difference for/without Route.
with route header:
<../../../partysip/plugin/ls_sfull/ls_sfull.c: 222> ls_sfull plugin: mandate
statefull handling for route.
without route header:
<../../../partysip/plugin/ls_sfull/ls_sfull.c: 188> ls_sfull plugin: checking if
we are responsible for request-URI 'cognitronics.com'
<../../../partysip/plugin/ls_localdb/ls_localdb.c: 278> ls_localdb plugin: 1
locations found!
Attached are the config file and trace file for your consideration.
(Please ignore the 408s etc. in the log).
****************************************
****************************************
2)
Whenever Partysip server forwards the request, it decrements the Max-Forwards
as
required. But it also changes header to lowercase viz. "max-forwards", which
is
not the right syntax as per RFC 3261. Could you give me pointer as to this
problem is with the osip/partysip encoder(struct-to-text)/decoder(parser).
Thanks and Regards,
Sahil
logs.zip
Description: Zip compressed data
- [Partysip-dev] Problems forwarding with Route header + syntax,
Sahil Rangari <=