WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Method for requesting identification of a neighbor node in a data processing I/O system    
United States Patent5371897   
Link to this pagehttp://www.wikipatents.com/5371897.html
Inventor(s)Brown; Paul J. (Poughkeepsie, NY); Fredericks, Sr.; Kenneth J. (Poughkeepsie, NY); Hefferon; Eugene P. (Poughkeepsie, NY); Moffitt; Gerald T. (San Jose, CA); Meritt; Allan S. (Poughkeepsie, NY)
AbstractA method for acquiring the node identifier of a node in a data processing input/output (I/O) system having a plurality of nodes. This procedure is part of the initialization of each node in the I/O system and may be used to establish the configuration of the I/O system such that if a connection breaks or a fault occurs between nodes, the configuration can be confirmed after the break or fault is corrected. This prevents data from being sent to the wrong device if lines were connected in a different configuration during the correction of a fault. The node identifier is a worldwide-unique identifier such that only one node is identified by a node identifier. The node identifier contains a validity code that specifies if the node identifier is valid. Also disclosed is a retry procedure for retrying the acquisition of a node identifier if the acquired node identifier is not valid, and a deferral procedure which defers the retry procedure if a link is not available.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Inventor     Brown; Paul J. (Poughkeepsie, NY); Fredericks, Sr.; Kenneth J. (Poughkeepsie, NY); Hefferon; Eugene P. (Poughkeepsie, NY); Moffitt; Gerald T. (San Jose, CA); Meritt; Allan S. (Poughkeepsie, NY)
Owner/Assignee     International Business Machines Corporation (Armonk, NY)
Patent assignment
All assignments
Publication Date     December 6, 1994
Application Number     07/750,356
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     August 27, 1991
US Classification     709/222 710/3 710/10 710/15
Int'l Classification     G06F 013/00
Examiner     Bowler; Alyssa H.
Assistant Examiner     Nguyen; Dzung C.
Attorney/Law Firm     Goldman; Bernard M.
Address
Parent Case    
Priority Data    
USPTO Field of Search     395/800 395/200 395/275 395/650 364/DIG. 1 364/DIG. 2 364/228.4 364/230 364/242.94 364/242.96 364/242.5
Patent Tags     requesting identification neighbor node data processing i/o
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5206860
Brown
714/712
Apr,1993

[0 after 0 votes]
5175765
Perlman
380/30
Dec,1992

[0 after 0 votes]
5107489
Brown

Apr,1992

[0 after 0 votes]
5048014
Fischer
370/258
Sep,1991

[0 after 0 votes]
5042027
Takase
370/252
Aug,1991

[0 after 0 votes]
5003508
Hall
710/106
Mar,1991

[0 after 0 votes]
4953072
Williams
710/268
Aug,1990

[0 after 0 votes]
4941089
Fischer
709/231
Jul,1990

[0 after 0 votes]
4939728
Markkula, Jr.
370/419
Jul,1990

[0 after 0 votes]
4939726
Flammer
370/400
Jul,1990

[0 after 0 votes]
4912461
Cenzano, Jr.
340/825.52
Mar,1990

[0 after 0 votes]
4677588
Benjamin
709/228
Jun,1987

[0 after 0 votes]
4646235
Hirosawa
709/219
Feb,1987

[0 after 0 votes]
4638313
Sherwood, Jr.
340/825.52
Jan,1987

[0 after 0 votes]
4589063
Shah
710/8
May,1986

[0 after 0 votes]
4399531
Grande
370/216
Aug,1983

[0 after 0 votes]
4360870
McVey
710/9
Nov,1982

[0 after 0 votes]
3693161
Price
710/38
Sep,1972

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


Having thus described our invention, what we claim as new, and desire to secure by Letters Patent is:

1. In a computer system having a plurality of communicating nodes in a network of communicating nodes, in which each of said communicating node has a unique identifier which does not change if a node location is later changed in the network, the method comprising the steps of:

communicating by any node with not more than one neighboring node at a time in a selected transmission direction without requiring an identifier of the neighboring node for requesting the identifier of the neighboring node;

sending by a requesting node of a request-identifier frame to the one neighboring node in the selected transmission direction within the network of communication nodes;

transmitting by the neighboring node of an identifier-response frame to said requesting node in response to the sending step, said identifier-response frame including a validity code for indicating if the identifier-response frame contains a valid identifier of the neighboring node;

