Share via


2.2.1 STP Packet

The Spanning Tree Algorithm and Protocol (STP) (as specified in [IEEE802.1D] sections 8 and 9) is used to detect network loops. The extension specified in this document extends IPo1394 to support the transmission and reception of the STP packet. The actual network loop detection is performed by STP—a higher-layer protocol—as specified in [IEEE802.1D] sections 8 and 9.

As shown below, an STP message on 1394 contains a standard IPo1394 header (the lf, reserved, and ether_type fields), followed by a standard STP message.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

lf

reserved

ether_type

Standard STP message (variable)

...

lf (2 bits): This field MUST specify the relative position of the link fragment within the IP datagram, as specified in [RFC2734] section 4.2.

reserved (14 bits): This field MUST be used as specified in [RFC2734] section 4.2. It MUST be set to 0. This field MUST be ignored in a received packet.

ether_type (2 bytes): The possible values for this field MUST be one of the following:

Value

Meaning

0x0800

The rest of the packet is an IPv4 datagram, as specified in [RFC2734].

0x0806

The rest of the packet is an 1394 ARP message, as specified in [RFC2734].

0x8861

The rest of the packet is a Multicast Channel Allocation Protocol (MCAP) message, as specified in [RFC2734].

0x0777

The rest of the packet is an STP packet, as specified in [IEEE802.1D]. This value was added by Microsoft to indicate that an STP packet follows.

Received packets with an ether_type other than one of the above values are dropped.

Standard STP message (variable): A standard STP message.