3.2.1 Primitive Signals
Table 3-1. Primitive Signals
Primitive signals are sent by a transmitting port and recognized and acted upon by a receiving port. Currently, the MRK signal is not supported by Hewlett-Packard.
3.2.2 Primitive Sequences
Primitive sequences are not recognized or acted upon until the third consecutive occurrence of the ordered set. Currently, there are only three primitive sequences used:
The LIP sequence allows for discovery of ports on the loop. This means that when a new node is connected to a loop, the LIP sequence discovers it and allows for the new node to be initialized on the loop.
3.2.3 Arbitrated Loop Physical Address (AL-PA)
All ports have a 24-bit native address identifier, called the N_Port ID. The AL-PA is in the lower eight (8) bits of this identifier. The lower the 8-bit address, the higher the priority is for arbitrating. An 8-bit field can have values from 0 “255, or 256 values. However, not all of these are used for physical addresses.
AL-PA values must have neutral disparity. (Remember that 8B/10B encoding has positive, negative, or neutral disparity.) There are only 134 neutral disparity values out of the set of 256 8-bit addresses. 126 values, of the 134, are used for port addresses and 8 are used for control functions. Hewlett-Packard uses addresses 00-EF. See Table 3-2 for further reference.
The upper 16 bits are non-zero for public ports on a public loop but are zero for ports on a private loop. This is how the loop determines whether it is talking publicly or privately.
Table 3-2. AL-PA Values
3.2.4 Loop States and Operation
18.104.22.168 Operation Over view
There is a controlled arbitration process for a port to gain control of an arbitrated loop. The Open NL_Port selects a destination NL_Port on the loop before a frame is transmitted. The arbitrating port releases control of the loop when frame transmission is complete.
A port gains ownership of the loop by an arbitration process. The port winning arbitration sends an OPN primitive to the destination node, and enters the Opened state. Upon receiving the OPN primitive, the destination node also enters the Opened state. The loop is now in a point-to-point configuration. Either of the open ports can now send command or data frames .
After completing the information exchange, the port that won arbitration sends a CLS primitive to the destination port. Both ports now return to the monitoring state.
22.214.171.124 The Monitoring State
After port initialization, all ports start in the monitoring state, the loop is idle, no data is being transmitted, and there is no activity. The loop at this time is considered to be closed. While in the monitoring state, ports act as repeaters and are looking for primitive signals and sequences to act upon. Before any port arbitrates for the loop, the loop is filled with Idles.
Figure 3-4. Monitoring or Idle State
126.96.36.199 The Arbitration Process
To begin the arbitration process, a port, in this example Port A, sends the primitive signal ARB(a) to notify the loop of its intention to own the loop. Port A wins arbitration when the ARB(a) is returned to it. Receiving its ARB(a) means no higher priority NL_Port needs the loop at this time.
When Port A wants to acquire the loop, there can be different conditions on the loop. For example:
Port A will win when:
Once a port has acquired the loop, it opens the loop, preventing all other ports from acquiring the loop. It receives and discards all ARB(x) primitive signals.
Figure 3-5. Arbitration Process
188.8.131.52 The Open State
In this example, Port A has acquired the loop. It is now in the Open state with the loop physically open at Port A. Nothing may be done until Port A has completed a circuit with its intended destination, in this example, Port C.
Port A sends the OPN primitive signal naming C with an OPN(c,a) for full duplex or an OPN(c,c) for half duplex. Port C is monitoring the loop, acting as a repeater, and listening for any ordered set pertaining to it. Once it receives the OPN primitive signal from Port A, it enters the Open state and physically opens the loop at its port.
The loop is now open between Port A and C and is considered to be a point-to-point connection.
Figure 3-6. The Opened State
184.108.40.206 Open Loop
Both Port A and Port C have opened the loop. Upper level protocol frames and link control frames may now be sent back and forth.
The circuit formed is essentially a point-to-point link between A and C. This is a dedicated path for the duration of the transaction.
Ports B and D are acting as repeaters but are listening for specific ordered sets as before.
Figure 3-7. Open Loop
220.127.116.11 Closing the Loop
Either one of the Open ports may initiate the closing procedure by sending a CLS primitive signal to the other. In this example, Port A initiates the closing by sending the CLS signal.
Once a port has sent a CLS primitive signal, it may not send frames or R_RDYs. However, it may still receive frames and R_RDYs.
The port receiving the first CLS primitive signal, here, Port C, does not have to close its circuit right away. It may continue to send frames. Once its operation is complete, it sends a CLS primitive signal back to the other port, Port A.
Port C closes when it sends the CLS to Port A and Port A closes when it receives the CLS from Port C. The loop is now closed, with both ports returning to the monitoring state.
Figure 3-8. Closing the Loop
Once the loop is closed it returns to the state or condition shown in Figure 3-4. There is no activity and all nodes are retransmitting idle signals. When the loop is closed, other ports may acquire the loop.
Access fairness provides other ports on the loop have one chance to acquire the loop before the port that just owned the loop can acquire the loop again. Access fairness does not imply time fairness. In other words, a port may hold on to the loop as long as it is transmitting frames.