returning by the neighboring node of a not-available-indicator value in a valid field of the identifier-response frame if a previously established identifier for the neighboring node is not available to the neighboring node,

returning by the neighboring node of an available-indicator value in the valid field if the identifier of the neighboring node is available to the neighboring node;

repeating the sending step by the requesting node if said not-available-indicator value in the identifier-response frame is received by the requesting node; and

suspending the sending step when the repeating step is unsuccessful.

2. The method of claim 1 in which

said request-identifier frame contains: a destination address field which need not contain any neighboring node address or identifier, and a source address field which contains an identifier of said requesting node;

said identifier-response frame contains: a destination field which contains an address of said requesting node and a source field which contains any address or identifier available to the neighboring node; and

said sending and transmitting steps respectively including information for routine said request-identifier frame and said identifier-response frame between the requesting node and the neighboring node.

3. The method of claim 1 further comprising the steps of

testing a link between said requesting node and said neighboring node; and

repeating the sending step if said link is operational and deferring the repeating step if said link is not operational.

4. The method defined in claim 1 further comprising step of:

initializing a network in an input/output system of a computer system;

assigning an identifying address to each of said communicating node which is one of: a central processing unit, an input/output unit switch, and a control unit.

5. The method of claim 1 wherein sending the identifier of said neighboring node includes sending a worldwide unique identifier.

6. The method of claim 5 wherein said worldwide unique identifier includes an identification of a self describing product that determines said neighboring node.

7. The method of claim 6 wherein said worldwide unique identifier includes a field which identifies a product.

8. The method of claim 7 wherein said identification includes a serial-number field that contains information provided on a serial-number plate attached to an external surface of the product.

9. The method of claim 8 wherein said worldwide unique identifier includes an interface tag that uniquely identifies a physical location of an interface associated with said product.
 Description Submit all comments and votes
 


BACKGROUND OF THE INVENTION

The present invention relates to the identification of a node in a data processing input/output system, and more particularly relates to the identification of a neighboring node during the definition of a data processing input/output system.

Many times in the operation of a data processing input/output (I/O) system, it is desirable to know the identity of the neighboring node. Such information is particularly helpful in such applications as reporting a broken data transmission line or in selecting an alternate route through an I/O network to avoid a fault or suspected fault.

U.S. Pat. No. 3,693,161 to Price et al. issued Sept. 19, 1972 for Apparatus for Interrogating the Availability of a Communication Path to a Peripheral Device and discloses a computer system in which one or more processors interrogate the input/output system to determine whether communication paths are available to the respective peripheral units. A particular peripheral unit is identified by a coded signal from a processor.

U.S. Pat. No. 4,360,870 to McVey issued Nov. 23, 1982 for Programmable I/O Device Identification and discloses a computer system in which each I/O device is loaded with a unique assigned identifier. The identifiers are assigned in an ordered priority by device type.

U.S. Pat. No. 4,589,063 to Shah et al. issued May 13, 1986 for Data Processing System Having Automatic Configuration and discloses a method and apparatus for automatic configuration of a computer system. One or more of several I/O devices are interfaced to the system through I/O boards that plug into various option slots in a system motherboard Each of the I/O devices includes a controlling device driver module. Each driver module is self-identifying.

U.S. Pat. No. 4,638,313 to Sherwood, Jr. et al. issued Jan. 20, 1987 for Addressing for a Multipoint Communication System for Patient Monitoring and discloses a method for dynamically assigning addresses to new modules as they are coupled to a communication system. At power up, a process is disclosed which is used by a primary station to assign an address to each module in an order derived from the serial number of the module.

U.S. Pat. No. 4,939,726 to Flammer et al. issued Jul. 3, 1990 for Method for Routing Packets in a Packet Communication Network and discloses a packet network method and system in which each node in the network is uniquely identified by absolute geographical coordinates or by a code indicating absolute location in an external coordinate-based reference system.

U.S. Pat. No. 4,953,072 to Williams issued Aug. 28, 1990 for Node For Servicing Interrupt Request Messages on a Pended Bus and discloses an interrupt servicing node whose ID is generated using a unique set of wires from the backplane that are hardcoded with the particular ID for the slot in which the node resides.

