Re: [spring] SRv6 Network Programming - ICMP Source Address Selection

Ron Bonica <rbonica@juniper.net> Fri, 10 January 2020 19:09 UTC

Return-Path: <rbonica@juniper.net>
X-Original-To: spring@ietfa.amsl.com
Delivered-To: spring@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 13A0B1200B5 for <spring@ietfa.amsl.com>; Fri, 10 Jan 2020 11:09:03 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level:
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=juniper.net header.b=UlavN0dC; dkim=pass (1024-bit key) header.d=juniper.net header.b=cgq6qr74
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4GP6dRHUF5Z8 for <spring@ietfa.amsl.com>; Fri, 10 Jan 2020 11:08:58 -0800 (PST)
Received: from mx0b-00273201.pphosted.com (mx0b-00273201.pphosted.com [67.231.152.164]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D1CFF120019 for <spring@ietf.org>; Fri, 10 Jan 2020 11:08:57 -0800 (PST)
Received: from pps.filterd (m0108162.ppops.net [127.0.0.1]) by mx0b-00273201.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 00AJ7mWi016368; Fri, 10 Jan 2020 11:08:54 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : mime-version; s=PPS1017; bh=NxPo7sWDVDw91SJsl72OGI+DywE811qAcgdq6gWJpmA=; b=UlavN0dCg3qaMJQXRO5EzrEo24JlHYOOWQNml4SNN5QX+c210ci1dDosAyVUTd4zvHOr 3qT+TGGS1HkYfOqvtPmMSYrQMUPXvQ+jZ20k4eQglGy8+qUbHJaCAkVIEwWcSkPuhe1T S6tNMtMmWR0uPn4BV84+l5mcn7BhPzVNQbE9fvSJ8RSl/HKxSO8DfFlbt9YeitB4kYiM 2rQArtQE+H/5LdqkQQbRLbIepvlrwRgRYaHVcBowJP6lFnqXQqEnVU9t6KLFC2ki7UuG G6teCxzfMZwfp3y99K6PBbl+jdzoJII2a0lQ32ZcSvwDV5c8RujFmVm8VY4XxDT3hHRW UQ==
Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2044.outbound.protection.outlook.com [104.47.66.44]) by mx0b-00273201.pphosted.com with ESMTP id 2xegab1bqk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 10 Jan 2020 11:08:54 -0800
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d/Le1k1GC9Cd5PcqQ0H5aE6jehiIn2AK0lbor8IAEtDfiPKFWQj1CbMNHlrheAVCeBywtIuDWetudzcPELRBTfATiDlu2BXd4hDDOa/akl57U0lgqn6vtbRYKRvseURKYUIC64/Mkc38eFhV46TcsSqRbPZJdpBwzkqhmHq7BY5t8JeAg6A7b2D40m5k5Ay/nybruIJri3N0a94dUmVG4630CaHNPDKzsBDeWd8E9E0sOJDMMreRwjtvGQ9XLnbJOpbzGWrPoMWKcLgAiqGIgCZ/ej5mRqbwyEwzc0FLpjO8BlzxGPNVBKAsJeyg6Drv09qsyii5eNnGs/JZYhX+lg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NxPo7sWDVDw91SJsl72OGI+DywE811qAcgdq6gWJpmA=; b=LPpxWRDlX9r9qzqQSfI7ryDuiJ0WveYb0xh2+x6gW695puBl3gh4JfRbjmiJ7iJhXk+YtQSdG/Vr2G145lillm3TmAB96kBMWT3my1K3qOXSBQNqrkiYdeG5SIlQN13WCqS15AkvUsusuYvyjlpv3uBIxcn6Wfc76n/6+2sEw2W6+oNAQosjuJV0+CQH4kmy2QKCuR8pmRxZ4txHhp8OfyX5v5N2S7oVlXfKeg7WraGtuX3K9nwtYTMl1RFO3cGpx67AJ0x0e1Lmtdoj8oTIgXgUJB2I7XHSM1KNAltIaI5GosVSWLbm3nU1TlAKNMDWpUUkrvlGGIkPzMR90e6y9A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=juniper.net; dmarc=pass action=none header.from=juniper.net; dkim=pass header.d=juniper.net; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NxPo7sWDVDw91SJsl72OGI+DywE811qAcgdq6gWJpmA=; b=cgq6qr743Tmytr4ZoOc/tOWxwQ0GbgewWYEazxPaETzMvd2mBAff4uJ0BmmRQlzOgDcgwVUwHq/72q4fMGYUveajxaHV6KaoznlP4Pdg/GR7pPJC5Ei6qyFzADbnqzukiJZi0GnlZweyfxiHWA0lLgcvXu0IL2gkKrVu+8XLYN8=
Received: from BN7PR05MB3938.namprd05.prod.outlook.com (52.132.216.30) by BN7PR05MB4404.namprd05.prod.outlook.com (52.133.220.154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2623.5; Fri, 10 Jan 2020 19:08:51 +0000
Received: from BN7PR05MB3938.namprd05.prod.outlook.com ([fe80::f826:68df:3aa7:4864]) by BN7PR05MB3938.namprd05.prod.outlook.com ([fe80::f826:68df:3aa7:4864%5]) with mapi id 15.20.2623.010; Fri, 10 Jan 2020 19:08:51 +0000
From: Ron Bonica <rbonica@juniper.net>
To: "Pablo Camarillo (pcamaril)" <pcamaril@cisco.com>
CC: "spring@ietf.org" <spring@ietf.org>
Thread-Topic: [spring] SRv6 Network Programming - ICMP Source Address Selection
Thread-Index: AQHVt1sjI5E9vezZDUu0pc5hCyLTq6fFADeQgBI8Q4CACFa2YIAEu/GAgAASX9A=
Content-Class:
Date: Fri, 10 Jan 2020 19:08:51 +0000
Message-ID: <BN7PR05MB3938FEE1C2F83C919D4CFA2AAE380@BN7PR05MB3938.namprd05.prod.outlook.com>
References: <B91AA98B-F605-4C6B-AFAF-C9FDEA703460@cisco.com> <BN7PR05MB5699B27F84C5E8051028D97AAE2C0@BN7PR05MB5699.namprd05.prod.outlook.com> <44F0ED35-5684-4594-BB29-BDCC193284A4@cisco.com> <BN7PR05MB39386FA6A2666370FF07FAA7AE3F0@BN7PR05MB3938.namprd05.prod.outlook.com> <CEB721B4-DA87-4838-BA6D-499D38A33936@cisco.com>
In-Reply-To: <CEB721B4-DA87-4838-BA6D-499D38A33936@cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Enabled=True; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_SiteId=bea78b3c-4cdb-4130-854a-1d193232e5f4; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Owner=rbonica@juniper.net; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_SetDate=2020-01-10T19:08:47.7576120Z; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Name=Juniper Business Use Only; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Application=Microsoft Azure Information Protection; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_ActionId=58150d5c-3065-4c55-980d-635d895fcafc; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Extended_MSFT_Method=Automatic
dlp-product: dlpe-windows
dlp-version: 11.3.2.8
dlp-reaction: no-action
x-originating-ip: [108.28.233.91]
x-ms-publictraffictype: Email
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: 6da5dc28-ba3f-4d87-15d6-08d7960087bc
x-ms-traffictypediagnostic: BN7PR05MB4404:
x-microsoft-antispam-prvs: <BN7PR05MB4404E7132837D57EC35AF31DAE380@BN7PR05MB4404.namprd05.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-forefront-prvs: 02788FF38E
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(366004)(136003)(396003)(346002)(376002)(39860400002)(199004)(189003)(7696005)(5660300002)(8676002)(186003)(6916009)(81156014)(2906002)(81166006)(52536014)(6506007)(8936002)(53546011)(4326008)(86362001)(26005)(316002)(478600001)(9686003)(66556008)(66446008)(64756008)(76116006)(55016002)(66946007)(71200400001)(33656002)(66476007); DIR:OUT; SFP:1102; SCL:1; SRVR:BN7PR05MB4404; H:BN7PR05MB3938.namprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: p5nVSjT7GhZul/AUcWMG1zyg2wm5BTCRvMNnT2Spjirq1appXw150dk4FmfFzdz9jOZHOgDT/uLKE9eR7XH6Lv9lSqiF4XvRUHGP7EQOb7Wn/glGZsTHX1QAjo2r/UTwGiDu/FEs5oWcAmOBJilKRso5860dw/C8I21dJS6KEOGQ+2sDswisQDHiQTYse0tLC7VmF0qNtlVkNNB9OW2eOwkKJKybOWnrDUZ/FgBsLzAf0orNBq7XGSWuxIXyePJbb4krw7hTmm8oLfUp35Wvis0xj3RkennTQvuftnd++qYvqr/F6kVRrwV3o5eT4oXPGPUO+1cfDg//Wtsz3hN5lj8HGiXzBFNcUpZVZ/hE9cmwdpCQZv+1PdPgd6NbR0eSmni02xEioiQYV7oHZPK+QxicW3yUZpht0P0pVmcZMjKk8y6BjLI60xwy78uJ8IAf
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_BN7PR05MB3938FEE1C2F83C919D4CFA2AAE380BN7PR05MB3938namp_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-Network-Message-Id: 6da5dc28-ba3f-4d87-15d6-08d7960087bc
X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jan 2020 19:08:51.6721 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: B/ycr7ivTbbbeEyePVRszR9cWqAofsEDxX3zYT9vhf1TZ2JBfWZypCO9/+71iMiS+X0jK8zr0Tmyp4o8zrVIbg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR05MB4404
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138, 18.0.572 definitions=2020-01-10_01:2020-01-10, 2020-01-09 signatures=0
X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 mlxscore=0 malwarescore=0 mlxlogscore=999 priorityscore=1501 impostorscore=0 bulkscore=0 suspectscore=0 lowpriorityscore=0 adultscore=0 clxscore=1015 spamscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-1910280000 definitions=main-2001100154
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/wt0-YQTPeuwKqhyLqmFlBL-8sbQ>
Subject: Re: [spring] SRv6 Network Programming - ICMP Source Address Selection
X-BeenThere: spring@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Source Packet Routing in NetworkinG \(SPRING\)" <spring.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/spring>, <mailto:spring-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/spring/>
List-Post: <mailto:spring@ietf.org>
List-Help: <mailto:spring-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/spring>, <mailto:spring-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 10 Jan 2020 19:09:03 -0000

Pablo,

So, in Section 4.1, Line S03, an SRv6 node sends an ICMP Parameter Problem Message. What is the source address in that message?

Is it the destination address of the offending packet (i.e., A SID)? Or is in the address of an interface on the SRv6 node?

                                                                                         Ron




Juniper Business Use Only
From: Pablo Camarillo (pcamaril) <pcamaril@cisco.com>
Sent: Friday, January 10, 2020 11:54 AM
To: Ron Bonica <rbonica@juniper.net>
Cc: spring@ietf.org
Subject: Re: [spring] SRv6 Network Programming - ICMP Source Address Selection

Ron,

There is no behavior in draft-ietf-spring-srv6-network-programming that proposes to encode a SID in the source address of the IPv6 header.

If in the future someone would propose to do such thing in another I-D; it is up to those authors to justify why they would want to do this, and how to ensure that the processing does not break any other protocol. But as said, this is not in the scope of draft-ietf-spring-srv6-network-programming.

Regarding the ICMP messages:
SRH follows RFC4443 Section 2.2 with respect to how to select the ICMP Source Address.
SRv6 Network Programming does not change this (it simply follows the SRv6 rules defined by the SRH).

In your email you refer to a possibility of future protocols breaking this. I don't think that we can guess what future protocols will do, and it is up to those future protocols to ensure compatibility with the existing standards.

Thanks,
Pablo.

From: Ron Bonica <rbonica@juniper.net<mailto:rbonica@juniper.net>>
Date: Tuesday, 7 January 2020 at 19:07
To: "Pablo Camarillo (pcamaril)" <pcamaril@cisco.com<mailto:pcamaril@cisco.com>>
Cc: SPRING WG <spring@ietf.org<mailto:spring@ietf.org>>
Subject: RE: [spring] SRv6 Network Programming - ICMP Source Address Selection

Pablo,

Let me try to ask the question another way:


1)      Is it generally acceptable for a SID to appear in the source address field of an IPv6 header?

