CN116668283A - 基于PCIe的网络传输配置方法及服务器 - Google Patents
基于PCIe的网络传输配置方法及服务器 Download PDFInfo
- Publication number
- CN116668283A CN116668283A CN202310786301.0A CN202310786301A CN116668283A CN 116668283 A CN116668283 A CN 116668283A CN 202310786301 A CN202310786301 A CN 202310786301A CN 116668283 A CN116668283 A CN 116668283A
- Authority
- CN
- China
- Prior art keywords
- server
- pcie
- control unit
- micro control
- address information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000005540 biological transmission Effects 0.000 title claims abstract description 60
- 230000006854 communication Effects 0.000 claims abstract description 87
- 238000004891 communication Methods 0.000 claims abstract description 86
- 238000012545 processing Methods 0.000 claims description 23
- 238000003860 storage Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5046—Resolving address allocation conflicts; Testing of addresses
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供一种基于PCIe的网络传输配置方法及服务器,该方法包括:在确定所述待配置服务器上电时,控制第一微控制单元从所述待配置服务器的存储芯片读取所有候选IP地址信息;控制所述第一微控制单元通过目标通信链路将目标IP地址信息分发至各第二微控制单元,以供实际接插在所述待配置服务器的各PCIe设备分别根据从各自的第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信。本发明提供的基于PCIe的网络传输配置方法及服务器,实现在PCIe主从设备之间构建局域网时,通过软件方式给不同PCIe从设备自动设置不同的IP地址。
Description
技术领域
本发明涉及服务器技术领域,尤其涉及一种基于PCIe的网络传输配置方法及服务器。
背景技术
目前,边缘计算是5G、物联网、人工智能等技术迭代优化的重要支撑,在边缘计算服务器在总体服务器市场中的比重日益升高的趋势下,人们对服务器产品的需求也从最基本的算力扩展发展到采用模块化设计的思路将服务器产品的不同功能由不同的模块执行,以满足客户的多样化定制需求。例如,NVME硬盘、SATA硬盘或具备一定算力的计算模组等模块都可以插在硬盘背板上,通过高速串行计算机扩展总线标准(Peripheral ComponentInterconnect express,PCIe)通道与服务器中央处理器实现互联。
虽然计算模组可以与服务器中央处理器进行网络通信,但在实际生产过程中,服务器中央处理器可能会搭配不止一个计算模组使用,在同时搭配多个计算模组使用时,由于计算模组只会使用一个系统镜像,即计算模组在生产组装时,其系统内的虚拟网卡IP都是相同的,为避免IP冲突所导致的通信异常,现有技术一般都是由人手动给不同计算模组设置不同IP地址,此方法低效且易出错。
发明内容
本发明提供一种基于PCIe的网络传输配置方法及服务器,用以解决现有技术中依赖于人力对每一个具备计算能力的外设分别设置不同的IP地址所导致的网络配置效率低下的缺陷。
本发明提供一种基于PCIe的网络传输配置方法,应用于待配置服务器的中央处理器,包括:
在确定所述待配置服务器上电时,控制第一微控制单元从所述待配置服务器的存储芯片读取所有候选IP地址信息;
控制所述第一微控制单元通过目标通信链路将目标IP地址信息分发至各第二微控制单元,以供实际接插在所述待配置服务器的各PCIe设备分别根据从各自的第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信;
其中,所述第一微控制单元是设置在所述待配置服务器的中央处理器中的微控制单元MCU;所述第二微控制单元是设置在每一接插在所述待配置服务器的PCIe设备中的MCU;所述目标通信链路为任一所述第二微控制单元与所述第一微控制单元之间的IIC通信链路;所述目标IP地址信息的数量小于或者等于所述候选IP地址信息的数量。
根据本发明提供的一种基于PCIe的网络传输配置方法,在确定所述待配置服务器是否上电之前,还包括:
根据所述待配置服务器的PCIe配置需求,确定PCIe设备的额定最大数量;
将处于同一网段,且数量与所述PCIe设备的额定最大数量相等的IP地址信息作为所述候选IP地址信息,并将所述候选IP地址信息烧录在所述待配置服务器的存储芯片中。
根据本发明提供的一种基于PCIe的网络传输配置方法,所述待配置服务器的存储芯片为带电可擦可编程只读存储器。
本发明还提供一种基于PCIe的网络传输配置方法,应用于接插在所述待配置服务器的每一PCIe设备,包括:
通过第二微控制单元接收由第一微控制单元通过目标通信链路所下发的目标IP地址信息;
根据从所述第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信;
其中,所述第一微控制单元是设置在所述待配置服务器的中央处理器中的微控制单元MCU;所述第二微控制单元是设置在每一接插在所述待配置服务器的PCIe设备中的MCU;所述目标通信链路为任一所述第二微控制单元与所述第一微控制单元之间的IIC通信链路。
根据本发明提供的一种基于PCIe的网络传输配置方法,所述根据从所述第二微控制单元所读取到的目标IP地址信息,所述待配置服务器的中央处理器与各PCIe设备之间的网络通信,包括:
将从所述第二微控制单元所读取到的目标IP地址信息写入接口配置文件进行赋值更新;
基于更新后的接口配置文件,重新建立起所述待配置服务器的中央处理器与当前PCIe设备之间的网络通信。
本发明还提供一种服务器,包括用于执行如上任一项所述基于PCIe的网络传输配置方法的服务器主板,以及与所述服务器主板连接的PCIe设备;
任一PCIe设备用于执行如上任一项所述基于PCIe的网络传输配置方法;
所述服务器主板上的第一微控制单元与任一PCIe设备上的第二微控制单元之间形成IIC通信链路。
根据本发明提供的一种服务器,任一所述IIC通信链路上设置有IIC仲裁器和IIC选通器;
所述IIC仲裁器,用于决定IIC链路的控制主体为所述第一微控制单元或者基板管理控制器;
所述IIC选通器,用于选择连通的不同PCIe设备的IIC通信链路。
根据本发明提供的一种服务器,用于执行如上任一项所述基于PCIe的网络传输配置方法的脚本代码被内置到所述PCIe设备的刷机包中。
根据本发明提供的一种服务器,所述PCIe设备为智能网卡或者计算模组。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于PCIe的网络传输配置方法。
本发明提供的基于PCIe的网络传输配置方法及服务器,通过将服务器CPU所在底板上的第一MCU和PCIe设备所在底板上的第二MCU之间的IIC通信通路打通后,控制第一MCU从服务器内读取多个不同IP地址值,并分别发送给多个第二MCU,以供不同PCIe设备根据从各自第二MCU读取到的IP地址进行网络配置。实现在PCIe主从设备之间构建局域网时,通过软件方式给不同PCIe从设备自动设置不同的IP地址,既解决IP冲突的问题,又能避免在产品生产过程中需要人力对每一个PCIe设备分别设置不同的IP地址这一过程,提高网络配置效率以及产品质量。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的基于PCIe的网络传输配置方法的流程示意图之一;
图2是本发明提供的第一微控制单元与带电可擦可编程只读存储器之间的通信链路逻辑示意图;
图3是本发明提供的基于PCIe的网络传输配置方法的流程示意图之二;
图4是本发明提供的服务器的结构示意图;
图5是本发明提供的第一微控制单元与第二微控制单元之间的通信链路逻辑示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。
应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
图1是本发明提供的基于PCIe的网络传输配置方法的流程示意图之一。如图1所示,本发明实施例提供的基于PCIe的网络传输配置方法,应用于待配置服务器的中央处理器,包括:步骤101、在确定所述待配置服务器上电时,控制第一微控制单元从所述待配置服务器的存储芯片读取所有候选IP地址信息。
其中,所述第一微控制单元是设置在所述待配置服务器的中央处理器中的微控制单元MCU。
需要说明的是,本发明实施例提供的基于PCIe的网络传输配置方法的执行主体为基于PCIe的网络传输配置装置。基于PCIe的网络传输配置装置可以设置于待配置服务器的中央处理器上,或者基于PCIe的网络传输配置装置为待配置服务器的中央处理器。
基于PCIe的网络传输配置装置的应用场景为,在待配置服务器的中央处理器(Central Processing Unit,CPU)中植入关于第一微控制单元(Micro Controller Unit,MCU)的软件代码,通过运行该代码读取出事先烧写的不同IP地址,再下发至接插在待配置服务器的PCIe设备中的MCU,通过不同的IP地址相应建立待配置服务器各多个PCIe设备直接之间的网络通信。
其中,第一MCU,是指待配置服务器的CPU对应的底板上所部署的MCU。
具体地,在步骤101中,依托于待配置服务器的CPU运行的基于PCIe的网络传输配置装置在根据服务器内各部件的状态信息确定其已经处于上电运行状态时,控制第一微控制单元从待配置服务器中内置的存储芯片读取事先烧写的候选IP地址信息。
其中,候选IP地址信息,是指事先烧录在待配置服务器中内置的存储芯片中的同一网段的不同IP地址,候选IP地址信息的数量由待配置服务器的配置决定。
步骤102、控制所述第一微控制单元通过目标通信链路将目标IP地址信息分发至各第二微控制单元,以供实际接插在所述待配置服务器的各PCIe设备分别根据从各自的第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信。
其中,所述第二微控制单元是设置在每一接插在所述待配置服务器的PCIe设备中的MCU。所述目标通信链路为任一所述第二微控制单元与所述第一微控制单元之间的IIC通信链路;所述目标IP地址信息的数量小于或者等于所述候选IP地址信息的数量。
需要说明的是,第二MCU,是指通过PCIe链路接插在待配置服务器的外设对应的底板上所部署的MCU。
目标通信链路,是指将第一MCU作为主设备,将任一第二MCU作为从设备,进而为主从设备二者之间所打通的IIC通信链路。
具体地,在步骤102中,依托于待配置服务器的CPU运行的基于PCIe的网络传输配置装置从候选IP地址信息中选取出数量与待配置服务器的实际插配情况匹配的目标IP地址信息,并控制第一MCU通过连通的目标通信链路将目标IP地址信息依次分发至实际接插在待配置服务器的各PCIe设备中的第二微控制单元。
任一第二微控制单元在接收到目标IP地址信息后,将所接收到的目标IP地址信息提供给其所依托运行的PCIe设备,以供各PCIe设备自动提取互不相同的IP地址,并各自根据对应IP地址与待配置服务器的中央处理器进行网络通信。
其中,目标IP地址信息的数量由待配置服务器的实际插配情况决定。若为满配的情况,则目标IP地址信息的数量等于候选IP地址信息的数量。若为减配的情况,则目标IP地址信息的数量小于候选IP地址信息的数量。
本发明实施例通过将服务器CPU所在底板上的第一MCU和PCIe设备所在底板上的第二MCU之间的IIC通信通路打通后,控制第一MCU从服务器内读取多个不同IP地址值,并分别发送给多个第二MCU,以供不同PCIe设备根据从各自第二MCU读取到的IP地址进行网络配置。实现在PCIe主从设备之间构建局域网时,通过软件方式给不同PCIe从设备自动设置不同的IP地址,既解决IP冲突的问题,又能避免在产品生产过程中需要人力对每一个PCIe设备分别设置不同的IP地址这一过程,提高网络配置效率以及产品质量。
在上述任一实施例的基础上,在确定所述待配置服务器是否上电之前,还包括:根据所述待配置服务器的PCIe配置需求,确定PCIe设备的额定最大数量。
具体地,在步骤101之前,依托于待配置服务器的CPU运行的基于PCIe的网络传输配置装置需要结合自身配置情况和实际的配置需求,枚举出不同外设组合及其所包含的PCIe设备的额定最大数量,记作N。
将处于同一网段,且数量与所述PCIe设备的额定最大数量相等的IP地址信息作为所述候选IP地址信息,并将所述候选IP地址信息烧录在所述待配置服务器的存储芯片中。
具体地,依托于待配置服务器的CPU运行的基于PCIe的网络传输配置装置预先将N个处于同一网段下不同的IP地址信息作为候选IP地址信息,并将其烧录在待配置服务器内置的存储芯片中,以供第一MCU通过IIC访问存储芯片并读取烧写好的候选IP地址信息。
本发明实施例通过预先将数量与PCIe配置需求匹配的IP地址信息作为候选IP地址信息烧录在服务器的存储芯片中,以供第一MCU通过读取烧写好的候选IP地址信息并决策IP地址的分发,能够提高整个网络系统的适配性和扩展性。
图2是本发明提供的第一微控制单元与带电可擦可编程只读存储器之间的通信链路逻辑示意图。如图2所示,在上述任一实施例的基础上,所述待配置服务器的存储芯片为带电可擦可编程只读存储器。
具体地,待配置服务器所内置的存储芯片为带电可擦可编程只读存储器(Electrically Erasable Programmable Read Only Memory,EEPROM),EEPROM内存有多个相同网段的IP地址,在机器刚上电时,第一MCU就获取到PCA9641的控制权,以通过IIC访问与CPU通信连接的EEPROM并读取IP地址值。
本发明实施例将存储芯片配置为带电可擦可编程只读存储器,不但在掉电时可继续存储数据,同时又可以在高于普通电压的作用下擦除和重写,提高开发的便利性。
图3是本发明提供的基于PCIe的网络传输配置方法的流程示意图之二。如图3所示,在上述任一实施例的基础上,本发明实施例提供的基于PCIe的网络传输配置方法,应用于接插在所述待配置服务器的每一PCIe设备,包括:步骤301、通过第二微控制单元接收由第一微控制单元通过目标通信链路所下发的目标IP地址信息。
其中,所述第一微控制单元是设置在所述待配置服务器的中央处理器中的微控制单元MCU。所述第二微控制单元是设置在每一接插在所述待配置服务器的PCIe设备中的MCU。所述目标通信链路为任一所述第二微控制单元与所述第一微控制单元之间的IIC通信链路。
需要说明的是,本发明实施例提供的基于PCIe的网络传输配置方法的执行主体为基于PCIe的网络传输配置装置。基于PCIe的网络传输配置装置可以设置于接插在待配置服务器的每一PCIe设备上,或者基于PCIe的网络传输配置装置为接插在待配置服务器的每一PCIe设备。
基于PCIe的网络传输配置装置的应用场景为,在接插在待配置服务器的每一PCIe设备中植入关于第二微控制单元(Micro Controller Unit,MCU)的软件代码,通过运行该代码读取出第一MCU下发给第二MCU的IP地址,以通过不同的IP地址相应建立待配置服务器各多个PCIe设备直接之间的网络通信。
可以理解的是,在服务器上插配的PCIe设备包括但不限于NVME硬盘、SATA硬盘,以及具有独立计算能力的设备(即具备CPU和/或图形处理器(Graphics Processing Unit,GPU))。
其中,由于同时具备CPU和GPU的NX计算模组只会使用一个系统镜像,即NX计算模组在生产组装时,其系统内的虚拟网卡IP都是相同的,故NX计算模组应用本发明实施例提供的基于PCIe的网络传输配置方法时所得到的效果最为显著。
具体地,在步骤301中,依托于待配置服务器所插配的PCIe设备运行的基于PCIe的网络传输配置装置控制第二MCU与第一MCU之间的IIC通信链路保持连通,以接收来自于第一MCU的目标IP地址信息。
步骤302、根据从所述第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信。
具体地,在步骤302中,依托于待配置服务器所插配的PCIe设备运行的基于PCIe的网络传输配置装置在确定第二MCU接收到目标IP地址信息后,从第二MCU读取其所接收到的目标IP地址信息,以供各PCIe设备自动提取互不相同的IP地址,并各自根据对应IP地址与待配置服务器的中央处理器进行网络通信。
本发明实施例通过将服务器CPU所在底板上的第一MCU和PCIe设备所在底板上的第二MCU之间的IIC通信通路打通后,控制第一MCU从服务器内读取多个不同IP地址值,并分别发送给多个第二MCU,以供不同PCIe设备根据从各自第二MCU读取到的IP地址进行网络配置。实现在PCIe主从设备之间构建局域网时,通过软件方式给不同PCIe从设备自动设置不同的IP地址,既解决IP冲突的问题,又能避免在产品生产过程中需要人力对每一个PCIe设备分别设置不同的IP地址这一过程,提高网络配置效率以及产品质量。
在上述任一实施例的基础上,所述根据从所述第二微控制单元所读取到的目标IP地址信息,所述待配置服务器的中央处理器与各PCIe设备之间的网络通信,包括:将从所述第二微控制单元所读取到的目标IP地址信息写入接口配置文件进行赋值更新。
具体地,在步骤302中,依托于待配置服务器所插配的PCIe设备运行的基于PCIe的网络传输配置装置通过访问与第二MCU连接的IIC接口,进而与第二MCU建立IIC通信,以获取第二MCU所接收到的目标IP地址信息后,将目标IP地址信息写入对应操作系统下的接口配置文件,配置虚拟网卡的静态IP。
例如设置改网卡eth0的IP地址,在接口配置文件内写入下面内容。
auto eth0
iface eth0 inet static
address 192.168.2.18
netmask 255.255.255.0
gateway 192.168.2.1
基于更新后的接口配置文件,重新建立起所述待配置服务器的中央处理器与当前PCIe设备之间的网络通信。
具体地,依托于待配置服务器所插配的PCIe设备运行的基于PCIe的网络传输配置装置通过更新后的接口配置文件中所记录的IP地址值重置网络,并使中央处理器与当前PCIe设备之间的网络通信生效。
本发明实施例通过与第二MCU进行通信,读取第二MCU所接收到的目标IP地址信息,并将该值写入到其系统内的接口配置文件后重置网络。实现PCIe设备从自身的MCU获取IP地址并使整个网络通信生效。
图4是本发明提供的服务器的结构示意图。在上述任一实施例的基础上,如图4所示,本发明实施例提供的服务器,包括用于执行如上所述基于PCIe的网络传输配置方法的服务器主板410,以及与所述服务器主板410连接的PCIe设备420。
任一PCIe设备420用于执行如上任一项所述基于PCIe的网络传输配置方法。
所述服务器主板410上的第一微控制单元411与任一PCIe设备420上的第二微控制单元421之间形成IIC通信链路。
具体地,服务器内各部件的状态信息确定其已经处于上电运行状态时,利用服务器主板410中的第一微控制单元411从服务器中内置的存储芯片读取事先烧写的候选IP地址信息。
服务器主板410从候选IP地址信息中选取出数量与待配置服务器的实际插配情况匹配的目标IP地址信息,并控制第一MCU411通过连通的目标通信链路将目标IP地址信息依次分发至实际接插在服务器上的各PCIe设备420中的第二微控制单元421。
任一PCIe设备420控制第二MCU与第一MCU之间的IIC通信链路保持连通,并在确定第二MCU接收到目标IP地址信息后,从第二MCU读取其所接收到的目标IP地址信息,以供各PCIe设备自动提取互不相同的IP地址,并各自根据对应IP地址与待配置服务器的中央处理器进行网络通信
本发明实施例通过将服务器CPU所在底板上的第一MCU和PCIe设备所在底板上的第二MCU之间的IIC通信通路打通后,控制第一MCU从服务器内读取多个不同IP地址值,并分别发送给多个第二MCU,以供不同PCIe设备根据从各自第二MCU读取到的IP地址进行网络配置。实现在PCIe主从设备之间构建局域网时,通过软件方式给不同PCIe从设备自动设置不同的IP地址,既解决IP冲突的问题,又能避免在产品生产过程中需要人力对每一个PCIe设备分别设置不同的IP地址这一过程,提高网络配置效率以及产品质量。
图5是本发明提供的第一微控制单元与第二微控制单元之间的通信链路逻辑示意图。如图5所示,在上述任一实施例的基础上,任一所述IIC通信链路上设置有IIC仲裁器和IIC选通器。
所述IIC仲裁器,用于决定IIC链路的控制主体为所述第一微控制单元或者基板管理控制器。
所述IIC选通器,用于选择连通的不同PCIe设备的IIC通信链路。
具体地,图5中最左侧代表第一MCU中的IIC接口,最右侧的NVME_BOARD是连接PCIe设备及其底板的一个板子,其上面标识的NVME0/NVME1可代表PCIe设备及其底板。在第一MCU与第二MCU之间的IIC链路至少存在IIC仲裁器和IIC选通器,其中:
PCA9641是IIC仲裁器,通过设置其内部寄存器,可以决定由MCU或者BMC来控制后面的IIC链路。
PCA9546为IIC选通器,通过设置其内部寄存器,可以选择访问其后面连通的不同的IIC从设备。
在如图5所示的结构基础上,第一MCU与第二MCU之间的通信过程为:首先,第一MCU会获得PCA9641的控制权,然后分别选通PCA9546连接不同通道,然后通过此通道分别与4个第二MCU建立IIC通信,最后将不同的IP地址发给不同的第二MCU。
本发明实施例通过在IIC通信链路上设置IIC仲裁器和IIC选通器,能在多个主机同时请求控制总线时利用冲突检测机制和仲裁机制避免数据冲突并保护数据。
在上述任一实施例的基础上,用于执行如上任一项所述基于PCIe的网络传输配置方法的脚本代码被内置到所述PCIe设备的刷机包中。
具体地,将PCIe设备420在其执行基于PCIe的网络传输配置方法时的脚本代码,将软件脚本内置到PCIe设备420的刷机包,以开机自动执行该脚本,从第二MCU读取IP地址,并将IP地址写入接口配置文件配置虚拟网卡的静态IP。
本发明实施例将PCIe设备从自身MCU提取IP地址的脚本代码内置在刷机包,以在PCIe设备运行事先放入的刷机包时重置相关链路通信逻辑,且不会破坏设备底层数据,使其操作更加方便快捷。
在上述任一实施例的基础上,所述PCIe设备为智能网卡或者计算模组。
具体地,PCIe设备420为智能网卡或者计算模组。
当然,这里的PCIe设备420还可以为其他类型的PCIe设备,本申请在此不做特别地限定。
本发明实施例通过多种类的PCIe设备,提高服务器的扩展性,即便是用户随时更换PCIe设备也能通过MCU之间的IIC通信的进行自动化的IP地址分配,提高网络配置的效率。
此外,上述的存储芯片中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的基于PCIe的网络传输配置方法,应用于待配置服务器的中央处理器,该方法包括:在确定所述待配置服务器上电时,控制第一微控制单元从所述待配置服务器的存储芯片读取所有候选IP地址信息;控制所述第一微控制单元通过目标通信链路将目标IP地址信息分发至各第二微控制单元,以供实际接插在所述待配置服务器的各PCIe设备分别根据从各自的第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信;其中,所述第一微控制单元是设置在所述待配置服务器的中央处理器中的微控制单元MCU;所述第二微控制单元是设置在每一接插在所述待配置服务器的PCIe设备中的MCU;所述目标通信链路为任一所述第二微控制单元与所述第一微控制单元之间的IIC通信链路;所述目标IP地址信息的数量小于或者等于所述候选IP地址信息的数量。还可以执行上述各方法提供的基于PCIe的网络传输配置方法,应用于接插在所述待配置服务器的每一PCIe设备,该方法包括:通过第二微控制单元接收由第一微控制单元通过目标通信链路所下发的目标IP地址信息;根据从所述第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信;其中,所述第一微控制单元是设置在所述待配置服务器的中央处理器中的微控制单元MCU;所述第二微控制单元是设置在每一接插在所述待配置服务器的PCIe设备中的MCU;所述目标通信链路为任一所述第二微控制单元与所述第一微控制单元之间的IIC通信链路。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的基于PCIe的网络传输配置方法,应用于待配置服务器的中央处理器,该方法包括:在确定所述待配置服务器上电时,控制第一微控制单元从所述待配置服务器的存储芯片读取所有候选IP地址信息;控制所述第一微控制单元通过目标通信链路将目标IP地址信息分发至各第二微控制单元,以供实际接插在所述待配置服务器的各PCIe设备分别根据从各自的第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信;其中,所述第一微控制单元是设置在所述待配置服务器的中央处理器中的微控制单元MCU;所述第二微控制单元是设置在每一接插在所述待配置服务器的PCIe设备中的MCU;所述目标通信链路为任一所述第二微控制单元与所述第一微控制单元之间的IIC通信链路;所述目标IP地址信息的数量小于或者等于所述候选IP地址信息的数量。还可以执行上述各方法提供的基于PCIe的网络传输配置方法,应用于接插在所述待配置服务器的每一PCIe设备,该方法包括:通过第二微控制单元接收由第一微控制单元通过目标通信链路所下发的目标IP地址信息;建立起根据从所述第二微控制单元所读取到的目标IP地址信息,所述待配置服务器的中央处理器与各PCIe设备之间的网络通信;其中,所述第一微控制单元是设置在所述待配置服务器的中央处理器中的微控制单元MCU;所述第二微控制单元是设置在每一接插在所述待配置服务器的PCIe设备中的MCU;所述目标通信链路为任一所述第二微控制单元与所述第一微控制单元之间的IIC通信链路。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于PCIe的网络传输配置方法,应用于待配置服务器的中央处理器,其特征在于,包括:
在确定所述待配置服务器上电时,控制第一微控制单元从所述待配置服务器的存储芯片读取所有候选IP地址信息;
控制所述第一微控制单元通过目标通信链路将目标IP地址信息分发至各第二微控制单元,以供实际接插在所述待配置服务器的各PCIe设备分别根据从各自的第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信;
其中,所述第一微控制单元是设置在所述待配置服务器的中央处理器中的微控制单元MCU;所述第二微控制单元是设置在每一接插在所述待配置服务器的PCIe设备中的MCU;所述目标通信链路为任一所述第二微控制单元与所述第一微控制单元之间的IIC通信链路;所述目标IP地址信息的数量小于或者等于所述候选IP地址信息的数量。
2.根据权利要求1所述的基于PCIe的网络传输配置方法,其特征在于,在确定所述待配置服务器是否上电之前,还包括:
根据所述待配置服务器的PCIe配置需求,确定PCIe设备的额定最大数量;
将处于同一网段,且数量与所述PCIe设备的额定最大数量相等的IP地址信息作为所述候选IP地址信息,并将所述候选IP地址信息烧录在所述待配置服务器的存储芯片中。
3.根据权利要求2所述的基于PCIe的网络传输配置方法,其特征在于,所述待配置服务器的存储芯片为带电可擦可编程只读存储器。
4.一种基于PCIe的网络传输配置方法,应用于接插在所述待配置服务器的每一PCIe设备,其特征在于,包括:
通过第二微控制单元接收由第一微控制单元通过目标通信链路所下发的目标IP地址信息;
根据从所述第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信;
其中,所述第一微控制单元是设置在所述待配置服务器的中央处理器中的微控制单元MCU;所述第二微控制单元是设置在每一接插在所述待配置服务器的PCIe设备中的MCU;所述目标通信链路为任一所述第二微控制单元与所述第一微控制单元之间的IIC通信链路。
5.根据权利要求4所述的基于PCIe的网络传输配置方法,其特征在于,所述根据从所述第二微控制单元所读取到的目标IP地址信息,建立起所述待配置服务器的中央处理器与各PCIe设备之间的网络通信,包括:
将从所述第二微控制单元所读取到的目标IP地址信息写入接口配置文件进行赋值更新;
基于更新后的接口配置文件,重新建立起所述待配置服务器的中央处理器与当前PCIe设备之间的网络通信。
6.一种服务器,其特征在于,包括用于执行如权利要求1至3任一项所述基于PCIe的网络传输配置方法的服务器主板,以及与所述服务器主板连接的PCIe设备;
任一PCIe设备用于执行如权利要求4至5任一项所述基于PCIe的网络传输配置方法;
所述服务器主板上的第一微控制单元与任一PCIe设备上的第二微控制单元之间形成IIC通信链路。
7.根据权利要求6所述的服务器,其特征在于,任一所述IIC通信链路上设置有IIC仲裁器和IIC选通器;
所述IIC仲裁器,用于决定IIC链路的控制主体为所述第一微控制单元或者基板管理控制器;
所述IIC选通器,用于选择连通的不同PCIe设备的IIC通信链路。
8.根据权利要求6所述的服务器,其特征在于,用于执行如权利要求4至5任一项所述基于PCIe的网络传输配置方法的脚本代码被内置到所述PCIe设备的刷机包中。
9.如权利要求6-8任一所述的服务器,其特征在于,所述PCIe设备为智能网卡或者计算模组。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述基于PCIe的网络传输配置方法,以及执行时实现如权利要求4至5任一项所述基于PCIe的网络传输配置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310786301.0A CN116668283A (zh) | 2023-06-29 | 2023-06-29 | 基于PCIe的网络传输配置方法及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310786301.0A CN116668283A (zh) | 2023-06-29 | 2023-06-29 | 基于PCIe的网络传输配置方法及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116668283A true CN116668283A (zh) | 2023-08-29 |
Family
ID=87719149
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310786301.0A Pending CN116668283A (zh) | 2023-06-29 | 2023-06-29 | 基于PCIe的网络传输配置方法及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116668283A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116959549A (zh) * | 2023-09-20 | 2023-10-27 | 四川华鲲振宇智能科技有限责任公司 | 一种自动化硬盘组阵列方法及设备、介质 |
-
2023
- 2023-06-29 CN CN202310786301.0A patent/CN116668283A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116959549A (zh) * | 2023-09-20 | 2023-10-27 | 四川华鲲振宇智能科技有限责任公司 | 一种自动化硬盘组阵列方法及设备、介质 |
CN116959549B (zh) * | 2023-09-20 | 2023-11-28 | 四川华鲲振宇智能科技有限责任公司 | 一种自动化硬盘组阵列方法及设备、介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107423169B (zh) | 用于测试高速外围设备互连设备的方法和系统 | |
CN102855146B (zh) | 固件更新系统及方法 | |
CN116668283A (zh) | 基于PCIe的网络传输配置方法及服务器 | |
CN112328440B (zh) | 一种硬盘物理位置确定方法和装置 | |
TWI220714B (en) | Method of hot swap | |
CN106227683B (zh) | 电子设备及信息处理方法 | |
US8037223B2 (en) | Reconfigurable I/O card pins | |
US20170127550A1 (en) | Modular Computer System and Server Module | |
CN113406991B (zh) | 一种时钟管理方法、装置及电子设备和存储介质 | |
CN110780932A (zh) | 一种pcie切换芯片的工作模式切换方法与装置 | |
US9280493B2 (en) | Method and device for enumerating input/output devices | |
CN110704365A (zh) | 一种基于fpga的重构装置 | |
CN115905094A (zh) | 一种电子设备及其PCIe拓扑配置方法和装置 | |
CN104158709B (zh) | 一种光模块识别的方法及端口扩展设备 | |
CN110399168A (zh) | 多数据盘存储服务器的系统启动方法、装置及设备 | |
CN102902550A (zh) | 计算机系统及其操作系统载入方法 | |
CN109117406B (zh) | 一种pcie热拔插测试方法、装置、终端及存储介质 | |
CN116155738A (zh) | 一种pcie设备通信方法、装置、设备及介质 | |
US6167463A (en) | Firm addressing for devices on a fibre channel arbitrated loop | |
CN111274192A (zh) | 一种多bmc管理系统及刀片服务器 | |
US11687253B2 (en) | Configuration of a computational drive | |
CN109831326A (zh) | 网络设备控制方法及网络设备 | |
CN116009785A (zh) | 一种硬盘管理的方法及计算设备 | |
CN115509985A (zh) | 一种处理器的i/o控制器 | |
CN114936033A (zh) | 一种集群固件升级的系统和智能超级计算集群 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |