One document matched: draft-bryant-mpls-tp-ach-tlv-02.xml
<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc symrefs="no"?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc toc="yes"?>
<rfc category="std" docName="draft-bryant-mpls-tp-ach-tlv-02"
ipr="trust200902">
<front>
<title abbrev="ACH TLV">Definition of ACH TLV Structure</title>
<author fullname="Sami Boutros" initials="S" surname="Boutros">
<organization>Cisco Systems</organization>
<address>
<postal>
<street></street>
<city></city>
<region></region>
<code></code>
<country></country>
</postal>
<phone></phone>
<facsimile></facsimile>
<email>sboutros@cisco.com</email>
<uri></uri>
</address>
</author>
<author fullname="Stewart Bryant" initials="S" role="editor"
surname="Bryant">
<organization>Cisco Systems</organization>
<address>
<postal>
<street></street>
<city></city>
<region></region>
<code></code>
<country></country>
</postal>
<phone></phone>
<facsimile></facsimile>
<email>stbryant@cisco.com</email>
<uri></uri>
</address>
</author>
<author fullname="Siva Sivabalan" initials="S" surname="Sivabalan">
<organization>Cisco Systems</organization>
<address>
<postal>
<street></street>
<city></city>
<region></region>
<code></code>
<country></country>
</postal>
<phone></phone>
<facsimile></facsimile>
<email>msiva@cisco.com</email>
<uri></uri>
</address>
</author>
<author fullname="George Swallow" initials="G " surname="Swallow">
<organization>Cisco Systems</organization>
<address>
<postal>
<street></street>
<city></city>
<region></region>
<code></code>
<country></country>
</postal>
<phone></phone>
<facsimile></facsimile>
<email>swallow@cisco.com</email>
<uri></uri>
</address>
</author>
<author fullname="David Ward" initials="D" surname="Ward">
<organization>Cisco Systems</organization>
<address>
<postal>
<street></street>
<city></city>
<region></region>
<code></code>
<country></country>
</postal>
<phone></phone>
<facsimile></facsimile>
<email>dward@cisco.com</email>
<uri></uri>
</address>
</author>
<date year="2009" />
<area>Internet</area>
<workgroup>MPLS</workgroup>
<keyword></keyword>
<keyword></keyword>
<keyword>MPLS</keyword>
<keyword>Internet-Draft</keyword>
<abstract>
<t>In some application of the associated channel header (ACH), it is
necessary to have the ability to include a set of TLVs to provide
additional context information for the ACH payload. This document
defines a number of TLV types.</t>
<t>NOTE the family of Address Types is known to be incomplete. The
authors request that members of the MPLS-TP community provide details of
their required address formats in the form of text for the creation of
an additional sections similar to <xref target="IPv4A"></xref>.</t>
<t>NOTE other TLV types will be added in further revisions of this
document. The authors request that members if the MPLS-TP community
requiring new TLVs to complete there MPLS-TP specifications provide
details of their required TLV in the form of text for the creation of
additional sections similar to <xref target="SAs"></xref>.</t>
</abstract>
<note title="Requirements Language">
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in <xref
target="RFC2119">RFC2119</xref>.</t>
</note>
</front>
<middle>
<section title="Introduction">
<t>The MPLS generic associated channel header specification <xref
target="I-D.ietf-mpls-tp-gach-gal"></xref> (GACH) describes a TLV
structure that is used to provide additional context information for the
ACH payload. This document defines a number of TLVs that are required by
the MPLS-TP design <xref target="I-D.ietf-mpls-tp-requirements"></xref>,
<xref target="I-D.ietf-mpls-tp-framework"></xref>. One use of these TLVs
to identify the source and/or intended destination of the ACH payload
for use in transport networks. However the use of this construct is not
limited to providing addressing information nor is the applicability
restricted to transport network applications.</t>
<t>Additionally TLVs from defined in this document may be used as
sub-TLVs in the construction of compound TLV structures.</t>
</section>
<section title="ACH TLV Object Definitions">
<t>This section provides the definition for a number of ACH TLV objects.
In each case the length in the TLV header is the length of just the
value component.</t>
<section title="The Null TLV Object">
<t>The Null TLV provides an OPTIONAL mechanism of restoring 32bit
alignment of the following element in the packet and also provides an
OPTIONAL mechanism to reserve space in the packet to be used by TLV
objects that will be written by LSR that perform some operation on the
packet at a later time. For security reasons the value must be
zero.</t>
<t><figure anchor="NullTLV" title="Null TLV Object">
<preamble></preamble>
<artwork><![CDATA[ 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AchTlvType = 0 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Value = 0 ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
<postamble></postamble>
</figure></t>
</section>
<section anchor="SAs" title="Source Address ">
<t>This TLV specifies the source address (SA) of an ACH packet.</t>
<t>Where the packet is associated with a maintenance request/response
operation it refers to the requester of the operation, i.e. It is the
address of the Maintenance End Point that initiated the operation
being either requested, or being responded to.</t>
<t>The address is an ACH address as described in <xref
target="ACHadd"></xref>.</t>
<t><figure anchor="SA" title="Source Address">
<preamble></preamble>
<artwork><![CDATA[ 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AchTlvType = 1 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Address |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
<postamble></postamble>
</figure></t>
</section>
<section title="Destination Address">
<t>This TLV specifies the destination address (DA) of an ACH
packet.</t>
<t>Where the packet is associated with a maintenance request/response
operation it refers to the target of the operation, i.e. It is the
address of the Maintenance End Point or Maintenance Intermediate Point
that has been requested to execute the operation being either
requested, or being responded to.</t>
<t>The address is an ACH address as described in <xref
target="ACHadd"></xref>.</t>
<t><figure anchor="DA" title="Destination Address">
<preamble></preamble>
<artwork><![CDATA[ 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AchTlvType = 2 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Address |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
<postamble></postamble>
</figure></t>
</section>
<section title="Label Switched Path Identifier (LSPI)">
<t>This TLV is used to identify a Label Switched Path (LSP).</t>
<figure anchor="LSPID" title="Label Switched Path Identifier">
<preamble></preamble>
<artwork><![CDATA[ 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AchTlvType = 3 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ TBD |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
<postamble></postamble>
</figure>
<t>This will draw on the contents of <xref target="RFC4379"></xref>.
Further material will be added in a future version of this
document.</t>
</section>
<section title="Pseudowire Identifier (PWI)">
<t>This TLV is used to identify a pseudowire.</t>
<figure anchor="PWID" title="Pseudowire Identifier">
<preamble></preamble>
<artwork><![CDATA[ 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AchTlvType = 4 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ TBD |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
<postamble></postamble>
</figure>
<t>This will draw on the contents of <xref target="RFC4379"></xref>.
Further material will be added in a future version of this
document.</t>
</section>
</section>
<section anchor="ACHadd" title="ACH Addresses">
<t>This section is incomplete. Definitions of other address types will
be provided in a future version of this document. The authors would like
to take input from other members of the MPLS-TP design community as to
the required additional addressing types and the correct way to
represent them in this framework.</t>
<t>Addresses are expressed in the following TLV format. This
representation allows ACH TLVs to be specified in a format that is
independent of the address that are to be used in the TV instance.
Although many address types are of fixed length, and some which are not
incorporate a length indicator, this may not always be the case and
hence a length field is incorporated in the address TLV.</t>
<t><figure>
<artwork><![CDATA[ 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AddType | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Address |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork>
</figure></t>
<section anchor="IPv4A" title="IPv4 Address">
<t><figure>
<artwork><![CDATA[ 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AddType = 1 | Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork>
</figure></t>
<t>This address TLV contains an IPv4 address as defined in <xref
target="RFC0791"></xref>.</t>
</section>
<section title="IPv6 Address">
<t><figure>
<artwork><![CDATA[ 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AddType = 2 | Length = 16 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ IPv6 Address |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork>
</figure></t>
<t>This address TLV contains an IPv6 address as defined in <xref
target="RFC2460"></xref></t>
</section>
</section>
<section title="ACH Protocol ID TLV">
<t>The ACH Protocol ID TLV is used to identify the payload protocol type
for a message carried on the G-ACh. The TLV is OPTIONAL in the G-ACh
header, but MUST be present for the Data Communications Network (DCN)
<xref target="I-D.ietf-mpls-tp-gach-dcn"></xref> .</t>
<t><figure>
<artwork><![CDATA[ 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AchTLVType = 5 | Length = 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork>
</figure></t>
<t>The value of the Protocol Identifier field is taken from PPP DLL
Protocol Number Registry <xref target="RFC1661"></xref>, <xref
target="RFC3818"></xref>.</t>
</section>
<section title="Security Considerations">
<t>This specification defines a mechanism to identify a set of protocol
parameters. The necessary security considerations will be described in
the definition of the protocols that uses these parameters.</t>
</section>
<section title="IANA Considerations">
<t>IANA is requested to create two new registries in the pseudowire name
spaces: the ACH TLV Registry and the ACH Address Type Registry.</t>
<t>The ACH TLV Registry should be initialized with the following
entries. The allocation policy for this registry is IETF consensus.</t>
<figure>
<artwork><![CDATA[
Name Type Length Description Reference
(octets)
Null 0 3 Null TLV This Draft
SA 1 var Source Addr This Draft
DA 2 var Dest Addr This Draft
LSPI 3 var LSP Identifier This Draft
PWI 4 var PW Identifier This Draft
PID 5 2 ACH Protocol ID This Draft
]]></artwork>
<postamble></postamble>
</figure>
<t></t>
<t>The ACH Address Type Registry should be initialized with the
following entries. The allocation policy for this registry is IETF
consensus.</t>
<figure>
<artwork><![CDATA[
Name Type Length Description Reference
(octets)
Null 0 Reserved
IPv4 1 4 IPv4 Address This Draft
IPv6 2 16 IPv6 Address This Draft
]]></artwork>
<postamble></postamble>
</figure>
</section>
</middle>
<back>
<references title="Normative References">
<?rfc include='reference.RFC.2119'?>
<?rfc include='reference.RFC.0791'?>
<?rfc include='reference.RFC.2460'?>
<?rfc include='reference.RFC.4379'?>
<?rfc include='reference.RFC.1661'?>
<?rfc include='reference.RFC.3818'?>
</references>
<references title="Informative References">
<?rfc include='reference.I-D.ietf-mpls-tp-gach-gal'?>
<?rfc include='reference.I-D.ietf-mpls-tp-requirements'?>
<?rfc include='reference.I-D.ietf-mpls-tp-framework'?>
<?rfc include='reference.I-D.ietf-mpls-tp-gach-dcn'?>
</references>
</back>
</rfc>
| PAFTECH AB 2003-2026 | 2026-04-22 22:39:13 |