next up previous
Next: Correctness Properties Up: Results Previous: Changes in the IEEE


Net Panic

The basic criterion for detecting a loop in the net topology is that on a bus, there are two alpha portals, i.e. the bus has either outgoing edges or an outgoing edge and the prime portal in one net tree. It is perhaps not surprising that, after some net topology changes, it can also be the case that a loop exists in the network for which the criterion does not hold: all buses on the loop have exactly one outgoing edge in the net tree but the prime portal itself is not there. This can be recognised by observing the information of the distance of each portal to the root bus in the net tree. There must be at least one bus with an outgoing edge with a larger distance than a corresponding incoming edge. See the following figure.
% latex2html id marker 646
\scalebox{0.6}{\includegraphics{figures/example_panic.eps}}
In this situation, the net update algorithm does not terminate, but keeps being executed on consecutive buses in the loop, and the distances keep increasing. This is a major error. Attempts to fix net update by undirecting the incoming or the outgoing edge failed. Finally, in consultation with the ballot response committee, a separate net panic algorithm was added to the net update functionality, with the property of resetting all information in each bridge portal in the net to the initial values. This means that each bridge is directed in the net tree and one of the two portals in each bridge is the prime portal, and no bus tree is in use. Obviously, when net panic completes and more than one bridge is present in the net, the spanning trees are not correct, hence net update must be started again to sort out the net tree, followed by bus enumeration to span new bus trees. The net panic algorithm consists of the following steps.
  1. Stop bridge functionality: The portal presents itself on the bus as though it has no 1394.1 functionality. To step 1, 2 or 3, depending on the net panic start condition (see below).
  2. The bus must panic: The portal broadcasts a panic message to all portals on the bus. To step 2.
  3. Observe the bus: With IEEE 1394 functionality, the portal observes if all portals have now stopped acting as a bridge. If so, to step 3, otherwise back to step 1.
  4. Co-portal must panic: A panic message is sent to the co-portal to inform it that net panic has completed on this bus. To step 4.
  5. Co-portal finished: As soon as a panic message has been received from the co-portal as well (this may have happened during an earlier step), the portal initialises all net update information and starts net update.
The net panic algorithm is started whenever one of the following is true. Note that the net panic message carries a parameter indicating the distance to the bus on which the algorithm was originally started. In this way the algorithm is guaranteed to stop by respecting the maximum size of the network.
next up previous
Next: Correctness Properties Up: Results Previous: Changes in the IEEE
Wieger Wesselink 2004-05-24