用于高性能计算机系统的隔离方法及高性能计算机系统
1.本发明涉及高性能计算机系统的安全隔离技术,具体涉及一种用于高性能计算机系统的隔离方法及高性能计算机系统。
背景技术:
2.近年来,高性能计算(high performance computing,hpc)的发展趋势表明,随着高性能计算与云计算、大数据、人工智能的融合创新,高性能计算与云计算已经深度结合。首先,高性能计算通常是以消息传递接口(massive passing interface,mpi)、高效通信、异构计算等技术为主,偏向独占式运行,而云计算有弹性部署能力与容错能力,支持虚拟化、资源统一调度和弹性系统配置。随着技术发展,高性能计算与容器云正融合创新,高性能云成为新的产品服务,亚马逊云(amazon web service,aws)、阿里云、腾讯云以及百度云,已经都基于超级计算与云计算技术推出了高性能云服务和产品。其次,高性能计算应用从过去的高精尖向更广更宽的方向发展。随着高性能计算机的发展,尤其是使用成本的不断下降,其应用领域也从具有国家战略意义的核武器研制、信息安全、石油勘探、航空航天和高冷的科学计算领域向更广泛的国民经济主战场快速扩张,比如制药、基因测序、动漫渲染、数字电影、数据挖掘、金融分析以及互联网服务等等,可以说已经深入到国民经济的各行各业。从近年高性能计算排行榜top500来看,高性能计算系统过去主要集中于科学计算、政府、能源、电力、气象等领域,而近五年互联网公司部署的高性能计算系统占据了相当大比例,主要应用为云计算、机器学习、人工智能、大数据分析以及短视频等。这些领域对于计算的需求急剧上升,高性能计算正与互联网技术进行融合。
3.现代数据中心网络虚拟化的特点,使得互不信任的用户之间,既要能够实现隔离,又要能够依据用户的需要对资源进行调整与共享,还要保证服务的质量。要想达到这些要求,就必须将数据中心的网络划分成不同的虚拟网,但是这种划分是静态的,限制了网络的灵活度,为了提高资源的利用率以及对数据中心的资源进行调整,例如,对于一个提供web服务以及视频的数据中心来说,白天需要的web资源可能会比较多,为了能够提高资源的利用率,就要将资源的需求情况进行调整,并对资源的需求进行动态的调整,将数据中心的虚拟网进行动态的配置。进行动态配置虚拟网要使用虚拟化的技术,也就是在运行的过程中将网络动态的划分成不同的分区。
4.另一方面,高性能计算机的复杂性随系统规模增长而超线性增长。在大规模复杂系统构建中,中心化设计是目前系统物理设计的主流。因为供电、散热、空调、网络布线、i/o分配、用户接入、稳定性、可靠性、可维护性等方面的要求,通常系统会在中心机房统一搭建,且搭建后原则上应该要维持系统的物理形态稳定性,不能频繁变更系统物理结构,以保障系统的可持续性和稳定性。目前,高性能计算机系统一般采用板卡-构件-机框-机柜-系统的层次式集约设计结构。高性能计算机系统由多个机柜组成,机柜间通过互连网络快速扩展为大规模高性能计算机系统;每个机柜包含多个机框;每个机框包含多个构件和电源模块;每个构件包含多个板卡,各构件通过机框背板连接;板卡包含计算板卡、通信板卡、监
控板卡等,每个计算板卡上有多个结点,通信板卡由用于将计算结点接入系统的网络接口芯片和用于路由交换的路由交换芯片构成。系统构建完成后,原则上会完成网络布线和连接,结点间或构件间或机柜间都有相应的物理线路构成网络拓扑,实现系统全局连通和可达性。由于系统物理特性稳定,不会因为网络分区隔离的要求,频繁调整网络部件的连线。
5.随着hpc计算速度从千万亿次级(p级,petascale)向百亿亿次级(e级,exascale)的不断提升,系统规模不断扩展,高性能计算机将支持更多的用户和应用,经常会出现要求用户间隔离、应用间隔离的应用场景,甚至会要求单一用户的多个应用间实现隔离。现代数据中心网络虚拟化的特点,使得互不信任的用户之间,既要能够实现隔离,又要能够依据用户的需要对资源进行调整与共享,还要保证服务的质量。因此需要高性能计算机系统支持灵活的网络分区隔离机制,支持全系统规模虚拟环境之间的隐私保护和安全隔离,以及高性能计算资源弹性扩展和高可用。
技术实现要素:
6.本发明要解决的技术问题:针对现有技术的上述问题,提供一种用于高性能计算机系统的隔离方法及高性能计算机系统,本发明能够针对高性能计算机系统进行网络安全隔离,在确保高性能计算资源弹性扩展和高可用的前提下保证高性能计算机的安全可靠。
7.为了解决上述技术问题,本发明采用的技术方案为:
8.一种用于高性能计算机系统的隔离方法,包括进行结点级隔离:
9.s101,为各个计算结点配置路由表,在路由表中为该计算结点、允许与该计算结点通信的其他计算结点之间配置有效的路由信息;
10.s102,当任意源计算结点需要与目标计算结点进行通信时,该源计算结点首先根据配置的路由表来查与目标计算结点之间是否存在有效的路由信息,若存在有效的路由信息,则源计算结点与目标计算结点进行通信,否则源计算结点放弃与目标计算结点进行通信。
11.可选地,步骤s102还包括当任意目标计算结点收到来自源计算结点的报文时,该目标计算结点首先根据配置的路由表来查与源计算结点之间是否存在有效的路由信息,若存在有效的路由信息,则接收来自源计算结点的报文;否则拒收来自源计算结点的报文。
12.可选地,步骤s101中还包括为高性能计算机系统的各个交换结点配置路由表,在路由表中为允许通信的计算结点之间配置有效的路由信息;步骤s102中还包括;在交换结点收到通信的报文时,根据报文中的源计算节点、目标计算结点是否在路由表中查询是否存在有效的路由信息,若存在有效的路由信息,则继续将该报文转发至目标计算结点,否则丢弃该报文。
13.可选地,所述配置路由表时,还包括首先确定各个计算结点对应的分区,每一个计算结点对应一个或者多个分区,且仅为作为i/o结点或全局结点的计算结点对应多个分区;然后配置路由表的路由信息以允许相同分区的计算结点通信、禁止不同分区的计算结点通信,从而使得对应多个分区的计算结点作为i/o结点或全局结点实现多个分区的计算结点的全局互连。
14.可选地,所述配置路由表的路由信息包括配置有效的路由链路和网络出口。
15.可选地,所述配置路由表的路由信息以允许相同分区的计算结点通信、禁止不同
分区的计算结点通信是指仅配置相同分区的计算结点的路由信息以允许相同分区的计算结点通信、不配置不同分区的计算结点的路由信息以禁止不同分区的计算结点通信;或者为配置相同分区的计算结点的路由信息并设置为有效状态以允许相同分区的计算结点通信、配置不同分区的计算结点的路由信息并设置为有效状态以禁止不同分区的计算结点通信。
16.可选地,还包括进行拓扑级隔离:基于高性能计算机系统的计算结点的网络接口芯片或高性能计算机系统的路由交换芯片中配置链路使能功能,使能或关断指定的网络端口,将该网络端口所连接的物理线路从逻辑或物理上断开以实现高性能计算机系统的拓扑级隔离。
17.可选地,所述实现高性能计算机系统的拓扑级隔离包括对高性能计算机系统的机柜间物理线路的隔离、机框间物理线路的隔离两者中的至少一种。
18.可选地,还包括进行用户级隔离:在计算结点上部署虚拟机,每个虚拟机运行独立的操作系统、且具有独立的存储空间和i/o空间,通过虚拟机实现高性能计算机系统的用户级隔离。
19.可选地,所述通过虚拟机实现用户级隔离时,还包括:在单个计算结点上部署的虚拟机小于设定阈值时,为该计算结点上的每一个虚拟机分配独立的虚拟网卡以实现虚拟机间的通信隔离,且每个虚拟网卡使用独立的寄存器配置空间以实现虚拟网卡之间的通信隔离,各个虚拟机对应的虚拟网卡之间的通信通过上层交换实现;在单个计算结点上部署的虚拟机大于等于设定阈值时,为该计算结点上的虚拟机分配公用的一个或多个虚拟网卡,至少两个虚拟机之间通过虚拟交换机vswitch以实现对同一虚拟网卡的复用,且该计算结点通过网络接口芯片的虚拟局域网来从硬件实现虚拟网卡间的流量隔离和保护。
20.此外,本发明还提供一种用于应用前述的用于高性能计算机系统的隔离方法的高性能计算机系统,包括一个或多个机柜,所述机柜包含一个或多个机框,所述机框包含电源模块和一个或多个构件,所述构件包括通过机框背板连接的多个板卡,所述多个板卡包括计算板卡和通信板卡,每一个计算板卡上设有多个计算结点,所述通信板卡上设有用于将计算节点接入高性能计算机系统的网络接口芯片,以及用于实现计算节点之间路由交换的路由交换芯片,且通信板卡的路由交换芯片之间通过物理线路构成网络拓扑。
21.和现有技术相比,本发明主要具有下述优点:
22.1、本发明包括针对高性能计算机系统进行结点级隔离,包括为各个计算结点配置路由表,在路由表中为该计算结点、允许与该计算结点通信的其他计算结点之间配置有效的路由信息;当任意源计算结点需要与目标计算结点进行通信时,该源计算结点首先根据配置的路由表来查与目标计算结点之间是否存在有效的路由信息,若存在有效的路由信息,则源计算结点与目标计算结点进行通信,否则源计算结点放弃与目标计算结点进行通信。本发明提供基于路由配置的结点级隔离方法,通过路由表配置管理,在保持全局物理连通的情况下,通过路由配置,将系统灵活地划分为不同分区,分区间相互隔离,结点间无法通信,实现任意结点间的通信隔离。基于路由配置的结点级分区隔离机制,较拓扑隔离更具灵活性,对结点间的物理位置没有要求。另外,基于路由配置的分区隔离机制,通常以软件配置路由表方式实现,支持动态配置,较拓扑隔离更具灵活性,对结点间的物理位置没有要求。
23.2、适用范围广。随着高性能计算与云计算、大数据、人工智能的融合创新,高性能计算与云计算已经深度结合,网络隔离技术既要满足高性能计算机中心化设计的要求,又要满足数据中心虚拟化要求,本发明包括针对高性能计算机系统进行结点级隔离,能够针对高性能计算机系统进行网络安全隔离,在确保高性能计算资源弹性扩展和高可用的前提下保证高性能计算机的安全可靠。
24.3、本发明还可以进一步结合拓扑级隔离、用户级隔离,以实现按隔离粒度从大到小分为拓扑级隔离、结点级隔离、用户级隔离三个层次,提供多种网络分区隔离机制,可以根据系统、用户及应用需求,联合使用,从而支持不同粒度、不同强度的动静结合的网络分区隔离机制,支持全系统规模虚拟环境之间的隐私保护和安全隔离,以及高性能计算资源弹性扩展和高可用,以实现动静态相结合的灵活的网络分区隔离机制,具有灵活性强的优点。
附图说明
25.图1为本发明实施例中进行结点级隔离的流程示意图。
26.图2为本发明实施例中路由表的路由信息配置实例。
27.图3为本发明实施例中拓扑级隔离的示意图。
28.图4为本发明实施例中用户级隔离的虚拟化原理示意图。
29.图5为本发明实施例中多种粒度的隔离的网络管理人员的操作流程示意图。
具体实施方式
30.如图1所示,本实施例用于高性能计算机系统的隔离方法包括进行结点级隔离:
31.s101,为各个计算结点配置路由表,在路由表中为该计算结点、允许与该计算结点通信的其他计算结点之间配置有效的路由信息;
32.s102,当任意源计算结点需要与目标计算结点进行通信时,该源计算结点首先根据配置的路由表来查与目标计算结点之间是否存在有效的路由信息,若存在有效的路由信息,则源计算结点与目标计算结点进行通信,否则源计算结点放弃与目标计算结点进行通信。
33.为了进一步提升结点级隔离的安全性,作为一种可选的实施方式,步骤s102还包括当任意目标计算结点收到来自源计算结点的报文时,该目标计算结点首先根据配置的路由表来查与源计算结点之间是否存在有效的路由信息,若存在有效的路由信息,则接收来自源计算结点的报文;否则拒收来自源计算结点的报文。
34.为了进一步提升结点级隔离的安全性,作为一种可选的实施方式,本实施例步骤s101中还包括为高性能计算机系统的各个交换结点配置路由表,在路由表中为允许通信的计算结点之间配置有效的路由信息;步骤s102中还包括;在交换结点收到通信的报文时,根据报文中的源计算节点、目标计算结点是否在路由表中查询是否存在有效的路由信息,若存在有效的路由信息,则继续将该报文转发至目标计算结点,否则丢弃该报文。通过上述方式,从计算结点、交换结点两个维度实现了网络的隔离,更加安全可靠。
35.为了简化路由表配置、提升路由表配置的效果,本实施例中配置路由表时,还包括首先确定各个计算结点对应的分区,每一个计算结点对应一个或者多个分区,且仅为作为
i/o结点或全局结点的计算结点对应多个分区;然后配置路由表的路由信息以允许相同分区的计算结点通信、禁止不同分区的计算结点通信,从而使得对应多个分区的计算结点作为i/o结点或全局结点实现多个分区的计算结点的全局互连。基于路由配置的结点级分区隔离机制,较拓扑隔离更具灵活性,对计算结点间的物理位置没有要求。一个结点可以属于1个分区,也可以所以多个分区,后者通常针对i/o结点或全局结点。基于路由配置的分区隔离机制,通常以软件配置路由表方式实现,支持动态配置。在保持全局物理连通的情况下,通过路由配置,将系统灵活地划分为不同分区,分区间相互隔离,结点间无法通信。基于路由配置的结点级分区隔离机制,通常以软件配置路由表方式实现,支持动态配置,较拓扑隔离更具灵活性,对结点间的物理位置没有要求。通过上述方法,只要为各个计算节点赋予分区的标记即可实现路由表配置,即可利用程序自动根据分区的标记来生成路由表配置,从而可有效达到简化路由表配置、提升路由表配置的目的。作为一种可选的实施方式,利用程序自动根据分区的标记来生成路由表配置包括:
36.s201,从高性能计算机系统中的计算结点集合中遍历选择一个当前计算结点,若全部遍历选择结束,则结束并退出;否则,跳转步骤s202;
37.s202,读取当前计算结点被赋予的分区信息,若分区信息为空,则结束并退出;否则,将当前计算结点被赋予的分区生成分区集合(例如生成数组),跳转步骤s203;
38.s203,从分区集合中遍历选择一个当前分区,若全部遍历选择结束,则跳转步骤s201;否则,跳转步骤s204;
39.s204,获取被赋予的当前分区的所有其他计算结点,针对每一个被赋予的当前分区的所有其他计算结点:根据当前计算结点、被赋予的当前分区的所有其他计算结点生成路由信息,并将路由信息分别写入当前计算结点、每一个被赋予的当前分区的所有其他计算结点,以及交换节点的路由表中(上述路由信息的配置的三种行为,可根据前文结点级隔离的具体方式来进行选择);跳转步骤s203。
40.作为一种可选的实施方式,本实施例中配置路由表的路由信息以允许相同分区的计算结点通信、禁止不同分区的计算结点通信是指仅配置相同分区的计算结点的路由信息以允许相同分区的计算结点通信、不配置不同分区的计算结点的路由信息以禁止不同分区的计算结点通信;本实施例中,配置路由表的路由信息包括配置有效的路由链路和网络出口,通过路由链路和网络出口来实现两个计算结点之间的路由信息,可方便实现两个计算结点之间的路由通信。此外,考虑到高性能计算机系统中计算结点众多(例如为十万级别),因此要生成一次路由信息需要消耗一定时间。为了提升高性能计算机系统动态调整配置路由表的效率,作为另一种可选的实施方式,本实施例中配置路由表的路由信息以允许相同分区的计算结点通信、禁止不同分区的计算结点通信是指为配置相同分区的计算结点的路由信息并设置为有效状态以允许相同分区的计算结点通信、配置不同分区的计算结点的路由信息并设置为有效状态以禁止不同分区的计算结点通信。
41.如图2所示,针对结点1~结点n共n个计算结点,通过配置结点1与结点2至结点n间的路由表,实现任意计算结点间的通信隔离。结点1的路由表中定义结点1到其它结点的路由链路和网络出口。当允许结点1和结点n通信时,可以配置结点对间的路由,如图2中非阴影部分所示;当不允许结点1和结点k通信时,可以不配置结点对间的路由或配置为无效,当网络中出现结点1和结点k的通信报文时,由于无法获得可用通信路由,该网络报文将会被
丢弃,实现结点1和结点k间的网络阻断,如图2中阴影部分所示。
42.此外,作为对结点级隔离的进一步补充,本实施例方法还包括进行拓扑级隔离:基于高性能计算机系统的计算结点的网络接口芯片或高性能计算机系统的路由交换芯片中配置链路使能功能,使能或关断指定的网络端口,将该网络端口所连接的物理线路从逻辑或物理上断开以实现拓扑隔离。具体地,可在网络接口芯片和路由交换芯片中配置链路使能功能,通过配置链路serdes、链路状态,使能或关断某个网络端口,即便两个端口间有物理线路连接,也可以在逻辑上关断该线路,如图3所示,第一机柜和第一交换机相连,第二机柜和第二交换机相连,第一交换机和第二交换机之间通过物理线路连接,通过拓扑级隔离可实现第一交换机和第二交换机之间物理线路的断开,从而实现拓扑级隔离。
43.实现高性能计算机系统的拓扑级隔离包括对高性能计算机系统的机柜间物理线路的隔离、机框间物理线路的隔离两者中的至少一种。例如,高性能计算机系统的网络拓扑上两个机柜(第一机柜、第二机柜)间通过交换机(第一交换机、第二交换机)间的连接实现连通,但可以通过链路配置,关闭机柜间的逻辑链路,实现机柜间的网络分区隔离。该分区隔离机制用于拓扑级隔离,实现机柜间隔离,机框间隔离,甚至结点间隔离。此类隔离机制可实现与物理链路隔离同等的效果,分区隔离能力强,可静态配置,也可通过软件进行动态配置。
44.对于大规模网络应用而言,拓扑级隔离和结点级隔离的粒度仍相对较粗,进一步的需求需要实现同一计算结点上运行的多个应用程序间的隔离。而且,对计算结点而言,基于虚拟机的资源分配与调度机制已相对较为成熟。每个虚拟机运行独立的操作系统,有独立的存储空间和i/o空间,虚拟机间相对隔离,无法直接访问相互间的资源。因此,该类隔离需求可以通过网络虚拟化能力来实现用户级隔离。因此,作为对拓扑级隔离和结点级隔离的进一步补充,本实施例方法还包括进行用户级隔离:在计算结点上部署虚拟机,每个虚拟机运行独立的操作系统、且具有独立的存储空间和i/o空间,通过虚拟机实现用户级隔离。
45.用户级隔离实现要求高性能计算机系统的网络接口芯片和路由交换芯片均支持网络虚拟化功能。网络接口芯片的主机接口支持sr-iov(single root i/o virtualization,单根i/o虚拟化)功能,在单一网卡中支持多个以太网虚拟网卡和数个虚拟管理接口。每个虚拟网卡使用独立的寄存器配置空间,实现虚拟网卡间的通信隔离,虚拟网卡间通信仍需要通过上层交换来实现。
46.本实施例中,通过虚拟机实现用户级隔离时,还包括在单个计算结点上部署的虚拟机小于设定阈值时,为该计算结点上的每一个虚拟机分配独立的虚拟网卡以实现虚拟机间的通信隔离,且每个虚拟网卡使用独立的寄存器配置空间以实现虚拟网卡之间的通信隔离,各个虚拟机对应的虚拟网卡之间的通信通过上层交换实现;在单个计算结点上部署的虚拟机大于等于设定阈值时,为该计算结点上的虚拟机分配公用的一个或多个虚拟网卡,至少两个虚拟机之间通过虚拟交换机vswitch以实现对同一虚拟网卡的复用,且该计算结点通过网络接口芯片的虚拟局域网来从硬件实现虚拟网卡间的流量隔离和保护。当结点支持的虚拟机规模较大时,虚拟机之间通过vswitch机制复用虚拟网卡,网络接口芯片支持vlan和vxlan两种虚拟机局域网技术,通过硬件实现虚拟网卡间的流量隔离和保护。通过网络接口芯片和路由交换芯片的虚拟化功能,实现用户虚拟机级的网络分区隔离。此类隔离通过相应的网络配置管理软件动态实现,粒度更小,灵活性更高,可以实现用户无感知的通
信隔离。
47.如图4所示,基于网络接口芯片主机接口的单根io虚拟化(single-root i/o virtualization,sr-iov)功能,在单一网络接口芯片中支持m个以太网虚拟网卡和n个虚拟管理接口,m和n为自然数;每个虚拟网卡使用独立的寄存器配置空间,实现虚拟网卡间的通信隔离,虚拟网卡间通过交换网络来实现通信。
48.综上所述,本实施例方法支持拓扑级、结点级、用户级的层次化网络隔离,按隔离粒度从大到小分为拓扑级隔离、结点级隔离、用户级隔离三个层次。本发明能够通过硬件实现静态硬分区隔离,也可以通过软件实现动态分区隔离,根据应用需求不同,支持不同粒度、不同强度的分区隔离,实现灵活的高性能计算机系统网络分区隔离机制,支持全系统规模虚拟环境之间的隐私保护和安全隔离,以及高性能计算资源弹性扩展和高可用。网络管理人员根据系统、用户及应用需求,设置隔离要求,选择拓扑级隔离、结点级隔离或用户级隔离。拓扑级隔离指高性能计算机系统中一部分单元或结点组和另一部分单元间或结点组物理隔离,如机柜间隔离、机框间隔离;结点级隔离指高性能计算机系统中一部分结点和另一部分结点间隔离,如机框内结点间隔离;用户级隔离指运行在同一结点上的多个用户程序间的网络分区隔离;根据分区隔离粒度的要求选择拓扑级隔离、结点级隔离、用户级隔离中的一种或多种隔离方法。拓扑级隔离实现包括在网络接口芯片和路由交换芯片中配置链路使能功能,通过配置链路serdes、链路状态,使能或关断某个网络端口,实现拓扑隔离。结点级隔离实现包括在网络接口芯片和路由交换芯片中,通过配置路由表来定义结点对间的传输链路,实现任意结点间的通信隔离。用户级隔离实现包括基于网络接口芯片和路由交换芯片的网络虚拟化功能,实现用户虚拟机级的网络分区隔离。用户级隔离实现方法中,在结点支持的虚拟机规模较少时,为每个虚拟机分配独立的虚拟网卡,实现虚拟机间的通信隔离;当结点支持的虚拟机规模较大时,虚拟机之间通过虚拟交换机(virtual switch,vswitch)机制复用虚拟网卡,基于网络接口芯片的虚拟局域网(virtual local area network,vlan)和虚拟可扩展局域网(virtual extensible local area network,vxlan)功能,硬件实现虚拟网卡间的流量隔离和保护。拓扑级隔离方法可以通过静态配置链路实现,也可以通过软件进行动态配置实现。结点级隔离方法以软件配置路由表方式实现。用户级隔离方法通过网络配置管理软件来动态实现。本实施例方法主要具有下述优点:1、适用范围广。随着高性能计算与云计算、大数据、人工智能的融合创新,高性能计算与云计算已经深度结合,网络隔离技术既要满足高性能计算机中心化设计的要求,又要满足数据中心虚拟化要求,本实施例提供拓扑级隔离、结点级隔离、用户级隔离三个层次的网络分区隔离机制,既支持全系统规模虚拟环境之间的隐私保护和安全隔离,又满足高性能计算资源弹性扩展和高可用。2、本实施例能够实现动静态相结合的灵活的网络分区隔离机制,灵活性强。本实施例按隔离粒度从大到小分为拓扑级隔离、结点级隔离、用户级隔离三个层次,提供多种网络分区隔离机制,可以根据系统、用户及应用需求,联合使用,从而支持不同粒度、不同强度的动静结合的网络分区隔离机制,支持全系统规模虚拟环境之间的隐私保护和安全隔离,以及高性能计算资源弹性扩展和高可用。3、本实施例提供基于链路的拓扑级隔离方法,拓扑上两个机柜间通过交换机间的连接实现连通,但可以通过链路配置,关闭机柜间的逻辑链路,实现机柜间的网络分区隔离。该分区隔离机制用于拓扑级隔离,实现机柜间隔离,机框间隔离,甚至结点间隔离。此类隔离机制可实现与物理链路隔离同等的效果,分区
隔离能力强,可以静态配置,也可以通过软件进行动态配置。4、本实施例提供基于路由配置的结点级隔离方法,通过路由表配置管理,在保持全局物理连通的情况下,通过路由配置,将系统灵活地划分为不同分区,分区间相互隔离,结点间无法通信,实现任意结点间的通信隔离。基于路由配置的结点级分区隔离机制,较拓扑隔离更具灵活性,对结点间的物理位置没有要求。另外,基于路由配置的分区隔离机制,通常以软件配置路由表方式实现,支持动态配置,较拓扑隔离更具灵活性,对结点间的物理位置没有要求。5、本实施例提供基于网络虚拟化的用户级隔离方法,基于网络接口芯片和路由交换芯片的网络虚拟化功能,实现用户虚拟机级的网络分区隔离。对于大规模网络应用,拓扑级隔离和结点级隔离的粒度仍相对较粗,进一步的需求需要实现同一结点上运行的多个应用程序间的隔离。用户级隔离方法通过相应的网络配置管理软件来动态实现,粒度更小,灵活性更高,可以实现用户无感知的通信隔离。总体而言,本实施例提供了一种软硬协同的网络分区隔离机制,通过硬件实现静态硬分区隔离,通过软件实现动态分区隔离,多种网络分区隔离机制,可以根据系统、用户及应用需求,联合使用,从而支持不同粒度、不同强度的动静结合的网络分区隔离机制。
49.此外,本实施例还提供一种用于应用前述用于高性能计算机系统的隔离方法的高性能计算机系统,包括一个或多个机柜,机柜包含一个或多个机框,机框包含电源模块和一个或多个构件,构件包括通过机框背板连接的多个板卡,多个板卡包括计算板卡和通信板卡,每一个计算板卡上设有多个计算结点,通信板卡上设有用于将计算节点接入高性能计算机系统的网络接口芯片,以及用于实现计算节点之间路由交换的路由交换芯片,且通信板卡的路由交换芯片之间通过物理线路构成网络拓扑,可实现高性能计算机系统中计算结点的全局连通和可达性。该高性能计算机系统形成了板卡-构件-机框-机柜-系统的层次式集约设计结构,由多个机柜组成,机柜间通过互连网络快速扩展为大规模高性能计算机系统;每个机柜包含多个机框;每个机框包含多个构件和电源模块;每个构件包含多个板卡,各构件通过机框背板连接;板卡包含计算板卡、通信板卡、监控板卡等,每个计算板卡上有多个结点,通信板卡由用于将结点接入系统的网络接口芯片和用于路由交换的路由交换芯片构成。系统构建完成后,原则上会完成网络布线和连接,结点间或部件间或机柜间都有相应的物理线路构成网络拓扑,实现系统全局连通和可达性。由于系统物理特性稳定,不会因为分区隔离的要求,频繁调整网络部件的连线。而高性能计算和云计算要求高性能计算机系统支持灵活的网络分区隔离机制,支持全系统规模虚拟环境之间的隐私保护和安全隔离,以及高性能计算资源弹性扩展和高可用。此外,为了实现拓扑级隔离,还可以根据需要在网络接口芯片和路由交换芯片中设置物理开关,以在网络接口芯片和路由交换芯片中配置链路使能功能,通过配置链路serdes、链路状态,使能或关断某个网络端口,达到从物理上关断该线路的目的。
50.以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
技术特征:
1.一种用于高性能计算机系统的隔离方法,其特征在于,包括进行结点级隔离:s101,为各个计算结点配置路由表,在路由表中为该计算结点、允许与该计算结点通信的其他计算结点之间配置有效的路由信息;s102,当任意源计算结点需要与目标计算结点进行通信时,该源计算结点首先根据配置的路由表来查与目标计算结点之间是否存在有效的路由信息,若存在有效的路由信息,则源计算结点与目标计算结点进行通信,否则源计算结点放弃与目标计算结点进行通信。2.根据权利要求1所述的用于高性能计算机系统的隔离方法,其特征在于,步骤s102还包括当任意目标计算结点收到来自源计算结点的报文时,该目标计算结点首先根据配置的路由表来查与源计算结点之间是否存在有效的路由信息,若存在有效的路由信息,则接收来自源计算结点的报文;否则拒收来自源计算结点的报文。3.根据权利要求2所述的用于高性能计算机系统的隔离方法,其特征在于,步骤s101中还包括为高性能计算机系统的各个交换结点配置路由表,在路由表中为允许通信的计算结点之间配置有效的路由信息;步骤s102中还包括;在交换结点收到通信的报文时,根据报文中的源计算节点、目标计算结点是否在路由表中查询是否存在有效的路由信息,若存在有效的路由信息,则继续将该报文转发至目标计算结点,否则丢弃该报文。4.根据权利要求1或2或3所述的用于高性能计算机系统的隔离方法,其特征在于,所述配置路由表时,还包括首先确定各个计算结点对应的分区,每一个计算结点对应一个或者多个分区,且仅为作为i/o结点或全局结点的计算结点对应多个分区;然后配置路由表的路由信息以允许相同分区的计算结点通信、禁止不同分区的计算结点通信,从而使得对应多个分区的计算结点作为i/o结点或全局结点实现多个分区的计算结点的全局互连。5.根据权利要求4所述的用于高性能计算机系统的隔离方法,其特征在于,所述配置路由表的路由信息以允许相同分区的计算结点通信、禁止不同分区的计算结点通信是指仅配置相同分区的计算结点的路由信息以允许相同分区的计算结点通信、不配置不同分区的计算结点的路由信息以禁止不同分区的计算结点通信;或者为配置相同分区的计算结点的路由信息并设置为有效状态以允许相同分区的计算结点通信、配置不同分区的计算结点的路由信息并设置为有效状态以禁止不同分区的计算结点通信。6.根据权利要求1所述的用于高性能计算机系统的隔离方法,其特征在于,还包括进行拓扑级隔离:基于高性能计算机系统的计算结点的网络接口芯片或高性能计算机系统的路由交换芯片中配置链路使能功能,使能或关断指定的网络端口,将该网络端口所连接的物理线路从逻辑或物理上断开以实现高性能计算机系统的拓扑级隔离。7.根据权利要求5所述的用于高性能计算机系统的隔离方法,其特征在于,所述实现高性能计算机系统的拓扑级隔离包括对高性能计算机系统的机柜间物理线路的隔离、机框间物理线路的隔离两者中的至少一种。8.根据权利要求1所述的用于高性能计算机系统的隔离方法,其特征在于,还包括进行用户级隔离:在计算结点上部署虚拟机,每个虚拟机运行独立的操作系统、且具有独立的存储空间和i/o空间,通过虚拟机实现高性能计算机系统的用户级隔离。9.根据权利要求8所述的用于高性能计算机系统的隔离方法,其特征在于,所述通过虚拟机实现用户级隔离时,还包括:在单个计算结点上部署的虚拟机小于设定阈值时,为该计
算结点上的每一个虚拟机分配独立的虚拟网卡以实现虚拟机间的通信隔离,且每个虚拟网卡使用独立的寄存器配置空间以实现虚拟网卡之间的通信隔离,各个虚拟机对应的虚拟网卡之间的通信通过上层交换实现;在单个计算结点上部署的虚拟机大于等于设定阈值时,为该计算结点上的虚拟机分配公用的一个或多个虚拟网卡,至少两个虚拟机之间通过虚拟交换机以实现对同一虚拟网卡的复用,且该计算结点通过网络接口芯片的虚拟局域网来从硬件实现虚拟网卡间的流量隔离和保护。10.一种用于应用权利要求1~9中任意一项所述的用于高性能计算机系统的隔离方法的高性能计算机系统,包括一个或多个机柜,其特征在于,所述机柜包含一个或多个机框,所述机框包含电源模块和一个或多个构件,所述构件包括通过机框背板连接的多个板卡,所述多个板卡包括计算板卡和通信板卡,每一个计算板卡上设有多个计算结点,所述通信板卡上设有用于将计算节点接入高性能计算机系统的网络接口芯片,以及用于实现计算节点之间路由交换的路由交换芯片,且通信板卡的路由交换芯片之间通过物理线路构成网络拓扑。
技术总结
本发明公开了一种用于高性能计算机系统的隔离方法及高性能计算机系统,本发明方法包括针对高性能计算机系统进行结点级隔离、拓扑级隔离以及用户级别隔离,其中结点级隔离包括为各个计算结点配置路由表,在路由表中为计算结点对之间配置有效的路由信息;当任意源计算结点与目标计算结点进行通信时,首先根据配置的路由表来查与目标计算结点之间是否存在有效的路由信息,若存在有效的路由信息,则源计算结点与目标计算结点进行通信,否则源计算结点放弃与目标计算结点进行通信。本发明能够针对高性能计算机系统进行网络安全隔离,在确保高性能计算资源弹性扩展和高可用的前提下保证高性能计算机的安全可靠。保证高性能计算机的安全可靠。保证高性能计算机的安全可靠。