Network interface address acquisition system and network interface address acquisition method

CN122845547APending Publication Date: 2026-09-29INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611330268.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-31
Publication Date
2026-09-29

AI Technical Summary

Technical Problem

[0003]本申请提供了一种网口地址获取系统及网口地址获取方法,以至少解决相关技术中网口的MAC地址的获取效率较低的问题

Benefits of technology

[0009]通过本申请,由于计算托盘中的第一控制器获取该计算托盘中的每个第一网卡对应的网口的第一物理地址以及第一定位信息,通过与该计算托盘中的每个第二网卡之间的虚拟通道获取该计算托盘中的每个第二网卡对应的网口的第二物理地址以及第二定位信息,将获取到的信息发送至主控制器;交换托盘中的第二控制器通过与该交换托盘中的每个第三网卡之间的虚拟通道获取该交换托盘中的每个第三网卡对应的网口的第三物理地址以及第三定位信息,通过与该交换托盘中的每个第四网卡之间的虚拟通道获取该交换托盘中的每个第四网卡对应的网口的第四物理地址以及第四定位信息,将获取到的信息发送主控制器;主控制器汇总接收到的信息,生成多个网口的定位信息与物理地址之间的映射关系表。实现了交换托盘和计算托盘中的所有网口的MAC地址的自动采集和上报,因此,可以解决相关技术中的获取交换托盘和计算托盘中的所有网口的MAC地址的方式效率较低的问题,达到了提高获取交换托盘和计算托盘中的网口的MAC地址的效率的技术效果。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122845547A_ABST
    Figure CN122845547A_ABST
Patent Text Reader

Abstract

This application discloses a network port address acquisition system and method, relating to the field of computer technology. The system includes: a first controller in a computing tray acquires the first physical address and first location information of the network port corresponding to each first network interface card (NIC) in the computing tray; acquires the second physical address and second location information of the network port corresponding to each second NIC in the computing tray via a virtual channel; and sends the acquired information to a main controller. A second controller in a switching tray acquires the third physical address and third location information of the network port corresponding to each third NIC in the switching tray, and the fourth physical address and fourth location information of the network port corresponding to each fourth NIC in the switching tray via a virtual channel; and sends the acquired information to the main controller. The main controller generates a mapping table between the location information and physical addresses of multiple network ports. This improves address acquisition efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a network port address acquisition system and a network port address acquisition method. Background Technology

[0002] With the development of cloud computing and big data technologies, supernode computing devices are widely used in data centers and high-performance computing scenarios. Supernode computing devices typically consist of multiple computing trays and multiple switching trays. Each tray integrates multiple network ports, including those corresponding to the Baseboard Management Controller (BMC) and network interface cards (NICs). During the delivery, operation, maintenance, and after-sales service of supernode computing devices, it is usually necessary to use the Media Access Control (MAC) addresses of all network ports in the device for device identification, network access control, fault location, and asset management. Related technologies obtain the MAC addresses of all network ports in the supernode computing device in two ways: one is to manually query the MAC addresses of all network ports; the other is to automatically obtain the MAC addresses of the ports corresponding to regular NICs and the BMC by writing scripts, and then manually query the MAC addresses of the ports corresponding to BlueField (BF) series smart NICs. Both methods are inefficient. Summary of the Invention

[0003] This application provides a network port address acquisition system and a network port address acquisition method to at least solve the problem of low efficiency in acquiring the MAC address of a network port in related technologies.

[0004] This application provides a network port address acquisition system, including multiple computing trays, multiple switching trays, and a main controller; the computing tray includes a first controller, multiple first network cards and multiple second network cards; the switching tray includes a second controller, multiple third network cards and multiple fourth network cards; the first network cards and third network cards do not have a third controller, while the second network cards and fourth network cards have a third controller. For any computing tray, the first controller in the computing tray is used to obtain the first physical address and first location information of the network port corresponding to each first network card in the computing tray; obtain the second physical address and second location information of the network port corresponding to each second network card in the computing tray through a virtual channel with each second network card in the computing tray; and send the obtained information to the main controller. For any given switch tray, the second controller in the switch tray is used to obtain the third physical address and third location information of the network port corresponding to each third network card in the switch tray through a virtual channel with each third network card in the switch tray; obtain the fourth physical address and fourth location information of the network port corresponding to each fourth network card in the switch tray through a virtual channel with each fourth network card in the switch tray; and send the obtained information to the main controller. The main controller is used to summarize the received information and generate a mapping table between the location information and physical addresses of multiple network ports.

[0005] This application also provides a method for obtaining a network interface address, applicable to any of the network interface address acquisition systems described above, comprising: For any computing tray, based on the first controller in the computing tray, the first physical address and first location information of the network port corresponding to each first network card in the computing tray are obtained; the second physical address and second location information of the network port corresponding to each second network card in the computing tray are obtained through the virtual channel between the first controller and each second network card in the computing tray; and the obtained information is sent to the main controller. For any given switch tray, based on the second controller in the switch tray, the third physical address and third location information of the network port corresponding to each third network card in the switch tray are obtained through a virtual channel between the controller and each third network card in the switch tray; the fourth physical address and fourth location information of the network port corresponding to each fourth network card in the switch tray are obtained through a virtual channel between the controller and each fourth network card in the switch tray; and the obtained information is sent to the main controller. Based on the main controller, the received information is aggregated to generate a mapping table between the location information and physical addresses of multiple network ports.

[0006] This application also provides an electronic device, including: a memory for storing a computer program; and a processor for executing the computer program to implement the steps of any of the above-described network port address acquisition methods.

[0007] This application also provides a computer-readable storage medium storing a computer program, wherein when the computer program is executed by a processor, it implements the steps of any of the above-described methods for obtaining a network port address.

[0008] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the above-described methods for obtaining a network interface address.

[0009] Through this application, the first controller in the computing tray obtains the first physical address and first location information of the network port corresponding to each first network card in the computing tray, and obtains the second physical address and second location information of the network port corresponding to each second network card in the computing tray through a virtual channel, and sends the obtained information to the main controller; the second controller in the switching tray obtains the third physical address and third location information of the network port corresponding to each third network card in the switching tray through a virtual channel, and obtains the fourth physical address and fourth location information of the network port corresponding to each fourth network card in the switching tray through a virtual channel, and sends the obtained information to the main controller; the main controller summarizes the received information and generates a mapping table between the location information and physical address of multiple network ports. This achieves automatic collection and reporting of the MAC addresses of all network ports in the switching tray and computing tray, thus solving the problem of low efficiency in obtaining the MAC addresses of all network ports in the switching tray and computing tray in related technologies, and achieving the technical effect of improving the efficiency of obtaining the MAC addresses of network ports in the switching tray and computing tray. Attached Figure Description

[0010] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0011] Figure 1 A schematic diagram of a network port address acquisition system provided in this application embodiment; Figure 2 This is a schematic diagram of the structure of another network port address acquisition system provided in an embodiment of this application; Figure 3 A flowchart illustrating a method for obtaining a network interface address provided in an embodiment of this application; Figure 4 A flowchart illustrating yet another method for obtaining a network interface address provided in an embodiment of this application; Figure 5 This is a schematic diagram illustrating how each tray's BMC collects the MAC addresses and location information of all network ports on the tray, as provided in this embodiment of the application. Figure 6 This is a schematic diagram illustrating the mapping relationship between the location information and physical address of multiple global network interfaces provided in an embodiment of this application. Figure 7 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0012] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.

[0013] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.

[0014] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0015] Supernode computing devices typically consist of multiple compute trays and multiple switch trays. BF series network interface cards (NICs), with their powerful computing capabilities, integrated software-defined hardware acceleration functions, and transmission rates up to 400GB / s, are widely used in supernode computing devices to achieve high-speed network interconnection, storage acceleration, and security protection. Supernode computing devices can also be supernode servers.

[0016] Each tray integrates multiple network ports, including ports corresponding to the BMC, ports corresponding to regular network cards, and ports corresponding to BF series network cards. Regular network cards do not include the BMC, while BF series network cards do.

[0017] During the delivery, operation, maintenance, and after-sales service of supernode computing devices, it is usually necessary to use the MAC addresses of all network ports in the supernode computing device for device identification, network access control, fault location, and asset management. The MAC address is the unique hardware identifier of the network device, and the MAC address of the network port is important information for users to configure the network and manage the device, which directly affects the deployment efficiency and operation and maintenance convenience of the supernode computing device.

[0018] In related technologies, the MAC addresses of all network ports in a supernode computing device are obtained in two ways: The first is a manual query method: Maintenance personnel log into the management interface of each tray and manually query the MAC address of each network port within the tray. For ports corresponding to ordinary network cards, command-line tools such as ipconfig and ipmitool can be used for assistance. For ports corresponding to BMCs, relevant commands can be executed after connecting via Basic Input Output System (BIOS) settings or Secure Shell (SSH) protocol. After the query is completed, the results are manually recorded and compiled for user use. The second method is a semi-automatic query method: A simple script program is written to interface with the tray's basic management interface to automatically obtain the MAC addresses of ports corresponding to ordinary network cards and ports corresponding to BMCs within the tray. However, this script only works for ports corresponding to ordinary network cards and BMCs; it cannot recognize the hardware interfaces and communication protocols of BF series network cards and therefore cannot obtain the MAC addresses of ports corresponding to BF series network cards. Manual querying of the MAC addresses of ports corresponding to BF series network cards is still required.

[0019] The two methods for obtaining the MAC addresses of all network ports in a supernode computing device in related technologies have the following drawbacks: 1. Extremely low efficiency: Manual or semi-automated queries require operating on each network port in each tray one by one. Supernode computing devices typically contain multiple Compute Trays and Switch Trays, and each tray contains multiple network ports. The query process is cumbersome and time-consuming, especially in batch delivery scenarios, and cannot meet the delivery time requirements.

[0020] 2. Poor accuracy: Manual queries are prone to omissions, misrecording, and input errors. Semi-automated queries cannot cover BF series network cards and require manual supplementation, which further increases the probability of errors. This results in inaccurate MAC address information provided to customers, affecting their subsequent operation and maintenance work.

[0021] 3. Insufficient compatibility: The semi-automated query solution can only be adapted to ordinary network cards and the network ports corresponding to BMC. It cannot identify the hardware architecture and communication protocol of BF series network cards, and cannot obtain the MAC address of the network port corresponding to BF series network cards.

[0022] 4. High operation and maintenance costs: Manual queries require a large number of operation and maintenance personnel, increasing labor costs; at the same time, errors in the query results need to be repeatedly checked and corrected, further increasing operation and maintenance costs and communication costs, and affecting customer experience.

[0023] 5. Poor scalability: The semi-automated query solutions in related technologies are designed for specific models of Compute Tray and Switch Tray. If the Compute Tray or Switch Tray undergoes iterative upgrades, the tray model changes, or other types of high-end network cards are added, the solution needs to be redeveloped and debugged, resulting in high adaptation costs and an inability to quickly respond to product upgrade needs.

[0024] To address the aforementioned technical issues, this application provides a network port address acquisition system, which is a component of a target supernode computing device for which the MAC addresses of all network ports to be acquired is obtained. This system is used to acquire the MAC addresses of all network ports in the target supernode computing device. Figure 1 This is a schematic diagram of the network interface address acquisition system provided in the embodiments of this application, as shown below. Figure 1 As shown, the network address acquisition system includes multiple computing trays, multiple switching trays, and a main controller. Each computing tray includes a first controller, multiple first network interface cards (NICs), and multiple second NICs. Each switching tray includes a second controller, multiple third NICs, and multiple fourth NICs. The first and third NICs do not have a third controller, while the second and fourth NICs do. The controller is a BMC, the first and third NICs are standard NICs, and the second and fourth NICs are BF series NICs.

[0025] For any computing tray, the first controller in the computing tray is used to obtain the first physical address and first location information of the network port corresponding to each first network card in the computing tray; obtain the second physical address and second location information of the network port corresponding to each second network card in the computing tray through a virtual channel with each second network card in the computing tray; and send the obtained information to the main controller.

[0026] Specifically, for any given first network interface card (NIC), the first physical address of the network port corresponding to that NIC is the MAC address of that network port. The first location information for any network port corresponding to that NIC includes the Field Replaceable Unit (FRU) serial number of the NIC, the Peripheral Component Interconnect Express (PCIe) slot number of the NIC, the port number (or port serial number) of the port, and the tray identifier of the computing tray where the NIC is located.

[0027] It is understood that, for any second network interface card (NIC), the second physical address of the network port corresponding to the second NIC is the MAC address of the network port corresponding to the second NIC. The second location information of any network port corresponding to the second NIC includes the FRU serial number of the second NIC, the PCIe slot number of the second NIC, the network port number, and the tray identifier of the compute tray where the second NIC is located, etc.

[0028] After the first controller in the computing tray obtains the first physical address and first location information of the network port corresponding to each first network card in the computing tray, and the second physical address and second location information of the network port corresponding to each second network card, it sends the first physical address and first location information of the network port corresponding to each first network card in the computing tray, and the second physical address and second location information of the network port corresponding to each second network card to the main controller.

[0029] The virtual channel is a network-based Universal Serial Bus (USB Over LAN) channel.

[0030] For any given switch tray, the second controller in the switch tray is used to obtain the third physical address and third location information of the network port corresponding to each third network card in the switch tray through a virtual channel with each third network card in the switch tray; obtain the fourth physical address and fourth location information of the network port corresponding to each fourth network card in the switch tray through a virtual channel with each fourth network card in the switch tray; and send the obtained information to the main controller.

[0031] It is understandable that, for any third network interface card (NIC), the third physical address of the network port corresponding to that NIC is the MAC address of that network port. The third location information of any network port corresponding to that NIC includes the NIC's FRU serial number, the NIC's PCIe slot number, the network port number, and the tray identifier of the switch tray where the NIC is located.

[0032] For any fourth network interface card (NIC), the fourth physical address of the network port corresponding to the fourth NIC is the MAC address of the network port corresponding to the fourth NIC. The fourth location information of any network port corresponding to the fourth NIC includes the FRU serial number of the fourth NIC, the PCIe slot number of the fourth NIC, the network port number of the network port, and the tray identifier of the switch tray where the fourth NIC is located.

[0033] After the second controller in the switching tray obtains the third physical address and third location information of the network port corresponding to each third network card in the switching tray, and the fourth physical address and fourth location information of the network port corresponding to each fourth network card, it sends the third physical address and third location information of the network port corresponding to each third network card in the switching tray, and the fourth physical address and fourth location information of the network port corresponding to each fourth network card to the main controller.

[0034] The main controller is used to aggregate the received information and generate a mapping table between the location information and physical addresses of multiple network ports for users to view.

