RFC 3919
Remote Network Monitoring (RMON) Protocol Identifiers for IPv6 and Multi Protocol Label Switching (MPLS)
Remote Network Monitoring (RMON) Protocol Identifiers for IPv6 and Multi Protocol Label Switching (MPLS) π
Okay bestie, here's the header tea π«:
- Network Working Group π«Ά
- Written by E. Stephan (France Telecom R&D) and J. Palet (Consulintel) β¨
- Category: Informational π
- Date: October 2004 πΈ
- Obsoletes or updates: the header doesn't list any RFCs it obsoletes or updates, but it builds on RFC 2895 and RFC 2896 π¦
Status of This Memo β¨
Quick vibe check: this memo gives info to the Internet community. It is not an Internet standard of any kind π Distribution of this memo is unlimited.
Copyright Notice π
Copyright (C) The Internet Society (2004).
Abstract π
Okay so this memo adds more protocol identifier examples on top of the ones in RFC 2896, and they're for IP version 6 and MPLS π These can be used to make valid protocolDirTable INDEX encodings, as defined by the Remote Network Monitoring MIB (Management Information Base) Version 2 [RFC2021] and the RMON Protocol Identifier Reference [RFC2895].
It also adds more protocol identifier macros for well-known protocols, again on top of RFC 2896 π§ A conformant implementation of the RMON-2 MIB [RFC2021] can work without these identifiers, so this document isn't a formal IETF standard. It's published to encourage better interoperability between RMON-2 agent implementations by sharing RMON-related IPv6 and MPLS protocol info π«Ά
Table of Contents ποΈ
1. The Internet-Standard Management Framework . . . . . . . . . . 2
2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
3. Relationship to the Remote Network Monitoring MIB. . . . . . . 2
4. MPLS layer protocol identifiers . . . . . . . . . . . . . . . 2
5. IPv6 Protocols . . . . . . . . . . . . . . . . . . . . . . . . 3
6. Security Considerations . . . . . . . . . . . . . . . . . . . 5
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 5
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6
8.1. Normative References . . . . . . . . . . . . . . . . . . 6
8.2. Informative References . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 7
Full Copyright Statement. . . . . . . . . . . .. . . . . . . . 8
1. The Internet-Standard Management Framework πΈ
Okay so if you want the full lore on the Internet-Standard Management Framework, go check section 7 of RFC 3410 [RFC3410] π Managed objects live in a virtual information store called the Management Information Base, or MIB. MIB objects are usually accessed through the Simple Network Management Protocol (SNMP). Objects in the MIB are defined with the mechanisms in the Structure of Management Information (SMI). This memo specifies a MIB module that's compliant with SMIv2, which is described in STD 58, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 [RFC2580] β¨
2. Overview π¦
This memo defines basic protocol identifiers for IP version 6 and MPLS protocols π
The "Remote Network Monitoring MIB Protocol Identifier Macros" [RFC2896] defines various protocol identifiers. The syntax of the protocol identifier descriptor is defined in the RMON Protocol Identifier Reference [RFC2895]. Make sure you're familiar with both of these docs, it's giving homework energy π
The intent isn't to port every protocol identifier from RFC 2895 and RFC 2896 over to IP version 6. Instead, it defines protocol identifiers for IP version 6 protocols and for the MPLS protocol π
3. Relationship to the Remote Network Monitoring MIB π§
RMON MIB implementations use protocol identifiers to describe unambiguous capabilities in protocolDirTable entries π
4. MPLS layer protocol identifiers π
Okay this section defines MPLS protocol identifiers with unambiguous names, so MPLS Unicast and MPLS Multicast are never confused π
MPLS unicast
Here's the unicast one, mplsu π
-- MPLS unicast
mplsu PROTOCOL-IDENTIFIER
PARAMETERS { }
ATTRIBUTES { }
DESCRIPTION
"MPLS Label Stack Encoding."
CHILDREN
"Children of MPLS are not systematically identifiable. "
REFERENCE
"RFC 3032, MPLS Label Stack Encoding [RFC3032]."
::= {
ether2 0x8847, -- RFC 3032 section 5
snap 0x8847,
802-1Q 0x8847,
ppp 0x0281, -- RFC 3032 section 4.3
}
MPLS multicast
And the multicast twin, mplsm π¦ Same vibes, different numbers β¨
-- MPLS multicast
mplsm PROTOCOL-IDENTIFIER
PARAMETERS { }
ATTRIBUTES { }
DESCRIPTION
"MPLS Label Stack Encoding."
CHILDREN
"Children of MPLS are not systematically identifiable."
REFERENCE
"RFC 3032, MPLS Label Stack Encoding [RFC3032]."
::= {
ether2 0x8848, -- RFC 3032 section 5
snap 0x8848,
802-1Q 0x8848,
ppp 0x0283, -- RFC 3032 section 4.3
}
5. IPv6 Protocols π
Now the main event, the IPv6 identifiers ππ₯
ip6
ip6 is the identifier for IPv6 itself, which is defined in RFC 2460 [RFC2460]. Its children are picked by the Protocol field (one octet) from the PROTOCOL NUMBERS table in the Assigned Numbers Document. The Protocol value gets encoded as [ 0.0.0.a ], where a is the protocol field, and the children are named ip6 a. Here's an example: a protocolDirID-fragment value of 0.0.0.1.0.0.0.41.0.0.0.58 means IPv6-ICMP, so ether2.ip6.icmp6 π
The address format is 16 octets of the IPv6 address in network byte order. Every IP packet carries two addresses, a source and a destination π«Ά
Heads up:ether2.ip.ipip6.udpandether2.ip6.udpare two different protocolDirIDs in the protocolDirTable, so the agent assigns two different local protocol index values to them. Here are the full INDEX values as examples.
ip6 PROTOCOL-IDENTIFIER
PARAMETERS {}
ATTRIBUTES {}
DESCRIPTION
"The protocol identifiers for the Internet Protocol, Version 6
[RFC2460]."
CHILDREN
"Children of 'ip6' are selected by the value in the Protocol
field (one octet), as defined in the PROTOCOL NUMBERS table
within the Assigned Numbers Document.
The value of the Protocol field is encoded in an octet string as
[ 0.0.0.a ], where 'a' is the protocol field.
Children of 'ip6' are encoded as [ 0.0.0.a ], and named as 'ip6
a' where 'a' is the protocol field value. For example, a
protocolDirID-fragment value of:
0.0.0.1.0.0.0.41.0.0.0.58
defines an encapsulation of IPv6-ICMP (ether2.ip6.icmp6)"
ADDRESS-FORMAT
"16 octets of the IPv6 address, in network byte order. Each ip
packet contains two addresses, the source address and the
destination address."
DECODING
"Note: ether2.ip.ipip6.udp is a different protocolDirID than
ether2.ip6.udp, as identified in the protocolDirTable. As such,
two different local protocol index values will be assigned by
the agent. E.g., (full INDEX values shown):
ether2.ip.ipip6.udp =
16.0.0.0.1.0.0.8.0.0.0.0.41.0.0.0.17.4.0.0.0.0
ether2.ip6.udp =
12.0.0.0.1.0.0.0.41.0.0.0.17.3.0.0.0 "
REFERENCE
"RFC 2460 [RFC2460] defines the Internet Protocol version 6; The
following URL defines the authoritative repository for the
PROTOCOL NUMBERS Table:
http://www.iana.org/assignments/protocol-numbers"
::= {
ether2 0x86DD,
802-1Q 0x86DD,
mplsu 41,
mplsm 41
}
ipip6
ipip6 is IPv6 in IPv4 tunneling π Its children are picked and encoded the same way as ip6 children, and its address format is the same as the IPv6 address format π§ The same DECODING note from above applies here, since ether2.ip.ipip6.udp and ether2.ip6.udp are still different protocolDirIDs. The reference is RFC 2473 [RFC2473], which defines Generic Packet Tunneling in IPv6 Specification π
ipip6 PROTOCOL-IDENTIFIER
PARAMETERS { }
ATTRIBUTES {
}
DESCRIPTION
"IPv6 in IPv4 Tunneling"
CHILDREN
"Children of 'ipip6' are selected and encoded in the same manner
as children of ip6."
ADDRESS-FORMAT
"The 'ipip6' address format is the same as the IPv6 address
format."
DECODING
"Note: ether2.ip.ipip6.udp is a different protocolDirID than
ether2.ip6.udp, as identified in the protocolDirTable. As such,
two different local protocol index values will be assigned by
the agent. E.g., (full INDEX values shown):
ether2.ip.ipip6.udp =
16.0.0.0.1.0.0.8.0.0.0.0.41.0.0.0.17.4.0.0.0.0
ether2.ip6.udp =
12.0.0.0.1.0.0.0.41.0.0.0.17.3.0.0.0 "
REFERENCE
"RFC 2473 [RFC2473] defines Generic Packet Tunneling in IPv6
Specification."
::= {
ip 41
}
icmp6
Last but not least, icmp6, which is the Internet Message Control Protocol for IP Version 6 π Its reference is RFC 2463 [RFC2463], the Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification πΈ It sits under ip6 with value 58, and under ipip6 with value 58 too β¨
icmp6 PROTOCOL-IDENTIFIER
PARAMETERS { }
ATTRIBUTES { }
DESCRIPTION
"Internet Message Control Protocol for IP Version 6"
REFERENCE
"RFC 2463 [RFC2463] Internet Control Message Protocol (ICMPv6)
for the Internet Protocol Version 6 (IPv6) Specification "
::= {
ip6 58,
ipip6 58
}
Intellectual Property β¨
okay bestie, this part is all about who owns what π The IETF is basically saying "we are NOT picking a side on patents or other rights that might cover the tech in this doc" π It also doesn't claim it went hunting for any of those rights, so no promises there β¨
If you want the details on how the IETF handles rights in its documents, check out BCP 78 and BCP 79 π
Got a disclosure or a license assurance? Those live on the IETF's online IPR repository at http://www.ietf.org/ipr π Same vibe if someone tried to get a general license or permission so implementers could use the proprietary stuff. That info can be requested from the IETF too π«Ά
And if you spot any copyright, patents, patent applications, or other proprietary rights that might cover technology needed to implement this standard, the IETF wants you to tell them! Send it to ietf-ipr@ietf.org π¦ That's the move, periodt π₯
Acknowledgement β¨
Last one! The RFC Editor function is funded right now by the Internet Society π Shoutout to them, they keep the lights on for the whole RFC system π
π¦ where this page comes from
- ietf: rfc3919 2004-10
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms