Re: [Idr] [bess] [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549

Robert Raszuk <> Thu, 27 June 2019 10:49 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id EDFE4120251 for <>; Thu, 27 Jun 2019 03:49:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id NwctgXOrA66P for <>; Thu, 27 Jun 2019 03:49:48 -0700 (PDT)
Received: from ( [IPv6:2607:f8b0:4864:20::82b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 9C521120240 for <>; Thu, 27 Jun 2019 03:49:48 -0700 (PDT)
Received: by with SMTP id i34so1883390qta.6 for <>; Thu, 27 Jun 2019 03:49:48 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=yAwZgAcmiNy/Ev0AhK0GJN7pttbe9aQ1LKRqc4i1akU=; b=cGpozCUL2dAGLjG+ph/0Lr8EgGfJpYQoY5USPBBJlycQl4mpZj1GWQ9AqyDQdW4pVe LHOX15mCED3XH/NC63KChdrmKn++YdKdpv8bGiNNfYJp3mGtq9TJSJRxJcD6lgWOnoLc i1EVoeql5fDbeeUT++kNbIDakFdB05TxDvFE+cn+qqoXT0i2EIl/lCHBIwplHLL00Chv 7mfEqafLxdmoOfsrhpYXL+z0X1+MXKKq7Fb9KXkzbht2HWkcr+l3P4sFM2LOqebDR1m3 to7Y3I8vW4N35Jz1xZm0WxkN3uhF8K4vhd9IACj+tyTH787MjjguvltKIb+yyWikQGqW rDJQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=yAwZgAcmiNy/Ev0AhK0GJN7pttbe9aQ1LKRqc4i1akU=; b=ogxieRW8aJxibZp1N4ifgQuyIfd+OQm3m1lXWjGr541JIIbJ5st6fd8lD/YNHiE+71 y66Yy0ET3Jz9rfesKNnLvVB51REC7pUoPkC5eTEoGvHESjbecwvCncaYIR+bh9DBf0sH bE8WbUJ0wSoQ7f2nJZ0mTGr8gtP6i6X68KUmgt8zBJyO2jiwjI1nlowSXVGAn/Xy5JXm EJKcE5BnlDuWzWM3Ah82sLkgYX2jp4shWygImxIh4WHlbNJwrVd6/gnaJfJYHCnenqO9 mqY2KxmUSLlCFYDSqtCZM3HIw3r+qJN47Jw5ixKXOz77kvuyMtM/odelfSURPtQk1JUJ rHdQ==
X-Gm-Message-State: APjAAAUDjKxyC4svRhIqGR90ni91edC8LLSfE8pGlGhicLi/KKmF6ltO nYdrhLI/xlx3+jT9oE9HAF8+TGXY2dzxtPEHvpA/BQ==
X-Google-Smtp-Source: APXvYqyHbBIYURigOhLoVPG5idU3E05iAvsqIhBWo4pHHb18ejnPSX1k2Vm3R6xD4VQKBqtSpc8bt/ki5EQCt6awGCE=
X-Received: by 2002:aed:228d:: with SMTP id p13mr2443330qtc.208.1561632587497; Thu, 27 Jun 2019 03:49:47 -0700 (PDT)
MIME-Version: 1.0
References: <> <> <> <> <> <> <> <> <> <> <>
In-Reply-To: <>
From: Robert Raszuk <>
Date: Thu, 27 Jun 2019 12:49:36 +0200
Message-ID: <>
To: Xiejingrong <>
Cc: Alexander Okonnikov <>, "" <>, "" <>, "" <>, "" <>
Content-Type: multipart/alternative; boundary="000000000000a5d6d2058c4beb37"
Archived-At: <>
Subject: Re: [Idr] [bess] [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Inter-Domain Routing <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 27 Jun 2019 10:49:52 -0000

> Back to my suggestion: implementation should interpret nexthop RD+IPv4
and nexthop IPv4 the same, and interpret nexthop RD+IPv6 and nexthop IPv6
the same.

When elements of BGP UPDATE message are being parsed code must know what to
expect. Note that we are dealing here with deployed SAFI 128 for nearly 20

So today there are two ways to know what format of next hop is in MP_REACH:

a) Inferring it from AFI/SAFI per section 3 of RFC4760

or (in addition to the above coarse assumption)

b) Inferring it from the discrete value of next hop length field as defined
in section 3 of RFC5549

Note that if we would be defining new SAFI we can write anything we like to
the rules of constructing the update message. But here again we are dealing
with something which is deployed so sort of operating on the plane in

If implementation can infer next hop type from length we are safe to define
all sections to have next hop length = 16 octets and be done. But if there
are some implementations which would only take AFI/SAFI to check if the
next hop is correct or even further to check if the next hop length is
correct then we have a problem.

/* Btw this notion of next hop length = 32 is bizarre ! I have never seen
any BGP implementation sending two next hops (global IPv6 address followed
by link local IPv6 address) not I am able to find any docs describing how
any BGP stack would handle it. IMHO we should move this 32 next hop length
to historic asap. */

To the msg from Martin,

> maybe the WG would like to reach a conclusion on how to treat that

I would vote to reject the errata. There is no value of stuffing 8 octet of
zeros in the next hop field. If the RFC got defined in 2012 that really
means that most implementations are capable of inferring next hop format
from the length field - which is very good. Accepting the errata would be a
step backwords.


On Thu, Jun 27, 2019 at 11:15 AM Xiejingrong <> wrote:

> Thanks for the RFC historical lessons.
> --there was historically some assumption that next hop must be of the same
> AF as prefix.
> --RFC 2858 says that Next Hop field should match AFI. On the other hand,
> RFC 4760 says that Next Hop Field should match combination of AFI/SAFI.
> --authors of RFC 4364 were trying to make it consistent with 4760.
> --Also, drafts of RFC 4364 and RFC 4760 were being developed practically
> at the same time period.
> The problem is clear, the nexthop field has been inconsistent between
> different L3VPN/MVPN scenarios and different implementations in the long
> history.
> <draft-dawra-bess-srv6-services-00> is the latest draft, but it has
> different nexthop in section 3.1 to 3.4, in the year 2019.
> Back to my suggestion: implementation should interpret nexthop RD+IPv4 and
> nexthop IPv4 the same, and interpret nexthop RD+IPv6 and nexthop IPv6 the
> same.
> I think it may be helpful for <draft-dawra-bess-srv6-services-00> to add
> the above text, and update RFC4364/4659/4760/5549, to eliminate the worries
> about interoperation. ----is there any worries about interoperation ?
> Thanks
> Jingrong
> *From:* Alexander Okonnikov []
> *Sent:* Wednesday, June 26, 2019 9:38 PM
> *To:* Robert Raszuk <>
> *Cc:* UTTARO, JAMES <>; Xiejingrong <>;
> *Subject:* Re: [Idr] [bess] [Softwires] Regarding the Next Hop Network
> Address coding for IPv4 VPN over IPv6 Core in RFC5549
> Hi Robert,
> Sorry, I was not so precise :-) Of course, RD part in Next Hop is not
> copied from RD of NLRI, but zeroed. I was trying to explain why Next Hop
> field in RFC 4364 and RFC 4659 has format RD:IP (VPNvX address) rather than
> just IP.
> Thank you!