lkml.org 
[lkml]   [2014]   [Feb]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH RFC] sctp: Update HEARTBEAT timer immediately after user changed HB.interval
Date
> > +
> > + /* Update the heartbeat timer immediately. */
> > + if (!mod_timer(&trans->hb_timer,
> > + sctp_transport_timeout(trans)))
> > + sctp_transport_hold(trans);
>
> This is causes a rather inconsistent behavior in that it doesn't
> account of the amount of time left on the hb timer. Thus it doesn't
> always do what commit log implies. If the remaining time is shorter
> then the new timeout value, it will take longer till the next HB
> the application expects.

Being able to stop heartbeats being sent by repeatedly configuring
the interval is certainly not a good idea!

> If the application has very strict timing requirement on the HBs, it
> should trigger the HB manually.
>
> We could rework the code to allow the combination of
> SPP_HB_DEMAND | SPP_HB_ENABLE to work as follows:
> 1) update the timer to the new value
> 2) Send an immediate HB
> a) Update the hb timeout.
>
> 2a should probably be done regardless since it can cause 2 HB to be
> outstanding at the same time.

Sending a heartbeat 'on demand' might be problematic if one
has also just been sent (from the timer).

I'd have thought that you wouldn't want to send a heartbeat while
still expecting a response from the previous one (this might require
splitting the time interval in two).

David





\
 
 \ /
  Last update: 2014-02-19 16:41    [W:0.123 / U:0.064 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site