Hi, and sorry if I am getting repetitious but since I am not getting any
replies on what I thought was an important question(rfc-complicance)
I need to ask the question again...(at least indicate why you disagree
with me?)
I was hoping someone could comment on what I thought was some fairly clear
rfc-references, that indicate that an ACK for 2xx should NOT match the
INVITE transaction, since it should be terminated at reception/sending
of 2xx.
I hope I dont offend in any way, I would just like to get some
clarification on this.
I hope you can clarify your standpoint, especially if you disagree with
me, which I get the feeling you do.
Kind Regards
Taisto Qvist
Taisto Qvist wrote:
> I seems like we dont agree on the interpretation of the txn handling
> for invite. Sure, there is a timer for handling retransmitted responses,
> but thats in earlier states than Terminated.
> Sure, there is nothing that says that the inner workings of your
> transactions
> must exactly behave as the statemachine diagrams in the rfc as long as
the
> external behavior stays the same, but still, I think that the ACK for 2xx
> should not match the INVITE txn.
> (It probably boils down to how rfc-isch you want to be.)
>
> >The end-to-end ACK establish a separate transaction (RFC 3261) and these
> >ACKs are not match as part of the INVITE transactions, but correlated
> >with them.
>
> [TQ]
> Where does it say that ACKs establish a separate transaction?
> There is no defined ACK transaction, only INVITE/nonInvite, server and
> client.
> The ACK is either a part of the INVITE txn, or its a separate request,
> but I would
> never call it a standalone transaction.
> The real purpose of txn's (in my view), is to enable/simplify forking,
> and to
> handle retransmissions. Retransmissions of ACK and 2xx, are done by
> the UAC/UAS,
> so there is no need for a ack-txn.
>
> >but even describe the wait timer. So, there is no contradiction.
> [TQ]
> I'd say there is. Where does it describe that this wait-timer should be
> used for all responses, or for matching ALL acks?
>
> My two main reasons for saying that ACKs for 2xx should not be matched,
> come from the following two texts. (17.1.1.2, and 17.2.1)
>
> 17.1.1.2 (client invite txn)
> The client transaction MUST be destroyed the instant it enters the
> > "Terminated" state. This is actually necessary to guarantee correct
> operation. The reason is that 2xx responses to an INVITE are treated
> differently; each one is forwarded by proxies, and the ACK handling
> in a UAC is different. Thus, each 2xx needs to be passed to a proxy
> core (so that it can be forwarded) and to a UAC core (so it can be
> acknowledged). No transaction layer processing takes place.
> Whenever a response is received by the transport, if the transport
> layer finds no matching client transaction (using the rules of
> Section 17.1.3), the response is passed directly to the core. Since
> the matching client transaction is destroyed by the first 2xx,
> > subsequent 2xx will find no match and therefore be passed to the
> core.
>
> [TQ]
> It even says "actually nessesary to guarantee...."
> Since the txn's are there to (among other things) absorb retransmissions,
> the receiving the 2xx MUST destroy the txn, so that when the next
> retransmission
> of 2xx is received, it is not consumed by the txn layer.
> This is what your txn-layer does for 3++ right? Any additional 3++
> received on
> a txn while waiting for Timer D to expire, will just be consumed, and
> the proxy
> core will never have to process it.
>
>
> 17.2.1. (server invite txn)
> The purpose of the "Confirmed" state is to absorb any additional ACK
> messages that arrive, triggered from retransmissions of the final
> response.
> ..snip...
> Once the transaction is in the "Terminated" state, it MUST be destroyed
> immediately.
>
> [TQ]
> The Confirmed state is there to absorb retransmissions, not the
> terminated.
> When receiving 2xx you go directly to terminated bypassing confirmed.
>
> Also, in 18.2.1 the text explicitly says:
>
> .. Note that when a UAS core sends a 2xx response to INVITE,
> the server transaction is destroyed. This means that when the ACK
> arrives,
> there will be no matching server transaction, and based on this rule,
> the ACK is passed to the UAS core, where it is processed.
>
> Thats faily clear right? :-)
> The think that puzzles my a little bit though, is that you must have
added
> "extra" code for this matching...?
> I mean, you're using the ;branch=z9xxxx for transaction matching
right, if
> its there? And the ACK for 2xx doesnt have the same branch, indicating
> a "new txn".
>
> So matching ALL ACKs would imply that for any ACK that doesnt match a
txn,
> your really checking up Call-Id's, tags and stuff, just to be able to
> match
> this ACK to the 2xx?
>
> Or are you checking callid's, cseq's, tags, and stuff, for ALL
> requests in your
> txn matching?
>
> Now, I been working on a sip-stack the last few years myself, and I
> naturally
> know that there is often a need to match the ACK, and the stack I've
> build has
> similar functions, it just doesnt do it on the txn layer, where we try
> to be as
> RFC-isch as possible.
>
> What I would like, is simply have some function-parameters to the
> t_check_trans(<DEFANGED_param>),
> or even better in my little mind, a "modparam("tm",
> "ack_2xx_matching", 1)".
>
> I am looking forward to hearing your reply, and in the mean time,
> thanks to all of you developers for an extraordinary software :-)
>
> Regards
> Taisto Qvist
>
> > Hi guys,
> >
> > Just to bring some clarifications on the TM module.
> >
> > once a transaction is completed (negative or 2xx reply), it is put on
> > wait (wait timer - see RFC3261) for catching any potential
> > retransmissions of replies.
> > So, the transaction is completed, but not removed from memory - RFC
does
> > not say that you need to trash immediately all the transaction
> > information, but even describe the wait timer. So, there is no
> > contradiction.
> >
> > The ACK (for 2xx)catching is done based on the completed INVITE
> > transaction (from wait timer) - nothing else.
> >
> >
> > Inaki, could you please detail what you mean by:
> >
> > <quote>
> > In my opinion OpenSer does a special treatment for ACK in tm mode,
> even if
> > they are for failed transaction (hop-by-hop ACK's) or succesfull INVITE
> > (end-to-end ACK's).
> >
> > </quote>
> >
> > Maybe I can explain you more if I understand you question....
> >
> > Regards,
> > Bogdan
>
----
Taisto Qvist, IP-Solutions
Mobile: +46-708-88 02 63
"We are Pentium of Borg. Division is futile, You will be approximated"
Hi -
I am using 1.2.1-notls. When using t_relay() to INVITE a call, I
assume that the timeout before returning a 408 would be governed by
fr_inv_timer and fr_inv_timer_avp. Although the 1.2 documentation
states that the default for fr_inv_timer is 120 seconds I seem to get
a timeout at 60 seconds and neither fr_inv_timer or fr_inv_timer_avp
seems to have any effect. Have a made an error in interpreting the
docs? How should I be varying this timeout?
Thanks,
Mark
Hi!
I have integrated OpenSER as a dedicated presence server in an ims
network and I'm somewhat suffering from the delays the traversal of
the ims core causes. Here's whats happening:
Upon subscription the presence module sends a 202 Accepted (actually
named OK, cosmetic bug?). At almost the same instant it also sends the
first, in-dialog notify.
What happens later is that sometimes the notify arrives before the ok.
When this happens the client (on top of jain-sip) cannot identify the
subscription dialog for the notification. It does not treat it
correctly and does not respond OK to it. The absence of the response
results in a timeout and the presence server invalidates the
subscription.
Now, to solve this issue, would it be wise to introduce a parameter in
the presence module which delays to transmission of the first
notification to ease up the situation for the client.
Another solution is of course that the client simply inspects the
local tag to prematurely identify the upcoming sip dialog for the
subscription and then be able to treat the request properly. However,
how does this stand against the standards?
I would be grateful for your input on the subject.
Leonard Broman
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
I try to get some Informations from openser via mi_xmlrpc module.
Unfortunately I allways get an "404 Not found" Reply back from openser.
I checked the communication between openser and php xml client. My
client sends this to openser:
POST / HTTP/1.0
Host: 85.16.246.9
Content-Type: text/xml
User-Agent: me
Content-length: 157
<?xml version="1.0"?>
<methodCall>
<methodName>get_statistics</methodName>
<params>
<param><value><string>tm:</string></value></param>
</params></methodCall>
That looks like as documentated in mi_xmlrpc module doc. I send
different MI commands to openser: real and non real. But I always get
that 404 error. In mi_xmlrpc log is nothing except those 404 answeres
again. Debug level 9 says nothing. Sending MI commands to openser via
mi_fifo works.
Is there anything else to configure for xmlrpc?
regards Helmut
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFHxEEz4tZeNddg3dwRAmpwAJoDKWW6bWU3zRyaaisa6HOOX6JdKwCcDAqM
2pmp4F96L85s8SmEI5L76ak=
=23Fr
-----END PGP SIGNATURE-----
Hi,
I made the fix for both 1.3 and 1.4 versions. There is no directory with
patches. The newest version is found in the on svn for branch 1.3 and
trunk respectively. If you want to make use of this patch you have to
update to download the latest svn version. See:
http://www.openser.org/mos/view/Download/.
<http://www.openser.org/mos/view/Download/>
regards,
Anca Vamanu
Jeremy George wrote:
> Anca,
>
> Is this a patch for 1.3? Or, a fix that went into the 1.4 development
> tree? If it's for 1.3, how do I get it? I looked through openser.org but
> can't find a directory of patches. Thanks much.
>
> - Jeremy
>
>
>
>> -----Original Message-----
>> From: users-bounces(a)lists.openser.org [mailto:users-
>> bounces(a)lists.openser.org] On Behalf Of Anca Vamanu
>> Sent: Thursday, February 21, 2008 11:14 AM
>> To: Zahid Mehmood
>> Cc: users(a)lists.openser.org
>> Subject: Re: [OpenSER-Users] help.. openser 1.3.0 crash -- presence/ BLA
>>
>> Hi,
>>
>> Thank you for the print. It helped finding the bug.
>> I have just committed a fix. It would be great if you would update with
>> the svn version, test and confirm if it works.
>>
>> Thanks,
>> Anca Vamanu
>>
>> Zahid Mehmood wrote:
>>
>>> Hi Anca,
>>> Thank you for your quick response. Attached below is the
>>> information you requested.
>>>
>>> Thanks.
>>>
>>>
>> _______________________________________________
>> Users mailing list
>> Users(a)lists.openser.org
>> http://lists.openser.org/cgi-bin/mailman/listinfo/users
>>
>
>
>
>
Hey Anca,
That's great. Thanks. So, I have now openser-1.3.x-svn-latest.tgz .
If it doesn't wear your patience thin with too-simple questions, I'd like
to ask just a couple more.
Is this version still considered a stable release? And, I can't find a
file within the tarball that distinguishes this version from others. For
example, the ChangeLog doesn't show it. Where would I find such information?
Again, thanks for your expertise, and patience.
- Jeremy
>-----Original Message-----
>From: Anca Vamanu [mailto:anca@voice-system.ro]
>Sent: Wednesday, February 27, 2008 10:24 AM
>To: 'Jeremy George'
>Cc: users(a)lists.openser.org
>Subject: Re: [OpenSER-Users] help.. openser 1.3.0 crash -- presence/ BLA
>
>Hi,
>
>I made the fix for both 1.3 and 1.4 versions. There is no directory with
>patches. The newest version is found in the on svn for branch 1.3 and
>trunk respectively. If you want to make use of this patch you have to
>update to download the latest svn version. See:
>http://www.openser.org/mos/view/Download/.
><http://www.openser.org/mos/view/Download/>
>
>regards,
>Anca Vamanu
>
>Jeremy George wrote:
>> Anca,
>>
>> Is this a patch for 1.3? Or, a fix that went into the 1.4 development
>> tree? If it's for 1.3, how do I get it? I looked through openser.org but
>> can't find a directory of patches. Thanks much.
>>
>> - Jeremy
>>
>>
>>
>>> -----Original Message-----
>>> From: users-bounces(a)lists.openser.org [mailto:users-
>>> bounces(a)lists.openser.org] On Behalf Of Anca Vamanu
>>> Sent: Thursday, February 21, 2008 11:14 AM
>>> To: Zahid Mehmood
>>> Cc: users(a)lists.openser.org
>>> Subject: Re: [OpenSER-Users] help.. openser 1.3.0 crash -- presence/ BLA
>>>
>>> Hi,
>>>
>>> Thank you for the print. It helped finding the bug.
>>> I have just committed a fix. It would be great if you would update with
>>> the svn version, test and confirm if it works.
>>>
>>> Thanks,
>>> Anca Vamanu
>>>
>>> Zahid Mehmood wrote:
>>>
>>>> Hi Anca,
>>>> Thank you for your quick response. Attached below is the
>>>> information you requested.
>>>>
>>>> Thanks.
>>>>
>>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users(a)lists.openser.org
>>> http://lists.openser.org/cgi-bin/mailman/listinfo/users
>>>
>>
>>
>>
>>
>
>
Hi David,
The setup time is actually controlled by TM (during the INVITE transaction).
If you want to set terminate a call, see the dialog module, in openser
1.3 version:
http://www.openser.org/docs/modules/1.3.x/dialog.html#AEN461
regards,
Bogdan
David Villasmil wrote:
> Hello,
>
> Timeout for a setup I understand is done with SST/Dialog, I mean
> disconnect an established call.
>
>
> thanks
>
> On Wed, Feb 27, 2008 at 10:16 AM, Bogdan-Andrei Iancu
> <bogdan(a)voice-system.ro <mailto:bogdan@voice-system.ro>> wrote:
>
> Hi David,
>
> What do you mean by "call timeout" - do disconnect an established call
> after some time? or timeout during call setup?
>
> Regards,
> Bogdan
>
> David Villasmil wrote:
> > Hello all,
> >
> > I have a network already operational for voip-voip/voip-pstn
> > servicing about 20k customer and all is "well". At the moment I'm
> > using Asterisk as a B2BUA mainly for call timeout capabilities. Is
> > there absolutely NO WAY of setting a call timeout (disconnect)
> after X
> > seconds? Do I have to use a separate B2BUA?
> >
> >
> > Thanks everyone.
> >
> > David
> >
> ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Users mailing list
> > Users(a)lists.openser.org <mailto:Users@lists.openser.org>
> > http://lists.openser.org/cgi-bin/mailman/listinfo/users
> >
>
>
I know many SER users also use OpenSER in combination with SER. Indeed,
I see also quite a lot of confusion with people asking OpenSER questions
on the SER mailing list... So, not to add to the confusion: OpenSER is a
fork of the original SIP Express Router project, where OpenSER and SER
code bases started to diverge at that point. It was only the SIP proxy
of iptel.org that was forked, thus: SEMS, SERWeb, and sipsak are still
iptel.org only projects with no forks (rtpproxy.org, formerly loosely
coupled with iptel.org project has now its own home: http://rtpproxy.org).
So, with that clarification, some seruser subscribers may find the below
announcement of interest. I forward it on the request of Bogdan, one of
the maintainers of OpenSER.
g-)
The second edition of OpenSER Summit will take place in San Jose, USA ,
on the 17th of March, 2008, during VonX Spring 2008 pre-conference
events. This is the first US edition of the OpenSER Summit - to learn
more about the agenda and layout of the event, see
http://www.openser.org/mos/view/OpenSER-Summit-2008.
All participants to register via OpenSER site before Friday, March 7th,
will get free access to the OpenSER event.
This OpenSER Summit edition is sponsored by a parallel OpenSER related
event, the OpenSER Pavilion . The pavilion is a common exhibiting area -
booth 1027, inside VoN expo, gathering, under the OpenSER name, six
different companies working or using the project. You can find more
about the OpenSER Pavilion and its participants here -
http://www.openser.org/mos/view/OpenSER-Pavilion-2008.
The dual event, OpenSER Summit & Pavilion is new concept of a more
complex event, aiming to create a larger diversity and to give more
power to the understanding of the OpenSER project.
Hello all,
its a well know fact that there exists some issues with the OpenSER
documentation, for some parts there is almost no documentation available at
all. Existing documentation is sometimes a little bit unstructured or
incomplete. Its hard for new users to understand the configuration of the
server, let alone how they should setup some services. And after he or she
has gone through the basics, its again the same for configuring complex
modules..
During the last IRC meeting we decided to start a new effort to tackle this
problems more efficiently than in the past.
So a new mailling list 'openser-docs' has been created, targeted in improving
and extending the existing documentation, and also create new content, for
example a 'OpenSER Guide'.
As its difficult for many of the existing developers to write user related
documentation, because they're already to deep involved into the project, i
would like to ask here for participation from you.
We're seeking people that are also dissatisfied with the current situation,
and want invest something to improve this. No coding experiences or knowledge
about certain tools or languages are necessary.
So please join us and subscribe at
http://lists.openser.org/cgi-bin/mailman/listinfo/openser-docs !
Thank you,
Henning
Hello all,
I have a network already operational for voip-voip/voip-pstn servicing
about 20k customer and all is "well". At the moment I'm using Asterisk as a
B2BUA mainly for call timeout capabilities. Is there absolutely NO WAY of
setting a call timeout (disconnect) after X seconds? Do I have to use a
separate B2BUA?
Thanks everyone.
David