Hi, I've experimented PKG out of memory in a production server. Of
course I'm already increasing such value but I would like to know if
the current settings and traffic could run into PKG memory issues:
- Dual core INTEL XEON 3.00 GHz server.
- Kamailio PKG memory = 4 MB.
- Kamailio Shared memory = 64 MB.
- Kamailio just listens in a single UDP port (8 childrens).
- Just INVITE method is handled (no registration, no subscription).
The script does the following for each request:
- 'permissions' module to match source IP (just ~20 entries in 'address' table).
- 2 custom SQL queries (returning a simple value).
- 'dialog' memory (just in memory).
- 'uac' module to change From header.
- There are 10 AVP's set per transaction.
- 'lcr' module for routing to two gateways (just 2 entries in 'lcr' table).
- 'rtpproxy' is forced for every call.
The server has been working properly for months but these days the
traffic has been duplicated, having ~400 simultaneous calls in peak
hours. Also note that such calls come from callcenters so they are ver
"fast".
With this environment, is it normal to get into PKG memory issues (4
MB)? I understand that it makes sense, but I would like to hear some
opinions. Thanks a lot.
--
Iñaki Baz Castillo
<ibc(a)aliax.net>
Hello,
the minutes of the developer IRC meeting from yesterday are now available in
our wiki: http://sip-router.org/wiki/devel/irc-meetings/2010-04-14-minutes
Best regards,
Henning
--
Henning Westerholt - Development Consumer Products / Consumer Core
1&1 Internet AG, Ernst-Frey-Str. 9, 76135 Karlsruhe, Germany
Hello all,
I need to have kamailio put its hostname on its via append instead of its IP address. How can I do this or is it possible?
Thank you,Eric
_________________________________________________________________
Hotmail has tools for the New Busy. Search, chat and e-mail from your inbox.
http://www.windowslive.com/campaign/thenewbusy?ocid=PID28326::T:WLMTAGL:ON:…
Hello Marius,
Yes, I can confirm that MySQL-devel-community-5.1.43-1.sles10.i586.rpm
was also installed.
I think the log_10_int is included by something that's linked in and has
nothing to do with MySQL.
A colleague and friend has installed on a Debian system with success. I
am about to install Debian over my SuSE installation.
Thanks
Pratab.
-----Original Message-----
From: marius zbihlei [mailto:marius.zbihlei@1and1.ro]
Sent: 14 April 2010 14:34
To: Pratab Ali
Subject: Re: [SR-Users] Failure to load module db_mysql.so due to
undefined symbol: log
Pratab Ali wrote:
> Hello
>
> My version of libmysqlclient was installed from this file
> MySQL-client-community-5.1.43-1.sles10.i586.rpm. So, that'd make it
> version 5.1.43.1 I'd guess.
>
>
Hello,
I presume you have also installed
MySQL-devel-community-5.1.43-1.sles10.i586.rpm
<http://rpm.pbone.net/index.php3/stat/4/idpl/13531085/dir/other/com/MySQ
L-devel-community-5.1.43-1.sles10.i586.rpm.html>
for the development headers and libraries ...
Can you check if this is also installed . I have tested on Debian with
libmysqlclient-dev 5.1.45 and it works. I still wonder about the
log_10_int symbol...
Marius
> Unfortunately, it is the config file parser that is detecting the
> unresolved symbol and so refusing to run kamailio at all.
>
> Thanks
> Pratab
>
>
Hi,
I have a problem to routing with kamailio. When I restart kamailio I
have this error message :
0(710) : <core> [cfg.y:3328]: parse error in config file
/usr/local/etc/kamailio/kamailio.cfg, line 640, column 2-3: syntax error
0(710) : <core> [cfg.y:3328]: parse error in config file
/usr/local/etc/kamailio/kamailio.cfg, line 640, column 2-3:
ERROR: bad config file (2 errors)
here is my line 640 :
if (uri=~"sip:9[0-9][0-9]@.*") { //line 640
log(1, "Matched Cisco Call Manager");
route(4);
};
Can you help me please
thank you
Hi
I need some "guidelines" to troubleshoot the following issue:
a) A is behind NAT
b) B is not behind NAT
c) A calls B, SIP INVITE is sent over TCP
d) A's firewall does NAT and changes the source port to let's say p1
e) B releases the call and sends BYE over UDP
f) Kamailio sends the BYE to A, over UDP, to the NATed source port p1 ?!
2 comments:
- This scenario works perfectly when A is the one who disconnects the call.
and of course when no NAT is involved everything works ok
- if works when I comment the line "fix_nated_contact()" in the route[NAT]
block:
route[NAT]{
#!ifdef WITH_NAT
force_rport();
#if (nat_uac_test("19")) {
if (nat_uac_test("3")) {
if (method=="REGISTER") {
setbflag(10);
fix_nated_register();
} else {
#fix_nated_contact();
[...]
Any hint is very welcome.
Cheers
Pascal
Hello,
I have installed from source version 3.0.1 of Kamailio on an OpenSuSE 10
Linux system.
Currently I am attempting to enable persistence in my Kamailio with the
help of MySQL.
In the config file kamailio.cfg I have enabled MySQL as follows
#!define WITH_MYSQL
In the config file db_mysql.so is the first module to be loaded by
calling loadmodule, but the module fails to load.
By turning, Kamailio, debugging on I get the following explanation.
0(9858) DEBUG: <core> [sr_module.c:382]: load_module: trying to load
</usr/local/lib/kamailio/modules/db_mysql.so>
0(9858) ERROR: <core> [sr_module.c:390]: ERROR: load_module: could not
open module </usr/local/lib/kamailio/modules/db_mysql.so>:
/usr/local/lib/kamailio/modules/db_mysql.so: undefined symbol: log
Using the unix/linux tool 'nm' I see the following.
mindy:~/tmp # nm /usr/local/lib/kamailio/modules/db_mysql.so |
grep log
U getlogin@@GLIBC_2.0
U log
001a6e40 R log_10
001e5d00 D log_10_int
U log_level_info
U log_stderr
U syslog@@GLIBC_2.0
And for sure the capital 'U' means undefined. I have also searched the
source code that came with the kamailio package, for definitions of
'log'. And it also looks like I'll be in trouble later for
log_level_info, log_level_stderr and syslog are undefined too. However,
log_level_info I have just found in source files in the kamailio
package. So, why isn't it linking in?
Unfortunately, searching on the internet I have not yet come across a
forum post that tackles the above issue. As, I suspect everyone else has
got the build right.
Have I built db_mysql.so incorrectly? Though I built it using the make
files that came with the package.
Is it a case of linking in the appropriate libraries to resolve these
undefined symbols?
Finally, I have a colleague who has used the same version of kamailio
but installed on a Debian lenny distro. He has been successful in
getting db_mysql loaded and persistence enabled. However, he has an
older version of mysql (by only one minor-version number) though. Having
looked that the changes' history for the two mysql versions, I see no
obvious reasons that could be the cause of my failure.
By comparing notes, he did nothing too different than I did. We both
followed the instructions in the INSTALL and README files.
There is no particular reason for me using OpenSuSE 10 other than it was
already installed and the computer was not being used by anyone. I am
considering installing Debian Lenny on my computer to match my
colleague, would this be prudent or a waste of time? i.e I may face my
same problem because I'm missing a stage?
Regards and thank you, in advance, for any help given.
Pratab
Hi
We need to force some NOTIFY messages going through our kamailio instance
over UDP to be sent over TCP.
For that purpose we inserted the following relaying rule at the beginning of
the routing script:
route{
if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483","Too Many Hops");
exit;
}
if(msg:len>1300 && is_method("NOTIFY") && proto==UDP)
{
$du = "sip:" + $(ruri{uri.host}) + ":" + $(ruri{uri.port}) +
";transport=tcp";
t_relay();
exit;
}
[...]
This works well if the destination of the NOTIFY message is not behind NAT.
We're looking for a solution for the NAT case. We did some tests using
lookup("location") before changing $du but we did not get any success.
Do you have any idea on how to implement this relaying properly ?
Is it acceptable to change the $du and then execute the t_relay as we did ?
Cheers
Pascal
Hi,
I would like to make a SIPTrunk with kamailio to redirect to a 9xx
numbers in Cisco Call manager, can you help me please.
Here's what I did but it does not work.
if (uri=~"sip:9[0-9][0-9]@ccm-ipv6.crihan.fr") {
log(1, "Matched Cisco Call Manager");
route(4);
};
route(4) {
log(1, "In route[4]");
rewritehostport("195.221.29.145.fr:5060");
append_hf("P-hint: Forwarded to CCM\r\n");
xlog("L_INFO", "$rm from $fu to $tu");
t_on_failure("2");
if (!t_relay()) {
sl_reply_error();
};
exit;
}