CN117938848A - 数据传输方法、传输通道分配方法、计算设备及管理设备 - Google Patents
数据传输方法、传输通道分配方法、计算设备及管理设备 Download PDFInfo
- Publication number
- CN117938848A CN117938848A CN202311695392.3A CN202311695392A CN117938848A CN 117938848 A CN117938848 A CN 117938848A CN 202311695392 A CN202311695392 A CN 202311695392A CN 117938848 A CN117938848 A CN 117938848A
- Authority
- CN
- China
- Prior art keywords
- computing device
- target
- storage space
- transmission channel
- cxl
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 371
- 238000000034 method Methods 0.000 title claims abstract description 127
- 238000004891 communication Methods 0.000 claims abstract description 43
- 230000015654 memory Effects 0.000 claims description 80
- 238000004590 computer program Methods 0.000 claims description 12
- 238000007726 management method Methods 0.000 description 125
- 230000008569 process Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 239000000835 fiber Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000013403 standard screening design Methods 0.000 description 3
- 239000000872 buffer Substances 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- 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
-
- 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/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/14—Session management
- H04L67/141—Setup of application sessions
-
- 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/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请公开了数据传输方法、传输通道分配方法、计算设备及管理设备,涉及计算机技术领域,能够提高数据传输效率,降低数据传输成本。方法包括:在第一计算设备需要向第二计算设备发送目标数据的情况下,第一计算设备确定目标存储空间的地址,目标存储空间为分配给第一计算设备和第二计算设备的目标传输通道;其中,包括目标存储空间的CXL存储设备与第一计算设备和第二计算设备均通信连接;基于目标存储空间的地址,将目标数据写入目标存储空间,以使第二计算设备能够从目标存储空间获取目标数据。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及数据传输方法、传输通道分配方法、计算设备及管理设备。
背景技术
随着科技的快速发展,从大数据到人工智能训练集群,以及面向高性能计算的集群的规模也逐步扩展。当集群中服务器的数量逐步增加时,服务器之间的数据传输的速度影响着集群的整体性能。
相关技术中,集群中的服务器之间通常通过服务器上安装的网卡进行数据传输,数据传输时需要走网络传输协议,并经过协议转换,整个过程较为复杂且容易造成时延。另外,在一些高性能数据传输场景中,需要使用专用网卡、交换机和网络,增加了服务器之间的数据传输成本。
发明内容
本申请实施例提供了数据传输方法、传输通道分配方法、计算设备及管理设备,能够提高数据传输效率,降低数据传输成本。
为实现上述技术目的,本申请实施例采用如下技术方案:
第一方面,本申请实施例提供了一种数据传输方法,方法包括:在第一计算设备需要向第二计算设备发送目标数据的情况下,第一计算设备确定目标存储空间的地址,目标存储空间为分配给第一计算设备和第二计算设备的目标传输通道;其中,包括目标存储空间的CXL存储设备与第一计算设备和第二计算设备均通信连接;基于目标存储空间的地址,将目标数据写入目标存储空间,以使第二计算设备能够从目标存储空间获取目标数据。
上述方法中,CXL存储设备与第一计算设备和第二计算设备之间通过物理链路连接,第一计算设备和第二计算设备通过CXL存储设备提供的存储空间进行数据传输时,不需要经过网络传输数据,不受限于网络传输速度和带宽,具有传输速度快、带宽高和延迟低的优点。另外,该方法也不需要较高配置的网卡和交换机,以及网络传输速度,因此,本申请实施例提出的方法能够降低网络使用成本和硬件配置成本。
在一种可能的实施方式中,第一计算设备和第二计算设备均与管理单元连接,管理单元用于管理一个或多个CXL存储设备的存储空间,在第一计算设备确定目标存储空间的地址之前,方法还包括:接收管理单元发送的数据传输通道表;数据传输通道表包括第一计算设备和第二计算设备之间的目标传输通道的信息;获取目标传输通道的信息;目标传输通道的信息包括目标存储空间的地址。
可以理解的是,第一计算设备需要向第二计算设备发送目标数据前,若作为该计算设备对的固定传输通道的目标存储空间已经分配好,第一计算设备需要获取到已经分配好的传输通道的信息,以进一步确定目标存储空间的地址。该过程通过可选的数据传输通道表来确定目标存储空间的地址,能够提高确定效率,进而加快数据传输进程。
在另一种可能的实施方式中,数据传输通道表中目标传输通道的信息包括:目标传输通道的标识、第一计算设备的标识、第二计算设备的标识、目标存储空间的地址和目标存储空间的存储容量;获取目标传输通道的信息,包括:根据第一计算设备的标识和第二计算设备的标识,从数据传输通道表确定目标传输通道的信息;第一计算设备确定为第一计算设备与第二计算设备分配的目标存储空间的地址,包括:从目标传输通道的信息中确定目标存储空间的地址。
可以理解的是,数据传输通道表中记录有为第一计算设备和第二计算设备分配的目标传输通道的信息,基于该两个计算设备的标识,能够快速确定目标传输通道的信息,进而确定目标存储空间的地址。
在另一种可能的实施方式中,第一计算设备和第二计算设备均与管理单元连接,管理单元用于管理一个或多个CXL存储设备的存储空间,第一计算设备确定目标存储空间的地址包括:向管理单元发送获取数据传输通道表的请求;数据传输通道表包括目标传输通道的信息;目标传输通道的信息包括目标存储空间的地址;接收数据传输通道表,根据数据传输通道表确定目标传输通道的信息;从目标传输通道的信息中确定目标存储空间的地址。
可以理解的是,第一计算设备还可以在需要向第二计算设备发送目标数据前,主动向管理单元发送获取数据传输通道表的请求,以此来获取目标传输通道的信息,进而进行数据传输。
第二方面,本申请实施例提供了一种数据传输方法,方法包括:在第一计算设备向第二计算设备发送目标数据的情况下,第二计算设备确定目标存储空间的地址,目标存储空间为分配给第一计算设备和第二计算设备的目标传输通道;其中,包括目标存储空间的CXL存储设备与第一计算设备和第二计算设备均通信连接;基于目标存储空间的地址,从目标存储空间获取目标数据。
可以理解的是,第二计算设备从目标存储空间获取第一计算设备发送的目标数据,该方法不需要依赖网络,能够避免网络时延带来的影响,提高第二计算设备所在的集群的业务处理性能。
在一种可能的实施方式中,在第一计算设备向第二计算设备发送目标数据的情况下,第二计算设备确定目标存储空间的地址之前,方法还包括:在接收到指示消息时,确定第一计算设备已向第二计算设备发送目标数据;指示消息用于指示第一计算设备已向第二计算设备发送了目标数据,指示消息由第一计算设备发送,或者,由CXL存储设备中的CXL控制器发送。
可以理解的是,通过指示消息,第二计算设备可以及时确认第一计算设备发送了目标数据,进而及时获取目标存储空间的目标数据,该方法能够提高数据传输效率,降低数据传输延迟。
第三方面,本申请实施例提供了一种传输通道分配方法,应用于管理单元,管理单元与集群中的多个计算设备均通信连接,管理单元用于管理一个或多个CXL存储设备构成的CXL存储空间,方法包括:获取集群的数据传输需求信息,数据传输需求信息包括:多个计算设备对的标识,多个计算设备对中每一个计算设备对的数据传输需求;根据目标计算设备对的数据传输需求,为目标计算设备对分配CXL存储空间中的目标存储空间;其中,目标计算设备对包括第一计算设备和第二计算设备,包括目标存储空间的CXL存储设备与第一计算设备和第二计算设备均连接,目标存储空间为分配给第一计算设备和第二计算设备的目标传输通道;向目标计算设备对发送目标通信关系条目;目标通信关系条目包括目标计算设备对的标识和目标传输通道的信息。
可以理解的是,本申请实施例提出的传输通道分配方法中,管理单元基于多个计算设备对的数据传输需求,预先从CXL存储空间的可用存储空间中分配出固定的存储空间,作为计算设备对之间的传输通道,每个通道分配好后即为固定传输通道,用于专属的两个计算设备之间进行数据传输。每个计算设备对都能够在固定的传输通道中传输数据,不需要占用其他计算设备的传输通道,在相关技术中,计算设备若与多个其他计算设备进行数据传输,只能通过网卡提供的一个传输通道,因此,本申请实施例提出的传输通道分配方法能够避免一个传输通道传输数据造成的排队等待问题,提高集群的整体数据传输性能。
在一种可能的实施方式中,为目标计算设备对分配CXL存储空间中的目标存储空间后,方法还包括:生成目标传输通道的信息;目标传输通道的信息包括:目标传输通道的标识、目标存储空间的地址和目标存储空间的存储容量。
可以理解的是,该过程中管理单元为用作传输通道的存储空间设置标识,便于管理该传输通道,后续若有多个传输通道,可以基于传输通道的标识来管理多个传输通道,避免混淆。
在另一种可能的实施方式中,生成目标传输通道的信息后,方法还包括:将目标计算设备对的标识和目标传输通道的信息对应记录在目标通信关系条目中;将目标通信关系条目储存在数据传输通道表中;向目标计算设备对发送目标通信关系条目,包括:向目标计算设备对发送数据传输通道表。
管理单元将包含传输通道的信息的多个通信关系条目记录在数据传输通道表,便于管理单元管理多个通信关系条目,避免混淆。另外,管理单元将数据传输通道表发送至多个计算设备,能够使得多个计算设备快速获取为其分配的传输通道的信息,提高数据传输效率。
第四方面,本申请实施例提供一种计算设备,其中,计算设备应用于第一方面或第一方面中任一种可能的实现方式的数据传输方法的各个模块,或者,计算设备应用于第二方面或第二方面中任一种可能的实现方式的数据传输方法的各个模块。
第五方面,本申请实施例提供一种管理设备,其中,管理设备应用于第三方面或第三方面中任一种可能的实现方式的传输通道分配方法的各个模块。
第六方面,本申请实施例提供一种计算设备,包括存储器和与存储器连接的至少一个处理器,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当计算机指令被至少一个处理器执行时,使得该计算设备执行如第一方面及其任一种可能的实现方式的数据传输方法;或者,当处理器执行该计算机指令时,使得该计算设备执行如第二方面及其任一种可能的实现方式的数据传输方法。
第七方面,本申请实施例提供一种管理设备,包括处理器,处理器与存储器耦合,存储器用于存储程序或指令,当程序或指令被处理器执行时,使得管理设备执行如第三方面及其任一种可能的实现方式的数据传输方法。
第八方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令。其中,当计算机指令在计算设备上运行时,使得该计算设备执行如第一方面或第二方面及其任一种可能的实现方式的数据传输方法;或者,当计算机指令在管理设备上运行时,使得该管理设备执行如第三方面及其任一种可能的实现方式的传输通道分配方法。
第九方面,本申请实施例提供一种计算机程序产品,该计算机程序产品包括计算机指令。其中,当计算机指令在计算设备上运行时,使得该计算设备执行如第一方面或第二方面及其任一种可能的实现方式的数据传输方法;或者,当计算机指令在管理设备上运行时,使得该管理设备执行如第三方面及其任一种可能的实现方式的传输通道分配方法。
本申请实施例中第四方面到第九方面及其各种实现方式的具体描述,可以参考第一方面、第二方面或第三方面及其各种实现方式中的详细描述;并且,第四方面到第九方面及其各种实现方式的有益效果,可以参考第一方面、第二方面或第三方面及其各种实现方式中的有益效果分析,此处不再赘述。
本申请实施例的这些方面或其他方面在以下的描述中会更加简明易懂。
附图说明
图1为本申请实施例提供的一种系统架构示意图;
图2为本申请实施例提供的另一种系统架构示意图;
图3为本申请实施例提供的一种数据传输方法的流程图;
图4为本申请实施例提供的另一种数据传输方法的流程图;
图5为本申请实施例提供的传输通道分配方法的流程图;
图6为本申请实施例提供的一种计算设备的结构示意图;
图7为本申请实施例提供的另一种计算设备的结构示意图;
图8为本申请实施例提供的一种管理设备的结构示意图;
图9为本申请实施例提供的一种设备的结构示意图。
具体实施方式
为了方便理解,以下先对本申请实施例中涉及的相关术语进行简单介绍:
(1)计算扩展连接(compute express link,CXL)技术是一种新型的高速互联技术,旨在提供更高的数据吞吐量和更低的延迟,以满足现代计算和存储系统的需求。
(2)CXL存储设备:基于CXL技术构建的存储设备,具有无限扩容的特点,能够满足数据中心资源共享、内存池化和高效运算调度的需求。
以下,术语“第一”、“第二”和“第三”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”或“第三”等的特征可以明示或者隐含地包括一个或者更多个该特征。
在本申请实施例的描述中,除非另有说明,“/”表示“或”的意思,例如,A/B可以表示A或B。本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。此外,“至少一个”是指一个或多个,“多个”是指两个或两个以上。
相关技术中,集群中的服务器之间进行数据传输时,主要通过服务器上安装的网卡,并通过网络来传输数据。由于该方法中数据传输是通过网络,因此,数据在传输时需要经过网络传输协议,并进行协议转换,整个过程较为复杂且容易造成数据传输时延。另外,若集群规模较大,服务器之间有大量的数据传输需求,这将对网卡的硬件规模具有一定的要求,同时需要高配置的交换机以及较高的网络传输速度,这将增加集群中的服务器之间的数据传输成本。
基于此,本申请实施例提出了一种数据传输方法、传输通道分配方法,该数据传输方法中,第一计算设备若需要向第二计算设备发送目标数据,确定目标存储空间的地址,其中,数据传输通道表包括与第一计算设备和第二计算设备对应的目标存储空间的地址,通过在目标存储空间中存储目标数据,第二计算设备从该目标存储空间中获取目标数据,从而实现将目标数据发送给第二计算设备。
可以理解的是,该方法中,目标存储空间所属的CXL存储设备与第一计算设备和第二计算设备之间通过物理链路连接,第一计算设备和第二计算设备通过CXL存储设备提供的存储空间进行数据传输时,不需要经过网络传输数据,不受限于网络传输速度和带宽,具有传输速度快、带宽高和延迟低的优点。另外,该方法也不需要较高配置的网卡和交换机,以及网络传输速度,因此,本申请实施例提出的方法能够降低网络使用成本和硬件配置成本。
下面将结合附图对本申请实施例的实施方式进行详细描述。
请参考图1,其示出本申请实施例提供的数据传输方法、传输通道分配方法所涉及的一种系统架构示意图。如图1所示,该系统架构可以包括:多个计算设备110,CXL存储设备120和CXL连接设备130。
多个计算设备110为集群中的计算设备,多个计算设备110均通过CXL连接设备130与CXL存储设备120通信连接。
在一种实施方式中,每个计算设备110均通过CXL连接设备130接入CXL存储设备120的PCIE接口进行通信连接。每个计算设备110与CXL存储设备120通过CXL协议通信,例如,输入/输出协议(CXL.io),访问缓存协议(CXL.cache)和访问内存协议(CXL.mem)。
计算设备110,具有数据处理、逻辑运算以及存储功能的计算设备。例如,计算设备110可以包括如:服务器、平板电脑、桌面型电脑、膝上型电脑、笔记本电脑、计算节点或上网本等计算设备。其中,服务器可以是机架式服务器、刀片式服务器或塔式服务器等不同类型的服务器。服务器可以包括一个计算节点或多个计算节点,每个计算节点包括至少一个CPU,当服务器包括多个计算节点时,多个计算节点中的多个CPU共用一套操作系统。
CXL存储设备120,用于提供存储空间,用作多个计算设备110中任意两个计算设备之间的传输通道。本申请实施例所示的系统架构中可以包括一个CXL存储设备120,或者,包括多个CXL存储设备120,一个或多个存储设备120提供的存储空间构成CXL存储空间,也可以称为CXL存储池,由管理单元统一管理。
CXL存储设备120,可以包括CXL控制器121和存储器122。
其中,CXL控制器121用于接收任意计算设备110发送的将数据写入存储器122提供的存储空间的请求,或者,从存储器122提供的存储空间读取数据的请求,以实现CXL存储设备120的存储空间作为传输通道的功能。
示例性的,CXL控制器121可以是集成在CXL存储设备120中的控制芯片,该控制芯片又可以称为内存扩展(CXL memory expander)芯片、CXL内存控制器(CXL memoryexpander controller)或CXL内存池化(CXL memory expander pooling)芯片。
存储器122,为CXL存储设备120中提供存储空间的实际物理载体,能够提供存储空间作为任意两个计算设备110之间的传输通道。
示例性的,存储器122可以包括双列直插内存模块(dual inline memory module,DIMM)、动态随机存取存储器(dynamic random access memory,DRAM)、同步动态随机存储器(synchronous dynamic random access memory,SDRAM)、固态硬盘(solid state disk,SSD)、或持久内存(persistent memory,PMEM)。
本申请实施例中,上述存储器122的数量可以是一个或多个,当存储器为一个时,存储器可以是DIMM,也可以是SSD,当存储器122为多个时,多个存储器122可以均为DIMM,或多个存储器122可以均为SSD,或者多个存储器122一部分为DIMM,一部分为SSD。
当然,在其他实施例中,当存储器122为一个时,存储器122还可以是SDRAM或PMEM等其他类型的存储器。当存储器122的数量为多个时,多个存储器122可以均为SDRAM或PMEM等其他类型的存储器,或者多个存储器122包括SDRAM、PMEM、DIMM或SSD中的至少两种。上述灵活的实现方式和部署方式可以使得CXL存储设备120兼容更多介质类型的存储器,本申请实施例对存储器的介质类型、数量和部署方式等不做限定。
CXL连接设备130,能够提供扩展接口,使得多个计算设备110与CXL存储设备120连接起来。CXL连接设备130可以独立设置,也可以集成在任意一个计算设备110上,或者集成在CXL存储设备120上。
示例性的,当CXL连接设备130独立设置时,CXL连接设备130可以是CXL交换机(Switch),CXL交换机包括CXL交换芯片;或者CXL连接设备130可以是多头的CXL内存扩展卡(multi head single logic device,MH-SLD)。当CXL连接设备130是多头的CXL内存扩展卡的情况下,CXL连接设备130可以集成在CXL存储设备120上,多头的CXL内存扩展卡可以作为CXL存储设备120的CXL控制器,多头的CXL内存扩展卡可以与多个计算设备分别连接。当CXL存储设备的数量为一个的情况下,一个CXL存储设备的多头的CXL内存扩展卡分别与多个计算设备连接。当CXL存储设备的数量为多个的情况下,每个CXL存储设备的多头的CXL内存扩展卡分别与多个计算设备连接中的至少两个计算设备连接,每个CXL存储设备连接的计算设备可以相同。
当CXL连接设备130集成在计算设备上时,CXL连接设备130可以是CXL交换机(Switch)、CXL交换机(Switch)芯片或多头的CXL内存扩展卡。其中,CXL Switch除了具有扩展功能外,还具有处理器,具有处理功能,例如能够运行管理单元(fabric manager,FM)。
在其他一些实施例中,CXL连接设备130的数量可以是一个或多个,多个CXL连接设备130可以连接多个CXL存储设备120。
在其他一些实施例中,如图2所示,图2示出多个CXL连接设备130分别与多个CXL存储设备120连接,图2还包括管理设备140,运行有FM。从图2可以看出,多个计算设备110分别通过CXL连接设备130与部分CXL存储设备120连接。本申请实施例对系统中的CXL存储设备120、CXL连接设备130、计算设备110的数量以及连接方式不做限定。
FM,一种管理一个或多个CXL存储设备120提供的CXL存储空间的进程,能够基于多个计算设备110的数据传输需求,将CXL存储空间分为多个子存储空间,每个子存储空间作为一个传输通道分配给有数据传输需求的两个计算设备。
一些实施方式中,以集群中的多个计算设备110中的第一计算设备和第二计算设备为例进行说明,FM基于第一计算设备和第二计算设备的数据传输需求,为第一计算设备和第二计算设备分配目标存储空间,目标存储空间用于第一计算设备和第二计算设备之间的目标传输通道。FM将分配好的目标传输通道的信息、第一计算设备的标识和第二计算设备的标识分别发送至第一计算设备和第二计算设备,其中,目标传输通道的信息包括目标传输通道的标识、目标存储空间的地址和目标存储空间的容量。
另一些实施方式中,FM将分配好的多个传输通道的信息记录在数据传输通道表中,并将数据传输通道表发送至多个计算设备110,以使得计算设备110基于数据传输通道表,确定各自的传输通道的信息,以进行数据传输。
本申请实施例中,FM可以运行在任意计算设备110的CPU或基板管理控制器(baseboard management controller,BMC)中,也可以运行在CXL连接设备130的处理器中,或者,FM也可以运行在一个独立设备的CPU、BMC、或控制器中,本申请实施例对FM的具体运行位置不做限定。
需要说明的是,不同计算设备对BMC有不同的称呼,例如一些计算设备称为BMC,一些计算设备称为iLO(integrated lights-out),另一些计算设备称为集成戴尔远程控制卡(integrated dell remote access controller,iDRAC)。不论是叫BMC,还是叫iLO或iDRAC,都可以理解为是本发明实施例中的BMC。
一些实施方式中,FM若运行在多个计算设备110中的任意一个计算设备110上,其他计算设备110可以通过网络和/或者485链路(使用RS-485串行总线标准的链路)等方式与运行FM的计算设备通信连接。CXL连接设备130通过总线(例如UART,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)集成电路总线(inter-integrated circuit,IIC)或系统管理总线(system management bus,SMBus))分别连接多个计算设备110和CXL存储设备120。
另一些实施方式中,FM若运行在CXL连接设备130中,CXL连接设备130通过总线(例如UART、IIC或SMBUS总线)分别连接多个计算设备110和CXL存储设备120。
在一种应用场景中,多个计算设备110包括第一计算设备和第二计算设备,第一计算设备和第二计算设备具有数据传输需求,FM基于第一计算设备和第二计算设备的数据传输需求,从CXL存储空间中划分一部分存储空间(目标存储空间),作为第一计算设备和第二计算设备之间的数据传输通道。第一计算设备在获取传输通道的信息后,将需要发送的目标数据写入所分配的目标存储空间中,第二计算设备从目标存储空间中获取目标数据,并向第一计算设备发送获取目标数据的响应消息,此时,第一计算设备和第二计算设备完成数据传输。
下文对本申请实施例提供的数据传输方法、传输通道分配方法进行说明:
请参考图3,为本申请实施例提供的一种数据传输方法的流程图,该方法可以应用于集群中的第一计算设备和第二计算设备,其中,第一计算设备和第二计算设备均为集群中的多个计算设备中的任意两个计算设备,管理单元与多个计算设备均通信连接。上述管理单元可以是图1中的FM,第一计算设备和第二计算设备为图1中的计算设备110中任意两个计算设备。如图3所示,以下为数据传输方法中的第一部分,第一计算设备发送目标数据的过程,可以包括S101-S102。
S101:在第一计算设备需要向第二计算设备发送目标数据的情况下,第一计算设备确定目标存储空间的地址,目标存储空间为分配给第一计算设备和第二计算设备的目标传输通道。
目标数据,可以是第一计算设备处理的业务数据,例如文字、图像、音频或视频等数据。
在一些应用场景中,第一计算设备在处理上层客户端中的应用程序下发的任务的过程中,具有向第二计算设备发送目标数据的需求,也就是第一计算设备需要向第二计算设备发送目标数据的情况。
管理单元管理的一个或多个CXL存储设备提供的存储空间称为CXL存储空间,目标存储空间为CXL存储空间中的部分存储空间,目标存储空间与第一计算设备和第二计算设备均连接。目标存储空间用作第一计算设备与第二计算设备之间的数据传输空间,也称为目标传输通道。
在一种实施方式中,在第一计算设备需要向第二计算设备发送目标数据的情况下,第一计算设备确定为第一计算设备和第二计算设备分配的目标存储空间的地址之前,第一计算设备获取目标传输通道的信息,目标传输通道的信息包括:目标传输通道的标识、目标存储空间的地址和目标存储空间的存储容量。
具体的,第一计算设备接收管理单元发送的数据传输通道表,数据传输通道表包括第一计算设备和第二计算设备之间的目标数据传输通道的信息,第一计算设备从数据传输通道表中获取目标传输通道的信息。
在一种实施方式中,数据传输通道表通过通信关系条目来记录传输通道的信息,通信关系条目中记录了CXL存储空间中已分配出去作为传输通道的存储空间的信息,通信关系条目中包括:计算设备对的标识和传输通道的信息,传输通道的信息包括传输通道的标识、存储空间的地址和存储空间的存储容量。
上述计算设备对的标识包括:需要进行数据传输的两端计算设备的标识,例如,第一计算设备和第二计算设备之间需要进行数据传输,第一计算设备可以是通信的发送端或者是接收端,第二计算设备也可以是通信的发送端或者是接收端,该计算设备对的标识为第一计算设备的标识和第二计算设备的标识。
本申请实施例中将记录目标传输通道的通信关系条目称为目标通信关系条目,目标通信关系条目包括:目标计算设备的标识和目标传输通道的信息,目标计算设备的标识包括第一计算设备的标识和第二计算设备的标识,目标传输通道的信息包括目标传输通道的标识、目标存储空间的地址和目标存储空间的存储容量。
上述存储空间的地址可以是存储空间的物理地址,或者是存储空间的逻辑地址。若是存储空间的逻辑地址,管理单元还维护有存储空间的逻辑地址与物理地址的映射关系。
第一计算设备可以在S101之前,接收管理单元发送的数据传输通道表,或者,第一计算设备需要向与第二计算设备发送目标数据的情况下,向管理单元发送获取数据传输通道表的请求,以获取数据传输通道表。
示例性的,如表1所示,表1示出数据传输通道表,该数据传输通道表包括:传输通道的标识、计算设备对的标识、存储空间的地址和存储空间的存储容量,其中,计算设备对的标识包括需要进行数据传输的两端计算设备的标识。
表1
计算设备的标识可以是计算设备的编号、主机名、互联网协议(internetprotocol,IP)地址或设备地址(media access control address,MAC)地址等能够表示计算设备身份的信息。
在一种实施方式中,基于上述数据传输通道表,第一计算设备确定为第一计算设备与第二计算设备分配的目标存储空间的地址,具体可以包括两步,第一步,第一计算设备根据第一计算设备的标识和第二计算设备的标识,从数据传输通道表确定目标传输通道的信息;第二步,第一计算设备从目标传输通道的信息中确定目标存储空间的地址。
示例性的,如表1所示的数据传输通道表,第一计算设备的标识为“计算设备1”,第二计算设备的标识为“计算设备2”,第一计算设备基于该“计算设备1”和“计算设备2”确定目标传输通道的信息包含目标传输通道的标识为“1”、目标存储空间的地址为“Addr1”以及目标存储空间的存储容量为1G,进而从该目标传输通道的信息中确定出目标存储空间的地址为“Addr1”。
上述S101提出了基于数据传输通道表确定目标存储空间的地址的可选方法,数据传输通道表由管理单元管理,管理单元建立数据传输通道表的过程详见S201-S206。
第一计算设备需要向第二计算设备发送目标数据前,若作为该计算设备对的固定传输通道的目标存储空间已经分配好,第一计算设备需要获取到已经分配好的传输通道的信息,以进一步确定目标存储空间的地址。该过程通过可选的数据传输通道表来确定目标存储空间的地址,能够提高确定效率,进而加快数据传输进程。
S102:第一计算设备基于目标存储空间的地址,将目标数据写入目标存储空间,以使第二计算设备能够从目标存储空间读取目标数据。
一种实施方式中,第一计算设备向CXL存储设备的CXL控制器发送目标数据写入请求,目标数据写入请求用于请求CXL控制器将目标数据写入目标存储空间。CXL控制器接收该请求后,将目标数据写入目标存储空间。
可选的,第一计算设备还通过网络向第二计算设备发送指示消息,指示消息用于指示第一计算设备已向第二计算设备发送了目标数据。
可以理解的是,目标存储空间相当于缓存空间,能够缓存目标数据,CXL控制器将目标数据缓存在目标存储空间,以待第二计算设备从目标存储空间获取目标数据。
结合图3,如图4所示,图4包括数据传输方法中的第二部分,第二计算设备获取目标数据的过程,可以包括S103-S104。
S103:第二计算设备在第一计算设备向第二计算设备发送目标数据的情况下,确定目标存储空间的地址。
第二计算设备确定第一计算设备向第二计算设备发送目标数据,具体确定方法可以包括:第二计算设备接收到指示消息,指示消息用于指示第一计算设备已向第二计算设备发送了目标数据,指示消息可以由第一计算设备或CXL存储设备中的CXL控制器发送。
在一种实施方式中,第二计算设备在指示消息的指示下,在确定为第一计算设备与第二计算设备分配的目标存储空间的地址之前,先获取目标传输通道的信息,目标传输通道的信息包括目标存储空间的地址。
具体的,第二计算设备接收管理单元发送的数据传输通道表,数据传输通道表包括第一计算设备和第二计算设备之间的目标数据传输通道的信息,第二计算设备从数据传输通道表中获取目标传输通道的信息,第二计算设备从目标传输通道的信息中确定目标存储空间的地址。
第二计算设备所获取的数据传输通道表的详细描述请参考S101中第一计算设备获取的数据传输通道表。
在其他一些可选的实施方式中,第二计算设备在接收到管理单元发送的数据传输通道表后,周期性的查询目标存储空间中是否被写入数据,若查询到被写入数据,则对目标存储空间进行读操作,以获取目标数据。
可以理解的是,上述实施方式中,第二计算设备通过接收到的指示消息,可以及时确认第一计算设备发送了目标数据,进而及时获取目标存储空间的目标数据,该方法能够提高数据传输效率,降低数据传输延迟。
S104:第二计算设备基于目标存储空间的地址,从目标存储空间获取目标数据。
在一种实施方式中,第二计算设备向CXL存储设备的CXL控制器发送目标数据获取请求,其中,目标数据获取请求中携带目标存储空间的地址。CXL控制器接收该请求后,将目标存储空间中的目标数据发送至第二计算设备。
上述方法以第一计算设备向第二计算设备发送目标数据为例进行说明,第二计算设备也可以通过目标传输通道向第一计算设备发送目标数据。集群中的多个计算设备之间均可以通过上述数据传输方法进行数据传输。
本申请实施例提出了一种数据传输方法,该方法中,第一计算设备通过预先分配好的传输通道,即目标存储空间来与第二计算设备进行数据传输,该方法具有以下几个优点,首先,由于包括目标存储空间的CXL存储设备与第一计算设备和第二计算设备是通过物理链路连接,不需要经过网络传输数据,因此数据传输速率较高。其次,而该目标传输通道的容量是基于该计算设备对的数据传输需求预先确定好的,因此,目标存储空间提供的传输通道具有高带宽、低延迟的特点。另外,由于第一计算设备与第二计算设备不需要再通过网络进行数据传输,因此,第一计算设备和第二计算设备之间的数据传输不再依赖于网络传输速度,也就不需要再对网卡的硬件规格有较高要求,因此本申请实施例提出的方法能够降低网卡和网络的使用成本。
上述S103和S104为一种可能的实施方式,在另一种实施方式中,在S102后,CXL控制器自动将第一计算设备写入目标存储空间中的目标数据发送至第二计算设备。
如图5所示,以下提出一种传输通道分配方法的流程图,该方法应用于管理单元,例如图1中的FM,该方法包括S201-S206。
S201:管理单元获取集群的数据传输需求信息。
集群的数据传输需求信息包括:多个计算设备对的标识,多个计算设备对中每一个计算设备对的数据传输需求。
计算设备对,有数据传输需求的两个计算设备。示例性的,集群中的第一计算设备和第二计算设备之间有数据传输需求,则第一计算设备和第二计算设备为一个计算设备对。
计算设备对的数据传输需求包括:计算设备对需要传输的数据量,或者,计算设备对需要的传输通道的容量。示例性的,计算设备对需要传输的数据量为1G,或者,计算设备对需要的传输通道的容量为1G。
在一种实施方式中,管理单元接收用户输入的集群的数据传输需求信息,该数据传输需求信息包括:多个计算设备对的标识,以及每个计算设备对需要的传输通道的容量。
用户可以通过文件、命令行或管理单元连接的人机交互界面等方式,输入集群的数据传输需求信息。
示例性的,用户通过任意计算设备向管理单元所在的管理设备发送包含集群的数据传输需求信息的表格。
示例性的,管理单元所在的管理设备具有输入装置,用户通过输入装置在管理设备的操作系统中输入命令行,以配置集群的数据传输需求。
示例性的,管理单元所在的管理设备具有人机交互界面,用户通过人机交互界面,配置集群的数据传输需求。
在另一种实施方式中,管理单元中设置有默认的集群的数据传输需求信息,其中默认的计算设备对的标识为管理单元管理的一个或多个CXL存储设备所连接的计算设备的标识,传输通道的容量为预设好的默认值。
示例性的,如表2所示,表2示出管理单元获取到的集群的数据传输需求,表2包括:“一端计算设备的标识”、“另一端计算设备的标识”和“传输通道的容量”。其中,一端计算设备和另一端计算设备为一个计算设备对的标识,每行传输通道的容量为同一行计算设备对的数据传输需求。
表2
一端计算设备的标识 | 另一端计算设备的标识 | 传输通道的容量 |
计算设备1 | 计算设备2 | 1G |
计算设备1 | 计算设备3 | 2G |
计算设备1 | 计算设备4 | 1G |
计算设备2 | 计算设备3 | 2G |
计算设备2 | 计算设备4 | 3G |
S202:管理单元根据目标计算设备对的数据传输需求,为目标计算设备对分配CXL存储空间中的目标存储空间。
目标计算设备对为集群的数据传输需求信息中多个计算设备对中任意一个计算设备对,例如第一计算设备和第二计算设备。
CXL存储空间为一个或多个CXL存储设备的存储空间,构成CXL存储空间的CXL存储设备中包括目标CXL存储设备,目标CXL存储设备为与第一计算设备和第二计算设备均连接的CXL存储设备目标CXL存储设备的数量可以为一个或多个。
目标存储空间是CXL存储空间中的目标CXL存储设备的可用存储空间中的至少部分存储空间,目标存储空间用于分配给第一计算设备和第二计算设备作为目标传输通道。
示例性的,目标计算设备对包括第一计算设备和第二计算设备,第一计算设备的标识为“计算设备1”,第二计算设备的标识为“计算设备2”,如表2所示,管理单元基于“计算设备1”和“计算设备2”需要的传输通道的容量“1G”,从与“计算设备1”和“计算设备2”连接的CXL存储设备的CXL存储空间中,分配出“1G”可用存储空间作为目标存储空间,用于作为目标传输通道。
管理单元在获取到目标计算设备对,例如第一计算设备和第二计算设备的数据传输需求后,为该目标计算设备对分配CXL存储空间中的目标存储空间的具体过程包括:S202a-S202c。
S202a:管理单元确定CXL存储空间中的目标存储设备。
具体的,目标CXL存储设备为与第一计算设备和目标计算设备均连接的一个或多个CXL存储设备。
在一种实施方式中,管理单元管理的CXL存储空间由多个CXL存储设备构成,多个CXL存储设备分别与集群中的多个计算设备连接。管理单元需要从多个CXL存储设备中确定与第一计算设备和第二计算设备连接的CXL存储设备作为目标存储设备。
示例性的,如表3所示,表3示出管理单元管理的多个CXL存储设备,以及每个CXL存储设备所连接的计算设备。表3包括:“CXL存储设备的标识”和“CXL存储设备所连接的计算设备的标识”。
表3
CXL存储设备的标识 | CXL存储设备所连接的计算设备的标识 |
CXL存储设备1 | 计算设备1,计算设备2,计算设备3,计算设备4 |
CXL存储设备2 | 计算设备2,计算设备3,计算设备4 |
CXL存储设备3 | 计算设备3,计算设备4 |
若第一计算设备的标识为“计算设备1”,第二计算设备的标识为“计算设备2”,从上述表3可以看出,分别与计算设备1和计算设备2连接的CXL存储设备为“CXL存储设备1”,则管理单元确定CXL存储空间由CXL存储设备1提供。
S202b:管理单元确定目标CXL存储设备中的可用存储空间。
可用存储空间为目标CXL存储设备中未被分配的存储空间。
在一种实施方式中,管理单元管理有CXL存储空间的分配状态,分配状态包括已分配的存储空间和未分配的存储空间,管理单元基于CXL存储空间的分配状态,确定CXL存储空间的可用存储空间。
示例性的,管理单元管理的目标存储设备的分配状态如表4所示,表4包括:“分配状态”、“地址”和“存储容量”。
表4
从表4所示的目标存储设备的存储空间的分配状态可以看出,未被分配的存储空间的地址为Addr3,存储容量为20G,则管理单元确定可用存储空间为该地址“Addr3”、存储容量为“20G”的存储空间。
S202c:管理单元从目标CXL存储设备的可用存储空间中确定分配给第一计算设备和第二计算设备的目标存储空间。
示例性的,若第一计算设备和第二计算设备需要的传输通道的容量为1G,管理单元从表4所示的地址为“Addr3”、存储容量为“20G”的可用存储空间中确定出地址为“Addr3-1”、存储容量为“1G”的目标存储空间,用作第一计算设备和第二计算设备的目标传输通道。此时,未分配的存储空间为Addr3-2,存储容量为19G,表4中CXL存储空间的分配状态可以对应更新为如表5所示的CXL存储空间的分配状态。
表5
管理单元基于目标计算设备对的数据传输需求,为其分配满足需求的存储空间,该方法即能满足该目标计算设备对的需求,又能避免存储空间的资源浪费。
S203:管理单元生成目标传输通道的信息。
其中,目标传输通道的信息包括:目标传输通道的标识、目标存储空间的地址和目标存储空间的存储容量。
传输通道的标识是管理单元为用作传输通道的存储空间设置的标识,例如该标识可以是:数字、字符串或其他符号等。
示例性的,管理单元为“1G”的目标存储空间设置的传输通道的标识为“1”。
示例性的,管理单元为“计算设备1”和“计算设备2”分配了存储容量为1G的目标存储空间,管理单元为该1G的目标存储空间设置的目标传输通道的标识为“1”。
该过程中管理单元为用作传输通道的存储空间设置标识,便于管理该传输通道,后续若有多个传输通道,可以基于传输通道的标识来管理多个传输通道,避免混淆。
S204:管理单元将目标计算设备对的标识和目标传输通道的信息对应记录在目标通信关系条目中,管理单元将目标通信关系条目储存在数据传输通道表中。
示例性的,管理单元为“计算设备1”和“计算设备2”分配了存储容量为1G的存储空间,该存储空间的地址为Addr1,管理单元为该1G的存储空间设置的标识为“1”,管理单元将传输通道的标识“1”、计算设备对的标识“计算设备1”和“计算设备2”、存储空间的地址“Addr1”和存储容量“1G”对应记录在一条通信关系条目中,管理单元将该通信关系条目记录在数据传输通道表中,例如表1所示的数据传输通道表。
S205:管理单元确定是否为多个计算设备对分配了存储空间。
若是,执行S206;
若否,基于数据传输需求信息,将多个计算设备对中下一个计算设备对作为目标计算设备对,执行S202。
下一个计算设备对为数据传输需求信息的多个计算设备对中,还未分配存储空间的计算设备对中任意一个计算设备对。
示例性的,如表2所示的集群的数据传输需求,其中若管理单元已为“计算设备1”和“计算设备2”分配了存储空间,还未为“计算设备1”和“计算设备3”、“计算设备1”和“计算设备4”、“计算设备2”和“计算设备3”,以及“计算设备2”和“计算设备4”分配存储空间,则下一个计算设备对可以是上述还未分配存储空间的多个计算设备对中任意一个计算设备对。
在一种实施方式中,管理单元基于数据传输需求信息,依次为每个计算设备对分配存储空间,当为所有计算设备对均分配了存储空间后,则确定为多个计算设备对分配存储空间。
S206:管理单元向目标计算设备对发送目标通信关系条目。
可选的,管理单元向多个计算设备对发送数据传输通道表,以使得每个计算设备对获取对应的传输通道的信息,其中,多个计算设备对包括目标计算设备对,数据传输通道表包括目标通信关系条目。
管理单元将包含传输通道的信息的多个通信关系条目记录在数据传输通道表,便于管理单元管理多个通信关系条目,避免混淆。另外,管理单元将数据传输通道表发送至多个计算设备,能够使得多个计算设备快速获取为其分配的传输通道的信息,提高数据传输效率。
上述S202-S206中,管理单元基于集群的数据传输需求,依次为每个计算设备对分配存储空间,在另一种实施方式中,管理单元基于集群的数据传输需求,先将CXL存储空间划分为多个子存储空间,多个子存储空间用作多个计算设备对的传输通道;再将多个传输通道的信息与多个计算设备对的标识建立一一对应关系,并记录为多个通信关系条目;最后将多个通信关系条目记录在数据传输通道表中,管理单元将数据传输通道表发送给多个计算设备对,以使得多个计算设备对获取各自对应的传输通道的信息。
本申请实施例提出的传输通道分配方法中,管理单元基于多个计算设备对的数据传输需求,预先从CXL存储空间的可用存储空间中分配出固定的存储空间,作为计算设备对之间的传输通道,每个通道分配好后即为固定传输通道,用于专属的两个计算设备之间进行数据传输。每个计算设备对都能够在固定的传输通道中传输数据,不需要占用其他计算设备的传输通道,在相关技术中,计算设备若与多个其他计算设备进行数据传输,只能通过网卡提供的一个传输通道,因此,本申请实施例提出的传输通道分配方法能够避免一个传输通道传输数据造成的排队等待问题,提高集群的整体数据传输性能。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术目标应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术目标可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例还提供一种计算设备200,例如图1中的计算设备110。如图6所示,为本申请实施例提供的一种计算设备200的结构示意图。
其中,计算设备200包括:确定单元201,用于在第一计算设备需要向第二计算设备发送目标数据的情况下,第一计算设备确定目标存储空间的地址,目标存储空间为分配给第一计算设备和第二计算设备的目标传输通道;其中,包括目标存储空间的CXL存储设备与第一计算设备和第二计算设备均通信连接;写入单元202,用于基于目标存储空间的地址,将目标数据写入目标存储空间,以使第二计算设备能够从目标存储空间获取目标数据。
一些实施方式中,第一计算设备和第二计算设备均与管理单元连接,管理单元用于管理一个或多个CXL存储设备的存储空间,计算设备200还包括接收单元203,用于在第一计算设备确定目标存储空间的地址之前,接收管理单元发送的数据传输通道表;数据传输通道表包括第一计算设备和第二计算设备之间的目标传输通道的信息;计算设备200还包括获取单元204,用于获取目标传输通道的信息;目标传输通道的信息包括目标存储空间的地址。
一些实施方式中,数据传输通道表中目标传输通道的信息包括:目标传输通道的标识、第一计算设备的标识、第二计算设备的标识、目标存储空间的地址和目标存储空间的存储容量;获取单元204具体用于,根据第一计算设备的标识和第二计算设备的标识,从数据传输通道表确定目标传输通道的信息;确定单元201具体用于,从目标传输通道的信息中确定目标存储空间的地址。
一些实施方式中,第一计算设备和第二计算设备均与管理单元连接,管理单元用于管理一个或多个CXL存储设备的存储空间,确定单元201具体用于,向管理单元发送获取数据传输通道表的请求;数据传输通道表包括目标传输通道的信息;接收数据传输通道表,根据数据传输通道表确定目标传输通道的信息;从目标传输通道的信息中确定目标存储空间的地址。
本申请实施例还提供一种计算设备300,例如图1中的计算设备110。如图7所示,为本申请实施例提供的一种计算设备300的结构示意图。
其中,计算设备300包括:确定单元301,用于在第一计算设备向第二计算设备发送目标数据的情况下,第二计算设备确定目标存储空间的地址,目标存储空间为分配给第一计算设备和第二计算设备的目标传输通道;其中,包括目标存储空间的CXL存储设备与第一计算设备和第二计算设备均通信连接;获取单元302,用于基于目标存储空间的地址,从目标存储空间获取目标数据。
一些实施方式中,在第一计算设备向第二计算设备发送目标数据的情况下,第二计算设备确定目标存储空间的地址之前,确定单元301还用于,在接收到指示消息时,确定第一计算设备已向第二计算设备发送目标数据;指示消息用于指示第一计算设备已向第二计算设备发送了目标数据,指示消息由第一计算设备发送,或者,由CXL存储设备中的CXL控制器发送。
本申请实施例还提供一种管理设备400,例如图1所示的运行管理单元的管理设备。如图8所示,为本申请实施例提供的一种管理设备400的结构示意图。
其中,管理设备400包括:获取单元401,用于获取集群的数据传输需求信息,数据传输需求信息包括:多个计算设备对的标识,多个计算设备对中每一个计算设备对的数据传输需求;分配单元402,用于根据目标计算设备对的数据传输需求,为目标计算设备对分配CXL存储空间中的目标存储空间;其中,目标计算设备对包括第一计算设备和第二计算设备,目标存储空间与第一计算设备和第二计算设备均连接,目标存储空间为分配给第一计算设备和第二计算设备的目标传输通道;发送单元403,用于向目标计算设备对发送目标通信关系条目;目标通信关系条目包括目标计算设备对的标识和目标传输通道的信息。
一些实施方式中,管理设备还包括生成单元404,用于为目标计算设备对分配CXL存储设备中的目标存储空间后,生成目标传输通道的信息;目标传输通道的信息包括:目标传输通道的标识、目标存储空间的地址和目标存储空间的存储容量。
一些实施方式中,管理设备400还包括记录单元405,生成目标传输通道的信息后,将目标计算设备对的标识和目标传输通道的信息对应记录在目标通信关系条目中;将目标通信关系条目储存在数据传输通道表中;发送单元403具体用于,向目标计算设备对发送数据传输通道表。
当然,本申请实施例提供的计算设备200、计算设备300或管理设备400包括但不限于上述模块。
图9是本申请实施例提供的设备500的结构示意图,该设备500可以是图1中的计算设备110,或者运行管理单元的管理设备。如图9所示,该设备500包括处理器501、存储器502和网络接口503。
其中,处理器501包括一个或多个CPU。该CPU可以为单核CPU(single-CPU)或多核CPU(multi-CPU)。
存储器502包括但不限于是随机存取存储器(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmableread-only memory,EPROM)、快闪存储器、或光存储器等。
一些实施方式中,处理器501通过读取存储器502中保存的指令实现本申请实施例提供的数据传输方法,或者,处理器501通过内部存储的指令实现本申请实施例提供的传输通道分配方法。在处理器501通过读取存储器502中保存的指令实现上述实施例中的方法的情况下,存储器502中保存实现本申请实施例提供的数据传输方法或者传输通道分配方法的指令。
网络接口503,包含发送器和接收器的一类装置,用于与其他设备或通信网络通信,可以是有线接口(端口),例如光纤分布式数据接口(fiber distributed datainterface,FDDI)、千兆以太网接口(gigabit ethernet,GE)。或者,网络接口503是无线接口。应理解,网络接口503包括多个物理端口,网络接口503用于通信等。
一些实施方式中,设备500还包括总线504,上述处理器501、存储器502、网络接口503通常通过总线504相互连接,或采用其他方式相互连接。
在实际实现时,确定单元201、写入单元202、接收单元203和获取单元204,或者确定单元301和获取单元302,或者获取单元401、分配单元402、发送单元403、生成单元404和记录单元405可以由处理器调用存储器中的计算机程序代码来实现。其具体的执行过程可参考上述方法部分的描述,这里不再赘述。
本申请实施例提供一种计算设备,包括存储器和与存储器连接的至少一个处理器,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当计算机指令被至少一个处理器执行时,使得该计算设备执行上述方法实施例所示的数据传输方法的各个步骤。
本申请另一实施例还提供一种管理设备,包括处理器,处理器与存储器耦合,存储器用于存储程序或指令,当程序或指令被处理器执行时,使得该管理设备执行上述方法实施例所示的传输通道分配方法的各个步骤。
本申请另一实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当计算机指令在计算设备上运行时,使得计算设备执行上述方法实施例所示的数据传输方法流程中计算设备执行的各个步骤;或者,当计算机指令在管理设备上运行时,使得管理设备执行上述方法实施例所示的传输通道分配方法流程中管理设备执行的各个步骤。
本申请另一实施例还提供另一种芯片系统,该芯片系统应用于计算设备。该芯片系统包括一个或多个接口电路,以及一个或多个处理器。接口电路和处理器通过线路互联。接口电路用于从计算设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令。当计算设备的处理器执行计算机指令时,计算设备执行上述方法实施例所示的数据传输方法流程中计算设备执行的各个步骤。
本申请另一实施例还提供一种芯片系统,该芯片系统应用于管理设备。该芯片系统包括一个或多个接口电路,以及一个或多个处理器。接口电路和处理器通过线路互联。接口电路用于从管理设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令。当管理设备的处理器执行计算机指令时,管理设备执行上述方法实施例所示的传输通道分配方法流程中管理设备执行的各个步骤。
在本申请另一实施例中还提供另一种计算机程序产品,该计算机程序产品包括计算机指令,当计算机指令在计算设备上运行时,使得计算设备执行上述方法实施例所示的数据传输方法流程中计算设备执行的各个步骤。
在本申请另一实施例中还提供一种计算机程序产品,该计算机程序产品包括计算机指令,当计算机指令在管理设备上运行时,使得管理设备执行上述方法实施例所示的传输通道分配方法流程中管理设备执行的各个步骤。
上述实施例可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,上述实施例可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机执行指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、服务器或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上所述,仅为本申请的具体实施方式。熟悉本技术领域的技术人员根据本申请提供的具体实施方式,可想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (10)
1.一种数据传输方法,其特征在于,包括:
在第一计算设备需要向第二计算设备发送目标数据的情况下,所述第一计算设备确定目标存储空间的地址,所述目标存储空间为分配给所述第一计算设备和所述第二计算设备的目标传输通道;其中,包括所述目标存储空间的计算扩展连接CXL存储设备与所述第一计算设备和所述第二计算设备均通信连接;
基于所述目标存储空间的地址,将所述目标数据写入所述目标存储空间,以使所述第二计算设备能够从所述目标存储空间获取所述目标数据。
2.根据权利要求1所述的方法,其特征在于,所述第一计算设备和所述第二计算设备均与管理单元连接,所述管理单元用于管理一个或多个CXL存储设备的存储空间,在所述第一计算设备确定所述目标存储空间的地址之前,所述方法还包括:
接收所述管理单元发送的数据传输通道表;所述数据传输通道表包括所述第一计算设备和所述第二计算设备之间的目标传输通道的信息;
获取所述目标传输通道的信息;所述目标传输通道的信息包括所述目标存储空间的地址。
3.根据权利要求2所述的方法,其特征在于,所述数据传输通道表中目标传输通道的信息包括:所述目标传输通道的标识、所述第一计算设备的标识、所述第二计算设备的标识、所述目标存储空间的地址和所述目标存储空间的存储容量;所述获取所述目标传输通道的信息,包括:
根据所述第一计算设备的标识和第二计算设备的标识,从所述数据传输通道表确定所述目标传输通道的信息;
所述第一计算设备确定为所述第一计算设备与所述第二计算设备分配的目标存储空间的地址,包括:
从所述目标传输通道的信息中确定所述目标存储空间的地址。
4.一种数据传输方法,其特征在于,包括:
在第一计算设备向第二计算设备发送目标数据的情况下,所述第二计算设备确定目标存储空间的地址,所述目标存储空间为分配给所述第一计算设备和所述第二计算设备的目标传输通道;其中,包括所述目标存储空间的计算扩展连接CXL存储设备与所述第一计算设备和所述第二计算设备均通信连接;
基于所述目标存储空间的地址,从所述目标存储空间获取所述目标数据。
5.根据权利要求4所述的方法,其特征在于,所述在第一计算设备向第二计算设备发送目标数据的情况下,所述第二计算设备确定目标存储空间的地址之前,所述方法还包括:
在接收到指示消息时,确定所述第一计算设备已向所述第二计算设备发送所述目标数据;所述指示消息用于指示所述第一计算设备已向所述第二计算设备发送了所述目标数据,所述指示消息由所述第一计算设备发送,或者,由所述CXL存储设备中的CXL控制器发送。
6.一种传输通道分配方法,其特征在于,应用于管理单元,所述管理单元与集群中的多个计算设备均通信连接,所述管理单元用于管理一个或多个计算扩展连接CXL存储设备构成的CXL存储空间,所述方法包括:
获取集群的数据传输需求信息,所述数据传输需求信息包括:多个计算设备对的标识,所述多个计算设备对中每一个计算设备对的数据传输需求;
根据目标计算设备对的数据传输需求,为所述目标计算设备对分配CXL存储空间中的目标存储空间;其中,所述目标计算设备对包括第一计算设备和第二计算设备,包括所述目标存储空间的CXL存储设备与所述第一计算设备和所述第二计算设备均连接,所述目标存储空间为分配给所述第一计算设备和所述第二计算设备的目标传输通道;
向所述目标计算设备对发送目标通信关系条目;所述目标通信关系条目包括所述目标计算设备对的标识和所述目标传输通道的信息。
7.根据权利要求6所述的方法,其特征在于,所述为所述目标计算设备对分配CXL存储空间中的目标存储空间后,所述方法还包括:
生成所述目标传输通道的信息;所述目标传输通道的信息包括:所述目标传输通道的标识、所述目标存储空间的地址和所述目标存储空间的存储容量。
8.根据权利要求7所述的方法,其特征在于,所述生成所述目标传输通道的信息后,所述方法还包括:
将所述目标计算设备对的标识和所述目标传输通道的信息对应记录在所述目标通信关系条目中;
将所述目标通信关系条目储存在数据传输通道表中;
所述向所述目标计算设备对发送目标通信关系条目,包括:
向所述目标计算设备对发送所述数据传输通道表。
9.一种计算设备,其特征在于,包括存储器和与所述存储器连接的至少一个处理器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述至少一个处理器执行时,使得所述计算设备执行如权利要求1至5任一项所述的方法。
10.一种管理设备,其特征在于,包括处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得所述管理设备执行如权利要求6至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311695392.3A CN117938848A (zh) | 2023-12-11 | 2023-12-11 | 数据传输方法、传输通道分配方法、计算设备及管理设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311695392.3A CN117938848A (zh) | 2023-12-11 | 2023-12-11 | 数据传输方法、传输通道分配方法、计算设备及管理设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117938848A true CN117938848A (zh) | 2024-04-26 |
Family
ID=90767579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311695392.3A Pending CN117938848A (zh) | 2023-12-11 | 2023-12-11 | 数据传输方法、传输通道分配方法、计算设备及管理设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117938848A (zh) |
-
2023
- 2023-12-11 CN CN202311695392.3A patent/CN117938848A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019233322A1 (zh) | 资源池的管理方法、装置、资源池控制单元和通信设备 | |
CN109983449A (zh) | 数据处理的方法和存储系统 | |
WO2021008197A1 (zh) | 资源分配方法、存储设备和存储系统 | |
CN110119304B (zh) | 一种中断处理方法、装置及服务器 | |
AU2015402888B2 (en) | Computer device and method for reading/writing data by computer device | |
CN112099728B (zh) | 一种执行写操作、读操作的方法及装置 | |
WO2014206078A1 (zh) | 内存访问方法、装置及系统 | |
CN112052100A (zh) | 基于共享内存的虚拟机通信方法及设备 | |
CN115129621A (zh) | 一种内存管理方法、设备、介质及内存管理模块 | |
WO2022063273A1 (zh) | 一种基于numa属性的资源分配方法及装置 | |
CN109783002B (zh) | 数据读写方法、管理设备、客户端和存储系统 | |
CN111247508B (zh) | 网络存储架构 | |
CN115934624B (zh) | 多主机远程直接内存访问网络管理的方法、设备及介质 | |
US20150220430A1 (en) | Granted memory providing system and method of registering and allocating granted memory | |
CN117938848A (zh) | 数据传输方法、传输通道分配方法、计算设备及管理设备 | |
CN114253733B (zh) | 一种内存管理方法、装置、计算机设备和存储介质 | |
CN117938849A (zh) | 传输通道管理方法、数据传输方法、管理设备及计算设备 | |
CN114238156A (zh) | 处理系统以及操作处理系统的方法 | |
CN115129709A (zh) | 一种数据处理方法、服务端及系统 | |
CN117997900A (zh) | 数据传输方法、传输通道分配方法、计算设备及管理设备 | |
CN115442239B (zh) | 带宽资源分配方法、PCIe通道切换器及电子设备 | |
US12067248B2 (en) | Tiered memory fabric workload performance optimization system | |
CN118467182B (zh) | 内存访问方法、计算机程序产品、电子设备及介质 | |
US11995357B2 (en) | Disaggregation computing system and method | |
CN107526701A (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 |