Problem with RTP sockets stuck "CLOSE_WAIT"

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

 



I'm running GNUGK 2.2.1  in full proxy mode and
I'm getting lots of sockets stuck in the close mode,
waiting for the last packet or two to be read.

I'm running CentOS3 with Dual Opterons, 4 GB of ram total.
Hopefully, someone can identify the problem and a solution.
As a side effect, memory utilization goes up since the threads
still have cleanup left to do - hopefully.

I peaked today at 127 calls and had a total of 306 sockets at that time.
When my traffic drops to just a few calls, there are about 70 sockets left
stuck.

They seem to eventually get cleaned up, there's no way to tell the age of
the
"CLOSE_WAIT" sockets.

I've included gnugk.ini portions, netstat -an output, and level 5 log snipet
of
release complete - no further processing occurs beyond this for a given
call.

I re-started the gnugk yesterday, to get a clean start for last night.

Thanks for any help!
Steve Miskowitz
Planet Telecom



Here are portions of the .ini file

[RoutedMode]
GKRouted=1
H245Routed=1
CallSignalPort=1720
RtpHandlerNumber=10
CallSignalHandlerNumber=100
RemoveH245AddressOnTunneling=1
AcceptNeighborsCalls=1
AcceptUnregisteredCalls=1
SupportNATedEndpoints=1
DropCallsByReleaseComplete=1
SendReleaseCompleteOnDRQ=1
RemoveCallOnDRQ=0

[Proxy]
Enable=1
T120PortRange=40000-40999
RTPPortRange=50000-59999

[RoutingPolicy]
Default=internal,neighbor

[RasSrv::LRQFeatures]
IncludeDestinationInfoInLCF=1
CiscoGKCompatible=1
ForwardHopCount=3
AcceptForwardedLRQ=1
ForwardResponse=1

[RasSrv::Neighbors]
GK2=myneighbor

[Neighbor::GK2]
 GatekeeperIdentifier=myneighbor
 Host=xx.xx.xx.yyy
 SendPrefixes=*
 AcceptPrefixes=*
 ForwardLRQ=always

 Here are just a few lines of OUTPUT from netstat -an | grep 1720 command,
 I have currently 63 sockets in this state.

Proto	Recv-Q Send-Q Local Address  Foreign Address   State
                    (IP addr's removed)
tcp      249      0 w.x.y.z:54026        a.b.c.d:1720         CLOSE_WAIT
tcp       51      0 :54028        :1720         CLOSE_WAIT
tcp       51      0 :53921        :1720         CLOSE_WAIT
tcp      249      0 :54004        :1720         CLOSE_WAIT
tcp       51      0 :54012        :1720         CLOSE_WAIT
tcp      249      0 :53981        :1720         CLOSE_WAIT
tcp      249      0 :53988        :1720         CLOSE_WAIT
tcp       51      0 :53989        :1720         CLOSE_WAIT
tcp       51      0 :53992        :1720         CLOSE_WAIT
tcp      249      0 :54007        :1720         CLOSE_WAIT
tcp      249      0 :53998        :1720         CLOSE_WAIT
tcp       51      0 :53996        :1720         CLOSE_WAIT
tcp       51      0 :53968        :1720         CLOSE_WAIT
tcp       51      0 :53972        :1720         CLOSE_WAIT

Here is the release complete processing from a level 5 log

2005/05/10 19:45:52.822	5	    yasocket.cxx(699)	ProxyRTP(0) 1 sockets
selected from 20, total 20/0
2005/05/10 19:45:52.822	5	    yasocket.cxx(699)	ProxyH(82) 1 sockets
selected from 2, total 2/0
2005/05/10 19:45:52.822	5	ProxyChannel.cxx(485)	Q931s	Reading from
myIPADDR:1581
2005/05/10 19:45:52.822	3	ProxyChannel.cxx(722)	Q931s	Received:
ReleaseComplete CRV=22973 from myIPADDR:1581
2005/05/10 19:45:52.822	4	ProxyChannel.cxx(669)	Q931	Received: {
  q931pdu = {
    protocolDiscriminator = 8
    callReference = 22973
    from = originator
    messageType = ReleaseComplete
    IE: Cause - Normal call clearing = {
      80 90                                              ..
    }
    IE: User-User = {
      25 c0 06 00 08 91 4a 00  04 18 88 00 11 00 08 38   %.....J........8
      28 e1 5b be 11 cc 8a e5  af 7b 06 7c 2d b5 10 a0   (.[......{.|-...
      01 80 3a 01 40 b5 00 00  12 33 60 01 03 00 01 08   ..:.@....3`.....
      2c 08 02 80 90 1c 26 9e  81 00 03 67 74 64 00 00   ,.....&....gtd..
      00 1b 52 45 4c 2c 0d 0a  50 52 4e 2c 69 73 64 6e   ..REL,..PRN,isdn
      2a 2c 2c 41 54 54 34 2a  2c 0d 0a 0d 0a            *,,ATT4*,....
    }
  }
  h225pdu = {
    h323_uu_pdu = {
      h323_message_body = releaseComplete {
        protocolIdentifier = 0.0.8.2250.0.4
        reason = destinationRejection <<null>>
        callIdentifier = {
          guid =  16 octets {
            08 38 28 e1 5b be 11 cc  8a e5 af 7b 06 7c 2d b5
.8(.[......{.|-.
          }
        }
      }
      h245Tunneling = TRUE
      nonStandardControl = 1 entries {
        [0]={
          nonStandardIdentifier = h221NonStandard {
            t35CountryCode = 181
            t35Extension = 0
            manufacturerCode = 18
          }
          data =  51 octets {
            60 01 03 00 01 08 2c 08  02 80 90 1c 26 9e 81 00
`.....,.....&...
            03 67 74 64 00 00 00 1b  52 45 4c 2c 0d 0a 50 52
.gtd....REL,..PR
            4e 2c 69 73 64 6e 2a 2c  2c 41 54 54 34 2a 2c 0d
N,isdn*,,ATT4*,.
            0a 0d 0a                                           ...
          }
        }
      }
    }
  }
}
2005/05/10 19:45:52.822	1	      RasTbl.cxx(2136)	CDR|<data deleted>;

2005/05/10 19:45:52.822	2	      gkacct.cxx(958)	GKACCT	Successfully logged
event 2 for call no. 9380
2005/05/10 19:45:52.922	3	    yasocket.cxx(758)	ProxyH(82) waiting...



This email was scanned by:  Mcafee GroupShield


-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click
_______________________________________________________

Posting: mailto:Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
Archive: http://sourceforge.net/mailarchive/forum.php?forum_id=8549
Unsubscribe: http://lists.sourceforge.net/lists/listinfo/openh323gk-users
Homepage: http://www.gnugk.org/

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

  Powered by Linux