U.S. Pat. No. 5,003,508 to Hall issued Mar. 26, 1991 for Linear Nearest Neighbor Interconnect Bus System and discloses an apparatus for providing data communication between concurrently operating random access memory and processing devices including a set of interface nodes interconnected in series by bidirectional buses. Each node also includes means for receiving data from any nearest neighbor node to which it is connected, and to forward to nearest neighbor nodes messages generated by a processing device to which it is connected.

SUMMARY OF THE INVENTION

In a computer I/O system having a plurality of nodes, it is many times useful to identify one of the nodes, particularly the nearest neighbor, in such applications as identifying faults or establishing or verifying the configuration of the I/O system. For instance, if a fault is detected, it is desirable to confirm that the configuration has not been changed after the fault is corrected to be sure data is being sent to a desired device. This is necessary in that links between nodes may have inadvertently been connected differently between nodes in correcting a fault such that nodes are no longer connected in the same configuration as before the fault occurred. Thus in an initialization procedure, each node obtains the node identifier of its nearest neighbor by sending out a request-node-identifier frame which is responded to by an identifier-response frame from the neighbor. The identifier-response frame contains a worldwide-unique identifier with identifies the neighboring node.

It is therefore an object of the present invention to provide a method for obtaining an identifier of a node in a computer I/O system.

It is another object of the present invention to provide a worldwide-unique identifier for each node in a computer I/O system.

It is another object of the present invention to provide an validity code in a node identifier which indicates if a node identifier is valid or not valid.

It is another object of the present invention to provide a retry procedure for retrying the acquisition of a node identifier if the acquired node identifier is not valid.

It is another object of the present invention to provide a procedure for deferring the retrying of the acquisition cf a node identifier when the procedure is unsuccessful.

The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of the preferred embodiment of the invention as illustrated in the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of the I/O system of a data processing system which uses the present invention;

FIG. 2 illustrates a frame for transmitting data in the I/O system of FIG. 1;

FIG. 3 illustrates a link header portion of the frame of FIG. 2;

FIG. 4 illustrates a link trailer portion of the frame of FIG. 2;

FIG. 5 shows the format and content of the information field of an RID frame of the present invention;

FIG. 6 shows the format and content of the information field of an IDR frame of the present invention;

FIG. 7 is a logic flow diagram of the sending of an IDR frame by a link-level facility in response to the receipt of an RID frame;

FIG. 8 is a logic flow diagram of the initializaticn procedure for a channel link-level facility;

FIG. 9 is a logic flow diagram of the initialization procedure for a control-unit link-level facility;

FIG. 10 is a logic flow diagram of a channel node-identifier acquisition procedure;

FIG. 11 is a logic flow diagram of a control-unit node-identifier acquisition procedure; and

FIG. 12 shows the format and content of the node descriptor of a node of the I/O system of FIG. 1 for use in the IDR information field of FIG. 6.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 is a block diagram of the I/O system of a data processing system for making dynamic connections between the channel subsystem of the data processing system and control units. The I/O system includes a dynamic switch 10 having a plurality of ports P, each port P connected to one end of a plurality of links 12-18. One of the links 18 is connected to a dynamic switch control unit 20, and each of the other links 12-17 is connected to either a channel, such as channel A designated 22 or channel B designated 24, or to one of the control units 26-29. Each of the control units 26-29 control a plurality 30-33 of peripheral devices D, respectively.

Each of the channels 22 and 24 is a single interface on a System/370, a 370/XA, or an ESA/390 subsystem. The channels 22 and 24 direct the transfer of information between I/O devices of the pluralities 20-33 of devices D and main storage (not shown) of the data processing system and provide the common controls for the attachment of different I/O devices D by means of a channel path (to be defined). The channels 22 and 24 are serial channels wherein data is transmitted and received in a serial format, as explained in U.S. patent application Ser. No. 07/429,267 filed Oct. 30, 1989 for Switch and Its Protocol for Making Dynamic Connections, owned by the assignee of the present invention and incorporated herein by reference.

