#
---
_namespace: ieee1905_1

tlvTransmitterLinkMetric:
  _type: class
  _is_tlv_class : True
  type:
    _type: eTlvType
    _value_const: TLV_TRANSMITTER_LINK_METRIC
  length: uint16_t
  reporter_al_mac: sMacAddr
  neighbor_al_mac: sMacAddr
  interface_pair_info:
    _type: sInterfacePairInfo
    _length: []
    _comment: |
      The fields shall be repeated for each connected interface pair between the receiving
      905.1 AL and the neighbor 1905.1 AL.

eIEEE802_1BridgeFlag:
  _type: enum
  _enum_storage: uint8_t
  LINK_DOES_NOT_INCLUDE_BRIDGE: 0x00
  LINK_DOES_INCLUDE_ONE_OR_MORE_BRIDGE: 0x01

sLinkMetricInfo:
  _type: struct
  intfType: 
    _type: eMediaType
    _comment: The underlying network technology
  IEEE802_1BridgeFlag:
    _type: eIEEE802_1BridgeFlag
    _comment: Indicates whether or not the 1905.1 link includes one or more IEEE 802.1 bridges
  packet_errors: uint32_t
  transmitted_packets:
    _type: uint32_t
    _comment: Estimated number of packets transmitted by the Transmitter of the link on the same measurement period used to estimate packetErrors.
  mac_throughput_capacity:
    _type: uint16_t
    _comment: The maximum MAC throughput of the Link estimated at the transmitter and expressed in Mb/s.
  link_availability:
    _type: uint16_t
    _comment: The estimated average percentage of time that the link is available for data transmissions.
  phy_rate:
    _type: uint16_t
    _value: 0xFFFF
    _comment: |
      If the media type of the link is IEEE 802.3, then IEEE 1901 or MoCA 1.1 (8 MSB bits value of media type as defined in Table 6-12 is 0, 2, or 3).
      This value is the PHY rate estimated at the transmitter of the link expressed in Mb/s; otherwise, it is set to 0xFFFF.

sInterfacePairInfo:
  _type: struct
  rc_interface_mac: sMacAddr
  neighbor_interface_mac: sMacAddr
  link_metric_info: sLinkMetricInfo
