CN105474194B - 通信***和通信方法 - Google Patents
通信***和通信方法 Download PDFInfo
- Publication number
- CN105474194B CN105474194B CN201480036947.6A CN201480036947A CN105474194B CN 105474194 B CN105474194 B CN 105474194B CN 201480036947 A CN201480036947 A CN 201480036947A CN 105474194 B CN105474194 B CN 105474194B
- Authority
- CN
- China
- Prior art keywords
- information
- calculate node
- communication mode
- node
- communication
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- 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/12—Discovery or management of network topologies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种通信***和通信方法。该通信方法包括:第一计算节点向管理节点发送通信方式解析请求,通信方式解析请求包括第一计算节点的标识和第二计算节点的标识;管理节点根据通信方式解析请求和通信方式参考信息,确定第一计算节点和第二计算节点之间的物理通信方式信息,通信方式参考信息包括***拓扑信息和***物理资源分配结果;管理节点将物理通信方式信息发送给第一计算节点;第一计算节点基于物理通信方式信息与第二计算节点通信。本发明实施例能够提高通信效率。
Description
技术领域
本发明实施例涉及计算机领域,并且更具体地,涉及一种通信***和通信方法。
背景技术
随着人们对服务器性能需求的不断提高,依靠增加主频来提高计算性能的时代已经成为过去。解耦硬件架构和分布式计算机架构成为了服务器架构的发展方向。
在解耦硬件架构下,将服务器的各个组件解耦,由复杂的组件设计改为简单高效的设计。解耦的各个组件之间通过高速互联通道相互连接。在分布式计算机架构下,服务器包括多个处理器,各个处理器通过互联网络相互连接。这样,将中央处理器的任务分给多个处理器处理,进而实现不同功能的各个处理器之间相互协调,并共享服务器***的外设与软件。
目前,在全虚拟化模式下,工作在上述服务器***(也即通信***)中的多个操作***之间基于以太网通信协议进行通信。例如,基于传输控制协议/因特网互联协议(Transmission Control Protocol/Internet Protocol,TCP/IP)进行通信。然而,硬件有互联关系的多个操作***之间的通信效率有进一步提升的空间。
发明内容
本发明实施例提供了一种通信***和通信方法,能够提高通信效率。
第一方面,本发明实施例提供了一种通信方法,应用于具有多个操作***OS的通信***中,通信***包括管理节点、第一计算节点和第二计算节点,第一计算节点和第二计算节点上分别运行有一个OS,该通信方法包括:第一计算节点向管理节点发送通信方式解析请求,通信方式解析请求包括第一计算节点的标识和第二计算节点的标识;管理节点根据通信方式解析请求和通信方式参考信息,确定第一计算节点和第二计算节点之间的物理通信方式信息,通信方式参考信息包括***拓扑信息和***物理资源分配结果;管理节点将物理通信方式信息发送给第一计算节点;第一计算节点基于物理通信方式信息与第二计算节点通信。
结合第一方面,在第一方面的第一种实现方式中,在第一计算节点向管理节点发送通信方式解析请求之前,该通信方法还包括:第一计算节点判断设置的历史信息中是否包括第一计算节点与第二计算节点的物理通信方式信息;第一计算节点向管理节点发送通信方式解析请求,包括:在确定历史信息不包括物理通信方式信息时,第一计算节点向管理节点发送通信方式解析请求。
结合第一方面及其上述实现方式,在第一方面的第二种实现方式中,在管理节点将物理通信方式信息发送给第一计算节点之后,通信方法还包括:第一计算节点将物理通信方式信息记录于历史信息中。
结合第一方面及其上述实现方式,在第一方面的第三种实现方式中,物理通信方式信息包括共享本地内存通信方式信息、共享外部内存通信方式信息和高速互联通信方式信息中的一种。
结合第一方面及其上述实现方式,在第一方面的第四种实现方式中,通信方式参考信息还包括***物理资源使用状态。
结合第一方面及其上述实现方式,在第一方面的第五种实现方式中,通信方式解析请求还包括数据包类型和数据包大小。
结合第一方面及其上述实现方式,在第一方面的第六种实现方式中,***拓扑信息包括中央处理器CPU的架构信息、本地内存信息、外部共享内存信息、解耦架构高速互联信息和网络互连信息中的一种或多种。
第二方面,本发明实施例提供了一种通信***,通信***包括管理节点、第一计算节点和第二计算节点,第一计算节点和第二计算节点上分别运行有一个OS,其中,第一计算节点,用于向管理节点发送通信方式解析请求,通信方式解析请求包括第一计算节点的标识和第二计算节点的标识;管理节点,用于根据通信方式解析请求和通信方式参考信息,确定第一计算节点和第二计算节点之间的物理通信方式信息,通信方式参考信息包括***拓扑信息和***物理资源分配结果;管理节点,还用于将物理通信方式信息发送给第一计算节点;第一计算节点,还用于基于物理通信方式信息与第二计算节点通信。
结合第二方面,在第二方面的第一种实现方式中,第一计算节点,还用于判断设置的历史信息中是否包括第一计算节点与第二计算节点的物理通信方式信息;第一计算节点,具体用于在确定历史信息不包括物理通信方式信息时,向管理节点发送通信方式解析请求。
结合第二方面及其上述实现方式,在第二方面的第二种实现方式中,第一计算节点,还用于将物理通信方式信息记录于历史信息中。
结合第二方面及其上述实现方式,在第二方面的第三种实现方式中,物理通信方式信息包括共享本地内存通信方式信息、共享外部内存通信方式信息和高速互联通信方式信息中的一种。
结合第二方面及其上述实现方式,在第二方面的第四种实现方式中,通信方式参考信息还包括***物理资源使用状态。
结合第二方面及其上述实现方式,在第二方面的第五种实现方式中,通信方式解析请求还包括数据包类型和数据包大小。
结合第二方面及其上述实现方式,在第二方面的第六种实现方式中,***拓扑信息包括中央处理器CPU的架构信息、本地内存信息、外部共享内存信息、解耦架构高速互联信息和网络互连信息中的一种或多种。
基于上述技术方案,在本发明实施例中,管理节点根据通信***的拓扑信息确定两个计算节点之间的物理通信方式信息。这样,在计算节点之间存在硬件连接的情况下,计算节点之间可以根据前述的物理通信方式信息进行通信,进而提高了通信效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例可应用的通信***的示意性硬件架构图。
图2是本发明一个实施例的通信方法的示意性流程图。
图3是本发明另一实施例的通信方法的示意性流程图。
图4是本发明实施例的通信***的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
图1是本发明实施例可应用的通信***的示意性硬件架构图。
图1所示的通信***包括控制器(101a,101b,101c,101d)、处理器(102a,102b)、存储器(103a,103b,103d)、接口池103c。其中,各个控制器(101a,101b,101c,101d)之间通过高速互联通道相连。接口池103c为服务器各个组件之间的通信提供通信接口。处理器(102a,102b)可以包括一个或多个中央处理器(Central Processing unit,CPU)节点。
每个CPU节点上可以有多个逻辑CPU。每个CPU节点可以是一致性内存访问(Uniform Memory Access,UMA)架构,也可以是非一致性内存访问(Non-Uniform MemoryAccess,NUMA)架构。总的来说,每个CPU节点上的多个逻辑CPU共享本地内存。不同CPU节点虽然不共享本地内存,但是它们通过结构高速互联通道相连,它们共享外部内存池和网络接口池。也就是说,除了传统以太网方式,它们还可以通过共享外部内存和高速互联通道方式进行通信。
例如,存储器103a与处理器102a连接。对于处理器102a中的CPU板而言,存储器103a为本地存储器。相对地,对于处理器102a中的CPU板而言,不与处理器102a连接的存储器(103b,103e)为外部存储器。
相似地,存储器103b与处理器102b连接。对于处理器102b中的CPU板而言,存储器103b为本地存储器。相对地,对于处理器102b中的CPU板而言,不与处理器102b连接的存储器(103a,103e)为外部存储器。
应理解,图1所示的服务器硬件架构图仅仅是本发明实施例可应用的计算机硬件架构图的一个示例,本发明实施例的保护范围并不限于此。
图2是本发明一个实施例的通信方法的示意性流程图。该通信方法可以应用于具有多个操作***(Operation System,OS)的通信***中,例如该通信***可以具有图1所示的硬件架构。该通信***包括管理节点、第一计算节点和第二计算节点,第一计算节点和第二计算节点上分别运行有一个OS。其中,管理节点、第一计算节点和第二计算节点在图1所示的通信***中具体占用的物理资源不作限定。例如,图1中示出的一个CPU节点可以包括一个或多个逻辑CPU。第一计算节点、第二计算节点和管理节点可以分别包括至少一个逻辑CPU。进一步地,管理节点、第一计算节点和第二计算节点可以是逻辑上的划分,也可以是物理实体上的划分。
201,第一计算节点向管理节点发送通信方式解析请求,通信方式解析请求包括第一计算节点的标识和第二计算节点的标识。
202,管理节点根据通信方式解析请求和通信方式参考信息,确定第一计算节点和第二计算节点之间的物理通信方式信息,通信方式参考信息包括***拓扑信息和***物理资源分配结果。
例如,在第一计算节点或第二计算节点向管理节点申请物理资源时,管理节点根据计算节点的需求为其分配相应的物理资源以供计算节点使用,并记录各个计算节点使用的物理资源信息(即物理资源分配结果)。这种情况下,管理节点可以根据记录的各个计算节点使用的物理资源信息和通信***的***拓扑信息,确定计算节点之间可用的物理通信方式。
具体地,在计算节点启动时,计算节点可以通过与管理节点之间的信息交互向其申请物理资源。这里以第一计算节点为例进行描述。第一计算节点启动时,管理节点可以为第一计算节点分配标识,并将该标识返回给第一计算节点。同时,根据第一计算节点的需求为第一计算节点分配物理资源,并记录第一计算节点的标识和物理资源的对应关系。
类似地,第二计算节点启动时也可以按照前述方法向管理节点申请物理资源。另外,在通信***包括其它计算节点时,其它计算节点启动时也可以按照前述方法向管理节点申请物理资源。为避免重复,在此不再赘述。
另外,为第一计算节点或第二计算节点分配的物理资源发生变化时,管理节点更新物理资源分配结果。例如,在第一计算节点向管理节点追加申请物理资源时,或者管理节点释放了第一计算节点使用的部分物理资源时,管理节点需要更新物理资源分配结果。
相似地,在第二计算节点向管理节点追加申请物理资源时,或者管理节点释放了第一计算节点使用的部分物理资源时,管理节点也需要更新物理资源分配结果。
这种情况下,在管理节点根据物理资源分配结果和通信***的***拓扑信息,确定第一计算节点与第二计算节点之间的物理通信方式信息时,管理节点可以根据通信方式解析请求中的第一计算节点的标识和第二计算节点的标识,物理资源分配结果中的第一计算节点的标识与物理资源的对应关系和第二计算节点的标识与物理资源的对应关系,以及通信***的***拓扑信息,确定第一计算节点与第二计算节点之间的物理通信方式信息。
例如,管理节点可以根据存储的计算节点的标识与物理资源的对应关系,确定第一计算节点使用的物理资源和第二计算节点使用的物理资源。这样,结合通信***的***拓扑信息,管理节点可以确定第一计算节点与第二计算节点之间的物理通信方式信息。其中,在通信***的***拓扑信息中包含有第一计算节点使用的物理资源与第二计算节点使用的物理资源之间的硬件连接关系,
203,管理节点将物理通信方式信息发送给第一计算节点。
204,第一计算节点基于物理通信方式信息与第二计算节点通信。
例如,管理节点可以向第一计算节点发送物理通信方式信息,由第一计算节点向第二计算节点发起通信连接。或者,在第一计算节点获取了物理通信方式信息后,向管理节点请求协助完成通信连接。
又如,管理节点可以同时向第一计算节点和第二计算节点发送物理通信方式信息。这样,第一计算节点和第二计算节点根据物理通信方式信息中指示的方式完成通信连接。
基于上述技术方案,在本发明实施例中,管理节点根据通信***的拓扑信息确定两个计算节点之间的物理通信方式信息。这样,在计算节点之间存在硬件连接的情况下,计算节点之间可以根据前述的物理通信方式信息进行通信,进而提高了通信效率。
进一步地,在计算节点之间的物理通信方式不可用,或者计算节点之间不存在硬件连接时,计算节点可以基于以太网通信协议进行通信。相较以太网通信方式而言,物理通信方式有着较高的传输效率和灵活性。具体地,可以根据计算节点之间传输的数据包的属性灵活分配物理资源,进而得到不同的传输速度。
应理解,物理通信方式信息可以包括第一计算节点与第二计算节点之间建立物理通信连接所需要的所有信息,如本次物理通信连接占用的物理资源标识和通信方式标识等。或者,物理通信方式信息可以只包括物理通信方式的标识。这种情况下,第一计算节点可以在建立与第二计算节点之间的物理通信连接时,再向管理节点申请本次通信使用的物理资源信息。这些变化实施例都应该落在本发明实施例的保护范围内。
也应理解,第一计算节点、第二计算节点和管理节点可以位于图1中示出的处理器(102a,102b)中的同一个处理器或不同的处理器中,本发明实施例不作限定。
可选地,作为另一实施例,在第一计算节点向管理节点发送通信方式解析请求之前,第一计算节点判断设置的历史信息中是否包括第一计算节点与第二计算节点的物理通信方式信息。这种情况下,第一计算节点向管理节点发送通信方式解析请求时,可以在确定历史信息不包括物理通信方式信息时,再向管理节点发送通信方式解析请求。
例如,当历史信息包括物理通信方式信息时,第一计算节点从历史信息中确定物理通信方式信息。当历史信息不包括物理通信方式信息时,第一计算节点向管理节点发送通信方式解析请求,然后从管理节点接收物理通信方式信息。这样,第一计算节点不必在每次通信时,都请求管理节点解析物理通信方式信息,进而降低了***开销。
另外,在第一计算节点支持异步处理时,在向管理节点发送通信方式解析请求的同时,可以进行通信连接的其它准备工作。
可选地,作为一个实施例,在管理节点将物理通信方式信息发送给第一计算节点之后,第一计算节点将物理通信方式信息记录于历史信息中。
这样,第一计算节点在下次通信时可以直接从历史信息中获取物理通信方式信息,而不必请求管理节点解析物理通信方式信息,因而降低了***开销。
另外,在管理节点更新了物理资源分配结果时,第一计算节点可以清除历史信息,或者设置历史信息失效。这样,第一计算节点可以根据最新的物理通信方式信息进行通信,能够最大程度上提高通信效率。
可选地,作为另一实施例,物理通信方式信息包括共享本地内存通信方式信息、共享外部内存通信方式信息和高速互联通信方式信息中的一种。
例如,共享本地内存通信方式信息可以包括共享本地内存通信方式的标识和为本次通信分配的本地内存的起止地址。共享外部内存通信方式信息可以包括共享外部内存通信方式的标识和为本次通信分配的外部内存的起止地址。高速互联通信方式信息可以包括高速互联通信方式的标识和为本次通信中使用的高速互联通道的地址。
应理解,共享本地内存通信方式是指两个虚拟机通过共享的本地内存进行通信。共享外部内存通信方式是指两个虚拟机通过共享的外部内存进行通信。高速互联通信方式是指两个虚拟机通过高速互联通道进行通信。
可选地,作为另一实施例,通信方式参考信息还包括***物理资源使用状态。
例如,管理节点根据物理资源分配结果和***拓扑信息,确定第一计算节点与第二计算节点之间的所有物理通信方式。然后,管理节点结合物理资源使用状态,分析前述所有的物理通信方式,并最终确定的物理通信方式信息。
具体地,假设共享本地内存通信方式的优先级最高,管理节点可以判断本地内存剩余空间是否大于预设的阈值。当内存剩余空间大于预设的阈值时,可以将共享本地内存通信方式的标识及为本次通信分配的通信地址信息确定为物理通信方式信息。
相反地,当内存剩余空间小于预设的阈值时,管理节点可以根据物理资源的使用状态判断优先级次高的通信方式是否可用。其中,判断方法与前文描述的方法类似,为避免重复,在此不再赘述。
可选地,作为另一实施例,通信方式解析请求还包括数据包类型和数据包大小。
这种情况下,管理节点可以结合通信方式解析请求中的数据包类型和数据包大小为第一计算节点确定物理通信方式信息。例如,在数据包较小时,可以选择高速互联通信方式。在数据包较大时,共享本地内存通信方式最快。另外,结合数据包类型,也即数据包的即时性要求,管理节点可以为第一计算节点选择一个更为合适的通信方式。
可选地,作为另一实施例,***拓扑信息包括中央处理器CPU的架构信息、本地内存信息、外部共享内存信息、解耦架构高速互联信息和网络互连信息中的一种或多种。
下面将结合具体的例子详细描述本发明实施例。应注意,这些例子只是为了帮助本领域技术人员更好地理解本发明实施例,而非限制本发明实施例的范围。
图3是本发明另一实施例的通信方法的示意性流程图。
301,在第一计算节点启动时,向管理节点申请物理资源。
302,管理节点为第一计算节点分配物理资源后,向第一计算节点返回分配结果。该分配结果包括第一计算节点的标识与物理资源的对应关系。
303,在第二计算节点启动时,向管理节点申请物理资源。
304,管理节点为第二计算节点分配物理资源后,向第二计算节点返回分配结果。该分配结果包括第二计算节点的标识与物理资源的对应关系。
305,在第一计算节点准备与第二计算节点进行通信时,先查询设置的历史信息。若历史信息中包括第一计算节点与第二计算节点之间的物理通信方式信息,第一计算节点可以直接从历史信息中确定该物理通信方式信息。
若历史信息中不包括第一计算节点与第二计算节点的物理通信方式信息,执行步骤306。
306,第一计算节点向管理节点发送通信方式解析请求。
307,管理节点根据通信方式解析请求为第一计算节点确定与第二计算节点之间的物理通信方式信息。
例如,管理节点可以根据记录的各个计算节点使用的物理资源信息和通信***的***拓扑信息,确定计算节点之间可用的物理通信方式,进而确定物理通信方式信息。
308,管理节点向第一计算节点发送物理通信方式信息。
309,第一计算节点根据物理通信方式信息建立与第二计算节点之间的通信连接,以进行通信。
基于上述技术方案,在本发明实施例中,管理节点根据通信***的拓扑信息确定两个计算节点之间的物理通信方式信息。这样,在计算节点之间存在硬件连接的情况下,计算节点之间可以根据前述的物理通信方式信息进行通信,进而提高了通信效率。
图4是本发明实施例的通信***的示意性框图。通信***40包括管理节点401、第一计算节点402和第二计算节点403。例如,该通信***40可以具有图1所示的硬件架构。其中,管理节点401、第一计算节点402和第二计算节点403占用的物理资源不作限定。例如,图1中示出的一个CPU节点可以包括一个或多个逻辑CPU。第一计算节点、第二计算节点和管理节点可以分别包括至少一个逻辑CPU。第一计算节点402和第二计算节点403上分别运行有一个OS。进一步地,管理节点401、第一计算节点402和第二计算节点403可以是逻辑上的划分,也可以是物理实体上的划分。
第一计算节点402,用于向管理节点401发送通信方式解析请求,通信方式解析请求包括第一计算节点402的标识和第二计算节点403的标识。
管理节点401,用于根据通信方式解析请求和通信方式参考信息,确定第一计算节点402和第二计算节点403之间的物理通信方式信息,通信方式参考信息包括***拓扑信息和***物理资源分配结果。
例如,在第一计算节点402或第二计算节点403向管理节点401申请物理资源时,管理节点401根据计算节点的需求为其分配相应的物理资源以供计算节点使用,并记录各个计算节点使用的物理资源信息(即物理资源分配结果)。这种情况下,管理节点401可以根据记录的各个计算节点使用的物理资源信息和***拓扑信息,确定计算节点之间可用的物理通信方式。
具体地,在计算节点启动时,计算节点可以通过与管理节点401之间的信息交互向其申请物理资源。这里以第一计算节点402为例进行描述。第一计算节点402启动时,管理节点可以为第一计算节点402分配标识,并将该标识返回给第一计算节点402。同时,根据第一计算节点402的需求为第一计算节点402分配物理资源,并记录第一计算节点402的标识和物理资源的对应关系。
类似地,第二计算节点403启动时也可以按照前述方法向管理节点申请物理资源。另外,在通信***包括其它计算节点时,其它计算节点启动时也可以按照前述方法向管理节点申请物理资源。为避免重复,在此不再赘述。
另外,为第一计算节点402或第二计算节点403分配的物理资源发生变化时,管理节点401更新物理资源分配结果。例如,在第一计算节点402向管理节点401追加申请物理资源时,或者管理节点401释放了第一计算节点402使用的部分物理资源时,管理节点401需要更新物理资源分配结果。
相似地,在第二计算节点403向管理节点401追加申请物理资源时,或者管理节点释放了第一计算节点402使用的部分物理资源时,管理节点401也需要更新物理资源分配结果。
这种情况下,在管理节点401根据物理资源分配结果和通信***的***拓扑信息,确定第一计算节点402与第二计算节点403之间的物理通信方式信息时,管理节点401可以根据通信方式解析请求中的第一计算节点402的标识和第二计算节点403的标识,物理资源分配结果中的第一计算节点402的标识与物理资源的对应关系和第二计算节点403的标识与物理资源的对应关系,以及通信***的***拓扑信息,确定第一计算节点402与第二计算节点403之间的物理通信方式信息。
例如,管理节点401可以根据存储的计算节点的标识与物理资源的对应关系,确定第一计算节点402使用的物理资源和第二计算节点403使用的物理资源。这样,结合通信***的***拓扑信息,也即第一计算节点402使用的物理资源与第二计算节点403使用的物理资源之间的硬件连接关系,管理节点可以确定第一计算节点402与第二计算节点403之间的物理通信方式信息。
管理节点401,还用于将物理通信方式信息发送给第一计算节点402。
第一计算节点402,还用于基于物理通信方式信息与第二计算节点403通信。
例如,管理节点401可以向第一计算节点402发送物理通信方式信息,由第一计算节点402向第二计算节点403发起通信连接。或者,在第一计算节点402获取了物理通信方式信息后,向管理节点401请求协助完成通信连接。
又如,管理节点401可以同时向第一计算节点402和第二计算节点403发送物理通信方式信息。这样,第一计算节点402和第二计算节点403根据物理通信方式信息中指示的方式完成通信连接。
基于上述技术方案,在本发明实施例中,管理节点根据通信***的拓扑信息确定两个计算节点之间的物理通信方式信息。这样,在计算节点之间存在硬件连接的情况下,计算节点之间可以根据前述的物理通信方式信息进行通信,进而提高了通信效率。
进一步地,在计算节点之间的物理通信方式不可用,或者计算节点之间不存在硬件连接时,计算节点可以基于以太网通信协议进行通信。相较以太网通信方式而言,物理通信方式有着较高的传输效率和灵活性。具体地,可以根据计算节点之间传输的数据包的属性灵活分配物理资源,进而得到不同的传输速度。
应理解,物理通信方式信息可以包括第一计算节点与第二计算节点之间建立物理通信连接所需要的所有信息,如本次物理通信连接占用的物理资源标识和通信方式标识等。或者,物理通信方式信息可以只包括物理通信方式的标识。这种情况下,第一计算节点可以在建立与第二计算节点之间的物理通信连接时,再向管理节点申请本次通信使用的物理资源信息。这些变化实施例都应该落在本发明实施例的保护范围内。
也应理解,第一计算节点、第二计算节点和管理节点可以位于图1中示出的处理器(102a,102b)中的同一个处理器或不同的处理器中,本发明实施例不作限定。
可选地,作为另一实施例,第一计算节点402,还用于判断设置的历史信息中是否包括第一计算节点与第二计算节点的物理通信方式信息。这种情况下,第一计算节点402,具体用于在确定历史信息不包括物理通信方式信息时,向管理节点发送通信方式解析请求。
例如,当历史信息包括物理通信方式信息时,第一计算节点402从历史信息中确定物理通信方式信息。当历史信息不包括物理通信方式信息时,第一计算节点402向管理节点401发送通信方式解析请求,然后从管理节点401接收物理通信方式信息。这样,第一计算节点402不必在每次通信时,都请求管理节点401解析物理通信方式信息,进而降低了***开销。
另外,在第一计算节点402支持异步处理时,在向管理节点401发送通信方式解析请求的同时,可以进行通信连接的其它准备工作。
可选地,作为一个实施例,第一计算节点402,还用于将物理通信方式信息记录于历史信息中。
这样,第一计算节点在下次通信时可以直接从历史信息中获取物理通信方式信息,而不必请求管理节点解析物理通信方式信息,因而降低了***开销。这样,第一计算节点可以根据最新的物理通信方式信息进行通信,能够最大程度上提高通信效率。
另外,在管理节点更新了物理资源分配结果时,第一计算节点可以清除历史信息,或者设置历史信息失效。
可选地,作为另一实施例,物理通信方式信息包括共享本地内存通信方式信息、共享外部内存通信方式信息和高速互联通信方式信息中的一种。
例如,共享本地内存通信方式信息可以包括共享本地内存通信方式的标识和为本次通信分配的本地内存的起止地址。共享外部内存通信方式信息可以包括共享外部内存通信方式的标识和为本次通信分配的外部内存的起止地址。高速互联通信方式信息可以包括高速互联通信方式的标识和为本次通信中使用的高速互联通道的地址。
应理解,共享本地内存通信方式是指两个虚拟机通过共享的本地内存进行通信。共享外部内存通信方式是指两个虚拟机通过共享的外部内存进行通信。高速互联通信方式是指两个虚拟机通过高速互联通道进行通信。
可选地,作为另一实施例,通信方式参考信息还包括***物理资源使用状态。
例如,管理节点401根据物理资源分配结果和***拓扑信息,确定第一计算节点402与第二计算节点403之间的所有物理通信方式。然后,管理节点401结合物理资源使用状态,分析前述所有的物理通信方式,并最终确定的物理通信方式信息。
具体地,假设共享本地内存通信方式的优先级最高,管理节点401可以判断本地内存剩余空间是否大于预设的阈值。当内存剩余空间大于预设的阈值时,可以将共享本地内存通信方式的标识及为本次通信分配的通信地址信息确定为物理通信方式信息。
相反地,当内存剩余空间小于预设的阈值时,管理节点401可以根据物理资源的使用状态判断优先级次高的通信方式是否可用。其中,判断方法与前文描述的方法类似,为避免重复,在此不再赘述。
可选地,作为另一实施例,通信方式解析请求还包括数据包类型和数据包大小。
这种情况下,管理节点401可以结合通信方式解析请求中的数据包类型和数据包大小为第一计算节点402确定物理通信方式信息。例如,在数据包较小时,可以选择高速互联通信方式。在数据包较大时,共享本地内存通信方式最快。另外,结合数据包类型,也即数据包的即时性要求,管理节点401可以为第一计算节点402选择一个更为合适的通信方式。
可选地,作为另一实施例,***拓扑信息包括中央处理器CPU的架构信息、本地内存信息、外部共享内存信息、解耦架构高速互联信息和网络互连信息中的一种或多种。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (14)
1.一种通信方法,应用于具有多个操作***OS的通信***中,所述通信***包括管理节点、第一计算节点和第二计算节点,所述第一计算节点和所述第二计算节点上分别运行有一个OS,其特征在于,所述通信方法包括:
所述第一计算节点向所述管理节点发送通信方式解析请求,所述通信方式解析请求包括所述第一计算节点的标识和所述第二计算节点的标识;
所述管理节点根据所述通信方式解析请求和通信方式参考信息,确定所述第一计算节点和所述第二计算节点之间的物理通信方式信息,所述通信方式参考信息包括***拓扑信息和***物理资源分配结果;
所述管理节点将所述物理通信方式信息发送给所述第一计算节点;
所述第一计算节点基于所述物理通信方式信息与所述第二计算节点通信。
2.根据权利要求1所述的通信方法,其特征在于,在所述第一计算节点向所述管理节点发送通信方式解析请求之前,所述通信方法还包括:
所述第一计算节点判断设置的历史信息中是否包括所述第一计算节点与所述第二计算节点的物理通信方式信息;
所述第一计算节点向所述管理节点发送通信方式解析请求,包括:
在确定所述历史信息不包括所述物理通信方式信息时,所述第一计算节点向所述管理节点发送所述通信方式解析请求。
3.根据权利要求1所述的通信方法,其特征在于,在所述管理节点将所述物理通信方式信息发送给所述第一计算节点之后,所述通信方法还包括:
所述第一计算节点将所述物理通信方式信息记录于历史信息中。
4.根据权利要求1至3中任一项所述的通信方法,其特征在于,所述物理通信方式信息包括共享本地内存通信方式信息、共享外部内存通信方式信息和高速互联通信方式信息中的一种。
5.根据权利要求1至3中任一项所述的通信方法,其特征在于,所述通信方式参考信息还包括***物理资源使用状态。
6.根据权利要求1至3中任一项所述的通信方法,其特征在于,所述通信方式解析请求还包括数据包类型和数据包大小。
7.根据权利要求1至3中任一项所述的通信方法,其特征在于,所述***拓扑信息包括中央处理器CPU的架构信息、本地内存信息、外部共享内存信息、解耦架构高速互联信息和网络互连信息中的一种或多种。
8.一种通信***,其特征在于,所述通信***包括管理节点、第一计算节点和第二计算节点,所述第一计算节点和所述第二计算节点上分别运行有一个OS,其中,
所述第一计算节点,用于向所述管理节点发送通信方式解析请求,所述通信方式解析请求包括所述第一计算节点的标识和所述第二计算节点的标识;
所述管理节点,用于根据所述通信方式解析请求和通信方式参考信息,确定所述第一计算节点和所述第二计算节点之间的物理通信方式信息,所述通信方式参考信息包括***拓扑信息和***物理资源分配结果;
所述管理节点,还用于将所述物理通信方式信息发送给所述第一计算节点;
所述第一计算节点,还用于基于所述物理通信方式信息与所述第二计算节点通信。
9.根据权利要求8所述的通信***,其特征在于,
所述第一计算节点,还用于判断设置的历史信息中是否包括所述第一计算节点与所述第二计算节点的物理通信方式信息;
所述第一计算节点,具体用于在确定所述历史信息不包括所述物理通信方式信息时,向所述管理节点发送所述通信方式解析请求。
10.根据权利要求8所述的通信***,其特征在于,所述第一计算节点,还用于将所述物理通信方式信息记录于历史信息中。
11.根据权利要求8至10中任一项所述的通信***,其特征在于,所述物理通信方式信息包括共享本地内存通信方式信息、共享外部内存通信方式信息和高速互联通信方式信息中的一种。
12.根据权利要求8至10中任一项所述的通信***,其特征在于,所述通信方式参考信息还包括***物理资源使用状态。
13.根据权利要求8至10中任一项所述的通信***,其特征在于,所述通信方式解析请求还包括数据包类型和数据包大小。
14.根据权利要求8至10中任一项所述的通信***,其特征在于,所述***拓扑信息包括中央处理器CPU的架构信息、本地内存信息、外部共享内存信息、解耦架构高速互联信息和网络互连信息中的一种或多种。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2014/083378 WO2016015266A1 (zh) | 2014-07-31 | 2014-07-31 | 通信***和通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105474194A CN105474194A (zh) | 2016-04-06 |
CN105474194B true CN105474194B (zh) | 2018-06-08 |
Family
ID=55216626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480036947.6A Active CN105474194B (zh) | 2014-07-31 | 2014-07-31 | 通信***和通信方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10547668B2 (zh) |
EP (1) | EP3163461B1 (zh) |
CN (1) | CN105474194B (zh) |
WO (1) | WO2016015266A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101477511A (zh) * | 2008-12-31 | 2009-07-08 | 杭州华三通信技术有限公司 | 一种实现多操作***共享存储介质的方法和装置 |
CN101667144A (zh) * | 2009-09-29 | 2010-03-10 | 北京航空航天大学 | 一种基于共享内存的虚拟机通信方法 |
CN102047245A (zh) * | 2008-03-31 | 2011-05-04 | 亚马逊技术有限公司 | 配置计算机节点之间的通信 |
CN102110071A (zh) * | 2011-03-04 | 2011-06-29 | 浪潮(北京)电子信息产业有限公司 | 一种虚拟机集群***及其实现方法 |
CN102752802A (zh) * | 2012-07-19 | 2012-10-24 | 上海中科高等研究院 | 基于等待时间的mac资源管理方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6999998B2 (en) * | 2001-10-04 | 2006-02-14 | Hewlett-Packard Development Company, L.P. | Shared memory coupling of network infrastructure devices |
US8521966B2 (en) * | 2007-11-16 | 2013-08-27 | Vmware, Inc. | VM inter-process communications |
US8103809B1 (en) * | 2009-01-16 | 2012-01-24 | F5 Networks, Inc. | Network devices with multiple direct memory access channels and methods thereof |
CN101819564B (zh) * | 2009-02-26 | 2013-04-17 | 国际商业机器公司 | 协助在虚拟机之间进行通信的方法和装置 |
US9106540B2 (en) * | 2009-03-30 | 2015-08-11 | Amazon Technologies, Inc. | Providing logical networking functionality for managed computer networks |
US9507617B1 (en) * | 2013-12-02 | 2016-11-29 | Trend Micro Incorporated | Inter-virtual machine communication using pseudo devices |
-
2014
- 2014-07-31 CN CN201480036947.6A patent/CN105474194B/zh active Active
- 2014-07-31 EP EP14898397.6A patent/EP3163461B1/en active Active
- 2014-07-31 WO PCT/CN2014/083378 patent/WO2016015266A1/zh active Application Filing
-
2017
- 2017-01-27 US US15/417,964 patent/US10547668B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102047245A (zh) * | 2008-03-31 | 2011-05-04 | 亚马逊技术有限公司 | 配置计算机节点之间的通信 |
CN101477511A (zh) * | 2008-12-31 | 2009-07-08 | 杭州华三通信技术有限公司 | 一种实现多操作***共享存储介质的方法和装置 |
CN101667144A (zh) * | 2009-09-29 | 2010-03-10 | 北京航空航天大学 | 一种基于共享内存的虚拟机通信方法 |
CN102110071A (zh) * | 2011-03-04 | 2011-06-29 | 浪潮(北京)电子信息产业有限公司 | 一种虚拟机集群***及其实现方法 |
CN102752802A (zh) * | 2012-07-19 | 2012-10-24 | 上海中科高等研究院 | 基于等待时间的mac资源管理方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3163461B1 (en) | 2022-05-11 |
EP3163461A4 (en) | 2017-05-10 |
WO2016015266A1 (zh) | 2016-02-04 |
US10547668B2 (en) | 2020-01-28 |
US20170142193A1 (en) | 2017-05-18 |
CN105474194A (zh) | 2016-04-06 |
EP3163461A1 (en) | 2017-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11704144B2 (en) | Creating virtual machine groups based on request | |
CN105409172B (zh) | 逻辑交换机 | |
CN103731514B (zh) | 一种虚拟网络管理方法 | |
CN104468803B (zh) | 一种虚拟数据中心资源映射方法和设备 | |
CN104486234B (zh) | 一种将业务交换机卸载到物理网卡的方法及服务器 | |
CN105518620B (zh) | 一种网卡配置方法及资源管理中心 | |
CN107690622A (zh) | 实现硬件加速处理的方法、设备和*** | |
CN110221918A (zh) | 一种ns与vnf的关联方法、装置及*** | |
CN107078969A (zh) | 实现负载均衡的计算机设备、***和方法 | |
CN105379206B (zh) | 网络中的报文处理方法、转发设备和报文处理*** | |
CN108984465A (zh) | 一种消息传输方法及设备 | |
CN109445905A (zh) | 虚拟机数据通信方法和***以及虚拟机配置方法和装置 | |
CN111182037A (zh) | 一种虚拟网络的映射方法和装置 | |
CN104580029B (zh) | 地址分配方法及装置 | |
DE112017001806T5 (de) | Ein mechanismus zur entdeckung von pcie-kabeltopologien in einer rack-scale-architekturumgebung | |
CN107005452A (zh) | 一种网络功能虚拟化资源处理方法及虚拟网络功能管理器 | |
CN110688237B (zh) | 转发报文的方法、中间设备和计算机设备 | |
CN114050998A (zh) | 实现远程直接内存访问的方法、装置、电子设备及介质 | |
CN104571934B (zh) | 一种内存访问的方法、设备和*** | |
CN105704098B (zh) | 一种虚拟化网络的数据传输方法,节点控制器及*** | |
CN104750614B (zh) | 用于管理存储器的方法和装置 | |
CN105474194B (zh) | 通信***和通信方法 | |
CN108153494A (zh) | 一种io请求处理方法及装置 | |
CN104104594B (zh) | Vsu的协议报文发送与接收方法、设备及*** | |
CN114579311B (zh) | 执行分布式计算任务的方法、装置、设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |