[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200828134538.67eaf7b5@hermes.lan>
Date: Fri, 28 Aug 2020 13:45:38 -0700
From: Stephen Hemminger <stephen@...workplumber.org>
To: Willem de Bruijn <willemdebruijn.kernel@...il.com>
Cc: "S.V.R.Anand" <anandsvr@...c.ac.in>,
Eric Dumazet <eric.dumazet@...il.com>,
Network Development <netdev@...r.kernel.org>
Subject: Re: packet deadline and process scheduling
On Fri, 28 Aug 2020 16:01:31 +0200
Willem de Bruijn <willemdebruijn.kernel@...il.com> wrote:
> On Fri, Aug 28, 2020 at 10:51 AM S.V.R.Anand <anandsvr@...c.ac.in> wrote:
> >
> > There is an active Internet draft "Packet Delivery Deadline time in
> > 6LoWPAN Routing Header"
> > (https://datatracker.ietf.org/doc/draft-ietf-6lo-deadline-time/) which
> > is presently in the RFC Editor queue and is expected to become an RFC in
> > the near future. I happened to be one of the co-authors of this draft.
> > The main objective of the draft is to support time sensitive industrial
> > applications such as Industrial process control and automation over IP
> > networks. While the current draft caters to 6LoWPAN networks, I would
> > assume that it can be extended to carry deadline information in other
> > encapsulations including IPv6.
> >
> > Once the packet reaches the destination at the network stack in the
> > kernel, it has to be passed on to the receiver application within the
> > deadline carried in the packet because it is the receiver application
> > running in user space is the eventual consumer of the data. My mail below is for
> > ensuring passing on the packet sitting in the socket interface to the
> > user receiver application process in a timely fashion with the help of
> > OS scheduler. Since the incoming packet experieces variable delay, the
> > remaining time left before deadline approaches too varies. There should
> > be a mechanism within the kernel, where network stack needs to
> > communicate with the OS scheduler by letting the scheduler know the
> > deadline before user application socket recv call is expected to return.
> >
> > Anand
> >
> >
> > On 20-08-28 10:14:13, Eric Dumazet wrote:
> > >
> > >
> > > On 8/27/20 11:45 PM, S.V.R.Anand wrote:
> > > > Hi,
> > > >
> > > > In the control loop application I am trying to build, an incoming message from
> > > > the network will have a deadline before which it should be delivered to the
> > > > receiver process. This essentially calls for a way of scheduling this process
> > > > based on the deadline information contained in the message.
> > > >
> > > > If not already available, I wish to write code for such run-time ordering of
> > > > processes in the earlist deadline first fashion. The assumption, however
> > > > futuristic it may be, is that deadline information is contained as part of the
> > > > packet header something like an inband-OAM.
> > > >
> > > > Your feedback on the above will be very helpful.
> > > >
> > > > Hope the above objective will be of general interest to netdev as well.
> > > >
> > > > My apologies if this is not the appropriate mailing list for posting this kind
> > > > of mails.
> > > >
> > > > Anand
> > > >
> > >
> > > Is this described in some RFC ?
> > >
> > > If not, I guess you might have to code this in user space.
>
> Could ingress redirect to an IFB device with FQ scheduler work for
> ingress EDT? With a BPF program at ifb device egress hook to read
> the header and write skb->tstamp.
This might be an attack vector for remote DOS. If you believe all messages
it might be possible to create huge set of messages all of which have to be
processed at once.
Powered by blists - more mailing lists