Subject: RE: Comments on RFC 2591

From: "Ayers, Mike" <[email-masked]>
Date: Mon, 8 Jan 2001 12:17:35 -0600

> From: Juergen Schoenwaelder [mailto:[email-masked]]
>
> >>>>> Frank Strauss writes:
>
> [...]
>
> Frank> But how about a single
> Frank> action of a single schedule that would be invoked multiple
> Frank> times during a single `period of non-existent time ;-)'? Assume
> Frank> you have a schedEntry like this:
>
>         schedType    = calendar
>         schedWeekDay = sunday
>         schedDay     = d29
>         schedMonth   = oct
>         schedHour    = 2
>         schedMinute  = m0 + m1 + ... + m58 + m59
>
> Frank>    Would the action of this schedule have been invoked 60 times
> Frank> at 3 o'clock right after the end of the daylight savings
> Frank> period? Or would it have been invoked just once?
>
> One year ago, we had a similar question (see the subject line
> "Implementation of RFC 2591" in the mailing list archive) and we
> concluded that the correct answer is 60. (There is already clarifying
> text in the current ID.)
>
> <soap>
> It took us (Frank and myself) quite some time today to come up with
> this answer. We went back and force in my email archives on
> discussions about time transistions and non-existing times. We also
> went back to the HP cron man page we used as a starting point back in
> 1998.
>
> In general, there is not "correct" or "incorrect" answer as it all
> boils down to the semantics of the scheduled action, which we do not
> know. However, we finally observed a major difference between the HP
> cron model and the RFC 2591 model. The RFC 2591 assumes that scheduled
> actions will likely have interrelationships (e.g. one action turning
> an interface on, another turning an interface off). This leads to the
> rule that actions from non-existent times must be invoked in the
> "original" order (as soon as possible after the time transition). The
> HP cron model leans more towards a model where invoked actions are
> self-contained actions (and thus they just move the scheduling points
> equal to the time-shift and they suppress duplicates). Depending on
> the model, one or the other behaviour seems to be more reasonable.
> But again, there is no way to say one if correct and the other one
> is incorrect.
> </soap>
>

	I agree that it is impossible to determine intrinsic correctness of
an interpretation of 1 or 60.  However, I'd like to argue for 1 from a
practical standpoint.  The reason is the simple case of an overloaded
system.  If we accept the answer of 60 above, then the schedule will pile
load onto an already overloaded machine.  In the worst case, the scheduled
activity may require more sequential CPU time than exists in the schedule
interval - if the  schedule MIB and the schedule run in system context or
high priority (which is to be expected), then the system will quite likely
wedge.  I would prefer an explicit interpretation of 1 with text to explain
that scheduled events may not run at every schedule opportunity, and that
certain events, such as Daylight Savings Time (or as I call it, Daylight
Wasting Time, since I don't get up that early) and system restarts may cause
real or apparent large gaps in the run schedule, or even apparent double
runs.  This would leave the end implementors responsible for ensuring that
their scheduled events can run in the alloted time, which is as it should
be.

/|/|ike

---

From: Juergen Schoenwaelder <[email-masked]>
Date: Tue, 9 Jan 2001 12:06:05 +0100

>>>>> Ayers, Mike writes:

Mike> I agree that it is impossible to determine intrinsic
Mike> correctness of an interpretation of 1 or 60.  However, I'd like
Mike> to argue for 1 from a practical standpoint.  The reason is the
Mike> simple case of an overloaded system.

[...]

I personally have no strong preference. I can live with both options
as long as the behaviour is precisely defined. The options are:

(a) Invoke an action on once for multiple triggers in non-existant
    time of a given single schedule or option

(b) Invoke an action for all triggers in non-existant time of a given
    single schedule.

The ID current says (b), basically because Alan Luchuk (who I think
did the SNMP Research implementation) seemed to prefer this one year
ago. If this is still true, then I have heard the following opinions
so far:

in favour of (a): Mike, Randy, Frank (at least before our debate yesterday)

in favour of (b): Alan

So far, the consensus seems to lean towards option (a). But I would
like to hear more opinions on this issues during the last call period.
(And please also air your opinion on the proposed new schedTriggers
counter.)

/js

-- 
Juergen Schoenwaelder      Technical University Braunschweig
<[email-masked]>  Dept. Operating Systems & Computer Networks
Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>