A method and apparatus for IB network link layer feature auto negotiation
By self-negotiating link-layer configuration information in the IB network, the problem of the subnet manager being unable to configure user-defined parameters is solved, achieving consistency of link-layer characteristic parameters and improving network performance.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-09
- Publication Date
- 2026-03-31
AI Technical Summary
In existing technologies, the subnet manager of an IB network cannot directly configure user-defined link layer characteristic parameters, resulting in high complexity in device parameter configuration and impacting network performance and management efficiency.
In the link initialization state, link layer configuration information is transmitted by modifying the reserved fields of the flow control packet, enabling self-negotiation configuration between the local and remote IB devices. This supports negotiation of protocols and custom parameters, avoiding arbitration and complex configuration by the subnet manager.
It achieves consistency of link layer characteristic parameters, improves network stability and reliability, simplifies configuration processes, reduces management pressure, improves network configuration efficiency and response speed, and meets specific network requirements.
Smart Images

Figure CN119071159B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of network transmission, and specifically relates to an IB network link layer characteristic auto-negotiation method and apparatus. Background Technology
[0002] InfiniBand (IB) networks are widely used in high-performance computing, big data analytics, cloud computing, and other fields due to their advantages such as low latency, high bandwidth, and scalability. IBA (InfiniBand Architecture) defines a system area network for IB protocol communication. This network can be divided into multiple interconnected subnets, each consisting of end nodes, switches, routers, and a subnet manager. Figure 1 This is a schematic diagram of a subnet topology.
[0003] In related technologies, subnet managers only support configuring protocol-defined parameters and cannot directly configure user-defined characteristic parameters. Furthermore, custom parameters add many tasks to the subnet manager and increase the complexity of device parameter configuration. Summary of the Invention
[0004] The purpose of this application is to provide an IB network link layer feature auto-negotiation method and apparatus, which aims to support the auto-negotiation configuration of custom link layer feature parameters.
[0005] According to a first aspect of this application, an IB network link layer feature auto-negotiation method is provided, comprising:
[0006] In the link initialization state, the local IB device and the peer IB device write their respective link layer configuration information into the reserved field of the flow control packet, and send the flow control packet to each other through their respective physical layers;
[0007] The local IB device and the remote IB device each receive the flow control packets sent by the other party through their respective physical layers, and parse the flow control packets at the link layer to obtain the link layer configuration information of the other party.
[0008] When the local IB device and the remote IB device receive each other's link layer configuration information, they negotiate using the link layer configuration information of the local IB device and the link layer configuration information of the remote IB device based on predefined negotiation rules. After successful negotiation, they obtain the link layer self-negotiation configuration information.
[0009] In an optional implementation, the link layers of the local IB device and the remote IB device write their respective link layer configuration information into the reserved fields of the flow control packet, further including:
[0010] Write the protocol configuration parameters into the first reserved field of the flow control packet;
[0011] Write the custom configuration parameters into the second reserved field of the flow control package.
[0012] In an optional implementation, during the link initialization state, the first reserved field of the flow control packet is the FCTBS field, and the second reserved field is the FCCL field.
[0013] In an optional implementation, the step of receiving flow control packets sent by the other party through the physical layers of both the local IB device and the remote IB device further includes:
[0014] The flow control packet is sent to the link layer receiving module of the peer IB device through the physical layer of the peer IB device.
[0015] The link layer receiving module of the peer IB device verifies the flow control packet. After the verification is successful, the flow control packet content is parsed, and the link layer configuration parameters of the local IB device stored in the reserved field are obtained in the initial state.
[0016] In an optional implementation, when the local IB device and the remote IB device receive each other's link layer configuration information, based on predefined negotiation rules, they negotiate using the local IB device's own link layer configuration information and the remote IB device's link layer configuration information. Upon successful negotiation, they obtain link layer self-negotiation configuration information, further including:
[0017] The minimum number of virtual channels enabled on the local IB device and the number of virtual channels enabled on the remote IB device is determined as the number of virtual channels enabled on both IB devices; and / or
[0018] The minimum of the maximum message length of the local IB device and the maximum message length of the remote IB device is determined as the maximum message length of both IB devices; and / or
[0019] The maximum value between the port address range of the local IB device and the port address range of the remote IB device is determined as the port address range of both IB devices.
[0020] In an optional implementation, after obtaining the link layer auto-negotiation configuration information, the process further includes:
[0021] Each IB device transmits the link layer auto-negotiation configuration information to its internal modules via hardware circuitry, thereby ensuring that the link layer parameter configurations of both ends are consistent.
[0022] According to a second aspect of this application, an IB network link layer feature auto-negotiation device is provided, comprising:
[0023] The sending unit is used to write the respective link layer configuration information of the local IB device and the peer IB device into the reserved field of the flow control packet when the link is initialized, and send the flow control packet to each other through the physical layer of the local IB device and the peer IB device.
[0024] The receiving unit is used to receive flow control packets sent by the other party through the physical layers of the local IB device and the remote IB device, and to parse the flow control packets at the link layer to obtain the link layer configuration information of the other party.
[0025] The negotiation unit is used to negotiate with the local IB device and the remote IB device based on predefined negotiation rules when the local IB device and the remote IB device receive the link layer configuration information of the other party. The two parties negotiate with each other and obtain the link layer self-negotiation configuration information after successful negotiation.
[0026] Compared with related technologies, the technical solution of this application has the following advantages:
[0027] It enables consistency of configuration characteristics at the link layer of connected devices, avoiding message transmission errors after link establishment caused by inconsistent link layer characteristics, thus improving network stability and reliability; it reduces the subnet manager's configuration requirements for devices, lowers the configuration pressure and management complexity of the subnet manager, and improves the management efficiency and response speed of the subnet manager; it simplifies the configuration process of network devices, which is conducive to improving the overall network configuration efficiency and quickly updating the network topology and routing information; it enables rapid information exchange at the link layer of connected devices, which is conducive to optimizing message transmission management after information exchange between devices and improving the transmission efficiency of messages in the network; it supports self-negotiation configuration of custom parameters at the link layer, making the entire IB network design more flexible and able to meet specific network requirements.
[0028] Other features and advantages of this application will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the application. The objectives and other advantages of this application may be realized and obtained by means of the structures and processes shown in the description and the accompanying drawings. Attached Figure Description
[0029] To more clearly illustrate the technical solutions in the embodiments or related technologies of this application, the accompanying drawings used in the description of the embodiments or related technologies will be briefly introduced below. Obviously, the accompanying drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0030] Figure 1 This is a schematic diagram of the IB network subnet topology based on relevant technologies.
[0031] Figure 2 This is a flowchart of an IB network link layer feature auto-negotiation method according to an exemplary embodiment of this application.
[0032] Figure 3 This is a schematic diagram of a one-way link layer characteristic parameter negotiation process according to an exemplary embodiment of this application. Detailed Implementation
[0033] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0034] The subnet manager is responsible for maintaining the subnet topology, subnet device locator (LID), subnet communication routing information, and subnet device status. When a new IB device is added to the network or an IB device restarts, the subnet manager needs to update the subnet topology and perform link establishment operations on the IB device.
[0035] Device link establishment is primarily achieved through the discovery and initialization actions of the subnet manager. The subnet manager's discovery actions include identifying network devices, updating the network topology, and optimizing network communication routes. The initialization actions include initializing device configurations, configuring network performance parameters, and configuring network routing parameters. During the subnet manager's discovery and initialization actions, numerous parameters for the subnet and devices need to be configured. Only devices with correctly configured parameters can transmit data correctly after link establishment.
[0036] The subnet manager establishes links for IB devices in the following order: first, the underlying physical layer link is established, and then the link layer link is established. The link layer states include LinkDown, LinkInitialize, LinkArm, LinkActive, and LinkActDefer. The configuration of characteristic parameters during the link layer link establishment process is mainly completed by the subnet manager in the LinkDown and LinkInitialize states.
[0037] Incorrect configuration of device link-layer characteristic parameters by the subnet manager can severely impact network performance. In IB networks, the subnet manager bears a significant management burden, needing to query the operational status and configure parameters for each IB device. When an IB device's link-layer characteristic parameters are misconfigured, it is typically only discovered after link-layer connection establishment and data transmission, at which point the error is reported to the subnet manager and the device needs to be reinitialized. In large IB networks, due to the complexity of the devices and the network itself, the reinitialization process can take several hours, significantly impacting normal network operation and data transmission efficiency.
[0038] In related technologies, subnet managers only support configuring protocol-defined parameters and cannot directly configure user-defined characteristic parameters. When IB devices need to support user-defined characteristics, they need to send messages to the subnet manager. The subnet manager records the characteristic information of each device based on the messages, then arbitrates the characteristic parameters of each connected device based on the link topology analysis, and finally sends the arbitration result to each device via messages for configuring the custom characteristic parameters. Therefore, custom parameters add many tasks to the subnet manager and increase the complexity of device parameter configuration.
[0039] Based on the above analysis, this application proposes an IB network link layer characteristic self-negotiation method and apparatus. During device initialization, the method modifies the flow control packet to transmit parameter information and interacts with the peer device to negotiate link layer characteristic parameters suitable for data communication. It supports self-negotiation configuration of protocol link layer parameters and custom characteristic parameters without requiring subnet manager characteristic parameter arbitration and configuration. In the LinkInitialize state, the link layer synchronizes its initialization state through a custom flow control packet (FCP). In the LinkDown and LinkInitialize states, each device is in a flow control credit initialization state. The content of the flow control packet at this stage can be used as reserved fields. At this time, the connected IB devices can exchange link layer characteristic parameter information through the reserved fields of the flow control packet. After the local IB device obtains the characteristic parameters of the connected IB device, it automatically negotiates parameters through hardware to adapt the parameters of the connected device, ensuring that the link layer characteristic parameters of the device meet the data transmission requirements.
[0040] See Figure 2 The flowchart provided in this application shows that the IB network link layer feature auto-negotiation method includes:
[0041] Step 201: In the link initialization state, the local IB device and the peer IB device write their respective link layer configuration information into the reserved field of the flow control packet, and send the flow control packet to each other through their respective physical layers.
[0042] According to the IB protocol, the format of the link layer flow control packet (FCP) is shown in Table 1:
[0043]
[0044] Table 1
[0045] The OP field protocol definition only uses 4'b0000 and 4'b0001, namely the initialization flow control packet and the normal flow control packet. Devices in the LinkDown and LinkInitialize states at the link layer maintain the flow control credit initialization state, and the FCTBS and FCCL fields of the initialization flow control packet at this time can be reserved fields. This scheme makes the modifications to the link layer initialization flow control packet as shown in Table 2.
[0046]
[0047] Table 2
[0048] For example only, in the FCP packet, the parameter VL represents the number of virtual channels enabled, MTU represents the maximum packet length, and LMC represents the port address range. VL, MTU, and LMC are protocol parameters. Among the custom parameters, retry_en represents link-layer retransmission enable information, share_en represents shared buffer enable information, and credit_unit represents the flow control unit.
[0049] Each device includes a physical layer, a link layer, and other modules. The link layer modules include a receiver (RX) packet receiving module, an RX buffer, a sender (TX) packet sending module, a TX buffer, a state machine (FSM), an arbitration negotiation module, and a reg configuration module. In an exemplary preferred embodiment, the link layer characteristic parameter negotiation process is as follows: Figure 3 As shown. For example:
[0050] In step ①, the link layer of IB device 2 enters the LinkInitialize state, and the link layer of the connected IB device 1 will also be in the LinkInitialize state at this time.
[0051] In step ②, the link layer configuration parameters of IB device 2 are written into a custom flow control packet and sent.
[0052] In step ③, the TX end of the IB device 2 link layer sends a custom flow control packet, which is then sent to the cable via the physical layer.
[0053] Step 202: Receive the flow control packets sent by the other party through the physical layer of the local IB device and the remote IB device respectively, and parse the flow control packets at the link layer to obtain the link layer configuration information of the other party.
[0054] For example:
[0055] In step ④, the custom flow control packet reaches the physical layer of IB device 1 via the cable, and the physical layer of IB device 1 sends the packet to the link layer;
[0056] In step ⑤, the link layer RX end of IB device 1 receives the custom flow control packet, verifies the packet, and after the verification is successful, parses the packet content and obtains the link layer configuration parameters of IB device 2 from the reserved fields.
[0057] In step ⑥, after obtaining the link layer configuration parameters of IB device 2 at the link layer of IB device 1, the link layer configuration parameters of IB device 1 itself are obtained from the local configuration module reg.
[0058] Step 203: When the local IB device and the remote IB device receive each other's link layer configuration information, based on the predefined negotiation rules, they use the link layer configuration information of the local IB device and the link layer configuration information of the remote IB device to negotiate. After successful negotiation, they obtain the link layer self-negotiation configuration information.
[0059] In step ⑦, IB device 1 negotiates the link layer configuration parameters of its local end and the peer end to form the final link layer configuration parameters;
[0060] In step ⑧, IB device 1 transmits the final link layer configuration parameters to each module within IB device 1, completing the parameter auto-negotiation configuration of the LinkInitialize state. The state machine then transitions to the next state for normal message transmission and reception.
[0061] During the above process, IB device 2 also obtains the configuration parameters of IB device 1 and performs parameter self-negotiation. Finally, IB device 2 obtains the negotiated link layer configuration parameters, and the final link layer configuration parameters of both ends are consistent.
[0062] In step ⑦, the negotiation rules of the device can be uniformly defined according to the device and network requirements. Table 3 illustrates the parameters in the custom flow control packet and provides an exemplary negotiation rule.
[0063]
[0064]
[0065] Table 3
[0066] The above process describes how IB device 1 obtains the link layer parameter configuration information from IB device 2 and performs parameter self-negotiation. Those skilled in the art should understand that IB device 2 obtains the link layer parameter configuration information from IB device 1 through the same process and performs self-negotiation, and the negotiation rules are consistent.
[0067] The above process ensures that the link layer characteristic parameters of the connected IB devices are consistent through auto-negotiation without the need for subnet manager operation, enabling normal data transmission between the devices.
[0068] As can be seen, the IB network link layer feature auto-negotiation method proposed in this application has the following advantages compared with related technologies:
[0069] It enables consistency of configuration characteristics at the link layer of connected devices, avoiding message transmission errors after link establishment caused by inconsistent link layer characteristics, thus improving network stability and reliability; it reduces the subnet manager's configuration requirements for devices, lowers the configuration pressure and management complexity of the subnet manager, and improves the management efficiency and response speed of the subnet manager; it simplifies the configuration process of network devices, which is conducive to improving the overall network configuration efficiency and quickly updating the network topology and routing information; it enables rapid information exchange at the link layer of connected devices, which is conducive to optimizing message transmission management after information exchange between devices and improving the transmission efficiency of messages in the network; it supports self-negotiation configuration of custom parameters at the link layer, making the entire IB network design more flexible and able to meet specific network requirements.
[0070] Accordingly, exemplarily, this application provides a second aspect of an IB network link layer feature auto-negotiation apparatus, comprising:
[0071] The sending unit is used to write the respective link layer configuration information of the local IB device and the peer IB device into the reserved field of the flow control packet when the link is initialized, and send the flow control packet to each other through the physical layer of the local IB device and the peer IB device.
[0072] The receiving unit is used to receive flow control packets sent by the other party through the physical layers of the local IB device and the remote IB device, and to parse the flow control packets at the link layer to obtain the link layer configuration information of the other party.
[0073] The negotiation unit is used to negotiate with the local IB device and the remote IB device based on predefined negotiation rules when the local IB device and the remote IB device receive the link layer configuration information of the other party. The two parties negotiate with each other and obtain the link layer self-negotiation configuration information after successful negotiation.
[0074] The above-mentioned device can be implemented by the IB network link layer feature auto-negotiation method provided in the first aspect embodiment. For the specific implementation method, please refer to the description in the first aspect embodiment, which will not be repeated here.
[0075] It is understood that the circuit structures, names, and parameters described in the above embodiments are merely examples. Those skilled in the art can also make readily conceived combinations and adjustments to the structural features of the above embodiments according to their needs, and the concept of this application should not be limited to the specific details of the above examples.
[0076] Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.
Claims
1. A self-negotiation method for IB network link layer characteristics, characterized in that, Comprising: In the link initialization state, the local IB device and the opposite IB device write their respective link layer configuration information into the reserved field of the flow control packet, and send the flow control packet to the opposite through the physical layer of the local IB device and the opposite IB device; Receiving the flow control packet sent by the opposite through the physical layer of the local IB device and the opposite IB device, and obtaining the link layer configuration information of the opposite by analyzing the flow control packet at the link layer; When the local IB device and the opposite IB device respectively receive the link layer configuration information of the opposite, based on the pre-defined negotiation rule, using the link layer configuration information of the local IB device itself and the link layer configuration information of the opposite IB device, both sides negotiate respectively, and obtain the link layer self-negotiation configuration information after successful negotiation; Wherein, in the link initialization state, the link layer of the local IB device and the opposite IB device writes their respective link layer configuration information into the reserved field of the flow control packet, further comprising: Write the protocol configuration parameter into the first reserved field of the flow control packet; Write the self-defined configuration parameter into the second reserved field of the flow control packet; In the link initialization state, the first reserved field of the flow control packet is FCTBS field, and the second reserved field is FCCL field.
2. The method of IB network link layer feature auto negotiation according to claim 1, characterized in that, The physical layer of the local IB device and the opposite IB device respectively receives the flow control packet sent by the opposite, further comprising: Send the flow control packet to the link layer receiving module of the opposite IB device through the physical layer of the opposite IB device; The link layer receiving module of the opposite IB device checks the flow control packet, and after passing the check, analyzes the content of the flow control packet, and obtains the link layer configuration parameter of the local IB device stored in the reserved field in the initial state.
3. The method of IB network link layer feature auto negotiation according to claim 1, characterized in that, When the local IB device and the opposite IB device respectively receive the link layer configuration information of the opposite, based on the pre-defined negotiation rule, using the link layer configuration information of the local IB device itself and the link layer configuration information of the opposite IB device, both sides negotiate respectively, and obtain the link layer self-negotiation configuration information after successful negotiation, further comprising: Determine the minimum value of the number of virtual channel enables of the local IB device and the number of virtual channel enables of the opposite IB device as the number of virtual channel enables of the IB device at both ends; and / or Determine the minimum value of the maximum length of the message of the local IB device and the maximum length of the message of the opposite IB device as the maximum length of the message of the IB device at both ends; and / or Determine the maximum value of the port address range of the local IB device and the port address range of the opposite IB device as the port address range of the IB device at both ends.
4. The method for IB network link layer feature auto negotiation of claim 1, wherein, After obtaining the link layer self-negotiation configuration information, further comprising: Each IB device transmits the link layer self-negotiation configuration information to each module inside the device through the hardware circuit, so that the link layer parameter configuration of the IB device at both ends is consistent.
5. An IB network link layer feature auto-negotiation apparatus, characterized by, Comprising: A sending unit, configured to, in the link initialization state, the local IB device and the opposite IB device write their respective link layer configuration information into the reserved field of the flow control packet, and send the flow control packet to the opposite through the physical layer of the local IB device and the opposite IB device respectively; The receiving unit is configured to receive a flow control packet sent by the opposite end through the physical layer of the local IB device and the physical layer of the opposite end IB device, and parse the flow control packet to obtain the link layer configuration information of the opposite end. The negotiation unit is configured to, when the local IB device and the opposite end IB device respectively receive the link layer configuration information of the opposite end, perform negotiation based on a predefined negotiation rule, using the link layer configuration information of the local IB device and the link layer configuration information of the opposite end IB device, to obtain link layer self-negotiation configuration information after successful negotiation. The sending unit is further configured to: write the protocol configuration parameter into the first reserved field of the flow control packet; and write the self-defined configuration parameter into the second reserved field of the flow control packet. In the link initialization state, the first reserved field of the flow control packet is an FCTBS field, and the second reserved field is an FCCL field.
6. The IB network link layer property auto negotiation apparatus according to claim 5, wherein, The receiving unit is further configured to: send the flow control packet to the link layer receiving module of the opposite end IB device through the physical layer of the opposite end IB device; and verify the flow control packet by the link layer receiving module of the opposite end IB device, parse the content of the flow control packet after the verification is passed, and obtain the link layer configuration parameter of the local IB device stored in the reserved field in the initial state.
7. The IB network link layer property auto negotiation apparatus of claim 5, wherein, The negotiation unit is further configured to: determine the minimum value of the number of virtual channel enables of the local IB device and the number of virtual channel enables of the opposite end IB device as the number of virtual channel enables of the IB devices at both ends; and / or determine the minimum value of the maximum length of the message of the local IB device and the maximum length of the message of the opposite end IB device as the maximum length of the message of the IB devices at both ends; and / or determine the maximum value of the port address range of the local IB device and the port address range of the opposite end IB device as the port address range of the IB devices at both ends.
8. The IB network link layer property auto negotiation apparatus of claim 5, wherein, The negotiation unit is further configured to: each IB device transmits the link layer self-negotiation configuration information to each module inside the device through a hardware circuit, so that the link layer parameter configurations of the IB devices at both ends are consistent.
Citation Information
Patent Citations
Switch link aggregation method and device, equipment and storage medium
CN117675685A
Method and apparatus for over-advertising infiniband buffering resources
US20020085493A1