混合网络系统、通信方法和网络节点的制作方法

文档序号:7813799阅读:352来源:国知局
混合网络系统、通信方法和网络节点的制作方法
【专利摘要】提供了混合网络系统、通信方法和网络节点。混合网络系统包括点对点网络和广播网络的组合网络体系架构,点对点网络具有多个点对点信道,每个网络节点能够经由点对点信道将消息发送到对应的网络节点或者从对应的网络节点接收消息;广播网络具有多个广播信道,每个广播信道同时最多只能有一个发送者,但能够有多个接收者;至少部分网络节点具有发送要广播的消息的能力,至少部分网络节点具有接收广播的消息的能力,至少一些网络节点被配置为至少根据自身要执行的通信任务,选择广播网络或点对点网络来完成要执行的通信任务。优选每个网络节点均具有发送和接收广播的消息的能力。本发明实施例的混合网络系统具有高灵活性和高通信性能。
【专利说明】混合网络系统、通信方法和网络节点

【技术领域】
[0001]本发明总体地涉及数据处理,更具体地涉及混合网络系统、通信方法和网络节点,能够应用于例如并行计算、数据中心、分布式文件系统等。

【背景技术】
[0002]很多高度依赖于通信的计算机领域具有提高通信性能的需求。例如,并行计算、数据中心和分布式文件系统等等。
[0003]并行计算是不断发展的计算机领域,并行计算是指在多个处理器上执行同一任务(该任务被分解并特别调整)以便更快地获得结果。并行计算基于如下事实:求解一个问题的过程通常能够被划分成多个更小的任务,这些更小的任务能够通过协调被同时执行。
[0004]并行计算机执行并行算法。并行算法被分解为许多小份任务,这些小份任务在许多不同处理装置上执行,最终再次汇总在一起以获得数据处理结果。在本说明书中,执行并行程序的各个小份的众多处理装置被称作“计算节点”,并行计算机由计算节点以及其他处理节点(例如输入/输出节点和服务节点)构成。
[0005]为了执行并行程序,在并行计算机的节点之间经常需要进行大量的数据通信。通常,节点之间进行数据通信所采用的常见方式是消息传递。
[0006]通信作为并行程序的主要组成部分之一,在很大程度上影响着并行程序的性能。
[0007]目前,MPI ( “消息传递接口(Message Passing Interface)”)是在并行计算机上运行并行程序的计算节点之间进行通信的事实标准。MPI是现有的并行通信库,是并行计算机上进行数据通信的计算机程序指令的模块。MPI由MPI论坛进行发布,MPI论坛是一个开放群,具有很多定义并维护MPI标准的组织代表。
[0008]并行程序的通信函数主要包括点对点通信函数和集合通信函数。点对点通信函数能够完运行并行成两个进程之间的数据交换,包括阻塞通信(MPI_Send,MPI_Recv)以及非阻塞通信(MPI_Isend,MPI_IrecV)等;而集合通信函数可以实现多个进程(进程组)之间的数据交换,包括 MPI_Barrier, MPI_Bcast, MPI_Allgather, MPI_Alltoall 等。在本文中,术语“点对点通信函数”可以与术语“点对点操作”通用,“集合通信函数”可以与术语“集合操作”(本领域中有时也称其为“集体操作”、“组通信”等等)通用。
[0009]发明人发现,并行计算机的并行计算能力的扩展经常受到数据通信性能的限制。随着规模的扩展,通信时间占总执行之间的比例增加,其中主要是集合通信函数的通信时间导致的,例如在2048进程的时候计算时间仅占39.2%,要提高应用的可扩展性,必须提高系统的通信性能,特别是集合通信的性能。
[0010]发明人还发现,在数据中心的云平台的操作系统镜像广播应用和分布式文件系统的文件备份应用中,也存在改进通信性能的需要。


【发明内容】

[0011]鉴于以上情况,做出了本发明。
[0012]本发明的各个实施例提供了以下技术方案:
[0013]1、一种混合网络系统,包括:
[0014]点对点网络和广播网络的组合网络体系架构,
[0015]其中,该点对点网络具有多个点对点信道,每个网络节点能够经由点对点信道将消息发送到对应的网络节点或者从对应的网络节点接收消息,以及
[0016]其中,该广播网络具有多个广播信道,每个广播信道同时最多只能有一个发送者,但能够有多个接收者;至少部分网络节点具有经由广播信道发送要广播的消息的能力,以及至少部分网络节点具有接收广播的消息的能力,
[0017]其中至少一些网络节点被配置为至少根据自身要执行的通信任务,在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
[0018]2、根据方面I的混合网络系统,其中每个网络节点都具有经由广播信道发送要广播的消息和接收广播的消息的能力,以及
[0019]每个网络节点被配置为至少根据自身要执行的通信任务,在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
[0020]3、根据方面I的混合网络系统,该混合网络系统用于高性能并行计算,其中每个网络节点用作并行计算机中的计算节点,其中各个计算节点如下执行集合操作的集合操作执行方法:
[0021]识别并行计算机系统调用的集合操作的类型;以及
[0022]依据集合操作的类型,选择采用点对点网络和/或广播网络执行该集合操作。
[0023]4、根据方面I的混合网络系统,该混合网络系统应用于数据中心,其中,该广播网络用于关于数据中心的云平台的操作系统镜像广播。
[0024]5、根据方面I的混合网络系统,该混合网络系统应用于分布式文件系统,该广播网络用于分布式文件系统的文件备份,包括通过广播网络将一个服务器上的文件内容传送到两个或两个以上的其它服务器上,以使得一个文件至少具有三个副本。
[0025]6、根据方面5的混合网络系统,在进行分布式文件系统的文件备份中采用分布式纠删码技术,该纠删码技术将一个文件的不同部分或者其校验码保存在不同的网络节点上,从而即使部分网络节点处发生故障,也能够从未发生故障节点所保存的部分文件内容和校验码上恢复出文件的全部内容,
[0026]其中将纠删码的数据分配方案发送给对应要存储部分文件内容和/或校验码的网络节点包括;
[0027]采用广播网络将全部文件内容广播给所述要存储部分文件内容和/或校验码的网络节点;以及
[0028]所述要存储部分文件内容和/或校验码的网络节点接收对应的纠删码的数据分配方案,以及接收广播的全部文件内容,然后按照对应的纠删码的数据分配方案中的设置自行保存文件的某个部分或计算校验码并保存校验码。
[0029]7、根据方面I到5中任一项的混合网络系统,其中,广播网络利用WIF1、毫米波技术和可见光网络之一来实现。
[0030]8、根据方面I到5中任一项的混合网络系统,其中点对点网络通过Infiniband或以太网来实现。
[0031]9、根据方面I到5中任一项的混合网络系统,其中点对点通信网络被用作广播网络协调和分配信息的通道。
[0032]10、根据方面I到5中任一项的混合网络系统,其中每个网络节点还被配置为根据通信量和网络使用状况,决定是否选择广播网络来完成部分广播或多播通信。
[0033]11、根据方面10的混合网络系统,所述每个网络节点还被配置为根据通信量和网络使用状况决定是否选择广播网络来完成部分广播或多播通信包括:
[0034]如果在进行具体能够采用广播算法的操作时,广播网络正被其它操作占用,根据广播网络的占用情况和/或该具体操作从广播网络中能够得到的好处的评估来确定此时是等待广播网络被释放还是马上通过点对点网络进行通信。
[0035]12、根据方面10的混合网络系统,所述每个网络节点还被配置为根据通信量和网络使用状况决定是否选择广播网络来完成部分广播或多播通信包括:
[0036]如果在进行具体能够采用广播算法的操作时,要由其进行广播操作的网络节点的存储空间量不满足该操作对存储空间量的要求,则采用点对点网络来实现该操作。
[0037]13、根据方面I到5中任一项的混合网络系统,该混合网络系统中仅部分网络节点具有经由广播信道发送要广播的消息的能力,当不具有发送要广播的消息的能力的网络节点需要向其它网络节点广播消息时,该网络节点将消息发送到具有发送要广播的消息的能力的网络节点,然后由该具有发送要广播的消息的能力的网络节点向其它节点广播消息。
[0038]14、根据方面I到5中任一项的混合网络系统,该混合网络系统中仅部分网络节点具有接收广播的消息的能力,当不具有接收广播的消息的能力的网络节点需要从网络节点接收广播的消息时,该不具有接收广播的消息的能力的网络节点通过点对点通信或者内存共享来获得该广播的消息。
[0039]15、根据方面3的混合网络系统,所述依据集合操作的类型,选择采用点对点网络和/或广播网络执行该集合操作包括:
[0040]对于仅涉及点对点通信的集合操作,采用点对点网络来实现,而对于仅涉及广播或多播通信的集合操作,采用广播网络来实现,对于涉及点对点通信和广播或多播通信两种的集合操作,采用点对点网络实现其中的点对点通信以及采用广播网络来实现其中的广播或多播通信。
[0041]16、根据方面15的混合网络系统,其中:
[0042]如果该集合操作为MPI_Bcast或MPI_Scatter,则选用广播网络来执行该集合操作。
[0043]17、根据方面15的混合网络系统,其中:
[0044]如果该集合操作的类型为MPI_A1 lgather, MPI_Alltoall 或 MPI_A1 Ireduce,则将该集合操作分解为MPI_Bcast和其它集合操作,对于分解后的MPI_Bcast选用广播网络来执行该集合操作。
[0045]18、根据方面15的混合网络系统,其中:
[0046]如果该集合操作的类型为MPI_Barrier、MPI_Gather或MPI_Reduce,则选用点对点网络来执行该集合操作。
[0047]19、一种混合网络系统中的通信方法,该混合网络系统包括:
[0048]点对点网络和广播网络的组合网络体系架构,
[0049]其中,该点对点网络具有多个点对点信道,每个网络节点可以经由点对点信道将消息发送到对应的网络节点或者从对应的网络节点接收消息,以及
[0050]其中,该广播网络具有多个广播信道,每个广播信道同时最多只能有一个发送者,但能够有多个接收者;至少部分网络节点具有经由广播信道发送要广播的消息的能力,以及至少部分网络节点具有接收广播的消息的能力,
[0051]该通信方法包括:至少一些网络节点至少根据要执行的通信任务来在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
[0052]20、根据方面19的通信方法,其中每个网络节点都具有经由广播信道发送要广播的消息和接收广播的消息的能力,
[0053]该通信方法包括:每个网络节点至少根据自身要执行的通信任务,在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
[0054]21、根据方面19的通信方法,该混合网络系统用于高性能并行计算,其中每个网络节点用作并行计算机中的计算节点,其中各个计算节点如下执行集合操作的集合操作执行方法:
[0055]识别并行计算机系统调用的集合操作的类型;以及
[0056]依据集合操作的类型,选择采用点对点网络和/或广播网络执行该集合操作。
[0057]22、根据方面19的通信方法,该混合网络系统应用于数据中心,其中,要云平台的操作系统镜像广播的网络节点选择广播信道进行云平台的操作系统镜像广播。
[0058]23、根据方面19的通信方法,该混合网络系统应用于分布式文件系统,其中要进行文件备份的网络节点通过广播网络将要备份的文件内容传送到两个或两个以上的其它网络节点上,以使得一个文件至少具有三个副本。
[0059]24、根据方面23的通信方法,在进行分布式文件系统的文件备份中采用分布式纠删码技术,该纠删码技术将一个文件的不同部分或者其校验码保存在不同的网络节点上,从而即使部分网络节点处发生故障,也能够从未发生故障节点所保存的部分文件内容和校验码上恢复出文件的全部内容,
[0060]其中将纠删码的数据分配方案发送给对应要存储部分文件内容和/或校验码的网络节点包括;
[0061]采用广播网络将全部文件内容广播给所述要存储部分文件内容和/或校验码的网络节点;以及
[0062]所述要存储部分文件内容和/或校验码的网络节点接收对应的纠删码的数据分配方案,以及接收广播的全部文件内容,然后按照对应的纠删码的数据分配方案中的设置自行保存文件的某个部分或计算校验码并保存校验码。
[0063]25、根据方面19到24中任一项的通信方法,还包括使用点对点通信网络作为广播网络协调和分配信息的通道。
[0064]26、根据方面19到24中任一项的通信方法,还包括每个网络节点根据通信量和网络使用状况,决定是否选择广播网络来完成部分广播或多播通信。
[0065]27、根据方面26的通信方法,所述每个网络节点根据通信量和网络使用状况决定是否选择广播网络来完成部分广播或多播通信包括:
[0066]如果在进行具体能够采用广播算法的操作时,广播网络正被其它操作占用,则根据广播网络的占用情况和/或该具体操作从广播网络中能够得到的好处的评估来确定此时是等待广播网络被释放还是马上通过点对点网络进行通信。
[0067]28、根据方面26的通信方法,所述每个网络节点根据通信量和网络使用状况决定是否选择广播网络来完成部分广播或多播通信包括:
[0068]如果在进行具体能够采用广播算法的操作时,要由其进行广播操作的网络节点的存储空间量不满足该操作对存储空间量的要求,则采用点对点网络来实现该操作。29、根据方面20的通信方法,所述依据集合操作的类型,选择采用点对点网络和/或广播网络执行该集合操作包括:
[0069]对于仅涉及点对点通信的集合操作,采用点对点网络来实现,而对于仅涉及广播或多播通信的集合操作,采用广播网络来实现,对于涉及点对点通信和广播或多播通信两种的集合操作,采用点对点网络实现其中的点对点通信以及采用广播网络来实现其中的广播或多播通信。
[0070]30、根据方面29的通信方法,其中:
[0071]如果该集合操作为MPI_Bcast或MPI_Scatter,则选用广播网络来执行该集合操作。
[0072]31、根据方面29的通信方法,其中:
[0073]如果该集合操作的类型为MPI_A1 lgather, MPI_Alltoall 或 MPI_A1 Ireduce,则将该集合操作分解为MPI_Bcast和其它集合操作,对于分解后的MPI_Bcast选用广播网络来执行该集合操作。
[0074]32、根据方面29的通信方法,其中:
[0075]如果该集合操作的类型为MPI_Barrier、MPI_Gather或MPI_Reduce,则选用点对点网络来执行该集合操作。
[0076]33、一种混合网络系统中的网络节点,该混合网络系统包括点对点网络和广播网络的组合网络体系架构,该点对点网络具有多个点对点信道,该广播网络具有多个广播信道,每个广播信道同时最多只能有一个发送者,但能够有多个接收者,
[0077]该网络节点能够经由点对点信道将消息发送到对应的网络节点或者从对应的网络节点接收消息,以及具有经由广播信道发送要广播的消息和接收广播的消息的能力,以及
[0078]该网络节点被配置为至少根据自身要执行的通信任务,在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
[0079]34、根据方面33的网络节点,该混合网络系统用于高性能并行计算,其中网络节点用作并行计算机中的计算节点,其中网络节点如下执行集合操作的集合操作执行方法:
[0080]识别并行计算机系统调用的集合操作的类型;以及
[0081]依据集合操作的类型,选择采用点对点网络和/或广播网络执行该集合操作。
[0082]35、根据方面33的网络节点,该混合网络系统应用于数据中心,其中,该网络节点使用广播信道进行关于数据中心的云平台的操作系统镜像广播。
[0083]36、根据方面33的网络节点,该混合网络系统应用于分布式文件系统,该网络节点使用广播信道进行文件备份,包括通过广播信道将自身的文件内容传送到两个或两个以上的其它服务器上,以使得一个文件至少具有三个副本。
[0084]37、根据方面33的网络节点,混合网络系统在进行分布式文件系统的文件备份中采用分布式纠删码技术,该纠删码技术将一个文件的不同部分或者其校验码保存在不同的网络节点上,从而即使部分网络节点处发生故障,也能够从未发生故障节点所保存的部分文件内容和校验码上恢复出文件的全部内容,
[0085]其中网络节点将纠删码的数据分配方案发送给对应要存储部分文件内容和/或校验码的网络节点包括;
[0086]采用广播网络将全部文件内容广播给所述要存储部分文件内容和/或校验码的网络节点,从而所述要存储部分文件内容和/或校验码的网络节点接收对应的纠删码的数据分配方案,以及接收广播的全部文件内容,然后按照对应的纠删码的数据分配方案中的设置自行保存文件的某个部分或计算校验码并保存校验码。
[0087]38、根据方面33到37中任一项的网络节点,该网络节点还根据通信量和网络使用状况,决定是否选择广播网络来完成部分广播或多播通信。
[0088]39、根据方面38的网络节点,所述网络节点还根据通信量和网络使用状况决定是否选择广播网络来完成部分广播或多播通信包括:
[0089]如果在进行具体能够采用广播算法的操作时,广播网络正被其它操作占用,则根据广播网络的占用情况和/或该具体操作从广播网络中能够得到的好处的评估来确定此时是等待广播网络被释放还是马上通过点对点网络进行通信。
[0090]40、根据方面38的网络节点,所述网络节点还根据通信量和网络使用状况决定是否选择广播网络来完成部分广播或多播通信包括:
[0091]如果在进行具体能够采用广播算法的操作时,要由其进行广播操作的网络节点的存储空间量不满足该操作对存储空间量的要求,则采用点对点网络来实现该操作。
[0092]41、根据方面34的网络节点,所述依据集合操作的类型,选择采用点对点网络和/或广播网络执行该集合操作包括:
[0093]对于仅涉及点对点通信的集合操作,采用点对点网络来实现,而对于仅涉及广播或多播通信的集合操作,采用广播网络来实现,对于涉及点对点通信和广播或多播通信两种的集合操作,采用点对点网络实现其中的点对点通信以及采用广播网络来实现其中的广播或多播通信。
[0094]42、根据方面41的网络节点,其中:
[0095]如果该集合操作为MPI_Bcast或MPI_Scatter,则选用广播网络来执行该集合操作。
[0096]43、根据方面41的网络节点,其中:
[0097]如果该集合操作的类型为MPI_A1 lgather, MPI_Alltoall 或 MPI_A1 Ireduce,则将该集合操作分解为MPI_Bcast和其它集合操作,对于分解后的MPI_Bcast选用广播网络来执行该集合操作。
[0098]44、根据方面41的网络节点,其中:
[0099]如果该集合操作的类型为MPI_Barrier、MPI_Gather或MPI_Reduce,则选用点对点网络来执行该集合操作。
[0100]利用根据本发明实施例的混合网络系统,同时配置有点对点网络和广播网络的网络架构,能够根据具体要执行的任务所需要执行的通信,来选择点对点网络或广播网络完成该通信,从而与传统的单纯点对点网络架构相比能够带来灵活性,减少通信次数,降低通信所需时间,减轻点对点通信网络资源的压力,提高应用的扩展性。
[0101]利用根据本发明实施例的应用了混合网络架构的并行计算机和集合操作执行方法,采用了点对点网络和广播网络的体系结构,选取集合操作中的至少部分广播或多播通信用广播网络完成,由此能够显著提高集合通信的性能,提高并行计算的扩展性。
[0102]利用本发明实施例的应用于数据中心的混合网络,可以将镜像通过广播网络发送,从而大大降低了虚拟机部署时的网络开销。
[0103]利用本发明实施例的应用于分布式文件系统的混合网络,仅需要通过广播网络传送一次文件内容即可完成至少三个副本,显著提高了通信性能,节省了计算资源。

【专利附图】

【附图说明】
[0104]从下面结合附图对本发明实施例的详细描述中,本发明的这些和/或其它方面和优点将变得更加清楚并更容易理解,其中:
[0105]图1示出了一个曙光5000A网络拓扑示例的示意图。
[0106]图2示出了根据本发明实施例的点对点网络和广播网络的混合网络的示意图。
[0107]图3示出了仅有点对点网络时和有广播网络和点对点网络两者支持时常见MPI通信操作的复杂度,其中P指并行进程数。
[0108]图4示出了根据本发明实施例的并行计算机中执行集合操作的集合操作执行方法200的总体流程图。

【具体实施方式】
[0109]为了使本领域技术人员更好地理解本发明,下面结合附图和【具体实施方式】对本发明作进一步详细说明。
[0110]在本申请中,“点对点网络”或“点对点通信网络”是指数据以点到点的方式在计算机或通信设备中传输。星型网、环形网采用这种传输方式。
[0111]“广播网络”是指数据在公用介质中传输。无线网和总线型网络属于这种类型。
[0112]下文将按如下顺序进行描述:
[0113]1、混合网络系统的实施例
[0114]2、混合网络系统在高性能计算机上的应用实施例
[0115]3、混合网络系统在数据中心上的应用实施例
[0116]4、混合网络系统在分布式系统的文件备份上的应用实施例
[0117]5、混合网络系统中的通信方法实施例
[0118]1、混合网络系统的实施例
[0119]撰写本申请文件时的点对点通信网络的典型示例是包交换的光纤网络,其是高性能计算机网络经常采用的网络类型。图1示出了一个曙光5000A网络拓扑示例的示意图,其中,每个节点4个4核AMD处理器,节点之间通过IB网络连接,每个阵列10个节点,连在一个24 口交换机上,每个交换机有10根线分别连接到上层的交换机,上层是10个288 口的交换机,总计下来,共有192个阵列,共7680个CPU,30720个核(Core)。点对点通信延迟小(Ius),带宽高(1-1OOgbps),但实现广播和多播代价较高。
[0120]根据本发明实施例,提供了一种混合网络系统,包括:点对点网络和广播网络的组合网络体系架构,其中,该点对点网络具有多个点对点信道,每个网络节点能够经由点对点信道将消息发送到对应的网络节点或者从对应的网络节点接收消息,以及其中,该广播网络具有多个广播信道,每个广播信道同时最多只能有一个发送者,但能够有多个接收者;至少部分网络节点具有经由广播信道发送要广播的消息的能力,以及至少部分网络节点具有接收广播的消息的能力,其中至少一些网络节点被配置为至少根据自身要执行的通信任务,在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
[0121]图2示意性地示出了根据本发明实施例的混合网络系统100的结构示意图。
[0122]在图2例示的混合网络系统100中,各个网络节点110中的任意两个网络节点通过点对点网络交换机120而点对点地连接,同时每个网络节点110均具有经由广播信道发送要广播的消息和接收广播的消息的能力。
[0123]需要说明的是,图2例示的混合网络系统100仅为示例,而不应被视为对本发明的限制。实际上,可以存在更多或更少的网络节点,网络节点可以被组织为多个层级,可以存在各种层级的点对点网络交换机,以及可以并非所有网络节点均具有经由广播信道发送要广播的消息和接收广播的消息的能力,例如,可以是一个局域网内仅一个或更多个网络节点具有发送要广播的消息的能力。
[0124]优选地,混合网络系统中的每个网络节点都具有经由广播信道发送要广播的消息和接收广播的消息的能力,以及每个网络节点被配置为至少根据自身要执行的通信任务,在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。例如,如下文将要详细描述的,在并行计算机的情况下,可以根据要执行的集体操作的类型,决定是使用广播网络还是使用点对点网络进行消息的传送。
[0125]作为示例,广播网络可以利用WIF1、毫米波技术和可见光网络之一来实现。目前,60Ghz毫米波的标准802.1lad,最高可以支持6.76Gbps的带宽,未来有望支持数十Gbps。LIFI技术已经可以提供1Gbps量级的通信带宽,并有潜力提高到10Gbps量级,请参见如下网页链接 http: //in.rbth.com/economics/2014/07/01/Ii~fi internet solut1nfrom russian company attracting foreign cli 36347.html 上的介绍。可见,无线局域网的带宽与有线网络已经基本在同一数量级上。
[0126]作为示例,点对点网络可以通过Infiniband或以太网来实现。
[0127]在一个示例中,点对点通信被用作广播网络协调和分配信息的通道,这是因为,由于广播网络需要通过无线信道进行传输,而如果多个节点在同一信道上发送消息,会造成相互干扰;那么每个节点在哪个信道上进行发送或接收,需要一个机制来进行协调,这个机制所需的通信可以由点对点通信网络来协助完成。
[0128]在一个示例中,每个网络节点还可以被配置为根据通信量和网络使用状况,决定是否选择广播网络来完成部分广播或多播通信。
[0129]例如,每个网络节点还被配置为根据通信量和网络使用状况决定是否选择广播网络来完成部分广播或多播通信可以包括:如果在进行具体能够采用广播算法的操作时,广播网络正被其它操作占用,根据广播网络的占用情况和/或该具体操作从广播网络中能够得到的好处的评估来确定此时是等待广播网络被释放还是马上通过点对点网络进行通信。
[0130]在一个示例中,所述每个网络节点还被配置为根据通信量和网络使用状况决定是否选择广播网络来完成部分广播或多播通信可以包括:如果在进行具体能够采用广播算法的操作时,要由其进行广播操作的网络节点的存储空间量不满足该操作对存储空间量的要求,则采用点对点网络来实现该操作。
[0131]在一个示例中,该混合网络系统中仅部分网络节点具有经由广播信道发送要广播的消息的能力,当不具有发送要广播的消息的能力的网络节点需要向其它网络节点广播消息时,该网络节点将消息发送到具有发送要广播的消息的能力的网络节点,然后由该具有发送要广播的消息的能力的网络节点向其它节点广播消息。
[0132]在一个示例中,该混合网络系统中仅部分网络节点具有接收广播的消息的能力,当不具有接收广播的消息的能力的网络节点需要从网络节点接收广播的消息时,该不具有接收广播的消息的能力的网络节点通过点对点通信或者内存共享来获得该广播的消息。
[0133]利用根据本发明实施例的混合网络系统,同时配置有点对点网络和广播网络的网络架构,能够根据具体要执行的任务所需要执行的通信,来选择点对点网络或广播网络完成该通信,从而与传统的单纯点对点网络架构相比能够带来灵活性,减少通信次数,降低通信所需时间,减轻点对点通信网络资源的压力,提高应用的扩展性。
[0134]根据本发明实施例的混合网络系统能够具有各种应用,作为示例而非作为限制,例如可以应用于并行计算机领域,数据中心领域,分布式文件系统领域等等,下边分别予以说明。
[0135]2、混合网络系统在高性能计算机上的应用实施例
[0136]下面将详细描述根据本发明实施例的混合网络系统在高性能计算机上的应用示例。
[0137]为了易于解释,本说明书中有时使用MPI术语,不过不应将使用MPI术语视为对本发明的限制。
[0138]发明人发现,并行计算机的并行计算能力的扩展经常受到数据通信性能的限制,尤其是受到集合操作的限制。随着并行计算规模的扩展,通信时间占总执行之间的比例增力口,其中主要是集合操作导致的。发明人研究7个NPB-E程序的可扩展性,发现在将进程数从1024个扩展到16384个(即进程数扩展了 16倍)时,7个NPB-E程序中的四个程序FT、BT、CG、LU的加速比小于8,其中FT程序展现了最差的可扩展性,这是因为FT程序通信需求最大,需要多次全交换(MPI_Alltoall)通信;EP程序展现了线性加速比,这是因为EP计算过程中没有通信操作、只在初始化和结束的时候各调用一次通信函数。此外,发明人经过实验发现稀疏矩阵算法的GRAPES有同样问题,例如在1024个进程时,计算时间占程序总执行时间的67.5%,而当扩展到2048个进程的时候,计算时间仅占39.2%。由此,发明人得出结论,要提高应用的可扩展性,必须提高系统的通信性能,特别是集合操作的通信性能。
[0139]在描述根据本发明的提高并行计算机系统的通信性能的实施例之前,为便于理解,概要描述并行计算机的常见组织形式和并行计算机中涉及的通信函数的类型及其功能介绍。
[0140]并行计算机的计算节点被组织成至少一个针对并行计算机上的集合并行操作的计算节点工作组。每个工作组是在其上执行集合操作的计算节点的集合。可以将工作组实现为MP1“通信器(communicator) ”。通过工作组的计算节点之间的数据通信来实现集合操作。集合操作是那些涉及工作组中的所有计算节点的函数。并行程序中的操作包括点对点操作和集合操作。点对点操作是由两个计算节点通信完成的操作。集合操作是一种同时,或近似同时,由计算节点的工作组中的所有计算节点执行的操作,是消息传递计算机指令。集合操作要求工作组内的所有计算节点上的所有进程调用具有匹配参数的同一集合操作。MPI点对点操作能够完成两个进程之间的数据交换,包括阻塞通信(MPI_Send,MPI_Recv)以及非阻塞通信(MPI_ISend,MPI_IrecV)等;而集合操作可以实现多个进程(进程组)之间的数据交换,包括 MPI_Barrier, MPI_Bcast, MPI_A1 lgather, MPI_Alltoall 等。
[0141]某些集合操作具有在工作组中的特定计算节点上运行的一个发起进程或接收进程。例如在“广播”集合操作(例如,MPI_Bcast)中,向所有其它计算节点发送数据的计算节点上的进程时发起进程。在“收集”集合操作(例如,MPI_Allgather)中,例如,从其它计算节点接收所有数据的计算节点上的进程是接收进程。运行这种发起或接收进程的计算节点被称作逻辑根。
[0142]大多数集合操作是如下四种基本操作的变形或组合:广播(例如,MPI_Bcast)、收集(例如,MPI_gather)、分散(例如,MPI_Scatter)和归约(例如,MPI_reduce)。用于这些集合操作的接口在MPI论坛发布的MPI标准中定义。不过,用于执行集合操作的算法并没有在MPI标准中进行定义。
[0143]在广播操作中,所有进程指定同一根进程,该根进程的缓冲器内容被发送,除根之外的进程指定接收缓冲器。在广播操作之后,所有缓冲器包含了来自根进程的消息。
[0144]与广播操作一样,分散操作(例如,MPI_Scatter)也是一对多集合操作。在分散操作中,逻辑根将根上的数据划分成多段,并将各个段分配给工作组中的各个计算节点。在分散操作中,所有进程通常指定相同接收个数(receive count)。发送参数只对根进程有意义,该根进程的缓冲器实际包含发送个数(sendCOunt)*N个元素,其中,N是给定的计算节点组中的进程的数目。发送缓冲器被分割并分散给所有进程(包括逻辑根上的进程)。每个计算节点被分配以连续的序号(rank)。在该操作后,根按照进程序号的升序的顺序向每个进程发送了 sendcount个数据元素。序号O的进程就从发送缓冲器接收第一个sendcount个数据元素。序号I从发送缓冲器接收下一个sendcount个数据元素,如此等等。
[0145]收集操作是多对一集合操作,即,可以视为分散操作的相反操作。也就是说,收集是一种多对一集合操作,其中,一种数据类型的元素被从各个级别的计算节点收集到根节点的接收缓冲器中。
[0146]归约操作也是一种多对一集合操作,包括对两个数据元素执行的算术或逻辑操作。所有进程指定相同“个数(count)”和相同算术或逻辑函数。在归约后,所有进程都将count个数据元素从计算节点发送缓冲器发送到根进程。在归约操作中,来自对应发送缓冲器位置的数据元素通过算术或逻辑运算被成对组合以在根进程的接收缓冲器中生成单个对应元素。专用归约操作能够在运行时进行定义。并行通信库可以支持预定义操作。例如,MPI提供了如下的预定义归约操作:MPI_MAX (求最大),MPI_MIN (求最小),MPI_SUM (求和),MPI_L0R(逻辑或)等等。
[0147]传统地,集合通信主要通过点对点通信实现,S卩,通过将集合通信函数分解为点对点通信来实现。实现的策略主要有recursive doubling和binomial tree两种方法,核心思想是利用集合通信中的并行性,把P个进程上的集合通信操作在log(p)步骤下完成。有关这方面的介绍可以下列文献Zhang J, Zhai J, Chen W,Zheng W Process mapping for mpicollective communicat1ns[M]//Euro-Par 2009Parallel Processing.Springer BerlinHeidelberg, 2009:81-92。
[0148]根据本发明实施例的混合网络系统在并行计算机上的应用可以显著提高集合通信的性能。
[0149]如前所述,广播(例如,MPI_Bcast)、收集(例如,MPI_gather)、分散(例如,MP 1_Scatter)和归约(例如,MPI_reduce)是四种基本集合操作。
[0150]在这四种基本集合操作中,收集(gather)和归约(reduce)基本功能是收集信息,因此不能通过广播受益。广播(Bcast)和分散(scatter)都可以通过广播降低复杂度,能够极大地提高性能。具体地,发起广播操作的节点能够通过单个广播发送而一次将内容发送到所有接收节点,从而算法复杂度从传统的O (Log (P))降低到0(1)。关于分散操作,发起分散操作的节点可以一次广播发送全部信息,即发送被划分成段的数据的全部,接收方根据自己的需要舍弃掉没用的部分,而不是传统的发送方顺次向每个接收方进程发送各相应段的数据。可见虽然从通信量上看,采用广播网络的scatter算法并没有节省,但是从通信次数上看,大大节省了,因为只需要一次发送接收全部信息,接收方根据自己的需要舍弃掉没用的部分就好了,本领域技术人员公知消息每次发送会有一个和消息大小无关的固定开销,因此减少消息次数是很有意义的。
[0151]其他的大多数集合操作是上述四种基本操作的变形或组合。因此,如果其他的集合操作能够变形或分解为包括上述广播和分散操作,则原则上均能够通过广播网络提高通信性能。例如,allreduce相当于reduce加beast,其中reduce部分不能通过广播提高性能,仍然需要Log(P)步,但beast部分可以将复杂度从Log(P)步降低到I步;alltoall在点对点通信网络上的实现需要P步(其中,P为并行进程数),但在广播网络的支持下,可以将其分解为gather加scatter,从而可以先将所有节点的信息发送给一个节点(我们称作主节点),这需要Log(P))步来完成,然后再进行广播操作,就完成了 alltoall。Allgather操作也可以分解为gather和beast,其中gather仍然需要Log (P)步,但beast可以用广播网络从原来的Log(P)部优化为I步。
[0152]图3示出了仅有点对点网络和有广播网络和点对点网络支持时常见MPI通信操作的复杂度,其中P指并行进程数。
[0153]由图3可见,如前面所解释的,在广播网络和点对点混合网络支持下,8个MPI集合操作中:
[0154](I) barrier, gather和reduce基本是收集信息,因此不能通过广播受益;
[0155](2)Beast, alltoall和scatter都可以通过广播降低复杂度,具有巨大的性能提高潜力;
[0156](3)allgather和allreduce虽然不能降低复杂度,但引入广播网络可以提高性能,比如allreduce相当于reduce加beast,其中beast可以利用广播网优化。
[0157]在一个示例中,可以根据通信量和网络使用状况,来决定是否选取广播网络来完成部分广播或多播通信。
[0158]例如,如果在进行具体能够采用广播算法的操作时,要由其进行广播操作的计算节点的存储空间量不满足该操作对存储空间量的要求,则采用点对点网络来实现该操作。例如,对于MPI_alltoall,如前所述,在广播网络的支持下,可以先将所有节点的信息发送给一个节点(我们称作主节点),这需要Log(P)步来完成,然后再进行广播操作,就完成了alltoall。但是这样做有一个前提,就是MPI_alltoall的所有消息都能在主节点的内存中存放下,当消息较大而内存不够大时,alltoall就不能使用广播网络来完成,仍需要用传统的点对点通信网络和算法来完成。
[0159]再例如,如果在进行具体能够采用广播算法的操作时,广播网络正被其它操作占用,则可以根据广播网络的占用情况和/或该具体操作从广播网络中能够得到的好处的评估来确定此时是等待广播网络被释放还是马上通过点对点网络进行通信,例如在1000个节点上进行广播的好处可能大于将文件副本广播给3个接收者。
[0160]在一个示例中,每个计算节点均被配置为具有无线广播能力和无线接收能力,从而可以最大限度地利用无线网络的广播能力,提高集合操作的通信性能,增加并行计算机的扩展能力。
[0161]在另一个示例中,可以全部计算节点具有无线接收能力,但仅全部计算节点中的部分节点具有无线广播能力,例如一个工作组中的一个或多个计算节点具有无线广播能力。在这种情况下,当不具有无线广播能力的节点需要向其它节点广播消息时,该节点可以将消息发送到具有无线广播能力的节点,然后由该具有无线广播能力的节点向其它节点广播消息。
[0162]在另一个示例中,可以全部计算节点中仅部分节点具有无线接收能力,以及全部计算节点中仅部分节点具有无线广播能力。在这种情况下,当不具有无线广播能力的节点需要向其它节点广播消息时,该节点可以将消息发送到具有无线广播能力的节点,然后由该具有无线广播能力的节点向其它节点广播消息,具有无线接收能力的计算节点获得该消息,而不具有无线接收能力的节点仍需通过点对点通信网络或者其他方式(例如内存共享)来获得该消息。例如,可以使得配置高性能计算机的机柜具有无线广播和无线接收能力,而在机柜内部的网络节点间的通信以点对点网络来实现。
[0163]在另一个示例中,可以在并行计算机中专门提供用于提供无线广播服务的服务节点,而所有计算节点具有无线接收能力,计算节点可以具有或者不具有无线广播能力,在某计算节点不具有无线广播能力而希望向其它节点广播消息时,该计算节点可以将要广播的消息发送到(通过有线通信或者无线通信,或者内存共享)该服务节点,由该服务节点来完成向其它节点广播消息的功能。
[0164]在一个示例中,每个计算节点中或者某些特定计算节点中可以维持适合通过广播操作来提高通信性能的集合操作的列表,由此所述识别并行计算机系统调用的集合操作的类型包括查看该调用的集合操作是否在该列表中来判定集合操作类型,并进而决定是采用点对点通信网络还是广播网络还是两者来完成该集合操作。
[0165]利用根据本发明实施例的高性能计算机,由于采用了点对点网络和广播网络的混合网络架构,从而通过广播网络来实现或参与实现能够通过广播来提高通信性能的集合操作,从而能够显著提高集合操作的通信性能,进而提高系统的通信性能,增强高性能计算的扩展性。
[0166]3、混合网络系统在数据中心上的应用实施例
[0167]下面描述根据本发明实施例的点对点网络和广播网络的混合网络的体系结构在关于数据中心的云平台的操作系统镜像广播上的应用。
[0168]数据中心的一个重要应用是提供云计算服务,如给用户提供一个数百台台虚拟机的Linux操作系统环境。部署虚拟机通常需要将虚拟机镜像从镜像服务器通过网络传输到待部署的服务器上,并完成一些配置工作,如通过DHCP获取IP地址等。如果要部署P个虚拟机,采用纯点对点网络时至少需要Log(P)步才能完成虚拟机镜像传输,会占用大量的网络带宽,造成部署速度慢,而且会影响数据中心的其它应用。采用本发明实施例的混合网络方法,可以将镜像通过广播网络发送,I步就可以完成虚拟机镜像的传输,从而大大降低了虚拟机部署时的网络开销。在完成虚拟机镜像传输后,可以通过点对点网络完成获取IP地址等配置工作。通过将根据本发明实施例的混合网络系统应用于云平台的操作系统镜像传输,相比于传统的通过点对点网络传输操作系统镜像的方法,显著提高了通信性能,降低了网络开销。
[0169]4、混合网络系统在分布式系统的文件备份上的应用实施例
[0170]作为另一示例,点对点网络和广播网络的混合网络的体系结构的另一个应用为分布式文件系统的文件备份,包括通过广播网络将一个服务器上的文件内容传送到两个或两个以上的其它服务器上,以使得一个文件至少具有三个副本。
[0171]备份是分布式文件系统(如HDFS)提高文件可用性和访问性能的常见策略。常见的策略是每个文件有三个副本,在仅有点对点通信的情况下,要求通过网络将文件内容传送两次。但采用本发明实施例的混合网络方法,仅需要通过广播网络传送一次文件内容即可完成三个副本。
[0172]在一个示例中,使用混合网络架构优化分布式纠删码存储系统性能。
[0173]分布式纠删码指利用纠删码技术,将一个文件的不同部分或者其校验码保存在不同的节点上,从而即使部分节点发生故障,也可以从未发生故障节点所保存的部分文件信息和校验码上恢复出文件的全部信息。与仅采用文件副本的方法相比,分布式纠删码技术可以用较少的存储量达到相同的容错能力。
[0174]例如目前广泛使用的3副本技术可以容忍2个副本所在节点的故障,但需要3倍的存储容量。一种典型的纠删码技术可以在3个节点上各保存原始文件的三分之一的内容,并在另外两个节点上保存校验码,校验码的大小也是文件的三分之一,可见这种纠删码技术可以用1.67倍原文件的存储量达到容忍两个节点故障的能力,比副本系统大大降低了存储容量。但可以看出,要采用纠删码方案,需要将原始文件和校验码传递给除了拥有原始文件的节点之外的其它4个节点。在混合网络架构下,可以根据文件大小以及广播网络和点对点网络的带宽差别,选取传递文件和校验码的方法。例如,仍以保存文件的三个副本为例,一种示例性实现方法是先采用点对点网络将纠删码的数据分配方案发送给4个节点,然后采用广播网络将文件内容广播给4个节点,4个节点在接收后按照自己在纠删码数据分配方案中的设定自行保存文件的某个部分或计算校验码。这样总的数据传输量是原始文件的大小,传输次数是I次。如果只采用点对点网络传输,则至少要传1.33倍原文件大小的数据,而且传输次数为4次。
[0175]通过将根据本发明实施例的混合网络系统应用于分布式文件系统的文件备份,能够显著降低内容传输的次数。通过利用使用混合网络架构优化分布式纠删码存储系统性能,能够显著降低内容传输的次数,降低传送的内容量,减少网络开销。
[0176]5、混合网络系统中的通信方法实施例
[0177]如前所述,根据本发明实施例的混合网络系统包括点对点网络和广播网络的组合网络体系架构,其中,该点对点网络具有多个点对点信道,每个网络节点可以经由点对点信道将消息发送到对应的网络节点或者从对应的网络节点接收消息,以及其中,该广播网络具有多个广播信道,每个广播信道同时最多只能有一个发送者,但能够有多个接收者;至少部分网络节点具有经由广播信道发送要广播的消息的能力,以及至少部分网络节点具有接收广播的消息的能力。
[0178]根据本发明的实施例,提供了一种应用于混合网络系统中的通信方法,包括:至少一些网络节点至少根据要执行的通信任务来在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
[0179]在一个示例中,每个网络节点都具有经由广播信道发送要广播的消息和接收广播的消息的能力,
[0180]该通信方法包括:每个网络节点至少根据自身要执行的通信任务,在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
[0181]下面结合图4描述根据本发明实施例的并行计算机中执行集合操作的集合操作执行方法200。
[0182]根据本发明实施例的并行计算机包括多个计算节点,其体系结构包括点对点网络和广播网络。
[0183]如图4所示,根据本发明实施例的集合操作执行方法可以包括如下步骤。
[0184]在步骤S210中,识别并行计算机系统调用的集合操作的类型;以及在步骤S220中依据集合操作的类型,选择采用点对点网络和/或广播网络执行该集合操作。
[0185]在一个示例,集合操作的类型分为如下三种,根据集合操作中涉及的通信,将集合操作分为三种,第一种仅涉及点对点通信,第二种仅涉及广播或多播通信,第三种涉及点对点通信和广播或多播通信两种;以及对于仅涉及点对点通信的集合操作,采用点对点网络来实现,而对于仅涉及广播或多播通信的集合操作,采用广播网络来实现,对于涉及点对点通信和广播或多播通信两种的集合操作,采用点对点网络实现其中的点对点通信以及采用广播网络来实现其中的广播或多播通信。
[0186]在一个示例中,如前所述,可以根据通信量和网络使用状况,决定是否选取广播网络来完成部分广播或多播通信。
[0187]例如,根据通信量和网络使用状况,决定是否选取广播网络来完成部分广播或多播通信可以包括:如果在进行具体能够采用广播算法的操作时,广播网络正被其它操作占用,根据广播网络的占用情况和/或该具体操作从广播网络中能够得到的好处的评估来确定此时是等待广播网络被释放还是马上通过点对点网络进行通信。
[0188]在另一个示例中,根据通信量和网络使用状况,决定是否选取广播网络来完成部分广播或多播通信可以包括:如果在进行具体能够采用广播算法的操作时,要由其进行广播操作的计算节点的存储空间量不满足该操作对存储空间量的要求,则采用点对点网络来实现该操作。
[0189]在一个示例中,并行计算机中的每个计算节点均具有无线广播能力和无线接收能力,计算节点在需要时自身直接向其它计算节点广播消息,其它计算节点直接接收广播的消息。
[0190]在一个示例中,并行计算机中仅部分计算节点和/或专门的服务节点具有无线广播能力,当不具有无线广播能力的计算节点需要向其它节点广播消息时,该节点将消息发送到具有无线广播能力的节点,然后由该具有无线广播能力的节点向其它节点广播消息。
[0191]在一个示例中,并行计算机中仅部分计算节点具有无线接收能力,当不具有无线接收能力的计算节点需要从其它节点接收广播的消息时,该不具有无线接收能力的计算节点通过点对点通信或者内存共享来间接地获得该广播的消息。
[0192]在一个示例中,如果集合操作为MPI_Bcast或MPI_Scatter,则选用广播网络来执行该集合操作。
[0193]在一个示例中,如果该集合操作的类型为MPI_A1 lgather, MPI_A1 ItoalI或MPI_Allreduce,则将该集合操作分解为MPI_Bcast和其它集合操作,对于分解后的MPI_Bcast选用广播网络来执行该集合操作。
[0194]在一个示例中,广播网络可以利用WIF1、毫米波技术和可见光网络之一来实现。
[0195]在一个示例中,如果该集合操作的类型为MPI_Barrier、MPI_Gather或MPI_Reduce,则选用点对点网络来执行该集合操作。
[0196]在一个示例中,点对点网络通过Infiniband或以太网来实现。
[0197]在一个示例中,维持适合通过广播操作来降低复杂度的集合操作的列表;所述识别并行计算机系统调用的集合操作的类型包括查看该调用的集合操作是否在该列表中。
[0198]在一个示例中,在采用广播网络执行集合操作的情况下,利用点对点通信网络作为广播网络协调和分配信息的通道。
[0199]根据本发明的一个实施例,还提供了一种数据中心的虚拟机部署方法,其通信利用点对点网络和广播网络的混合网络来实现,该虚拟机部署方法包括通过广播网络将虚拟机镜像从镜像服务器传输到待部署的服务器上
[0200]根据本发明的一个实施例,还提供了一种分布式文件系统的文件备份方法,其通信利用点对点网络和广播网络的混合网络来实现,该文件备份方法包括通过广播网络将一个服务器上的文件内容传送到两个或两个以上的其它服务器上,以使得一个文件至少具有三个副本。
[0201]在一个示例中,在进行分布式文件系统的文件备份方法中采用分布式纠删码技术,该纠删码技术将一个文件的不同部分或者其校验码保存在不同的网络节点上,从而即使部分网络节点处发生故障,也能够从未发生故障节点所保存的部分文件内容和校验码上恢复出文件的全部内容,其中将纠删码的数据分配方案发送给对应要存储部分文件内容和/或校验码的网络节点包括;采用广播网络将全部文件内容广播给所述要存储部分文件内容和/或校验码的网络节点;以及所述要存储部分文件内容和/或校验码的网络节点接收对应的纠删码的数据分配方案,以及接收广播的全部文件内容,然后按照对应的纠删码的数据分配方案中的设置自行保存文件的某个部分或计算校验码并保存校验码。
[0202]以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本【技术领域】的普通技术人员来说许多修改、组合、次组合和变更都是显而易见的。因此,本发明的保护范围应该以权利要求的保护范围为准。
【权利要求】
1.一种混合网络系统,包括: 点对点网络和广播网络的组合网络体系架构, 其中,该点对点网络具有多个点对点信道,每个网络节点能够经由点对点信道将消息发送到对应的网络节点或者从对应的网络节点接收消息,以及 其中,该广播网络具有多个广播信道,每个广播信道同时最多只能有一个发送者,但能够有多个接收者;至少部分网络节点具有经由广播信道发送要广播的消息的能力,以及至少部分网络节点具有接收广播的消息的能力, 其中至少一些网络节点被配置为至少根据自身要执行的通信任务,在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
2.根据权利要求1的混合网络系统,其中每个网络节点都具有经由广播信道发送要广播的消息和接收广播的消息的能力,以及 每个网络节点被配置为至少根据自身要执行的通信任务,在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
3.根据权利要求1的混合网络系统,该混合网络系统用于高性能并行计算,其中每个网络节点用作并行计算机中的计算节点,其中各个计算节点如下执行集合操作的集合操作执行方法: 识别并行计算机系统调用的集合操作的类型;以及 依据集合操作的类型,选择采用点对点网络和/或广播网络执行该集合操作。
4.根据权利要求1的混合网络系统,该混合网络系统应用于数据中心,其中,该广播网络用于关于数据中心的云平台的操作系统镜像广播。
5.根据权利要求1的混合网络系统,该混合网络系统应用于分布式文件系统,该广播网络用于分布式文件系统的文件备份,包括通过广播网络将一个服务器上的文件内容传送到两个或两个以上的其它服务器上,以使得一个文件至少具有三个副本。
6.根据权利要求5的混合网络系统,在进行分布式文件系统的文件备份中采用分布式纠删码技术,该纠删码技术将一个文件的不同部分或者其校验码保存在不同的网络节点上,从而即使部分网络节点处发生故障,也能够从未发生故障节点所保存的部分文件内容和校验码上恢复出文件的全部内容, 其中将纠删码的数据分配方案发送给对应要存储部分文件内容和/或校验码的网络节点包括; 采用广播网络将全部文件内容广播给所述要存储部分文件内容和/或校验码的网络节点;以及 所述要存储部分文件内容和/或校验码的网络节点接收对应的纠删码的数据分配方案,以及接收广播的全部文件内容,然后按照对应的纠删码的数据分配方案中的设置自行保存文件的某个部分或计算校验码并保存校验码。
7.根据权利要求1到5中任一项的混合网络系统,其中,广播网络利用WIF1、毫米波技术和可见光网络之一来实现。
8.根据权利要求1到5中任一项的混合网络系统,其中点对点网络通过Infiniband或以太网来实现。
9.一种混合网络系统中的通信方法,该混合网络系统包括: 点对点网络和广播网络的组合网络体系架构, 其中,该点对点网络具有多个点对点信道,每个网络节点能够经由点对点信道将消息发送到对应的网络节点或者从对应的网络节点接收消息,以及 其中,该广播网络具有多个广播信道,每个广播信道同时最多只能有一个发送者,但能够有多个接收者;至少部分网络节点具有经由广播信道发送要广播的消息的能力,以及至少部分网络节点具有接收广播的消息的能力, 该通信方法包括:至少一些网络节点至少根据要执行的通信任务来在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
10.一种混合网络系统中的网络节点,该混合网络系统包括点对点网络和广播网络的组合网络体系架构,该点对点网络具有多个点对点信道,该广播网络具有多个广播信道,每个广播信道同时最多只能有一个发送者,但能够有多个接收者, 该网络节点能够经由点对点信道将消息发送到对应的网络节点或者从对应的网络节点接收消息,以及具有经由广播信道发送要广播的消息和接收广播的消息的能力,以及该网络节点被配置为至少根据自身要执行的通信任务,在广播信道和点对点信道中进行选择,以及利用所选择的信道完成要执行的通信任务。
【文档编号】H04L29/08GK104184828SQ201410455171
【公开日】2014年12月3日 申请日期:2014年9月9日 优先权日:2014年9月9日
【发明者】郑纬民, 陈文光, 薛巍, 翟季冬, 陈康 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1