CFM¶
-
class
ryu.lib.packet.cfm.
cc_message
(md_lv=0, version=0, rdi=0, interval=4, seq_num=0, mep_id=1, md_name_format=4, md_name_length=0, md_name=b'0', short_ma_name_format=2, short_ma_name_length=0, short_ma_name=b'1', tlvs=None)¶ CFM (IEEE Std 802.1ag-2007) Continuity Check Message (CCM) encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description md_lv Maintenance Domain Level. version The protocol version number. rdi RDI bit. interval CCM Interval.The default is 4 (1 frame/s) seq_num Sequence Number. mep_id Maintenance association End Point Identifier. md_name_format Maintenance Domain Name Format. The default is 4 (Character string) md_name_length Maintenance Domain Name Length. (0 means automatically-calculate when encoding.) md_name Maintenance Domain Name. short_ma_name_format Short MA Name Format. The default is 2 (Character string) short_ma_name_length Short MA Name Format Length. (0 means automatically-calculate when encoding.) short_ma_name Short MA Name. tlvs TLVs.
-
class
ryu.lib.packet.cfm.
cfm
(op=None)¶ CFM (Connectivity Fault Management) Protocol header class.
http://standards.ieee.org/getieee802/download/802.1ag-2007.pdf
OpCode Field range assignments
OpCode range CFM PDU or organization 0 Reserved for IEEE 802.1 1 Continuity Check Message (CCM) 2 Loopback Reply (LBR) 3 Loopback Message (LBM) 4 Linktrace Reply (LTR) 5 Linktrace Message (LTM) 06 - 31 Reserved for IEEE 802.1 32 - 63 Defined by ITU-T Y.1731 64 - 255 Reserved for IEEE 802.1. An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description op CFM PDU -
classmethod
parser
(buf)¶ Decode a protocol header.
This method is used only when decoding a packet.
Decode a protocol header at offset 0 in bytearray buf. Returns the following three objects.
- An object to describe the decoded header.
- A packet_base.PacketBase subclass appropriate for the rest of the packet. None when the rest of the packet should be considered as raw payload.
- The rest of packet.
-
serialize
(payload, prev)¶ Encode a protocol header.
This method is used only when encoding a packet.
Encode a protocol header. Returns a bytearray which contains the header.
payload is the rest of the packet which will immediately follow this header.
prev is a packet_base.PacketBase subclass for the outer protocol header. prev is None if the current header is the outer-most. For example, prev is ipv4 or ipv6 for tcp.serialize.
-
classmethod
-
class
ryu.lib.packet.cfm.
data_tlv
(length=0, data_value=b'')¶ CFM (IEEE Std 802.1ag-2007) Data TLV encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description length Length of Value field. (0 means automatically-calculate when encoding) data_value Bit pattern of any of n octets.(n = length)
-
class
ryu.lib.packet.cfm.
interface_status_tlv
(length=0, interface_status=1)¶ CFM (IEEE Std 802.1ag-2007) Interface Status TLV encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description length Length of Value field. (0 means automatically-calculate when encoding.) interface_status Interface Status.The default is 1 (isUp)
-
class
ryu.lib.packet.cfm.
link_trace_message
(md_lv=0, version=0, use_fdb_only=1, transaction_id=0, ttl=64, ltm_orig_addr='00:00:00:00:00:00', ltm_targ_addr='00:00:00:00:00:00', tlvs=None)¶ CFM (IEEE Std 802.1ag-2007) Linktrace Message (LTM) encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description md_lv Maintenance Domain Level. version The protocol version number. use_fdb_only UseFDBonly bit. transaction_id LTM Transaction Identifier. ttl LTM TTL. ltm_orig_addr Original MAC Address. ltm_targ_addr Target MAC Address. tlvs TLVs.
-
class
ryu.lib.packet.cfm.
link_trace_reply
(md_lv=0, version=0, use_fdb_only=1, fwd_yes=0, terminal_mep=1, transaction_id=0, ttl=64, relay_action=1, tlvs=None)¶ CFM (IEEE Std 802.1ag-2007) Linktrace Reply (LTR) encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description version The protocol version number. use_fdb_only UseFDBonly bit. fwd_yes FwdYes bit. terminal_mep TerminalMep bit. transaction_id LTR Transaction Identifier. ttl Reply TTL. relay_action Relay Action.The default is 1 (RlyHit) tlvs TLVs.
-
class
ryu.lib.packet.cfm.
loopback_message
(md_lv=0, version=0, transaction_id=0, tlvs=None)¶ CFM (IEEE Std 802.1ag-2007) Loopback Message (LBM) encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description md_lv Maintenance Domain Level. version The protocol version number. transaction_id Loopback Transaction Identifier. tlvs TLVs.
-
class
ryu.lib.packet.cfm.
loopback_reply
(md_lv=0, version=0, transaction_id=0, tlvs=None)¶ CFM (IEEE Std 802.1ag-2007) Loopback Reply (LBR) encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description md_lv Maintenance Domain Level. version The protocol version number. transaction_id Loopback Transaction Identifier. tlvs TLVs.
-
class
ryu.lib.packet.cfm.
ltm_egress_identifier_tlv
(length=0, egress_id_ui=0, egress_id_mac='00:00:00:00:00:00')¶ CFM (IEEE Std 802.1ag-2007) LTM EGRESS TLV encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description length Length of Value field. (0 means automatically-calculate when encoding.) egress_id_ui Egress Identifier of Unique ID. egress_id_mac Egress Identifier of MAC address.
-
class
ryu.lib.packet.cfm.
ltr_egress_identifier_tlv
(length=0, last_egress_id_ui=0, last_egress_id_mac='00:00:00:00:00:00', next_egress_id_ui=0, next_egress_id_mac='00:00:00:00:00:00')¶ CFM (IEEE Std 802.1ag-2007) LTR EGRESS TLV encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description length Length of Value field. (0 means automatically-calculate when encoding.) last_egress_id_ui Last Egress Identifier of Unique ID. last_egress_id_mac Last Egress Identifier of MAC address. next_egress_id_ui Next Egress Identifier of Unique ID. next_egress_id_mac Next Egress Identifier of MAC address.
-
class
ryu.lib.packet.cfm.
organization_specific_tlv
(length=0, oui=b'x00x00x00', subtype=0, value=b'')¶ - CFM (IEEE Std 802.1ag-2007) Organization Specific TLV
- encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description length Length of Value field. (0 means automatically-calculate when encoding.) oui Organizationally Unique Identifier. subtype Subtype. value Value.(optional)
-
class
ryu.lib.packet.cfm.
port_status_tlv
(length=0, port_status=2)¶ CFM (IEEE Std 802.1ag-2007) Port Status TLV encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description length Length of Value field. (0 means automatically-calculate when encoding.) port_status Port Status.The default is 1 (psUp)
-
class
ryu.lib.packet.cfm.
reply_egress_tlv
(length=0, action=1, mac_address='00:00:00:00:00:00', port_id_length=0, port_id_subtype=0, port_id=b'')¶ CFM (IEEE Std 802.1ag-2007) Reply Egress TLV encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description length Length of Value field. (0 means automatically-calculate when encoding.) action Egress Action.The default is 1 (EgrOK) mac_address Egress MAC Address. port_id_length Egress PortID Length. (0 means automatically-calculate when encoding.) port_id_subtype Egress PortID Subtype. port_id Egress PortID.
-
class
ryu.lib.packet.cfm.
reply_ingress_tlv
(length=0, action=1, mac_address='00:00:00:00:00:00', port_id_length=0, port_id_subtype=0, port_id=b'')¶ CFM (IEEE Std 802.1ag-2007) Reply Ingress TLV encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description length Length of Value field. (0 means automatically-calculate when encoding.) action Ingress Action.The default is 1 (IngOK) mac_address Ingress MAC Address. port_id_length Ingress PortID Length. (0 means automatically-calculate when encoding.) port_id_subtype Ingress PortID Subtype. port_id Ingress PortID.
-
class
ryu.lib.packet.cfm.
sender_id_tlv
(length=0, chassis_id_length=0, chassis_id_subtype=4, chassis_id=b'', ma_domain_length=0, ma_domain=b'', ma_length=0, ma=b'')¶ CFM (IEEE Std 802.1ag-2007) Sender ID TLV encoder/decoder class.
This is used with ryu.lib.packet.cfm.cfm.
An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.
Attribute Description length Length of Value field. (0 means automatically-calculate when encoding.) chassis_id_length Chassis ID Length. (0 means automatically-calculate when encoding.) chassis_id_subtype Chassis ID Subtype. The default is 4 (Mac Address) chassis_id Chassis ID. ma_domain_length Management Address Domain Length. (0 means automatically-calculate when encoding.) ma_domain Management Address Domain. ma_length Management Address Length. (0 means automatically-calculate when encoding.) ma Management Address.