DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Morten Brørup" <mb@smartsharesystems.com>
To: "Henning Schild" <henning.schild@siemens.com>
Cc: "Felix Moessbauer" <felix.moessbauer@siemens.com>, <dev@dpdk.org>,
	<jan.kiszka@siemens.com>, <thomas@monjalon.net>,
	"Maxime Coquelin" <maxime.coquelin@redhat.com>,
	"Marcelo Tosatti" <mtosatti@redhat.com>
Subject: RE: [PATCH v6 0/2] Add l2reflect measurement application
Date: Wed, 21 Sep 2022 14:22:07 +0200	[thread overview]
Message-ID: <98CBD80474FA8B44BF855DF32C47DC35D8733F@smartserver.smartshare.dk> (raw)
In-Reply-To: <20220921132713.516616cf@md1za8fc.ad001.siemens.net>

> From: Henning Schild [mailto:henning.schild@siemens.com]
> Sent: Wednesday, 21 September 2022 13.27
> 
> Am Wed, 21 Sep 2022 11:43:13 +0200
> schrieb Morten Brørup <mb@smartsharesystems.com>:
> 
> > > From: Felix Moessbauer [mailto:felix.moessbauer@siemens.com]
> > > Sent: Friday, 2 September 2022 10.46
> > >
> > > Dear DPDK community,
> > >
> > > this patch provides the l2reflect measurement tool
> > > which will be discussed in our 2022 DPDK Userspace Summit talk:
> > > "Using DPDK OVS for deterministic low latency communication"
> > >
> > > While the code still might need some polish, we believe it is
> > > a good starting point for discussions about low latency networking
> > > in DPDK.
> > >
> > > The tool can also be used in a CI environment to contineously
> > > measure latencies across the evolution of DPDK and Linux.
> > >
> > > Best regards,
> > > Felix Moessbauer
> > > Siemens AG
> >
> > Dear Felix and Henning,
> >
> > Great to meet you at the 2022 DPDK Userspace conference.
> >
> > Have you considered using the Configuration Testing Protocol (CTP),
> > described in chapter 8 of the Ethernet specification from 1984 [1],
> > instead of your own packet format and the Local Experimental
> > Ethertype?
> 
> No we have not, first time i hear about that. First type we used must
> have been 0xaffe or 0xdead, would have to dig through version control.

You seem to be using the correct EtherType for an experimental protocol like this. I was not opposing to that.

> 
> > [1]: http://decnet.ipv7.net/docs/dundas/aa-k759b-tk.pdf
> >
> > The CTP an obsolete protocol, and not part of the IEEE standards for
> > Ethernet, but I think Wireshark is able to parse such packets.
> 
> Yes ... does not seem to be a train one wants to hop on.
> 
> Maybe you can explain how one would use CTP to measure roundtrip times,
> and go into detail on how that would add value.

I would only change the packet format, not the way of measuring.

> 
> I had a quick look at the spec and did not clearly see whether the
> protocol could be used at all ... maybe "abused". And being a CTP
> server one would need to implement more than just "reply". And i do not
> see any value, except maybe "wireshark support" ... but i am not sure
> how that would add value. The packets we send are trivial, headers are
> ethernet and the content does not matter ... so wireshark support is
> there for all relevant fields.

The primary - and probably only - advantage would be that the EtherType 0x9000 is officially allocated for CTP, so you don't need to use one of the EtherTypes allocated for experimental purposes, which might also be used for other purposes.

The CTP packet format is also trivial:

The "Request" packet basically contains a SkipCount=0 field followed a sequence of 1) a "FORWARD" structure with the MAC address of the Request sender, and 2) a "REPLY" structure containing only a receipt number (which I guess is like the ID or Sequence Number of an ICMP Echo packet).

The "Reply" packet is the same, but the SkipCount is increased by the size of the "FORWARD" structure (i.e. 8 bytes), so the SkipCount field now points to the "REPLY" structure.


Furthermore, the protocol also allows forwarding the packet through multiple hops, like MPLS. In that case, the initial packet's sequence will contain two or more "FORWARD" structures, and the CTP server on each hop will pop the topmost "FORWARD" structure (by updating the SkipCount field) and forward the packet to the next hop. However, nothing prevents you from also expanding your protocol to also multi-hop, if the need for it should arise.

> 
> regards,
> Henning
> 
> > There might also be long term perspectives in building on top of a
> > published (although obsolete) standard - e.g. the protocol could be
> > revived and become part of the DPDK protocol library, along with
> LACP.
> >
> > On the other hand, it might limit your ability to expand the
> protocol.

Just wanted to let you know about the existing protocol, so you can give it a few thoughts. There are pros and cons.

I have no personal preferences for CTP vs. your protocol.

-Morten


  reply	other threads:[~2022-09-21 12:22 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-02  8:45 Felix Moessbauer
2022-09-02  8:45 ` [PATCH v6 1/2] Fix build of apps with external dependencies Felix Moessbauer
2022-09-20 12:33   ` Maxime Coquelin
2022-09-02  8:45 ` [PATCH v6 2/2] Add l2reflect measurement application Felix Moessbauer
2022-09-20 14:01   ` Maxime Coquelin
2022-09-25  8:01     ` Moessbauer, Felix
2022-10-20 12:45       ` Maxime Coquelin
2022-09-21 14:42   ` Jerin Jacob
2022-09-21 15:07     ` Thomas Monjalon
2022-09-21 15:13     ` Henning Schild
2022-09-22  5:55       ` Jerin Jacob
2022-09-21  9:43 ` [PATCH v6 0/2] " Morten Brørup
2022-09-21 11:27   ` Henning Schild
2022-09-21 12:22     ` Morten Brørup [this message]
2022-09-21 12:59       ` Henning Schild
2022-09-21 13:48         ` Morten Brørup
2023-09-12 14:30 ` Stephen Hemminger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=98CBD80474FA8B44BF855DF32C47DC35D8733F@smartserver.smartshare.dk \
    --to=mb@smartsharesystems.com \
    --cc=dev@dpdk.org \
    --cc=felix.moessbauer@siemens.com \
    --cc=henning.schild@siemens.com \
    --cc=jan.kiszka@siemens.com \
    --cc=maxime.coquelin@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=thomas@monjalon.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).