Each of the links 12-17 is a point-to-point pair of conductor that may physically interconnect a control unit and a channel, a channel and a dynamic switch (such as links 12 and 13), a control unit and a dynamic switch (such as links 14-17), or, in some cases, a dynamic switch and another dynamic switch (not shown). The two conductors of a link provide a simultaneous two-way communication path, one conductor for transmitting information and the other conductor for receiving information. When a link attaches to a channel or a control unit, it is said to be attached to the I/O interface of that channel or control unit. When a link is attached to a dynamic switch, it is said to be attached to a port P on that dynamic switch. When the dynamic switch makes a connection between two dynamic-switch ports, the link attached to one port is considered physically connected to the link attached to the other port, and the equivalent of one continuous link is produced for the duration of the connection.

The dynamic switch 10 provides the capability to physically interconnect any two links that are attached to it. The link attachment point on the dynamic switch 10 is the dynamic-switch port P. Only two dynamic-switch ports P may be interconnected in a single connection, but multiple physical connections may exist simultaneously within the same dynamic switch. The interconnection of two dynamic-switch ports P established by the dynamic switch 10 does not affect the existing interconnection of any other pair of dynamic-switch ports, nor does it affect the ability of the dynamic switch to remove those connections.

When a connection is established, two dynamic switch ports and their respective point-to-point links are interconnected by a switch matrix within the dynamic switch 10 such that the two links are treated and appear as one continuous link for the duration of the connection. When frames are received by one of two connected switch ports P, the frames are normally passed from one port to the other for transmission on the other port's link.

The dynamic switch 10 can form a connection between two ports P in one of two ways: dynamic or static. The connection is termed a dynamic connection or static connection, accordingly.

In the disclosed embodiment, the dynamic switch 10 can establish or remove a dynamic connection between two ports P based on the information provided by certain frame delimiters in the serial frames transmitted over the links and based on conditions present at each of these ports P.

The dynamic switch can establish or remove a static connection between two ports P as a result of commands received by means of the local or remote facilities of the dynamic-switch control unit 20. Frame delimiters or other sequences received at the port P have no effect on the static connection.

When a static connection exists between two ports P, the ports are in the static state. The static state is not affected by any information received from the link or from the statically connected port. If a sequence (to be explained) is received by one of two statically connected ports, the received sequence is normally retransmitted on the connected port's link. Frames may be received and transmitted simultaneously by statically connected ports.

In one embodiment, the dynamic switch 10 may have a maximum of 254 ports P. Since it takes two ports to make a connection, the maximum number of possible simultaneous connections is equal to half the number of ports P implemented. It will be understood that if the quantity of ports P is an odd number, then the maximum is half of the maximum number of ports P less one. A port P does not have a link address and, therefore, is not uniquely addressable. However, an association between a port P and either a destination link address or a source link address is provided by the dynamic switch.

The dynamic switch 10 has one dynamic-switch control unit 20, which is assigned the unique link address of its link 18. The dynamic-switch control unit 20 is connected to the dynamic switch 10 as though it were attached to the dynamic switch by means of a port P and is available for dynamic connections like any other control unit attached to the dynamic switch 10. Through facilities provided by the dynamic-switch control unit 20, changes can be made to information in a matrix controller of the dynamic switch 10 concerning an individual port P which alters the ability of that port to be dynamically connected with another port.

As previously mentioned, information is transferred on the serial-I/O interface in a frame. A frame is a unit of information that is sent or received according to a prescribed format. This format delineates the start and end of the unit of information and prescribes the placement of the information within these boundaries. FIG. 2 shows the basic frame format 38 which consists of a fixed-length link-header field 40, a variable-length information field 42, and a fixed-length link-trailer field 44.

Communications using the switch are governed by two hierarchical levels of functions and serial-I/O protocols, the link level and the device level. Link level protocols are used whenever a frame is sent. These protocols determine the structure, size, and integrity of the frame. Link protocols also provide for making the connection through the dynamic switch 10 and for other control functions which are unrelated to this invention. Each channel and each control unit contains a link-level facility, which is the embodiment of the link protocols, as explained in U.S. patent application Ser. No. 07/575,923 filed Aug. 31, 1990 for Managing a Serial Link in an I/O System, owned by the assignee of the present invention and incorporated herein by reference. The device level is used to convey application information such as the data which is transferred from an input-output device to the channel. A frame which contains application information or controls is called a device-level frame. A frame which is used solely for link level protocol is called a link-control frame.

Each link-level facility is assigned a unique address, called the link address. The assignment of a link address to a link-level facility occurs when the link-level facility performs initialization. Every frame sent through the switch contains link-level addressing which identifies the source and destination of the frame. Specifically, this addressing information consists of the link addresses of the sending link-level facility (source link address) and receiving link-level facility (destination link address). The switch uses this addressing information in order to make a connection from the port receiving the frame to the correct port for sending the frame to the specified destination.

The dynamic-switch control unit 20 has a link address assigned to it for the purpose of communicating with the channels and control units attached to the switch.

With the configuration of FIG. 1, contention created by two or more switch ports P receiving a frame requiring a dynamic connection to the same switch port P and its respective link is resolved by the facilities within the dynamic switch based on the conditions present. This contention is resolved, independent of whether a channel or control unit is attached to the link from each port involved. When the contention is resolved, only one of the contending ports becomes dynamically connected to the required port, while the other contending ports indicate on their respective links that a port-busy condition exists at the dynamic switch.

If the desired connection cannot be made, the dynamic switch 10 returns a link-control response frame containing a reason code giving the reason why the connection was not made. For example, when an error is detected in a frame that initiates a connection, a link-control-frame response (referred to herein as a response frame) called dynamic-switch-port-reject is sent including a reason code which indicates that a transmission error has occurred. Some responses are generated by the ports P, and some responses are generated by the matrix controller of the dynamic switch 10.

FIG. 3 shows a link header 40, and FIG. 4 shows a link trailer 44. Every frame is bounded by a start-of-frame (SOF) delimiter 46 which is found in the link header 40, and an end-of-frame (EOF) delimiter 48, which is found in the link trailer 44. Frame delimiters 46 and 48 are composed of combinations of special transmission characters which do not have equivalent eight-bit data codes. In the preferred embodiment, the transmission codes used are those disclosed in U.S. Pat. No. 4,486,739 issued Dec. 4, 1984 to Franaszek et al. for Byte Oriented DC Balanced (0.4) 8B/10B Partitioned Block Transmission Code, assigned by the assignee of the present invention and incorporated herein by reference. The information contained between the frame delimiters 46 and 48 consist of data characters which have equivalent eight-bit codes as explained in the aforementioned Franaszek et al. patent.

In addition to the SOF 46, the link header 40 of FIG. 3 includes a destination-address field 50, a source-address field 52 and a link-control field 54.

As previously mentioned, the SOF 46 is a special string of transmission characters that cannot appear in the contents of an error-free frame. There are two types of SOF delimiters, the connect-SOF (CSOF) delimiter, which is used as an initiate connection control to initiate the making of a dynamic connection, and passive-SOF (PSOF) delimiter, which causes no action with respect to making a dynamic connection.

The destination-address field 50 is the first field of the contents of a frame and immediately follows the SOF delimiter 46. The destination-address field 50 identifies the link-level facility of a channel or control unit that is the destination for the frame, and is used to route the frame to the link-level facility that is the intended receiver. The destination link address 50 is used to determine which physical connection is to be made, and the destination to which the frame is to be routed through the dynamic switch 10. If no connection exists, that is, if the port P is in the inactive state, and no busy or dynamic-switch-port-reject conditions are present, the connection is made and the frame is routed to the destination port.

The source-address field 52 immediately follows the destination address field 50, and identifies the sending link-level facility.

A link-level facility provides its identity as the source of a frame by inserting its assigned link address in the source-address field 52 of any frame that it sends. After a frame is received with a valid source address 52, the source address 52 is used in most cases as the destination address in any subsequent response frame of future request frames to the same link-level facility.

The link-control field 54 indicates the type and format of the frame. The link-control field 54, which is the last field of the link header 40, immediately follows the source-address field 52. For the purposes of the present invention, the link-control field 54 indicates whether the frame is a link control frame or a device frame. When the frame is a link control frame, the link-control field 4 also indicates the function of the frame. Some of these functions are dynamic-switch-port reject, link-level reject, link-level busy, dynamic-switch port busy, and other functions necessary to report the status for link level facilities.

The information field 42 is the first field following the link header 40. The size of the information field depends on the function performed by the particular frame. The aforementioned reason code, for instance, is transmitted in the information field 42 of response frames.

