one pdu per afi. add restart sub-tlv

This commit is contained in:
Randy Bush 2022-03-16 18:33:40 -07:00
parent 88eff1f1d7
commit cc0f1e662a

View file

@ -182,20 +182,20 @@
for complexity and hence pain.</t> for complexity and hence pain.</t>
<t>If there are multiple BGP sessions on a link, e.g., IPv4 and <t>If there are multiple BGP sessions on a link, e.g., IPv4 and
IPv6, then multiple sets of BGP sub-TLVs MAY BE exchanged within IPv6, then separate BGP ULPC PDUs should be sent, one for each
the BGP ULPC PDU or sepatate BGP ULPC PDUs may be sent, one for address family.</t>
each address family.</t>
<t>A peer receiving BGP ULPC PDUs has only one active BGP ULPC PDU <t>A peer receiving BGP ULPC PDUs has only one active BGP ULPC PDU
for an particular address family on a specific link at any point for an particular address family on a specific link at any point
in time; receipt of a new BGP ULPC PDU for a particular address in time; receipt of a new BGP ULPC PDU for a particular address
family replaces any previous one.</t> family replaces the data any previous one; but does not actually
affect the session unless there is a BGP Restart Attribute
sub-TLV.</t>
<t>If there are one or more open BGP sessions, receipt of a new <t>If there are one or more open BGP sessions, absent a BGP
BGP ULPC PDU SHOULD not affect these sessions and the PDU SHOULD Restart sub-TLV, receipt of a new BGP ULPC PDU SHOULD not affect
be discarded. If a peer wishes to replace an open BGP session, these sessions. The received data are stored for a future session
they MUST first close the running BGP session and then send a new restart.</t>
BGP ULPC PDU.</t>
<t>As a link may have multiple encapsulations and multiple <t>As a link may have multiple encapsulations and multiple
addresses for an IP encapsulation, which address of which addresses for an IP encapsulation, which address of which
@ -226,16 +226,51 @@
occurances of the same Attr Type, an Error ACK should be occurances of the same Attr Type, an Error ACK should be
returned.</t> returned.</t>
<section anchor="asn" title="BGP Restart">
<t>When all attributes in PDU have been processed, stop the
current BGP session and start a new one with the new attribute
set.</t>
<t>The four or 16 byte Dest IP tells both tha AFI and the IP
address of the BGP peer for the session to be restarted.<t>
<t>If there is no current BGP session to the specified peer,
start one.</t>
<!-- <!--
protocol "Attr Type = 1:8,Attr Len = 4:8,My ASN:32" protocol "Attr Type = 0:8,Attr Len = 4/16:8,Dest IP:128"
--> -->
<figure>
<artwork>
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Attr Type = 0 |Attr Len = 4/16| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| |
+ +
| |
+ +
| Dest IP |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
</figure>
</section>
<section anchor="asn" title="BGP ASN"> <section anchor="asn" title="BGP ASN">
<t>The four octet Autonomous System number MUST be specified. <t>The four octet Autonomous System number MUST be specified.
If the AS Number is less than 32 bits, it is padded with high If the AS Number is less than 32 bits, it is padded with high
order zeros.</t> order zeros.</t>
<!--
protocol "Attr Type = 1:8,Attr Len = 4:8,My ASN:32"
-->
<figure> <figure>
<artwork> <artwork>
0 1 2 3 0 1 2 3
@ -252,10 +287,6 @@
<section anchor="bgpv4" title="BGP IPv4 Address"> <section anchor="bgpv4" title="BGP IPv4 Address">
<!--
protocol "Attr Type = 2:8,Attr Len = 7:8,My IPv4 Peering Address:32,Prefix Len:8"
-->
<t>The BGP IPv4 Address sub-TLV announces the sender's four octet <t>The BGP IPv4 Address sub-TLV announces the sender's four octet
IPv4 BGP peering source address and one octet Prefix Lenth to be IPv4 BGP peering source address and one octet Prefix Lenth to be
used by the receiver. At least one of IPv4 or IPv6 BGP source used by the receiver. At least one of IPv4 or IPv6 BGP source
@ -265,6 +296,10 @@
the AFI/SAFIs to be transported over the peering, see <xref the AFI/SAFIs to be transported over the peering, see <xref
target="RFC4760"/>.</t> target="RFC4760"/>.</t>
<!--
protocol "Attr Type = 2:8,Attr Len = 7:8,My IPv4 Peering Address:32,Prefix Len:8"
-->
<figure> <figure>
<artwork> <artwork>
0 1 2 3 0 1 2 3
@ -291,7 +326,7 @@
target="RFC4760"/> .</t> target="RFC4760"/> .</t>
<!-- <!--
protocol "Attr Type = 3:8,Attr Len = 19:8,My IPv6 Peering Address:128,Prefix Len:8" protocol "Attr Type = 3:8,Attr Len = 17:8,My IPv6 Peering Address:128,Prefix Len:8"
--> -->
<figure> <figure>
@ -299,7 +334,7 @@
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Attr Type = 3 | Attr Len = 19 | | | Attr Type = 3 | Attr Len = 17 | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| | | |
+ + + +