Hey All,
Since we have ramped up usage from about 2 SIP phones to 30 SIP phones on our SER boxes to start some testing we are now getting a LOT of "Out of memory" errors in the syslog.
We were originally running on a Sun Ultra60 with Solaris 9 but changed to an Intel box running Redhat 9 since we thought that there might be some memory leaks on Solaris. Unfortunately the problem exists regardless of the OS. When we start SER, it usually works fine for about 5 mins and then it starts giving the errors.
We have plenty of memory on both servers that we have tested this on. Over a gig on each. Also, when I run top to check system resources it tells me that there is still over 800 meg of physical memory and over a gig of swap free even while SER is spitting out these errors.
The errors that we are seeing the logs are as follows:
Jan 14 13:32:45 jupiter /usr/sbin/ser[27179]: ERROR: build_req_buf_from_sip_req: out of memory
Jan 14 13:32:45 jupiter /usr/sbin/ser[27179]: ERROR: print_uac_request: no pkg_mem
Jan 14 13:32:45 jupiter /usr/sbin/ser[27179]: ERROR: t_forward_nonack: failure to add branches
We get these over and over again in the syslog.
Anyone know the reason that we are getting these errors? Is this a bug with SER? or misconfiguration somehow on our part? If so, how do we fix it?
I have included our ser.cfg file as an attachment to this email, and I have also included debug output from SER as a seperate attachment.
Any help would be very much appreciated! Thanks,
Darren Nay - dnay(a)libertyisp.com
Hello everybody
Well, we have been able to make a Voice call between two Nortel SIP
clients using SER. It's great! Thanks for your help.
I have a question about user's contacts. In one hand, I can use serweb
to login with my username and add sip contacts or add phonebook entries.
In other hand, I can use my client to add new contacts. Moreover, the
client can tell me if my contacts are online or offline.
But the two ways don't display the same information, it means, from
serweb I add several sip address (I check that are recorded at ser
database) but this addresses are not imported when I start the SIP
client.
I need my client import sip contacts ( in a very similar way like MSN
Messenger) from server. Is there any way to do this? Does the client
have to make a request to the server or is the server who has to send
this information when it receives a REGISTER?
Or maybe SER is not intended to do this?
Thank you very much for your help.
Curro
Hi,
I have a couple questions for rtpproxy/nathelper:
(1) Can rtpproxy/nathelper support calls with multiple media
sessions (e.g. video conversation between WMs)?
(2) Is there any plan for adding the support for non-symmetric
RTP UAs like Siemens SCS client in the near future?
Thanks,
Kevin
---------------------------------------------------------------
Date: Wed, 07 Jan 2004 19:19:32 +0200
From: Maxim Sobolev <sobomax(a)portaone.com>
Subject: [Serusers] New versions of RTP proxy/nathelper commited
To: serusers(a)lists.iptel.org
Message-ID: <3FFC3FA4.6040800(a)portaone.com>
Content-Type: text/plain; charset=us-ascii; format=flowed
Hi,
I've just committed major update for rtpproxy/nathelper, which adds
support for proxying RTCP and also make RTP proxy behave much better for
non-NATed clients by pre-loading remote addresses[1] of each party from
the SIP request/reply. Please note that proxy's command protocol has
been extended to support new functionality, so that you need both new
rtp proxy and new nathelper (old nathelper will not work with new rtp
proxy and vice versa). Both of them can be obtained from the ser's cvs
repository:
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/rtpproxy/http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/nathelper/
Please let me know if there are any problems with the new version.
-Maxim
[1] currently only IPv4 addresses can be pre-loaded, though it should be
trivial to extend proxy, nathelper and command protocol to accomodate
IPv6 as well. Proxy's core supports IPv4<->IPv4, IPv4<->IPv6 and
IPv6<->IPv6 relaying already both for RTP and RTCP.
Hello everyone,
Can you recommend, if exists, boook about ser ? I can't find anything
on amazon.
thanks
Srbo Cvetkovic | CityNet, Inc.
srbo(a)city-net.com | Pittsburgh, PA
voice: 412.481.5406 | fax: 412.431.1315
Hi all,
I use RPM packet for redhat linux 7.3. My system is
redhat linux 7.3. Kernel is 2.4.20-24.7.
Now SER usually works fine but seldom it down about
1 time per week. I can't find why I down. How can I
find it in a simple way.
Now I use a gateway to connect to PSTN. When traffic
is up, I need to add more gateway. Now I use forward
function to transfer those calls to PSTN to gateway if
it find the call is call to PSTN. If there are more
than one gateway, How can I balance calls to those
gateway.
Regards,
Wangji
__________________________________
Do you Yahoo!?
Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes
http://hotjobs.sweepstakes.yahoo.com/signingbonus
Hi,
I have radius authentication working thanks to Jan's help but I am still not receiving any accounting messages to my radius server. I found a mention of setting radius_log_flag but ser 0.9.11 tells me it isn't found in the "acc" module. How can I set invite and goodbye messages (or any others for that matter) to send information to my radius server for accounting purposes. I
have read at leat 90% of the old messages but have yet to find an answer.
Thanks in advance,
Steve
Hello
We need some help. We are trying to make a call.
The scenario is the following:
2 User Agents and SER acting as a SIP Proxy. (they are on the same LAN)
When the caller sends a SIP INVITE to the callee, the SIP INVITE goes
first to SER. Then, SER sends a 100 Trying to caller and reroutes the
SIP INVITE to the callee.
Now, the strange thing starts:
SER SENDS a SIP response 200 OK to the caller when he should do
nothing!!!
According to the specification (RFC 3261). SER should do nothing except
for routing the SIP messages 180 Ringing and 200 OK from the callee!!
Here, there is a explain diagram:
ACCORDING WITH THE RFC 3261
==============================
Alice's . . . . .ProxY. . . . . Bob's
softphone SIP Phone
| | |
| INVITE F1 | |
|--------------->| INVITE F2 |
| 100 Trying F3 |--------------->|
|<---------------| |
| | 180 Ringing F4 |
| 180 Ringing F5 |<---------------|
|<---------------| 200 OK F6 |
| 200 OK F7 |<---------------|
|<---------------| |
| |
| ACK F8 |
|-------------------------------->|
| Media Session |
|<===============================>|
| BYE F9 |
|<------------- ------------------|
| 200 OK F10 |
|-------------------------------->|
| |
WHAT SER MAKES
=======================
Alice's . . . . .SER . . . . . Bob's
softphone SIP Phone
| | |
| INVITE F1 | |
|--------------->| INVITE F3 |
| 100 Trying F2 |--------------->|
|<---------------| |
| 200 OK F4 | |
|<---------------| |
| | 200 OK F5 |
| |--------------->|
| | 180 Ringing F6 |
| 180 Ringing F7 |<---------------|
|<---------------| 200 OK F8 |
| 200 OK F9 |<---------------|
|<---------------| |
| |
| ACK F10 |
|-------------------------------->|
| Media Session |
|<===============================>|
| BYE F11 |
|<------------- ------------------|
| 200 OK F12 |
|-------------------------------->|
| |
Maybe, it is a problem of our SER configuration.
Thank you very much for your time.
Attached ser config:
#
# $Id: ser.cfg,v 1.21.4.1 2003/11/10 15:35:15 andrei Exp $
#
# simple quick-start config script
#
# ----------- global configuration parameters ------------------------
#debug=3 # debug level (cmd line: -dddddddddd)
#fork=yes
#log_stderror=no # (cmd line: -E)
# Uncomment these lines to enter debugging mode
#debug=7
#fork=no
#log_stderror=yes
check_via=no # (cmd. line: -v)
dns=no # (cmd. line: -r)
rev_dns=no # (cmd. line: -R)
#port=5060
#children=4
#listen=212.166.192.132
fifo="/tmp/ser_fifo"
alias=cdshuesca.es
# ------------------ module loading ----------------------------------
# Uncomment this if you want to use SQL database
loadmodule "/usr/local/lib/ser/modules/mysql.so"
loadmodule "/usr/local/lib/ser/modules/sl.so"
loadmodule "/usr/local/lib/ser/modules/tm.so"
loadmodule "/usr/local/lib/ser/modules/rr.so"
loadmodule "/usr/local/lib/ser/modules/maxfwd.so"
loadmodule "/usr/local/lib/ser/modules/usrloc.so"
loadmodule "/usr/local/lib/ser/modules/registrar.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
loadmodule "/usr/local/lib/ser/modules/auth.so"
loadmodule "/usr/local/lib/ser/modules/auth_db.so"
loadmodule "/usr/local/lib/ser/modules/acc.so"
# ----------------- setting module-specific parameters ---------------
# -- usrloc params --
#modparam("usrloc", "db_mode", 0)
# Uncomment this if you want to use SQL database
# for persistent storage and comment the previous line
modparam("usrloc", "db_mode", 2)
# -- auth params --
# Uncomment if you are using auth module
#
modparam("auth_db", "calculate_ha1", yes)
#
# If you set "calculate_ha1" parameter to yes (which true in this
config),
# uncomment also the following parameter)
#
modparam("auth_db", "password_column", "password")
# -- rr params --
# add value to ;lr param to make some broken UAs happy
modparam("rr", "enable_full_lr", 1)
modparam("acc","log_level",1)
modparam("acc","log_flag",1)
# ------------------------- request routing logic -------------------
# main routing logic
route{
# initial sanity checks -- messages with
# max_forwards==0, or excessively long requests
if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483","Too Many Hops");
break;
};
if ( msg:len > max_len ) {
sl_send_reply("513", "Message too big");
break;
};
# we record-route all messages -- to make sure that
# subsequent messages will go through our proxy; that's
# particularly good if upstream and downstream entities
# use different transport protocol
record_route();
# loose-route processing
if (loose_route()) {
t_relay();
break;
};
# if the request is for other domain use UsrLoc
# (in case, it does not work, use the following command
# with proper names and addresses in it)
if (uri==myself) {
if (method=="REGISTER") {
# Uncomment this if you want to use digest authentication
if (!www_authorize
("cdshuesca.es", "subscriber")) {
www_challenge("cdshuesca.es", "0");
break;
};
# setflag(1); # Anadido por mi para log
# t_relay(); # Anadido por mi
save("location");
break;
};
# native SIP destinations are handled using our USRLOC
DB
if (!lookup("location")) {
sl_send_reply("404", "Not Found");
break;
};
};
# forward to current uri now; use stateful forwarding; that
# works reliably even if we forward from TCP to UDP
if (!t_relay()) {
sl_reply_error();
};
lookup("aliases");
save("aliases");
}
Hi all.
Did anyone implemented ser processing 503 responces
from gateways?
I mean you have 2 or more PSTN gateways. First you try
to contact PSTN number trough gateway A, if there are
no available resouces on gateway A second gateway B is
contacted and call is processed on it. I just want to
know if it is possible to do it with ser.
And is it possible to implement some kind of load
balansing on a few gateways.
Regards,
Grigore Sandul.
__________________________________
Do you Yahoo!?
Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes
http://hotjobs.sweepstakes.yahoo.com/signingbonus
Hi ser users,
I'm trying to dialling to a aliases for username, I want do alias the username
8910 with pstn number 5511xxxxxxxx.
I have put a 'lookup("aliases");', does this is the only change I have to do on
ser.cfg ?
--
|o
|o De que adianta ter olhos verdes, se a natureza encarrega-se de
|o deixa-los vermelhos. -- Jimmy Clify
|o
|o Fabio Silvestri
|o fabio(a)informatec.com.br
|o ICQ: 1667351
|o
Dear List,
My serctl ps shows very less processes see below.
/usr/sbin/serctl ps
0 24442 stand-alone receiver @ 127.0.0.1:5060
1 24444 timer
2 24446 fifo server
3 0
4 0
5 0
6 0
7 0
I wonder whether this is typical. Also I cannot register from a SIP
client I get an error.
Proxy registration failed. Reason : general registration failure (Client
non-INVITE transaction [Trying]: timed out.
Please help
Deen