The link trailer 44 includes a cyclic-redundancy-check (CRC) field 56 just before the EOF delimiter 48. The CRC field 56 contains a redundancy-check code that is used by the receiving link-level facility to detect most frame errors which affect the bit integrity of a frame. The address 50 and 52, link-control 54 and information 42 fields are used to generate the CRC 56 and are, therefore, protected by the CRC 56.

The end-of-frame (EOF) delimiter 48 is the last string of transmission characters of a frame. Again, it is a specific train of transmission characters that cannot appear in the contents of an error-free frame. When the EOF delimiter 48 is encountered during the reception of a frame, it signals the end of the frame and identifies the two transmission characters immediately preceding the EOF delimiter 48 as the CRC 56 at the end of the contents of the frame. The EOF delimiter 48 also indicates the extent of the frame for purposes of any applicable frame-length checks.

Idle characters are sent over the links when frames are not being transmitted. These idle characters, which are special characters not having data values, maintain the links in synchronism. Sequences of special idle characters are also transmitted to provide limited communication of special commands.

Each link-level facility includes a microcode controlled processor for performing the functions shown in the flow diagrams herein.

In the present invention, the request-node-identifier (RID) function provides a method for acquiring the node identifier of the recipient. The node identifier includes self-description information of a device attached to the channel path, where the point of attachment determines a node. The product that is attached to, and can provide self-description information on, one or more channel paths is referred to herein as a self-describing product (SDP). The format and content of the node descriptor is described in connection with FIG. 12 herein.

Upon accepting an RID frame, the receiving link-level facility checks whether it has a valid node identifier. The normal response is an IDR frame.

The eight-byte information field for the RID frame has the format shown in FIG. 5. The format of the information may or may not be checked by the recipient of the frame. When checking of the information field is performed, the contents of the information field must be the same as the defined format above. If the information field is checked and found to be different from the defined format, a link-protocol error is detected.

The identifier-response (IDR) function confirms the successful completion of the RID function, provides the unique node identifier of the responding link-level facility, and indicates the validity of the node identifier.

The IDR frame is sent only as a response to an RID frame that is accepted. The 64 byte information field of the IDR frame is as shown in FIG. 6.

Portions of the information field may be checked by the recipient of the frame. If the recipient checks the contents of bytes 0-3 of the information field, these bytes must be the same as the defined format of FIG. 6. If the information field is checked and found to be different from the defined format, a link-protocol error is detected. Bytes 4-31 of the information field are set to zeros by the source of an IDR frame and are ignored by the recipient of an IDR frame. The optional checking of the node-descriptor portion of the information field and the resultant actions are further described in connection with FIGS. 10 and 11.

FIG. 7 is a block diagram that shows the logic flow of a link-level facility in response to the receipt of an RID frame. At 60, when a link-level facility receives an RID frame, the link-level facility determines the node-identifier validity, and at 61 sets the appropriate node-ID validity code in the flag field of the node descriptor (see FIG. 12). If, while obtaining its node identifier, the link-level facility detects an error or determines for some other reason that the node-descriptor information is suspect (that is, not valid), then the link-level facility at 61 sets the node-ID validity code to the value 2 in the flag field of the node descriptor to be sent in the IDR frame.

In the response to an RID frame, the link-level facility sends an IDR frame at 62 having a node-ID validity code of either 0 or 2 in the flag field of the node descriptor. Since the link-level facility's node descriptor must be either valid or not valid, a node-ID validity code of 1 is never sent in an IDR frame.

The recipient of the IDR frame is not required to check the node-ID validity code in the flag field unless the link-level facility requires valid node-identifier information of its neighbor to continue the initialization process, as will now be discussed.

An initialization process establishes the necessary conditions for elements of a channel path to be able to sustain both link-level and device-level communication. For each channel link-level facility or control-unit link-level facility that is part of a channel path, the initialization process may be thought of as a series of hierarchical steps. At each step, a procedure is performed in the specified sequence until the procedure is completed.

FIG. 8 is a block diagram showing the flow of an initialization procedure for a channel link-level facility such as the channels 22 and 24 of FIG. 1. At 70, the channel does a link initialization which initializes the channel in accordance with the link protocols as described in Serial I/O Architecture Ordered-Set/Sequence Reception and Protocol for Managing Sequences, IBM Technical Disclosure Bulletin, Vol. 33, No. 10B, Pages 287-197, March 1991. At 72, the channel performs a channel link-address acquisition p