2)      Can an exception be made for ICMP messages?

I think that the answer to the first question is "no", because doing so would break ICMP. Think about what would happen if:


-          Node S sends a packet to Node D with a SID S as its source address.

-          Node Q is an intermediate node on the path from Node S to Node D. For some reason, Node Q cannot forward the packet.

-          Node Q sends an ICMP message to Node S. The ICMP destination address is SID S.

-          The ICMP message arrives at Node A

-          Node A discards the ICMP message, because the payload is ICMP

It might be OK to make an exception for ICMP messages. This is because RFC 4443 forbids sending an ICMP message in response to another ICMP message. However, I am not entirely sure that this is a good idea. One day in the future, some protocol other than ICMP may try send a response to the source address of the ICMP message.

                                                                                     Ron




Juniper Business Use Only
From: Pablo Camarillo (pcamaril) <pcamaril@cisco.com<mailto:pcamaril@cisco.com>>
Sent: Tuesday, January 7, 2020 4:18 AM
To: Ron Bonica <rbonica@juniper.net<mailto:rbonica@juniper.net>>
Cc: SPRING WG <spring@ietf.org<mailto:spring@ietf.org>>
Subject: Re: [spring] SRv6 Network Programming - ICMP Source Address Selection

Ron,

It's good to see agreement on the fact that SRH follows RFC4443 Section 2.2 with respect to how the ICMP Source Address is selected.

