The Base Network Model defined in this document is shown in Figure 2.
Figure 2 – Overview of Base Network Model
This OPC UA Interface defines the basis of an IETF network interface. The IIetfBaseNetworkInterfaceType is formally defined in Table 1.
Table 1 – IIetfBaseNetworkInterfaceType definition
Attribute |
Value |
||||
BrowseName |
IIetfBaseNetworkInterfaceType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
AdminStatus |
InterfaceAdminStatus |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
OperStatus |
InterfaceOperStatus |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
PhysAddress |
String |
BaseDataVariableType |
Optional |
HasComponent |
Variable |
Speed |
UInt64 |
AnalogUnitType |
Mandatory |
Conformance Units |
|||||
BNM Ethernet Base Info |
AdminStatus of DataType InterfaceAdminStatus specifies the desired state of the network interface. This Variable has the same read semantics as ifAdminStatus (see IETF RFC 2863: The Interfaces Group MIB - ifAdminStatus). The InterfaceAdminStatus Enumeration is defined in 5.3.1.2.
OperStatus of DataType InterfaceOperStatus specifies the current operational state of the network interface. This Variable has the same semantics as ifOperStatus (see IETF RFC 2863: The Interfaces Group MIB - ifOperStatus). The InterfaceOperStatus Enumeration is defined in 5.3.1.3.
PhysAddress of DataType String specifies the network interface's address at its protocol sub-layer. For example, for an 802.x network interface, this parameter normally contains a Media Access Control (MAC) address. The network interface's media-specific modules must define the bit and byte ordering and the format of the value of this object. For network interfaces that do not have such an address (e.g., a serial line), this node is not present (see IETF RFC 2863: The Interfaces Group MIB - ifPhysAddress).
Speed of DataType UInt64 specifies an estimate of the network interface's current bandwidth in bits per second. For network interfaces that do not vary in bandwidth or for those where no accurate estimation can be made, this value should contain the nominal bandwidth (see IETF RFC 2863: ifSpeed, ifHighSpeed).
The component Variables of the IIetfBaseNetworkInterfaceType have the Attribute values defined in Table 2.
Table 2 – IIetfBaseNetworkInterfaceType Attribute values for child Nodes
Source Path |
Value Attribute |
Description Attribute |
||
|
NamespaceUri: http://www.opcfoundation.org/UA/units/un/cefact UnitId: 4337968DisplayName: bit/sDescription: bit per second |
- |
This OPC UA Interface defines capabilities of an Ethernet-based port. The IIeeeBaseEthernetPortType is formally defined in Table 3.
Table 3 – IIeeeBaseEthernetPortType definition
Attribute |
Value |
||||
BrowseName |
IIeeeBaseEthernetPortType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
Speed |
UInt64 |
AnalogUnitType |
Mandatory |
HasComponent |
Variable |
Duplex |
Duplex |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
MaxFrameLength |
UInt16 |
BaseDataVariableType |
Mandatory |
Conformance Units |
|||||
BNM Ethernet Base Info |
Speed of DataType UInt64 specifies the configured, negotiated, or actual speed of an Ethernet port in entities of 1 Mb/s (data rate). The default value is implementation-dependent (see IEEE Std 802.3).
Duplex of DataType Duplex represents the configured, negotiated, or actual duplex mode of an Ethernet port (see IEEE Std 802.3, clause 30.3.1.1.32, “aDuplexStatus”). The Duplex DataType is defined in 5.3.1.1.
MaxFrameLength of DataType UInt16 indicates the MAC frame length (including FCS bytes) at which frames are dropped for being too long (see IEEE Std 802.3, clause 30.3.1.1.37, “aMaxFrameLength”).
The component Variables of the IIeeeBaseEthernetPortType have the Attribute values defined in Table 4.
Table 4 – IIeeeBaseEthernetPortType Attribute values for child Nodes
Source Path |
Value Attribute |
Description Attribute |
||
|
NamespaceUri: http://www.opcfoundation.org/UA/units/un/cefact UnitId: 4534832DisplayName: Mbit/sDescription: megabit per second |
- |
This OPC UA Interface defines the auto negotiation status of an Ethernet-based port. The IIeeeAutoNegotiationStatusType is formally defined in Table 5.
Table 5 – IIeeeAutoNegotiationStatusType definition
Attribute |
Value |
||||
BrowseName |
IIeeeAutoNegotiationStatusType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
NegotiationStatus |
NegotiationStatus |
BaseDataVariableType |
Mandatory |
Conformance Units |
|||||
BNM AutoNeg |
NegotiationStatus of DataType NegotiationStatus specifies the status of the auto-negotiation protocol (see IEEE Std 802.3, clause 30.6.1.1.4, “aAutoNegAutoConfig”). The NegotiationStatus DataType is defined in 5.3.1.4.
This OPC UA Interface defines if an Ethernet-based port is VLAN Tag capable. The IBaseEthernetCapabilitiesType is formally defined in Table 6.
Table 6 – IBaseEthernetCapabilitiesType definition
Attribute |
Value |
||||
BrowseName |
IBaseEthernetCapabilitiesType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
VlanTagCapable |
Boolean |
BaseDataVariableType |
Mandatory |
Conformance Units |
|||||
BNM VLAN Capabilities |
When VlanTagCapable is true, the network interface supports the ability to tag/untag frames using a Customer VLAN Tag (C-TAG of clause 9) provided by the network (see IEEE 802.1Qcc-2018 clause 46.2.3.7.1.).
This OPC UA Interface specifies a VLAN Id to be associated with a network interface. The IVlanIdType is formally defined in Table 7.
Table 7 – IVlanIdType definition
Attribute |
Value |
||||
BrowseName |
IVlanIdType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
VlanId |
UInt16 |
BaseDataVariableType |
Mandatory |
Conformance Units |
|||||
BNM IETF Interface Vlan Info |
VlanId is an UInt16 and contains the Customer VLAN Tag (IEEE 802.1Q-2018 C-TAG of clause 9) that frames injected at this network interface will be tagged with (see IEEE 802.1Qcc-2018 clause 46.2.3.7.1).
This OPC UA Interface defines the content of an SrClass. The ISrClassType is formally defined in Table 8.
Table 8 – ISrClassType definition
Attribute |
Value |
||||
BrowseName |
ISrClassType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
Id |
Byte |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
Priority |
Byte |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
Vid |
UInt16 |
BaseDataVariableType |
Mandatory |
Conformance Units |
|||||
BNM TSN Base Info |
Id is a Byte and specifies the SRclassID in a numeric representation of the SR classes which is supported by a particular Bridge Port (see IEEE 802.1Q-2018, clause 35.2.2.9.2, SRclassID). Only Values between 0 and 7 shall be used.
Priority is a Byte and holds the Data Frame Priority (item a) in IEEE 802.1Q-2018 clause 35.2.2.8.5) value that will be used for streams that belong to the associated SR class. (see IEEE 802.1Q-2018, clause 35.2.2.9.3, SRclassPriority). Only Values between 0 and 7 shall be used.
Vid is an UInt16 and contains the SR_PVID (item i) in IEEE 802.1Q-2018 clause 35.2.1.4) that the associated streams will be tagged with by the Talker (see IEEE 802.1Q-2018, clause 35.2.2.9.4, SRclassVID).
The IIeeeBaseTsnStreamType contains Variables which are common for both TSN talkers and TSN listeners. They represent the configuration properties and diagnostic values like reservation status and failure codes of a TSN stream. The IIeeeBaseTsnStreamType is formally defined Table 9.
Table 9 – IIeeeBaseTsnStreamType definition
Attribute |
Value |
||||
BrowseName |
IIeeeBaseTsnStreamType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
StreamId |
Byte[8] |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
StreamName |
String |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
State |
TsnStreamState |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
AccumulatedLatency |
UInt32 |
BaseDataVariableType |
Optional |
HasComponent |
Variable |
SrClassId |
Byte |
BaseDataVariableType |
Optional |
Conformance Units |
|||||
BNM TSN Base Info |
StreamId is an array of 8 Bytes defined according to the StreamID in IEEE 802.1Qcc-2018 clause 35.2.2.8.2. The StreamId shall be unique in the scope of the related TSN Network. The mapping between the StreamId Byte array and the IEEE octet string StreamID is as follows: Entry[n] of StreamId is mapped to octet[n] of StreamID. The StreamId shall be provided in the TSN stream Objects for diagnostic reasons.
Note: In the distributed configuration model the StreamId is typically generated by the TSN control stack of the endstation. In the fully centralized configuration model the StreamId is typically generated by the CUC.
StreamName is a String identifying the related stream in the network. The format of the String is application specific. The uniqueness of the StreamName inside the network segment shall be guaranteed by the application. If multiple applications use the network segment, they need to agree on a naming scheme.
State represents the current state of the TSN configuration process of a TSN stream. The TsnStreamState Enumeration is defined in 5.3.1.6.
AccumulatedLatency of DataType UInt32 is the maximum worst case propagation delay in nanoseconds calculated and guaranteed by the TSN Control Layer for this Listener. Once the stream reservation has succeeded the AccumulatedLatency is not expected to increase during the lifecycle of the TSN Stream (see IEEE 802.1Q-2018 clause 35.2.2.8.6).
SrClassId of DataType Byte contains the Stream Reservation Class that is used for this stream (see IEEE 802.1Qcc-2018 clause 35.2.2.9.2).
This OPC UA Interface is used to represent the traffic specification of a TSN stream. The IIeeeBaseTsnTrafficSpecificationType is formally defined in Table 10.
Table 10 – IIeeeBaseTsnTrafficSpecificationType definition
Attribute |
Value |
||||
BrowseName |
IIeeeBaseTsnTrafficSpecificationType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
MaxIntervalFrames |
UInt16 |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
MaxFrameSize |
UInt32 |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
Interval |
UnsignedRationalNumber |
BaseDataVariableType |
Mandatory |
Conformance Units |
|||||
BNM TSN Config |
The MaxFrameSize of DataType UInt16 specifies the maximum size frame that will be sent by a Talker for this Stream (see IEEE 802.1Q-2018 clause 35.2.2.8.4a).
Note: According to 802.1Q MaxFrameSize only counts the number of bytes of the Ethernet payload without the media specific framing bytes. (i.e. without 8-byte preamble, 14-byte IEEE 802.3 header, 4-byte IEEE 802.1Q priority/VID Tag, 4-byte CRC, 12-byte inter frame gap). Same rules apply for counting MaxBytesPerInterval.
The MaxIntervalFrames of DataType UInt16 Variable specifies the maximum number of frames that will be sent during an Interval. (see IEEE 802.1Q-2018, clause 35.2.2.8.4b, “MaxIntervalFrames” or IEEE 802.1Qcc-2018, clause 35.2.2.10.6, “MaxFramesPerInterval”)
Interval of DataType UnsignedRationalNumber defines the time period of the TSN Stream in nanoseconds. In that interval a specified number of frames (MaxIntervalFrames) with a maximum payload size per frame (MaxFrameSize) and a maximum total number of bytes (MaxBytesPerInterval) will be transmitted. The Interval therefore shall either represent the “class measurement interval” as used for AVB based Streams (see IEEE 802.1Q-2018 clause 35 or the “Interval” parameter used in the TrafficSpecification group in IEEE 802.1Qcc-2018 clause 46.2.3.5.1).
This OPC UA Interface is used to represent the status of a TSN stream. The IIeeeBaseTsnStatusStreamType is formally defined in Table 11.
Table 11 – IIeeeBaseTsnStatusStreamType definition
Attribute |
Value |
||||
BrowseName |
IIeeeBaseTsnStatusStreamType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
TalkerStatus |
TsnTalkerStatus |
BaseDataVariableType |
Optional |
HasComponent |
Variable |
ListenerStatus |
TsnListenerStatus |
BaseDataVariableType |
Optional |
HasComponent |
Variable |
FailureCode |
TsnFailureCode |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
FailureSystemIdentifier |
Byte[][8] |
BaseDataVariableType |
Mandatory |
Conformance Units |
|||||
BNM TSN Base Info |
TalkerStatus of DataType TsnTalkerStatus contains the Reservation Failure Code as defined in the “FailureInformation” in IEEE 802.1Qcc-2018 clause 46.2.5.1.1.
ListenerStatus of DataType TsnListenerStatus contains the Reservation Failure Code as defined in the “FailureInformation” in IEEE 802.1Qcc-2018 clause 46.2.5.1.2.
FailureCode of DataType TsnFailureCode contains the Reservation Failure Code as defined in the “FailureInformation” in IEEE 802.1Qcc-2018 clause 46.2.5.1.3.
FailureSystemIdentifier is an Array of Arrays of 8 Bytes and contains the System Identifiers representing the network nodes where the failure occurred. See “System Identifier” in “FailureInformation” in IEEE 802.1Q-2018 clause 35.2.2.8.7.
This OPC UA Interface is used to represent an interface configuration which is part of a TSN stream (on the end-device). The IIeeeTsnInterfaceConfigurationType is formally defined in Table 12.
Table 12 – IIeeeTsnInterfaceConfigurationType definition
Attribute |
Value |
||||
BrowseName |
IIeeeTsnInterfaceConfigurationType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
MacAddress |
String |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
InterfaceName |
String |
BaseDataVariableType |
Optional |
Conformance Units |
|||||
BNM TSN Config |
MacAddress of DataType String contains the MAC Address of the Interface the configuration will be applied to, see IEEE 802.1Qcc-2018, clause 46.2.5.3.
InterfaceName of DataType String is optional and supports the identification of the Interface to be configured, see IEEE 802.1Qcc-2018, clause 46.2.5.3.
This OPC UA Interface is used to represent a talker (sender) interface configuration of a TSN stream. The IIeeeTsnInterfaceConfigurationTalkerType is formally defined in Table 13.
Table 13 – IIeeeTsnInterfaceConfigurationTalkerType definition
Attribute |
Value |
||||
BrowseName |
IIeeeTsnInterfaceConfigurationTalkerType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
Subtype of the IIeeeTsnInterfaceConfigurationType defined in 5.2.10 |
|||||
HasComponent |
Variable |
TimeAwareOffset |
UInt32 |
BaseDataVariableType |
Optional |
Conformance Units |
|||||
BNM TSN Config |
TimeAwareOffset of DataType UInt32 specifies the time offset in nanoseconds relative to the start of the Interval that the Talker shall use for transmission (see IEEE 802.1Qcc-2018 clause 46.2.5.3.5).
This OPC UA Interface is used to represent a listener (receiver) interface configuration of a TSN stream. The IIeeeTsnInterfaceConfigurationListenerType is formally defined in Table 14.
Table 14 – IIeeeTsnInterfaceConfigurationListenerType definition
Attribute |
Value |
||||
BrowseName |
IIeeeTsnInterfaceConfigurationListenerType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
Subtype of the IIeeeTsnInterfaceConfigurationType defined in 5.2.10 |
|||||
HasComponent |
Variable |
ReceiveOffset |
UInt32 |
BaseDataVariableType |
Optional |
Conformance Units |
|||||
BNM TSN Config |
ReceiveOffset of DataType UInt32 specifies the offset in nanoseconds within the Interval at which the Listener will receive the first frame of the TSN Stream.
This OPC UA Interface is used to represent a MAC address based stream identification of a TSN stream. The IIeeeTsnMacAddressType is formally defined in Table 15.
Table 15 – IIeeeTsnMacAddressType definition
Attribute |
Value |
||||
BrowseName |
IIeeeTsnMacAddressType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
DestinationAddress |
Byte[6] |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
SourceAddress |
Byte[6] |
BaseDataVariableType |
Optional |
Conformance Units |
|||||
BNM TSN Config |
DestinationAddress is defined according to the destination_mac_address in IEEE 802.1Qcc-2018 clause 46.2.3.4.1, which represents the destination MAC address in the Ethernet header of the streamed data packets. Entry[n] of DestinationAddress is mapped to octet[n] of destination_mac_address.
SourceAddress is defined according to the source_mac_address in IEEE 802.1Qcc-2018 clause 46.2.3.4.1, which represents the source MAC address in the Ethernet header of the streamed data packets. Entry[n] of SourceAddress is mapped to octet[n] of source_mac_address.
This OPC UA Interface is used to represent the VLAN configuration of a TSN stream. The IIeeeTsnVlanTagType is formally defined in Table 16.
Table 16 – IIeeeTsnVlanTagType definition
Attribute |
Value |
||||
BrowseName |
IIeeeTsnVlanTagType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
VlanId |
UInt16 |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
PriorityCodePoint |
Byte |
BaseDataVariableType |
Mandatory |
Conformance Units |
|||||
BNM TSN Config |
VlanId of DataType UInt16 defines the 12-Bit VLAN-Identifier of the VLAN tag in the Ethernet header for the related stream. Only values between 0 and 4095 shall be used according to IEEE 802.1Q-2018 Table 9-2.
PriorityCodePoint of DataType Byte defines the 3 Bit priority code point inside the VLAN tag of the Ethernet header of the related stream. Only values between 0 and 7 are supported as defined by IEEE 802.1Q-2018, clause 35.2.2.8.5a, Data Frame Priority.
This OPC UA Interface is used to translate a priority label like PriorityLabel (defined in Part 14) to a concrete network priority value (e.g. DSCP or PCP).
Note: This UA Interface is typically used to form a mapping rule table containing a set of object entities implementing the IPriorityMappingEntryType. Each network interface supporting priority mapping may reference such a mapping table Object.
Table 17 – IPriorityMappingEntryType definition
Attribute |
Value |
||||
BrowseName |
IPriorityMappingEntryType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
Subtype of the BaseInterfaceType defined in OPC 10000-5 |
|||||
HasComponent |
Variable |
MappingUri |
String |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
PriorityLabel |
String |
BaseDataVariableType |
Mandatory |
HasComponent |
Variable |
PriorityValue_PCP |
Byte |
BaseDataVariableType |
Optional |
HasComponent |
Variable |
PriorityValue_DSCP |
UInt32 |
BaseDataVariableType |
Optional |
Conformance Units |
|||||
BNM Priority Mapping |
MappingUri of DataType String specifies a named identifier of a well-known predefined set of priority labels.
PriorityLabel of DataType String is a textual representation of the desired transport priority configured within the QoS settings of a communication relation, e.g. WriterGroup defined in Part14.
PriorityValue_PCP of DataType Byte is the Ethernet transport priority inside the VLAN-Tag associated with the PriorityLabel. The devices shall translate the defined priority label for each packet according to the communication relation (e.g. WriterGroup) and linked interface. Depending on the transport protocol mapping and if this Variable is supported, the PCP field inside a packet shall be set to the specified PCP value.
PriorityValue_DSCP of DataType UInt32 is the IP transport priority associated with the PriorityLabel. The devices shall translate the defined priority label for each packet according to the communication relation (e.g. WriterGroup) and linked interface. Depending on the transport protocol mapping and if this Variable is supported, the DSCP field inside a packet shall be set to the specified DSCP value.
The Duplex is an enumeration representing the configured, negotiated, or actual duplex mode of an Ethernet interface (see IEEE Std 802.3, 30.3.1.1.32, aDuplexStatus). The values of the Duplex Enumeration are defined in Table 18.
Name |
Value |
Description |
Full |
0 |
Full duplex. |
Half |
1 |
Half duplex. |
Unknown |
2 |
Link is currently disconnected or initializing. |
Its representation in the AddressSpace is defined in Table 19.
Attribute |
Value |
|||||
BrowseName |
Duplex |
|||||
IsAbstract |
False |
|||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the Enumeration type defined in OPC 10000-5 |
||||||
HasProperty |
Variable |
EnumValues |
EnumValueType[] |
PropertyType |
|
|
Conformance Units |
||||||
BNM Ethernet Base Info |
The InterfaceAdminStatus is an enumeration for the possible desired states of the network interface (see IETF RFC 2863: The Interfaces Group MIB - ifAdminStatus). The values of the InterfaceAdminStatus Enumeration are defined in Table 20.
Table 20 – InterfaceAdminStatus Values
Name |
Value |
Description |
Up |
0 |
Ready to pass packets. |
Down |
1 |
Not ready to pass packets and not in some test mode. |
Testing |
2 |
In some test mode. |
Its representation in the AddressSpace is defined in Table 21.
Table 21 – InterfaceAdminStatus Definition
Attribute |
Value |
|||||
BrowseName |
InterfaceAdminStatus |
|||||
IsAbstract |
False |
|||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the Enumeration type defined in OPC 10000-5 |
||||||
HasProperty |
Variable |
EnumValues |
EnumValueType[] |
PropertyType |
|
|
Conformance Units |
||||||
BNM Ethernet Base Info |
The InterfaceOperStatus is an enumeration for the possible operational states of the network interface (see IETF RFC 2863: The Interfaces Group MIB - ifOperStatus). The values of the InterfaceOperStatus Enumeration are defined in Table 22.
Table 22 – InterfaceOperStatus Values
Name |
Value |
Description |
Up |
0 |
Ready to pass packets. |
Down |
1 |
The interface does not pass any packets. |
Testing |
2 |
In some test mode. No operational packets can be passed. |
Unknown |
3 |
Status cannot be determined for some reason. |
Dormant |
4 |
Waiting for some external event. |
NotPresent |
5 |
Some component (typically hardware) is missing. |
LowerLayerDown |
6 |
Down due to state of lower-layer interface(s). |
Its representation in the AddressSpace is defined in Table 23.
Table 23 – InterfaceOperStatus Definition
Attribute |
Value |
|||||
BrowseName |
InterfaceOperStatus |
|||||
IsAbstract |
False |
|||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the Enumeration type defined in OPC 10000-5 |
||||||
HasProperty |
Variable |
EnumValues |
EnumValueType[] |
PropertyType |
|
|
Conformance Units |
||||||
BNM Ethernet Base Info |
The NegotiationStatus is an enumeration representing the status of the auto-negotiation protocol (see IEEE Std 802.3, clause 30.6.1.1.4, aAutoNegAutoConfig). The values of the NegotiationStatus Enumeration are defined in Table 24.
Table 24 – NegotiationStatus Values
Name |
Value |
Description |
InProgress |
0 |
The auto-negotiation protocol is running and negotiation is currently in-progress. |
Complete |
1 |
The auto-negotiation protocol has completed successfully. |
Failed |
2 |
The auto-negotiation protocol has failed. |
Unknown |
3 |
The auto-negotiation status is not currently known, this could be because it is still negotiating or the protocol cannot run (e.g., if no medium is present). |
NoNegotiation |
4 |
No auto-negotiation is executed. The auto-negotiation function is either not supported on this interface or has not been enabled. |
Its representation in the AddressSpace is defined in Table 25.
Table 25 – NegotiationStatus Definition
Attribute |
Value |
|||||
BrowseName |
NegotiationStatus |
|||||
IsAbstract |
False |
|||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the Enumeration type defined in OPC 10000-5 |
||||||
HasProperty |
Variable |
EnumValues |
EnumValueType[] |
PropertyType |
|
|
Conformance Units |
||||||
BNM AutoNeg |
The TsnFailureCode is an Enumeration to provide detailed error information for failures occurring during TSN stream establishment (see IEEE 802.1Qcc-2018, Table 46-15, TSN Failure Codes). The TsnFailureCode Enumeration is defined in Table 26.
Table 26 – TsnFailureCode values
Name |
Value |
Description |
NoFailure |
0 |
No failure |
InsufficientBandwidth |
1 |
Insufficient bandwidth |
InsufficientResources |
2 |
Insufficient bridge resources |
InsufficientTrafficClassBandwidth |
3 |
Insufficient bandwidth for Traffic Class |
StreamIdInUse |
4 |
StreamID in use by another Talker |
StreamDestinationAddressInUse |
5 |
Stream destination address already in use |
StreamPreemptedByHigherRank |
6 |
Stream pre-empted by higher rank |
LatencyHasChanged |
7 |
Reported latency has changed |
EgressPortNotAvbCapable |
8 |
Egress port is not AVBCapable |
UseDifferentDestinationAddress |
9 |
Use a different destination address |
OutOfMsrpResources |
10 |
Out of MSRP resources |
OutOfMmrpResources |
11 |
Out of MMRP resources |
CannotStoreDestinationAddress |
12 |
Cannot store destination address |
PriorityIsNotAnSrcClass |
13 |
Requested priority is not an SR Class priority |
MaxFrameSizeTooLarge |
14 |
MaxFrameSize is too large for media |
MaxFanInPortsLimitReached |
15 |
MaxFanInPorts limit has been reached |
FirstValueChangedForStreamId |
16 |
Changes in FirstValue for a registered StreamID |
VlanBlockedOnEgress |
17 |
VLAN is blocked on this egress port (Registration Forbidden) |
VlanTaggingDisabledOnEgress |
18 |
VLAN tagging is disabled on this egress port (untagged set) |
SrClassPriorityMismatch |
19 |
SR class priority mismatch |
FeatureNotPropagated |
20 |
Enhanced feature cannot be propagated to original Port |
MaxLatencyExceeded |
21 |
MaxLatency exceeded |
BridgeDoesNotProvideNetworkId |
22 |
Nearest Bridge cannot provide network identification for stream transformation |
StreamTransformNotSupported |
23 |
Stream transformation not supported |
StreamIdTypeNotSupported |
24 |
Stream identification type not supported for stream transformation |
FeatureNotSupported |
25 |
Enhanced feature cannot be supported without a CNC |
Its representation in the AddressSpace is defined in Table 27.
Table 27 – TsnFailureCode Definition
Attribute |
Value |
|||||
BrowseName |
TsnFailureCode |
|||||
IsAbstract |
False |
|||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the Enumeration type defined in OPC 10000-5 |
||||||
HasProperty |
Variable |
EnumValues |
EnumValueType[] |
PropertyType |
|
|
Conformance Units |
||||||
BNM TSN Base Info |
The TsnStreamState is an enumeration representing the state of the configuration process of a TSN Talker or Listener.
The default value is Disabled. The TsnStreamState Enumeration is defined in Table 28.
Table 28 – TsnStreamState Values
Its representation in the AddressSpace is defined in Table 29.
Table 29 – TsnStreamState Definition
Attribute |
Value |
|||||
BrowseName |
TsnStreamState |
|||||
IsAbstract |
False |
|||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the Enumeration type defined in OPC 10000-5 |
||||||
HasProperty |
Variable |
EnumValues |
EnumValueType[] |
PropertyType |
|
|
Conformance Units |
||||||
BNM TSN Base Info |
The TsnTalkerStatus is an enumeration representing the state of the TSN Talker configuration.
The default value is None. The TsnTalkerStatus Enumeration is defined in Table 28.
Table 30 – TsnTalkerStatus Values
Name |
Value |
Description |
None |
0 |
No Talker detected. |
Ready |
1 |
Talker ready (configured). |
Failed |
2 |
Talker failed. |
Its representation in the AddressSpace is defined in Table 29.
Table 31 – TsnTalkerStatus Definition
Attribute |
Value |
|||||
BrowseName |
TsnTalkerStatus |
|||||
IsAbstract |
False |
|||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the Enumeration type defined in OPC 10000-5 |
||||||
HasProperty |
Variable |
EnumValues |
EnumValueType[] |
PropertyType |
|
|
Conformance Units |
||||||
BNM TSN Base Info |
The TsnListenerStatus is an enumeration representing the state of the TSN Listener configuration.
The default value is None. The TsnListenerStatus Enumeration is defined in Table 28.
Table 32 – TsnListenerStatus Values
Name |
Value |
Description |
None |
0 |
No Listener detected. |
Ready |
1 |
Listener ready (configured). |
PartialFailed |
2 |
One or more Listeners ready, and one or more Listeners failed. |
Failed |
3 |
Listener failed. |
Its representation in the AddressSpace is defined in Table 29.
Table 33 – TsnListenerStatus Definition
Attribute |
Value |
|||||
BrowseName |
TsnListenerStatus |
|||||
IsAbstract |
False |
|||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the Enumeration type defined in OPC 10000-5 |
||||||
HasProperty |
Variable |
EnumValues |
EnumValueType[] |
PropertyType |
|
|
Conformance Units |
||||||
BNM TSN Base Info |
This Structure DataType is used to represent an entry in the PriorityMappingTableType. The PriorityMappingEntryType is formally defined in Table 34.
Table 34 – PriorityMappingEntryType structure
Name |
Type |
Description |
PriorityMappingEntryType |
Structure |
|
MappingUri |
String |
Named identifier of a well-known predefined set of priority labels. |
PriorityLabel |
String |
Textual representation of the desired transport priority. |
PriorityValue_PCP |
Byte |
VLAN Tag based priority value. PriorityValue_PCP shall be a value between 0 and 7, or 0xFF. The value 0xFF indicates the PriorityValue_PCP is not used. |
PriorityValue_DSCP |
UInt32 |
IP header based priority value. PriorityValue_DSCP shall be a value between 0 and 63, or 0xFFFFFFFF.The value 0xFFFFFFFF indicates the PriorityValue_PCP is not used. |
Its representation in the AddressSpace is defined in Table 35.
Table 35 – PriorityMappingEntryType Definition
Attribute |
Value |
|||||
BrowseName |
PriorityMappingEntryType |
|||||
IsAbstract |
False |
|||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the Structure DataType defined in OPC 10000-5 |
||||||
Conformance Units |
||||||
BNM Priority Mapping 2 |
Overview and location of the instance entry points are shown in Figure 3.
Figure 3 – Instance Entry Points for Network Interfaces and Streams
The Resources Object shall be used as the browse entry point for physical and logical resources of the device the Server is running on. It shall reside in the Server Object defined in OPC 10000-5. It may contain a set of Organizes References that point to other Objects representing specific resources. It is formally defined in Table 36.
Table 36 – Resources definition
Attribute |
Value |
||
BrowseName |
Resources |
||
References |
NodeClass |
BrowseName |
Comment |
ComponentOf of the Server Object defined in Part 5. |
|||
HasTypeDefinition |
ObjectType |
FolderType |
|
Organizes |
Object |
Communication |
Defined in 5.4.2 |
Conformance Units |
|||
BNM Entry Points |
The Communication Object shall be used as the browse entry point for communication related resources of the physical device the Server is running on. It is formally defined in Table 37.
The Communication Object is referenced by an Organizes Reference from the Resources Object defined in 5.4.1.
The Communication Object may include the following subfolders:
- MappingTables
- NetworkInterfaces
- Streams
Note: It is recommended to keep TSN-Streams and possible future (DetNet-)Flows separated in specific folders.
Table 37 – Communication definition
Attribute |
Value |
||
BrowseName |
Communication |
||
References |
NodeClass |
BrowseName |
Comment |
HasTypeDefinition |
ObjectType |
FolderType |
|
Organizes |
Object |
MappingTables |
Defined in 5.4.3 |
Organizes |
Object |
NetworkInterfaces |
Defined in 5.4.4 |
Organizes |
Object |
Streams |
Defined in 5.4.5 |
Conformance Units |
|||
BNM Entry Points |
The MappingTables Object shall be used as the browse entry point for mapping tables of priority values and their application labels. It is formally defined in Table 39. All instances of the PriorityMappingTableType shall be referenced from this Object, either directly or indirectly, following hierarchical References.
Table 38 – MappingTables definition
Attribute |
Value |
||
BrowseName |
MappingTables |
||
References |
NodeClass |
BrowseName |
Comment |
HasTypeDefinition |
ObjectType |
FolderType |
|
Conformance Units |
|||
BNM Mapping Entry Points |
The NetworkInterfaces Object shall be used as the browse entry point for network interfaces of the device the Server is running on. It is formally defined in Table 39.
Table 39 – NetworkInterfaces definition
Attribute |
Value |
||
BrowseName |
NetworkInterfaces |
||
References |
NodeClass |
BrowseName |
Comment |
HasTypeDefinition |
ObjectType |
FolderType |
|
Conformance Units |
|||
BNM Entry Points |
The NetworkInterfaces folder is intended to hold instances, which are of IetfBaseNetworkInterfaceType or a subtype of it. However other Objects can be stored within this folder that implement the UA Interface IIetfBaseNetworkInterfaceType.
All Objects of Type IetfBaseNetworkInterfaceType within the NetworkInterfaces folder shall represent either a physical or virtual network interface.
The Streams Object shall be used as the browse entry point for network streams of the device the Server is running on. It is formally defined in Table 40.
Attribute |
Value |
||
BrowseName |
Streams |
||
References |
NodeClass |
BrowseName |
Comment |
HasTypeDefinition |
ObjectType |
FolderType |
|
Organizes |
Object |
TalkerStreams |
Defined in 5.4.6 |
Organizes |
Object |
ListenerStreams |
Defined in 5.4.7 |
Conformance Units |
|||
BNM TSN Entry Points |
The TalkerStreams Object shall be used as the browse entry point for sending network streams of the device the Server is running on. It is formally defined in Table 41.
Table 41 – TalkerStreams definition
Attribute |
Value |
||
BrowseName |
TalkerStreams |
||
References |
NodeClass |
BrowseName |
Comment |
HasTypeDefinition |
ObjectType |
FolderType |
|
Conformance Units |
|||
BNM TSN Entry Points |
The ListenerStreams Object shall be used as the browse entry point for receiving network streams of the device the Server is running on. It is formally defined in Table 42.
Table 42 – ListenerStreams definition
Attribute |
Value |
||
BrowseName |
ListenerStreams |
||
References |
NodeClass |
BrowseName |
Comment |
HasTypeDefinition |
ObjectType |
FolderType |
|
Conformance Units |
|||
BNM TSN Entry Points |
The IetfBaseNetworkInterfaceType defines the core set of properties needed to model a network interface based on the definition provided by IETF. Figure 4 illustrates the structure of the IetfBaseNetworkInterfaceType.
Figure 4 – IetfBaseNetworkInterfaceType
The IetfBaseNetworkInterfaceType is formally defined in Table 43.
Table 43 – IetfBaseNetworkInterfaceType definition
Attribute |
Value |
||||
BrowseName |
IetfBaseNetworkInterfaceType |
||||
IsAbstract |
False |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
Subtype of the BaseObjectType |
|||||
|
|
|
|
|
|
HasInterface |
ObjectType |
IIetfBaseNetworkInterfaceType |
|
|
|
Applied from IIetfBaseNetworkInterfaceType (see 5.2.1) |
|||||
HasComponent |
Variable |
AdminStatus |
InterfaceAdminStatus |
BaseDataVariableType |
M |
HasComponent |
Variable |
OperStatus |
InterfaceOperStatus |
BaseDataVariableType |
M |
HasComponent |
Variable |
PhysAddress |
String |
BaseDataVariableType |
O |
HasComponent |
Variable |
Speed |
UInt64 |
AnalogUnitType |
M |
|
|
|
|
|
|
HasLowerLayerInterface |
Object |
<InterfaceName> |
|
BaseObjectType |
OP |
Conformance Units |
|||||
BNM IETF Interface Base Info |
The BrowseName of this Object shall be the same as the ifName of the corresponding IETF object (see IETF RFC 2863: The Interfaces Group MIB).
For the formal definition of AdminStatus, OperStatus, PhysAddress and Speed please refer to section 5.2.1.
The HasLowerLayerInterface Reference points to an Object implementing the IIetfBaseNetworkInterfaceType used to indicate a hierarchical connection of network interfaces. This is used to indicate the relation e.g. between a VLAN interface and the actual physical interface. A VLAN interface shall additionally implement IVlanIdType.
Each instance of the IetfBaseNetworkInterfaceType shall point to zero or one instance of PriorityMappingTableType or a subtype using a UsesProrityMappingTable Reference or a subtype. The referenced PriorityMappingTable is used for the prioritisation of network messages injected to the network using this network interface. If an instance of type IetfBaseNetworkInterfaceType has no reference to a PriorityMappingTable, the PriorityMappingTable of the next lower layer interface of type IetfBaseNetworkInterfaceType shall be used. An example for this is shown in Annex A.2 for “eth0.100”.
Note: It is recommended that within one network domain that all interfaces should have consistent MappingTables assigned. This ensures consistent use of Quality of Service features within the network.
A network interface is linked for transmission or reception via the BrowseName of the object of type IetfBaseNetworkInterfaceType.
Note: An example for a simplified PubSub connection is shown in Annex A.2.
The components of the IetfBaseNetworkInterfaceType have the Attribute values defined in Table 44.
Table 44 – IetfBaseNetworkInterfaceType Attribute values for child Nodes
Source Path |
Value Attribute |
Description Attribute |
||
|
NamespaceUri: http://www.opcfoundation.org/UA/units/un/cefact UnitId: 4337968DisplayName: bit/sDescription: bit per second |
- |
The components of the IetfBaseNetworkInterfaceType have additional References which are defined in Table 45.
Table 45 – IetfBaseNetworkInterfaceType Additional References
SourceBrowsePath |
Reference Type |
Is Forward |
TargetBrowsePath |
<InterfaceName> |
HasInterface |
True |
IIetfBaseNetworkInterfaceType |
Instances of the PriorityMappingTableType contains priority mapping information. Figure 5 illustrates the structure of the PriorityMappingTableType.
Figure 5 – PriorityMappingTableType
The PriorityMappingTableType is formally defined in Table 46.
Table 46 – PriorityMappingTableType definition
Attribute |
Value |
||||
BrowseName |
PriorityMappingTableType |
||||
IsAbstract |
False |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
Subtype of the BaseObjectType defined in OPC 10000-5 |
|||||
HasProperty |
Variable |
PriorityMapppingEntries |
PriorityMappingEntryType[] |
PropertyType |
M |
HasComponent |
Method |
AddPriorityMappingEntry |
Defined in 5.5.2.3 |
O |
|
HasComponent |
Method |
DeletePriorityMappingEntry |
Defined in 5.5.2.4 |
O |
|
Conformance Units |
|||||
BNM Priority Mapping 2 |
PriorityMappingEntries represents a list of all instances of PriorityMappingEntryType. For a formal definition see 5.3.2.1. The order of the elements in the array does not have any influence, as elements are indexed via the MappingUri and PriorityLabel.
The combination of QosCategory and PriorityLabel are used as indices into the referenced PriorityMappingTable to look up the priority values. The reference from an IetfBaseNetworkInterface is described in Section 5.5.1. For the sender, the priority values shall be included within the frame, if the according fields are available, i.e., VLAN Tag to use the PCP value and IP header to use the DSCP value. The receiver may use the priority values for internal packet processing.
Note: An example for a simplified PubSub connection is shown in Annex A.2. Within the PubSubConnection, each WriterGroup may contain a QosCategory and DatagramQos structure with a PriorityLabel. For the subscriber side these values are specified on the DataSetReader level.
AddPriorityMappingEntry allows to add an entry to this instance of PriorityMappingTableType.
DeletePriorityMappingEntry allows to delete an entry from this instance of PriorityMappingTableType.
This optional Method allows to add an entry to this instance of PriorityMappingTableType. If the combination of MappingUri and PriorityLabel does not exist yet, the element will be added to the Variable PriorityMappingEntries.
The signature of this Method is specified below. Table 47 and Table 49 specify the Arguments and AddressSpace representation, respectively.
Signature
AddPriorityMappingEntry(
[in] String MappingUri,
[in] String PriorityLabel,
[in] Byte PriorityValue_PCP,
[in] UInt32 PriorityValue_DSCP
);
Table 47 – AddPriorityMappingEntry Method arguments
Argument |
Description |
MappingUri |
Named identifier of a well-known predefined set of priority labels. |
PriorityLabel |
Textual representation of the desired transport priority. |
PriorityValue_PCP |
PriorityValue_PCP shall be a value between 0 and 7.The value 0xFF indicates to omit the PriorityValue_PCP from the entry. |
PriorityValue_DSCP |
PriorityValue_DSCP shall be a value between 0 and 63.The value 0xFFFFFFFF indicates to omit the PriorityValue_PCP from the entry. |
The possible Method result codes are defined in Table 48.
Table 48 – AddPriorityMappingEntry Method result codes
ResultCode |
Description |
Bad_UserAccessDenied |
The caller is not allowed to add a priority mapping rule. |
Bad_InvalidArgument |
One of the arguments is invalid. |
Bad_IndexRangeInvalid |
A mapping table entry with MappingUri and PriorityLabel already exists. |
Table 49 – AddPriorityMappingEntry Method AddressSpace definition
Attribute |
Value |
||||
BrowseName |
AddPriorityMappingEntry |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
HasProperty |
Variable |
InputArguments |
Argument[] |
PropertyType |
M |
This optional Method allows to delete an entry from this instance of PriorityMappingTableType.
The signature of this Method is specified below. Table 50 and Table 52 specify the Arguments and AddressSpace representation, respectively.
Signature
DeletePriorityMappingEntry(
[in] String MappingUri,
[in] String PriorityLabel
);
Table 50 – DeletePriorityMappingEntry Method arguments
Argument |
Description |
MappingUri |
Named identifier of a well-known predefined set of priority labels. |
PriorityLabel |
Textual representation of the desired transport priority. |
The possible Method result codes are defined in Table 51.
Table 51 – DeletePriorityMappingEntry Method result codes
ResultCode |
Description |
Bad_UserAccessDenied |
The caller is not allowed to delete the priority mapping rule. |
Bad_InvalidState |
The state of this ConnectionConfigurationSetType instance is “Processing”. |
Bad_BrowseNameInvalid |
The BrowseName for the mapping entry is invalid. |
Table 52 – DeletePriorityMappingEntry Method AddressSpace definition
Attribute |
Value |
||||
BrowseName |
DeletePriorityMappingEntry |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
HasProperty |
Variable |
InputArguments |
Argument[] |
PropertyType |
M |
The UsesPriorityMappingTable ReferenceType is a concrete ReferenceType and can be used directly. It is a subtype of NonHierarchicalReferences ReferenceType.
The SourceNode of this ReferenceType shall be an Object implementing the IIetfBaseNetworkInterfaceType or an Object of Type IetfBaseNetworkInterfaceType. Each Node shall be the SourceNode of at most one UsesPriorityMappingTable Reference.
The TargetNode of this ReferenceType shall be an instance of PriorityMappingTableType.
The UsesPriorityMappingTable ReferenceType is formally defined in Table 53.
Table 53 – UsesPriorityMappingTable definition
Attributes |
Value |
||
BrowseName |
UsesPriorityMappingTable |
||
InverseName |
UsedByNetworkInterface |
||
Symmetric |
False |
||
IsAbstract |
False |
||
References |
NodeClass |
BrowseName |
Comment |
Subtype of the NonHierarchicalReferences ReferenceType defined in OPC 10000-5 |
|||
Conformance Units |
|||
BNM Priority Mapping 2 |
The HasLowerLayerInterface ReferenceType is a concrete ReferenceType and can be used directly. It is a subtype of HierarchicalReferences ReferenceType.
The usage of the References is following the YANG modelling approach which is using reference pointers in the YANG-interface nodes to point to other interface nodes in lower or higher layers (“lower-layer-if”, “higher-layer-if”); see also RFC 8343.
Virtual interfaces shall reference their physical interfaces with the HasLowerLayerInterfaceReferenceType. Annex Annex A contains examples for such hierarchical references.
The SourceNode of this ReferenceType shall be an Object organized in the NetworkInterfaces folder.
The TargetNode of this ReferenceType shall be an Object organized in the NetworkInterfaces folder.
The HasLowerLayerInterface ReferenceType is formally defined in Table 54.
Table 54 – HasLowerLayerInterface definition
Attributes |
Value |
||
BrowseName |
HasLowerLayerInterface |
||
InverseName |
HasHigherLayerInterface |
||
Symmetric |
False |
||
IsAbstract |
False |
||
References |
NodeClass |
BrowseName |
Comment |
Subtype of the HierarchicalReferences ReferenceType defined in OPC 10000-5 |
|||
Conformance Units |
|||
BNM IETF Interface Base Info |