Re: [Patch] To add timeouts to SMPP connections

Alexander Malysh <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Organization Centrium GmbH
Message-ID <[email protected]>
Hi Alan,

On Monday 18 August 2003 23:22, Alan McNatty wrote:
> Hi Alexander,
>
> I prefer Alex's patch as it conforms more closely to spec I believe.

sorry but Alex's patch is not closely conforms to spec. Please read smpp v3.4. 
issue 1.2 page 165.
Quote:
	inactivity_timer - This timer specifies the maximum time lapse allowed 
between _transactions_ , after which period of inactivity, an SMPP entity may 
assume that the session is no longer active.

Transactions doesn't mean enquire_link. I seen already some of SMSC's that 
doesn't undestand/reply to enquire_link. So this patch will just not work as 
expected. My patch doesn't depend on enquire_link and notice every 
transaction as proposed in smpp spec.

Comments please...

>
> Alex I have added a couple of bits to your patch (cfg.def and
> docs/userguide.xml). Please double check this and vote.
> Cheers,
>
> Alan
>
> On Tue, 2003-08-19 at 05:10, Alexander Malysh wrote:
> > Hi Alex,
> >
> > sorry for the long delay...
> >
> > I have another patch here, that I would like to commit if nobody has any
> > ojections... Please try it, it works very well on our production systems
> > since 6 months or so...
> >
> > On Monday 18 August 2003 17:29, Alex Judd wrote:
> > > How about a quick code review and a commit of this?
> > >
> > > Not to say that discussing the email list isn't important but ...
> > >
> > > :)
> > >
> > > Alex
> > >
> > > ----- Original Message -----
> > > From: "Alex Judd" <[email protected]>
> > > To: "Alex Judd" <[email protected]>; "Aaron Brady"
> > > <[email protected]>; <[email protected]>
> > > Sent: Friday, August 15, 2003 2:54 PM
> > > Subject: [Patch] To add timeouts to SMPP connections
> > >
> > > > I've reworked Aaron's patch to be a bit more Kannel standard and
> > > > allowed
> > >
> > > for
> > >
> > > > definition of enquire-link-retry externally to the code and a
> > > > standard
> > >
> > > value
> > >
> > > > of 10 per suggestions.
> > > >
> > > > It's working for me here but would be good for one of the team to
> > > > once
> > >
> > > over.
> > >
> > > > Alex
> > > > Skywire
> > > >
> > > > ----- Original Message -----
> > > > From: "Alex Judd" <[email protected]>
> > > > To: "Aaron Brady" <[email protected]>; <[email protected]>
> > > > Sent: Friday, August 08, 2003 10:43 AM
> > > > Subject: Re: Patch: To add timeouts to SMPP connections
> > > >
> > > > > Aaron
> > > > >
> > > > > Seeing as I picked this up in the first place, how about I rework
> > > > > your
> > > >
> > > > patch
> > > >
> > > > > to be a bit more flexible and submit it back for testing.
> > > > >
> > > > > This way we get the best of both worlds?
> > > > >
> > > > > Alex
> > > > >
> > > > > ----- Original Message -----
> > > > > From: "Aaron Brady" <[email protected]>
> > > > > To: <[email protected]>
> > > > > Sent: Friday, August 08, 2003 10:25 AM
> > > > > Subject: Re: Patch: To add timeouts to SMPP connections
> > > > >
> > > > > > > Looks good, however I'd potentially make it more configurable
> > > > > > > so
> > >
> > > that
> > >
> > > > > the
> > > > >
> > > > > > X
> > > > > >
> > > > > > > x wait is one of the default settings and can be configured
> > > > > > > should
> > >
> > > it
> > >
> > > > > need
> > > > >
> > > > > > > be.
> > > > > >
> > > > > > If it's easy enough, then I don't see why not, but I'm not
> > > > > > altogether familiar with the internals of Kannel, so other than
> > > > > > using your below
> > > >
> > > > code
> > > >
> > > > > > as a starting point, I wouldn't know what to do. Personally, I
> > > > > > think
> > > >
> > > > that
> > > >
> > > > > > given enquire_link_interval is configurable that adds enough
> > > >
> > > > flexability -
> > > >
> > > > > > this is similar to how IRC servers do things, with a configurable
> > > > >
> > > > > ping-time,
> > > > >
> > > > > > but if you miss two then you're disconnected, but if people think
> > > > > > it
> > > >
> > > > needs
> > > >
> > > > > > the extra option then I can try and add it.
> > > > > >
> > > > > > > For example
> > > > > > >
> > > > > > >
> > > > > > >     if (cfg_get_integer(&enquire_link_interval, grp,
> > > > > > >                      octstr_imm("enquire-link-retry")) == -1)
> > > > > > >         enquire_link_interval = SMPP_ENQUIRE_LINK_RETRY;
> > > > > > >
> > > > > > > <other bits of code needed to map the parameter to the smpp
> > >
> > > structure>
> > >
> > > > > > >            if(date_universal_now() -
> > > > > > > smpp->last_enquire_received
> > > > > > >
> > > > > > >               > (smpp->enquire_link_retry *
> > > > >
> > > > > smpp->enquire_link_interval))
> > > > >
> > > > > > {
> > > > > >
> > > > > > > etc.
> > > > > > >
> > > > > > > Also - would it make sense to send an extra send_enquire_link
> > > > > > > to
> > >
> > > make
> > >
> > > > > sure
> > > > >
> > > > > > > that the other end is not contacting?
> > > > > >
> > > > > > I think that if the connection has gotten so far as to miss three
> > >
> > > pings,
> > >
> > > > > > it's not likely to recover, and manually sending another
> > > > > > enquire_link
> > > > >
> > > > > would
> > > > >
> > > > > > complicate the code needlessly, but again, I'm sure there are
> > > > > > people
> > > >
> > > > more
> > > >
> > > > > > knowledgable about this than me and if they think different, then
> > > > > > I
> > >
> > > can
> > >
> > > > > try
> > > > >
> > > > > > and implement it.
> > > > > >
> > > > > > Aaron

-- 
Best regards / Mit besten Grüßen aus Düsseldorf

Dipl.-Ing.
Alexander Malysh
___________________________________

Centrium GmbH
Vogelsanger Weg 80
40470 Düsseldorf

Fon: +49 (0211) 74 84 51 80
Fax: +49 (0211) 277 49 109

email: a.malysh at centrium.de
web: http://www.centrium.de
msn: olek2002 at hotmail.com
icq: 98063111
___________________________________________

Please avoid sending me Word or PowerPoint attachments.
See http://www.fsf.org/philosophy/no-word-attachments.html
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.