| < draft-lin-sbfd-path-consistency-over-srv6-00.txt | draft-lin-sbfd-path-consistency-over-srv6-01.txt > | |||
|---|---|---|---|---|
| BFD Working Group C. Lin | BFD Working Group C. Lin | |||
| Internet Draft New H3C Technologies | Internet Draft New H3C Technologies | |||
| Intended status: Informational W. Cheng | Intended status: Informational W. Cheng | |||
| Expires: Sep 2, 2022 W. Jiang | Expires: Oct 12, 2022 W. Jiang | |||
| China Mobile | China Mobile | |||
| March 2, 2022 | April 12, 2022 | |||
| S-BFD Path Consistency over SRv6 | S-BFD Path Consistency over SRv6 | |||
| draft-lin-sbfd-path-consistency-over-srv6-00 | draft-lin-sbfd-path-consistency-over-srv6-01 | |||
| Abstract | Abstract | |||
| Bidirectional Forwarding Detection (BFD) can be used to monitor | Bidirectional Forwarding Detection (BFD) can be used to monitor | |||
| paths between nodes. Seamless BFD (S-BFD) provides a simplified | paths between nodes. Seamless BFD (S-BFD) provides a simplified | |||
| mechanism which is suitable for monitoring of paths that are setup | mechanism which is suitable for monitoring of paths that are setup | |||
| dynamically and on a large scale network. In SRv6, when a headend | dynamically and on a large scale network. In SRv6, when a headend | |||
| use S-BFD to monitor the segment list/CPath of SRv6 Policy, the | use S-BFD to monitor the segment list/CPath of SRv6 Policy, the | |||
| forward path of S-BFD packet is indicated by segment list, the | forward path of control packet is indicated by segment list, the | |||
| reverse path of BFD packet is via the shortest path from the | reverse path of response control packet is via the shortest path | |||
| reflector back to the initiator (headend) as determined by routing. | from the reflector back to the initiator (headend) as determined by | |||
| The forward path and reverse path of S-BFD packet are likely | routing. The forward path and reverse path of control packet are | |||
| inconsistent going through different intermediate nodes or links. | likely inconsistent going through different intermediate nodes or | |||
| This document describes a method to keep the forward path and | links. This document describes a method to keep the forward path and | |||
| reverse path of S-BFD consistent when detecting SRv6 Policy. | reverse path of S-BFD consistent when detecting SRv6 Policy. | |||
| Status of this Memo | Status of this Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
| other groups may also distribute working documents as Internet- | other groups may also distribute working documents as Internet- | |||
| skipping to change at page 2, line 4 ¶ | skipping to change at page 2, line 4 ¶ | |||
| Internet-Drafts are draft documents valid for a maximum of six | Internet-Drafts are draft documents valid for a maximum of six | |||
| months and may be updated, replaced, or obsoleted by other documents | months and may be updated, replaced, or obsoleted by other documents | |||
| at any time. It is inappropriate to use Internet-Drafts as | at any time. It is inappropriate to use Internet-Drafts as | |||
| reference material or to cite them other than as "work in progress." | reference material or to cite them other than as "work in progress." | |||
| The list of current Internet-Drafts can be accessed at | The list of current Internet-Drafts can be accessed at | |||
| http://www.ietf.org/ietf/1id-abstracts.txt | http://www.ietf.org/ietf/1id-abstracts.txt | |||
| The list of Internet-Draft Shadow Directories can be accessed at | The list of Internet-Draft Shadow Directories can be accessed at | |||
| http://www.ietf.org/shadow.html | http://www.ietf.org/shadow.html | |||
| This Internet-Draft will expire on September 2 2022. | This Internet-Draft will expire on October 12 2022. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2021 IETF Trust and the persons identified as the | Copyright (c) 2022 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| carefully, as they describe your rights and restrictions with | carefully, as they describe your rights and restrictions with | |||
| respect to this document. Code Components extracted from this | respect to this document. Code Components extracted from this | |||
| document must include Simplified BSD License text as described in | document must include Simplified BSD License text as described in | |||
| Section 4.e of the Trust Legal Provisions and are provided without | Section 4.e of the Trust Legal Provisions and are provided without | |||
| skipping to change at page 3, line 12 ¶ | skipping to change at page 3, line 12 ¶ | |||
| SRv6 Policy, the forward and reverse path of S-BFD packet are | SRv6 Policy, the forward and reverse path of S-BFD packet are | |||
| inconsistent with high probability because the reverse path is via | inconsistent with high probability because the reverse path is via | |||
| IPv6 forwarding and forward path is via SRv6 segment list (loose | IPv6 forwarding and forward path is via SRv6 segment list (loose | |||
| path or explicit path). | path or explicit path). | |||
| The inconsistency impacts the detecting result. If the forward path | The inconsistency impacts the detecting result. If the forward path | |||
| is up and reverse path is down, then the S-BFD session will be down. | is up and reverse path is down, then the S-BFD session will be down. | |||
| If there are multiple path (segment list) in a SRv6 Policy between a | If there are multiple path (segment list) in a SRv6 Policy between a | |||
| headend (initiator) router and a tailend(reflector) router, multiple | headend (initiator) router and a tailend(reflector) router, multiple | |||
| S-BFD session will be created for each path. Each S-BFD session uses | S-BFD session will be created for each path. Each S-BFD session uses | |||
| corresponding path to send echo packet, but the reverse path is | corresponding path to send control packet, but the reverse path is | |||
| identical for all S-BFD sessions. If the reverse path is down, all | identical for all S-BFD sessions. If the reverse path is down, all | |||
| sessions will be down. Then the SRv6 Policy is down. | sessions will be down. Then the SRv6 Policy is down. | |||
| The consistency of forward and reverse path of the same S-BFD | The consistency of forward and reverse path of the same S-BFD | |||
| session should be guaranteed. This document describes a method to | session should be guaranteed. This document describes a method to | |||
| keep the forward path and reverse path of S-BFD consistent using | keep the forward path and reverse path of S-BFD consistent using | |||
| path segment when detecting SRv6 Policy. | path segment when detecting SRv6 Policy. | |||
| 1.1. Requirements Language | 1.1. Requirements Language | |||
| skipping to change at page 3, line 35 ¶ | skipping to change at page 3, line 35 ¶ | |||
| "OPTIONAL" in this document are to be interpreted as described in | "OPTIONAL" in this document are to be interpreted as described in | |||
| BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all | BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all | |||
| capitals, as shown here. | capitals, as shown here. | |||
| 2. Requirement for S-BFD in SRv6 | 2. Requirement for S-BFD in SRv6 | |||
| Monitor SRv6 Policy using S-BFD is usually based on segment list S- | Monitor SRv6 Policy using S-BFD is usually based on segment list S- | |||
| BFD creates session for each segment list and associates the session | BFD creates session for each segment list and associates the session | |||
| with segment list. | with segment list. | |||
| When S-BFD initiator detects the connectivity of an S-BFD session, | When S-BFD initiator detects the continuity of an S-BFD session, it | |||
| it will use the associated segment list to encapsulate IPv6 header | will use the associated segment list to encapsulate IPv6 header and | |||
| and SRH of the echo packet. | SRH of the control packet. | |||
| After the reflector receives the S-BFD echo, the response packet | After the reflector receives the S-BFD control packet, the response | |||
| should be able to return along the path to avoid the false detection | control packet should be able to return along the path to avoid the | |||
| of the session caused by the inconsistency of the forward and | false detection of the session caused by the inconsistency of the | |||
| reverse paths. | forward and reverse paths. | |||
| Referring to the following topology, there are two paths between | Referring to the following topology, there are two paths between | |||
| NodeA and NodeD, and All nodes allocate end.x Segments. NodeA and | Node A and D, and All nodes allocate end.x Segments. Node A and D | |||
| NodeD are headend and tailend nodes of each other, and SRv6 policy | are headend and tailend nodes of each other, and SRv6 policy is | |||
| is created on A and D respectively. | created on A and D respectively. | |||
| SID-B1 SID-B2 SID-C1 SID-C2 | SID-B1 SID-B2 SID-C1 SID-C2 | |||
| +--------B-----------------C-----------+ | +--------B-----------------C-----------+ | |||
| SID-A1/ \ SID-D1 | SID-A1/ \ SID-D1 | |||
| / \ | / \ | |||
| A D | A D | |||
| \ /SID-D2 | \ /SID-D2 | |||
| SID-A2\ SID-E1 SID-E2 / | SID-A2\ SID-E1 SID-E2 / | |||
| +-------------------E-------------------+ | +-------------------E-------------------+ | |||
| Figure 1: reference topology | Figure 1: reference topology | |||
| Assuming that the deployed SRv6 policy has one candidate path and | Assuming that the deployed SRv6 policy has one candidate path and | |||
| each path has two segment lists. For ease of description, segment | each path has two segment lists. For ease of description, segment | |||
| lists with the same number on NodeA and NodeD are forward and | lists with the same number on Node A and D are forward and reverse | |||
| reverse paths to each other. | paths to each other. | |||
| NodeA: NodeD: | Node A: Node D: | |||
| SRv6 Policy A-D SRv6 Policy D-A | SRv6 Policy A-D SRv6 Policy D-A | |||
| Candidate Path1 Candidate Path1 | Candidate Path1 Candidate Path1 | |||
| Segment list1 Segment list1 | Segment list1 Segment list1 | |||
| SID-A1, SID-B2, SID-C2 SID-D1, SID-C1, SID-B1 | SID-A1, SID-B2, SID-C2 SID-D1, SID-C1, SID-B1 | |||
| Segment list2 Segment list2 | Segment list2 Segment list2 | |||
| SID-A2, SID-E2 SID-D2, SID-E1 | SID-A2, SID-E2 SID-D2, SID-E1 | |||
| When nodeA is the S-BFD initiator, S-BFD sessions for segment list1 | When node A is the S-BFD initiator, S-BFD sessions for segment list1 | |||
| and segment list2 could be created respectively. | and segment list2 could be created respectively. | |||
| The echo packet of S-BFD session associated with the segment list1 | The control packet of S-BFD session associated with the segment | |||
| is forwarded to nodeD according to the segment list1 of nodeA. The | list1 is forwarded to node D according to the segment list1 of node | |||
| response packet of node D needs to be returned to node A according | A. The response control packet of node D needs to be returned to | |||
| to the segment list1 of node D. Thus the forward and reverse paths | node A according to the segment list1 of node D. Thus the forward | |||
| of S-BFD packets are ensured to be consistent. | and reverse paths of S-BFD packets are ensured to be consistent. | |||
| 3. Correlate bidirectional path using Path Segment | 3. Correlate bidirectional path using Path Segment | |||
| A Path Segment is defined to identify an SR path in [draft-ietf- | A Path Segment is defined to identify an SR path in [draft-ietf- | |||
| spring-srv6-path-segment]. SRv6 Path segments can be used to | spring-srv6-path-segment]. SRv6 Path segments can be used to | |||
| correlate the two unidirectional SRv6 paths at both ends of the | correlate the two unidirectional SRv6 paths at both ends of the | |||
| paths. | paths. | |||
| [draft-ietf-idr-sr-policy-path-segment] proposes an extension to BGP | [draft-ietf-idr-sr-policy-path-segment] proposes an extension to BGP | |||
| SR Policy distribute SR policies carrying Path Segment and | SR Policy distribute SR policies carrying Path Segment and | |||
| bidirectional path information. | bidirectional path information. | |||
| Through this extension, when distributing SRv6 policy to the | Through this extension, when distributing SRv6 policy to the | |||
| headend, reverse path information and path segment of segment list | headend, reverse path information and path segment of segment list | |||
| can be carried together. | can be carried together. | |||
| NodeA NodeD | Node A Node D | |||
| SRv6 Policy A-D SRv6 Policy D-A | SRv6 Policy A-D SRv6 Policy D-A | |||
| Candidate Path1 Candidate Path1 | Candidate Path1 Candidate Path1 | |||
| Segment list1 Segment list1 | Segment list1 Segment list1 | |||
| SID-A1, SID-B2, SID-C2 SID-D1, SID-C1, SID-B1 | SID-A1, SID-B2, SID-C2 SID-D1, SID-C1, SID-B1 | |||
| Path Segment: SID-Path-A1 Path Segment: SID-Path-D1 | Path Segment: SID-Path-1 Path Segment: SID-Path-2 | |||
| Reverse Path Segment: Reverse Path Segment: | Reverse Path Segment: Reverse Path Segment: | |||
| SID-Path-D1 SID-Path-A1 | SID-Path-2 SID-Path-1 | |||
| Segment list2 Segment list2 | Segment list2 Segment list2 | |||
| SID-A2, SID-E2 SID-D2, SID-E1 | SID-A2, SID-E2 SID-D2, SID-E1 | |||
| Path Segment: SID-Path-A2 Path Segment: SID-Path-D2 | Path Segment: SID-Path-3 Path Segment: SID-Path-4 | |||
| Reverse Path Segment: Reverse Path Segment: | Reverse Path Segment: Reverse Path Segment: | |||
| SID-Path-D2 SID-Path-A2 | SID-Path-4 SID-Path-3 | |||
| In this way, on the headend in both directions of the forward and | In this way, on the headend in both directions of the forward and | |||
| reverse paths, the path segment of the paths in both directions can | reverse paths, the path segment of the paths in both directions can | |||
| be obtained, and the paths in both directions use the same | be obtained, and the paths in both directions use the same | |||
| intermediate link. | intermediate link. | |||
| The headend can use path segment in two directions to establish a | The headend can use path segment in two directions to establish a | |||
| mapping table. Using this mapping table, the headend can index the | mapping table. Using this mapping table, the headend can index the | |||
| reverse path through the path segment of the forward path. | reverse path through the path segment of the forward path. | |||
| The mapping table of NodeA and Node D is shown below: | The mapping table of Node A and Node D is shown below: | |||
| NodeA: | Node A: | |||
| +-----------------+ +--------------------+ | +-----------------+ +--------------------+ | |||
| | Path Segment | |Reverse Path Segment| | | Path Segment | |Reverse Path Segment| | |||
| +-----------------+ +--------------------+ | +-----------------+ +--------------------+ | |||
| | SID-Path-A1 |-+ | SID-Path-D1 |--+ | | SID-Path-1 |-+ | SID-Path-2 |--+ | |||
| +-----------------+ | +--------------------+ | | +-----------------+ | +--------------------+ | | |||
| | SID-Path-A2 | | | SID-Path-D2 |--|-+ | | SID-Path-3 | | | SID-Path-4 |--|-+ | |||
| +-----------------+ | +--------------------+ | | | +-----------------+ | +--------------------+ | | | |||
| | | | | | | | | | | |||
| | | +-----------------------+ | | | | | +-----------------------+ | | | |||
| | | | segment List | | | | | | | segment List | | | | |||
| | | +-----------------------+ | | | | | +-----------------------+ | | | |||
| | +->|SID-A1, SID-B2, SID-C2 |<----+ | | | +->|SID-A1, SID-B2, SID-C2 |<----+ | | |||
| | +-----------------------+ | | | +-----------------------+ | | |||
| +-------------->|SID-A2, SID-E2 |<------+ | +-------------->|SID-A2, SID-E2 |<------+ | |||
| +-----------------------+ | +-----------------------+ | |||
| NodeD: | Node D: | |||
| +-----------------+ +--------------------+ | +-----------------+ +--------------------+ | |||
| | Path Segment | |Reverse Path Segment| | | Path Segment | |Reverse Path Segment| | |||
| +-----------------+ +--------------------+ | +-----------------+ +--------------------+ | |||
| | SID-Path-D1 |-+ | SID-Path-A1 |--+ | | SID-Path-2 |-+ | SID-Path-1 |--+ | |||
| +-----------------+ | +--------------------+ | | +-----------------+ | +--------------------+ | | |||
| | SID-Path-D2 | | | SID-Path-A2 |--|-+ | | SID-Path-4 | | | SID-Path-3 |--|-+ | |||
| +-----------------+ | +--------------------+ | | | +-----------------+ | +--------------------+ | | | |||
| | | | | | | | | | | |||
| | | +-----------------------+ | | | | | +-----------------------+ | | | |||
| | | | segment List | | | | | | | segment List | | | | |||
| | | +-----------------------+ | | | | | +-----------------------+ | | | |||
| | +->|SID-D1, SID-C1, SID-B1 |<----+ | | | +->|SID-D1, SID-C1, SID-B1 |<----+ | | |||
| | +-----------------------+ | | | +-----------------------+ | | |||
| +-------------->|SID-D2, SID-E1 |<------+ | +-------------->|SID-D2, SID-E1 |<------+ | |||
| +-----------------------+ | +-----------------------+ | |||
| Figure 2: mapping table | Figure 2: mapping table | |||
| 4. S-BFD Procedure with Path segment | 4. S-BFD Procedure with Path segment | |||
| This document proposes to forward S-BFD echo and response packets | This document proposes to forward S-BFD control packets and response | |||
| through the consistent path by path segment. | control packets through the consistent path by path segment. | |||
| 4.1. S-BFD Initiator procedure | 4.1. S-BFD Initiator procedure | |||
| For instance, the S-BFD initiator is Node A in Figure 1, and the S- | For instance, the S-BFD initiator is Node A in Figure 1, and the S- | |||
| BFD session is bounded with Segment List1 of Policy A-D. The | BFD session is bounded with Segment List1 of Policy A-D. The | |||
| encapsulation format of S-BFD echo packet is as follows: | encapsulation format of S-BFD control packet is as follows: | |||
| +-----------------------------------------------------------+ | +-----------------------------------------------------------+ | |||
| | IPv6 Header | | | IPv6 Header | | |||
| . Source IP Address = S-BFD Initiator IPv6 Address . | . Source IP Address = S-BFD Initiator IPv6 Address . | |||
| . Destination IP Address = SegmentList[SL] . | . Destination IP Address = SegmentList[SL] . | |||
| . Next-Header = SRH (43) . | . Next-Header = SRH (43) . | |||
| . . | . . | |||
| +-----------------------------------------------------------+ | +-----------------------------------------------------------+ | |||
| | SRH as specified in RFC 8754 | | | SRH as specified in RFC 8754 | | |||
| . Next-Header = IPv6 . | . Next-Header = IPv6 . | |||
| skipping to change at page 7, line 29 ¶ | skipping to change at page 7, line 29 ¶ | |||
| . Destination IP Address = S-BFD Reflector IPv6 Address . | . Destination IP Address = S-BFD Reflector IPv6 Address . | |||
| . Next-Header = UDP . | . Next-Header = UDP . | |||
| . . | . . | |||
| +-----------------------------------------------------------+ | +-----------------------------------------------------------+ | |||
| | UDP Header | | | UDP Header | | |||
| . . | . . | |||
| +-----------------------------------------------------------+ | +-----------------------------------------------------------+ | |||
| | Payload | | | Payload | | |||
| . . | . . | |||
| +-----------------------------------------------------------+ | +-----------------------------------------------------------+ | |||
| Figure 3: Encapsulation format of S-BFD echo packet | Figure 3: Encapsulation format of S-BFD control packet | |||
| NodeA Encapsulates the path segment of segment list1 in SRH, and set | NodeA Encapsulates the path segment of segment list1 in SRH, and set | |||
| SRH.P-Flag. | SRH.P-Flag. | |||
| The S-BFD echo packet is as follows: | The S-BFD control packet is as follows: | |||
| A------------->B------------>C---------->D | A------------->B------------>C---------->D | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | SA=A's Ipv6Addr | | SA=A's Ipv6Addr | | | SA=A's Ipv6Addr | | SA=A's Ipv6Addr | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | DA=SID-A1 | | DA=D's ipv6Addr | | | DA=SID-A1 | | DA=D's ipv6Addr | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | SL=3 | P-Flag=1 | | SL=0 | P-Flag=1 | | | SL=3 | P-Flag=1 | | SL=0 | P-Flag=1 | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| skipping to change at page 8, line 27 ¶ | skipping to change at page 8, line 27 ¶ | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | SID-B2 | | SID-B2 | | | SID-B2 | | SID-B2 | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | SID-A1 | | SID-A1 | | | SID-A1 | | SID-A1 | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | SID-Path-A1 | | SID-Path-A1 | | | SID-Path-A1 | | SID-Path-A1 | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | sbfd-payload | | sbfd-payload | | | sbfd-payload | | sbfd-payload | | |||
| | | | | | | | | | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| Figure 4: Example of S-BFD echo packet | Figure 4: Example of S-BFD control packet | |||
| 4.2. S-BFD Reflector procedure | 4.2. S-BFD Reflector procedure | |||
| S-BFD echo packet is forwarded along the path A->B->C-D. While | S-BFD control packet is forwarded along the path A->B->C-D. While | |||
| packet arrives at node D, RH.SL is 0 and the destination address is | packet arrives at Node D, RH.SL is 0 and the destination address is | |||
| the NodeD IPv6 address. Packet is delivered up to the S-BFD module | IPv6 address of Node D. Packet is delivered up to the S-BFD module | |||
| in control plane. | in control plane. | |||
| S-BFD module detects SRH.P-flag is set, extracts the path segment of | S-BFD module detects SRH.P-flag is set, extracts the path segment of | |||
| the forward path from SRH, gets the path segment of the reverse path | the forward path from SRH, gets the path segment of the reverse path | |||
| through the mapping table. When responding to S-BFD echo, S-BFD | through the mapping table. When responding to S-BFD control packet, | |||
| module uses the segment list associated with path segment of the | S-BFD module uses the segment list associated with path segment of | |||
| reverse path to encapsulate SRH. | the reverse path to encapsulate SRH. | |||
| The encapsulation format of S-BFD response packet is as follows: | The encapsulation format of S-BFD response control packet is as | |||
| follows: | ||||
| +----------------------------------------------------------+ | +----------------------------------------------------------+ | |||
| | IPv6 Header | | | IPv6 Header | | |||
| . Source IP Address = S-BFD Reflector IPv6 Address . | . Source IP Address = S-BFD Reflector IPv6 Address . | |||
| . Destination IP Address = SegmentList[SL] . | . Destination IP Address = SegmentList[SL] . | |||
| . Next-Header = SRH (43) . | . Next-Header = SRH (43) . | |||
| . . | . . | |||
| +----------------------------------------------------------+ | +----------------------------------------------------------+ | |||
| | SRH as specified in RFC 8754 | | | SRH as specified in RFC 8754 | | |||
| . Next-Header = IPv6 . | . Next-Header = IPv6 . | |||
| skipping to change at page 9, line 29 ¶ | skipping to change at page 9, line 29 ¶ | |||
| . Destination IP Address = S-BFD Sender IPv6 Address . | . Destination IP Address = S-BFD Sender IPv6 Address . | |||
| . Next-Header = UDP . | . Next-Header = UDP . | |||
| . . | . . | |||
| +----------------------------------------------------------+ | +----------------------------------------------------------+ | |||
| | UDP Header | | | UDP Header | | |||
| . . | . . | |||
| +----------------------------------------------------------+ | +----------------------------------------------------------+ | |||
| | Payload | | | Payload | | |||
| . . | . . | |||
| +----------------------------------------------------------+ | +----------------------------------------------------------+ | |||
| Figure 5: Encapsulation format of S-BFD response packet | Figure 5: Encapsulation format of S-BFD response control packet | |||
| The Example of S-BFD response packet is as follows: | The Example of S-BFD response control packet is as follows: | |||
| D------------->C------------>B---------->A | D------------->C------------>B---------->A | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | SA=D's Ipv6Addr | | SA=D's Ipv6Addr | | | SA=D's Ipv6Addr | | SA=D's Ipv6Addr | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | DA=SID-D1 | | DA=A's ipv6Addr | | | DA=SID-D1 | | DA=A's ipv6Addr | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | SL=3 | P-Flag=0 | | SL=0 | P-Flag=0 | | | SL=3 | P-Flag=0 | | SL=0 | P-Flag=0 | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | A's ipv6Addr | | A's ipv6Addr | | | A's ipv6Addr | | A's ipv6Addr | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | SID-B1 | | SID-B1 | | | SID-B1 | | SID-B1 | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | SID-C1 | | SID-C1 | | | SID-C1 | | SID-C1 | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | SID-D1 | | SID-D1 | | | SID-D1 | | SID-D1 | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| | sbfd-payload | | sbfd-payload | | | sbfd-payload | | sbfd-payload | | |||
| | | | | | | | | | | |||
| +-----------------+ +-----------------+ | +-----------------+ +-----------------+ | |||
| Figure 6: Example of S-BFD response packet | Figure 6: Example of S-BFD response control packet | |||
| The S-BFD response packet will be forward along the path D->C->B->A. | The S-BFD response control packet will be forward along the path D- | |||
| In this way, the forward and reverse paths of S-BFD are guaranteed | >C->B->A. In this way, the forward and reverse paths of S-BFD are | |||
| to be consistent. | guaranteed to be consistent. | |||
| 5. IANA Considerations | 5. IANA Considerations | |||
| This document has no IANA actions. | This document has no IANA actions. | |||
| 6. Security Considerations | 6. Security Considerations | |||
| The security requirements and mechanisms described in [RFC8402] and | The security requirements and mechanisms described in [RFC8402] and | |||
| [RFC8754] also apply to this document. | [RFC8754] also apply to this document. | |||
| End of changes. 38 change blocks. | ||||
| 62 lines changed or deleted | 63 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||