[0035] The network port address acquisition system provided in this application solves the problem of not being able to obtain the MAC address of the network port corresponding to the BF series network card in related technologies. It achieves automatic identification and acquisition of the MAC address of the network port corresponding to the BF series network card, meeting users' needs for obtaining the MAC address of the network port corresponding to the BF series network card. It also solves the problems of low query efficiency and poor accuracy in related technologies, realizing the automatic collection and reporting of the MAC address of all network ports in the switch tray and compute tray, reducing manual intervention and improving query efficiency and accuracy. Furthermore, it solves the problem of insufficient compatibility in related technologies, being able to adapt to different models of switch trays and compute trays, while being compatible with ordinary network cards and BF series network cards, improving versatility and adaptability. Through the design of an extensible interface architecture, it facilitates subsequent product iterations; when adding new network card models, there is no need for large-scale modifications to the solution, reducing adaptation costs. Finally, it achieves automatic MAC address processing and export, generating a format that meets user needs and providing it directly to users, reducing manual processing steps and improving delivery efficiency and user experience.

[0036] This application provides a network port address acquisition system, which is a component of a target supernode computing device for which the MAC addresses of all network ports to be acquired is obtained. Figure 2 This is a schematic diagram of the network interface address acquisition system provided in the embodiments of this application, as shown below. Figure 2As shown, the network address acquisition system includes: multiple computing trays, multiple switching trays, a management switch, and a main controller. Each computing tray includes a processor, a first controller, multiple first network interface cards (NICs), and multiple second NICs. Each switching tray includes a switch, a second controller, multiple third NICs, and multiple fourth NICs. The first and third NICs do not have a third controller, while the second and fourth NICs do. The controller is a BMC (Browser Controller), the first and third NICs are ordinary NICs, and the second and fourth NICs are BF series NICs. The processor is a CPU. The BF series NICs are high-performance intelligent NICs that support independent MAC addresses, out-of-band management channels, and the Redfish / Platform Level Data Model (PLDM) protocol. Each computing tray includes a set of processors. The first controller in the computing tray serves as the out-of-band management core, responsible for collecting and reporting the MAC addresses of all network devices within the computing tray. The switches in the switching trays are responsible for forwarding service data within the switching trays. The second controller in the switching tray is responsible for collecting and reporting the MAC addresses of all network devices' corresponding network ports within the switching tray. The management switch (LAN switch), as the core aggregation node of the out-of-band management network, enables network connectivity between the BMCs of all computing trays and switching trays, constructing a unified out-of-band management plane and providing a secure, isolated, and reliable transmission channel for centralized MAC address collection. The main BMC, as the global centralized collection and aggregation node, completes unified reception, deduplication, association, and generation of a global MAC address table.

[0037] For descriptions of the first controller in the compute tray, the second controller in the exchange tray, and the main controller, please refer to [link to relevant documentation]. Figure 1 The embodiments shown are not described in detail here.

[0038] For any given compute tray, the first controller within that compute tray is specifically used for: For any second network interface card (NIC) in the computing tray, determine multiple first virtual channels between it and the third controller in the second NIC; based on the first target virtual channel among the multiple first virtual channels, obtain the second physical address and second location information of the service network port in the second NIC; based on the second target virtual channel among the multiple first virtual channels, obtain the second physical address and second location information of the network port corresponding to the third controller in the second NIC; based on the third target virtual channel among the multiple first virtual channels, obtain the second physical address and second location information of the virtual network port in the second NIC.

[0039] The network port address acquisition system provided in this application embodiment establishes multiple parallel USB Over LAN virtual channels to simultaneously collect MAC addresses of different types of network ports within the BF series smart network cards, significantly improving acquisition efficiency.

[0040] In some alternative implementations, for any exchange tray, the second controller in the exchange tray is specifically used for: For any fourth network interface card (NIC) in the switching tray, determine multiple second virtual channels between it and the third controller in the fourth NIC; based on the first target virtual channel among the multiple second virtual channels, obtain the fourth physical address and fourth location information of the service network port in the fourth NIC; based on the second target virtual channel among the multiple second virtual channels, obtain the fourth physical address and fourth location information of the network port corresponding to the third controller in the fourth NIC; based on the third target virtual channel among the multiple second virtual channels, obtain the fourth physical address and fourth location information of the virtual network port in the fourth NIC.

[0041] For the BF series network interface cards (NICs), each NIC contains a network interface card controller (BMC). The tray-mounted BMC obtains the MAC addresses and location information of all network ports within the BF series NIC via USB Over LAN. Specifically, multiple USB Over LAN virtual channels are established between the tray-mounted BMC and the BF series NIC BMC: Channel 1 reads the MAC address and location information of the service network port; Channel 2 reads the MAC address and location information of the network port corresponding to the third controller within the BF series NIC; and Channel 3 reads the MAC address and location information of the hardware-accelerated virtual port (virtual network port). This multi-channel parallel acquisition improves the speed by at least three times compared to single-channel serial reading.

[0042] The network port address acquisition system provided in this application embodiment establishes multiple parallel USB Over LAN virtual channels to simultaneously collect MAC addresses of different types of network ports within the BF series smart network cards, significantly improving acquisition efficiency.

[0043] In some optional implementations, for any computing tray, the manager in the processor of the computing tray is used to traverse multiple first network cards in the computing tray during the power-on self-test phase, obtain the first physical address and first location information of the network port corresponding to each first network card in the computing tray, and send the first physical address and first location information of the network port corresponding to each first network card in the computing tray to the first controller in the computing tray.

[0044] The local MAC address collection within the network tray includes: the BMC in each compute tray and switch tray acts as a local management node, actively collecting the MAC addresses of the network ports corresponding to all network devices within its tray. For ordinary network cards in the compute tray, the BIOS (manager) in the CPU sends the MAC address and definition information of the corresponding network port to the BMC during the Power-On Self-Test (POST). Specifically, during the POST phase, the BIOS traverses the PCIe network cards and Network Controller Sideband Interfaces (NSCIs) in the compute tray, obtaining the first physical address and first location information of the network port corresponding to each first network card in the compute tray. The first physical address and first location information are bound together to form a complete hardware identity record. This record is encrypted and securely pushed to the BMC of the compute tray. Understandably, the BMC of the compute tray decrypts the record to obtain the data.

[0045] The compute tray and switch tray each have a built-in local persistent flash cache partition used to store the physical addresses and location information of all network ports within the tray during the last boot of the target supernode compute device. During the current boot of the target supernode compute device, the BMC within the tray first obtains the physical addresses and location information of all network ports within the tray for this boot, and compares this information with the physical addresses and location information of all network ports within the tray during the previous boot in the local persistent flash cache partition. If there are no changes—meaning all network card hardware has not been plugged in or unplugged, or the firmware has not been replaced—the BMC directly reuses the historical cached data and does not report it again. If there are changes, the updated data is reported to the main controller, achieving incremental reporting.

[0046] The network port address acquisition system provided in this application embodiment enables efficient, accurate, and secure acquisition of the MAC address of the network port corresponding to a regular network card.

[0047] In some optional implementations, for any computing tray, the first controller in the computing tray is further configured to obtain the fifth physical address and fifth location information of the network port corresponding to the first controller.

[0048] It is understood that the fifth location information of any network port of the first controller includes the identifier of the first controller, the network port number of the network port, and the tray identifier of the computing tray where the first controller is located.

[0049] After obtaining the first physical address and first location information of the network port corresponding to each first network card in the computing tray, the second physical address and second location information of the network port corresponding to each second network card, and the fifth physical address and fifth location information of the network port corresponding to the first controller, the first controller in the computing tray sends the first physical address and first location information of the network port corresponding to each first network card in the computing tray, the second physical address and second location information of the network port corresponding to each second network card, and the fifth physical address and fifth location information of the network port corresponding to the first controller to the main controller.