Can you please point me to the text in draft-ietf-spring-srv6-network-programming that changes the behavior below from RFC4443 Section 2.2? I believe there is no such text.

Thanks,
Pablo.

From: Ron Bonica <rbonica@juniper.net<mailto:rbonica@juniper.net>>
Date: Saturday, 21 December 2019 at 20:59
To: "Pablo Camarillo (pcamaril)" <pcamaril@cisco.com<mailto:pcamaril@cisco.com>>
Cc: "spring@ietf.org<mailto:spring@ietf.org>" <spring@ietf.org<mailto:spring@ietf.org>>
Subject: RE: [spring] SRv6 Network Programming - ICMP Source Address Selection

Pablo,

Section 2.2 of RFC 4443 offers the following options:

"   (a) If the message is a response to a message sent to one of the
       node's unicast addresses, the Source Address of the reply MUST be
       that same address.

   (b) If the message is a response to a message sent to any other
       address, such as

       - a multicast group address,
       - an anycast address implemented by the node, or
       - a unicast address that does not belong to the node

      the Source Address of the ICMPv6 packet MUST be a unicast address
      belonging to the node. "

So, the question boils down to whether you consider a SID to be one of the node's unicast addresses. If so, the answer is a). If not, the answer is b).

So, which is it?

                                                    Happy Holidays,
                                                         Ron





