All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Ahern <dsahern@gmail.com>
To: Justin Iurman <justin.iurman@uliege.be>, netdev@vger.kernel.org
Cc: davem@davemloft.net, kuba@kernel.org, tom@herbertland.com
Subject: Re: [PATCH net-next v4 0/5] Support for the IOAM Pre-allocated Trace with IPv6
Date: Sat, 29 May 2021 09:58:50 -0600	[thread overview]
Message-ID: <85a22702-da46-30c2-46c9-66d293d510ff@gmail.com> (raw)
In-Reply-To: <20210527151652.16074-1-justin.iurman@uliege.be>

On 5/27/21 9:16 AM, Justin Iurman wrote:
> v4:
>  - Address warnings from checkpatch (ignore errors related to unnamed bitfields
>    in the first patch)
>  - Use of hweight32 (thanks Jakub)
>  - Remove inline keyword from static functions in C files and let the compiler
>    decide what to do (thanks Jakub)
> 
> v3:
>  - Fix warning "unused label 'out_unregister_genl'" by adding conditional macro
>  - Fix lwtunnel output redirect bug: dst cache useless in this case, use
>    orig_output instead
> 
> v2:
>  - Fix warning with static for __ioam6_fill_trace_data
>  - Fix sparse warning with __force when casting __be64 to __be32
>  - Fix unchecked dereference when removing IOAM namespaces or schemas
>  - exthdrs.c: Don't drop by default (now: ignore) to match the act bits "00"
>  - Add control plane support for the inline insertion (lwtunnel)
>  - Provide uapi structures
>  - Use __net_timestamp if skb->tstamp is empty
>  - Add note about the temporary IANA allocation
>  - Remove support for "removable" TLVs
>  - Remove support for virtual/anonymous tunnel decapsulation
> 
> In-situ Operations, Administration, and Maintenance (IOAM) records
> operational and telemetry information in a packet while it traverses
> a path between two points in an IOAM domain. It is defined in
> draft-ietf-ippm-ioam-data [1]. IOAM data fields can be encapsulated
> into a variety of protocols. The IPv6 encapsulation is defined in
> draft-ietf-ippm-ioam-ipv6-options [2], via extension headers. IOAM
> can be used to complement OAM mechanisms based on e.g. ICMP or other
> types of probe packets.
> 
> This patchset implements support for the Pre-allocated Trace, carried
> by a Hop-by-Hop. Therefore, a new IPv6 Hop-by-Hop TLV option is
> introduced, see IANA [3]. The three other IOAM options are not included
> in this patchset (Incremental Trace, Proof-of-Transit and Edge-to-Edge).
> The main idea behind the IOAM Pre-allocated Trace is that a node
> pre-allocates some room in packets for IOAM data. Then, each IOAM node
> on the path will insert its data. There exist several interesting use-
> cases, e.g. Fast failure detection/isolation or Smart service selection.
> Another killer use-case is what we have called Cross-Layer Telemetry,
> see the demo video on its repository [4], that aims to make the entire
> stack (L2/L3 -> L7) visible for distributed tracing tools (e.g. Jaeger),
> instead of the current L5 -> L7 limited view. So, basically, this is a
> nice feature for the Linux Kernel.
> 
> This patchset also provides support for the control plane part, but only for the
> inline insertion (host-to-host use case), through lightweight tunnels. Indeed,
> for in-transit traffic, the solution is to have an IPv6-in-IPv6 encapsulation,
> which brings some difficulties and still requires a little bit of work and
> discussion (ie anonymous tunnel decapsulation and multi egress resolution).
> 
> - Patch 1: IPv6 IOAM headers definition
> - Patch 2: Data plane support for Pre-allocated Trace
> - Patch 3: IOAM Generic Netlink API
> - Patch 4: Support for IOAM injection with lwtunnels
> - Patch 5: Documentation for new IOAM sysctls
> 
>   [1] https://tools.ietf.org/html/draft-ietf-ippm-ioam-data
>   [2] https://tools.ietf.org/html/draft-ietf-ippm-ioam-ipv6-options
>   [3] https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#ipv6-parameters-2
>   [4] https://github.com/iurmanj/cross-layer-telemetry
> 

These are draft documents from February 2021. Good to have RFC patches
for others to try the proposed feature, but is really early to be
committing code to Linux. I think we should wait and see how that
proposal develops.


  parent reply	other threads:[~2021-05-29 15:58 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-27 15:16 [PATCH net-next v4 0/5] Support for the IOAM Pre-allocated Trace with IPv6 Justin Iurman
2021-05-27 15:16 ` [PATCH net-next v4 1/5] uapi: IPv6 IOAM headers definition Justin Iurman
2021-05-27 15:16 ` [PATCH net-next v4 2/5] ipv6: ioam: Data plane support for Pre-allocated Trace Justin Iurman
2021-05-29 21:05   ` Jakub Kicinski
2021-05-30 10:36     ` Justin Iurman
2021-05-30 14:50       ` Justin Iurman
2021-05-30 20:05         ` Jakub Kicinski
2021-05-31 11:50           ` Justin Iurman
2021-06-01  4:20             ` Jakub Kicinski
2021-05-30 20:02       ` Jakub Kicinski
2021-05-31 11:43         ` Justin Iurman
2021-06-01  4:21           ` Jakub Kicinski
2021-05-27 15:16 ` [PATCH net-next v4 3/5] ipv6: ioam: IOAM Generic Netlink API Justin Iurman
2021-05-29 21:06   ` Jakub Kicinski
2021-05-30 11:18     ` Justin Iurman
2021-05-30 20:13       ` Jakub Kicinski
2021-05-27 15:16 ` [PATCH net-next v4 4/5] ipv6: ioam: Support for IOAM injection with lwtunnels Justin Iurman
2021-05-29 21:06   ` Jakub Kicinski
2021-05-30 10:48     ` Justin Iurman
2021-05-27 15:16 ` [PATCH net-next v4 5/5] ipv6: ioam: Documentation for new IOAM sysctls Justin Iurman
2021-05-29 15:58 ` David Ahern [this message]
2021-05-29 16:24   ` [PATCH net-next v4 0/5] Support for the IOAM Pre-allocated Trace with IPv6 Justin Iurman
2021-05-31  1:24     ` David Ahern
2021-05-31 12:04       ` Justin Iurman
2021-06-03  3:31         ` David Ahern
2021-05-29 21:10 ` Jakub Kicinski
2021-05-30 10:49   ` Justin Iurman

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=85a22702-da46-30c2-46c9-66d293d510ff@gmail.com \
    --to=dsahern@gmail.com \
    --cc=davem@davemloft.net \
    --cc=justin.iurman@uliege.be \
    --cc=kuba@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=tom@herbertland.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.