< draft-ietf-trill-address-flush-01.txt   draft-ietf-trill-address-flush-02.txt >
TRILL Working Group Weiguo Hao TRILL Working Group Weiguo Hao
INTERNET-DRAFT Donald Eastlake INTERNET-DRAFT Donald Eastlake
Intended status: Proposed Standard Yizhou Li Intended status: Proposed Standard Yizhou Li
Huawei Huawei
Mohammed Umair Mohammed Umair
IPinfusion IPinfusion
Expires: June 5, 2017 December 6, 2016 Expires: July 26, 2017 January 26, 2017
TRILL: Address Flush Message TRILL: Address Flush Message
<draft-ietf-trill-address-flush-01.txt> <draft-ietf-trill-address-flush-02.txt>
Abstract Abstract
The TRILL (TRansparent Interconnection of Lots of Links) protocol, by The TRILL (TRansparent Interconnection of Lots of Links) protocol, by
default, learns end station addresses from observing the data plane. default, learns end station addresses from observing the data plane.
In particular, it learns local MAC addresses and edge switch port of In particular, it learns local MAC addresses and edge switch port of
attachment from the receipt of local data frames and learns remote attachment from the receipt of local data frames and learns remote
MAC addresses and edge switch of attachment from the decapsulation of MAC addresses and edge switch of attachment from the decapsulation of
remotely sourced TRILL Data packets. remotely sourced TRILL Data packets.
skipping to change at page 9, line 39 skipping to change at page 9, line 39
in Section 2.1. in Section 2.1.
TLVs: If the byte immediately before the TLVs field, which is the TLVs: If the byte immediately before the TLVs field, which is the
byte labeled "K-VLBs" in Figure 2, is zero, as shown in Figure byte labeled "K-VLBs" in Figure 2, is zero, as shown in Figure
3, the remainder of the message consists of TLVs encoded as 3, the remainder of the message consists of TLVs encoded as
shown in Figure 4. shown in Figure 4.
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
| Type | Length | Value | Type | Length | Value
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Figure 4. Type, Length, Value Figure 4. Type, Length, Value
Type: The 8-bit TLV type as shown in the table below. See Type: The 8 bit TLV type as shown in the table below. See
subsections of this Section 2.2 for details on each type subsections of this Section 2.2 for details on each type
assigned below. If the type is reserved or not known by a assigned below. If the type is reserved or not known by a
receiving RBridge, that receiving RBridge ignores the value and receiving RBridge, that receiving RBridge ignores the value and
can easily skip to the next TLV by use of the Length byte. can easily skip to the next TLV by use of the Length byte.
There is no provision for a list of VLAN IDs TLV as there are There is no provision for a list of VLAN IDs TLV as there are
few enough of them that an arbitrary subset of VLAN IDs can be few enough of them that an arbitrary subset of VLAN IDs can be
represented as a bit map. represented as a bit map.
INTERNET-DRAFT Address Flush Message INTERNET-DRAFT Address Flush Message
skipping to change at page 10, line 33 skipping to change at page 10, line 33
Length: The 8-bit unsigned integer length of the remaining Length: The 8-bit unsigned integer length of the remaining
information in the TLV after the length byte. The length MUST information in the TLV after the length byte. The length MUST
NOT imply that the value extends beyond the end of RBridge NOT imply that the value extends beyond the end of RBridge
Channel Protocol Specific Payload area. If it does, the Address Channel Protocol Specific Payload area. If it does, the Address
Flush message is corrupt and MUST be ignored. Flush message is corrupt and MUST be ignored.
Value: Depends on the TLV type. Value: Depends on the TLV type.
The TLVs in an extensible Address Flush message are parsed with types The TLVs in an extensible Address Flush message are parsed with types
unknown by the receiving RBridge ignored. unknown by the receiving RBridge ignored.
All RBridges implementing the Address Flush RBridge Channel
message MUST implement types 1 and 2, the VLAN types, and type 6,
which indicates addresses are to be flushed for all Data Labels.
RBridges that implement FGL ingress/egress MUST implement types 3,
4, and 5, the FGL types. (An RBridge that is merely FGL safe
[RFC7172], but cannot egress FGL TRILL Data packets, SHOULD ignore
the FGL types as it will not learn any FGL scoped MAC addresses from
the data plane.)
RBridges SHOULD implement types 7 and 8 so that specific MAC
addresses can be flushed. If they do not, the effect will be to flush
all MAC addresses for the indicated Data Labels, which will be
inefficient as those not intended to be flushed will have to be re-
learned.
The parsing of the TLVs by a receiving RBridge results in three items The processing requirements based on support for Address Flush
of information: a flag indicating whether one or more type 6 TLVs Channel message plus the additional types:
(All Data Labels) were encountered; a set of Data Labels and blocks
of data labels compiled from VLAN and/or FGL specifying TLVs in the Basic RBridges functionality: All RBridges supporting the Address
message; and, if the MAC address TLV types are implemented, a set of Flush Channel message MUST implement type 1 (Blocks of VLANs),
MAC addresses and blocks of MAC addresses compiled from MAC address type 2 (Bit map of VLANs), and type 6 (All Data labels). Type 6
specifying TLVs in the message. If the set of MAC addresses and indicates that all addresses are to be flushed for all data labels.
blocks of MAC address is null, the address flush message applies to
all MAC addresses. If the flag indicating the presence of an All Data Optional RBridges functionality: RBridges SHOULD implement types 7
Labels TLV is true, then the address flush message applies to all and type 8 so that specific MAC addresses can be can be flushed.
If a set of RBridges does not implement types 7 and 8, the flush
will be inefficient as those not intent to be flashed will have to
be relearned.
FGL functionality : All RBridges implementing the FGL ingress/egress
support and the Address Flush Channel message MUST implement
type 3 (Blocks of FGLs), type 4 (Lists of FGLs),
and type 5 (Bit Map of FGL). An RBridge that is merely FGL
safe [RFC7172], but cannot egress TRILL data packets, SHOULD ignore
the FGL types with the Address Flush Channel message as it will not
learn any MAC addresses with FGL scope from the MAC data plane.
The parsing of the TLVs in an Rbridge Channel Message in the Address
Flush Protocol Specific TLVS by a receiving bridge results in three
items:
INTERNET-DRAFT Address Flush Message INTERNET-DRAFT Address Flush Message
Data Labels and the set of Data Labels and block of Data labels 1) A flag indicating whether one or more types
specified has no effect. If the flag indicating the presence of an 6 TLVs (All Data Labels) were encountered.
All Data Labels TLV is false, then the address flush messages applies 2) A set of Data labels and blocks of data labels compiled from
to the set of Data Labels and blocks of Data Labels; if that set is VLAN TLVs (types 1 and 2), and/or FGL TLVs (types 3, 4, and 5).
null, the address flush message does nothing. 3) If a MAC TLVs types (type 6 and 7) are implemented, a set of
MAC addresses and Blocks of MAC addresses from the MAC TLVs.
For the following flag settings, the processing is as follows:
a) If the set of MAC addresses and Block of MAC address is null
(item 3 above) then Address Flush applies to all messages.
b) If the All-Data-label-found flag (item 1 above) is true,
then the address flush message applies to all data labels.
The set of Data label and block of data labels (item 2 above)
does not have any effect.
c) If the All-Data-label-found flag (item 1 above) is false, then
the Address Flush message applies to the set of
Data labels (see item 2 above) found in VLAn
TLVs (types 1 and 2), and/or FGLs TLVS (types 3, 4, and 5).
If the set of Data Labels (see item 2 above) is null, the
Address Flush message does nothing.
2.2.1 Blocks of VLANs 2.2.1 Blocks of VLANs
If the TLV Type is 1, the value is a list of blocks of VLANs as If the TLV Type is 1, the value is a list of blocks of VLANs as
follows: follows:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 1 | Length | | Type = 1 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RESV | Start.VLAN 1 | RESV | End.VLAN 1 | | RESV | Start.VLAN 1 | RESV | End.VLAN 1 |
skipping to change at page 11, line 43 skipping to change at page 12, line 4
If the TLV Type is 2, the value is a bit map of VLANs as follows: If the TLV Type is 2, the value is a bit map of VLANs as follows:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 2 | Length | | Type = 2 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
| RESV | Start.VLAN | Bits... | RESV | Start.VLAN | Bits...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
The value portion of the TLV begins with two bytes having the 12-bit The value portion of the TLV begins with two bytes having the 12-bit
INTERNET-DRAFT Address Flush Message
starting VLAN ID right justified (the top 4 bits are as specified in starting VLAN ID right justified (the top 4 bits are as specified in
Section 2.1 RESV). This is followed by bytes with one bit per VLAN Section 2.1 RESV). This is followed by bytes with one bit per VLAN
ID. The high order bit of the first byte is for VLAN N, the next to ID. The high order bit of the first byte is for VLAN N, the next to
the highest order bit is for VLAN N+1, the low order bit of the first the highest order bit is for VLAN N+1, the low order bit of the first
byte is for VLAN N+7, the high order bit of the second byte, if there byte is for VLAN N+7, the high order bit of the second byte, if there
is a second byte, is for VLAN N+8, and so on. If that bit is a one, is a second byte, is for VLAN N+8, and so on. If that bit is a one,
the Address Flush message applies to that VLAN. If that bit is a the Address Flush message applies to that VLAN. If that bit is a
zero, then addresses that have been learned in that VLAN are not zero, then addresses that have been learned in that VLAN are not
flushed. Note that Length MUST be at least 2. If Length is 0 or 1 flushed. Note that Length MUST be at least 2. If Length is 0 or 1
the TLV is corrupt and the Address Flush message MUST be ignored. the TLV is corrupt and the Address Flush message MUST be ignored.
INTERNET-DRAFT Address Flush Message
VLAN IDs do not wrap around. If there are enough bytes so that some VLAN IDs do not wrap around. If there are enough bytes so that some
bits correspond to VLAN ID 0xFFF or higher, those bits are ignored bits correspond to VLAN ID 0xFFF or higher, those bits are ignored
but the message is still processed for bits corresponding to valid but the message is still processed for bits corresponding to valid
VLAN IDs. VLAN IDs.
2.2.3 Blocks of FGLs 2.2.3 Blocks of FGLs
If the TLV Type is 3, the value is a list of blocks of FGLs as If the TLV Type is 3, the value is a list of blocks of FGLs as
follows: follows:
 End of changes. 9 change blocks. 
34 lines changed or deleted 52 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/