WO2012126352A1 - Method, device and system for transmitting messages on pcie bus - Google Patents

Method, device and system for transmitting messages on pcie bus Download PDF

Info

Publication number
WO2012126352A1
WO2012126352A1 PCT/CN2012/072608 CN2012072608W WO2012126352A1 WO 2012126352 A1 WO2012126352 A1 WO 2012126352A1 CN 2012072608 W CN2012072608 W CN 2012072608W WO 2012126352 A1 WO2012126352 A1 WO 2012126352A1
Authority
WO
WIPO (PCT)
Prior art keywords
pcie
protocol
packet
information
preset
Prior art date
Application number
PCT/CN2012/072608
Other languages
French (fr)
Chinese (zh)
Inventor
孟健
王雨晨
刘利锋
Original Assignee
成都市华为赛门铁克科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 成都市华为赛门铁克科技有限公司 filed Critical 成都市华为赛门铁克科技有限公司
Publication of WO2012126352A1 publication Critical patent/WO2012126352A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus

Definitions

  • the embodiments of the present invention relate to the field of communications technologies, and in particular, to a method, device, and system for transmitting a message on a Peripheral Component Interconnect Express (PCIE) bus.
  • PCIE Peripheral Component Interconnect Express
  • PCIE is the latest bus and interface standard. This new standard will completely replace the current Peripheral Component Interconnection (PCI) standard and the Accelerated Graphics Port (AGP), which will eventually achieve the unification of the bus standard.
  • PCIE Peripheral Component Interconnection
  • AGP Accelerated Graphics Port
  • the main advantage of PCIE is the high data transfer rate. The current highest 16X 2.0 version can reach 16GB/S, and there is considerable potential for development.
  • PCIE performs communication between applications, CPUs, and PCIE devices (such as NICs, SCSI HBAs, FC-HBAs, etc.). At the same time, it can also be used as a system-level interactive protocol.
  • Fibre Channel The Fibre Channel (FC) protocol is commonly used to communicate between servers and storage devices on a storage area network. Fibre Channel is based on FC-based link control and physical layer protocols. The main features of Fibre Channel are hot-swappable. High-speed bandwidth, remote connection, large number of connected devices, etc. Generally, the medium used for the service is fiber-optic cable and copper cable. However, FC equipment is expensive, but the fiber-optic channel using copper-axis cable has the same problem as copper medium. Such as short transmission distance (30 meters, depending on the specific cable) and susceptible to electromagnetic interference (EMI), and the current 8Gb/s rate of Fibre Channel is beginning to be compared with the maximum rate of PCIE. A big gap can't get a better data transfer rate. Summary of the invention
  • the embodiment of the invention provides a method, a device and a system for transmitting a message on a PCIE bus, so as to directly transmit a preset protocol message on a PCIE bus;
  • the initiating device obtains a preset protocol packet.
  • the preset protocol packet is carried in the PCIE protocol packet, and the PCIE protocol packet is sent to the target through the PCIE bus.
  • the end device after the target end device parses the preset protocol packet from the PCIE protocol packet, and performs a corresponding operation according to the instruction of the preset protocol packet, where the start end The device and the target device are interconnected by a third party device through a PCIE bus.
  • the encapsulating module is configured to encapsulate a protocol packet preset by the Fibre Channel to obtain a preset protocol packet.
  • the transceiver module is configured to carry the preset protocol packet in the PCIE protocol packet, and send the PCIE protocol packet to the target device through the PCIE bus, so that the target device parses the PCIE protocol packet. After the preset protocol packet, the corresponding operation is performed according to the instruction of the preset protocol packet; the parsing module is configured to parse the preset protocol packet from the PCIE protocol packet;
  • the execution module is configured to perform an operation according to the instruction of the preset protocol message.
  • the method, the device and the system for transmitting a message on the PCIE bus provided by the embodiment of the present invention enable the storage system using the FC protocol to be interconnected through the PCIE bus, so that any device connected to each other through the PCIE bus can pass the pre-preparation
  • the protocol packets are configured to perform mutual operations, and can utilize the existing functional advantages and management tools of the FC protocol, and have high data transmission bandwidth and fast processing speed, and can be used in a multi-host cluster computing system with full PCIE connection, computing nodes and The storage node is interconnected based on the FC protocol.
  • FIG. 1 is a flowchart of a method for transmitting a message on a PCIE bus according to an embodiment of the present invention
  • FIG. 2 is a flowchart of a method for transmitting a message on a PCIE bus according to an embodiment of the present invention
  • FIG. 4 is a schematic structural diagram of an apparatus for transmitting a message on a PCIE bus according to an embodiment of the present invention
  • FIG. 5 is a schematic structural diagram of a system for transmitting a message on a PCIE bus according to an embodiment of the present invention
  • FIG. 6 is a schematic structural diagram of a start device according to an embodiment of the present invention.
  • Figure ⁇ is a schematic structural diagram of a third-party device provided by an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a target device according to an embodiment of the present invention.
  • the technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention.
  • the embodiments are a part of the embodiments of the invention, and not all of the embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
  • FIG. 1 is a flowchart of a method for transmitting a message on a PCIE bus according to an embodiment of the present invention.
  • the method is applied to a network consisting of devices connected to each other through a PCIE bus, where the device includes a start device and a target device. And third party equipment.
  • the method encapsulates the packets of some predetermined protocols that are exchanged between the devices in the CPIE protocol packet, and transmits the packets through the PCIE bus. Thereby increasing the data transmission bandwidth and processing speed.
  • the method of transmitting a message on the PCIE bus provided by the embodiment of the present invention will be described below by taking the registration process or the process of establishing a virtual link as an example. It should be noted that the solution is also applicable to other scenarios.
  • the method includes:
  • Step 101 The initiating device acquires the packet of the first preset protocol.
  • the embodiment of the present invention may carry preset protocol packets in the foregoing according to specific service types.
  • the TLP packet obtains the FC-TLP protocol, wherein the FC-TLP protocol packet is in the FC-TLP frame format, and the preset protocol packet is the FC protocol packet;
  • the initiating device encapsulates the packet of the first preset protocol in the TLP payload portion of the PCIE packet.
  • Step 102 After acquiring the PCIE device ID of the target device, the initiating device carries the packet of the first preset protocol in a PCIE protocol packet, and sends the PCIE protocol packet through the PCIE bus. And the target device is configured to perform the corresponding operation according to the instruction of the preset protocol packet, after the target end device parses the preset protocol packet from the PCIE protocol packet, where The start device and the target device are interconnected by a third party device through a PCIE bus.
  • the third-party device in this embodiment may be a specific network management device in the link.
  • the preset protocol packet in this embodiment is an FC protocol packet or an FCoPIP protocol.
  • the first preset protocol refers to an FC-TLP
  • the second preset protocol refers to FCoPIP;
  • the "carrying” in this embodiment is also referred to as "encapsulation” in the field, and actually refers to an approach of mapping FCoPIP protocol packets or FC protocol packets into a form conforming to PCIE protocol packets.
  • the preset protocol packet can be carried in the Transaction Layer Protocol (TLP) packet of the PCIE.
  • TLP Transaction Layer Protocol
  • Table 1 The definition of each field is as follows:
  • the frame start identifier indicates the beginning of a data frame
  • DLLP header used for link management functions, including physical layer flow control, the main responsibility is to ensure reliable and correct transmission of data packets and ensure the integrity of data packets;
  • TLP header for processing transactions such as read and write requests of upper-layer applications
  • the TLP packet is the Ethernet-TLP packet described in the embodiment of the present invention.
  • ECRC Cyclic Redundancy Check
  • LCRC which refers to the CRC of the data link layer, is based on the sequence identifier (ID, IDentity) and the CRC field of all bytes of the TLP;
  • the end of frame indicator indicates the end of a data frame.
  • the initiating device carries the registration information server request information of the first preset protocol in the PCIE protocol packet, and sends the information to the third-party device through the PCIE bus, and receives the first pre-received in the PCIE protocol packet returned by the third-party device.
  • a third request response information of the protocol where the third request response information carries a PCIE device ID of the target device;
  • the initiating device carries the port registration request information of the first preset protocol in a PCIE protocol packet according to the PCIE device ID of the target device that is obtained from the third request response information, and sends the information through the PCIE bus. Giving the target device, and receiving the fourth request response information of the first preset protocol carried in the PCIE protocol packet returned by the target device, thereby establishing the target device Fibre Channel virtual link between.
  • the registration process in the PCIE network can also be performed as follows: The registration process of the initiating device is as follows:
  • the initiating device carries the device discovery request of the second preset protocol in the PCIE protocol packet, and sends the packet through the PCIE bus, and receives the first preset of the second preset protocol that is returned by the third-party device and is carried in the PCIE protocol packet.
  • Requesting response information where the first request response information carries a PCIE device ID of a third-party device;
  • the initiating device carries the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and sends the information to the third-party device through the PCIE bus, where the virtual link instance is sent.
  • the request information carries the PCIE device ID of the initiating device; and receives the second request response information of the second preset protocol that is carried in the PCIE protocol packet returned by the third device, thereby registering the initiating device in the third party device. .
  • the target device can also adopt a similar registration process, as follows:
  • the target device carries the device discovery request of the second preset protocol in the PCIE protocol packet, and sends the packet through the PCIE bus, and receives the first preset of the second preset protocol that is carried in the PCIE protocol packet corresponding to the third-party device.
  • Requesting response information where the first request response information carries a PCIE device ID of a third-party device;
  • the target device carries the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and sends the information to the third-party device through the PCIE bus, where the virtual link instance is sent.
  • the request information carries the PCIE device ID of the target device; and receives the second request response information of the second preset protocol that is carried in the PCIE protocol packet returned by the third device, thereby registering the target device in the third party device. .
  • the packet carrying the second preset protocol is carried in the PCIE packet, and is specifically:
  • FCoPIP-TLP protocol packet is an FCoPIP-TLP frame format, where the preset protocol packet is carried in the processing layer protocol TLP packet of the PCIE protocol packet, where the FCoPIP-TLP protocol packet is an FCoPIP-TLP frame format, where The preset protocol is FCoPIP (FC over PCIE initialization protocol) Protocol message. That is, the device discovery request of the FCoPIP-TLP packet is encapsulated in the TLP payload part of the PCIE packet, or the virtual link instantiation request information of the FCoPIP-TLP packet is encapsulated in the PCIE packet. TLP load section.
  • the initiating device encapsulates the preset protocol packet and carries it in the PCIE protocol packet, for example, a computer application or a CPU. If you want to read or write a device through the PCIE bus, the read and write requests are converted to FC read and write commands and encapsulated, and then carried in the PCIE protocol packets. Alternatively, when a device connected to the computer through the PCIE bus receives a request message sent by the computer through the PCIE bus, and the device needs to return a request response message, the device converts the request response message into the protocol report of the embodiment of the present invention. The packet is encapsulated and then carried in the PCIE protocol packet.
  • the method for transmitting a message on the PCIE bus provided by the embodiment of the present invention enables any device connected to each other through the PCIE bus to perform mutual operation through preset protocol messages, and the data transmission bandwidth is high and processed. Fast, can be used in a multi-host cluster computing system with full PCIE connectivity.
  • the compute nodes and storage nodes are interconnected based on the FC protocol.
  • 2 is a flowchart of a method for encapsulating a preset protocol packet in the embodiment of the present invention. In this embodiment, before the PCIE device ID of the target device is obtained, the preset protocol is carried. In the PCIE protocol text:
  • the initiating device, and/or the target device sends a device discovery request, to obtain a PCIE device ID of the third device, for example, the device discovery request is an FCoPIP-TLP packet, and the device discovery request corresponds to the FCoPIP.
  • the device discovery request is an FCoPIP-TLP packet, and the device discovery request corresponds to the FCoPIP.
  • Table 1 The values of some fields that can be included in the Encapsulated FCoPIP operation section of the TLP 4 are shown in Table 1.
  • FC WWN MAX Size and the like, wherein the FCoPIP Protocol Code is 000 lh indicates that the device finds that when the Subcode is Olh, the service type Operation is Discovery Solicitation, and the service content Contents of Operation includes the PCIE Device ID, and the FC global unique name (world) Information such as wide name, WWN, and MAX Size; when the subcode is 02h, the service type is Discovery Advertisement, and the content of the service content is the Priority.
  • the service content also includes the PCIE Device ID. , FC WWN, MAX Size, etc.
  • the MAX size indicates the size of the packet that the initiating device can receive.
  • the priority indicates the priority of the third-party device. There may be multiple third-party devices on the PCIE link. In this case, there are multiple third-party devices.
  • the first request response message is returned, and the priority in the first request response information may be used as a reference, so that the third party device with higher priority identifier in the first request response information is preferably used.
  • the initiating device needs to send the device discovery request information in the PCIE link, where the device discovery request information carries the Fibre Channel protocol parameters required for communication between the initiating device and the target device.
  • the device discovery request information may be sent by broadcast or multicast on the PCIE link, and the first request response information returned by the third-party device may be received.
  • Step 1011 The initiating device, and/or the target device receives the first request response information returned by the third device, where the first request response information carries the PCIE device ID of the third device.
  • the first request response information may be the foregoing Discovery Solicitation, indicating a device discovery request;
  • the embodiment of the present invention may obtain the PCIE device ID of the third-party device by using other methods.
  • the field that encapsulates the Subcode is 02h indicates the Discovery Advertisement. Publish your own PCIE device ID to other devices on the PCIE link.
  • step 1010 when the originating device or the target device sends the device discovery request information, and the third party device sends the first request response information in step 1011, Sent as follows:
  • the device discovery request information or the first request response information in the FCoPIP-TLP packet format is encapsulated in the TLP payload part of the PCIE packet, and then the encapsulated PCIE packet is sent to the peer device.
  • Step 1012 The start device, and/or the target device obtains the PCIE device ID of the third device, and sends the virtual link instantiation request information to the third device according to the PCIE device ID of the third device, and/or receives The second request response information returned by the third-party device on the PCIE link.
  • the virtual link instantiation request information may be a virtual link instantiation request, for example, the FCoPIP-TLP protocol carrying the FLOGI message may be carried in the TLP packet of the PCIE protocol packet;
  • the above virtual link instantiation request information is also referred to as virtual link initialization request information.
  • the second request response information may be a Virtual Link Instantiation Reply, indicating that the second request response information is a virtual link instantiation response, for example, the FCoPIP-TLP protocol packet carrying the FLOGI response message may be carried in the PCIE protocol report.
  • the FCoPIP-TLP protocol packet carrying the FLOGI response message may be carried in the PCIE protocol report.
  • the TLP package In the TLP package;
  • the virtual link instantiation request information is sent to the third-party device according to the PCIE device ID of the third-party device, and the second request response information returned by the third-party device on the PCIE link is received, which may include:
  • the initiating device runs the query query command in the device, and can query the device ID of the device. After the PCIE device ID of the initiating device is queried, the PCIE device ID of the initiating device is carried in the virtual link instantiation request. In the information, in the embodiment, the PCIE device ID of the initiating device is carried in the FCoPIP-TLP protocol packet, and the virtual link instantiation request information is sent to the third-party device, and the PCIE link is received. The second request response information returned by the three-way device;
  • the virtual link instance is sent to the third-party device according to the PCIE device ID of the third-party device.
  • the PCIE device ID of the target device is encapsulated in the FCoPIP-TLP protocol packet, and the virtual link instantiation request information is sent to the third-party device, and the third-party device on the PCIE link is received.
  • the second request response information returned.
  • the method is as follows:
  • the virtual link instantiation request information or the second request response information in the FCoPIP-TLP packet format is encapsulated in the TLP payload part of the PCIE packet, and then the encapsulated PCIE packet is sent to the peer device. .
  • the virtual link instantiation request information is a protocol packet in the FCoPIP-TLP frame format, which is used to implement initialization of the link and the device, and the FCoPIP-TLP corresponding to the virtual link instantiation request information is Encapsulated FCoPIP.
  • FCoPIP-TLP corresponding to the virtual link instantiation request information is Encapsulated FCoPIP.
  • the FCoPIP Protocol Code is 0002h, and the link and the device are instantiated.
  • the service type is the virtual link instantiation request
  • the service content Contents of Operation includes the FC FLOGI message and the start end.
  • the PCIE device ID of the device; the Subcode is 02h, indicating that the service type is a Virtual Link Instantiation Reply, that is, the response of the virtual link instance request information, that is, the second request response information according to the embodiment of the present invention
  • the service content Contents of The Operation includes an FC FLOGI response message.
  • the FC FLOGI response message may specifically be response information for structural registration information such as a Fabric login.
  • Step 1013 After the third-party device returns the second request response information, the device (the originating device, and/or the target device) that sends the virtual link instantiation request information is assigned a Fibre Channel port ID, and is in a third party.
  • the assigned Fibre Channel port ID is recorded in the device. Specifically, if the device that sends the virtual link instantiation request information is the start device, the Fibre Channel port ID allocated to the start device is recorded, and optionally, the fiber of the start device is also recorded. Other information such as channel protocol parameters. If the device that sends the virtual link instantiation request information is a target device, record the Fibre Channel port ID assigned to the target device.
  • Fibre Channel port ID is an address identifier uniquely associated with the device determined in the routing configuration.
  • FCoPIP-TLP protocol packet The format of the FCoPIP-TLP protocol packet provided by the embodiment of the present invention is shown in Table 3.
  • the Type field indicates the type of the data frame of the preset protocol packet.
  • the FCoPIP_T YPE indicates that the protocol packet is a protocol packet in the FCoPIP-TLP frame format. Version indicates the version, and Reserved indicates the reservation.
  • the Encapsulated FC Frame (n words) indicates the specific content of the encapsulation.
  • the protocol packet type of the preset is the FCoPIP-TLP protocol packet.
  • FCoPIP-TLP protocol packet The specific fields and fields of the Encapsulated FCoPIP operation part of the FCoPIP-TLP protocol packet provided in the embodiment of the present invention are as shown in Table 3.1, and the FCoPIP Protocol Code, for example, can be referred to. As shown in Table 2, if the value is 20 0002h, it means that the link and device are instantiated; Contents of Operation can be FC FLOGI message and PCIE Device ID in Table 2.
  • Step 1014 The initiating device sends the registration name server request information to the third-party device to obtain the PCIE device ID of the target device.
  • the initiating device sends a registration name server request to the third-party device to query the PCIE device ID of the target device, where the registration name server request carries the world wide name (WWN) of the target device.
  • WWN world wide name
  • the initiating device receives the third request response information (registered name server response) corresponding to the third party device, where the third request response information carries the PCIE device ID of the target device.
  • the PCIE device ID of each of the head device and the target device stored in the third-party device is obtained. Please refer to Table 2.
  • the above-mentioned registration name server request and the third request response information are FC-TLP packets, which are encapsulated in the TLP payload part of the PCIE packet, and then the encapsulated PCIE packet is sent to the peer device.
  • Step 1015 The initiating device sends the port registration request information to the target device by using the obtained PCIE device ID of the target device, for example, may send the PLOGI information, and after receiving the fourth request response information returned by the target device, The start device and the target device complete the establishment of the Fibre Channel virtual link and communicate data through the Fibre Channel virtual link.
  • the fourth request response information may also be regarded as a setup completion response information of the Fibre Channel virtual link.
  • the port registration request information is specifically an FC-TLP protocol packet.
  • the initiating device sends a registration name server request to the third party device, and the third party device correspondingly returns the third request response information, and the step 4 is gathered from 1015.
  • the start device sends the port registration request information to the target device and the target device returns the fourth request response information
  • the device sends the following information:
  • the Type field indicates the type of the encapsulated data frame, and the FCoP_TYPE indicates that the protocol packet is the protocol of the FC-TLP frame format. Version indicates the version, and Reserved indicates the reservation.
  • Encapsulated FC Frame indicates the specific content of the package.
  • the initiating device and/or the target device determines that the link maintenance information may be sent when the link maintenance period arrives.
  • the link maintenance information includes the PCIe device ID and Fibre Channel port ID of the initiator device and the target device.
  • the link maintenance information is also in the FCoPIP-TLP packet format and is sent by:
  • the link maintenance information of the FCoPIP-TLP packet format is encapsulated in the TLP payload part of the PCIE packet, and then the encapsulated PCIE packet is sent to the peer device.
  • Table 5 is the value of some fields that can be included in the Encapsulated FCoPIP operation part of the FCoPIP-TLP packet sent by the initiating device and the target device.
  • Table 3.1 For the arrangement of each field, please refer to Table 3.1, which will not be repeated here.
  • the start device and the target device can send link maintenance information on the PCIE link, so that other devices on the PCIE link can learn the survival status of the start device and the target device. .
  • the FCoPIP Protocol Code in the FCoPIP-TLP packet format is 0003h, where, as shown in the above table, when the Subcode is Olh, the service type is Keep Alive; the service content carries the FC.
  • the FCoPIP is carried in the processing layer protocol TLP packet of the PCIE protocol packet.
  • the Keep Alive is used to indicate that the originating device or the target device that sends the Keep Alive message is still alive; Clear virtual links is used by the third-party device to detect whether the originating device or the target device does not exist on the PCIE link. For example, if the device fails, or the device function is turned off, the device is powered off, etc. If the third-party device determines that the originating device or the target device does not exist, notify the other device that establishes the communication link with the link. Exist, request # put resources, reclaim the Fibre Channel port ID assigned to the originating device and/or the target device.
  • FIG. 3 is a schematic structural diagram of an apparatus for transmitting a message on a PCIE bus according to an embodiment of the present invention.
  • the apparatus is a specific execution body of the foregoing method, and therefore the content in the method embodiment is referenced.
  • the manner of the present invention is incorporated into the embodiment of the device, and is not described herein.
  • the device includes:
  • the encapsulating module 201 is configured to obtain a preset protocol packet.
  • the transceiver module 202 is configured to carry the preset protocol packet in a PCIE protocol packet, and send the PCIE protocol packet to the target end device by using a PCIE bus, so that the target end device is from the After the preset protocol packet is parsed in the PCIE protocol packet, the corresponding operation is performed according to the instruction of the preset protocol packet;
  • the parsing module 203 is configured to parse the preset protocol packet from the received PCIE protocol packet, and the executing module 204 is configured to perform a corresponding operation according to the preset protocol packet instruction.
  • the encapsulating module 201 is specifically configured to carry the preset protocol packet in a processing layer protocol TLP packet of the PCIE protocol packet.
  • the device for transmitting a packet on the PCIE bus provided by the embodiment of the present invention carries the preset protocol packet in the PCIE protocol packet, and carries the PCIE protocol packet with the preset protocol packet through the PCIE bus.
  • the device transmits to the target device, and realizes the transmission of the preset protocol message on the PCIE bus, so that any device connected to each other through the PCIE bus can perform mutual operation through the preset protocol message, and the data is transmitted. High bandwidth and fast processing speed. It can be used in a multi-host cluster computing system with full PCIE connection.
  • the compute nodes and storage nodes are interconnected based on the FC protocol.
  • FIG. 4 is a schematic structural diagram of an apparatus for transmitting a message on a PCIE bus according to an embodiment of the present invention:
  • the encapsulating module 201 includes: a first encapsulating unit 2011, configured to acquire a preset protocol packet when sending the device discovery request information to the third-party device;
  • the embodiment of the present invention may encapsulate the preset protocol packet in the processing layer protocol TLP packet of the PCIE protocol according to a specific service type, and obtain an FC-TLP protocol text; or The protocol packet is encapsulated in the processing layer protocol TLP packet of the PCIE protocol packet, and the FCoPIP-TLP protocol packet is obtained.
  • the transceiver module 202 is configured to acquire a PCIE device ID of the target device, and encapsulate the PCIE device ID of the target device in a preset protocol packet, and carry the preset protocol packet in the PCIE.
  • the PCIE protocol packet is sent to the target through the PCIE bus.
  • the end device after the target end device parses the preset protocol packet from the PCIE protocol packet, and performs a corresponding operation according to the instruction of the preset protocol packet;
  • the transceiver module 202 is specifically configured to send the device discovery request information to the third-party device, and receive the first request response information returned by the third-party device, where the first request response is carried.
  • the transceiver module 202 There is a PCIE device ID of the third party device.
  • the third-party device in this embodiment may be a specific network management device in the link.
  • the sending and receiving module 202 sends the device discovery request information to the third-party device, and may send the device discovery request information to the third-party device through the target device.
  • the first encapsulating unit 2011 is further configured to: when the transceiver module 202 sends a virtual link instantiation request to a third-party device, The PCIE device ID of the start device is encapsulated in the FCoPIP protocol packet, and the FCoPIP protocol packet is carried in the PCIE protocol packet to obtain the FCoPIP-TLP protocol packet.
  • the transceiver module 202 is configured to send a virtual link instantiation request to the third-party device, where the request information may be a Virtual Link Instantiation Request;
  • the sending and receiving module 202 sends a virtual link instantiation request to the third-party device, and the third-party device can send the third-party device to the third-party device, and also needs to send the third-party device to the third-party device.
  • the transceiver module 202 receives the PCIE link.
  • the second request response information returned by the third-party device where the second request response information may be a virtual link instantiation reply, indicating a virtual link instantiation response, where the second request response information carries the start device and the target
  • the encapsulating module 201 may further include:
  • the second encapsulating unit 2012 is configured to process the preset protocol packet when the registration name server request information is sent to the third-party device, and encapsulate the Fibre Channel protocol parameter and the Fibre Channel port ID of the third-party device in the FC protocol report.
  • the FC protocol packet is carried in the PCIE protocol packet to obtain the FC-TLP protocol text.
  • the transceiver module 202 is further configured to send the registration name server request to the third-party device, and receive the third request response information returned by the third-party device.
  • the registration name server request information is an FC-TLP protocol packet
  • the Fibre Channel port ID is an address identifier uniquely corresponding to the device determined in the routing configuration.
  • the third request response information carries the PCIE device ID of the target device.
  • the second encapsulation unit 2012 is further configured to process the preset protocol packet, encapsulate the PCIE device ID of the target device in the FC protocol packet, and configure the FC protocol.
  • the packet is carried in the PCIE protocol packet to obtain the FC-TLP protocol packet.
  • the transceiver module 202 is configured to send the port registration request information to the target device, and receive the fourth request response returned from the target device. Information to establish a Fibre Channel virtual link from the originating device to the target device.
  • the device further includes:
  • the configuration module 401 is configured to configure a respective Fibre Channel port ID for the start device and the target device, and carry the Fibre Channel port ID in the first request response information, in response to the received preset protocol message. Return to the originating device and the target device;
  • the recording module 402 is configured to record the allocated Fibre Channel port ID and the PCIE device ID, and the Fibre Channel protocol parameters, where the recorded Fibre Channel protocol parameters include the Fibre Channel port ID of the initiating device and the target device. Fibre Channel port ID, and Fibre Channel protocol parameters for each of the initiator and destination devices.
  • the Fibre Channel port ID is an address identifier uniquely corresponding to the device determined in the routing configuration.
  • the device for transmitting a message on the PCIE bus interconnects the storage system using the FC protocol through the PCIE bus, so that any device connected to each other through the PCIE bus can report through a preset protocol.
  • the mutual operation of the text can utilize the existing functional advantages and management tools of the FC protocol, and the data transmission has high bandwidth and fast processing speed, and can be used in a multi-host cluster computing system with full PCIE connection, and the computing node and the storage node are based on the FC.
  • the protocol implements interconnection.
  • FIG. 5 is a schematic structural diagram of a system for transmitting a message on a PCIE bus according to an embodiment of the present invention, as shown in FIG. 5, The system includes:
  • the start device 20, the target device 30, and the third party device 40, wherein the start device 20, the target device 30, and the third party device 40 are connected and perform data interaction through the PCIE bus.
  • FIG. 6 is a schematic structural diagram of a start device according to an embodiment of the present invention, where the start device 20 includes:
  • the first sending unit 601 is configured to carry the registration name server request information of the first preset protocol in the PCIE protocol packet, and send the information to the third-party device through the PCIE bus;
  • the first receiving unit 602 is configured to receive, by the third device, the third request response information of the first preset protocol that is carried in the PCIE protocol packet, where the third request response information carries the PCIE device ID of the target device;
  • the first sending unit 601 is further configured to: carry the port registration request information of the first preset protocol in a PCIE protocol packet according to the PCIE device ID of the target device that is obtained from the third request response information, And sent to the target device through the PCIE bus;
  • the first receiving unit 602 is further configured to receive fourth request response information of the first preset protocol that is carried in the PCIE protocol packet returned by the target device, thereby establishing a Fibre Channel virtual link.
  • the initiating device 20 further includes:
  • the second sending unit 603 is configured to: after the first sending unit 601 carries the registration name server request information of the first preset protocol in the PCIE protocol message, and sends the second preset to the third-party device through the PCIE bus,
  • the device discovery request of the protocol is carried in the PCIE protocol packet and sent through the PCIE bus.
  • the second receiving unit 604 is configured to receive, by the third device, the first request response information of the second preset protocol that is carried in the PCIE protocol packet, where the first request response information carries the PCIE of the third-party device.
  • Device ID the first request response information of the second preset protocol that is carried in the PCIE protocol packet, where the first request response information carries the PCIE of the third-party device.
  • the second sending unit 603 is further configured to carry the virtual link instantiation information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and send the information to the third-party device through the PCIE bus.
  • the virtual link instantiation request information carries a PCIE device ID of the initiating device;
  • the second receiving unit 604 is further configured to receive, by the third-party device, the carried in the PCIE protocol packet
  • the second request response information of the second preset protocol is configured to register the originating device in the third party device.
  • the first sending unit 601 is further configured to periodically carry the link maintenance information of the second preset protocol in the PCIE protocol packet on the Fibre Channel virtual link, and send the information to the peer device.
  • Figure ⁇ is a schematic structural diagram of a third-party device provided by an embodiment of the present invention, and the third-party device 40 includes:
  • the third receiving unit 701 is configured to receive, by the initiating device, the registration name server request information of the first preset protocol that is carried in the PCIE protocol packet;
  • the third sending unit 702 is configured to carry the third request information of the first preset protocol in the PCIE protocol message, and send the message to the initiating device through the PCIE bus, where the third request response information carries the target The PCIE device ID of the end device.
  • the third party device 40 further includes:
  • the fourth receiving unit 703 is configured to receive a device discovery request that is sent by the initiating device or the target device to the second preset protocol that is carried in the PCIE protocol packet;
  • the fourth sending unit 704 is configured to carry the first request response information of the second preset protocol in the PCIE protocol, and send the information to the originating device or the target device through the PCIE bus.
  • FIG. 8 is a schematic structural diagram of a target device according to an embodiment of the present invention, where the target device 30 includes:
  • the fifth receiving unit 801 is configured to receive, by the initiating device, port registration request information of the first preset protocol that is carried in the PCIE protocol packet;
  • the fifth sending unit 802 is configured to carry the fourth request response information of the first preset protocol in the PCIE protocol, and send the information to the initiating device through the PCIE bus, thereby establishing a Fibre Channel virtual link.
  • the target device 30 further includes:
  • the sixth sending unit 803 is configured to: before the fifth receiving unit receives the port registration request information, carry the device discovery request of the second preset protocol in the PCIE protocol packet, and send the message through the PCIE bus;
  • the sixth receiving unit 804 is configured to receive, by the third device, the first request response information of the second preset protocol that is carried in the PCIE protocol packet, where the first request response information carries the PCIE of the third-party device.
  • Device ID
  • the sixth sending unit 803 is further configured to: carry the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and send the information to the third-party device through the PCIE bus,
  • the virtual link instantiation request information carries a PCIE device ID of the target device;
  • the sixth receiving unit 804 is further configured to receive the second request response information of the second preset protocol that is carried in the PCIE protocol packet returned by the third-party device, so as to register the target device in the third-party device.
  • start device 20 and the target device 30 may be computers and related external devices, such as computers, servers, storage arrays, etc. in the prior art, but are not limited to computers and related external devices.
  • other specific devices connected through the PCIE bus can be the originating device 20 or the target device 30.
  • the embodiment of the invention can be used in a multi-host cluster computing system with full PCI-E connection, and the computing node and the storage node implement virtualization of the storage network based on the FC protocol.
  • the embodiment of the present invention provides a system for transmitting a message on a PCIE bus, by carrying a preset protocol packet in a PCIE protocol packet, and encapsulating a PCIE protocol with a preset protocol packet through the PCIE bus.
  • the message is transmitted to the target device, and the preset protocol message is transmitted on the PCIE bus, so that any device connected to each other through the PCIE bus can perform mutual operation through the preset protocol message, and the data
  • the transmission bandwidth is high and the processing speed is fast, which improves the transmission speed of the packet and lowers the cost of the device.
  • the two peer devices connected through the PCIE bus are enabled. Between each other, preset protocol messages can be used to perform mutual operations without defining various proprietary protocols for mutual operation, and the versatility is good.
  • the memory device of the present scheme because the PCIE bus inherits the principle of the PCI bus, but abandons the parallel shared bus, adopts the popular point-to-point serial connection in the industry, and each device has its own dedicated connection, and does not need to The entire bus requests bandwidth, and can increase the data transmission rate to a very high frequency, reaching the high bandwidth that PCI cannot provide, that is, all devices can pass Connecting through PCIE simplifies unnecessary troubles in the design of the motherboard.

