Re: Can not connect over 123 call in proxy mode

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Yokoo,

GnuGk should be able to handle way more than concurrent 123 calls when
given enough resources. There is no built-in limit to the number of
calls. And even when it runs out of file descriptors it shouldn't
crash (just give an error message as in your first trace snippet).

I would suggest to look at the stacktrace where in the code it crashed.

Regards,
Jan

-- 
Jan Willamowius, Founder of the GNU Gatekeeper Project
EMail  : jan@xxxxxxxxxxxxxx
Website: https://www.gnugk.org
Support: https://www.willamowius.com/gnugk-support.html

Relaxed Communications GmbH
Frahmredder 91, 22393 Hamburg, Germany
Geschäftsführer: Jan Willamowius
HRB 125261 (Amtsgericht Hamburg)
USt-IdNr: DE286003584


Tomoyuki Yokoo wrote:
> Hi, I am testing GnuGK in proxy mode and can only connect to 123calls.
> 
> If try to connect beyond 123calls, the following log appeared.
> ------------
> 2018/12/04 13:01:08.490 3       ProxyChannel.cxx(2164)  Q931s   Received: Setup CRV=5924 from 192.168.1.30:49845
> 2018/12/04 13:01:08.490 3             gkauth.cxx(992)   GKAUTH  default Setup check ok
> 2018/12/04 13:01:08.490 2             gkacct.cxx(968)   GKACCT  Successfully logged event 1 for call no. 132
> 2018/12/04 13:01:08.491 3       ProxyChannel.cxx(5760)  Q931s   Call 132 is NAT type 0
> 2018/12/04 13:01:08.491 3       ProxyChannel.cxx(1936)  GK      Call 132 proxy enabled. (mode selection or vendor mode)
> 2018/12/04 13:01:08.491 1       ProxyChannel.cxx(1946)  Call 132: h245Routed=1 proxy=1
> 2018/12/04 13:01:08.491 3       ProxyChannel.cxx(1984)  GK      Call 132 proxy enabled
> 2018/12/04 13:01:08.492 1       ProxyChannel.cxx(9053)  Q931d   Could not open/connect Q.931 socket at 10.250.0.2:0 - error 7/24: Cannot allocate memory remote addr: 10.250.0.10
> 2018/12/04 13:01:08.492 3       ProxyChannel.cxx(8469)  Q931    10.250.0.10:1720 DIDN''T ACCEPT THE CALL
> 2018/12/04 13:01:08.492 2             RasTbl.cxx(5750)  CDR     ignore not connected call
> 2018/12/04 13:01:08.492 3             gkacct.cxx(932)   GKACCT  FileAcct logged event 2 for call no. 132
> 2018/12/04 13:01:08.493 2             gkacct.cxx(968)   GKACCT  Successfully logged event 2 for call no. 132
> 2018/12/04 13:01:08.493 3           yasocket.cxx(831)   Q931d   Delete socket 10.250.0.10:1720
> 2018/12/04 13:01:08.493 3           yasocket.cxx(831)   Q931s   Delete socket 192.168.1.30:49845
> ------------
> 
> I seemed to have problems with memory allocation, so I confirmed ulimits.
> ------------
> [root@localhost 1839]# cat limits
> Limit                     Soft Limit           Hard Limit           Units
> Max cpu time              unlimited            unlimited            seconds
> Max file size             unlimited            unlimited            bytes
> Max data size             unlimited            unlimited            bytes
> Max stack size            8388608              unlimited            bytes
> Max core file size        0                    unlimited            bytes
> Max resident set          unlimited            unlimited            bytes
> Max processes             15065                15065                processes
> Max open files            1024                 4096                 files
> Max locked memory         65536                65536                bytes
> Max address space         unlimited            unlimited            bytes
> Max file locks            unlimited            unlimited            locks
> Max pending signals       15065                15065                signals
> Max msgqueue size         819200               819200               bytes
> Max nice priority         0                    0
> Max realtime priority     100                  100
> Max realtime timeout      unlimited            unlimited            us
> ------------
> 
> Changed the setting of systemd as follows.
> ------------
> [root@localhost ~]# grep "open files" /proc/`pidof gnugk`/limits
> Max open files            20480                20480                files
> ------------
> 
> No problem until 123 calls but tried to connect 124 calls, got the following state.
> ------------
> [root@localhost ~]# systemctl status gnugk
> ● gnugk.service - GNU Gatekeeper
>     Loaded: loaded (/etc/systemd/system/gnugk.service; enabled; vendor preset: disabled)
>    Drop-In: /etc/systemd/system/gnugk.service.d
>             mqlimit.conf
>     Active: failed (Result: signal) since Thu 2018-12-06 09:35:51 JST; 5min ago
>    Process: 1537 ExecStart=/root/gnugk-5.0/obj_linux_x86_64_s/gnugk -c /etc/gatekeeper.ini -o /var/log/gnugk.log -ttt (code=killed, signal=ABRT)
>   Main PID: 1537 (code=killed, signal=ABRT)
> 
> Dec 06 09:35:51 localhost.localdomain gnugk[1537]: 7f62dce40000-7f62dce43000 rw-p 00000000 00:00 0
> Dec 06 09:35:51 localhost.localdomain gnugk[1537]: 7f62dce43000-7f62dce44000 r--p 00021000 fd:00 31985                      /usr/lib64/ld-2.17.so
> Dec 06 09:35:51 localhost.localdomain gnugk[1537]: 7f62dce44000-7f62dce45000 rw-p 00022000 fd:00 31985                      /usr/lib64/ld-2.17.so
> Dec 06 09:35:51 localhost.localdomain gnugk[1537]: 7f62dce45000-7f62dce46000 rw-p 00000000 00:00 0
> Dec 06 09:35:51 localhost.localdomain gnugk[1537]: 7ffde7cee000-7ffde7d0f000 rw-p 00000000 00:00 0                          [stack]
> Dec 06 09:35:51 localhost.localdomain gnugk[1537]: 7ffde7d54000-7ffde7d56000 r-xp 00000000 00:00 0                          [vdso]
> Dec 06 09:35:51 localhost.localdomain gnugk[1537]: ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
> Dec 06 09:35:51 localhost.localdomain systemd[1]: gnugk.service: main process exited, code=killed, status=6/ABRT
> Dec 06 09:35:51 localhost.localdomain systemd[1]: Unit gnugk.service entered failed state.
> Dec 06 09:35:51 localhost.localdomain systemd[1]: gnugk.service failed.
> ------------
> 
> The result was the same when "Max open file" was set to "1025".
> 
> OS and GnuGK version is below.
> ------------
> OS: CentOS 7.5.1804
> 
> GnuGK Version:
> Gatekeeper(GNU) Version(5.0.0) Ext(amqp=0,curl=0,crypto/ssl=1,firebird=0,geoip=0,h235media=1,h46017=1,h46018=1,h46023=1,h46026=1,ipv6=1,large_fdset=16384,ldap=0,lua=0,mysql=0,odbc=0,pgsql=0,pthreads=1,radius=1,snmp=1,ssh=0,sqlite=0) H323Plus(1.27.1) PTLib(2.10.9) Build(Sep  4 2018, 11:03:40) Sys(Linux x86_64 3.10.0-862.11.6.el7.x86_64)
> Startup: Thu, 06 Dec 2018 16:59:09 +09:00   Running: 3 days 17:26:12
> ------------
> 
> Config(gatekeeper.ini) is below.
> ------------
> [Gatekeeper::Main]
> Fourtytwo=42
> Name=GnuGK5_CentOS7
> Home=192.168.1.2,10.250.0.2,127.0.0.1
> ;TimeToLive=60
> TimeToLive=-1
> UseBroadcastListener=0
> EndpointIDSuffix=_GnuGK5_CentOS7
> TimestampFormat=MySQL
> DisconnectCallsOnShutdown=0
> TraceLevel=3
> 
> [RoutedMode]
> GKRouted=1
> H245Routed=0
> CallSignalPort=1720
> CallSignalHandlerNumber=2
> AcceptNeighborsCalls=1
> AcceptUnregisteredCalls=1
> ActivateFailover=1
> RemoveH245AddressOnTunneling=0
> RemoveCallOnDRQ=0
> DropCallsByReleaseComplete=1
> SendReleaseCompleteOnDRQ=1
> SupportNATedEndpoints=0
> ForwardOnFacility=0
> TcpKeepAlive=0
> ;Q931PortRange=20000-20999
> ;H245PortRange=30000-30999
> 	
> [Proxy]
> Enable=1
> RTPPortRange=50000-59999
> InternalNetwork=192.168.1.0/24,10.250.0.0/24
> 
> [RasSrv::GWPrefixes]
> 
> [RasSrv::RRQFeatures]
> 
> [RasSrv::ARQFeatures]
> ArjReasonRouteCallToGatekeeper=1
> RemoveTrailingChar=#
> RoundRobinGateways=1
> 
> [RoutingPolicy]
> default=explicit,internal,parent,neighbor
> 
> [RasSrv::RRQAuth]
> default=confirm
> 
> [GkStatus::Auth]
> rule=password
> Shutdown=forbid
> DelayReject=1
> nttbiz=fuqGM6TMiSo=
> 
> [RasSrv::RewriteE164]
> 
> [RasSrv::Neighbors]
> 
> [RasSrv::LRQFeatures]
> AcceptNonNeighborLRQ=1	
> 
> [RasSrv::PermanentEndpoints]
> 
> [Gatekeeper::Auth]
> default=allow
> FileIPAuth=required;RRQ,LRQ,Setup
> 
> [FileIPAuth]
> 
> [Routing::Explicit]
> 
> [CallTable]
> 
> [NATedEndpoints]
> 
> [Gatekeeper::Acct]
> FileAcct=sufficient;stop
> 
> [FileAcct]
> DetailFile=/var/log/test_cdr.log
> StandardCDRFormat=0
> CDRString=%g,%d,%r,%u,%{connect-time},%{disconnect-time},%{caller-ip},%{callee-ip},%{src-i
> nfo},%{dest-info},%{Dialed-Number}
> TimestampFormat=MySQL
> ------------
> 
> Please advise if there is any problem in setting GnuGK or OS.
> Or is there a limit on the number of connections in proxy mode?
> 
> Thank you in advance for your help.
> 
> Kind regards,
> Yokoo

_______________________________________________________

Posting: mailto:gnugk-users@xxxxxxxxxxxxxxx
Archive: https://lists.gnugk.org/pipermail/gnugk-users/
Unsubscribe: https://lists.gnugk.org/lists/listinfo/gnugk-users
Homepage: https://www.gnugk.org/




[Index of Archives]     [SIP]     [Open H.323]     [Gnu Gatekeeper]     [Asterisk PBX]     [ISDN Cause Codes]     [Yosemite News]

  Powered by Linux