Juniper Business Use Only
From: Pablo Camarillo (pcamaril) <pcamaril@cisco.com<mailto:pcamaril@cisco.com>>
Sent: Friday, December 20, 2019 12:30 PM
To: Ron Bonica <rbonica@juniper.net<mailto:rbonica@juniper.net>>
Cc: spring@ietf.org<mailto:spring@ietf.org>
Subject: Re: [spring] SRv6 Network Programming - ICMP Source Address Selection

Ron,

I guess that draft-ietf-6man-segment-routing-header does not contain any explicit text about it because it is not needed.
Instead draft-ietf-6man-segment-routing-header contains a reference to RFC4443 that details in section 2.2 how to select it.

There is no text in draft-ietf-spring-srv6-network-programming that changes such behavior.

Happy Holidays,
Pablo.

From: spring <spring-bounces@ietf.org<mailto:spring-bounces@ietf.org>> on behalf of Ron Bonica <rbonica=40juniper.net@dmarc.ietf.org<mailto:rbonica=40juniper.net@dmarc.ietf.org>>
Date: Thursday, 19 December 2019 at 14:59
To: "Pablo Camarillo (pcamaril)" <pcamaril@cisco.com<mailto:pcamaril@cisco.com>>, "spring@ietf.org<mailto:spring@ietf.org>" <spring@ietf.org<mailto:spring@ietf.org>>
Subject: Re: [spring] SRv6 Network Programming - ICMP Source Address Selection

Pablo,

Can you provide a specific reference into draft-ietf-6man-segment-routing-header? I can't find the answer to my question in there.

                                                                                         Ron





Juniper Business Use Only
From: Pablo Camarillo (pcamaril) <pcamaril@cisco.com<mailto:pcamaril@cisco.com>>
Sent: Thursday, December 19, 2019 6:47 AM
To: Ron Bonica <rbonica@juniper.net<mailto:rbonica@juniper.net>>; spring@ietf.org<mailto:spring@ietf.org>
Subject: Re: SRv6 Network Programming - ICMP Source Address Selection

Ron,

This is exactly the same as in the SRH.
There is no text in draft-ietf-spring-srv6-network-programming that changes this.

Cheers,
Pablo.

From: Ron Bonica <rbonica@juniper.net<mailto:rbonica@juniper.net>>
Date: Monday, 9 December 2019 at 23:48
To: "Pablo Camarillo (pcamaril)" <pcamaril@cisco.com<mailto:pcamaril@cisco.com>>, SPRING WG <spring@ietf.org<mailto:spring@ietf.org>>, 6man <6man@ietf.org<mailto:6man@ietf.org>>
Subject: RE: SRv6 Network Programming - ICMP Source Address Selection

Pablo,

Section 2.2 of RFC 4443 offers two options. If you think that a SID is a unicast address, the first option is applicable. If you think that a SID is not a unicast address, the second option is applicable.

Which did you choose?

                                                                         Ron



Juniper Business Use Only
From: Pablo Camarillo (pcamaril) <pcamaril@cisco.com<mailto:pcamaril@cisco.com>>
Sent: Monday, December 9, 2019 10:18 AM
To: Ron Bonica <rbonica@juniper.net<mailto:rbonica@juniper.net>>; SPRING WG <spring@ietf.org<mailto:spring@ietf.org>>; 6man <6man@ietf.org<mailto:6man@ietf.org>>
Subject: Re: SRv6 Network Programming - ICMP Source Address Selection

Ron,

As you pointed out in your email, RFC4443 Section 2.2 is very clear about how to select the source address.
draft-ietf-spring-srv6-network-programming does not change this.

Thanks,
Pablo.

From: ipv6 <ipv6-bounces@ietf.org<mailto:ipv6-bounces@ietf.org>> on behalf of Ron Bonica <rbonica=40juniper.net@dmarc.ietf.org<mailto:rbonica=40juniper.net@dmarc.ietf.org>>
Date: Friday, 6 December 2019 at 17:40
To: SPRING WG <spring@ietf.org<mailto:spring@ietf.org>>, 6man <6man@ietf.org<mailto:6man@ietf.org>>
Subject: SRv6 Network Programming - ICMP Source Address Selection

Authors,

When an SRv6 node sends an ICMP message, how does it select the ICMP message's source address?

Section 2.2 of RFC 4443 offers two options. If you think that a SID is a unicast address, the first option is applicable. If you think that a SID is not a unicast address, the second option is applicable.

                                                                     Ron


Juniper Business Use Only

Please excuse any typos, sent from my 'smart'phone.

Please excuse any typos, sent from my 'smart'phone.