Abstract

Provided are a method, device and system for transmitting messages on a PCIE bus. The method includes: a protocol message preset by a start-end device processes a preset protocol message and obtains a preset protocol message; after obtaining the ID of the PCIE device of a target-end device, carries the preset protocol message in a PCIE protocol message, and sends the PCIE protocol message to the target-end device via a PCIE bus, so that the target-end device parses the preset protocol message from the PCIE protocol message and then executes a corresponding operation according to an instruction in the preset protocol message; the start-end device, the target-end device and the third party device are interconnected via the PCIE bus. The solution provided in the embodiments of the present invention has high bandwidth for data transmission, quick processing speed, good universality and low cost.

Description

在 PCIE总线上传输报文的方法、 设备和系统 本申请要求于 2011 年 3 月 23 日提交中国专利局、 申请号为 201110070778.6、 发明名称为 "在 PCIE总线上传输艮文的方法、 设备和系统" 的中国专利申请的优先权, 其全部内容通过引用结合在本申请中。 技术领域  Method, device and system for transmitting messages on PCIE bus This application claims to be filed on March 23, 2011 with the Chinese Patent Office, application number 201110070778.6, and the invention name is "Method, device and system for transmitting messages on PCIE bus" The priority of the Chinese Patent Application, the entire contents of which is incorporated herein by reference. Technical field
本发明实施例涉及通信技术领域, 尤其涉及一种在外部组件高速互联 ( Peripheral Component Interconnect Express , 简称为: PCIE )总线上传输艮文 的方法、 设备和系统。 背景技术  The embodiments of the present invention relate to the field of communications technologies, and in particular, to a method, device, and system for transmitting a message on a Peripheral Component Interconnect Express (PCIE) bus. Background technique
PCIE是最新的总线和接口标准, 这个新标准将全面取代现行的外部组件 互连 ( Peripheral Component Interconnection , PCI ) 标准和力口速图形接口 ( Accelerated Graphics Port, AGP ), 最终实现总线标准的统一。 PCIE的主要 优势是数据传输速率高, 目前最高的 16X 2.0版本可达到 16GB/S , 而且还有 相当大的发展潜力。 PCIE作为主板级的交互协议, 完成应用程序、 CPU 和 PCIE设备(如 NIC, SCSI HBA, FC-HBA等) 间的通信。 同时, 也可以作为 系统级的交互协议。  PCIE is the latest bus and interface standard. This new standard will completely replace the current Peripheral Component Interconnection (PCI) standard and the Accelerated Graphics Port (AGP), which will eventually achieve the unification of the bus standard. The main advantage of PCIE is the high data transfer rate. The current highest 16X 2.0 version can reach 16GB/S, and there is considerable potential for development. As a board-level interactive protocol, PCIE performs communication between applications, CPUs, and PCIE devices (such as NICs, SCSI HBAs, FC-HBAs, etc.). At the same time, it can also be used as a system-level interactive protocol.
光纤通道(Fibre Channel, FC )协议通常用于存储区域网络上的服务器 和存储设备之间的通信, 光纤通道基于 FC的链路控制和物理层协议, 光纤通 道的主要特性有热插拔性、 高速带宽、 远程连接、 连接设备数量大等, 一般 的, 业务采用的介质是光纤线缆和铜缆等, 然而, FC设备价格昂贵, 但采用 铜轴电缆的光纤通道有着铜媒介一样的问题, 如传输距离短( 30米, 取决于 具体的线缆 )以及易受电磁干扰 ( Electromagnetic Interference, EMI )影响等, 且目前光纤通道刚开始流行的 8Gb/s的速率与 PCIE的最大速率相比有很大差 距, 不能获得更好的数据传输率。 发明内容 The Fibre Channel (FC) protocol is commonly used to communicate between servers and storage devices on a storage area network. Fibre Channel is based on FC-based link control and physical layer protocols. The main features of Fibre Channel are hot-swappable. High-speed bandwidth, remote connection, large number of connected devices, etc. Generally, the medium used for the service is fiber-optic cable and copper cable. However, FC equipment is expensive, but the fiber-optic channel using copper-axis cable has the same problem as copper medium. Such as short transmission distance (30 meters, depending on the specific cable) and susceptible to electromagnetic interference (EMI), and the current 8Gb/s rate of Fibre Channel is beginning to be compared with the maximum rate of PCIE. A big gap can't get a better data transfer rate. Summary of the invention
本发明实施例提供一种在 PCIE总线上传输报文的方法、 设备和系统, 用 以实现在 PCIE总线上直接传输预置的协议报文;  The embodiment of the invention provides a method, a device and a system for transmitting a message on a PCIE bus, so as to directly transmit a preset protocol message on a PCIE bus;
本发明实施例的在外部组件高速互联 PCIE 总线上传输报文的方法, 包 括:  The method for transmitting a message on an external component high-speed interconnect PCIE bus according to an embodiment of the present invention includes:
起始端设备获取预置的协议报文;  The initiating device obtains a preset protocol packet.
在 PCIE链路中,获取到所述目标端设备的 PCIE设备 ID后,将所述预置 的协议报文携带在 PCIE协议报文中, 并通过 PCIE总线将所述 PCIE协议报 文发送给目标端设备, 以使所述目标端设备从所述 PCIE协议报文中解析出所 述预置的协议报文后根据所述预置的协议报文的指令执行相应操作, 其中, 所述起始端设备和目标端设备, 第三方设备之间通过 PCIE总线互连。  After the PCIE device ID of the target device is obtained, the preset protocol packet is carried in the PCIE protocol packet, and the PCIE protocol packet is sent to the target through the PCIE bus. And the end device, after the target end device parses the preset protocol packet from the PCIE protocol packet, and performs a corresponding operation according to the instruction of the preset protocol packet, where the start end The device and the target device are interconnected by a third party device through a PCIE bus.
本发明实施例的在外部组件高速互联 PCIE总线上传输报文的装置,其特 征在于, 包括:  The device for transmitting a message on an external component high-speed interconnect PCIE bus according to an embodiment of the present invention includes:
封装模块, 用于对光纤通道预置的协议报文进行封装, 得到预置的协议 报文;  The encapsulating module is configured to encapsulate a protocol packet preset by the Fibre Channel to obtain a preset protocol packet.
收发模块,用于将预置的协议报文携带在 PCIE协议报文中,并通过 PCIE 总线将所述 PCIE协议报文发送给目标端设备, 以使目标端设备从 PCIE协议 报文中解析出预置的协议报文后根据预置的协议报文的指令执行相应操作; 解析模块, 用于从 PCIE协议报文中解析出预置的协议报文;  The transceiver module is configured to carry the preset protocol packet in the PCIE protocol packet, and send the PCIE protocol packet to the target device through the PCIE bus, so that the target device parses the PCIE protocol packet. After the preset protocol packet, the corresponding operation is performed according to the instruction of the preset protocol packet; the parsing module is configured to parse the preset protocol packet from the PCIE protocol packet;
执行模块, 用于根据预置的协议报文的指令执行相应操作。  The execution module is configured to perform an operation according to the instruction of the preset protocol message.
本发明实施例提供的在 PCIE总线上传输报文的方法、 设备和系统, 通过 PCIE总线使得使用 FC协议的存储系统进行互连,使得通过 PCIE总线建立彼 此连接的任意设备之间均可以通过预置的协议报文进行相互的操作, 可以利 用 FC协议已有的功能优势和管理工具, 且数据传输的带宽高、 处理速度快, 可用于全 PCIE连接的多主机集群计算系统中, 计算节点与存储节点基于 FC 协议实现互连。 附图说明 The method, the device and the system for transmitting a message on the PCIE bus provided by the embodiment of the present invention enable the storage system using the FC protocol to be interconnected through the PCIE bus, so that any device connected to each other through the PCIE bus can pass the pre-preparation The protocol packets are configured to perform mutual operations, and can utilize the existing functional advantages and management tools of the FC protocol, and have high data transmission bandwidth and fast processing speed, and can be used in a multi-host cluster computing system with full PCIE connection, computing nodes and The storage node is interconnected based on the FC protocol. DRAWINGS
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实 施例或现有技术描述中所需要使用的附图作一简单地介绍, 显而易见地, 下 面描述中的附图是本发明的一些实施例, 对于本领域普通技术人员来讲, 在 不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。  In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, a brief description of the drawings used in the embodiments or the prior art description will be briefly described below. Obviously, the drawings in the following description It is a certain embodiment of the present invention, and other drawings can be obtained from those skilled in the art without any creative work.
图 1为本发明一个实施例提供的在 PCIE总线上传输报文的方法流程图; 图 2为本发明一个实施例提供的在 PCIE总线上传输报文的方法流程图; 图 3为本发明一个实施例提供的在 PCIE总线上传输报文的装置结构示意 图;  1 is a flowchart of a method for transmitting a message on a PCIE bus according to an embodiment of the present invention; FIG. 2 is a flowchart of a method for transmitting a message on a PCIE bus according to an embodiment of the present invention; A schematic structural diagram of an apparatus for transmitting a message on a PCIE bus provided by an embodiment;
图 4为本发明一个实施例提供的在 PCIE总线上传输报文的装置结构示意 图;  4 is a schematic structural diagram of an apparatus for transmitting a message on a PCIE bus according to an embodiment of the present invention;
图 5为本发明一个实施例提供的在 PCIE总线上传输报文的系统结构示意 图;  FIG. 5 is a schematic structural diagram of a system for transmitting a message on a PCIE bus according to an embodiment of the present invention; FIG.
图 6为本发明一个实施例提供的起始端设备的结构示意图;  FIG. 6 is a schematic structural diagram of a start device according to an embodiment of the present invention;
图 Ί为本发明一个实施例提供的第三方设备的结构示意图;  Figure Ί is a schematic structural diagram of a third-party device provided by an embodiment of the present invention;
图 8为本发明一个实施例提供的目标端设备的结构示意图。 具体实施方式 为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本发 明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于 本发明中的实施例, 本领域普通技术人员在没有作出创造性劳动前提下所获 得的所有其他实施例, 都属于本发明保护的范围。  FIG. 8 is a schematic structural diagram of a target device according to an embodiment of the present invention. The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. The embodiments are a part of the embodiments of the invention, and not all of the embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
图 1为本发明一个实施例提供的在 PCIE总线上传输报文的方法流程图, 该方法应用于由通过 PCIE总线相互连接的设备组成的网络中,所述设备包括 起始端设备、 目标端设备和第三方设备。 该方法通过将各设备之间交互的一些预定协议的报文,封装在 CPIE协议 报文中, 通过 PCIE总线进行传输。 从而提高数据传输带宽和处理速度。 下面 将以注册过程、 或建立虚拟链路过程为例, 对本发明实施例提供的 PCIE总线 上传输报文的方法进行介绍, 需要说明的是, 该方案也同样适用于其他场景 中。 1 is a flowchart of a method for transmitting a message on a PCIE bus according to an embodiment of the present invention. The method is applied to a network consisting of devices connected to each other through a PCIE bus, where the device includes a start device and a target device. And third party equipment. The method encapsulates the packets of some predetermined protocols that are exchanged between the devices in the CPIE protocol packet, and transmits the packets through the PCIE bus. Thereby increasing the data transmission bandwidth and processing speed. The method of transmitting a message on the PCIE bus provided by the embodiment of the present invention will be described below by taking the registration process or the process of establishing a virtual link as an example. It should be noted that the solution is also applicable to other scenarios.
如图 1所示, 该方法包括:  As shown in Figure 1, the method includes:
步骤 101 : 起始端设备获取第一预置协议的报文;  Step 101: The initiating device acquires the packet of the first preset protocol.
本发明实施例可以根据具体的业务类型将预置的协议报文携带在所述 The embodiment of the present invention may carry preset protocol packets in the foregoing according to specific service types.
PCIE协议艮文的处理层协议 TLP包中,获得 FC-TLP协议艮文,其中, FC-TLP 协议报文为 FC-TLP帧格式, 所述预置的协议报文为 FC协议报文; In the processing layer protocol of the PCIE protocol, the TLP packet obtains the FC-TLP protocol, wherein the FC-TLP protocol packet is in the FC-TLP frame format, and the preset protocol packet is the FC protocol packet;
也就是说,起始端设备将第一预置协议的报文封装在 PCIE报文中的 TLP 载荷部分中。  That is, the initiating device encapsulates the packet of the first preset protocol in the TLP payload portion of the PCIE packet.
步骤 102: 起始端设备获取到所述目标端设备的 PCIE设备 ID后, 将所 述第一预置协议的报文携带在 PCIE 协议报文中, 并通过 PCIE 总线将所述 PCIE协议报文发送给目标端设备, 以使所述目标端设备从所述 PCIE协议报 文中解析出所述预置的协议报文后根据所述预置的协议报文的指令执行相应 操作, 其中, 所述起始端设备和目标端设备, 第三方设备之间通过 PCIE总线 互连。  Step 102: After acquiring the PCIE device ID of the target device, the initiating device carries the packet of the first preset protocol in a PCIE protocol packet, and sends the PCIE protocol packet through the PCIE bus. And the target device is configured to perform the corresponding operation according to the instruction of the preset protocol packet, after the target end device parses the preset protocol packet from the PCIE protocol packet, where The start device and the target device are interconnected by a third party device through a PCIE bus.
其中, 本实施例中的第三方设备可以是链路中的特定的网络管理设备。 其中,本实施例中的预置的协议报文为 FC协议报文或 FCoPIP协议 4艮文, 具体地, 本实施例中第一预置协议是指 FC-TLP, 第二预置协议是指 FCoPIP;  The third-party device in this embodiment may be a specific network management device in the link. The preset protocol packet in this embodiment is an FC protocol packet or an FCoPIP protocol. Specifically, in this embodiment, the first preset protocol refers to an FC-TLP, and the second preset protocol refers to FCoPIP;
本实施例中的 "携带" 也在本领域内也可以称为 "封装" , 实际上指的 是将 FCoPIP协议报文或 FC协议报文映射为符合 PCIE协议报文的形式的一 种做法。  The "carrying" in this embodiment is also referred to as "encapsulation" in the field, and actually refers to an approach of mapping FCoPIP protocol packets or FC protocol packets into a form conforming to PCIE protocol packets.
其中, 可以将预置的协议报文携带在 PCIE 的处理层协议 (Transaction Layer Protocol, 简称为: TLP ) 包中。 预置的协议报文在 PCIE协议报文中具 体的位置可以如表 1 中所示本发明实施例提供的 PCIE协议报文的格式示意 图。 表 1
Figure imgf000007_0001
其中各字段的定义如下:
The preset protocol packet can be carried in the Transaction Layer Protocol (TLP) packet of the PCIE. The format of the PCIE protocol packet provided by the embodiment of the present invention is as shown in Table 1 in the specific location of the protocol packet. Table 1
Figure imgf000007_0001
The definition of each field is as follows:
帧开始标识表示一个数据帧的开始;  The frame start identifier indicates the beginning of a data frame;
DLLP头, 用于链路管理功能, 包括物理层的流量控制, 主要职责是确保 数据包可靠、 正确传输, 确保数据包的完整性;  DLLP header, used for link management functions, including physical layer flow control, the main responsibility is to ensure reliable and correct transmission of data packets and ensure the integrity of data packets;
TLP头, 用于处理上层应用的读写请求等事务;  TLP header, for processing transactions such as read and write requests of upper-layer applications;
TLP包就是本发明实施例中所描述的 Ethernet-TLP包;  The TLP packet is the Ethernet-TLP packet described in the embodiment of the present invention;
ECRC, 指端到端的循环冗余校验码(CRC, Cyclic Redundancy Check ) , 其中, CRC是数据通信领域中最常用的一种差错校验码;  ECRC, which refers to the end-to-end Cyclic Redundancy Check (CRC), where CRC is the most commonly used error check code in the field of data communication;
LCRC, 指数据链路层的 CRC, 是基于序列标识 (ID, IDentity ) 和 TLP 全部字节的 CRC字段;  LCRC, which refers to the CRC of the data link layer, is based on the sequence identifier (ID, IDentity) and the CRC field of all bytes of the TLP;
帧结束标识表示一个数据帧的结束。  The end of frame indicator indicates the end of a data frame.
以上 PCIE数据包中的各个组成部分具体可参见 PCIE协议, 在此不再赘 述。 具体来说, 起始端设备为了与目标端设备直接进行通信, 需要建立起始 端设备和目标端设备之前的光纤通道虚拟链路。 在此过程中:  For details of the components in the above PCIE data packet, refer to the PCIE protocol, which is not described here. Specifically, in order for the head end device to communicate directly with the target end device, it is necessary to establish a Fibre Channel virtual link before the start end device and the target end device. during this process:
起始端设备将第一预置协议的注册名称服务器请求信息携带在 PCIE 协 议报文中, 并通过 PCIE总线发送给第三方设备, 接收第三方设备返回的携带 在 PCIE协议报文中的第一预置协议的第三请求响应信息,所述第三请求响应 信息中携带有目标端设备的 PCIE设备 ID;  The initiating device carries the registration information server request information of the first preset protocol in the PCIE protocol packet, and sends the information to the third-party device through the PCIE bus, and receives the first pre-received in the PCIE protocol packet returned by the third-party device. a third request response information of the protocol, where the third request response information carries a PCIE device ID of the target device;
起始端设备根据从第三请求响应信息中获取到的所述目标端设备的 PCIE 设备 ID, 将所述第一预置协议的端口注册请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发送给目标端设备, 并接收目标端设备返回的携带在 PCIE 协议报文中的第一预置协议的第四请求响应信息, 从而建立与目标端设备之 间的光纤通道虚拟链路。 在附图 1 所示的起始端设备与目标端设备建立光纤通道虚拟链路的过程 之前, 还可以釆用如下方式进行 PCIE网络中的注册过程, 起始端设备的注册 过程具体如下: The initiating device carries the port registration request information of the first preset protocol in a PCIE protocol packet according to the PCIE device ID of the target device that is obtained from the third request response information, and sends the information through the PCIE bus. Giving the target device, and receiving the fourth request response information of the first preset protocol carried in the PCIE protocol packet returned by the target device, thereby establishing the target device Fibre Channel virtual link between. Before the process of establishing a Fibre Channel virtual link between the initiating device and the target device shown in Figure 1, the registration process in the PCIE network can also be performed as follows: The registration process of the initiating device is as follows:
起始端设备将第二预置协议的设备发现请求携带在 PCIE协议报文中, 并 通过 PCIE总线发送, 接收第三方设备对应返回的携带在 PCIE协议报文中的 第二预置协议的第一请求响应信息, 所述第一请求响应信息中携带有第三方 设备的 PCIE设备 ID;  The initiating device carries the device discovery request of the second preset protocol in the PCIE protocol packet, and sends the packet through the PCIE bus, and receives the first preset of the second preset protocol that is returned by the third-party device and is carried in the PCIE protocol packet. Requesting response information, where the first request response information carries a PCIE device ID of a third-party device;
起始端设备根据第三方设备的 PCIE设备 ID, 将第二预置协议的虚拟链 路实例化请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发送给第三方 设备, 所述虛拟链路实例化请求信息携带起始端设备的 PCIE设备 ID; 接收 第三方设备返回的携带在 PCIE 协议报文中的第二预置协议的第二请求响应 信息, 从而在第三方设备中对起始端设备进行注册。  The initiating device carries the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and sends the information to the third-party device through the PCIE bus, where the virtual link instance is sent. The request information carries the PCIE device ID of the initiating device; and receives the second request response information of the second preset protocol that is carried in the PCIE protocol packet returned by the third device, thereby registering the initiating device in the third party device. .
类似地, 目标端设备也可以采用类似的注册过程, 具体如下:  Similarly, the target device can also adopt a similar registration process, as follows:
目标端设备将第二预置协议的设备发现请求携带在 PCIE协议报文中, 并 通过 PCIE总线发送, 接收第三方设备对应返回的携带在 PCIE协议报文中的 第二预置协议的第一请求响应信息, 所述第一请求响应信息中携带有第三方 设备的 PCIE设备 ID;  The target device carries the device discovery request of the second preset protocol in the PCIE protocol packet, and sends the packet through the PCIE bus, and receives the first preset of the second preset protocol that is carried in the PCIE protocol packet corresponding to the third-party device. Requesting response information, where the first request response information carries a PCIE device ID of a third-party device;
目标端设备根据第三方设备的 PCIE设备 ID, 将第二预置协议的虚拟链 路实例化请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发送给第三方 设备, 所述虚拟链路实例化请求信息携带目标端设备的 PCIE设备 ID; 接收 第三方设备返回的携带在 PCIE 协议报文中的第二预置协议的第二请求响应 信息, 从而在第三方设备中对目标端设备进行注册。  The target device carries the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and sends the information to the third-party device through the PCIE bus, where the virtual link instance is sent. The request information carries the PCIE device ID of the target device; and receives the second request response information of the second preset protocol that is carried in the PCIE protocol packet returned by the third device, thereby registering the target device in the third party device. .
上述将第二预置协议的报文携带在 PCIE报文中, 具体为:  The packet carrying the second preset protocol is carried in the PCIE packet, and is specifically:
将所述预置的协议报文携带在所述 PCIE协议报文的处理层协议 TLP 包 中, 获得 FCoPIP-TLP协议报文, FCoPIP-TLP协议报文为 FCoPIP-TLP帧格 式,其中,所述预置的协议艮文为 FCoPIP( FC over PCIE initialization protocol ) 协议报文。 也就是说将所述 FCoPIP-TLP报文的设备发现请求封装在 PCIE报 文中的 TLP载荷部分, 或者将所述 FCoPIP-TLP报文的虚拟链路实例化请求 信息封装在 PCIE报文中的 TLP载荷部分。 And the FCoPIP-TLP protocol packet is an FCoPIP-TLP frame format, where the preset protocol packet is carried in the processing layer protocol TLP packet of the PCIE protocol packet, where the FCoPIP-TLP protocol packet is an FCoPIP-TLP frame format, where The preset protocol is FCoPIP (FC over PCIE initialization protocol) Protocol message. That is, the device discovery request of the FCoPIP-TLP packet is encapsulated in the TLP payload part of the PCIE packet, or the virtual link instantiation request information of the FCoPIP-TLP packet is encapsulated in the PCIE packet. TLP load section.
需要说明的是, 除了附图 1 所示的场景, 其中, 有多种情况可以使得起 始端设备将预置的协议报文进行封装后携带在 PCIE协议报文中, 例如, 计算 机应用程序或者 CPU希望通过 PCIE总线对某一设备进行读写操作, 则会将 读写请求转换为 FC读写命令并对其进行封装,然后携带在 PCIE协议报文中。 或者, 某一通过 PCIE总线与计算机相连接的设备接收到计算机通过 PCIE总 线发送的请求报文后需要返回请求响应报文时, 该设备会将请求响应报文转 换为本发明实施例的协议报文并对其进行封装, 然后携带在 PCIE 协议报文 中。  It should be noted that, in addition to the scenario shown in FIG. 1 , there are various situations in which the initiating device encapsulates the preset protocol packet and carries it in the PCIE protocol packet, for example, a computer application or a CPU. If you want to read or write a device through the PCIE bus, the read and write requests are converted to FC read and write commands and encapsulated, and then carried in the PCIE protocol packets. Alternatively, when a device connected to the computer through the PCIE bus receives a request message sent by the computer through the PCIE bus, and the device needs to return a request response message, the device converts the request response message into the protocol report of the embodiment of the present invention. The packet is encapsulated and then carried in the PCIE protocol packet.
本发明实施例提供的在 PCIE总线上传输报文的方法, 使得通过 PCIE总 线建立彼此连接的任意设备之间均可以通过预置的协议报文进行相互的操 作, 且数据传输的带宽高、 处理速度快, 可用于全 PCIE连接的多主机集群计 算系统中, 计算节点与存储节点基于 FC协议实现互连。 图 2是本发明实施例中预置的协议报文进行封装的方法流程图; 本实施例中, 获取到所述目标端设备的 PCIE设备 ID之前, 所述将预置 的协议 "^文携带在 PCIE协议 文中包括:  The method for transmitting a message on the PCIE bus provided by the embodiment of the present invention enables any device connected to each other through the PCIE bus to perform mutual operation through preset protocol messages, and the data transmission bandwidth is high and processed. Fast, can be used in a multi-host cluster computing system with full PCIE connectivity. The compute nodes and storage nodes are interconnected based on the FC protocol. 2 is a flowchart of a method for encapsulating a preset protocol packet in the embodiment of the present invention. In this embodiment, before the PCIE device ID of the target device is obtained, the preset protocol is carried. In the PCIE protocol text:
首先, 步骤 1010,起始端设备, 和 /或, 目标端设备发送设备发现请求, 用以获取第三方设备的 PCIE设备 ID, 例如, 设备发现请求为 FCoPIP-TLP报 文, 设备发现请求对应的 FCoPIP-TLP 4艮文中 Encapsulated FCoPIP operation 部分可以包含的一些字段的取值如表 1所示。  First, in step 1010, the initiating device, and/or the target device sends a device discovery request, to obtain a PCIE device ID of the third device, for example, the device discovery request is an FCoPIP-TLP packet, and the device discovery request corresponds to the FCoPIP. The values of some fields that can be included in the Encapsulated FCoPIP operation section of the TLP 4 are shown in Table 1.
表 1  Table 1
Figure imgf000009_0001
PCIE Device ID
Figure imgf000009_0001
PCIE Device ID
FC WWN MAX Size等 其中, FCoPIP Protocol Code为 000 lh表示设备发现, Subcode为 Olh时, 表示所述业务类型 Operation为 Discovery Solicitation, 所述业务内容 Contents of Operation 包括 PCIE Device ID, FC 全球唯一名字 (world wide name, WWN ) , MAX Size等信息; Subcode为 02h时, 表示业务类型为 Discovery Advertisement, 所述业务内容 Contents of Operation为 Priority (优先级) , 可 选地, 此时业务内容还包括 PCIE Device ID, FC WWN, MAX Size等。 其中, MAX Size, 表示起始端设备可以接收的报文大小; Priority, 表示第三方设备 的优先级标识, 在 PCIE链路上也有可能存在多个第三方设备, 此时会有多个 第三方设备返回第一请求响应消息, 这时可以根据第一请求响应信息中的优 先级作为参考, 从而优选采用第一请求响应信息中优先级标识较高的第三方 设备。  The FC WWN MAX Size and the like, wherein the FCoPIP Protocol Code is 000 lh indicates that the device finds that when the Subcode is Olh, the service type Operation is Discovery Solicitation, and the service content Contents of Operation includes the PCIE Device ID, and the FC global unique name (world) Information such as wide name, WWN, and MAX Size; when the subcode is 02h, the service type is Discovery Advertisement, and the content of the service content is the Priority. Optionally, the service content also includes the PCIE Device ID. , FC WWN, MAX Size, etc. The MAX size indicates the size of the packet that the initiating device can receive. The priority indicates the priority of the third-party device. There may be multiple third-party devices on the PCIE link. In this case, there are multiple third-party devices. The first request response message is returned, and the priority in the first request response information may be used as a reference, so that the third party device with higher priority identifier in the first request response information is preferably used.
具体的,起始端设备需要在 PCIE链路中,发送设备发现请求信息,其中, 所述设备发现请求信息中携带有起始端设备和目标端设备之间通信需要的光 纤通道协议参数; 本实施例中, 可以在 PCIE链路上通过广播或组播的方式发 送设备发现请求信息 , 并接收第三方设备返回的第一请求响应信息。  Specifically, the initiating device needs to send the device discovery request information in the PCIE link, where the device discovery request information carries the Fibre Channel protocol parameters required for communication between the initiating device and the target device. The device discovery request information may be sent by broadcast or multicast on the PCIE link, and the first request response information returned by the third-party device may be received.
步骤 1011, 起始端设备, 和 /或, 目标端设备接收所述第三方设备返回的 第一请求响应信息, 其中, 所述第一倩求响应信息中携带有所述第三方设备 的 PCIE设备 ID。 需要说明的是, 本实施例中第一请求响应信息可以是上述 的 Discovery Solicitation, 表示设备发现请求;  Step 1011: The initiating device, and/or the target device receives the first request response information returned by the third device, where the first request response information carries the PCIE device ID of the third device. . It should be noted that, in this embodiment, the first request response information may be the foregoing Discovery Solicitation, indicating a device discovery request;
当然, 本发明实施例也可以通过其他方式获取第三方设备的 PCIE设备 ID, 例如, 在 FCoPIP-TLP协议报文中, 通过封装 Subcode 为 02h的字段, 表示 Discovery Advertisement, 此时, 第三方设备主动向 PCIE链路上的其他 设备公布自己的 PCIE设备 ID。  Certainly, the embodiment of the present invention may obtain the PCIE device ID of the third-party device by using other methods. For example, in the FCoPIP-TLP protocol packet, the field that encapsulates the Subcode is 02h indicates the Discovery Advertisement. Publish your own PCIE device ID to other devices on the PCIE link.
需要说明的是, 在上述步骤 1010中起始端设备或目标端设备发送设备发 现请求信息时、 以及步骤 1011中第三方设备发送第一请求响应信息时, 是通 过如下方式进行发送的: It should be noted that, in the foregoing step 1010, when the originating device or the target device sends the device discovery request information, and the third party device sends the first request response information in step 1011, Sent as follows:
将 FCoPIP-TLP报文格式的设备发现请求信息或第一请求响应信息,封装 在 PCIE报文中的 TLP载荷部分中, 然后将封装得到的 PCIE报文发送给对端 设备。  The device discovery request information or the first request response information in the FCoPIP-TLP packet format is encapsulated in the TLP payload part of the PCIE packet, and then the encapsulated PCIE packet is sent to the peer device.
步骤 1012, 起始端设备, 和 /或, 目标端设备获取到第三方设备的 PCIE 设备 ID后,根据所述第三方设备的 PCIE设备 ID向第三方设备发送虚拟链路 实例化请求信息, 并接收 PCIE链路上第三方设备返回的第二请求响应信息。  Step 1012: The start device, and/or the target device obtains the PCIE device ID of the third device, and sends the virtual link instantiation request information to the third device according to the PCIE device ID of the third device, and/or receives The second request response information returned by the third-party device on the PCIE link.
其中, 虚拟链路实例化请求信息可以是 Virtual Link Instantiation Request , 例如, 可以是将携带有 FLOGI消息的 FCoPIP-TLP协议 携带在 PCIE 协议报文的 TLP包中;  The virtual link instantiation request information may be a virtual link instantiation request, for example, the FCoPIP-TLP protocol carrying the FLOGI message may be carried in the TLP packet of the PCIE protocol packet;
上述虚拟链路实例化请求信息也被称为虚拟链路初始化请求信息。  The above virtual link instantiation request information is also referred to as virtual link initialization request information.
第二莆求响应信息可以是 Virtual Link Instantiation Reply, 表示该第二请 求响应信息是虚拟链路实例化响应, 例如, 可以是将携带有 FLOGI响应消息 的 FCoPIP-TLP协议报文携带在 PCIE协议报文的 TLP包中;  The second request response information may be a Virtual Link Instantiation Reply, indicating that the second request response information is a virtual link instantiation response, for example, the FCoPIP-TLP protocol packet carrying the FLOGI response message may be carried in the PCIE protocol report. In the TLP package;
其中, 本实施例中根据所述第三方设备的 PCIE设备 ID向第三方设备发 送虚拟链路实例化请求信息,并接收 PCIE链路上第三方设备返回的第二请求 响应信息, 具体可以包括:  In this embodiment, the virtual link instantiation request information is sent to the third-party device according to the PCIE device ID of the third-party device, and the second request response information returned by the third-party device on the PCIE link is received, which may include:
起始端设备在本设备中运行查询查询命令,可以查询到本设备的设备 ID, 查询到起始端设备的 PCIE设备 ID后 , 将所述起始端设备的 PCIE设备 ID携 带在虚拟链路实例化请求信息中,在本实施例中,是将所述起始端设备的 PCIE 设备 ID携带在 FCoPIP-TLP协议报文中, 向第三方设备发送虚拟链路实例化 请求信息, 并接收 PCIE链路上第三方设备返回的第二请求响应信息;  The initiating device runs the query query command in the device, and can query the device ID of the device. After the PCIE device ID of the initiating device is queried, the PCIE device ID of the initiating device is carried in the virtual link instantiation request. In the information, in the embodiment, the PCIE device ID of the initiating device is carried in the FCoPIP-TLP protocol packet, and the virtual link instantiation request information is sent to the third-party device, and the PCIE link is received. The second request response information returned by the three-way device;
本领域技术人员可以了解, 本实施例中也可以是目标端设备查询到第三 方设备的 PCIE设备 ID后, 根据所述第三方设备的 PCIE设备 ID向第三方设 备发送虚拟链路实例化倩求信息,并接收 PCIE链路上第三方设备返回的第二 请求响应信息;  A person skilled in the art may understand that, in this embodiment, after the target device queries the PCIE device ID of the third-party device, the virtual link instance is sent to the third-party device according to the PCIE device ID of the third-party device. Information and receiving second request response information returned by the third party device on the PCIE link;
需要将所述目标端设备的 PCIE设备 ID封装在 FCoPIP-TLP协议报文中, 向第三方设备发送虚拟链路实例化请求信息,并接收 PCIE链路上第三方设备 返回的第二请求响应信息。 The PCIE device ID of the target device is encapsulated in the FCoPIP-TLP protocol packet, and the virtual link instantiation request information is sent to the third-party device, and the third-party device on the PCIE link is received. The second request response information returned.
需要说明的是, 在步驟 1012中起始端设备或目标端设备发送虚拟链路实 例化请求信息时、 以及第三方设备对应发送第二请求响应信息时, 是通过如 下方式进行发送的:  It should be noted that, when the initial device or the target device sends the virtual link instantiation request information and the third party device sends the second request response information in step 1012, the method is as follows:
将 FCoPIP-TLP 报文格式的虚拟链路实例化请求信息或第二请求响应信 息, 封装在 PCIE报文中的 TLP载荷部分中, 然后将封装得到的 PCIE报文发 送给对端设备。 。  The virtual link instantiation request information or the second request response information in the FCoPIP-TLP packet format is encapsulated in the TLP payload part of the PCIE packet, and then the encapsulated PCIE packet is sent to the peer device. .
本实施例中, 虚拟链路实例化请求信息是 FCoPIP-TLP 帧格式的协议报 文, 用来实现链路和设备的初始化, 虚拟链路实例化请求信息对应的 FCoPIP-TLP 4艮文中 Encapsulated FCoPIP operation部分可以包含的一些字段 的取值如表 2所示:  In this embodiment, the virtual link instantiation request information is a protocol packet in the FCoPIP-TLP frame format, which is used to implement initialization of the link and the device, and the FCoPIP-TLP corresponding to the virtual link instantiation request information is Encapsulated FCoPIP. The values of some fields that can be included in the operation section are shown in Table 2:
表 2  Table 2
Figure imgf000012_0001
其中, FCoPIP Protocol Code为 0002h表示链路和设备实例化, Subcode 为 Olh 时, 表示业务类型为虚拟链路实例化请求 Virtual Link Instantiation Request, 则所述业务内容 Contents of Operation包括 FC FLOGI消息和起始端 设备的 PCIE 设备 ID; Subcode 为 02h 表示业务类型为 Virtual Link Instantiation Reply, 即虚拟链路实例请求信息的响应, 也就是本发明实施例所 述的第二请求响应信息 ,则所述业务内容 Contents of Operation包括 FC FLOGI 响应消息, 例如, FC FLOGI响应消息具体可以是对于 Fabric login等结构注 册信息的响应信息。
Figure imgf000012_0001
The FCoPIP Protocol Code is 0002h, and the link and the device are instantiated. When the Subcode is Olh, the service type is the virtual link instantiation request, and the service content Contents of Operation includes the FC FLOGI message and the start end. The PCIE device ID of the device; the Subcode is 02h, indicating that the service type is a Virtual Link Instantiation Reply, that is, the response of the virtual link instance request information, that is, the second request response information according to the embodiment of the present invention, the service content Contents of The Operation includes an FC FLOGI response message. For example, the FC FLOGI response message may specifically be response information for structural registration information such as a Fabric login.
步骤 1013 , 第三方设备返回第二请求响应信息后, 为发送所述虚拟链路 实例化请求信息的设备(起始端设备, 和 /或, 目标端设备) 分配光纤通道端 口 ID, 并在第三方设备中记录分配的光纤通道端口 ID。 具体地, 若发送所述虚拟链路实例化请求信息的设备为起始端设备, 则 记录为所述起始端设备分配的光纤通道端口 ID, 可选地, 还可以记录所述起 始端设备的光纤通道协议参数等其他信息。 若发送所述虚拟链路实例化请求 信息的设备为目标端设备,则记录为所述目标端设备分配的光纤通道端口 ID,Step 1013: After the third-party device returns the second request response information, the device (the originating device, and/or the target device) that sends the virtual link instantiation request information is assigned a Fibre Channel port ID, and is in a third party. The assigned Fibre Channel port ID is recorded in the device. Specifically, if the device that sends the virtual link instantiation request information is the start device, the Fibre Channel port ID allocated to the start device is recorded, and optionally, the fiber of the start device is also recorded. Other information such as channel protocol parameters. If the device that sends the virtual link instantiation request information is a target device, record the Fibre Channel port ID assigned to the target device.
5 可选地, 还可以记录所述目标端设备的光纤通道协议参数等其他信息。 所述 光纤通道端口 ID是在路由配置中确定的与设备唯一对应的地址标识。 在上述 步骤 1010〜1013 中各交互双方发送报文时, 各请求信息或响应信息对应的 FCoPIP-TLP 4艮文的格式如表 3所示。 Optionally, other information such as a Fibre Channel protocol parameter of the target device may also be recorded. The Fibre Channel port ID is an address identifier uniquely associated with the device determined in the routing configuration. In the above steps 1010 to 1013, when the two parties exchange messages, the format of the FCoPIP-TLP message corresponding to each request information or response information is as shown in Table 3.
如表 3中所示本发明实施例提供的 FCoPIP-TLP协议报文的格式示意图。 The format of the FCoPIP-TLP protocol packet provided by the embodiment of the present invention is shown in Table 3.
10 表 3 10 Table 3
Figure imgf000013_0001
其中, Type域表示预置的协议报文的数据帧的类型, 如 FCoPIP_T YPE 表示该协议报文是 FCoPIP-TLP 帧格式的协议报文。 Version 表示版本, Reserved表示予贞留。 Encapsulated FC Frame (n words)表示封装的具体的内容, 15 Type=FCoPIP_TYPE 时, 表示该预置的协议报文类型是 FCoPIP-TLP协议报 文。
Figure imgf000013_0001
The Type field indicates the type of the data frame of the preset protocol packet. For example, the FCoPIP_T YPE indicates that the protocol packet is a protocol packet in the FCoPIP-TLP frame format. Version indicates the version, and Reserved indicates the reservation. The Encapsulated FC Frame (n words) indicates the specific content of the encapsulation. When the type of the FCoPIP_TYPE is 15 Type=FCoPIP_TYPE, the protocol packet type of the preset is the FCoPIP-TLP protocol packet.
表 3 所示的本发明实施例提供的 FCoPIP-TLP 协议报文中 Encapsulated FCoPIP operation部分所包括的具体的字段、 以及字段的排列方式如表 3.1所 示, 其中的 FCoPIP Protocol Code, 例如, 可以参考表 2中所示, 如果取值为 20 0002h, 表示链路和设备实例化; Contents of Operation可以是表 2 中的 FC FLOGI消息和 PCIE Device ID等。  The specific fields and fields of the Encapsulated FCoPIP operation part of the FCoPIP-TLP protocol packet provided in the embodiment of the present invention are as shown in Table 3.1, and the FCoPIP Protocol Code, for example, can be referred to. As shown in Table 2, if the value is 20 0002h, it means that the link and device are instantiated; Contents of Operation can be FC FLOGI message and PCIE Device ID in Table 2.
表 3.1 Byte 0 1 2 3 Form 3.1 Byte 0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
0 FCoPIP Protocol Code Reserved Subcode0 FCoPIP Protocol Code Reserved Subcode
1 Contents Length Reserved 1 Contents Length Reserved
2  2
12 Contents of Operation  12 Contents of Operation
16  16
N 步骤 1014, 起始端设备发送注册名称服务器请求信息至第三方设备, 以 获取目标端设备的 PCIE设备 ID;  N Step 1014: The initiating device sends the registration name server request information to the third-party device to obtain the PCIE device ID of the target device.
具体地, 起始端设备向第三方设备发送注册名称服务器请求, 用以查询 目标端设备的 PCIE设备 ID, 所述注册名称服务器请求中携带目标端设备的 全球唯一名字 (world wide name , WWN ) 。  Specifically, the initiating device sends a registration name server request to the third-party device to query the PCIE device ID of the target device, where the registration name server request carries the world wide name (WWN) of the target device.
起始端设备接收第三方设备对应返回的第三请求响应信息 (注册名称服 务器响应), 其中, 第三请求响应信息中携带有所述目标端设备的 PCIE设备 ID。 第三方设备中所存储的各起始端设备和目标端设备的 PCIE设备 ID, 是 中得到的, 请参考表 2。  The initiating device receives the third request response information (registered name server response) corresponding to the third party device, where the third request response information carries the PCIE device ID of the target device. The PCIE device ID of each of the head device and the target device stored in the third-party device is obtained. Please refer to Table 2.
上述注册名称服务器请求和第三请求响应信息为 FC-TLP报文,被封装在 PCIE报文中的 TLP载荷部分后,再将封装得到的 PCIE报文发送给对端设备。  The above-mentioned registration name server request and the third request response information are FC-TLP packets, which are encapsulated in the TLP payload part of the PCIE packet, and then the encapsulated PCIE packet is sent to the peer device.
步骤 1015, 起始端设备利用获得的目标端设备的 PCIE设备 ID, 向目标 端设备发送端口注册请求信息, 例如, 可以是发送 PLOGI信息, 接收到目 标端设备返回的第四请求响应信息后, 起始端设备和目标端设备端完成了光 纤通道虛拟链路的建立, 并通过该光纤通道虚拟链路进行数据的通信。 其中, 第四请求响应信息也可以被看作是光纤通道虚拟链路的建立完成响应信息。 其中,在协议报文传输过程中, 所述端口注册请求信息具体为 FC-TLP协议报 文。  Step 1015: The initiating device sends the port registration request information to the target device by using the obtained PCIE device ID of the target device, for example, may send the PLOGI information, and after receiving the fourth request response information returned by the target device, The start device and the target device complete the establishment of the Fibre Channel virtual link and communicate data through the Fibre Channel virtual link. The fourth request response information may also be regarded as a setup completion response information of the Fibre Channel virtual link. The port registration request information is specifically an FC-TLP protocol packet.
需要说明的是, 在上述步骤 1014中起始端设备向第三方设备发送注册名 称服务器请求、 第三方设备对应返回第三请求响应信息, 以及步 4聚 1015中起 始端设备向目标端设备发送端口注册请求信息、 目标端设备对应返回第四请 求响应信息时, 是通过如下方式进行发送的: It should be noted that, in the foregoing step 1014, the initiating device sends a registration name server request to the third party device, and the third party device correspondingly returns the third request response information, and the step 4 is gathered from 1015. When the start device sends the port registration request information to the target device and the target device returns the fourth request response information, the device sends the following information:
将 FC-TLP报文格式的注册名称服务器请求、第三请求响应信息、端口注 册请求信息或第四请求响应信息, 封装在 PCIE报文中的 TLP载荷部分中; 再将所述 PCIE报文发送给对端设备。  Encapsulating the registration name server request, the third request response information, the port registration request information, or the fourth request response information in the FC-TLP packet format in a TLP payload portion in the PCIE packet; and sending the PCIE packet Give the peer device.
如表 4所示, 为一个 FC-TLP协议报文格式中关于各个字段的定义: 表 4  As shown in Table 4, the definition of each field in an FC-TLP protocol packet format: Table 4
Figure imgf000015_0001
Figure imgf000015_0001
其中, Type域表示封装的数据帧的类型, FCoP_TYPE表示该协议报文是 FC-TLP 帧格式的协议 4艮文。 Version 表示版本, Reserved 表示预留。 The Type field indicates the type of the encapsulated data frame, and the FCoP_TYPE indicates that the protocol packet is the protocol of the FC-TLP frame format. Version indicates the version, and Reserved indicates the reservation.
Encapsulated FC Frame (n words)表示封装的具体的内容。 Encapsulated FC Frame (n words) indicates the specific content of the package.
可选地, 通过上述步骤 1010〜1015 ,起始端设备和目标端设备端完成了起 始端设备和目标端设备之间光纤通道虚拟链路的建立过程, 此后, 还可以在 所述光纤通道虚拟链路上, 发送链路维护信息, 具体地:  Optionally, the foregoing step 1010 1010, the start device and the target device end complete the establishment process of the Fibre Channel virtual link between the start device and the target device, and thereafter, the Fibre Channel virtual link may also be On the road, send link maintenance information, specifically:
其中上述步骤中, 起始端设备接收到目标端设备返回的第四请求响应信 息后, 起始端设备和 /或目标端设备确定当所述链路维护周期到达时, 可以发 送链路维护信息。 链路维护信息中包括起始端设备和目标端设备各自的 PCIE 设备 ID和光纤通道端口 ID。  In the above step, after the initiating device receives the fourth request response information returned by the target device, the initiating device and/or the target device determines that the link maintenance information may be sent when the link maintenance period arrives. The link maintenance information includes the PCIe device ID and Fibre Channel port ID of the initiator device and the target device.
需要说明的是, 与步骤 1010〜1012 中的发现请求信息、 以及虛拟链路实 例化请求信息相类似, 链路维护信息也是 FCoPIP-TLP报文格式的, 是通过如 下方式进行发送的: 将 FCoPIP-TLP报文格式的链路维护信息,封装在 PCIE报文中的 TLP载 荷部分中, 然后将封装得到的 PCIE报文发送给对端设备。 It should be noted that, similar to the discovery request information and the virtual link instantiation request information in steps 1010 to 1012, the link maintenance information is also in the FCoPIP-TLP packet format and is sent by: The link maintenance information of the FCoPIP-TLP packet format is encapsulated in the TLP payload part of the PCIE packet, and then the encapsulated PCIE packet is sent to the peer device.
具体示例如下: 其中, 表 5 是起始端设备和目标端设备进行链路维护时 发送的 FCoPIP-TLP报文中 Encapsulated FCoPIP operation部分可以包含的一 些字段的取值。 具体各字段的排列方式请参照表 3.1 , 在这里不再重复。  The specific examples are as follows: Table 5 is the value of some fields that can be included in the Encapsulated FCoPIP operation part of the FCoPIP-TLP packet sent by the initiating device and the target device. For the arrangement of each field, please refer to Table 3.1, which will not be repeated here.
表 5  table 5
Figure imgf000016_0001
Figure imgf000016_0001
本发明实施例中,起始端设备和目标端设备可以在 PCIE链路上发送链路 维护信息, 以便于在 PCIE链路上的其他设备, 可以获知到该起始端设备和目 标端设备的存活状态。  In the embodiment of the present invention, the start device and the target device can send link maintenance information on the PCIE link, so that other devices on the PCIE link can learn the survival status of the start device and the target device. .
本实施例中, 例如, FCoPIP-TLP 报文格式的链路维护信息中 FCoPIP Protocol Code为 0003h, 其中, 如上表所示, Subcode为 Olh时, 表示业务类 型为 Keep Alive; 业务内容中携带有 FC N_Port ID以及 PCIE Device ID; 其 中, Subcode为 02h时, 表示业务类型为 Clear Virtual Links, 业务内容中携带 有 FC N_Port ID, PCIE Device ID, FC WWN; 所述链路维护信息将所述已封 装的 FCoPIP 携带在所述 PCIE协议报文的处理层协议 TLP包中。  In this embodiment, for example, the FCoPIP Protocol Code in the FCoPIP-TLP packet format is 0003h, where, as shown in the above table, when the Subcode is Olh, the service type is Keep Alive; the service content carries the FC. The N_Port ID and the PCIE Device ID; wherein, when the Subcode is 02h, the service type is Clear Virtual Links, and the service content carries the FC N_Port ID, the PCIE Device ID, and the FC WWN; the link maintenance information is the encapsulated information. The FCoPIP is carried in the processing layer protocol TLP packet of the PCIE protocol packet.
其中, Keep Alive用于表示发出 Keep Alive消息的起始端设备或目标端 设备还处于存活状态; Clear virtual links 用于第三方设备在 PCIE链路上探测 是否有起始端设备或目标端设备已不存在, 例如设备出现故障, 或设备功能 关闭, 设备下电拔掉等, 如第三方设备确定起始端设备或目标端设备已不存 在, 则通知与其建立通信链路的另一方设备该链路已不存在, 请求#放资源, 收回分配给起始端设备和 /或目标端设备的光纤通道端口 ID。  The Keep Alive is used to indicate that the originating device or the target device that sends the Keep Alive message is still alive; Clear virtual links is used by the third-party device to detect whether the originating device or the target device does not exist on the PCIE link. For example, if the device fails, or the device function is turned off, the device is powered off, etc. If the third-party device determines that the originating device or the target device does not exist, notify the other device that establishes the communication link with the link. Exist, request # put resources, reclaim the Fibre Channel port ID assigned to the originating device and/or the target device.
图 3为本发明一个实施例提供的在 PCIE总线上传输报文的装置的结构示 意图, 该装置为上述方法的特定执行主体, 因此方法实施例中的内容以引用 的方式带入本装置实施例中, 此处不做赘述。 FIG. 3 is a schematic structural diagram of an apparatus for transmitting a message on a PCIE bus according to an embodiment of the present invention. The apparatus is a specific execution body of the foregoing method, and therefore the content in the method embodiment is referenced. The manner of the present invention is incorporated into the embodiment of the device, and is not described herein.
如图 3所示, 该设备包括:  As shown in Figure 3, the device includes:
封装模块 201 , 用于获取预置的协议报文;  The encapsulating module 201 is configured to obtain a preset protocol packet.
收发模块 202, 用于将所述预置的协议报文携带在 PCIE协议报文中, 并 通过 PCIE总线将所述 PCIE协议报文发送给目标端设备, 以使所述目标端设 备从所述 PCIE 协议报文中解析出所述预置的协议报文后根据所述预置的协 议报文的指令执行相应操作;  The transceiver module 202 is configured to carry the preset protocol packet in a PCIE protocol packet, and send the PCIE protocol packet to the target end device by using a PCIE bus, so that the target end device is from the After the preset protocol packet is parsed in the PCIE protocol packet, the corresponding operation is performed according to the instruction of the preset protocol packet;
解析模块 203 ,用于从接收到的 PCIE协议报文中解析出预置的协议报文; 执行模块 204, 用于根据预置的协议报文的指令执行相应操作。  The parsing module 203 is configured to parse the preset protocol packet from the received PCIE protocol packet, and the executing module 204 is configured to perform a corresponding operation according to the preset protocol packet instruction.
所述封装模块 201具体用于将预置的协议报文携带在 PCIE协议报文的处 理层协议 TLP包中。  The encapsulating module 201 is specifically configured to carry the preset protocol packet in a processing layer protocol TLP packet of the PCIE protocol packet.
本发明实施例提供的在 PCIE总线上传输报文的设备,通过将预置的协议 报文携带在 PCIE协议报文中, 并通过 PCIE总线将携带有预置的协议报文的 PCIE协议报文传输给目标端设备, 实现了在 PCIE总线上传输预置的协议报 文,使得通过 PCIE总线建立彼此连接的任意设备之间均可以通过预置的协议 报文进行相互的操作, 且数据传输的带宽高、 处理速度快, 可用于全 PCIE连 接的多主机集群计算系统中 , 计算节点与存储节点基于 FC协议实现互连。  The device for transmitting a packet on the PCIE bus provided by the embodiment of the present invention carries the preset protocol packet in the PCIE protocol packet, and carries the PCIE protocol packet with the preset protocol packet through the PCIE bus. The device transmits to the target device, and realizes the transmission of the preset protocol message on the PCIE bus, so that any device connected to each other through the PCIE bus can perform mutual operation through the preset protocol message, and the data is transmitted. High bandwidth and fast processing speed. It can be used in a multi-host cluster computing system with full PCIE connection. The compute nodes and storage nodes are interconnected based on the FC protocol.
如图 4所示, 为本发明一个实施例提供的在 PCIE总线上传输报文的装置 的结构示意图:  FIG. 4 is a schematic structural diagram of an apparatus for transmitting a message on a PCIE bus according to an embodiment of the present invention:
封装模块 201, 包括: 第一封装单元 2011, 用于当发送设备发现请求信 息至第三方设备时, 获取预置的协议报文;  The encapsulating module 201 includes: a first encapsulating unit 2011, configured to acquire a preset protocol packet when sending the device discovery request information to the third-party device;
本发明实施例可以根据具体的业务类型可以将所述预置的协议报文封装 在所述 PCIE协议 4艮文的处理层协议 TLP包中, 获得 FC-TLP协议艮文; 或将所述预置的协议报文封装在所述 PCIE协议报文的处理层协议 TLP 包中, 获得 FCoPIP-TLP协议报文;  The embodiment of the present invention may encapsulate the preset protocol packet in the processing layer protocol TLP packet of the PCIE protocol according to a specific service type, and obtain an FC-TLP protocol text; or The protocol packet is encapsulated in the processing layer protocol TLP packet of the PCIE protocol packet, and the FCoPIP-TLP protocol packet is obtained.
所述收发模块 202, 用于获取所述目标端设备的 PCIE设备 ID, 将所述 目标端设备的 PCIE设备 ID封装在预置的协议报文中, 并将预置的协议报文 携带在 PCIE协议报文中, 通过 PCIE总线将所述 PCIE协议报文发送给目标 端设备, 以使所述目标端设备从所述 PCIE协议报文中解析出所述预置的协议 报文后根据所述预置的协议报文的指令执行相应操作; The transceiver module 202 is configured to acquire a PCIE device ID of the target device, and encapsulate the PCIE device ID of the target device in a preset protocol packet, and carry the preset protocol packet in the PCIE. In the protocol packet, the PCIE protocol packet is sent to the target through the PCIE bus. And the end device, after the target end device parses the preset protocol packet from the PCIE protocol packet, and performs a corresponding operation according to the instruction of the preset protocol packet;
当发送设备发现请求信息时, 所述收发模块 202具体用于发送设备发现 请求信息至第三方设备, 接收所述第三方设备返回的第一请求响应信息, 其 中, 所述第一请求响应中携带有所述第三方设备的 PCIE设备 ID。  When the device discovery request information is sent, the transceiver module 202 is specifically configured to send the device discovery request information to the third-party device, and receive the first request response information returned by the third-party device, where the first request response is carried. There is a PCIE device ID of the third party device.
其中, 本实施例中的第三方设备可以是链路中的特定的网络管理设备。 本实施例中, 所述收发模块 202发送设备发现请求信息至第三方设备可 以通过起始端设备向第三方设备发送, 同时, 也可以是, 通过目标端设备向 第三方设备发送设备发现请求信息。  The third-party device in this embodiment may be a specific network management device in the link. In this embodiment, the sending and receiving module 202 sends the device discovery request information to the third-party device, and may send the device discovery request information to the third-party device through the target device.
当所述预置的协议报文为虚拟链路实例化请求时, 第一封装单元 2011 , 还用于当所述收发模块 202 向第三方设备发送虚拟链路实例化请求时, 将所 述起始端设备的 PCIE设备 ID封装在 FCoPIP协议报文中, 并将 FCoPIP协议 报文携带在 PCIE协议报文中, 获得 FCoPIP-TLP协议报文。  When the preset protocol packet is a virtual link instantiation request, the first encapsulating unit 2011 is further configured to: when the transceiver module 202 sends a virtual link instantiation request to a third-party device, The PCIE device ID of the start device is encapsulated in the FCoPIP protocol packet, and the FCoPIP protocol packet is carried in the PCIE protocol packet to obtain the FCoPIP-TLP protocol packet.
收发模块 202用于向第三方设备发送虛拟链路实例化请求, 该请求信息 可以是 Virtual Link Instantiation Request;  The transceiver module 202 is configured to send a virtual link instantiation request to the third-party device, where the request information may be a Virtual Link Instantiation Request;
所述收发模块 202发送虚拟链路实例化请求至第三方设备可以通过起始 端设备向第三方设备发送, 同时, 还需要, 通过目标端设备向第三方设备发 送; 收发模块 202接收 PCIE链路上第三方设备返回的第二请求响应信息; 其中, 第二请求响应信息可以是 Virtual Link Instantiation Reply, 表示虛 拟链路实例化响应, 所述第二请求响应信息中携带有所述起始端设备和目标 端设备各自的光纤通道协议参数和所述第三方设备分配给起始端设备的光纤 通道端口 ID和目标端设备的光纤通道端口 ID。  The sending and receiving module 202 sends a virtual link instantiation request to the third-party device, and the third-party device can send the third-party device to the third-party device, and also needs to send the third-party device to the third-party device. The transceiver module 202 receives the PCIE link. The second request response information returned by the third-party device, where the second request response information may be a virtual link instantiation reply, indicating a virtual link instantiation response, where the second request response information carries the start device and the target The respective Fibre Channel protocol parameters of the end devices and the Fibre Channel port ID assigned to the originating device by the third party device and the Fibre Channel port ID of the target device.
进一步的, 如果所述预置的协议报文为注册名称服务器(PLOGI NS )请 求时, 该封装模块 201还可以包括:  Further, if the preset protocol packet is a registration name server (PLOGI NS ) request, the encapsulating module 201 may further include:
第二封装单元 2012, 用于当发送注册名称服务器请求信息至第三方设备 时, 对预置的协议报文进行处理, 将第三方设备的光纤通道协议参数和光纤 通道端口 ID封装在 FC协议报文中,并将 FC协议报文携带在 PCIE协议报文 中以获得 FC-TLP协议 文; 所述收发模块 202还用于发送所述注册名称服务器请求到第三方设备, 并接收第三方设备返回的第三请求响应信息。 其中, 所述注册名称服务器请 求信息为 FC-TLP协议报文, 所述光纤通道端口 ID是在路由配置中确定的与 设备唯一对应的地址标识。 其中, 第三请求响应信息中携带有所述目标端设 备的 PCIE设备 ID。 The second encapsulating unit 2012 is configured to process the preset protocol packet when the registration name server request information is sent to the third-party device, and encapsulate the Fibre Channel protocol parameter and the Fibre Channel port ID of the third-party device in the FC protocol report. The FC protocol packet is carried in the PCIE protocol packet to obtain the FC-TLP protocol text. The transceiver module 202 is further configured to send the registration name server request to the third-party device, and receive the third request response information returned by the third-party device. The registration name server request information is an FC-TLP protocol packet, and the Fibre Channel port ID is an address identifier uniquely corresponding to the device determined in the routing configuration. The third request response information carries the PCIE device ID of the target device.
如果发送端口注册请求信息到目标端设备, 则第二封装单元 2012还用于 对预置的协议报文进行处理, 将目标端设备的 PCIE设备 ID封装在 FC协议 报文中,并将 FC协议报文携带在 PCIE协议报文中以获得 FC-TLP协议报文; 所述收发模块 202用于发送所述端口注册请求信息到所述目标端设备, 接收从目标端设备返回的第四请求响应信息 , 从而建立从起始端设备到目标 端设备的光纤通道虚拟链路。  If the port registration request information is sent to the target device, the second encapsulation unit 2012 is further configured to process the preset protocol packet, encapsulate the PCIE device ID of the target device in the FC protocol packet, and configure the FC protocol. The packet is carried in the PCIE protocol packet to obtain the FC-TLP protocol packet. The transceiver module 202 is configured to send the port registration request information to the target device, and receive the fourth request response returned from the target device. Information to establish a Fibre Channel virtual link from the originating device to the target device.
所述设备还包括:  The device further includes:
配置模块 401, 用于响应接收到的预置的协议报文, 为所述起始端设备和 目标端设备分别配置各自的光纤通道端口 ID,将所述光纤通道端口 ID携带于 第一请求响应信息中返回至起始端设备和目标端设备;  The configuration module 401 is configured to configure a respective Fibre Channel port ID for the start device and the target device, and carry the Fibre Channel port ID in the first request response information, in response to the received preset protocol message. Return to the originating device and the target device;
记录模块 402, 用于记录所分配的光纤通道端口 ID和 PCIE设备 ID, 以 及光纤通道协议参数等相关信息, 其中, 记录的光纤通道协议参数包括起始 端设备的光纤通道端口 ID和目标端设备的光纤通道端口 ID,以及起始端设备 和目标端设备各自的光纤通道协议参数。 其中, 所述光纤通道端口 ID是在路 由配置中确定的与设备唯一对应的地址标识。  The recording module 402 is configured to record the allocated Fibre Channel port ID and the PCIE device ID, and the Fibre Channel protocol parameters, where the recorded Fibre Channel protocol parameters include the Fibre Channel port ID of the initiating device and the target device. Fibre Channel port ID, and Fibre Channel protocol parameters for each of the initiator and destination devices. The Fibre Channel port ID is an address identifier uniquely corresponding to the device determined in the routing configuration.
本发明实施例提供的在 PCIE总线上传输报文的设备, 通过 PCIE总线使 得使用 FC协议的存储系统进行互连, 使得通过 PCIE总线建立彼此连接的任 意设备之间均可以通过预置的协议报文进行相互的操作,可以利用 FC协议已 有的功能优势和管理工具,且数据传输的带宽高、处理速度快,可用于全 PCIE 连接的多主机集群计算系统中, 计算节点与存储节点基于 FC协议实现互连。 图 5为本发明一个实施例提供的在 PCIE总线上传输报文的系统结构示意 图, 如图 5所示, 该系统包括: The device for transmitting a message on the PCIE bus provided by the embodiment of the present invention interconnects the storage system using the FC protocol through the PCIE bus, so that any device connected to each other through the PCIE bus can report through a preset protocol. The mutual operation of the text can utilize the existing functional advantages and management tools of the FC protocol, and the data transmission has high bandwidth and fast processing speed, and can be used in a multi-host cluster computing system with full PCIE connection, and the computing node and the storage node are based on the FC. The protocol implements interconnection. FIG. 5 is a schematic structural diagram of a system for transmitting a message on a PCIE bus according to an embodiment of the present invention, as shown in FIG. 5, The system includes:
起始端设备 20、 目标端设备 30、 以及第三方设备 40, 其中, 起始端设备 20、 目标端设备 30、以及第三方设备 40通过 PCIE总线连接并进行数据交互。  The start device 20, the target device 30, and the third party device 40, wherein the start device 20, the target device 30, and the third party device 40 are connected and perform data interaction through the PCIE bus.
图 6为本发明实施例提供的起始端设备的结构示意图, 起始端设备 20包 括:  FIG. 6 is a schematic structural diagram of a start device according to an embodiment of the present invention, where the start device 20 includes:
第一发送单元 601,用于将第一预置协议的注册名称服务器请求信息携带 在 PCIE协议报文中, 并通过 PCIE总线发送给第三方设备;  The first sending unit 601 is configured to carry the registration name server request information of the first preset protocol in the PCIE protocol packet, and send the information to the third-party device through the PCIE bus;
第一接收单元 602, 用于接收第三方设备返回的携带在 PCIE协议报文中 的第一预置协议的第三请求响应信息, 第三请求响应信息中携带有目标端设 备的 PCIE设备 ID;  The first receiving unit 602 is configured to receive, by the third device, the third request response information of the first preset protocol that is carried in the PCIE protocol packet, where the third request response information carries the PCIE device ID of the target device;
第一发送单元 601,还用于根据从第三请求响应信息中获取到所述目标端 设备的 PCIE设备 ID, 将所述第一预置协议的端口注册请求信息携带在 PCIE 协议报文中, 并通过 PCIE总线发送给目标端设备;  The first sending unit 601 is further configured to: carry the port registration request information of the first preset protocol in a PCIE protocol packet according to the PCIE device ID of the target device that is obtained from the third request response information, And sent to the target device through the PCIE bus;
第一接收单元 602, 还用于接收目标端设备返回的携带在 PCIE协议报文 中的第一预置协议的第四请求响应信息, 从而建立光纤通道虚拟链路。  The first receiving unit 602 is further configured to receive fourth request response information of the first preset protocol that is carried in the PCIE protocol packet returned by the target device, thereby establishing a Fibre Channel virtual link.
可选地, 起始端设备 20还包括:  Optionally, the initiating device 20 further includes:
第二发送单元 603,用于在第一发送单元 601将第一预置协议的注册名称 服务器请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发送给第三方设 备之前, 将第二预置协议的设备发现请求携带在 PCIE 协议报文中, 并通过 PCIE总线发送;  The second sending unit 603 is configured to: after the first sending unit 601 carries the registration name server request information of the first preset protocol in the PCIE protocol message, and sends the second preset to the third-party device through the PCIE bus, The device discovery request of the protocol is carried in the PCIE protocol packet and sent through the PCIE bus.
第二接收单元 604, 用于接收第三方设备对应返回的携带在 PCIE协议报 文中的第二预置协议的第一请求响应信息, 所述第一请求响应信息中携带有 第三方设备的 PCIE设备 ID;  The second receiving unit 604 is configured to receive, by the third device, the first request response information of the second preset protocol that is carried in the PCIE protocol packet, where the first request response information carries the PCIE of the third-party device. Device ID;
第二发送单元 603, 还用于根据第三方设备的 PCIE设备 ID, 将第二预置 协议的虚拟链路实例化倩求信息携带在 PCIE协议报文中, 并通过 PCIE总线 发送给第三方设备,所述虚拟链路实例化请求信息携带起始端设备的 PCIE设 备 ID;  The second sending unit 603 is further configured to carry the virtual link instantiation information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and send the information to the third-party device through the PCIE bus. The virtual link instantiation request information carries a PCIE device ID of the initiating device;
第二接收单元 604, 还用于接收第三方设备返回的携带在 PCIE协议报文 中的第二预置协议的第二请求响应信息, 从而在第三方设备中对起始端设备 进行注册。 The second receiving unit 604 is further configured to receive, by the third-party device, the carried in the PCIE protocol packet The second request response information of the second preset protocol is configured to register the originating device in the third party device.
可选地, 所述第一发送单元 601 , 还用于在该光纤通道虚拟链路上周期性 将第二预置协议的链路维护信息携带在 PCIE协议报文中, 发送给对端设备。 图 Ί为本发明实施例提供的第三方设备的结构示意图, 第三方设备 40包 括:  Optionally, the first sending unit 601 is further configured to periodically carry the link maintenance information of the second preset protocol in the PCIE protocol packet on the Fibre Channel virtual link, and send the information to the peer device. Figure Ί is a schematic structural diagram of a third-party device provided by an embodiment of the present invention, and the third-party device 40 includes:
第三接收单元 701, 用于接收起始端设备发送的携带在 PCIE协议报文中 的第一预置协议的注册名称服务器请求信息;  The third receiving unit 701 is configured to receive, by the initiating device, the registration name server request information of the first preset protocol that is carried in the PCIE protocol packet;
第三发送单元 702, 用于将第一预置协议的第三请求信息携带在 PCIE协 议报文中, 并通过 PCIE总线发送给所述起始端设备, 所述第三请求响应信息 中携带有目标端设备的 PCIE设备 ID。  The third sending unit 702 is configured to carry the third request information of the first preset protocol in the PCIE protocol message, and send the message to the initiating device through the PCIE bus, where the third request response information carries the target The PCIE device ID of the end device.
可选地, 第三方设备 40还包括:  Optionally, the third party device 40 further includes:
第四接收单元 703 , 用于接收起始端设备或目标端设备发送的携带在 PCIE协议报文中的第二预置协议的设备发现请求;  The fourth receiving unit 703 is configured to receive a device discovery request that is sent by the initiating device or the target device to the second preset protocol that is carried in the PCIE protocol packet;
第四发送单元 704 , 用于将第二预置协议的第一请求响应信息携带在 PCIE协议艮文中, 并通过 PCIE总线发送给所述起始端设备或目标端设备。  The fourth sending unit 704 is configured to carry the first request response information of the second preset protocol in the PCIE protocol, and send the information to the originating device or the target device through the PCIE bus.
图 8为本发明实施例提供的目标端设备的结构示意图, 目标端设备 30包 括:  FIG. 8 is a schematic structural diagram of a target device according to an embodiment of the present invention, where the target device 30 includes:
第五接收单元 801, 用于接收起始端设备发送的携带在 PCIE协议报文中 的第一预置协议的端口注册请求信息;  The fifth receiving unit 801 is configured to receive, by the initiating device, port registration request information of the first preset protocol that is carried in the PCIE protocol packet;
第五发送单元 802, 用于将第一预置协议的第四请求响应信息, 携带在 PCIE协议 4艮文中, 并通过 PCIE总线发送给所述起始端设备, 从而建立光纤 通道虚拟链路。  The fifth sending unit 802 is configured to carry the fourth request response information of the first preset protocol in the PCIE protocol, and send the information to the initiating device through the PCIE bus, thereby establishing a Fibre Channel virtual link.
可选地, 目标端设备 30还包括:  Optionally, the target device 30 further includes:
第六发送单元 803, 用于在第五接收单元接收端口注册请求信息之前, 将 第二预置协议的设备发现请求携带在 PCIE协议报文中, 并通过 PCIE总线发 送; 第六接收单元 804, 用于接收第三方设备对应返回的携带在 PCIE协议报 文中的第二预置协议的第一请求响应信息, 所述第一请求响应信息中携带有 第三方设备的 PCIE设备 ID; The sixth sending unit 803 is configured to: before the fifth receiving unit receives the port registration request information, carry the device discovery request of the second preset protocol in the PCIE protocol packet, and send the message through the PCIE bus; The sixth receiving unit 804 is configured to receive, by the third device, the first request response information of the second preset protocol that is carried in the PCIE protocol packet, where the first request response information carries the PCIE of the third-party device. Device ID;
第六发送单元 803, 还用于根据第三方设备的 PCIE设备 ID, 将第二预置 协议的虛拟链路实例化请求信息携带在 PCIE协议报文中, 并通过 PCIE总线 发送给第三方设备,所述虚拟链路实例化请求信息携带目标端设备的 PCIE设 备 ID;  The sixth sending unit 803 is further configured to: carry the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and send the information to the third-party device through the PCIE bus, The virtual link instantiation request information carries a PCIE device ID of the target device;
第六接收单元 804, 还用于接收第三方设备返回的携带在 PCIE协议报文 中的第二预置协议的第二请求响应信息, 从而在第三方设备中对目标端设备 进行注册。  The sixth receiving unit 804 is further configured to receive the second request response information of the second preset protocol that is carried in the PCIE protocol packet returned by the third-party device, so as to register the target device in the third-party device.
这里需要说明的是, 起始端设备 20和目标端设备 30在现有技术中可以 是计算机及其相关外部设备, 如计算机、 服务器、 存储阵列等设备, 但并不 限制在计算机及其相关外部设备上,其他通过 PCIE总线连接的特定设备都可 以成为起始端设备 20或者目标端设备 30。  It should be noted that the start device 20 and the target device 30 may be computers and related external devices, such as computers, servers, storage arrays, etc. in the prior art, but are not limited to computers and related external devices. In the above, other specific devices connected through the PCIE bus can be the originating device 20 or the target device 30.
本发明实施例可用于全 PCI-E连接的多主机集群计算系统中, 计算节点 与存储节点基于 FC协议实现存储网络的虚拟化。  The embodiment of the invention can be used in a multi-host cluster computing system with full PCI-E connection, and the computing node and the storage node implement virtualization of the storage network based on the FC protocol.
本发明实施例提供了一种在 PCIE总线上传输报文的系统,通过将预置的 协议报文携带在 PCIE协议报文中, 并通过 PCIE总线将封装有预置的协议报 文的 PCIE协议报文传输给目标端设备, 实现了在 PCIE总线上传输预置的协 议报文,使得通过 PCIE总线建立彼此连接的任意设备之间均可以通过预置的 协议报文进行相互的操作, 且数据传输的带宽高、 处理速度快, 提高了报文 的传输速度, 低了设备的成本; 同时, 通过在 PCIE总线上传递预置的协议 报文 ,使得通过 PCIE总线连接的两个对端设备之间可以通过预置的协议报文 进行相互的操作, 而不需要定义各种私有的协议进行相互的操作, 通用性好。  The embodiment of the present invention provides a system for transmitting a message on a PCIE bus, by carrying a preset protocol packet in a PCIE protocol packet, and encapsulating a PCIE protocol with a preset protocol packet through the PCIE bus. The message is transmitted to the target device, and the preset protocol message is transmitted on the PCIE bus, so that any device connected to each other through the PCIE bus can perform mutual operation through the preset protocol message, and the data The transmission bandwidth is high and the processing speed is fast, which improves the transmission speed of the packet and lowers the cost of the device. At the same time, by transmitting the preset protocol packet on the PCIE bus, the two peer devices connected through the PCIE bus are enabled. Between each other, preset protocol messages can be used to perform mutual operations without defining various proprietary protocols for mutual operation, and the versatility is good.
另外, 采用本方案的存储设备, 由于 PCIE总线沿用了 PCI总线的原理, 但抛弃了并行共享总线, 采用了目前业内流行的点对点串行连接, 每个设备 都有自己的专用连接, 不需要向整个总线请求带宽, 而且可以把数据传输率 提高到一个很高的频率, 达到 PCI所不能提供的高带宽, 即所有设备均可通 过 PCIE进行连接, 简化了主板设计上的不必要的麻烦。 In addition, the memory device of the present scheme, because the PCIE bus inherits the principle of the PCI bus, but abandons the parallel shared bus, adopts the popular point-to-point serial connection in the industry, and each device has its own dedicated connection, and does not need to The entire bus requests bandwidth, and can increase the data transmission rate to a very high frequency, reaching the high bandwidth that PCI cannot provide, that is, all devices can pass Connecting through PCIE simplifies unnecessary troubles in the design of the motherboard.
本领域普通技术人员可以理解: 实现上述方法实施例的全部或部分步骤 可以通过程序指令相关的硬件来完成, 前述的程序可以存储于一计算机可读 取存储介质中, 该程序在执行时, 执行包括上述方法实施例的步骤; 而前述 的存储介质包括: ROM、 RAM, 磁碟或者光盘等各种可以存储程序代码的介 质。  A person skilled in the art can understand that all or part of the steps of implementing the above method embodiments may be completed by using hardware related to program instructions, and the foregoing program may be stored in a computer readable storage medium, and the program is executed when executed. The foregoing steps include the steps of the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.
最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对其 限制; 尽管参照前述实施例对本发明进行了详细的说明, 本领域的普通技术 人员应当理解: 其依然可以对前述各实施例所记载的技术方案进行修改, 或 者对其中部分技术特征进行等同替换; 而这些修改或者替换, 并不使相应技 术方案的本质脱离本发明各实施例技术方案的精神和范围。  It should be noted that the above embodiments are only for explaining the technical solutions of the present invention, and are not intended to be limiting; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those skilled in the art that: The technical solutions described in the foregoing embodiments are modified, or some of the technical features are equivalently replaced. The modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

权 利 要 求 Rights request
1、 一种在外部组件高速互联 PCIE总线上传输报文的方法, 其特征在于, 包括: A method for transmitting a message on a high-speed interconnect PCIE bus of an external component, comprising:
起始端设备将第一预置协议的注册名称服务器请求信息携带在 PCIE 协 议报文中, 并通过 PCIE总线发送给第三方设备, 接收第三方设备返回的携带 在 PCIE协议报文中的第一预置协议的第三请求响应信息,所述第三请求响应 信息中携带有目标端设备的 PCIE设备 ID;  The initiating device carries the registration information server request information of the first preset protocol in the PCIE protocol packet, and sends the information to the third-party device through the PCIE bus, and receives the first pre-received in the PCIE protocol packet returned by the third-party device. a third request response information of the protocol, where the third request response information carries a PCIE device ID of the target device;
起始端设备根据从第三请求响应信息中获取到的所述目标端设备的 PCIE 设备 ID, 将所述第一预置协议的端口注册请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发送给目标端设备, 并接收目标端设备返回的携带在 PCIE 协议报文中的第一预置协议的第四请求响应信息, 从而建立与目标端设备之 间的光纤通道虛拟链路, 其中, 所述起始端设备、 目标端设备、 第三方设备 之间通过 PCIE总线互连。  The initiating device carries the port registration request information of the first preset protocol in a PCIE protocol packet according to the PCIE device ID of the target device that is obtained from the third request response information, and sends the information through the PCIE bus. And the fourth request response information of the first preset protocol carried in the PCIE protocol packet returned by the target device is received, thereby establishing a Fibre Channel virtual link with the target device, where The start device, the target device, and the third device are interconnected by a PCIE bus.
2、如权利要求 1所述的方法,其特征在于,所述第一预置协议为 FC-TLP。  2. The method of claim 1 wherein the first preset protocol is an FC-TLP.
3、 如权利要求 2所述的方法, 其特征在于, 所述将所述第一预置协议的 注册名称服务器请求信息携带在 PCIE协议报文中, 包括:  The method of claim 2, wherein the requesting the registration information of the first preset protocol is carried in a PCIE protocol message, including:
将 FC-TLP协议的注册名称服务器请求信息封装在 PCIE报文中的 TLP载 荷部分;  Encapsulating the registration name server request information of the FC-TLP protocol in the TLP payload part of the PCIE message;
所述将所述第一预置协议的端口注册请求信息携带在 PCIE协议 文中, 包括:  The port registration request information of the first preset protocol is carried in the PCIE protocol, and includes:
将 FC-TLP协议的端口注册请求信息封装在 PCIE 文中的 TLP载荷部 分。  The port registration request information of the FC-TLP protocol is encapsulated in the TLP payload portion of the PCIE text.
4、 如权利要求 1所述的方法, 其特征在于, 所述将第一预置协议的注册 名称服务器请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发送给第三 方设备之前, 还包括:  The method of claim 1, wherein the requesting server information of the first preset protocol is carried in a PCIE protocol message, and is sent to the third party device through the PCIE bus, and further includes :
起始端设备将第二预置协议的设备发现请求携带在 PCIE协议报文中, 并 通过 PCIE总线发送, 接收第三方设备对应返回的携带在 PCIE协议报文中的 第二预置协议的第一请求响应信息, 所述第一请求响应信息中携带有第三方 设备的 PCIE设备 ID; The initiating device carries the device discovery request of the second preset protocol in the PCIE protocol packet, and sends the packet to the PCIE protocol packet. a first request response information of the second preset protocol, where the first request response information carries a PCIE device ID of the third-party device;
起始端设备根据第三方设备的 PCIE设备 ID, 将第二预置协议的虚拟链 路实例化请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发送给第三方 设备, 所述虛拟链路实例化请求信息携带起始端设备的 PCIE设备 ID; 接收 第三方设备返回的携带在 PCIE 协议报文中的第二预置协议的第二请求响应 信息。  The initiating device carries the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and sends the information to the third-party device through the PCIE bus, where the virtual link instance is sent. The request information carries the PCIE device ID of the initiating device; and receives the second request response information of the second preset protocol that is carried in the PCIE protocol packet and returned by the third device.
5、 如权利要求 1所述的方法, 其特征在于, 所述起始端设备获取第一预 置协议的报文之前, 还包括:  The method according to claim 1, wherein before the acquiring, by the initiating device, the packet of the first preset protocol, the method further includes:
目标端设备将第二预置协议的设备发现请求携带在 PCIE协议报文中, 并 通过 PCIE总线发送, 接收第三方设备对应返回的携带在 PCIE协议报文中的 第二预置协议的第一请求响应信息, 所述第一请求响应信息中携带有第三方 设备的 PCIE设备 ID;  The target device carries the device discovery request of the second preset protocol in the PCIE protocol packet, and sends the packet through the PCIE bus, and receives the first preset of the second preset protocol that is carried in the PCIE protocol packet corresponding to the third-party device. Requesting response information, where the first request response information carries a PCIE device ID of a third-party device;
目标端设备根据第三方设备的 PCIE设备 ID, 将第二预置协议的虚拟链 路实例化请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发送给第三方 设备, 所述虚拟链路实例化请求信息携带目标端设备的 PCIE设备 ID; 接收 第三方设备返回的携带在 PCIE 协议报文中的第二预置协议的第二请求响应 信息, 从而在第三方设备中对目标端设备进行注册。  The target device carries the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and sends the information to the third-party device through the PCIE bus, where the virtual link instance is sent. The request information carries the PCIE device ID of the target device; and receives the second request response information of the second preset protocol that is carried in the PCIE protocol packet returned by the third device, thereby registering the target device in the third party device. .
6、 如权利要求 5所述的方法, 其特征在于, 所述建立光纤通道虛拟链路 后, 还包括:  The method of claim 5, wherein after the establishing the Fibre Channel virtual link, the method further includes:
起始端设备和 /或目标端设备在该光纤通道虚拟链路上周期性将第二预置 协议的链路维护信息携带在 PCIE协议报文中, 发送给对端设备。  The start device and/or the target device periodically carry the link maintenance information of the second preset protocol in the PCIE protocol packet on the Fibre Channel virtual link, and send the information to the peer device.
7、 如权利要求 4至 6任一所述的方法, 其特征在于, 所述第二预置协议 为 FCoPIP-TLP。  The method according to any one of claims 4 to 6, wherein the second preset protocol is FCoPIP-TLP.
8、 如权利要求 7所述的方法, 其特征在于, 所述起始端设备将第二预置 协议的设备发现请求携带在 PCIE协议报文中, 包括:  The method of claim 7, wherein the initiating device carries the device discovery request of the second preset protocol in the PCIE protocol packet, including:
将所述 FCoPIP-TLP报文的设备发现请求封装在 PCIE报文中的 TLP载荷 部分; 所述将第二预置协议的虚拟链路实例化请求信息携带在 PCIE 协议报文 中, 包括: Encapsulating the device discovery request of the FCoPIP-TLP packet in a TLP payload part of the PCIE packet; The carrying the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet includes:
将所述 FCoPIP-TLP报文的虚拟链路实例化请求信息封装在 PCIE报文中 的 TLP载荷部分;  Encapsulating the virtual link instantiation request information of the FCoPIP-TLP packet in a TLP payload part of the PCIE packet;
所述将第二预置协议的链路维护信息携带在 PCIE协议报文中, 包括: 将所述 FCoPIP-TLP报文的链路维护信息封装在 PCIE报文中的 TLP载荷 部分。  The carrying the link maintenance information of the second preset protocol in the PCIE protocol packet includes: encapsulating the link maintenance information of the FCoPIP-TLP packet in a TLP payload part of the PCIE packet.
9、 一种起始端设备, 其特征在于, 包括:  9. A start-end device, comprising:
第一发送单元, 用于将第一预置协议的注册名称服务器请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发送给第三方设备;  The first sending unit is configured to carry the registration name server request information of the first preset protocol in the PCIE protocol packet, and send the information to the third-party device through the PCIE bus;
第一接收单元,用于接收第三方设备返回的携带在 PCIE协议报文中的第 一预置协议的第三请求响应信息, 第三请求响应信息中携带有目标端设备的 PCIE设备 ID;  The first receiving unit is configured to receive the third request response information of the first preset protocol that is carried in the PCIE protocol packet, and the third request response information carries the PCIE device ID of the target device.
第一发送单元, 还用于根据从第三请求响应信息中获取到所述目标端设 备的 PCIE设备 ID,将所述第一预置协议的端口注册请求信息携带在 PCIE协 议报文中, 并通过 PCIE总线发送给目标端设备;  The first sending unit is further configured to: carry the port registration request information of the first preset protocol in a PCIE protocol packet, according to the PCIE device ID of the target device, obtained from the third request response information, and Send to the target device through the PCIE bus;
第一接收单元 ,还用于接收目标端设备返回的携带在 PCIE协议报文中的 第一预置协议的第四请求响应信息, 从而建立光纤通道虚拟链路。  The first receiving unit is further configured to receive the fourth request response information of the first preset protocol that is carried in the PCIE protocol packet returned by the target device, thereby establishing a Fibre Channel virtual link.
10、 如权利要求 9所述的设备, 其特征在于, 还包括:  The device according to claim 9, further comprising:
第二发送单元, 用于在第一发送单元将第一预置协议的注册名称服务器 请求信息携带在 PCIE协议报文中,并通过 PCIE总线发送给第三方设备之前, 将第二预置协议的设备发现请求携带在 PCIE协议 ·|艮文中, 并通过 PCIE总线 发送;  a second sending unit, configured to: after the first sending unit carries the registration name server request information of the first preset protocol in the PCIE protocol message, and sends the information to the third party device through the PCIE bus, The device discovery request is carried in the PCIE protocol and is sent through the PCIE bus.
第二接收单元,用于接收第三方设备对应返回的携带在 PCIE协议报文中 的第二预置协议的第一请求响应信息, 所述第一请求响应信息中携带有第三 方设备的 PCIE设备 ID;  The second receiving unit is configured to receive the first request response information of the second preset protocol that is carried in the PCIE protocol packet that is returned by the third-party device, where the first request response information carries the PCIE device of the third-party device ID;
第二发送单元, 还用于根据第三方设备的 PCIE设备 ID, 将第二预置协 议的虚拟链路实例化请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发 送给第三方设备,所述虚拟链路实例化请求信息携带起始端设备的 PCIE设备 ID; The second sending unit is further configured to: carry the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and send the information through the PCIE bus Sending to the third-party device, the virtual link instantiation request information carries the PCIE device ID of the initiating device;
第二接收单元,还用于接收第三方设备返回的携带在 PCIE协议报文中的 第二预置协议的第二请求响应信息, 从而在第三方设备中对起始端设备进行 注册。  The second receiving unit is further configured to receive the second request response information of the second preset protocol that is carried in the PCIE protocol packet returned by the third-party device, so as to register the initiating device in the third-party device.
11、 如权利要求 10所述的设备, 其特征在于, 所述第一发送单元, 还用 于在该光纤通道虚拟链路上周期性将第二预置协议的链路维护信息携带在 The device according to claim 10, wherein the first sending unit is further configured to periodically carry the link maintenance information of the second preset protocol on the Fibre Channel virtual link.
PCIE协议报文中, 发送给对端设备。 The PCIE protocol packet is sent to the peer device.
12、 一种第三方设备, 其特征在于, 包括:  12. A third-party device, comprising:
第三接收单元 ,用于接收起始端设备发送的携带在 PCIE协议报文中的第 一预置协议的注册名称服务器请求信息;  a third receiving unit, configured to receive, by the originating device, the registration name server request information of the first preset protocol carried in the PCIE protocol packet;
第三发送单元,用于将第一预置协议的第三请求信息携带在 PCIE协议报 文中, 并通过 PCIE总线发送给所述起始端设备, 所述第三请求响应信息中携 带有目标端设备的 PCIE设备 ID。  a third sending unit, configured to carry the third request information of the first preset protocol in the PCIE protocol packet, and send the information to the initiating device through the PCIE bus, where the third request response information carries the target end The PCIE device ID of the device.
13、 如权利要求 12所述的设备, 其特征在于, 还包括:  13. The device according to claim 12, further comprising:
第四接收单元,用于接收起始端设备或目标端设备发送的携带在 PCIE协 议报文中的第二预置协议的设备发现请求;  a fourth receiving unit, configured to receive a device discovery request of a second preset protocol that is sent by the originating device or the target device and is carried in the PCIE protocol packet;
第四发送单元,用于将第二预置协议的第一请求响应信息携带在 PCIE协 议报文中, 并通过 PCIE总线发送给所述起始端设备或目标端设备。  The fourth sending unit is configured to carry the first request response information of the second preset protocol in the PCIE protocol message, and send the information to the start device or the target device through the PCIE bus.
14、 一种目标端设备, 其特征在于, 包括:  14. A target device, comprising:
第五接收单元,用于接收起始端设备发送的携带在 PCIE协议报文中的第 一预置协议的端口注册请求信息;  a fifth receiving unit, configured to receive port registration request information of the first preset protocol that is sent by the initiating device and is carried in the PCIE protocol packet;
第五发送单元, 用于将第一预置协议的第四请求响应信息, 携带在 PCIE 协议报文中, 并通过 PCIE总线发送给所述起始端设备, 从而建立光纤通道虚 拟链路。  The fifth sending unit is configured to carry the fourth request response information of the first preset protocol in the PCIE protocol packet, and send the information to the initiating device through the PCIE bus, thereby establishing a Fibre Channel virtual link.
15、 如权利要求 14所述的设备, 其特征在于, 还包括:  The device according to claim 14, further comprising:
第六发送单元, 用于在第五接收单元接收端口注册请求信息之前, 将第 二预置协议的设备发现请求携带在 PCIE协议报文中,并通过 PCIE总线发送; 第六接收单元,用于接收第三方设备对应返回的携带在 PCIE协议报文中 的第二预置协议的第一请求响应信息, 所述第一请求响应信息中携带有第三 方设备的 PCIE设备 ID; a sixth sending unit, configured to: before the fifth receiving unit receives the port registration request information, carry the device discovery request of the second preset protocol in the PCIE protocol packet, and send the message through the PCIE bus; The sixth receiving unit is configured to receive, by the third device, the first request response information of the second preset protocol that is carried in the PCIE protocol packet, where the first request response information carries the PCIE device of the third-party device ID;
第六发送单元, 还用于根据第三方设备的 PCIE设备 ID, 将第二预置协 议的虚拟链路实例化请求信息携带在 PCIE协议报文中, 并通过 PCIE总线发 送给第三方设备,所述虚拟链路实例化请求信息携带目标端设备的 PCIE设备 ID;  The sixth sending unit is further configured to: carry the virtual link instantiation request information of the second preset protocol in the PCIE protocol packet according to the PCIE device ID of the third-party device, and send the information to the third-party device through the PCIE bus. The virtual link instantiation request information carries the PCIE device ID of the target device;
第六接收单元,还用于接收第三方设备返回的携带在 PCIE协议报文中的 第二预置协议的第二请求响应信息, 从而在第三方设备中对目标端设备进行 注册。  The sixth receiving unit is further configured to receive the second request response information of the second preset protocol that is carried in the PCIE protocol packet returned by the third-party device, so as to register the target device in the third-party device.
16、 一种在 PCIE总线传输报文的方法, 其特征在于, 包括:  16. A method for transmitting a message on a PCIE bus, the method comprising:
获取预置的协议报文;  Obtain a preset protocol packet;
在 PCIE链路中,获取到所述目标端设备的 PCIE设备 ID后,将所述预置 的协议报文携带在 PCIE协议报文中, 并通过 PCIE总线将所述 PCIE协议报 文发送给目标端设备, 以使所述目标端设备从所述 PCIE协议报文中解析出所 述预置的协议报文后根据所述预置的协议报文的指令执行相应操作, 其中, 所述起始端设备、 目标端设备、 第三方设备之间通过 PCIE总线互连。  After the PCIE device ID of the target device is obtained, the preset protocol packet is carried in the PCIE protocol packet, and the PCIE protocol packet is sent to the target through the PCIE bus. And the end device, after the target end device parses the preset protocol packet from the PCIE protocol packet, and performs a corresponding operation according to the instruction of the preset protocol packet, where the start end Devices, target devices, and third-party devices are interconnected by a PCIE bus.
17、 根据权利要求 16所述的方法, 其特征在于, 所述将预置的协议报文 携带在 PCIE协议 4艮文中包括:  The method according to claim 16, wherein the carrying the preset protocol packet in the PCIE protocol includes:
将预置的协议报文携带在 PCIE协议报文的处理层协议 TLP 包中, 获得 FC-TLP协议报文, 其中, 所述预置的协议 4艮文为 FC协议 4艮文;  The preset protocol packet is carried in the TLP packet of the processing layer protocol of the PCIE protocol packet, and the FC-TLP protocol packet is obtained, where the preset protocol 4 is the FC protocol.
或者, 将预置的协议报文携带在 PCIE协议报文的处理层协议 TLP包中 , 获得 FCoPIP-TLP协议 4艮文,其中,所述预置的协议艮文为 FCoPIP协议报文。  Or, the preset protocol packet is carried in the TLP packet of the processing layer protocol of the PCIE protocol packet, and the FCoPIP-TLP protocol packet is obtained, wherein the preset protocol packet is an FCoPIP protocol packet.
18、 如权利要求 17所述的方法, 其特征在于, 获取到所述目标端设备的 PCIE设备 ID之前, 所述将预置的协议报文携带在 PCIE协议报文中包括: 在 PCIE链路中, 发送设备发现请求信息 , 获取第三方设备的 PCIE设备 ID, 其中, 设备发现请求信息中包括起始端设备的光纤通道协议参数和目标 端设备的光纤通道协议参数, 其中, 所述设备发现请求信息为 FCoPIP-TLP协 议才艮文。 The method of claim 17, wherein, before the obtaining the PCIE device ID of the target device, the presetting the protocol packet in the PCIE protocol message includes: The device discovery request information is sent to obtain a PCIE device ID of the third-party device, where the device discovery request information includes a Fibre Channel protocol parameter of the initiating device and a Fibre Channel protocol parameter of the target device, where the device discovery request Information for the FCoPIP-TLP Association The discussion is written.
19.如权利要求 18所述的方法, 其特征在于,  19. The method of claim 18, wherein
发送设备发现请求信息, 获取第三方设备的 PCIE设备 ID, 包括: 通过广播或组播的方式发送设备发现请求信息于第三方设备, 并接收第 三方设备返回的第一请求响应信息, 第一请求响应信息中包括第三方设备 PCIE设备 ID, 或, 第三方设备主动在 PCIE链路上公布第三方设备的 PCIE 设备 ID。  Sending the device discovery request information, obtaining the PCIE device ID of the third-party device, including: sending the device discovery request information to the third-party device by means of broadcast or multicast, and receiving the first request response information returned by the third-party device, the first request The response information includes the third-party device PCIE device ID, or the third-party device actively announces the PCIE device ID of the third-party device on the PCIE link.
20.如权利要求 16-17 中任一项所述的方法, 其特征在于, 所述将预置的 协议 文携带在 PCIE协议^艮文中, 还包括:  The method according to any one of claims 16-17, wherein the presetting the protocol text is carried in the PCIE protocol, and further includes:
起始端设备发送注册名称服务器请求信息于第三方设备以获取目标端设 备的 PCIE设备 ID, 接收目标端设备返回的第三请求响应信息, 其中, 注册 名称服务器请求信息是 FC-TLP协议报文,注册名称服务器请求信息中携带有 目标端设备的光纤通道端口 ID及目标端设备的光纤通道协议参数, 第三请求 响应信息中携带有目标端设备的 PCIE设备 ID。  The initiating device sends the registration name server request information to the third-party device to obtain the PCIE device ID of the target device, and receives the third request response information returned by the target device, where the registration name server request information is an FC-TLP protocol message, The registration name server request information carries the Fibre Channel port ID of the target device and the Fibre Channel protocol parameter of the target device, and the third request response information carries the PCIE device ID of the target device.
PCT/CN2012/072608 2011-03-23 2012-03-20 Method, device and system for transmitting messages on pcie bus WO2012126352A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110070778.6A CN102694717B (en) 2011-03-23 2011-03-23 Method, device and system for transmitting messages on PCIE bus
CN201110070778.6 2011-03-23

