Connection scheme:
UA - router with NAT - OpenSER with nathelper - PSTN
gateway (Cisco AS5350)
(192.168.13.109) (217.107.59.194) (62.33.22.14)
(62.33.22.11)
Both incoming and outgoing calls work right. Openser uses the nathelper
module for proxing of rtp stream of NAT UA.
Here is example of SIP messages (call from PSTN through a gateway):
15:37:07.406529 IP 62.33.22.11.54581 > 62.33.22.14.5060: UDP, length
1121
E..}........>!..>!...5...i.hINVITE sip:78142799233@voapp.ru:5060 SIP/2.0
Via: SIP/2.0/UDP 62.33.22.11:5060;x-route-tag="tgrp:ipphone"
From: <sip:78142764164@62.33.22.11>;tag=A515D068-227D
To: <sip:78142799233@voapp.ru>
Date: Fri, 04 Aug 2006 11:37:07 GMT
Call-ID: 64A759D3-22E411DB-8B0DFF2E-66029374(a)195.161.136.114
Supported: timer,100rel
Min-SE: 1800
Cisco-Guid: 1688609156-585372123-2332753710-1711444852
User-Agent: Cisco-SIPGateway/IOS-12.x
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, COMET, REFER,
SUBSCRIBE, NOTIFY, INFO
CSeq: 101 INVITE
Max-Forwards: 6
Remote-Party-ID:
<sip:78142764164@62.33.22.11>;party=calling;screen=yes;privacy=off
Timestamp: 1154691427
Contact: <sip:78142764164@62.33.22.11:5060>
Expires: 180
Allow-Events: telephone-event
Content-Type: application/sdp
Content-Length: 316
v=0
o=CiscoSystemsSIP-GW-UserAgent 4330 9654 IN IP4 62.33.22.11
s=SIP Call
c=IN IP4 62.33.22.11
t=0 0
m=audio 17088 RTP/AVP 3 18 8 0 4
c=IN IP4 62.33.22.11
a=rtpmap:3 GSM/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=yes
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:4 G723/8000
a=fmtp:4 annexa=yes
Nathelper works right and in the message sent to UA you can see already
IP address of Openser (62.33.22.14) instead of the address of a gateway
(62.33.22.11):
15:37:07.407463 IP 62.33.22.14.5060 > 217.107.59.194.47331: UDP, length
1256
E.....@.@..|>!...k;.......n^INVITE sip:ngul@217.107.59.194:47331 SIP/2.0
Record-Route: <sip:62.33.22.14;lr;ftag=A515D068-227D>
Via: SIP/2.0/UDP voapp.ru:5060;branch=z9hG4bK2d06.d63c8585.0
Via: SIP/2.0/UDP 62.33.22.11:5060;x-route-tag="tgrp:ipphone"
From: <sip:78142764164@62.33.22.11>;tag=A515D068-227D
To: <sip:78142799233@voapp.ru>
Date: Fri, 04 Aug 2006 11:37:07 GMT
Call-ID: 64A759D3-22E411DB-8B0DFF2E-66029374(a)195.161.136.114
Supported: timer,100rel
Min-SE: 1800
Cisco-Guid: 1688609156-585372123-2332753710-1711444852
User-Agent: Cisco-SIPGateway/IOS-12.x
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, COMET, REFER,
SUBSCRIBE, NOTIFY, INFO
CSeq: 101 INVITE
Max-Forwards: 5
Remote-Party-ID:
<sip:78142764164@62.33.22.11>;party=calling;screen=yes;privacy=off
Timestamp: 1154691427
Contact: <sip:78142764164@62.33.22.11:5060>
Expires: 180
Allow-Events: telephone-event
Content-Type: application/sdp
Content-Length: 334
v=0
o=CiscoSystemsSIP-GW-UserAgent 4330 9654 IN IP4 62.33.22.11
s=SIP Call
c=IN IP4 62.33.22.14
t=0 0
m=audio 35858 RTP/AVP 3 18 8 0 4
c=IN IP4 62.33.22.14
a=rtpmap:3 GSM/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=yes
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:4 G723/8000
a=fmtp:4 annexa=yes
a=nortpproxy:yes
After some talking the subscriber from PSTN tries to send a fax.
PSTN gateway detects it and sends this message:
15:37:22.512722 IP 62.33.22.11.51655 > 62.33.22.14.5060: UDP, length
1276
E..........z>!..>!..........INVITE
sip:62.33.22.14:5060;from-tag=A515D068-227D;lr SIP/2.0
Via: SIP/2.0/UDP 62.33.22.11:5060;x-route-tag="tgrp:ipphone"
From: <sip:78142764164@62.33.22.11>;tag=A515D068-227D
To: <sip:78142799233@voapp.ru>;tag=bbaac0e818284ff5
Date: Fri, 04 Aug 2006 11:37:22 GMT
Call-ID: 64A759D3-22E411DB-8B0DFF2E-66029374(a)195.161.136.114
Route: <sip:ngul@217.107.59.194:47331>
Supported: timer,100rel
Min-SE: 1800
Cisco-Guid: 1688609156-585372123-2332753710-1711444852
User-Agent: Cisco-SIPGateway/IOS-12.x
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, COMET, REFER,
SUBSCRIBE, NOTIFY, INFO
CSeq: 102 INVITE
Max-Forwards: 6
Remote-Party-ID:
<sip:78142764164@62.33.22.11>;party=calling;screen=yes;privacy=off
Timestamp: 1154691442
Contact: <sip:78142764164@62.33.22.11:5060>
Expires: 180
Allow-Events: telephone-event
Content-Type: application/sdp
Content-Length: 393
v=0
o=CiscoSystemsSIP-GW-UserAgent 4330 9656 IN IP4 62.33.22.11
s=SIP Call
c=IN IP4 62.33.22.11
t=0 0
m=image 17088 udptl t38
c=IN IP4 62.33.22.11
a=T38FaxVersion:0
a=T38MaxBitRate:14400
a=T38FaxFillBitRemoval:0
a=T38FaxTranscodingMMR:0
a=T38FaxTranscodingJBIG:0
a=T38FaxRateManagement:transferredTCF
a=T38FaxMaxBuffer:200
a=T38FaxMaxDatagram:72
a=T38FaxUdpEC:t38UDPRedundancy
Openser processes is and sends to UA:
15:37:22.513017 IP 62.33.22.14.5060 > 217.107.59.194.47331: UDP, length
1336
E..T..@.@..,>!...k;......(a)n.INVITE sip:ngul@217.107.59.194:47331 SIP/2.0
Record-Route: <sip:62.33.22.14;lr;ftag=A515D068-227D>
Via: SIP/2.0/UDP voapp.ru:5060;branch=z9hG4bKfc06.4b118272.0
Via: SIP/2.0/UDP 62.33.22.11:5060;x-route-tag="tgrp:ipphone"
From: <sip:78142764164@62.33.22.11>;tag=A515D068-227D
To: <sip:78142799233@voapp.ru>;tag=bbaac0e818284ff5
Date: Fri, 04 Aug 2006 11:37:22 GMT
Call-ID: 64A759D3-22E411DB-8B0DFF2E-66029374(a)195.161.136.114
Supported: timer,100rel
Min-SE: 1800
Cisco-Guid: 1688609156-585372123-2332753710-1711444852
User-Agent: Cisco-SIPGateway/IOS-12.x
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, COMET, REFER,
SUBSCRIBE, NOTIFY, INFO
CSeq: 102 INVITE
Max-Forwards: 5
Remote-Party-ID:
<sip:78142764164@62.33.22.11>;party=calling;screen=yes;privacy=off
Timestamp: 1154691442
Contact: <sip:78142764164@62.33.22.11:5060>
Expires: 180
Allow-Events: telephone-event
Content-Type: application/sdp
Content-Length: 393
v=0
o=CiscoSystemsSIP-GW-UserAgent 4330 9656 IN IP4 62.33.22.11
s=SIP Call
c=IN IP4 62.33.22.11
t=0 0
m=image 17088 udptl t38
c=IN IP4 62.33.22.11
a=T38FaxVersion:0
a=T38MaxBitRate:14400
a=T38FaxFillBitRemoval:0
a=T38FaxTranscodingMMR:0
a=T38FaxTranscodingJBIG:0
a=T38FaxRateManagement:transferredTCF
a=T38FaxMaxBuffer:200
a=T38FaxMaxDatagram:72
a=T38FaxUdpEC:t38UDPRedundancy
As you can see the nathelper module has not worked since the field c=IN
IP4 62.33.22.11 has not changed.
Probably it has taken place because m=image instead of m=audio as usual.
As a result of transfer of a fax has not taken place.
If to place UA outside for NAT router all works that once again confirms
that bug is in the nathelper module.
Questions:
Why the module behaves so?
What difference that to proxing (what byte stream and in what format)?
How it can be bypassed?
Also that the most interesting - UA refuses to accept T38 and suggests
to use instead of it G.711 codec and the gateway agrees i.e. in result
we have audio stream.
Dmitry
Hi,
I'm trying to install OpenSER 1.1.0 (rel_1_1_0 checked out from CVS) on
SPARC/Solaris 9.
I'm dutifully following a combination of the wiki instructions:
Install And Maintain OpenSER From CVS
http://www.openser.org/dokuwiki/doku.php?id=install_and_maintain_openser
_from_cvs
and section D) OpenSER with Persistent Data Storage from the Install
page of the main site.
I've installed OpenSER with MySQL / Auth support correctly at each
stage, as far as I can tell, and it is now running (can be seen with "ps
-ef | grep openser").
My first attempt at running "openserctl moni" failed because of line 119
in /usr/local/lib64/openser/openserctl/openserctl.fifo:
attempt=$(($attempt + 1))
So I changed this to to the more Solaris-friendly:
attempt=`expr $attempt + 1`
which seems to work.
However, I'm unable to REGISTER the admin:openserrw user with my eyeBeam
SIP user agent (#401 Unauthorised), and when I try to add a new user I
get the following error:
# openserctl add testuser 1234 test(a)mydomain.org
awk: syntax error near line 1
awk: bailing out near line 1
awk: syntax error near line 1
awk: bailing out near line 1
/usr/local/sbin/openserctl: md5sum: not found
/usr/local/sbin/openserctl: md5sum: not found
awk: syntax error near line 1
awk: bailing out near line 1
awk: syntax error near line 1
awk: bailing out near line 1
awk: syntax error near line 1
awk: bailing out near line 1
awk: syntax error near line 1
awk: bailing out near line 1
/usr/local/sbin/openserctl: md5sum: not found
MySql password for user 'openser@localhost':
ERROR 1062 (23000) at line 1: Duplicate entry '' for key 2
-e \E[37;31mERROR: introducing the new user 'testuser' to the database
failed
I'm running out of ideas, now. Can anyone give me some pointers? Has
anyone compiled from src with Solaris and got this working?
I think this looks like there maybe a MySQL interop issue in openserctl?
Any help appreciated,
Peter.
--
Peter
This Personal email contains my own opinions, sent In
Confidence and does not represent the views of British
Telecommunications plc.
__________________________________________________________________
British Telecommunications plc
Registered office: 81 Newgate Street London EC1A 7AJ
Registered in England no. 1800000
This electronic message contains information from British
Telecommunications plc which may be privileged and
confidential. The information is intended to be for the use of
the individual(s) or entity named above. If you are not the
intended recipient, be aware that any disclosure, copying,
distribution or use of the contents of this information is
prohibited. If you have received this electronic message in
error, please notify us by telephone or email (to the number
or address above) immediately.
Activity and use of the British Telecommunications plc
email system is monitored to secure its effective operation
and for other lawful business purposes. Communications using
this system will also be monitored and may be recorded to
secure effective operation and for other lawful business purposes.
Thank you for your quick answer. I have tried with db_use=0. In this
case it does work but my clients don't show the change of presence. I
think it depends on capability of SIP client too...
-----Original Message-----
From: Daniel-Constantin Mierla [mailto:daniel@voice-system.ro]
Sent: Monday, August 14, 2006 4:29 PM
To: Pletli Antal
Cc: users(a)openser.org
Subject: Re: [Users] Handle_subscription crashes openser
Hello,
On 08/14/06 14:01, Pletli Antal wrote:
> Hi,
>
> I use the latest openser from cvs with presence support with pa
module.
> I have experienced that the SUBSCRIBE message of the new x-lite (based
> on eyeBeam) crashes the proxy in handle_subscription('registra
> <<crash.txt>> r') function.
>
> It is a known problem in openser or it is a X-Lite bug?
>
might be a problem of OpenSER. The presence support is being refurbished
completely. Expect new code to be uploaded in the future, as we get the
basics working. The old pa module is deprecated, none in working on it.
Now we are following the latest specifications in this area with the new
development, specifications which are quite heavy.
Best regards,
Daniel
> Best regards,
>
> Antal Pletli
>
>
> ----------------------------------------------------------------------
> --
>
> Aug 14 11:13:28 ship1 openser[32283]: Maxfwd module- initializing Aug
> 14 11:13:28 ship1 openser[32283]: Parsed mimetype text/xml+msrtcp.pidf
> got 100ff expected 1000c Aug 14 11:13:28 ship1 openser[32283]:
> db_url=0x9c870d0 Aug 14 11:13:28 ship1 openser[32283]:
> db_url=mysql://openser:openserrw@localhost/openser
> Aug 14 11:13:28 ship1 openser[32283]: db_url.len=43 Aug 14 11:13:28
> ship1 openser[32283]: pa_mod: use_db=1
> db_url.s=mysql://openser:openserrw@localhost/openser
> Aug 14 11:13:28 ship1 openser[32283]: pa_mod_init done Aug 14 11:13:28
> ship1 openser[32283]: subscribe_fixup: pdomain name is registrar Aug
> 14 11:13:28 ship1 openser[32283]: subscribe_fixup: pdomain name is
> registrar Aug 14 11:13:30 ship1 openser[32299]: DEBUG - MSILO: offline
> messages dumped - if they were Aug 14 11:13:30 ship1 openser[32290]:
> handle_subscription() entered Aug 14 11:13:30 ship1 openser[32290]:
> check_message -0- _m=0x8130408 Aug 14 11:13:30 ship1 openser[32290]:
> check_message -1- Aug 14 11:13:30 ship1 openser[32290]: check_message
> -2- accepts_mimes=(nil) Aug 14 11:13:30 ship1 openser[32290]:
> check_message -3- Aug 14 11:13:30 ship1 openser[32290]: check_message
> -4- parsed_event=0x81241d0 Aug 14 11:13:30 ship1 openser[32290]:
> check_message -5- Aug 14 11:13:30 ship1 openser[32290]: get_pres_uri:
> _puri=sip:700046@xxx.xxx.xxx.xxx Aug 14 11:13:30 ship1 openser[32290]:
> handle_subscription(): -1- Aug 14 11:13:30 ship1 openser[32296]:
> handle_subscription() entered Aug 14 11:13:30 ship1 openser[32296]:
> parsing accept header Aug 14 11:13:30 ship1 openser[32296]:
> check_message -0- _m=0x8130408 Aug 14 11:13:30 ship1 openser[32296]:
> check_message -1- Aug 14 11:13:30 ship1 openser[32290]:
> new_presentity_no_wb=0xbd6851c0 for uri=700053(a)xxx.xxx.xxx.xxx Aug 14
> 11:13:30 ship1 openser[32296]: pa check_message:
> accept=application/watcherinfo+xml parsed=:0x3000a Aug 14 11:13:30
> ship1 openser[32290]: add_presentity _p=0xbd6851c0
> p_uri=700053(a)xxx.xxx.xxx.xxx Aug 14 11:13:30 ship1 openser[32296]:
> check_message -2- accepts_mimes=0x8123cb8 Aug 14 11:13:30 ship1
> openser[32290]: new_presentity_no_wb=0xbd685218 for
> uri=700053-list(a)xxx.xxx.xxx.xxx Aug 14 11:13:30 ship1 openser[32296]:
> check_message -3- Aug 14 11:13:30 ship1 openser[32290]: add_presentity
> _p=0xbd685218 p_uri=700053-list(a)xxx.xxx.xxx.xxx Aug 14 11:13:30 ship1
> openser[32296]: check_message -4- parsed_event=0x8123c88 Aug 14
> 11:13:30 ship1 openser[32290]: new_presentity_no_wb=0xbd685270 for
> uri=700046(a)xxx.xxx.xxx.xxx Aug 14 11:13:30 ship1 openser[32296]:
> check_message -4- eventtype=0x0002 Aug 14 11:13:30 ship1
> openser[32290]: add_presentity _p=0xbd685270
> p_uri=700046(a)xxx.xxx.xxx.xxx Aug 14 11:13:30 ship1 openser[32296]:
> check_message -4a- eventtype=0x2 epm[i].event_type=0x1 Aug 14 11:13:30
> ship1 openser[32290]: new_presentity_no_wb=0xbd685310 for
> uri=700046(a)xxx.xxx.xxx.xxx Aug 14 11:13:30 ship1 openser[32296]:
> check_message -4a- eventtype=0x2 epm[i].event_type=0x2 Aug 14 11:13:30
> ship1 openser[32290]: add_presentity _p=0xbd685310
> p_uri=700046(a)xxx.xxx.xxx.xxx Aug 14 11:13:30 ship1 openser[32296]:
check_message -4c- eventtype=0x2 mimetype=0x3000a
accepts_mimes[k]=0x3000a Aug 14 11:13:30 ship1 openser[32290]:
new_presentity_no_wb=0xbd685368 for uri=700053(a)xxx.xxx.xxx.xxx Aug 14
11:13:30 ship1 openser[32296]: check_message -4b- eventtype=0x2
accepts_mime=0x3000a Aug 14 11:13:30 ship1 openser[32290]:
add_presentity _p=0xbd685368 p_uri=700053(a)xxx.xxx.xxx.xxx Aug 14
11:13:30 ship1 openser[32296]: get_pres_uri:
_puri=sip:700046@xxx.xxx.xxx.xxx Aug 14 11:13:30 ship1 openser[32290]:
new_presentity_no_wb=0xbd6853c0 for uri=700053-list(a)xxx.xxx.xxx.xxx Aug
14 11:13:30 ship1 openser[32290]: add_presentity _p=0xbd6853c0
p_uri=700053-list(a)xxx.xxx.xxx.xxx Aug 14 11:13:30 ship1 openser[32290]:
db_read_watcherinfo: _p->uri='700053(a)xxx.xxx.xxx.xxx'
> Aug 14 11:13:30 ship1 openser[32290]: db_read_watcherinfo:
> _p->uri='700053(a)xxx.xxx.xxx.xxx' done Aug 14 11:13:30 ship1
openser[32290]: db_read_watcherinfo:
_p->uri='700053-list(a)xxx.xxx.xxx.xxx'
> Aug 14 11:13:30 ship1 openser[32290]: db_read_watcherinfo:
> _p->uri='700053-list(a)xxx.xxx.xxx.xxx' done Aug 14 11:13:30 ship1
openser[32290]: db_read_watcherinfo: _p->uri='700046(a)xxx.xxx.xxx.xxx'
> Aug 14 11:13:30 ship1 openser[32290]: db_read_watcherinfo:
> _p->uri='700046(a)xxx.xxx.xxx.xxx' done Aug 14 11:13:30 ship1
openser[32290]: db_read_watcherinfo: _p->uri='700046(a)xxx.xxx.xxx.xxx'
> Aug 14 11:13:30 ship1 openser[32290]: db_read_watcherinfo:
> _p->uri='700046(a)xxx.xxx.xxx.xxx' done Aug 14 11:13:30 ship1
openser[32290]: db_read_watcherinfo: _p->uri='700053(a)xxx.xxx.xxx.xxx'
> Aug 14 11:13:30 ship1 openser[32290]: db_read_watcherinfo:
> _p->uri='700053(a)xxx.xxx.xxx.xxx' done Aug 14 11:13:30 ship1
openser[32290]: db_read_watcherinfo:
_p->uri='700053-list(a)xxx.xxx.xxx.xxx'
> Aug 14 11:13:30 ship1 openser[32290]: db_read_watcherinfo:
> _p->uri='700053-list(a)xxx.xxx.xxx.xxx' done Aug 14 11:13:30 ship1
> openser[32290]: handle_subscription(): -3- Aug 14 11:13:30 ship1
> openser[32290]: new_watcher starting Aug 14 11:13:30 ship1
> openser[32290]: new_watcher: _p->uri=700046(a)xxx.xxx.xxx.xxx Aug 14
> 11:13:30 ship1 openser[32290]: db_new_watcher:
> watcher->uri=700046(a)xxx.xxx.xxx.xxx
> Aug 14 11:13:30 ship1 openser[32290]: new_watcher:
> watcher->package=unknown Aug 14 11:13:31 ship1 openser[32317]: ERROR:
> receive_fd: EOF on 10 Aug 14 11:14:31 ship1 openser[32283]: BUG:
shutdown timeout triggered, dying...
>
>
>
> ----------------------------------------------------------------------
> --
>
> _______________________________________________
> Users mailing list
> Users(a)openser.org
> http://openser.org/cgi-bin/mailman/listinfo/users
>
Hi,
I use the latest openser from cvs with presence support with pa module.
I have experienced that the SUBSCRIBE message of the new x-lite (based
on eyeBeam) crashes the proxy in handle_subscription('registra
<<crash.txt>> r') function.
It is a known problem in openser or it is a X-Lite bug?
Best regards,
Antal Pletli
Hi
iam trying to integrate with SER and Media proxy for my NAt users
Till now i have tested with all Public IP
but my new requirement come with NAT users so install Media Server
and when i start run this is the error i see in my messages..
iam running SER with Mysql Support.
Aug 14 14:07:22 asterisk1 mediaproxy[4725]: warning: accounting is enabled
but the accounting module is missing. accounting is not available!
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]: Traceback (most recent call
last):
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]: File
"/usr/local/mediaproxy/proxydispatcher.py", line 65, in ?
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]:
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]: import dispatcher
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]: File
"/usr/local/mediaproxy/modules/dispatcher.py", line 39, in ?
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]:
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]: from accounting import
accounting, StopRecordSerializer, UnserializeError
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]: File
"/usr/local/mediaproxy/modules/accounting.py", line 14, in ?
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]:
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]: from mysql import *
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]: File
"/usr/local/mediaproxy/modules/mysql.py", line 8, in ?
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]:
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]: import MySQLdb
Aug 14 14:07:22 asterisk1 mediaproxy[4725]: Listening for commands on local
socket `/var/run/mediaproxy.sock'
Aug 14 14:07:22 asterisk1 proxydispatcher[4728]: ImportError
Aug 14 14:07:22 asterisk1 mediaproxy[4725]: Listening for remote commands is
disabled
Ram
Hi, all!
I am currently involved in a research work which aims at optimizing the SIP stack, and we chose SER -0.9.6 as our researching platform. we need to profile SER to find out which part(parser? network? transactions? ) consumes the most CPU cycles. However, tools like gprof and Intel Vtune's sampling tool can not show any information about the functions in dynamically loaded modules, such as tm, registrar. So, a possible solution seems to build in these modules into the core statically.
I tried to do what the INSTALL doc says, compling with the following command:"make static_modules=tm PROFILE=-pg all", the final part of the result shows:
......
make[1]:***[callid.o] Error 1
make[1]: Leaving directory '/....../SER/ser-0.9.6/modules/tm'
gcc -Wl,-02 -Wl, -E -pg action.o crc.o .....modules/tm/dlg.o, modules/tm/h_table.o .....modules/tm/uac_unixsock.o -
gcc: modules/tm/callid.o:No such file or directory
gcc: modules/tm/h_table.o:No such file or directory
...
gcc: modules/tm/uac_unixsock.o:No such file or directory
make: **[ser] Error 1
And if I proceed to type: make install
the result shows:
sr_module.o(.text+0xbc): In function 'register_builtin_modules':
/.../ser-0.9.6/sr_module.c:89: undefined reference to 'tm_exports'
collect2:ld returned 1 exit status
make: ***[ser] Error 1
I am working with SER 0.9.6
And the linux kernel used in my machine is:
Linux 2.6.9-22.ELsmp
the OS used is Redhat 9
if anyone has tried the same thing or knows the solution, please let me know.Thanks very very much!
Jacqueline Zou
which version of ser are you using? which version of serctl are you using?
whats the output of 'serctl fifo which'? Could you set the "-x" option for
serctl so that we see where serctl failed?
Thanks
-jiri
At 14:24 01/08/2006, Josel Layno wrote:
>Hi guys,
>
>I got my SER running "so far" and i trying to explore some commands using serctl.
>Using serctl moni gives me error ...
>
> [: -ne: unexpected operator
>
>and using serctl domain show gives me...
>
> $ serctl domain show
> 500 command 'domain_dump' not available
>
>Is this all crucial on my server? Did i missed something?
>I appreciate any kind of assistance...:)
>
>regards,
>
>josel
>_______________________________________________
>Serusers mailing list
>Serusers(a)lists.iptel.org
>http://lists.iptel.org/mailman/listinfo/serusers
--
Jiri Kuthan http://iptel.org/~jiri/
Thank you for your kind help. However,my problem is to profile the shared libraries rather than to profile forking processes. gprof can not generate any information about these shared libraries, and i also seems problem when using sprof, which is said to be able to offer profiling statistics about dynamic loaded libraries.
So, I think another way is to build these modules statically, but don't know how to. So can anyone help me with that? thanks for your time!
Jacqueline Zou
======== 2006-08-11 14:56:12 您在来信中写道: ========
Your post belongs to serdev. Here is a serdev post from Hendrik Scholz some time back.
g-)
Hi!
I'm about to profile our SER installation and since profiling
doesn't run out of the box here's a rough guide:
- you'll need to build SER from sources, thus get sources,
apply your patches and so on
- before compilation get this patch (for CVS HEAD):
http://dump.wormulon.net/patches/ser-profiling.diff
Call
$ patch -p0 < ser-profiling.diff
from the SER base directory.
What it does it invoking monstartup() in each child process
since the profiling information get lost when fork()ing.
I added all childs including timer and fifoserver. If you are
only interested in certain worker processes you can cut down
the resource impact by selectively activating profiling.
- enable profiling in Makefile.defs
- Set both -DPROFILING and PROFILE=-pg
- compile and deploy as usual
- Before starting SER using your standard init script you need
to set an environment variable that acts as a prefix to all
profiling data files. If you don't set it you'll only get one
file for the main process.
# export GMON_OUT_PREFIX=testrun
The gmon files will be named testrun.<PID> with the PID matching
$ serctl fifo ps
SER may change the current working directory and drop
privileges on the way therefore I suggest you invoke the init
script from the SER working directory (-w option) so you'll
end up with all files in one place.
- Run SER for a while.
Not all gmon files will show up immediately, though.
- You should now be able to get per-process statistics using
$ gprof /usr/sbin/ser testrun.<PID>
- If cummulative statistics are what you are looking for use
$ gprof -s /usr/sbin/ser testrun.*
to create a new gmon.out which contains statistics over all
processes.
I have yet to fully analyze the results.
Cheers (and YMMV),
Hendrik
--
freenet Cityline GmbH, Hamburger Chaussee 2-4, 24114 Kiel, Germany
Phone: +49 (0)431 9020552, Fax: +49 (0)431 9020559
Internet: http://www.freenet.de, eMail: hendrik.scholz(a)freenet-ag.de
_______________________________________________
Serdev mailing list
Serdev(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serdev
邹嘉 wrote:
Hi, all!
I am currently involved in a research work which aims at optimizing the SIP stack, and we chose SER -0.9.6 as our researching platform. we need to profile SER to find out which part(parser? network? transactions? ) consumes the most CPU cycles. However, tools like gprof and Intel Vtune's sampling tool can not show any information about the functions in dynamically loaded modules, such as tm, registrar. So, a possible solution seems to build in these modules into the core statically.
I tried to do what the INSTALL doc says, compling with the following command:"make static_modules=tm PROFILE=-pg all", the final part of the result shows:
......
make[1]:***[callid.o] Error 1
make[1]: Leaving directory '/....../SER/ser-0.9.6/modules/tm'
gcc -Wl,-02 -Wl, -E -pg action.o crc.o .....modules/tm/dlg.o, modules/tm/h_table.o .....modules/tm/uac_unixsock.o -
gcc: modules/tm/callid.o:No such file or directory
gcc: modules/tm/h_table.o:No such file or directory
...
gcc: modules/tm/uac_unixsock.o:No such file or directory
make: **[ser] Error 1
And if I proceed to type: make install
the result shows:
sr_module.o(.text+0xbc): In function 'register_builtin_modules':
/.../ser-0.9.6/sr_module.c:89: undefined reference to 'tm_exports'
collect2:ld returned 1 exit status
make: ***[ser] Error 1
I am working with SER 0.9.6
And the linux kernel used in my machine is:
Linux 2.6.9-22.ELsmp
the OS used is Redhat 9
if anyone has tried the same thing or knows the solution, please let me know.Thanks very very much!
Jacqueline Zou
_______________________________________________
Serusers mailing list
Serusers(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers
= = = = = = = = = = = = = = = = = = = = = =
致
礼!
Jia Zou
zouj03(a)mails.tsinghua.edu.cn
2006-08-12
Hei,
I wonder if someone could comment on this:
I have several cisco gateways distributed all over and are using the lcr
module for this.
Is it possible to combine both load_contacts/next_contact and
load_gw/next_gw
(I have softphones also registered with the same numbers that are behind
the gateways.....)
Would it be interesting to have regexp in prefix matching aswell?
ex: 4675[1-2] ?
br hw
Hey all,
Can anyone post any example config with successful use of load_gws()
and next_gw() .
I am trying to set it up for my system here but don't know what I am
missing.Also if possible how do you log the loaded load_gws() and
next_gw() in your logs.
Thanks,
-Sharon