[0050] For any given switching tray, the second controller in that switching tray is also used to obtain the sixth physical address and sixth location information of the network port corresponding to the second controller.

[0051] It is understood that the sixth location information of any network port of the second controller includes the identifier of the second controller, the network port number of the network port, and the tray identifier of the switching tray where the second controller is located.

[0052] After the second controller in the switching tray obtains the third physical address and third location information of the network port corresponding to each third network card in the switching tray, the fourth physical address and fourth location information of the network port corresponding to each fourth network card, and the sixth physical address and sixth location information of the network port corresponding to the second controller, it sends the third physical address and third location information of the network port corresponding to each third network card in the switching tray, the fourth physical address and fourth location information of the network port corresponding to each fourth network card, and the sixth physical address and sixth location information of the network port corresponding to the second controller to the main controller.

[0053] In some optional implementations, for any computing tray, the first controller in the computing tray is specifically used to: send the first physical address and first location information of the network port corresponding to each first network card in the computing tray and the second physical address and second location information of the network port corresponding to each second network card to the main controller through the management switch.

[0054] It is understood that, for any computing tray, the first controller in the computing tray is specifically used to: send the first physical address and first location information of the network port corresponding to each first network card in the computing tray, the second physical address and second location information of the network port corresponding to each second network card, and the fifth physical address and fifth location information of the network port corresponding to the first controller to the main controller through the management switch.

[0055] For any given switching tray, the second controller in that switching tray is specifically used to: send the third physical address and third location information of the network port corresponding to each third network card in that switching tray, and the fourth physical address and fourth location information of the network port corresponding to each fourth network card, to the main controller through the management switch.

[0056] It is understood that, for any given switching tray, the second controller in that switching tray is specifically used to: send the third physical address and third location information of the network port corresponding to each third network card in that switching tray, the fourth physical address and fourth location information of the network port corresponding to each fourth network card, and the sixth physical address and sixth location information of the network port corresponding to the second controller to the main controller through the management switch.

[0057] The network port address acquisition system provided in this application embodiment constructs a unified out-of-band reporting channel through a management switch, realizing the centralized aggregation of MAC addresses of various network ports in all trays (compute tray and switching tray), ensuring the uniformity, security and manageability of data reporting.

[0058] In some alternative implementations, the management switch is used for: The system receives the first physical address and first location information of the network port corresponding to each first network card in the computing tray, and the second physical address and second location information of the network port corresponding to each second network card, sent by the first controller in each computing tray.

[0059] Receive the fifth physical address and fifth location information of the network port corresponding to the first controller sent by the first controller in each computing tray.

[0060] Receive the third physical address and third location information of the network port corresponding to each third network card in the switching tray, and the fourth physical address and fourth location information of the network port corresponding to each fourth network card, sent by the second controller in each switching tray.

[0061] Receive the sixth physical address and sixth location information of the network port corresponding to the second controller sent by the second controller in each switching tray.

[0062] If a preset number of messages from the tray are received simultaneously, the sending order of the messages from the tray will be determined according to the concurrent reception capacity of the main controller, where the preset number is greater than the concurrent reception capacity.

[0063] After obtaining the physical addresses and location information corresponding to all network ports within the tray, the tray sends these information to the management switch, which then forwards it to the main controller. To avoid congestion of the main controller's computing power caused by concurrent reporting, this embodiment implements traffic shaping control: when multiple trays report synchronously, a message queue buffer is enabled, queuing is performed according to the computing tray and the switching tray, and reporting is conducted according to the number of concurrent interfaces of the main controller.

[0064] According to the sending order of the information sent by the preset number of trays, the information sent by the preset number of trays is sent to the main controller.

[0065] The network port address acquisition system provided in this application embodiment uses traffic peak shaping control to avoid congestion of the main controller's computing power caused by concurrent reporting from multiple trays, ensuring stable operation of the system and no data loss in high-load scenarios.

[0066] In some alternative implementations, for any computing tray, the first controller in the computing tray is specifically used for: For any first network interface card (NIC) in the computing tray, if the first physical address of any port in the first NIC is invalid, the first physical address and first location information of that port are filtered out. For any second NIC in the computing tray, if the second physical address of any port in the second NIC is invalid, the second physical address and second location information of that port are filtered out. The filtered first physical addresses and first location information of the ports corresponding to the multiple first NICs in the computing tray, and the second physical addresses and second location information of the ports corresponding to the multiple second NICs in the computing tray are sent to the main controller.

[0067] If the fifth physical address of any network port corresponding to the first controller is invalid, the fifth physical address and the fifth location information of that network port will be filtered out.

[0068] It is understandable that, for any given exchange tray, the second controller within that exchange tray is specifically used for: For any third network interface card (NIC) in the switching tray, if the third physical address of any port in the third NIC is invalid, filter out the third physical address and third location information of that port; for any fourth NIC in the switching tray, if the fourth physical address of any port in the fourth NIC is invalid, filter out the fourth physical address and fourth location information of that port; send the filtered third physical addresses and third location information of the ports corresponding to the multiple third NICs in the switching tray and the fourth physical addresses and fourth location information of the ports corresponding to the multiple fourth NICs to the main controller.

[0069] If the sixth physical address of any network port corresponding to the second controller is invalid, the sixth physical address and the sixth location information of that network port will be filtered out.

[0070] Before uploading data, BMC performs Organizationally Unique Identifier (OUI) verification on the physical address: specifically, checking if the first three bytes of the physical address fall within the range of legitimate vendor codes, thus filtering out MAC addresses of unknown origin or forged information. It also performs address length verification on the physical address to confirm its validity, filtering out addresses with abnormal lengths due to data transmission errors. Furthermore, it automatically identifies and discards addresses consisting entirely of zeros, all-F broadcast addresses, and other obviously invalid physical addresses.

[0071] It is understandable that invalid physical addresses are physical addresses that have not passed the organization's unique identifier verification, physical addresses that have not passed the address length verification, or physical addresses consisting entirely of zeros, or all-F broadcast addresses, or physical addresses in other obviously invalid formats.

[0072] The network port address acquisition system provided in this application performs three legality checks on the MAC address (OUI check, length check, and illegal address filtering) before reporting, filtering out dirty data from the source and ensuring that the MAC address list entering the main controller is clean, accurate, and usable.

[0073] In some alternative implementations, for any computing tray, the first controller in the computing tray is further configured to: During the process of obtaining the second physical address and second location information of the network port corresponding to each second network card in the computing tray through the virtual channel between the second network card and each second network card in the computing tray, a heartbeat packet is sent to each second network card in the computing tray through the virtual channel between the second network card and each second network card in the computing tray at preset time intervals.

[0074] If no response packet is received from the second network interface card (NIC) in the computing tray within a preset time after the heartbeat packet is sent, it is determined that the transmission link between the first controller in the computing tray and the second NIC is interrupted, and the network port number of the NIC corresponding to the obtained second NIC is recorded.

[0075] If the transmission link between the first controller in the computing tray and the second network card is restored, the second physical address and second location information of the untransmitted network port will continue to be obtained from the second network card based on the network port number of the network port corresponding to the second network card that has been recorded.

[0076] The preset time period and preset duration are set by technical personnel and are not specifically limited here.

[0077] It is understandable that, for any given exchange tray, the second controller within that exchange tray is also used for: During the process of obtaining the fourth physical address and fourth location information of the network port corresponding to each fourth network card in the switching tray through the virtual channel between the switching tray and each fourth network card in the switching tray, a heartbeat packet is sent to each fourth network card in the switching tray through the virtual channel at preset time intervals. If no reply packet in response to the heartbeat packet is received from any fourth network card in the switching tray within a preset time after the heartbeat packet is sent, it is determined that the transmission link between the second controller in the switching tray and the fourth network card is interrupted, and the network port number of the network port corresponding to the fourth network card that has been obtained is recorded. When the transmission link between the second controller in the switching tray and the fourth network card is restored, the fourth physical address and fourth location information of the untransmitted network port are obtained from the fourth network card based on the recorded network port number of the network port corresponding to the fourth network card that has been obtained.

[0078] The design incorporates link heartbeat and retransmission fault tolerance: The tray-mounted BMC periodically sends heartbeat packets to detect the link status of the BF series network cards. If the transmission is interrupted (network card reset, USB link momentary interruption), it automatically records the port numbers (network ports) that have been collected. After the link is restored, it only retransmits the data of the uncollected ports, without having to completely reconnect the full MAC address and location information of the corresponding network port of the BF series network card.

[0079] Design channel access isolation: The virtual channel used for transmitting data to the network port corresponding to the BF series network card adds certificate authentication. Only the local BMC in the corresponding tray has the right to access the BMC of the BF series network card, which prevents the business side operating system from reading the underlying management identifier of the smart network card without authorization and improves the security of network asset information.

[0080] The network port address acquisition system provided in this application embodiment ensures high reliability and high efficiency in the MAC address acquisition process of the network port corresponding to the BF series network card through heartbeat detection and breakpoint resume mechanism.

[0081] In some optional implementations, for any computing tray, the first controller in the computing tray is specifically used to: perform signature processing on the first physical address and first location information of the network ports corresponding to the multiple first network cards in the computing tray and the second physical address and second location information of the network ports corresponding to the multiple second network cards to obtain signed first network port data; encrypt the signed first network port data to obtain encrypted first network port data; generate a first message based on the encrypted first network port data; and send the first message to the main controller.

[0082] For any given switching tray, the second controller in that switching tray is specifically used to: perform signature processing on the third physical address and third location information of the network ports corresponding to multiple third network cards in the switching tray and the fourth physical address and fourth location information of the network ports corresponding to multiple fourth network cards to obtain signed second network port data; encrypt the signed second network port data to obtain encrypted second network port data; generate a second message based on the encrypted second network port data; and send the second message to the main controller.

[0083] In some optional implementations, the first message includes a first message timestamp; the second message includes a second message timestamp; the main controller is specifically used for: Based on the timestamp of the first message in the first message, determine whether the first message is an overdue message; if the first message is not an overdue message, decrypt the encrypted first network interface data in the first message to obtain the decrypted first network interface data; verify the signature in the decrypted first network interface data; if the signature verification in the decrypted first network interface data passes, determine the first physical address and first location information of the network interface corresponding to the multiple first network cards and the second physical address and second location information of the network interface corresponding to the multiple second network cards in the decrypted first network interface data as data to be summarized.

[0084] It is understandable that the data from the first network port also includes the fifth physical address and fifth location information of the network port corresponding to the first controller. The fifth physical address and fifth location information of the network port corresponding to the first controller are also data to be summarized.

[0085] Based on the timestamp of the second message, determine whether the second message is an overdue message; if the second message is not an overdue message, decrypt the encrypted second network interface data in the second message to obtain the decrypted second network interface data; verify the signature in the decrypted second network interface data; if the signature verification in the decrypted second network interface data passes, determine the third physical address and third location information of the network interface corresponding to the multiple third network cards and the fourth physical address and fourth location information of the network interface corresponding to the multiple fourth network cards in the decrypted second network interface data as data to be summarized.

[0086] Understandably, the second network port data also includes the sixth physical address and sixth location information of the network port corresponding to the second controller. The sixth physical address and sixth location information of the network port corresponding to the second controller are also data to be summarized.

[0087] Based on the data to be aggregated, a mapping table between the location information and physical address of multiple network ports is generated.

[0088] In some alternative implementations, the main controller is specifically used for: Based on the data to be aggregated, determine the location information and physical address of the network port in each tray.

[0089] Based on the location information and physical address of the network port in each tray, a mapping table between the location information and physical address of the network port in each tray is generated.

[0090] The tray includes a computing tray and a switching tray. The mapping table between the location information of multiple network ports and their physical addresses includes a mapping table between the location information of the network ports in each tray and their physical addresses.

[0091] In some alternative implementations, the main controller is also used for: If the first message is a timeout message, then discard the first message.

[0092] If the second message is a timeout message, then the second message is discarded.

[0093] In some alternative implementations, the main controller is specifically used for: Get the current timestamp of the main controller.

[0094] If the difference between the timestamp of the first message and the current timestamp in the first message is greater than a preset difference, then the first message is determined to be an overdue message.

[0095] If the difference between the timestamp of the first message and the current timestamp in the first message is not greater than a preset difference, then the first message is determined not to be an overdue message.

[0096] If the difference between the timestamp of the second message and the current timestamp in the second message is greater than a preset difference, then the second message is determined to be an overdue message.

[0097] If the difference between the timestamp of the second message and the current timestamp in the second message is not greater than a preset difference, then the second message is determined not to be an overdue message.

[0098] It should be noted that all tray-level BMCs, through an out-of-band management network built via the management switch, uniformly report the tray-level MAC address list to the primary BMC. After receiving the lists reported by all trays, the primary BMC removes potentially duplicate addresses, associates them with the tray identifier and device type, and constructs a global MAC address table for the target supernode computing device—a mapping table between the location information of multiple network ports and their physical addresses. Finally, the entire MAC address table of the target supernode computing device is sent to all tray-level BMCs, allowing maintenance personnel to obtain the entire MAC address table of the target supernode computing device through any BMC. In addition, a local data management mechanism is added to solve the asset traceability problem after hardware changes: After each full MAC address collection, the tray-based BMC automatically generates a timestamped local snapshot, recording the MAC addresses of all network devices in the current tray; it supports multi-version snapshot storage, automatically generating a new version snapshot after hardware plugging / unplugging or network card replacement. Maintenance personnel can trace the historical MAC address list in the local BMC on the tray for fault tracing and asset change auditing; snapshot read / write permissions are isolated, only the out-of-band management channel can read the snapshot, and the host operating system cannot tamper with the local MAC address collection records, preventing system-side tampering with asset identifiers. The operation of the main BMC can be broken down into the following six steps: Step 1: Out-of-Band Message Reception and Security Verification: The main BMC continuously monitors the dedicated reporting port of the management switch's intra-band network segment. All local tray BMCs encrypt data using Transport Layer Security (TLS) and upload MAC address list messages. The message header carries the tray's unique hardware serial number (SerialNumber, SN), BMC firmware version, and message timestamp. The main BMC performs the first layer of verification: verifying the message's digital signature and discarding forged, tampered, or timed-out messages; verifying the message format and filtering abnormal reported data with missing fields or incorrect structures, and separately recording abnormal tray logs for operational alarms.

