At 10:00 AM 1/6/2003, chang hui wrote:
Jiri,
Thanks for your explanation, and let me know the architecture drawback of the B2BUA.
I've already done so in my previous email. If something was not clear
enough, let me know.
Since we have no way to choose other means to implement
pre-paid, we have to go along with B2BUA in a short term.
Could you give me any advise how to implement B2BUA based on SER and estimate the work we
should do?
Could you give me a performance estimate?
A hand-waving guestimate is performance degrades by 50%.
(We currently achieve up to 3-5 kCPS on a PC -- fair capacity
to slice off from.).
a B2BUA does a lot of things:
- first, it keeps dialog state -- it rememembers cseq, callid,
route set, etc. for the whole time of a call (i.e., it eats
memory). All this information is needed when you later wish
to initiate correct BYEs.
- it translates UAC to UAS transactions and vice versa
- you probably want to save the dialog state on some persistence
storage (mysql) -- signaling would not work on reboot otherwise
That would take quite some development work. I think the amount
of work can be somewhat lowered if normal (record-routed) proxy
processing is used, as opposed to a full B2BUA which terminats
all UAS transactions and translates them to UAC transactions.
You then still need to do the following:
- keeping a dialog table (keyed by callid and local/remote tags)
- updating the dialog table (new items on INVITE completion, remove
dialogs on BYE, update dialog state, such as CSeq, on any other
request).
- starting a timer on beginning of a dialog that -- when expired,
subject to balance and charging plans -- sends BYEs to all call
parties using dialog context.
That could be implemented as a new ser module, which registers
TM-module callbacks to be updated on transactions completions.
One could also move the dialog maintenance out of ser to some
shell scripts to make programming easier. That would however
very likely degrade performance noticeably.
Also note, that these scenarios are based only on signaling -- there
are no PSTN-prepaid-style anouncement "you can call 5 minutes"
and "your call will be cut off in 20 seconds". It is doable too,
but it is probably more meaningful to start with the signaling
part.
-Jiri
Best Regards and Thanks.
Chang Hui
-----Original Message-----
From: Jiri Kuthan [mailto:jiri@iptel.org]
Sent: Saturday, January 04, 2003 8:29 PM
To: chang hui; serusers(a)lists.iptel.org
Subject: RE: [Serusers] About B2BUA
Hello,
I see -- prepaid scenarios are indeed difficult without a B2BUA.
There has been a proposal few times to use session timer (a proxy
looks at ballance and attaches a hint to SIP requests indicating
when a call should terminate), but the work has not been pursued.
You may find a discussion of B2BUA architectural drawbacks on the
SIP mailing list, selected postings are at
http://www.iptel.org/info/trends/#b2bua.
imho, the most compelling issue is that of robustness and scalability.
A b2bua needs to keep track of all current calls. A broken b2bua affects
signaling for all existing calls.
Basically, a B2BUA is simply two UAs glued together. It accepts
transactions as a server, and initiates client transactions
based on them. It keeps dialog state (callid, cseqs, etc.) and
may initiate in-dialog transactions on its own (like the BYE
transaction in which you are interested).
It is doable to implement a B2BUA on top of ser, but it would
cost quite some development effort. Particularly, it would take
dialog maintenance (better with persistency so that signaling
does not get broken on reboot). We can provide guidanance to
volunteers willing to go through this exercise.
-Jiri
At 02:28 AM 1/4/2003, chang hui wrote:
Jiri,
Thanks for your prompt response.
We want to implement a pre-paid system in which once subscriber's balance is depleted,
the dialog could be torn in time. However other Proxy or other elements could not take
part in the call, they could not send a BYE to caller directly. It's the why we
consider B2BUA.
We project to build a B2BUA to support voice/video/IM at first stage, and support other
SIP based services as they emerged.
However, I just noticed the definition of B2BUA in 2543-bis04 in several sentences, there
has no other analysis on performance, reliability, limitations and how to implement it.
So, I hope to get help from the society.
Thanks for your help again.
Koalas
-----Original Message-----
From: Jiri Kuthan [mailto:jiri@iptel.org]
Sent: Friday, January 03, 2003 11:06 PM
To: chang hui; serusers(a)lists.iptel.org
Subject: Re: [Serusers] About B2BUA
Hello,
ser is not a B2BUA -- it can act as proxy, redirect, transactional UAS
or registrar. These modes make a vast majority of network scenarios
happy without a need to use a B2BUA. Which is good, because B2BUAs
inherently have certain scalability, reliability and security limitations.
Is there a particular reason why you would like to use a B2BUA?
-Jiri
At 08:00 AM 1/3/2003, chang hui wrote:
Hi All,
I am newbie of this field, thanks everyone help me.
I am interesting in B2BUA, however, except some brief defination in 3261, I could not find
any further defination or how to implement about B2BUA, I noticed that SER could be
implemented as a B2BUA, where can I find some implementation? or where can I get any
description?
Koalas
_______________________________________________
Serusers mailing list
serusers(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers
--
Jiri Kuthan
http://iptel.org/~jiri/
--
Jiri Kuthan
http://iptel.org/~jiri/
--
Jiri Kuthan
http://iptel.org/~jiri/