CN115834263A - 一种分布式存储系统副本复制在网多播方法 - Google Patents
一种分布式存储系统副本复制在网多播方法 Download PDFInfo
- Publication number
- CN115834263A CN115834263A CN202211457213.8A CN202211457213A CN115834263A CN 115834263 A CN115834263 A CN 115834263A CN 202211457213 A CN202211457213 A CN 202211457213A CN 115834263 A CN115834263 A CN 115834263A
- Authority
- CN
- China
- Prior art keywords
- end server
- multicast
- message
- programmable switch
- multicast group
- 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
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000010076 replication Effects 0.000 title claims abstract description 24
- 238000012790 confirmation Methods 0.000 claims abstract description 63
- 230000009471 action Effects 0.000 claims abstract description 36
- 230000002776 aggregation Effects 0.000 claims abstract description 32
- 238000004220 aggregation Methods 0.000 claims abstract description 32
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 9
- 239000002699 waste material Substances 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003362 replicative effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种分布式存储系统副本复制在网多播方法,包括作为数据发送端和接收端的服务器和运行在某台服务器上的多播守护进程握手;多播守护进程通过控制平面接口向可编程交换机配置匹配动作表,控制平面将多播的复制和聚合表项下发给可编程交换机Tofino芯片;发送端服务器向接收端服务器发送数据报文,配置了多播组的可编程交换机将报文复制到多个出端口,出端口中修改报文的相应字段;接收端服务器接收到数据,发送确认报文,可编程交换机接收到来自接收端服务器的确认报文后对其进行聚合操作,聚合后发送回发送端服务器。本发明有效节省了服务器和网络中的带宽,降低了服务器CPU开销,提升了分布式存储副本复制的吞吐量。
Description
技术领域
本发明属于分布式计算系统技术领域,尤其涉及一种分布式存储系统副本复制在网多播方法。
背景技术
分布式存储系统(Distributed Storage System)作为一种新型的存储形式,被广泛应用在私有和公有数据中心中。在分布式存储系统中,多副本备份是一种最基本的备份策略,即将一份相同的数据存储在多个不同的服务器上,以实现数据的安全性、可靠性和高可用性。
远程直接内存调用(Remote Direct Memory Access,RDMA),作为一种高性能网络技术,被广泛的应用在分布式存储系统中。RDMA提供了一种可以越过目标主机的操作系统,直接访问远程的非易失存储介质(Non-Volatile Memory,NVM)的方法,来实现数据的复制和修改操作,达到低时延、高吞吐的效果。
然而,远程过程调用仅支持单播操作,基于RDMA的数据复制存在两个问题:数据冗余和单独的复制状态。一方面,多次复制的数据冗余给网络带来了巨大的带宽浪费,另一方面单独的复制状态使得发送端CPU不得不同时处理多个副本接收端的连接,包括发送请求、轮询完成事件和保持追踪每个连接的发送状态,造成几倍的CPU开销,成为性能瓶颈。
发明内容
本发明针对现有技术中的不足,提供一种分布式存储系统副本复制在网多播方法。
本发明提供一种分布式存储系统副本复制在网多播方法,包括:
将多播组中任意一台服务器作为发送端,剩余服务器均作为接收端,得到一个发送端服务器和多个接收端服务器;将发送端服务器和多个接收端服务器与多播组中运行多播守护进程的服务器建立RDMA连接;
多播守护进程向可编程交换机下发多播发送阶段的匹配动作表以及确认报文聚合阶段的匹配动作表;可编程交换机的控制平面将多播的发送阶段和确认报文聚合阶段的匹配动作表下发至可编程交换机上的Tofino芯片;所述匹配动作表包括发送端服务器IP地址、发送端服务器虚拟的目的队列对号、每个接收端服务器的目的IP地址以及每个接收端服务器的队列对号;
在多播发送阶段,发送端服务器向接收端服务器发送数据报文;配置匹配动作表的可编程交换机将数据报文复制到多个出端口,并在多个出端口中修改数据报文的目的IP地址和队列对号字段;
在多播确认报文聚合阶段,接收端服务器接收到来自发送端服务器的数据报文,并向发送端服务器发送确认报文;确认报文到达与发送端服务器直接相连的可编程交换机;与发送端服务器直接相连的可编程交换机配置确认报文聚合阶段所需的匹配动作表接收到来自接收端服务器的确认报文后对确认报文进行聚合操作,聚合后的确认报文发送回发送端服务器;其中,所述聚合操作为利用匹配动作表根据源IP地址和目的队列对地址查找多播组ID和接收端服务器在多播组内的偏移号;根据多播组ID和接收端服务器在多播组内的偏移号读取和修改确认报文的确认序列号。
进一步地,所述在多播发送阶段,发送端服务器向接收端服务器发送数据报文;配置匹配动作表的可编程交换机将数据报文复制到多个出端口,并在多个出端口中修改数据报文的目的IP地址和队列对号字段,包括:
可编程交换机在入端口收到报文后,经过多播发送阶段匹配动作表,根据发送端服务器IP地址和发送端服务器虚拟的目的队列对号匹配一个多播组ID将报文复制到所有接收端服务器的目的IP所在端口;
可编程交换机在出端口中根据匹配动作表查找多播组ID和复制的偏移号查找对应的目的IP地址和队列对号,并修改报文的目的IP地址和队列对号字段为查到的目的IP地址和队列对号。
进一步地,每个可编程交换机依次检查对应的多播组中的接收端服务器和路由表;如果多播组有两个接收端服务器的出端口在路由表中不一致,则在对应可编程交换机上进行一次复制,得到一个多播组进行复制的全部位置。
进一步地,可编程交换机的控制平面配置多播组时指定多播组中副本复制的偏移号;可编程交换机Tofino芯片的传输管理器复制报文后,在可编程交换机的出端口查看报文的偏移号,根据多播组ID和偏移号来修改报文字段,重新计算校验和。
进一步地,可编程交换机根据确认报文的源IP和目的队列对号匹配多播组ID和在多播组内的偏移号;采用可编程交换机的寄存器保存每个多播组的每个接收端服务器当前确认的序列号;对于每个确认报文,可编程交换机更新当前接收端服务器寄存器的已确认序列号,并读取剩余接收端服务器寄存器的已确认序列号;其中已确认序列号的最小值为当前发送给发送端服务器的确认报文序列号,表示所有接收端服务器已经接收完成的序列号。
进一步地,利用可编程交换机的SALU计算单元一次性同时读写保存一个多播组已经确认的序列号的寄存器,写入新的值,读出旧的值;如果读出旧的值等于当前的新值,丢弃确认序列号对应的确认报文。
本发明提供一种分布式存储系统副本复制在网多播方法,包括作为数据发送端和接收端的服务器和运行在一台服务器上的多播守护进程握手,交换队列对信息;多播守护进程通过控制平面接口向可编程交换机配置匹配动作表,控制平面将多播的复制和聚合表项下发给可编程交换机Tofino芯片;发送端服务器向接收端服务器发送数据报文,配置了多播组的可编程交换机将报文复制到多个出端口,出端口中修改报文的相应字段;接收端服务器接收到数据,发送确认报文,可编程交换机接收到来自接收端服务器的确认报文后对其进行聚合操作,聚合后发送回发送端服务器。
本发明引入了可编程交换机来设计可靠的在网多播RDMA,实现了对端上网卡透明和兼容现有RDMA可靠性和拥塞控制机制。在网多播RDMA改善多副本复制时网络中的带宽浪费和端上服务器的CPU开销,提高多副本复制的吞吐量和分布式存储系统多副本备份的性能。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种分布式存储系统副本复制在网多播方法的流程图;
图2为本发明实施例提供的MC-RDMA协议架构图;
图3为本发明实施例提供的分布式存储系统带宽浪费示意图;
图4为本发明实施例提供的可编程交换机的处理流程结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供一种分布式存储系统副本复制在网多播方法,包括:
步骤101,将多播组中任意一台服务器作为发送端,剩余服务器均作为接收端,得到一个发送端服务器和多个接收端服务器;将发送端服务器和多个接收端服务器与多播组中运行多播守护进程的服务器建立RDMA连接。
发送数据之前,多播组成员之间需要建立连接,即通过握手来交换信息。一组多播组中,有一台服务器作为数据发送端,剩余服务器作为数据接收端,作为数据发送端和接收端的服务器和运行在一台(可以是其中任意一台)服务器上的多播守护进程建立RDMA连接。连接需要通过握手,交换队列对(Queue Pair,QP)信息,包括IP地址、各服务器的QP号和初始序列号。可选地,过程为发送端服务器和接收端服务器向多播守护进程发送自己的IP地址和QP号。多播守护进程向发送端服务器发送多播组的虚拟QP号和收到的第一个接收端服务器的IP地址,并向接收端服务器发送收到的发送端服务器地址和发送端服务器QP号。多播守护进程将这些信息发送给各台服务器,使其建立RDMA连接。同时利用这些信息整理出可编程交换机多播发送阶段的匹配动作表(Match-action table)所需的信息:发送端服务器IP地址、发送端服务器虚拟的目的QP号以及每个接收端服务器的目的IP地址,每个接收端服务器的QP号。这样,可编程交换机就可以根据收到发送端服务器发送的报文匹配到多播组,然后执行复制报文的操作。此外还需要生成多播确认报文聚合阶段的匹配动作表所需的信息:用来匹配的Key:第N个接收端服务器IP地址和发送端服务器QP号作为参数的每个接收端服务器的目的IP地址,自动按增序生成(1,2,3,…,m)的序列号以及偏移号N。
步骤102,多播守护进程向可编程交换机下发多播发送阶段的匹配动作表以及确认报文聚合阶段的匹配动作表;可编程交换机的控制平面将多播的发送阶段和确认报文聚合阶段的匹配动作表下发至可编程交换机上的Tofino芯片;所述匹配动作表包括发送端服务器IP地址、发送端服务器虚拟的目的队列对号、每个接收端服务器的目的IP地址以及每个接收端服务器的队列对号。
RDMA连接建立完成后,多播守护进程需要向可编程交换机配置多播组信息。由多播守护进程的多播组管理模块完成,多播组管理模块首先要计算分叉的位置,分叉的位置以最晚为最优,即“懒惰分叉策略”,报文越晚被复制,越能有效地节省带宽。多播复制位置算法是一种基于贪心策略算法,其内容为:每个可编程交换机依次检查自己的多播组中的接收端和自己的路由表,如果多播组有两个接收端服务器的出端口在路由表中不一致,则在这台可编程交换机上需要进行一次复制,否则交给下一台可编程交换机继续进行相同操作。最终得到一个多播组需要进行复制的全部位置。得到需要进行复制的位置后,多播组管理模块调用位于可编程交换机上的控制平面接口,如图4所示,向可编程交换机下发配置信息,包括发送阶段和确认阶段的多播组匹配,多播组IP地址和QP号等。针对RDMA单边操作,还需要额外下发内存偏移信息。
针对多播发送阶段,可编程交换机入端口需要配置查找多播组ID的匹配动作表,Key为发送端服务器IP地址和发送端服务器虚拟的目的QP号,参数为多播组ID。可编程交换机流量管理(Traffic Manager,TM)组件的报文复制引擎(Packet Replication Engine,PRE)需要配置根据多播组ID复制到多个端口,这里配置的端口就是这个多播组所有的接收端服务器所在的端口,每个端口有一个复制的偏移号,代表它是这次多播被复制的第几个报文。可编程交换机出端口需要配置根据多播组ID和复制的偏移号查找接收端服务器的IP地址和QP号的匹配动作表,在这里修改被复制报文的目的IP地址和QP号为匹配到的接收端服务器的IP地址和QP号。针对多播确认报文聚合阶段,可编程交换机出端口需要配置根据源IP地址和目的QP地址查找多播组ID和接收端服务器在多播组内的偏移号的匹配动作表。该匹配动作表用于确认报文聚合阶段进行聚合操作。其中,多播发送阶段要配置匹配动作表的可编程交换机由多播复制位置算法计算得到,多播确认报文聚合阶段要配置匹配动作表的可编程交换机是发送端服务器直接相连的交换机,在数据中心通常称为架上交换机(top of rack,ToR)。
步骤103,在多播发送阶段,发送端服务器向接收端服务器发送数据报文;配置匹配动作表的可编程交换机将数据报文复制到多个出端口,并在多个出端口中修改数据报文的目的IP地址和队列对号字段。
在可编程交换机入端口收到报文后,经过多播发送阶段匹配动作表,根据发送端服务器IP地址、发送端服务器虚拟的目的QP号匹配一个多播组ID将报文复制到配置所有接收端服务器的目的IP所在端口,可编程交换机在出端口中根据匹配动作表查找这个多播组ID和复制的偏移号查找对应的目的IP地址和QP号,并修改报文的目的IP地址和QP号字段为查到的目的IP地址和QP号。
如图4所示,多播发送阶段,发送端服务器向RDMA网卡下发一个发送消息,网卡向对应的多播组QP发送数据,可编程交换机接收到Infiniband报文后,如果步骤102下发了正确的多播组,会匹配到相应的多播组,然后可编程交换机的流管理器(Traffic Manager,TM)模块中的报文复制引擎(Packets Replication Engine,PRE)将报文复制,复制的数量由步骤102的多播复制位置算法得到。复制后的报文直接到达可编程交换机的出端口,出端口中会对报文字段,包括QP号和目的IP地址进行相应的修改,使其与对应的接收端QP信息一致,符合RDMA网卡的规范,从而使接收端服务器网卡可以正常接收。针对RDMA单边操作,还需要额外修改内存地址偏移。
可编程交换机的控制平面配置多播组时指定多播组中副本复制的偏移号;可编程交换机Tofino芯片的传输管理器复制报文后,在可编程交换机的出端口查看报文的偏移号,根据多播组ID和偏移号来修改报文字段,重新计算校验和字段。
使用DCQCN算法进行拥塞控制。如果发生拥塞,可编程交换机上运行的ECN会对报文进行打标,接收端收到带有ECN标记的报文后,会向发送端发送拥塞通知报文(Congestion Notification Packet,CNP)来通知发送端降速。可编程交换机还需要对CNP报文进行聚合,即将报文的源IP修改为发送端建立连接的多播组IP。
步骤104,在多播确认报文聚合阶段,接收端服务器接收到来自发送端服务器的数据报文,并向发送端服务器发送确认报文;确认报文到达与发送端服务器直接相连的可编程交换机;与发送端服务器直接相连的可编程交换机配置确认报文聚合阶段所需的匹配动作表接收到来自接收端服务器的确认报文后对确认报文进行聚合操作,聚合后的确认报文发送回发送端服务器;其中,所述聚合操作为利用匹配动作表根据源IP地址和目的队列对地址查找多播组ID和接收端服务器在多播组内的偏移号,根据多播组ID和接收端服务器在多播组内的偏移号读取和修改确认报文的确认序列号。
可编程交换机根据确认报文的源IP和目的队列对号匹配多播组ID和在多播组内的偏移号;采用可编程交换机的寄存器保存每个多播组的每个接收端服务器当前确认的序列号;对于每个确认报文,可编程交换机更新当前接收端服务器寄存器的已确认序列号,并读取剩余接收端服务器寄存器的已确认序列号;其中已确认序列号的最小值为当前发送给发送端服务器的确认报文序列号,表示所有接收端服务器已经接收完成的序列号。
可编程交换机中有一块内存资源用来存储多播组的每个接收端服务器的当前已确认的序列号,每个存储单元称为寄存器(register),寄存器用多播组ID和接收端服务器在多播组内的偏移号进行寻址,收到的确认报文对自己的寄存器进行写操作,修改其中内容为这个报文的序列号字段的内容,对这个多播组ID的其他接收端的寄存器进行读操作,并与自己的确认序列号的大小进行比较,每次比较都保留最小的序列号,最终将当前确认报文的序列号字段修改为最小的序列号,表示当前所有接收端都已经确认的序列号。例如,一个ID为101的多播组,有三台接收端,偏移分别为0、1和2,当前确认报文属于第二台,即偏移号为1,进行的操作是,对ID为101的多播组偏移为1的寄存器进行写操作,修改其中内容,对ID为101的多播组偏移为0和2的寄存器进行读操作,将确认报文的序列号字段修改为其中的最小值。
然后为避免发送端服务器收到重复的确认报文,可编程交换机进行去重操作。去重操作也需要一个类似的寄存器,表示这个多播组ID的当前已发送给发送端服务器的确认报文序列号,寄存器仅用多播组ID来寻址。上一步完成修改报文序列号的操作后,利用可编程交换机的SALU计算单元一次性同时读写保存一个多播组已经确认的序列号的寄存器,写入新的值,读出旧的值,以此来打破可编程交换机一个资源只能访问一次的限制。如果新值与旧值相等,代表这个确认报文已经发送给发送端服务器,是重复的,丢弃当前报文,发送端服务器就不会收到重复的确认报文了;如果新值与旧值不相等,代表这个确认报文还没有发送给发送端服务器,是新的,保留当前报文,这就完成了聚合操作,聚合后的确认报文发送回发送端服务器。
针对NAK报文,由于NAK报文表示在NAK报文里携带的序列号之前的报文都已经被确认,接收端服务器期望收到该序列号的数据报文,因此可编程交换机聚合阶段,需要使用该NAK报文序列号减一来更新寄存器,并将NAK的序列号更新为已确认的最小值加一,这样对于发送端服务器来讲,不会出现已经确认的报文被NAK的情况,保证了正确性。发送端服务器收到确认报文后会继续发送数据,如此循环,就可以完成应用数据的发送,从而完成多副本备份。
如图2所示,在主机和可编程交换机上分别有一部分组件。其中,主机主要功能包括:RDMA多播连接的建立、发送数据、可靠性保证和拥塞控制;可编程交换机的主要功能包括发送阶段数据报文的复制和确认阶段确认报文的聚合。为了实现这些功能,主机和可编程交换机各自有单独的模块来负责相应的功能。
如图3所示,图3中表示了以三副本为例,采用Y型写策略下,直接复制和链式复制两种传统复制方式的数据流模式图。Y型写表示,由客户端先把数据写入主副本,主副本再向其他副本发送同样的数据来实现备份。直接复制是主副本所在的服务器直接和两个从副本分别建立RDMA连接,这种方式带来了两个问题,第一是带宽浪费,图3中可以看出主副本发向从副本的流量中有一条是重复的,如果拓扑更大,跳数更多,则有重复流量的数据会更多;当发生拥塞时,带宽的浪费会极大的影响吞吐量。此外,这也限制了发送端服务器的出口带宽,例如发送端网卡硬件出口有100Gbps,发送给两副本的情况下,吞吐量会被限制在50Gbps,更多副本则会被限制到更小的带宽。第二是发送端服务器的CPU开销,主副本与两个从副本分别建立连接,这会导致发送端服务器CPU下发发送事件和轮询完成事件,处理数据的开销成倍数增长。
链式复制是主副本和一个从副本建立连接,然后从副本依次链式的建立连接,主副本向第一个从副本发送数据,第一个从副本收到数据后立刻向下一个从副本发送相同的数据,最后一个从副本将确认报文发送给发送端。这种方式可以保证发送端的吞吐量不会被副本数限制,但是图3中可以看出,在网络中仍然带来了额外的带宽浪费。此外,链式复制由于复制过程是串行的,还带来了额外的时延,副本越多,额外的时延越大。用可编程交换机实现的在网RDMA多播有效地解决了这个问题,由于复制点在网络中的交换机上,带宽被节省了,也不会有像链式复制一样的额外时延。此外,由于CPU不需要维持多个连接,CPU的开销也可以得到有效节约。
以上结合具体实施方式和范例性实例对本发明进行了详细说明,不过这些说明并不能理解为对本发明的限制。本领域技术人员理解,在不偏离本发明精神和范围的情况下,可以对本发明技术方案及其实施方式进行多种等价替换、修饰或改进,这些均落入本发明的范围内。本发明的保护范围以所附权利要求为准。
Claims (6)
1.一种分布式存储系统副本复制在网多播方法,其特征在于,包括:
将多播组中任意一台服务器作为发送端,剩余服务器均作为接收端,得到一个发送端服务器和多个接收端服务器;将发送端服务器和多个接收端服务器与多播组中运行多播守护进程的服务器建立RDMA连接;
多播守护进程向可编程交换机下发多播发送阶段的匹配动作表以及确认报文聚合阶段的匹配动作表;可编程交换机的控制平面将多播的发送阶段和确认报文聚合阶段的匹配动作表下发至可编程交换机上的Tofino芯片;所述匹配动作表包括发送端服务器IP地址、发送端服务器虚拟的目的队列对号、每个接收端服务器的目的IP地址以及每个接收端服务器的队列对号;
在多播发送阶段,发送端服务器向接收端服务器发送数据报文;配置匹配动作表的可编程交换机将数据报文复制到多个出端口,并在多个出端口中修改数据报文的目的IP地址和队列对号字段;
在多播确认报文聚合阶段,接收端服务器接收到来自发送端服务器的数据报文,并向发送端服务器发送确认报文;确认报文到达与发送端服务器直接相连的可编程交换机;与发送端服务器直接相连的可编程交换机配置确认报文聚合阶段所需的匹配动作表接收到来自接收端服务器的确认报文后对确认报文进行聚合操作,聚合后的确认报文发送回发送端服务器;其中,所述聚合操作为利用匹配动作表根据源IP地址和目的队列对地址查找多播组ID和接收端服务器在多播组内的偏移号;根据多播组ID和接收端服务器在多播组内的偏移号读取和修改确认报文的确认序列号。
2.根据权利要求1所述的分布式存储系统副本复制在网多播方法,其特征在于,所述在多播发送阶段,发送端服务器向接收端服务器发送数据报文;配置匹配动作表的可编程交换机将数据报文复制到多个出端口,并在多个出端口中修改数据报文的目的IP地址和队列对号字段,包括:
可编程交换机在入端口收到报文后,经过多播发送阶段匹配动作表,根据发送端服务器IP地址和发送端服务器虚拟的目的队列对号匹配一个多播组ID将报文复制到所有接收端服务器的目的IP所在端口;
可编程交换机在出端口中根据匹配动作表查找多播组ID和复制的偏移号查找对应的目的IP地址和队列对号,并修改报文的目的IP地址和队列对号字段为查到的目的IP地址和队列对号。
3.根据权利要求1所述的分布式存储系统副本复制在网多播方法,其特征在于,每个可编程交换机依次检查对应的多播组中的接收端服务器和路由表;如果多播组有两个接收端服务器的出端口在路由表中不一致,则在对应可编程交换机上进行一次复制,得到一个多播组进行复制的全部位置。
4.根据权利要求1所述的分布式存储系统副本复制在网多播方法,其特征在于,可编程交换机的控制平面配置多播组时指定多播组中副本复制的偏移号;可编程交换机Tofino芯片的传输管理器复制报文后,在可编程交换机的出端口查看报文的偏移号,根据多播组ID和偏移号来修改报文字段,重新计算校验和。
5.根据权利要求1所述的分布式存储系统副本复制在网多播方法,其特征在于,可编程交换机根据确认报文的源IP和目的队列对号匹配多播组ID和在多播组内的偏移号;采用可编程交换机的寄存器保存每个多播组的每个接收端服务器当前确认的序列号;对于每个确认报文,可编程交换机更新当前接收端服务器寄存器的已确认序列号,并读取剩余接收端服务器寄存器的已确认序列号;其中已确认序列号的最小值为当前发送给发送端服务器的确认报文序列号,表示所有接收端服务器已经接收完成的序列号。
6.根据权利要求1所述的分布式存储系统副本复制在网多播方法,其特征在于,利用可编程交换机的SALU计算单元一次性同时读写保存一个多播组已经确认的序列号的寄存器,写入新的值,读出旧的值;如果读出旧的值等于当前的新值,丢弃确认序列号对应的确认报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211457213.8A CN115834263A (zh) | 2022-11-21 | 2022-11-21 | 一种分布式存储系统副本复制在网多播方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211457213.8A CN115834263A (zh) | 2022-11-21 | 2022-11-21 | 一种分布式存储系统副本复制在网多播方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115834263A true CN115834263A (zh) | 2023-03-21 |
Family
ID=85529695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211457213.8A Pending CN115834263A (zh) | 2022-11-21 | 2022-11-21 | 一种分布式存储系统副本复制在网多播方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115834263A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117240642A (zh) * | 2023-11-15 | 2023-12-15 | 常州楠菲微电子有限公司 | 一种ib组播报文复制和接收装置及方法 |
-
2022
- 2022-11-21 CN CN202211457213.8A patent/CN115834263A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117240642A (zh) * | 2023-11-15 | 2023-12-15 | 常州楠菲微电子有限公司 | 一种ib组播报文复制和接收装置及方法 |
CN117240642B (zh) * | 2023-11-15 | 2024-01-19 | 常州楠菲微电子有限公司 | 一种ib组播报文复制和接收装置及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4068166B2 (ja) | 高性能多層スイッチ要素用探索エンジン・アーキテクチャ | |
JP5016063B2 (ja) | 整合性のとれた耐障害性分散ハッシュテーブル(dht)オーバレイネットワーク | |
US9246802B2 (en) | Management of routing tables shared by logical switch partitions in a distributed network switch | |
US6981025B1 (en) | Method and apparatus for ensuring scalable mastership during initialization of a system area network | |
US6393581B1 (en) | Reliable time delay-constrained cluster computing | |
CN101573940B (zh) | 用于tcp高可用性的方法和装置 | |
CN100380334C (zh) | 启用远程直接存储器存取的网络接口控制器切换方法 | |
US9294569B2 (en) | Cell fabric hardware acceleration | |
US20160359970A1 (en) | Virtual multi-cluster clouds | |
US9594612B2 (en) | System and method of a hardware shadow for a network element | |
US20020198967A1 (en) | Configuration parameter sequencing and sequencer | |
US20120233463A1 (en) | Cluster Federation and Trust | |
Kim et al. | Redplane: Enabling fault-tolerant stateful in-switch applications | |
KR20040071331A (ko) | 오류 허용 데이터 통신을 위한 시스템 및 방법 | |
US11403319B2 (en) | High-availability network device database synchronization | |
US6990528B1 (en) | System area network of end-to-end context via reliable datagram domains | |
US20060047928A1 (en) | Storage switch asynchronous replication | |
CN110838935B (zh) | 高可用sdn控制器集群方法、系统、存储介质及设备 | |
US20140269693A1 (en) | Directed route load/store packets for distributed switch initialization | |
US7636772B1 (en) | Method and apparatus for dynamic retention of system area network management information in non-volatile store | |
CN113839862B (zh) | Mclag邻居之间同步arp信息的方法、系统、终端及存储介质 | |
CN115834263A (zh) | 一种分布式存储系统副本复制在网多播方法 | |
US9596138B2 (en) | Smart dumping of network switch forwarding database | |
CN109413142B (zh) | 一种Linux下的iSCSI虚拟代理实现方法 | |
CN114885007A (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 |