Publications (1)

Publication Number Publication Date
WO2012126352A1 true WO2012126352A1 (en) 2012-09-27

Family

ID=46860006

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/072608 WO2012126352A1 (en) 2011-03-23 2012-03-20 Method, device and system for transmitting messages on pcie bus

Country Status (2)

Country Link
CN (1) CN102694717B (en)
WO (1) WO2012126352A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103931144B (en) * 2013-07-08 2015-11-25 华为技术有限公司 A kind of method, apparatus and system communicated in virtual Domain
CN108881450A (en) * 2018-06-27 2018-11-23 郑州云海信息技术有限公司 A kind of method and device carrying out equipment discovery in storage cluster
CN115865944B (en) * 2023-02-23 2023-05-30 苏州浪潮智能科技有限公司 Method, system, device, equipment and storage medium for point-to-point communication between equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070266179A1 (en) * 2006-05-11 2007-11-15 Emulex Communications Corporation Intelligent network processor and method of using intelligent network processor
CN101221552A (en) * 2007-01-09 2008-07-16 国际商业机器公司 Method and system for isolating I/O adapter unit
CN101588365A (en) * 2009-06-18 2009-11-25 杭州华三通信技术有限公司 Link negotiation control method and optical fiber chunnel bearing ether protocol integration system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8139575B2 (en) * 2007-06-29 2012-03-20 International Business Machines Corporation Device, system and method of modification of PCI express packet digest
CN101227296B (en) * 2007-12-27 2010-11-10 杭州华三通信技术有限公司 Method, system for transmitting PCIE data and plate card thereof
CN101645058B (en) * 2009-09-04 2012-12-19 成都市华为赛门铁克科技有限公司 Command processing method, command sending method, device and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070266179A1 (en) * 2006-05-11 2007-11-15 Emulex Communications Corporation Intelligent network processor and method of using intelligent network processor
CN101221552A (en) * 2007-01-09 2008-07-16 国际商业机器公司 Method and system for isolating I/O adapter unit
CN101588365A (en) * 2009-06-18 2009-11-25 杭州华三通信技术有限公司 Link negotiation control method and optical fiber chunnel bearing ether protocol integration system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YANG, A'FENG ET AL.: "Development of driver program for high speed data transmission adapter on PCIe port", CHINA MEASUREMENT & TESTING TECHNOLOGY, vol. 34, no. 2, 31 March 2008 (2008-03-31) *

