CN110166341B - 一种服务器、服务器集群及通信方法 - Google Patents
一种服务器、服务器集群及通信方法 Download PDFInfo
- Publication number
- CN110166341B CN110166341B CN201910584758.7A CN201910584758A CN110166341B CN 110166341 B CN110166341 B CN 110166341B CN 201910584758 A CN201910584758 A CN 201910584758A CN 110166341 B CN110166341 B CN 110166341B
- Authority
- CN
- China
- Prior art keywords
- data
- processor
- server
- communication interface
- communication bus
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Systems (AREA)
- Communication Control (AREA)
Abstract
本申请提供一种服务器、服务器集群及通信方法,其中服务器包括第一处理器和数据交互模块,第一处理器设置有第一通信接口,在数据交互模块中增设一个与第一通信接口匹配的第二通信接口,且第一通信接口和第二通信接口之间连接有第一类型通信总线,其中第一类型通信总线以点对点串列方式在第一处理器和数据交互模块之间传输电信号,由此将服务器中第一处理器和数据交互模块之间连接的通信总线改为能够点对点串列传输电信号的第一类型通信总线,且为了能够采用点对点串列方式传输需要在数据交互模块中增设一个第二通信接口,相对于现有技术来说,提供一种新的服务器架构以适用于点对点串列传输方式。
Description
技术领域
本申请属于通信技术领域,更具体地说,涉及一种服务器、服务器集群及通信方法。
背景技术
目前服务器内部各个模块之间采用同一种类型的通信总线或不同类型的通信总线传输电信号,这些类型的通信总线可以以点对点方式来传输电信号。
发明内容
有鉴于此,本申请的目的在于提供一种服务器、服务器集群及通信方法,以提供一种新的服务器架构。技术方案如下:
本申请提供一种服务器,所述服务器包括:
第一处理器,所述第一处理器设置有第一通信接口;
数据交互模块,所述数据交互模块设置有与所述第一通信接口匹配的第二通信接口,且所述第一通信接口和所述第二通信接口之间连接有第一类型通信总线;
所述第一类型通信总线以点对点串列方式在所述第一处理器和所述数据交互模块之间传输电信号。
优选的,所述第一类型通信总线以直流耦合形式传输所述电信号。
优选的,所述服务器还包括:第二处理器,所述第二处理器的类型与所述第一处理器的类型不同;
所述第二处理器设置有所述第二通信接口,且所述第二处理器的第二通信接口和所述第一通信接口之间连接有所述第一类型通信总线。
优选的,所述数据交互模块设置有第三通信接口,所述第三通信接口通过第二类型通信总线与另一个服务器中的数据交互模块进行通信,所述第二类型通信总线以点对点方式在所述数据交互模块和所述另一个服务器中的数据交互模块之间传输电信号。
优选的,所述数据交互模块包括:所述第二通信接口、第一控制器、存储器、第二控制器和第三通信接口;
所述第一控制器,用于接收所述第二通信接口上传输的第一电信号,并对所述第一电信号进行解析得到第一数据,将所述第一数据存储到所述存储器的发送缓存区;
所述第二控制器,用于从所述发送缓存区中获取所述第一数据,基于所述第一数据生成第二电信号,通过所述第三通信接口向外发送所述第二电信号;
所述第二控制器,还用于接收所述第三通信接口上传输的第三电信号,并对所述第三电信号进行解析得到第二数据,将所述第二数据存储到所述存储器的接收缓存区;
所述第一控制器,还用于从所述接收缓存区中获取所述第二数据,基于所述第二数据生成第四电信号,通过所述第二通信接口向所述第一处理器发送所述第四电信号。
优选的,所述第一处理器和所述数据交互模块中的至少一个设备,具体用于获得至少两个待发送数据块,控制所述至少两个待发送数据块复用第一包头,基于所述至少两个待发送数据块和所述第一包头,得到待发送数据,并将所述待发送数据转换成电信号。
优选的,所述第一处理器和所述数据交互模块中的至少一个设备,具体用于获得所述第一类型通信总线传输的电信号对应数据的纠错率和/或数据传输速率,基于所述纠错率和/或数据传输速率,调整所述第一类型通信总线传输的电信号对应数据中的校验位的长度。
本申请还提供一种服务器集群,所述服务器集群至少包括第一服务器和第二服务器,所述第一服务器的内部和所述第二服务器的内部通过第一类型通信总线传输电信号,所述第一服务器和所述第二服务器之间通过第二类型通信总线传输电信号;
所述第一类型通信总线以点对点串列方式传输电信号。
本申请还提供一种通信方法,所述方法包括:
获得待发送数据;
基于所述待发送数据生成电信号;
通过第一类型通信总线传输所述电信号,其中第一类型通信总线以点对点串列方式传输电信号。
优选的,所述获得待发送数据包括:
获得至少两个待发送数据块;
控制所述至少两个待发送数据块复用第一包头;
基于所述至少两个待发送数据块和所述第一包头,得到所述待发送数据。
优选的,所述获得待发送数据包括:
获得所述第一类型通信总线传输的电信号对应数据的纠错率和/或数据传输速率;
基于所述纠错率和/或数据传输速率,调整所述第一类型通信总线传输的电信号对应数据中的校验位的长度;
基于调整后的校验位的长度,得到所述待发送数据。
从上述技术方案可知,服务器包括第一处理器和数据交互模块,第一处理器设置有第一通信接口,在数据交互模块中增设一个与第一通信接口匹配的第二通信接口,且第一通信接口和第二通信接口之间连接有第一类型通信总线,其中第一类型通信总线以点对点串列方式在第一处理器和数据交互模块之间传输电信号,由此将服务器中第一处理器和数据交互模块之间连接的通信总线改为能够点对点串列传输电信号的第一类型通信总线,且为了能够采用点对点串列方式传输需要在数据交互模块中增设一个第二通信接口,相对于现有技术来说,提供一种新的服务器架构以适用于点对点串列传输方式。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种服务器的结构示意图;
图2是本申请实施例提供的一种增设第二通信接口的示意图;
图3是本申请实施例提供的另一种服务器的结构示意图;
图4是本申请实施例提供的一种服务器的实例图;
图5是本申请实施例提供的再一种服务器的结构示意图;
图6是本申请实施例提供的另一种服务器的实例图;
图7是本申请实施例提供的再一种服务器的结构示意图;
图8是本申请实施例提供的服务器中数据交互模块的结构示意图;
图9是本申请实施例提供的一种服务器集群的结构示意图;
图10是本申请实施例提供的一种通信方法的流程图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1,其示出了本申请实施例提供的一种服务器的结构,该服务器包括:第一处理器10和数据交互模块20。
其中第一处理器10设置有第一通信接口101,数据交互模块20设置有与第一通信接口101匹配的第二通信接口201,且第一通信接口101和第二通信接口201之间连接有第一类型通信总线30。第一类型通信总线30以点对点串列方式在第一处理器10和数据交互模块20之间传输电信号。
为了能够使用点对点串列方式在第一处理器10和数据交互模块20之间传输电信号,数据交互模块20中的第二通信接口201是增设在数据交互模块20中的一个通信接口,以使数据交互模块20能够使用连接第一类型通信总线30。
例如第一类型通信总线30的一种表现形式是NVlink总线,NVlink总线是英伟达开发并推出的一种总线,而现有数据交互模块20,如网络接口控制器中没有与NVlink总线适配的NVlink接口(第二通信接口的一种表现形式),作为第一处理器10的GPU(图形处理器,Graphics Processing Unit)中具有与NVlink总线适配的NVlink接口(第一通信接口的一种表现形式),因此为了能够使用NVlink总线进行点对点串列传输电信号,需要在数据交互模块20中增设NVlink接口。
在这里需要说明的一点是:数据交互模块20中增设的第二通信接口是在保留数据交互模块20已有通信接口(如PCIE接口)基础上增设的,该已有通信接口对应的通信总线与第一类型通信总线的类型不同,如图2所示。例如现有数据交互模块20与第一处理器10之间采用PCIE(Peripheral Component Interconnect Express)总线传输电信号,这就意味着数据交互模块20中具有一PCIE接口,那么在增设第二通信接口时可以保留数据交互模块20中的PCIE接口,以使得数据交互模块20和第一处理器10之间能够基于第一类型通信总线和PCIE总线传输电信号,这样数据交互模块20和第一处理器10就可以根据实际应用选取第一类型通信总线或PCIE总线。
或者数据交互模块20是在去掉一个已有通信接口基础上增设第二通信接口,例如数据交互模块20去掉PCIE接口基础上增设第二通信接口,这种方式虽然会减少第一处理器10和数据交互模块20之间的通信总线的类型,但是会减小服务器的体积。
如果第一处理器10和数据交互模块20之间通过第一类型通信总线传输电信号,服务器还可以包括一个与第一类型通信总线匹配的交换器,如图3所示,该交换器40包括多个与第一类型通信总线匹配的通信接口401,第一处理器10和数据交互模块20与交换器40的连接方式是:第一处理器10中的第一通信接口101与交换器40中的一个通信接口401连接,数据交互模块20中的第二通信接口201与交换器40中剩余的一个通信接口401连接。
下面以第一类型通信总线为NVlink总线为例进行说明,在第一处理器10和数据交互模块20采用NVlink总线传输电信号的情况下,服务器包括6个第一NVswitch交换器和6个第二NVswitch交换器,如图4所示。
每个NVswitch交换器包括18个NVlink接口,每个NVswitch交换器中的18个NVlink接口中8个NVlink接口分别连接服务器中的一个第一处理器,8个NVlink接口分别连接另一个NVswitch交换器的一个NVlink接口,每个NVswitch交换器剩余的两个NVlink接口作为备用,那么图4所示服务器中总共有32个备用的NVlink接口。那么数据交互模块20的第二通信接口则可以与备用的32个NVlink接口中的至少一个连接,以使得第一处理器10和数据交互模块20之间能够借助于NVlink总线传输电信号。
若每个NVswitch交换器的8个NVlink接口没有都连接第一处理器,则数据交互模块20的第二通信接口也可以与从每个NVswitch交换器的8个NVlink接口中没有连接第一处理器的NVlink接口连接。需要说明的一点是:图4是服务器的一种实例图,在实际应用中服务器包括的第一NVswitch交换器和第二NVswitch交换器的个数可以基于实际应用变化,对此本实施例不再一一列举。
此外随着运算数据量的不断攀升,服务器之间交互的数据量增大,但因第一处理器10和数据交互模块20之间的通信总线的带宽限制,使得第一处理器10和数据交互模块20之间的通信效率降低,为此本实施例中第一类型通信总线以直流耦合形式传输电信号,在采用直流耦合形式传输电信号时,第一类型通信总线对于信号采样和传输均衡要求降低,使得第一类型通信总线可以以更高速的总线时钟传输电信号,从而增大第一类型通信总线的数据传输速率,这样单位时间第一类型通信总线传输的数据量增多,相当于增大第一处理器10和数据交互模块20之间的通信带宽,以适用目前数据量增大的要求。在服务器内部通信带宽增大的基础上为服务器之间的通信带宽的增大提供基础条件,这样服务器之间也可以采用更大的通信带宽传输电信号,以满足服务器之间交互的数据量增大的需求。
除了通过直流耦合形式传输电信号来增大数据传输速率之外,本实施例还可以采用其他方式来增大数据传输速率,例如第一处理器10和数据交互模块20中的至少一个设备,具体用于获得至少两个待发送数据块,控制至少两个待发送数据块复用第一包头,基于至少两个待发送数据块和第一包头,得到待发送数据,并将待发送数据转换成电信号。
其中基于至少两个待发送数据块和第一包头,得到待发送数据的方式可以是:将至少两个待发送数据包和第一包头组成待发送数据,因为组成待发送数据的待发送数据块共有一个第一包头,所以在实际应用中可以在待发送数据中填充更多共用同一个包头的待发送数据块,相对于每个待发送数据块对应一个包头来说,减少包头的数量,这样用于传输包头的带宽就可以改为传输待发送数据块,使得相同带宽内传输的待发送数据块的数量增多,从而使得相同带宽内传输的数据量增多,数据传输速率得到提升。
又例如,第一处理器10和数据交互模块20中的至少一个设备,具体用于获得第一类型通信总线传输的电信号对应数据的纠错率和/或数据传输速率,基于纠错率和/或数据传输速率,调整第一类型通信总线传输的电信号对应数据中的校验位的长度,从而能够基于纠错率和\或数据传输速率动态调整校验位的长度。
例如如果第一类型通信总线传输的电信号对应数据的数据传输速率较低,就可以缩短校验位的长度,以留出更多的数据位来传输数据;如果第一类型通信总线传输的电信号对应数据的数据传输速率较高,就可以增大校验位的长度,以留出更多的数据位来校验位提高校验准确度;如果第一类型通信总线传输的电信号对应数据的纠错率较低,也可以缩短校验位的长度;如果第一类型通信总线传输的电信号对应数据的纠错率较高,则需要增大校验位的长度。
当然在本实施例中还可以同时结合纠错率和数据传输速率来调整校验位的长度,以能够在均衡纠错率和数据传输速率的情况下得到一个匹配的校验位的长度。
从上述技术方案可知,服务器包括第一处理器和数据交互模块,第一处理器设置有第一通信接口,在数据交互模块中增设一个与第一通信接口匹配的第二通信接口,且第一通信接口和第二通信接口之间连接有第一类型通信总线,其中第一类型通信总线以点对点串列方式在第一处理器和数据交互模块之间传输电信号,由此将服务器中第一处理器和数据交互模块之间的传输方式改为点对点串列,且为了能够采用点对点串列方式传输需要在数据交互模块中增设一个第二通信接口,相对于现有技术来说,提供一种新的服务器架构以适用于点对点串列传输方式。
请参阅图5,其示出了本申请实施例提供的另一种服务器的结构,在图1基础上还可以包括:第二处理器50,第二处理器50的类型与第一处理器10的类型不同。
其中第二处理器50设置有第二通信接口201,且第二处理器50的第二通信接口和第一通信接口之间连接有第一类型通信总线30,这样第二处理器50和第一处理器10之间也能够采用点对点串列方式传输电信号。
在本实施例中,为了能够使用点对点串列方式在第一处理器10和第二处理器50之间传输电信号,第二处理器50中的第二通信接口201是增设在第二处理器50中的一个通信接口,以使第二处理器50能够使用连接第一类型通信总线30。第二处理器50增设第二通信接口的一种方式是:在保留第二处理器50已有通信接口基础上增设,或者在去掉一个已有通信接口基础上增设第二通信接口,具体请参阅上述实施例中的说明,对此本实施例不再阐述。
下面仍以第一类型通信总线为NVlink总线为例进行说明,第一处理器10和数据交互模块20采用NVlink总线传输电信号,且第一处理器10和第二处理器50也采用NVlink总线传输电信号,基于此服务器的一种实例图如图6所示,相对于图4所示实例图来说,服务器也包括6个第一NVswitch交换器和6个第二NVswitch交换器,每个NVswitch交换器包括18个NVlink接口,每个NVswitch交换器中的18个NVlink接口中8个NVlink接口分别连接服务器中的一个第一处理器,8个NVlink接口分别连接另一个NVswitch交换器的一个NVlink接口,剩余的两个NVlink接口作为备用,那么图5所示服务器中也总共有32个备用的NVlink接口。
但是与图4所示服务器不同之处在于:数据交互模块20的第二通信接口和第二处理器50的第二通信接口分别与备用的32个NVlink接口中的不同接口连接,以使得第一处理器10和数据交互模块20之间以及第一处理器10和第二处理器50之间能够借助于NVlink总线传输电信号。
若每个NVswitch交换器的8个NVlink接口没有都连接第一处理器,则数据交互模块20的第二通信接口也可以与这8个NVlink接口中没有连接第一处理器的NVlink接口连接。
若每个NVswitch交换器的8个NVlink接口没有都连接第一处理器,则数据交互模块20的第二通信接口和第二处理器50的第二通信接口也可以与从每个NVswitch交换器的8个NVlink接口中没有连接第一处理器的NVlink接口连接。需要说明的一点是:图6是服务器的一种实例图,在实际应用中服务器包括的第一NVswitch交换器和第二NVswitch交换器的个数可以基于实际应用变化,对此本实施例不再一一列举。
从上述技术方案可知,服务器的第二处理器和第一处理器之间也连接有第一类型通信总线,使得第二处理器和第一处理器之间的传输方式改变点对点串列,且为了能够采用点对点串列方式传输需要在第二处理器中增设一个第二通信接口,相对于现有技术来说,提供一种新的服务器架构以适用于点对点串列传输方式。
第二处理器50在通过第一类型通信总线传输电信号时,其也可以采用第一处理器10相同的方式得到电信号对应的待发送数据,例如第二处理器50具体用于获得至少两个待发送数据块,控制至少两个待发送数据块复用第一包头,基于至少两个待发送数据块和第一包头,得到待发送数据,并将待发送数据转换成电信号,或者第二处理器50具体用于获得第一类型通信总线传输的电信号对应数据的纠错率和/或数据传输速率,基于纠错率和/或数据传输速率,调整第一类型通信总线传输的电信号对应数据中的校验位的长度,从而能够基于纠错率和\或数据传输速率动态调整校验位的长度。具体说明请参阅上述实施例,对此本实施例不再阐述。
请参阅图7,其示出了本申请实施例提供的再一种服务器的结构示意图,在上述图1基础上,数据交互模块20还设置有第三通信接口202,第三通信接口202通过第二类型通信总线60与另一个服务器中的数据交互模块进行通信,其中第二类型通信总线60以点对点方式在数据交互模块和另一个服务器中的数据交互模块之间传输电信号。
在本实施例中,第二类型通信总线和第一类型通信总线是不同类型的通信总线,使得服务器的内部和服务器的外部能够采用不同类型的通信总线进行通信,例如第二类型通信总线是通信性能优于第一类型通信总线的通信性能的总线,如第二类型通信总线的带宽大于第一类型通信总线的带宽,或者第二类型通信总线是以点对点并行方式传输电信号。当然第二类型通信总线和第一类型通信总线可以是相同类型但不同版本的通信总线,如第二类型通信总线是第一类型通信总线的升级版本。
例如服务器中数据交互模块20的第二通信接口为NVlink接口,第三通信接口为以太网接口,相对应的第一类型通信总线为NVlink总线,第二类型通信总线为以太网总线,使得服务器内部能够基于NVlink总线通信,而服务器外部(即服务器与服务器之间)能够基于以太网总线通信。在这里需要说明的一点是:在上述图5所示服务器中也可以在数据交互模块20中设置第三通信接口,对此本实施例不再详述。
在本实施例中,为了能够提高通信带宽,第二类型通信总线也可以直流耦合形式传输电信号,具体为何采用直流耦合形式传输电信号能够提高通信带宽请参阅上述实施例中的说明,对此本实施例不再阐述。
对于上述图1至图7所示服务器来说,数据交互模块20中增设第二通信接口,以匹配通过第一类型通信总线以点对点方式传输电信号,为此数据交互模块20中需要设置与第二通信接口或者说与第一类型通信总线的传输相匹配的控制器,如图8所示,在数据交互模块20中设置第一控制器203控制第二通信接口201的传输,设置第二控制器304控制第三通信接口202的传输,其控制过程如下:
第一控制器203,用于接口第二通信接口201上传输的第一电信号,并对第一电信号进行解析得到第一数据,将第一数据存储到存储器205的发送缓存区。其中存储器205可以是与数据交互模块20耦合通信的一个存储器,其可以位于数据交互模块20中也可以独立于数据交互模块20之外。第一控制器203在进行电信号解析时可以基于第一类型通信总线对应的总线协议,例如如果第一类型通信总线为NVlink总线,则第一控制器203可以是NVlink接口控制器,基于NVlink总线协议控制。
第二控制器204,用于从发送缓存区中获取第一数据,基于第一数据生成第二电信号,通过第三通信接口202向外发送第二电信号。其中第二控制器204在生成第二电信号之后需要在第三通信接口202连接的第二类型通信总线中有空闲状态的数据通道时,借助该空闲状态的数据通道向外发送。同样的第二控制器204也需要基于第二类型通信总线对应的总线协议进行控制,例如如果第二类型通信总线为以太网总线,则第二控制器204可以是以太网接口控制器,基于以太网总线协议控制。
第二控制器204,还用于接口第三通信接口202上传输的第三电信号,并对第三电信号进行解析得到第二数据,将第二数据存储到存储器205的接收缓存区。
第一控制器203,还用于从接收缓存区中获取第二数据,基于第二数据生成第四电信号,通过第二通信接口201向第一处理器发送第四电信号。例如通过第二通信接口201向服务器的内存发送,进而由第一处理器从服务器的内存中获取。
通过上述第一控制器203和第二控制器204的控制,能够将第一类型通信总线上传输的电信号对应的数据通过第二通信接口和第三通信接口向外发送,并将从外接收到的信号通过第一类型通信总线向服务器的内部传输。
请参阅图9,其示出了本申请实施例提供的一种服务器集群,该服务器集群至少包括第一服务器100和第二服务器200,第一服务器100的内部和第二服务器200的内部通过第一类型通信总线30传输电信号,第一服务器100和第二服务器200之间通过第二类型通信总线60传输电信号,其中第一类型通信总线以点对点串列方式传输电信号,以将现有服务器集群中各个服务器内部的传输改为点对点串列方式,提供一种新的服务器集群的架构。
为了能够以点对点串列方式传输电信号,本实施例中的第一服务器100和第二服务器200的结构可以采用图1至图7中任意一种服务器的结构,且第一服务器100和第二服务器200可以采用相同结构也可以采用不同结构,如第一服务器100采用图1所示结构,而第二服务器200采用图1所示结构,或者除图1之外的其他结构,当然第一服务器100也可以采用其他结构,对此本实施例不一一列举。
在本实施例中,第二类型通信总线和第一类型通信总线是不同类型的通信总线,使得服务器的内部和服务器的外部能够采用不同类型的通信总线进行通信,例如第二类型通信总线是通信性能优于第一类型通信总线的通信性能的总线,如第二类型通信总线的带宽大于第一类型通信总线的带宽,或者第二类型通信总线是以点对点并行方式传输电信号。当然第二类型通信总线和第一类型通信总线可以是相同类型但不同版本的通信总线,如第二类型通信总线是第一类型通信总线的升级版本。
请参阅图10,其示出了本申请实施例提供的一种通信方法的流程图,可以包括以下步骤:
1001:获得待发送数据。其中获得待发送数据包括但不限于如下两种方式:
第一种方式:获得至少两个待发送数据块;控制至少两个待发送数据块复用第一包头,并基于至少两个待发送数据块和第一包头,得到待发送数据。
其中基于至少两个待发送数据块和第一包头,得到待发送数据的方式可以是:将至少两个待发送数据包和第一包头组成待发送数据,因为组成待发送数据的待发送数据块共有一个第一包头,所以在实际应用中可以在待发送数据中填充更多共用同一个包头的待发送数据块,相对于每个待发送数据块对应一个包头来说,减少包头的数量,这样用于传输包头的带宽就可以改为传输待发送数据块,使得相同带宽内传输的待发送数据块的数量增多,从而使得相同带宽内传输的数据量增多,数据传输速率得到提升。
第二种方式:获得第一类型通信总线传输的电信号对应数据的纠错率和/或数据传输速率;基于纠错率和/或数据传输速率,调整第一类型通信总线传输的电信号对应数据中的校验位的长度;基于调整后的校验位的长度,得到待发送数据。
例如如果第一类型通信总线传输的电信号对应数据的数据传输速率较低,就可以缩短校验位的长度,以留出更多的数据位来传输数据;如果第一类型通信总线传输的电信号对应数据的数据传输速率较高,就可以增大校验位的长度,以留出更多的数据位来校验位提高校验准确度;如果第一类型通信总线传输的电信号对应数据的纠错率较低,也可以缩短校验位的长度;如果第一类型通信总线传输的电信号对应数据的纠错率较高,则需要增大校验位的长度。当然在本实施例中还可以同时结合纠错率和数据传输速率来调整校验位的长度,以能够在均衡纠错率和数据传输速率的情况下得到一个匹配的校验位的长度。
相对应的基于调整后的校验位的长度,得到待发送数据的方式可以是:基于调整后的校验位的长度获得待发送数据块对应的数据位和校验位对应的数据位,将待发送数据块填充至待发送数据块对应的数据位中,将校验位填充至校验位对应的数据位,以得到待发送数据。
1002:基于待发送数据生成电信号。
1003:通过第一类型通信总线传输电信号,其中第一类型通信总线以点对点串列方式传输电信号,由此基于待发送数据生成电信号时可以基于第一类型通信总线的总线协议生成电信号,具体本实施例不再详述。
此外本实施例中第一类型通信总线以直流耦合形式传输电信号,在采用直流耦合形式传输电信号时,第一类型通信总线对于信号采样和传输均衡要求降低,使得第一类型通信总线可以以更高速的总线时钟传输电信号,从而增大第一类型通信总线的数据传输速率,这样单位时间第一类型通信总线传输的数据量增多。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (9)
1.一种服务器,所述服务器包括:
第一处理器,所述第一处理器设置有第一通信接口;
数据交互模块,所述数据交互模块设置有与所述第一通信接口匹配的第二通信接口,且所述第一通信接口和所述第二通信接口之间连接有第一类型通信总线;位于所述服务器中的第一处理器和所述数据交互模块之间通过所述第一类型通信总线以点对点串列方式以及直流耦合方式传输电信号;所述第一类型通信总线为NVlink总线;
所述服务器还包括:第二处理器,所述第二处理器的类型与所述第一处理器的类型不同;所述第二处理器设置有所述第二通信接口,且所述第二处理器的第二通信接口和所述第一通信接口之间连接有所述第一类型通信总线。
2.根据权利要求1所述的服务器,所述数据交互模块设置有第三通信接口,所述第三通信接口通过第二类型通信总线与另一个服务器中的数据交互模块进行通信,所述第二类型通信总线以点对点方式在所述数据交互模块和所述另一个服务器中的数据交互模块之间传输电信号。
3.根据权利要求1所述的服务器,所述数据交互模块包括:所述第二通信接口、第一控制器、存储器、第二控制器和第三通信接口;
所述第一控制器,用于接收所述第二通信接口上传输的第一电信号,并对所述第一电信号进行解析得到第一数据,将所述第一数据存储到所述存储器的发送缓存区;
所述第二控制器,用于从所述发送缓存区中获取所述第一数据,基于所述第一数据生成第二电信号,通过所述第三通信接口向外发送所述第二电信号;
所述第二控制器,还用于接收所述第三通信接口上传输的第三电信号,并对所述第三电信号进行解析得到第二数据,将所述第二数据存储到所述存储器的接收缓存区;
所述第一控制器,还用于从所述接收缓存区中获取所述第二数据,基于所述第二数据生成第四电信号,通过所述第二通信接口向所述第一处理器发送所述第四电信号。
4.根据权利要求1所述的服务器,所述第一处理器和所述数据交互模块中的至少一个设备,具体用于获得至少两个待发送数据块,控制所述至少两个待发送数据块复用第一包头,基于所述至少两个待发送数据块和所述第一包头,得到待发送数据,并将所述待发送数据转换成电信号。
5.根据权利要求1所述的服务器,所述第一处理器和所述数据交互模块中的至少一个设备,具体用于获得所述第一类型通信总线传输的电信号对应数据的纠错率和/或数据传输速率,基于所述纠错率和/或数据传输速率,调整所述第一类型通信总线传输的电信号对应数据中的校验位的长度。
6.一种服务器集群,所述服务器集群至少包括第一服务器和第二服务器,所述第一服务器的内部和所述第二服务器的内部通过第一类型通信总线传输电信号,所述第一服务器和所述第二服务器之间通过第二类型通信总线传输电信号;
所述第一服务器的内部和所述第二服务器的内部通过第一类型通信总线传输电信号包括位于所述第一服务器中的第一处理器和数据交互模块之间通过所述第一类型通信总线以点对点串列方式传输电信号,位于所述第二服务器中的第一处理器和数据交互模块之间通过所述第一类型通信总线以点对点串列方式以及直流耦合方式传输电信号;所述第一类型通信总线为NVlink总线;所述第一服务器和所述第二服务器还包括:第二处理器,所述第二处理器的类型与所述第一处理器的类型不同;所述第二处理器设置有第二通信接口,且所述第二处理器的第二通信接口和所述第一处理器的第一通信接口之间连接有所述第一类型通信总线。
7.一种通信方法,所述方法包括:
获得待发送数据;
基于所述待发送数据生成电信号;
通过第一类型通信总线在位于服务器的第一处理器和数据交互模块之间以点对点串列方式以及直流耦合方式传输所述电信号;所述第一类型通信总线为NVlink总线;所述服务器还包括:第二处理器,所述第二处理器的类型与所述第一处理器的类型不同;所述第二处理器设置有第二通信接口,且所述第二处理器的第二通信接口和所述第一处理器的第一通信接口之间连接有所述第一类型通信总线。
8.根据权利要求7所述的方法,所述获得待发送数据包括:
获得至少两个待发送数据块;
控制所述至少两个待发送数据块复用第一包头;
基于所述至少两个待发送数据块和所述第一包头,得到所述待发送数据。
9.根据权利要求7所述的方法,所述获得待发送数据包括:
获得所述第一类型通信总线传输的电信号对应数据的纠错率和/或数据传输速率;
基于所述纠错率和/或数据传输速率,调整所述第一类型通信总线传输的电信号对应数据中的校验位的长度;
基于调整后的校验位的长度,得到所述待发送数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910584758.7A CN110166341B (zh) | 2019-07-01 | 2019-07-01 | 一种服务器、服务器集群及通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910584758.7A CN110166341B (zh) | 2019-07-01 | 2019-07-01 | 一种服务器、服务器集群及通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110166341A CN110166341A (zh) | 2019-08-23 |
CN110166341B true CN110166341B (zh) | 2021-08-17 |
Family
ID=67637352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910584758.7A Active CN110166341B (zh) | 2019-07-01 | 2019-07-01 | 一种服务器、服务器集群及通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110166341B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782569B (zh) * | 2020-06-30 | 2024-05-28 | 联想(北京)有限公司 | 一种电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424105A (zh) * | 2013-08-26 | 2015-03-18 | 华为技术有限公司 | 一种内存数据的读写处理方法和装置 |
CN204347834U (zh) * | 2014-12-30 | 2015-05-20 | 上海师范大学 | 一种基于fpga的服务器集群存储系统 |
CN105117170A (zh) * | 2015-08-24 | 2015-12-02 | 浪潮(北京)电子信息产业有限公司 | 一种计算机系统架构 |
CN109410117A (zh) * | 2018-11-05 | 2019-03-01 | 英业达科技有限公司 | 图形处理器系统 |
CN109828940A (zh) * | 2019-01-31 | 2019-05-31 | 郑州云海信息技术有限公司 | 一种智能网卡及数据处理系统和方法 |
CN109933552A (zh) * | 2019-02-27 | 2019-06-25 | 苏州浪潮智能科技有限公司 | 一种通用gpu节点装置及通用16gpu box装置 |
-
2019
- 2019-07-01 CN CN201910584758.7A patent/CN110166341B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424105A (zh) * | 2013-08-26 | 2015-03-18 | 华为技术有限公司 | 一种内存数据的读写处理方法和装置 |
CN204347834U (zh) * | 2014-12-30 | 2015-05-20 | 上海师范大学 | 一种基于fpga的服务器集群存储系统 |
CN105117170A (zh) * | 2015-08-24 | 2015-12-02 | 浪潮(北京)电子信息产业有限公司 | 一种计算机系统架构 |
CN109410117A (zh) * | 2018-11-05 | 2019-03-01 | 英业达科技有限公司 | 图形处理器系统 |
CN109828940A (zh) * | 2019-01-31 | 2019-05-31 | 郑州云海信息技术有限公司 | 一种智能网卡及数据处理系统和方法 |
CN109933552A (zh) * | 2019-02-27 | 2019-06-25 | 苏州浪潮智能科技有限公司 | 一种通用gpu节点装置及通用16gpu box装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110166341A (zh) | 2019-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109818886B (zh) | 一种配置均衡参数的方法及装置 | |
CN106959935B (zh) | 一种兼容i2c通信与ipmb通信的方法 | |
CA2880979C (en) | Usb 3.0 link layer timer adjustment to extend distance | |
CN109450606B (zh) | 数据传输管控方法及装置 | |
US20120297100A1 (en) | Storage system and data transmission method | |
CN101242284B (zh) | 基于spi总线的通信方法和网络设备 | |
CN103744811A (zh) | 一种串行数据传输系统及方法 | |
CN111050403A (zh) | 一种数据传输方法、装置及设备 | |
CN102546070A (zh) | 使用现有网络线缆来同步网络的方法和系统 | |
CN110166341B (zh) | 一种服务器、服务器集群及通信方法 | |
CN105591817B (zh) | 一种协商模式处理方法及智能网络设备 | |
KR20200030167A (ko) | 차량용 이더넷 제어기, 이를 포함하는 차량용 이더넷 네트워크 및 이를 이용한 can 통신 프로토콜과의 통신 방법 | |
CN102804653B (zh) | 可变比特率设备 | |
CN113726592B (zh) | 一种边缘服务器的传输延迟测试方法、系统及相关组件 | |
TW201321242A (zh) | 數位信號收發裝置、方法以及電動車系統 | |
CN109510750B (zh) | 一种电路板、服务器以及服务器网络 | |
CN1917519B (zh) | 高级数据链路控制协议串行数据的并行传输方法及其系统 | |
US7783784B1 (en) | Method and apparatus for adaptive selection of algorithms to load and spread traffic on an aggregation of network interface cards | |
US9344372B2 (en) | Up-converter for ethernet physical layer | |
CN114221870B (zh) | 用于服务器的带宽分配方法和装置 | |
CN112947151B (zh) | 基于车辆双can总线的高效滤波方法及装置 | |
EP4116835A1 (en) | Spread spectrum clock negotiation method, and peripheral component interconnect express device and system | |
KR20180057503A (ko) | 차량 네트워크에서 시간 동기화를 위한 통신 노드의 동작 방법 | |
CN110881005B (zh) | 控制器、调整包通信规则的方法及网络通信系统 | |
CN105391666A (zh) | 基于fsk调制解调的多业务总线传输系统及传输方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |