Re: [spring] Regaining Focus on SRv6 and SRv6+

Ron Bonica <rbonica@juniper.net> Sat, 07 September 2019 22:31 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 300311201DB; Sat, 7 Sep 2019 15:31:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 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, HTTPS_HTTP_MISMATCH=0.1, 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
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 Kj3Cnv3RwL8c; Sat, 7 Sep 2019 15:31:17 -0700 (PDT)
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 55F50120145; Sat, 7 Sep 2019 15:31:17 -0700 (PDT)
Received: from pps.filterd (m0108163.ppops.net [127.0.0.1]) by mx0b-00273201.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x87MVC3v015887; Sat, 7 Sep 2019 15:31:14 -0700
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=vb0Es4M5ykbqGcwjg3bB9JjUSIqQU2sZne+lkMOoEXs=; b=I7Gzc5rZDS2XlvczrrZUKZavNmH40+IfqA+43a8iNidVQvbAizepO8vSbzfbFVPq29FW f7gXA8S9/gGQhMHVvr0tWYdhGtX520FoEmhJ4Jd2c08t68Mk/BpXZc2r/2AenSGLTtia izpUWYQ+GTvtY9Cbka0y2V5I1zWOu8sU9xtpVvW5AzqsjxjG7rcBpFwlQO1lYwqxGWlX +gkqN4J5mLLqU3Q1yJ7nd8F9P5miDu//v8REeetIvZ9V9ARlNOL10XHra0gB+Xbvl/fq vjTu99OAm7ubx+AoccA4OS/sbVdHr85HMhVGtQvRDftyBNICipRvKgKQQjCy5w8qP6N2 9g==
Received: from nam05-by2-obe.outbound.protection.outlook.com (mail-by2nam05lp2059.outbound.protection.outlook.com [104.47.50.59]) by mx0b-00273201.pphosted.com with ESMTP id 2uv7sq8um3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Sat, 07 Sep 2019 15:31:14 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LKYABCyKHTHCKceRS8epkalT8O5ZR1tse0X1s3NV3sIx3Rwh1FZIuHbt6NABLNxqehbvp1I6q76a5EenSzgA+gfeXSiwIKAzQUGjURpVCbFN9FEIDFeUIUL4jGIv8EiFMAkbppzmYu6x1fQK2xdrkm6y4Kg/f6aHk+sVzecjcygUjKOvV5vpVrCHqxdh0ep2/92h/K9Ngg7NqlsV4siWOR15m7cg1XXQDz0awJ//TsbRtCfhoRpSXzxfeh5cBcousf/HOgheVi7JlkXySzJ4ZzyrSOivvNc6oWqrSOAWe9XDeb+uJdjz3+W0wY7Q8cQD3trgb+9VEXox6YckvIfL/g==
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=vb0Es4M5ykbqGcwjg3bB9JjUSIqQU2sZne+lkMOoEXs=; b=Dil2f1yxX8z+DbL6OVIuXoeCTiqe+oa73LYpgSzbM2nNIptrWgBZSihg2RT7wlQ7wvw3Q1qgZU5rk6oAEGQg+X3bRg0MHMhfyXBanxJkcTEX/1LIqZYUyEhvLAz5OypzZZIOLEfvtfLiFJgbpqQFchBPXBib4vlMm16wkzjPKjVNPUn5ciZUCAXoK23D4dnD77QcqpVsoTSpzwOiKYuOnJ9n1LqhNRPMUozk7ZGzam1gZx+Bhyn2055eUnTDK/wQlV3QQaa58dUdAfDqBnjwJwxJWTkcKjCFPVZ6AFuKTLbe8m6YW/RIV1XJRsHKUERHPWDua1yZf4Le/KDCqIp0PQ==
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
Received: from BYAPR05MB5463.namprd05.prod.outlook.com (20.177.185.144) by BYAPR05MB6423.namprd05.prod.outlook.com (20.178.232.211) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2263.7; Sat, 7 Sep 2019 22:31:11 +0000
Received: from BYAPR05MB5463.namprd05.prod.outlook.com ([fe80::f4f2:f284:d49a:890a]) by BYAPR05MB5463.namprd05.prod.outlook.com ([fe80::f4f2:f284:d49a:890a%4]) with mapi id 15.20.2263.005; Sat, 7 Sep 2019 22:31:11 +0000
From: Ron Bonica <rbonica@juniper.net>
To: Robert Raszuk <robert@raszuk.net>, Tom Herbert <tom@herbertland.com>
CC: "spring@ietf.org" <spring@ietf.org>, "6man@ietf.org" <6man@ietf.org>
Thread-Topic: [spring] Regaining Focus on SRv6 and SRv6+
Thread-Index: AdVksp60lvODxAs3RT63wMugcqrHYQA6Gq+AAAKNagAAByuHAAABNTKAAABU3sA=
Content-Class:
Date: Sat, 07 Sep 2019 22:31:11 +0000
Message-ID: <BYAPR05MB54638B53905A97EB0C803862AEB50@BYAPR05MB5463.namprd05.prod.outlook.com>
References: <BYAPR05MB5463153B47BFE83350C566E7AEBA0@BYAPR05MB5463.namprd05.prod.outlook.com> <CALx6S366MBTKKhYVkzwhtNU1kpXwq5gAB_5LL1s_zs46oXP7AA@mail.gmail.com> <CAOj+MMHf_kikj1D8=Z5Ti8MKKSGOtoLLAmpbbYZdOQBBjSGz-g@mail.gmail.com> <CALx6S36MJi70YdpH8DSwJz=hc=VNr8V1xSr2jjqcL7TFp4qO0g@mail.gmail.com> <CAOj+MMFMOtK9uGtCwMX19xhojpA6-dtV-Zwn-QERE=3YPVydpg@mail.gmail.com>
In-Reply-To: <CAOj+MMFMOtK9uGtCwMX19xhojpA6-dtV-Zwn-QERE=3YPVydpg@mail.gmail.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=2019-09-07T22:31:09.7809821Z; 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=03629c73-cfec-4013-8a0d-4bcd1c7a59c0; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Extended_MSFT_Method=Automatic
dlp-product: dlpe-windows
dlp-version: 11.2.0.14
dlp-reaction: no-action
x-originating-ip: [66.129.241.11]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: bcfa6012-9903-4285-a372-08d733e31613
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600166)(711020)(4605104)(1401327)(4618075)(2017052603328)(7193020); SRVR:BYAPR05MB6423;
x-ms-traffictypediagnostic: BYAPR05MB6423:
x-ms-exchange-purlcount: 7
x-microsoft-antispam-prvs: <BYAPR05MB6423E0E1002BBEF73C13C4E2AEB50@BYAPR05MB6423.namprd05.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-forefront-prvs: 0153A8321A
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(39860400002)(396003)(346002)(376002)(366004)(136003)(51444003)(189003)(199004)(561944003)(66946007)(316002)(54906003)(76116006)(110136005)(66446008)(64756008)(2906002)(3846002)(790700001)(6116002)(14454004)(33656002)(66476007)(66556008)(7696005)(99286004)(478600001)(74316002)(966005)(7736002)(8676002)(14444005)(86362001)(606006)(71200400001)(71190400001)(256004)(81156014)(66066001)(81166006)(6436002)(446003)(54896002)(11346002)(476003)(486006)(102836004)(26005)(4326008)(6306002)(186003)(53546011)(6506007)(229853002)(25786009)(76176011)(55016002)(9686003)(236005)(8936002)(5660300002)(53936002)(6246003)(52536014); DIR:OUT; SFP:1102; SCL:1; SRVR:BYAPR05MB6423; H:BYAPR05MB5463.namprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1;
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: 7Cw5EWWhx2dwuHwR3y5ny6RA8vcu5SX+cd4aTqkui9uDQap0mzdM2ivoVU2Bv5OXAc6jLpDsCBSBZuq6A4pTNR1xpYI5gX0LX2uKxnCB+A8sLqHvt5XQYk0g3KnUa4nOBTQw2zRAAceP6BxBoP03OK/ImkGlx7AAkMEBZJqqECZGY8+lLVeqTH8C/Yyps4Sfazzw5c/pgOuqJ+Jaehn72yhGmvbSkTmsbAu8q8iPd2ZJD/v4shRPSVe1hCZIFzjHjzUgoGKh1GH5cC6cRfYMNXVkBC1u8k6+PupZtXtedl/UiMum+ZfNv6C2fu95iztSBYjTQGcndxCmNDPWAtnSzYSfOAsTqHLksIGxXc9uTw2Wde262SXk6Jm1ng2g796iS8yHh37zOZxqVesx4Usek1V3zohLRdW7nztPCfQ4UIg=
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_BYAPR05MB54638B53905A97EB0C803862AEB50BYAPR05MB5463namp_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-Network-Message-Id: bcfa6012-9903-4285-a372-08d733e31613
X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Sep 2019 22:31:11.5414 (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: 3JrmQmV8GaM3rmrMBGvAjdlbnC5NY5lYul2K8ldyhTJfW4EPZUHa9snIzfVwaqOULByZOvA8B2YuYxu2J9iP9w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR05MB6423
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.70,1.0.8 definitions=2019-09-07_11:2019-09-04,2019-09-07 signatures=0
X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 clxscore=1015 spamscore=0 mlxscore=0 adultscore=0 phishscore=0 mlxlogscore=999 suspectscore=0 malwarescore=0 impostorscore=0 priorityscore=1501 lowpriorityscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-1906280000 definitions=main-1909070245
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/0Wtfq4jNu0vVzkIIiQFmXMpQBs0>
Subject: Re: [spring] Regaining Focus on SRv6 and SRv6+
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: Sat, 07 Sep 2019 22:31:21 -0000

Robert,

You may need to rethink your argument. (That is, except for the part where you said that I was smart!)

The SRv6+ PPSI does replaces something int SRv6. But it does not replace the SRH's tags, flags or TLVs. It replaces the low order bits in the last SID. More specially, it identifies a function to be executed by SR egress node. It replaces functions like END.DT4, END.DT6, END.DX4, END.DX6, etc.)

As Tom says,  the CRH is much simpler to parse that the SRH. It contains only five fields, four of which are mandated by RFC 8200. (The other is the SID list.)

Unlike TLVs, the PPSI is fixed length (32 bits). It identifies an instruction to be executed on the SR egress node. Carries the same information as an MPLS service label or the low order bits of the final SID in as SRv6 SID list.

What you say about the IPv6 Option registry being nearly full may be a bit of an exaggeration. This is because the CHG bit is meaningful of hop-by-hop options, but is totally meaningless for Destination options. So, for destination options, the IPv6 option registry is actually 6 bits wide.

                                                                        Ron

From: Robert Raszuk <robert@raszuk.net>
Sent: Saturday, September 7, 2019 5:54 PM
To: Tom Herbert <tom@herbertland.com>
Cc: Ron Bonica <rbonica@juniper.net>; spring@ietf.org; 6man@ietf.org
Subject: Re: [spring] Regaining Focus on SRv6 and SRv6+

Dear Tom,

> The most obvious difference, besides SID size, is that SRV6 contains
> TLVs and SRV6+ doesn't.

I was hoping you know that this is not true at all so I skipped commenting on that aspect.

Folks promoting SRv6+ are smart and they know how to sell stuff which looks simple and innocent on the surface like concept of CRH with just fixed label/sid list while hide all complexity under the deep cover and only show little corners of it here and there hoping no one will connect the dots.

So what you call "complexity" has been just moved from routing header to destination options header and will be defined in number of different documents piece by piece.

Just please take a look at the proposal describing per path service instructions encoding. It does have Type Length and Value so to me looks like TLV structure going into IPv6 header.

4<https://urldefense.com/v3/__https:/tools.ietf.org/html/draft-bonica-6man-vpn-dest-opt-06*section-4__;Iw!8WoA6RjC81c!S9X3wTIFHuThdbtX6z4bKoc7xE6NlkGRvw9k43j_eioOgUMzYf2E8HKI9VJXmGie$>.  The PPSI Option





   The PPSI Option contains the following fields:



   o  Option Type: 8-bit selector.  PPSI option.  Value TBD by IANA.

      (Suggested value: 144).  See Note below.

   o  Opt Data Len - 8-bit unsigned integer.  Length of the option, in

      octets, excluding the Option Type and Option Length fields.  This

      field MUST be set to 4.

   o  PPSI identifier - (32-bit selector).  Identifies a PPSI.

REF: https://tools.ietf.org/html/draft-bonica-6man-vpn-dest-opt-06<https://urldefense.com/v3/__https:/tools.ietf.org/html/draft-bonica-6man-vpn-dest-opt-06__;!8WoA6RjC81c!S9X3wTIFHuThdbtX6z4bKoc7xE6NlkGRvw9k43j_eioOgUMzYf2E8HKI9dfFF-MI$>

That TLV value comes from Destination Options and Hop-by-Hop Options registry which effectively is already full. It is 8 bit register with 3 first bits taken for identification so remaining are 5 bits. Now from that remaining 5 bits (32 values) only 5 values are left for allocation..

https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml<https://urldefense.com/v3/__https:/www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml__;!8WoA6RjC81c!S9X3wTIFHuThdbtX6z4bKoc7xE6NlkGRvw9k43j_eioOgUMzYf2E8HKI9V9FULVl$>

So they noticed that and just at the last rev of the VPN extenstion renamed what originally was called VPN Context Information Option to PPSI as it was very obvious that with 5 remaining values there is no room for new types for other service instructions.

Now the plan is to nest under PPSI TLV in a sub-TLV format any potential new service instructions.

Now I will leave it as the exercise for the reader to judge which approach is more complex.

Is it to put the cards on the table and play open by clearly defining SRv6 SRH with SIDs and functions or to play such poker with IETF WGs ?

Thx,
R.


On Sat, Sep 7, 2019 at 11:19 PM Tom Herbert <tom@herbertland.com<mailto:tom@herbertland.com>> wrote:
Robert,

You've chosen to selectively comment on only parts of what I wrote,
not the main thesis which is that SRV6 packet format is more complex
than SRV6+.

The most obvious difference, besides SID size, is that SRV6 contains
TLVs and SRV6+ doesn't. I don't believe that this was ever needed, HBH
and destination already exist in RC8200 and could have been used as
they will be in SRV6+. Similarly, AH could have been used instead of
defining SR specific HMAC. Furthermore, several implementations of
SRV6 are listed in draft-ietf-6man-segment-routing-header-22; all
except one have the words "no TLV processing". The exception is Linux,
which doesn't not implement SR TLVs per the standard and wouldn't
interoperate with an implementation that is conformant (I have looked
at the Linux code and in fact have suggested a fix). So the claim that
SRV6 is mature and deployed is suspect considering there doesn't seem
to be proper support for TLVs which is a major part of the protocol.

Based on this analysis, I believe my statement that SRV6 format is
more complex than SRV6+ is factual. It's my opinion that SRV6,
particularly because of TLVs, is overly complex.

Tom


On Sat, Sep 7, 2019 at 10:54 AM Robert Raszuk <robert@raszuk.net<mailto:robert@raszuk.net>> wrote:
>
>
> > It doesn't depend on extension header insertion
>
> Nothing depends on extension header insertion ... SRH insertion is an optional optimization.
>
> > and there's no need to have multiple routing headers in the same packet.
>
> Really ?
>
> If I am doing SRv6+ in my network for TE and want to to do TI-LFA how would I not end up with 3 IPv6 fixed headers and two Dest Option EHs and two CRH EHs in the packet under protection ?
>
> But this is just tip of the ugliness iceberg ...
>
> All required extensions to protocols developed in to name just a few already proposed by SRv6+ authors: IDR, LSR, BESS and 6MAN WG to support the new mapping (which is other then nomenclature close to SR-MPLS mapping) will require real development resources.
>
> OAM in spite of few claims from Ron that "just works" is not addressed and does require even more extensions.
>
> Then last I will not be able to use SRv6+ for my deployment needs in the global IPv6 overlay I am running simply that within my overlay I do not plan to run any control plane. Underlay basic reachability provided by third parties is all I need to construct optimal paths. So any protocol which requires new signalling to distribute mapping is non starter.
>
> At the end we should learn from others ... (hint SDWANs) and avoid mistakes of the past (hint: LDP).
>
> Many thx,
> R.
>
>
>
>
>
>
>
>
> On Sat, Sep 7, 2019 at 6:41 PM Tom Herbert <tom@herbertland.com<mailto:tom@herbertland.com>> wrote:
>>
>> On Fri, Sep 6, 2019 at 6:08 AM Ron Bonica
>> <rbonica=40juniper.net@dmarc.ietf.org<mailto:40juniper.net@dmarc.ietf.org>> wrote:
>> >
>> > Folks,
>> >
>> >
>> >
>> > We have explored many facets of SRv6 and SRv6, sometime passionately. I think that this exploration is a good thing. In the words of Tolkien, "All who wander are not lost."
>> >
>> >
>> >
>> > But it may be time to refocus on the following:
>> >
>> >
>> >
>> > For many operators, SRv6 is not deployable unless the problem of header length is addressed
>> > Many objections the uSID proposal remain unanswered
>> > SRv6+ offers an alternative solution
>> >
>> >
>> >
>> > Given these three facts, I think that it would be a mistake to discontinue work on SRv6+.
>> >
>> + 1
>>
>> I'd suggest a fourth fact. The packet format of SRv6+ is much simpler
>> than SRv6 and the protocol works better with existing mechanisms and
>> protocols of IPv6 like Destination and HBH options, as well as AH. It
>> doesn't depend on extension header insertion and there's no need to
>> have multiple routing headers in the same packet.
>>
>> Tom
>>
>>
>> >
>> >
>> >                                                                                    Ron
>> >
>> >
>> >
>> >
>> > Juniper Business Use Only
>> >
>> > --------------------------------------------------------------------
>> > IETF IPv6 working group mailing list
>> > ipv6@ietf.org<mailto:ipv6@ietf.org>
>> > Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6<https://urldefense.com/v3/__https:/www.ietf.org/mailman/listinfo/ipv6__;!8WoA6RjC81c!S9X3wTIFHuThdbtX6z4bKoc7xE6NlkGRvw9k43j_eioOgUMzYf2E8HKI9RFWajEZ$>
>> > --------------------------------------------------------------------
>>
>> _______________________________________________
>> spring mailing list
>> spring@ietf.org<mailto:spring@ietf.org>
>> https://www.ietf.org/mailman/listinfo/spring<https://urldefense.com/v3/__https:/www.ietf.org/mailman/listinfo/spring__;!8WoA6RjC81c!S9X3wTIFHuThdbtX6z4bKoc7xE6NlkGRvw9k43j_eioOgUMzYf2E8HKI9YjolzkW$>


Juniper Business Use Only