Also Published As

Publication number Publication date
CN102694717A (en) 2012-09-26
CN102694717B (en) 2017-04-12

Similar Documents

Publication Publication Date Title
US10986171B2 (en) Method for unified communication of server, baseboard management controller, and server
US10868767B2 (en) Data transmission method and apparatus in optoelectronic hybrid network
US7937447B1 (en) Communication between computer systems over an input/output (I/O) bus
US7720064B1 (en) Method and system for processing network and storage data
US8176187B2 (en) Method, system, and program for enabling communication between nodes
CA2657827C (en) Method and apparatus for distributing usb hub functions across a network
US10880204B1 (en) Low latency access for storage using multiple paths
JP5353278B2 (en) Communication device
WO2021013046A1 (en) Communication method and network card
WO2020000489A1 (en) Pcie sending and receiving method, apparatus, device and system
JP2014135783A (en) High performance ethernet (r) networking utilizing existing fiber channel fabric hba technology
US10061519B2 (en) Storage system, method, and apparatus for processing multi-layer protocol encapsulation or decapsulation operation requests
WO2012100724A1 (en) Method, device, and system for transmitting packet on pcie bus
CN112291293B (en) Task processing method, related equipment and computer storage medium
US10609125B2 (en) Method and system for transmitting communication data
US20130185472A1 (en) Techniques for improving throughput and performance of a distributed interconnect peripheral bus
WO2014075255A1 (en) Method, apparatus and system for communication based on pcie switch
CN114153778A (en) Cross-network bridging
US7908404B1 (en) Method and system for managing network and storage data
CN113347017B (en) Network communication method and device, network node equipment and hybrid network
WO2012126352A1 (en) Method, device and system for transmitting messages on pcie bus
US20150350014A1 (en) Networking implementation using a converged high speed input/output fabric technology
WO2023109891A1 (en) Multicast transmission method, apparatus and system
US8225004B1 (en) Method and system for processing network and storage data
EP3631640B1 (en) Communication between field programmable gate arrays

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12760495

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12760495

Country of ref document: EP

Kind code of ref document: A1