[0099] Step 2: Structured Parsing of Multi-Panel Reported Data: The main BMC parses the standardized MAC address structure uploaded by each tray in batches, extracting five core fields: tray identifier, device category (ordinary network card / BF series network card / BMC / switch port / Host Bus Adapter (HBA) card), hardware slot number, physical port number (network port number), MAC address, device SN, and snapshot timestamp. An independent temporary data table is created based on the tray identifier to isolate the original data from different trays and prevent cross-contamination of data from multiple trays; simultaneously, the source channel of each data entry (BIOS synchronization / USB Over LAN) is marked for subsequent anomaly tracing.

[0100] Step 3: Global MAC Data Cleaning and Duplicate Removal: Single-pallet deduplication: For duplicate MAC addresses reported repeatedly by the same port on the same pallet, only the latest timestamp record is retained, and duplicate old data is deleted. Global cross-pallet deduplication across the entire rack: Traverse all pallet data and compare MAC addresses. If duplicate MAC addresses are found across pallets (due to hardware failure or firmware bug), mark the conflicting MAC addresses, generate alarm logs synchronously, and push them to the maintenance interface. Do not delete them directly; retain two conflicting records and mark the corresponding pallets for manual review. Dirty data cleaning: Filter out abnormal MAC addresses containing all zeros, all Fs, invalid lengths, or invalid OUI vendor fields. Store them separately in an abnormal data table, and add a note to the global MAC master table for abnormal entries. Do not mix them into the normal asset list.

