[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20200829093707.GB4669@iisc.ac.in>
Date: Sat, 29 Aug 2020 15:07:27 +0530
From: "S.V.R.Anand" <anandsvr@...c.ac.in>
To: Willem de Bruijn <willemdebruijn.kernel@...il.com>
Cc: Eric Dumazet <eric.dumazet@...il.com>,
Network Development <netdev@...r.kernel.org>
Subject: Re: packet deadline and process scheduling
Thanks a lot for the suggestion. If my understanding is correct, I think
it solves part of the problem by dequeueing packets with deadline in a
timely manner using bpf and FQ scheduler combination. Let me know if my
understanding is correct. Once the packets are dequeued, how about
scheduling of the receiver application process running in the user space in
a timely manner before the packet deadline ? By doing this, we are
ensuring timely delivery of the data to the receiver application.
Anand
On 20-08-28 16:01:31, Willem de Bruijn 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.
Powered by blists - more mailing lists