[0101] Step 4: Multi-dimensional Device Information Association and Integration: Basic Binding: Bind MAC addresses with tray identifiers, device types, slots, and port numbers to form basic asset entries. Extended Dimension Association: Retrieve the hardware ledger of the main BMC's local storage rack and automatically bind the tray's factory serial number, rack number, chassis FRU information, and device manufacturing date. Business Attribute Labeling: Differentiate between management MAC addresses (MAC addresses of the network ports corresponding to the BMC), business traffic MAC addresses (such as the MAC addresses of network interface cards (NICs) and storage MAC addresses (such as the MAC addresses of the network ports corresponding to HBA storage NICs), and add category tags to facilitate customer filtering and export.

[0102] Step 5: Standardized Construction and Partitioned Storage of the Global MAC Address Master Table: Format Standardization: Two standard formats are generated: ① Machine-readable JSON structured table (for integration with customer automated asset platforms); ② Visualized table (CSV, for manual delivery). Partitioned Storage: The main BMC is divided into two storage areas: High-speed memory partition: caches the latest global MAC address table for fast retrieval by each tray BMC; Persistent Flash partition: permanently stores the complete global table with timestamps, supporting data retention even in the event of power failure, and retaining historical versions of the master table. Index Optimization: Triple retrieval indexes are built based on MAC address, tray identifier, and device SN, significantly improving the speed of subsequent queries and filtering.

[0103] Step 6: Global Table Integrity Verification and Status Marking: After the construction is completed, perform integrity verification: count the total number of trays in the rack, the total number of reported network ports for each tray, and the total number of valid MAC address entries globally. If the number of reported network ports does not match the hardware configuration ledger of the entire rack, mark it as "incomplete collection". The operation and maintenance personnel can log in to any BMC to view the list of missing trays and actively trigger re-collection.

[0104] The embodiments of this application provide a method for obtaining a network interface address, which can be applied to the network interface address acquisition system in any of the above embodiments. Figure 3This is a flowchart illustrating the network interface address acquisition method provided in an embodiment of this application, as shown below. Figure 3 As shown, the method for obtaining the network port address includes the following steps: Step S301: For any computing tray, based on the first controller in the computing tray, obtain the first physical address and first location information of the network port corresponding to each first network card in the computing tray; obtain the second physical address and second location information of the network port corresponding to each second network card in the computing tray through the virtual channel between the first controller and each second network card in the computing tray; and send the obtained information to the main controller.

[0105] Step S302: For any switching tray, based on the second controller in the switching tray, obtain the third physical address and third location information of the network port corresponding to each third network card in the switching tray through the virtual channel between the controller and each third network card in the switching tray; obtain the fourth physical address and fourth location information of the network port corresponding to each fourth network card in the switching tray through the virtual channel between the controller and each fourth network card in the switching tray; and send the obtained information to the main controller.

[0106] Step S303: Based on the main controller, summarize the received information and generate a mapping table between the location information and physical address of multiple network ports.

[0107] For a description of the features in the embodiment corresponding to the network port address acquisition method, please refer to the relevant description of the embodiment corresponding to the network port address acquisition system, which will not be repeated here.

[0108] The network port address acquisition method provided in this application embodiment achieves unified and automatic collection of MAC addresses for all network ports in the Compute Tray and Switch Tray, eliminating the need for manual port-by-port queries and significantly reducing collection time, making it particularly suitable for batch delivery scenarios. Standardized delivery enhances user experience by automatically generating a global MAC address table in a user-standard format, supporting one-click export and direct delivery without manual organization, greatly improving delivery quality and user satisfaction, and enhancing product competitiveness.

[0109] A unified and visible global MAC address table allows for lookup of any BMC, facilitating operation and maintenance and full lifecycle management, improving the automation level of data center operation and maintenance, and greatly enhancing the efficiency of users in solving problems or performing maintenance upgrades.

[0110] The embodiments of this application provide a method for obtaining a network interface address, which can be applied to the network interface address acquisition system in any of the above embodiments. Figure 4 This is a flowchart illustrating the network interface address acquisition method provided in an embodiment of this application, as shown below. Figure 4 As shown, the method for obtaining the network port address includes the following steps: When the system is powered on, the BMC of each tray initializes and collects the MAC address and location information of all network ports of this tray.

[0111] Specifically, Figure 5 This is a schematic diagram illustrating how the BMC of each tray collects the MAC addresses and location information of all network ports on the tray, as provided in the embodiments of this application. Figure 5 As shown, for ordinary network cards in the compute tray, the BIOS synchronously transmits the MAC address and location information of the corresponding network port to the corresponding BMC in the tray during the POST phase. For BF series network cards in the compute tray, the BMC in the compute tray accesses the internal BMC of the BF series network card through the USB Over LAN channel to obtain the MAC addresses and location information of all network ports corresponding to the BF series network card.

[0112] For standard network interface cards (NICs) in the switch tray, the BMC (Browser Control Center) in the switch tray accesses the NIC via the USB Over LAN channel to obtain the MAC addresses and location information of all ports corresponding to the NIC. For BF series NICs in the switch tray, the BMC in the switch tray accesses the internal BMC of the BF series NIC via the USB Over LAN channel to obtain the MAC addresses and location information of all ports corresponding to the BF series NIC.

[0113] Each tray BMC reports the MAC addresses and location information of all network ports on its tray to the main BMC.

[0114] Specifically, the MAC addresses of all network ports in each tray are aggregated and reported uniformly through the management switch.

[0115] The main BMC categorizes and associates data with devices, generates a global MAC address master table, and synchronizes the global MAC address master table to all trays. Any BMC can provide queries, thus completing the unified management of MAC addresses across the entire system.

[0116] Specifically, Figure 6 This is a schematic diagram illustrating the mapping relationship table between the location information and physical addresses of multiple global network interfaces provided in an embodiment of this application. Figure 6 As shown, after the main BMC receives the MAC addresses and location information of all network ports in its own tray from each tray BMC, it performs the following: automatic removal of duplicate MAC addresses, labeling of tray identifiers with devices, regularization of network port order, and standardization of format processing, generating a mapping table between the location information and physical addresses of multiple network ports globally.

[0117] Operations and maintenance personnel can query and export the mapping table between the location information and physical address of multiple network ports globally through any BMC, achieving one-stop query, global visibility, and unified delivery.

[0118] The network port address acquisition method provided in this application embodiment can be applied to the following scenarios: (1) Batch delivery scenario of rack-mount equipment: Standardized delivery of factory data: Before the rack-mount equipment leaves the factory, maintenance personnel can export the MAC address table of the global network ports through any tray BMC and deliver it directly to the customer as the equipment's factory asset data. This eliminates the need for manual recording of each unit and solves the problems of omissions and errors in traditional manual registration. Batch network pre-planning: Before the customer's data center is deployed, the switch port binding, Dynamic Host Configuration Protocol (DHCP) static address allocation, and firewall whitelist configuration can be completed in advance based on the MAC address table of the global network ports. The equipment can go online directly after power-on, which greatly shortens the data center deployment cycle. Equipment differentiation and identification: The MAC address table distinguishes the MAC addresses of the network ports corresponding to different equipment types. Customers can quickly divide the management network, business network, and storage acceleration network into three independent network plans.

[0119] (2) Daily Data Center Operation and Maintenance Scenarios: Remote Equipment Location: When a network failure occurs in the data center, the global MAC address table can be retrieved by checking the MAC address recorded in the logs to quickly locate the tray number, slot, and physical port to which the MAC address belongs. This eliminates the need to log in to each server individually for troubleshooting, shortening the fault location time. Hardware Expansion and Change Management: After adding a network card or replacing a BF series smart network card, the global MAC address table can be retrieved again to compare the old and new snapshots, quickly identify hardware change nodes, and synchronously update the data center asset ledger. Remote Out-of-Band Management Login: Based on the BMC management MAC address table, data can be entered in batches into the data center operation and maintenance management platform to achieve batch management of all tray BMCs, enabling unified remote power on / off, hardware monitoring, and firmware upgrades.

[0120] (3) Network security access and boundary protection scenarios: Network access control: Data center access switches are configured with MAC access policies, and the whitelist of legitimate devices is completed based on the global MAC address table. Unregistered MAC addresses are prohibited from accessing the business network, preventing unauthorized devices from accessing the data center intranet. Traffic anomaly audit: When the network traffic monitoring system captures abnormal packet MAC addresses, it searches the global MAC address table to confirm the device ownership, quickly determines whether it is a legitimate business device, and promptly intercepts intranet attacks and lateral virus propagation. Smart NIC access control: Differentiate between BF series smart NICs and ordinary business NICs, and configure independent security policies for high-speed acceleration NICs to isolate storage acceleration traffic from ordinary business traffic.

[0121] (4) Storage and high-performance business exclusive use: Distributed storage networking planning: The MAC address of the network port corresponding to the HBA storage network card is exported separately for distributed storage cluster node networking and storage multi-path binding configuration.

[0122] (5) After-sales fault reporting and hardware maintenance scenarios: Remote after-sales diagnosis: When customers report network outages or network card failures, they can quickly locate the corresponding tray and hardware model by providing the MAC address. After-sales engineers can prepare the matching spare parts in advance, shortening the on-site maintenance time. Batch firmware upgrade matching: Based on the network card model corresponding to the MAC address, the corresponding firmware upgrade package is distributed in batches to accurately match the hardware and avoid firmware upgrade incompatibility issues.

[0123] The network port address acquisition method provided in this application embodiment realizes the automatic collection and reporting of MAC addresses of all network ports in the switch tray and the compute tray. Therefore, it can solve the problem of low efficiency in the related technology of acquiring MAC addresses of all network ports in the switch tray and the compute tray, and achieve the technical effect of improving the efficiency of acquiring MAC addresses of network ports in the switch tray and the compute tray.

[0124] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method.

[0125] Embodiments of this application also provide an electronic device, such as... Figure 7 As shown, it includes a processor 701 and a memory 702, in which a computer program is stored. The processor 701 is configured to run the computer program to perform the steps in any of the above-described embodiments of the network port address acquisition method.

[0126] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above embodiments of the network port address acquisition method when it is run.

[0127] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.

[0128] The embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above embodiments of the network port address acquisition method.

[0129] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in any of the above-described network port address acquisition method embodiments.

[0130] Any of the components, modules, units, parts, methods, and operations described herein can be implemented using software, firmware, hardware (e.g., fixed logic circuitry), manual processing, or any combination thereof. Alternatively or additionally, any functionality described herein can be executed at least in part by one or more hardware logic components, such as, but not limited to, a central processing unit (CPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), an application-specific standard product (ASSP), a system-on-a-chip (SoC), a complex programmable logic device (CPLD), a microprocessor (MCU), etc. The terms "system," "computing device," or "apparatus" as used herein encompass various means, devices, and machines for processing data, including, for example, one or more programmable processors, computers, SoCs, or combinations thereof. The apparatus may also include code that creates an execution environment for the computer program in question, such as code constituting processor firmware, a protocol stack, a database management system, an operating system, a cross-platform runtime environment, a virtual machine, or one or more combinations thereof. The aforementioned computer program (also known as a program, software, software application, app, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and can be deployed in any form, including as a standalone program or as a module, component, subroutine, object, or other unit suitable for a computing environment.

[0131] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0132] The above provides a detailed description of the network port address acquisition system and method provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only intended to help understand the method and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this application.

Claims

1. A network port address acquisition system, characterized in that, It includes multiple computing trays, multiple switching trays, and a main controller; the computing tray includes a first controller, multiple first network interface cards (NICs), and multiple second NICs; the switching tray includes a second controller, multiple third NICs, and multiple fourth NICs; the first NICs and the third NICs do not have a third controller, while the second NICs and the fourth NICs have a third controller. For any computing tray, the first controller in the computing tray is used to obtain the first physical address and first location information of the network port corresponding to each first network card in the computing tray; obtain the second physical address and second location information of the network port corresponding to each second network card in the computing tray through a virtual channel with each second network card in the computing tray; and send the obtained information to the main controller. For any given switch tray, the second controller in the switch tray is used to obtain the third physical address and third location information of the network port corresponding to each third network card in the switch tray through a virtual channel with each third network card in the switch tray; obtain the fourth physical address and fourth location information of the network port corresponding to each fourth network card in the switch tray through a virtual channel with each fourth network card in the switch tray; and send the obtained information to the main controller. The main controller is used to summarize the received information and generate a mapping table between the location information and physical address of multiple network ports.

2. The system according to claim 1, characterized in that, For any given compute tray, the first controller within that compute tray is specifically used for: For any second network interface card in the computing tray, determine multiple first virtual channels between it and the third controller in the second network interface card; Based on the first target virtual channel among the multiple first virtual channels, obtain the second physical address and second location information of the service network port in the second network card; Based on the second target virtual channel among the multiple first virtual channels, obtain the second physical address and second location information of the network port corresponding to the third controller in the second network card; Based on the third target virtual channel among the multiple first virtual channels, the second physical address and second location information of the virtual network port in the second network card are obtained.

3. The system according to claim 1, characterized in that, For any given exchange tray, the second controller within that exchange tray is specifically used for: For any fourth network interface card in the switching tray, determine multiple second virtual channels between the fourth network interface card and the third controller in that fourth network interface card; Based on the first target virtual channel among the multiple second virtual channels, obtain the fourth physical address and fourth location information of the service network port in the fourth network card; Based on the second target virtual channel among the multiple second virtual channels, obtain the fourth physical address and fourth location information of the network port corresponding to the third controller in the fourth network card; Based on the third target virtual channel among the multiple second virtual channels, obtain the fourth physical address and fourth location information of the virtual network port in the fourth network card.

4. The system according to claim 1, characterized in that, The computing tray includes a processor; for any computing tray, the manager in the processor of the computing tray is used to traverse multiple first network cards in the computing tray during the power-on self-test phase, obtain the first physical address and first location information of the network port corresponding to each first network card in the computing tray, and send the first physical address and first location information of the network port corresponding to each first network card in the computing tray to the first controller in the computing tray.

5. The system according to claim 1, characterized in that, For any computing tray, the first controller in the computing tray is also used to obtain the fifth physical address and fifth location information of the network port corresponding to the first controller; For any given switching tray, the second controller in that switching tray is also used to obtain the sixth physical address and sixth location information of the network port corresponding to the second controller.

6. The system according to claim 1, characterized in that, The system also includes a management switch; For any computing tray, the first controller in the computing tray is specifically used to: send the first physical address and first location information of the network port corresponding to each first network card in the computing tray and the second physical address and second location information of the network port corresponding to each second network card to the main controller through the management switch; For any given switching tray, the second controller in that switching tray is specifically used to: send the third physical address and third location information of the network port corresponding to each third network card in that switching tray, and the fourth physical address and fourth location information of the network port corresponding to each fourth network card, to the main controller through the management switch.

7. The system according to claim 6, characterized in that, The management switch is used for: Receive the first physical address and first location information of the network port corresponding to each first network card in the computing tray and the second physical address and second location information of the network port corresponding to each second network card from the first controller in each computing tray; Receive the third physical address and third location information of the network port corresponding to each third network card in the switching tray and the fourth physical address and fourth location information of the network port corresponding to each fourth network card from the second controller in each of the switching trays; If a preset number of messages from trays are received simultaneously, the sending order of the messages from the preset number of trays is determined according to the concurrent reception capacity of the main controller, wherein the preset number is greater than the concurrent reception capacity. According to the sending order of the information sent by the preset number of trays, the information sent by the preset number of trays is sent to the main controller.

8. The system according to claim 1, characterized in that, For any given compute tray, the first controller within that compute tray is specifically used for: For any first network interface card (NIC) in the computing tray, if the first physical address of any port in the first NIC is invalid, the first physical address and first location information of that port are filtered out; for any second NIC in the computing tray, if the second physical address of any port in the second NIC is invalid, the second physical address and second location information of that port are filtered out; the filtered first physical addresses and first location information of the ports corresponding to the multiple first NICs in the computing tray and the second physical addresses and second location information of the ports corresponding to the multiple second NICs in the computing tray are sent to the main controller.

9. The system according to claim 1, characterized in that, For any given compute tray, the first controller in that compute tray is also used for: During the process of obtaining the second physical address and second location information of the network port corresponding to each second network card in the computing tray through the virtual channel between each second network card in the computing tray, a heartbeat packet is sent to each second network card in the computing tray through the virtual channel between each second network card in the computing tray at preset time intervals. If no response packet is received from the second network interface card (NIC) in the computing tray within a preset time after the heartbeat packet is sent, it is determined that the transmission link between the first controller in the computing tray and the second NIC is interrupted, and the network port number of the NIC corresponding to the obtained second NIC is recorded. If the transmission link between the first controller in the computing tray and the second network card is restored, the second physical address and second location information of the untransmitted network port will continue to be obtained from the second network card based on the network port number of the network port corresponding to the second network card that has been recorded.

10. The system according to claim 1, characterized in that, For any computing tray, the first controller in the computing tray is specifically used to: perform signature processing on the first physical address and first location information of the network port corresponding to the multiple first network cards in the computing tray and the second physical address and second location information of the network port corresponding to the multiple second network cards, to obtain the signed first network port data; The signed first network interface data is encrypted to obtain encrypted first network interface data; a first message is generated based on the encrypted first network interface data; and the first message is sent to the main controller. For any given switching tray, the second controller in the switching tray is specifically used to: perform signature processing on the third physical address and third location information of the network ports corresponding to the multiple third network cards in the switching tray and the fourth physical address and fourth location information of the network ports corresponding to the multiple fourth network cards, to obtain the signed second network port data; The signed second network interface data is encrypted to obtain encrypted second network interface data; Based on the encrypted second network interface data, a second message is generated; The second message is sent to the main controller.

11. The system according to claim 10, characterized in that, The first message includes a first message timestamp; the second message includes a second message timestamp; the main controller is specifically used for: Based on the timestamp of the first message in the first message, determine whether the first message is an overdue message; if the first message is not an overdue message, decrypt the encrypted first network interface data in the first message to obtain the decrypted first network interface data; verify the signature in the decrypted first network interface data; if the signature verification in the decrypted first network interface data passes, determine the first physical address and first location information of the network interface corresponding to the multiple first network cards and the second physical address and second location information of the network interface corresponding to the multiple second network cards in the decrypted first network interface data as data to be summarized; Based on the timestamp of the second message in the second message, determine whether the second message is an overdue message; If the second message is not a timeout message, then the encrypted second network interface data in the second message is decrypted to obtain the decrypted second network interface data; the signature in the decrypted second network interface data is verified; if the signature verification in the decrypted second network interface data passes, then the third physical address and third location information of the network interface corresponding to the multiple third network cards and the fourth physical address and fourth location information of the network interface corresponding to the multiple fourth network cards in the decrypted second network interface data are determined as data to be summarized; Based on the data to be aggregated, a mapping table between the location information and physical address of multiple network ports is generated.

12. The system according to claim 11, characterized in that, The main controller is specifically used for: Based on the data to be aggregated, determine the location information and physical address of the network port in each tray; Based on the location information and physical address of the network port in each tray, a mapping table between the location information and physical address of the network port in each tray is generated. The tray includes a computing tray and a switching tray, and the mapping table between the location information and physical address of the multiple network ports includes a mapping table between the location information and physical address of the network ports in each tray.

13. The system according to claim 11, characterized in that, The main controller is also used for: If the first message is a timeout message, then discard the first message; If the second message is a timeout message, then the second message is discarded.

14. The system according to claim 11, characterized in that, The main controller is specifically used for: Obtain the current timestamp of the main controller; If the difference between the timestamp of the first message and the current timestamp in the first message is greater than a preset difference, then the first message is determined to be an overdue message; If the difference between the timestamp of the first message and the current timestamp in the first message is not greater than a preset difference, then the first message is determined not to be an overdue message. If the difference between the timestamp of the second message and the current timestamp in the second message is greater than a preset difference, then the second message is determined to be an overdue message; If the difference between the timestamp of the second message and the current timestamp in the second message is not greater than a preset difference, then the second message is determined not to be an overdue message.

15. A method for obtaining a network port address, characterized in that, The network interface address acquisition system applied to any one of claims 1 to 14 includes: For any computing tray, based on the first controller in the computing tray, the first physical address and first location information of the network port corresponding to each first network card in the computing tray are obtained; the second physical address and second location information of the network port corresponding to each second network card in the computing tray are obtained through the virtual channel between the first controller and each second network card in the computing tray; and the obtained information is sent to the main controller. For any given switch tray, based on the second controller in that switch tray, the third physical address and third location information of the network port corresponding to each third network card in the switch tray are obtained through a virtual channel between the controller and each third network card in the switch tray; the fourth physical address and fourth location information of the network port corresponding to each fourth network card in the switch tray are obtained through a virtual channel between the controller and each fourth network card in the switch tray; and the obtained information is sent to the main controller. Based on the main controller, the received information is aggregated to generate a mapping table between the location information and physical address of multiple network ports.