CN108011849A - 表项同步方法及装置 - Google Patents
表项同步方法及装置 Download PDFInfo
- Publication number
- CN108011849A CN108011849A CN201711225149.XA CN201711225149A CN108011849A CN 108011849 A CN108011849 A CN 108011849A CN 201711225149 A CN201711225149 A CN 201711225149A CN 108011849 A CN108011849 A CN 108011849A
- Authority
- CN
- China
- Prior art keywords
- list item
- mpu
- hardware table
- message
- write
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/557—Error correction, e.g. fault recovery or fault tolerance
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请公开一种表项同步方法及装置,涉及计算机网络通信技术领域,用于解决在分布式交换机的主MPU故障后,从MPU与LPU之间存在的软硬件表项不一致的问题。所述方法包括:从MPU接收并缓存主MPU发送的表项同步消息,所述表项同步消息携带有表项数据;从MPU从主MPU获取与表项同步消息对应的确认消息,根据确认消息处理对应的表项同步消息;在从MPU进行主从切换后,所述从MPU将待确认的表项同步消息携带的表项数据通过RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;所述从MPU根据LPU反馈的写硬件表项操作结果,处理写硬件表项操作结果对应的表项同步消息。本申请适用于表项同步的过程中。
Description
技术领域
本申请涉及计算机网络通信技术领域,尤其涉及一种表项同步方法及装置。
背景技术
如图1所示,分布式交换机一般由主主控处理单元(Main Processing Unit,简称为:MPU)、从MPU以及至少一个线路处理单元(Line Processing Unit,简称为:LPU)组成。主MPU通过向LPU下发表项来控制分布式交换机的数据转发过程。从MPU是主MPU的备份,用于在主MPU故障的情况下,替代主MPU工作。LPU用于根据主MPU下发的表项转发数据。
为了保证在主MPU故障后分布式交换机能够正常工作,从MPU需要备份主MPU上的表项,以便于在主MPU故障后,从MPU能够快速接替主MPU的工作,而不影响业务运行。因此,目前提出一种表项同步方法,用于同步主MPU、从MPU以及LPU三者之间的表项。如图2所示,以生成一个表项为例对上述表项同步方法进行说明,主MPU生成表项数据,并将表项数据下发给LPU;LPU对表项数据执行写硬件表项操作,生成硬件表项,并在成功生成硬件表项之后向主MPU反馈写硬件表项操作结果;主MPU根据写硬件表项操作结果,生成相应的软件表项,并将软件表项同步到从MPU。这样,从MPU与主MPU、LPU在表项上保持一致。
但是,上述表项同步方法的缺陷在于,主MPU的故障时间是不确定的,例如在主MPU将软件表项发送给从MPU之前,主MPU出现故障,这种情况下,主MPU无法将软件表项发送给从MPU,从而LPU中存在的硬件表项在从MPU中没有存在对应的软件表项。这样,在从MPU切换为新的主MPU,替代原先的主MPU工作时,会因为软硬件表项不一致的问题,影响分布式交换机的正常工作。
发明内容
本申请提供一种表项同步方法及装置,用于解决在分布式交换机的主MPU故障后,从MPU与LPU之间存在软硬件表项不一致的问题。
为到达上述目的,本申请采用如下技术方案:
第一方面,本申请提供一种表项同步方法,所述方法应用于分布式交换机,所述分布式交换机包括:主MPU、从MPU以及至少一个LPU,所述方法包括:
所述从MPU接收并缓存所述主MPU发送的表项同步消息,所述表项同步消息携带有表项数据;
所述从MPU从所述主MPU获取与所述表项同步消息对应的确认消息,根据所述确认消息处理对应的表项同步消息;
在所述从MPU进行主从切换后,所述从MPU将待确认的表项同步消息携带的表项数据通过远程调用协议(Remote Procedure Call Protocol,简称为:RPC)下发LPU,以使得LPU对表项数据执行写硬件表项操作;其中,所述待确认的表项同步消息为从MPU未从所述主MPU接收到对应的确认消息的表项同步消息;
所述从MPU根据LPU反馈的写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项同步消息。
第二方面,本申请提供一种表项同步方法,所述方法应用于分布式交换机,所述分布式交换机包括:主MPU、从MPU以及至少一个LPU,所述方法包括:
所述主MPU产生表项数据,将携带所述表项数据的表项同步消息发送给所述从MPU;
所述主MPU将所述表项数据通过RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;
所述主MPU接收LPU反馈的写硬件表项操作结果;
所述主MPU根据所述写硬件表项操作结果,将确认消息发送给所述从MPU,以便于所述从MPU根据确认消息,处理所述确认消息对应的表项同步消息;
所述主MPU根据所述写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项数据。
第三方面,本申请提供一种从MPU,所述从MPU包括主从通信模块、存储模块、RPC通信模块以及表项处理模块;
所述主从通信模块,用于接收主MPU发送的表项同步消息,所述表项同步消息携带有表项数据;
所述存储模块,用于缓存所述主从通信模块接收到的表项同步消息;
所述主从通信模块,还用于从所述主MPU获取与所述表项同步消息对应的确认消息;
所述表项处理模块,用于根据所述主从通信模块接收到的确认消息,处理对应的表项同步消息;
所述RPC通信模块,用于在所述从MPU进行主从切换后,将待确认的表项同步消息携带的表项数据通过RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;其中,所述待确认的表项同步消息为从MPU未从所述主MPU接收到对应的确认消息的表项同步消息;
所述RPC通信模块,还用于接收LPU反馈的写硬件表项操作结果;
所述表项处理模块,还用于根据LPU反馈的写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项同步消息。
第四方面,本申请提供一种主MPU,所述主MPU包括:
所述生成模块,用于产生表项数据;
所述主从通信模块,用于将携带所述表项数据的表项同步消息发送给所述从MPU;
所述RPC通信模块,用于将所述表项数据通过RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;
所述RPC通信模块,还用于接收LPU反馈的写硬件表项操作结果;
所述主从通信模块,还用于根据所述写硬件表项操作结果,将确认消息发送给所述从MPU,以便于所述从MPU根据确认消息,处理所述确认消息对应的表项同步消息;
所述表项处理模块,用于根据所述写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项数据。
第五方面,本申请提供一种分布式交换机,包括第三方面以及第三方面任一种可能实现方式涉及的从MPU,和第四方面以及第四方面任一种可能实现方式涉及的主MPU。
第六方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有一个或多个程序,所述一个或多个程序包括指令,当从MPU执行所述指令时,所述从MPU执行如第一方面或第一方面的任一种具体实现方式中所述的表项同步方法。
第七方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有一个或多个程序,所述一个或多个程序包括指令,当主MPU执行所述指令时,所述主MPU执行如第二方面或第二方面的任一种具体实现方式中所述的表项同步方法。
本申请提供一种表项同步方法及装置,从MPU接收并缓存所述主MPU发送的表项同步消息,所述表项同步消息携带有表项数据;所述从MPU从所述主MPU获取与所述表项同步消息对应的确认消息,根据所述确认消息处理对应的表项同步消息。在从MPU进行主从切换后,从MPU将待确认的表项同步消息携带的表项数据通过远程调用协议RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;其中,所述待确认的表项同步消息为从MPU未从所述主MPU接收到对应的确认消息的表项同步消息;从MPU根据LPU反馈的写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项同步消息。即在主MPU故障后,从MPU依然能够对缓存的表项同步消息进行处理,从而保证从MPU与LPU之间软硬件表项的一致,进而保证分布式交换机的正常运行。
附图说明
图1为一种分布式交换机的结构示意图;
图2为一种表项同步方法的流程图;
图3为本申请实施例提供的一种表项同步方法的流程图;
图4位本申请实施例提供的另一种表项同步方法的流程图;
图5为本申请实施例提供的一种从MPU的结构示意图;
图6为本申请实施例提供的一种主MPU的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例提供一种表项同步方法,应用于图1所示的分布式交换机中。如图3所示,所述方法包括:
101、从MPU接收主MPU发送的表项同步消息。
其中,所述表项同步消息携带有表项数据。所述表项数据可以是任一种软件表项的数据,例如媒体访问控制(Media Access Control,MAC)地址表项的数据、虚拟局域网(Virtual Local Area Network,VLAN)表项的数据或者访问控制列表(Access ControlList,ACL)表项的数据。例如,上述表项数据为:(MAC地址:111.222.333,VLAN号:10,端口号:gigabitethernet1/1)。
一种可选的实现方式中,从MPU接收主MPU发送的一个或多个表项同步消息。
102、从MPU缓存所述表项同步消息。
103、从MPU从主MPU获取与所述表项同步消息对应的确认消息。
其中,所述确认消息用于表示LPU对表项同步消息中的表项数据执行写硬件表项操作的结果。
104、从MPU根据确认消息处理对应的表项同步消息。
可选的,所述确认消息为成功消息或失败消息。其中,所述成功消息用于表示LPU对表项同步消息中的表项数据执行写硬件表项操作成功。所述失败消息用于表示LPU对表项同步消息中的表项数据执行写硬件表项操作失败。
一种可选的实现方式中,当确认消息为失败消息时,所述从MPU释放缓存中所述失败消息对应的表项同步消息。当确认消息为成功消息时,所述从MPU对所述成功消息对应的表项同步消息中的表项数据执行写软件表项操作。另外,在对该表项数据执行写软件表项操作结束后,从MPU会释放缓存中所述成功消息对应的表项同步消息。
可选的,所述写软件表项操作包括:删除操作、修改操作以及增加操作。
可选的,所述表项数据中携带操作信息,所述操作信息用于指示设备执行目标操作。示例性的,所述目标操作为上述写软件表项操作中的任意一种。
示例性的,下面结合写软件表项操作的可能实现方式对“从MPU对表项数据执行写软件表项操作”进行具体说明。
若写软件表项操作为增加操作,从MPU根据表项数据,生成新的软件表项。
若写软件表项操作为修改操作,从MPU根据表项数据,查找到相应的软件表项,并对该软件表项进行修改。
若写软件表项操作为删除操作,从MPU根据表项数据,查找到相应的软件表项,并删除该软件表项。
105、从MPU进行主从切换。
需要说明的是,当分布式交换机正常运行时,主MPU会定时向从MPU发送心跳信息,所述心跳信息用于表示主MPU处于正常工作状态。但是,当主MPU出现故障或者根据管理人员的指令停止工作时,主MPU会停止向从MPU发送心跳信息。
一种可选的实现方式中,当从MPU在预设时长内未接收到主MPU发送的心跳信息时,从MPU切换为新的主MPU,替代原先的主MPU进行工作。
可以理解的是,在主MPU发生故障的情况下,从MPU无法从主MPU获取确认消息。这种情况下,若从MPU缓存有待确认的表项数据,则从MPU接下来执行步骤106-109,以使得从MPU能够对待确认的表项同步消息中的表项数据进行处理,保证从MPU与LPU之间软硬件表项一致。
106、从MPU将待确认的表项同步消息携带的表项数据通过RPC下发LPU。
其中,所述待确认的表项同步消息为从MPU未从所述主MPU接收到对应的确认消息的表项同步消息。
需要说明的是,RPC是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC采用客户机、服务器模式。在RPC中,请求程序就是一个客户机,而服务提供程序就是一个服务器。客户机可以调用进程发送一个携带有进程参数的调用信息到服务器,然后等待服务器的应答信息。
107、LPU对表项数据执行写硬件表项操作。
一种可选的实现方式中,在接收到表项数据之后,LPU调用相应的应用程序编程接口(Application Programming Interface,API),对表项数据执行写硬件表项操作。
可选的,所述写硬件表项操作包括:修改操作、删除操作或增加操作。
可选的,所述表项数据中携带有操作信息,该操作信息用于指示设备执行目标操作。示例性的,所述目标操作为上述写硬件表项操作中的任意一种。
下面结合写硬件表项操作的可能实现方式对步骤107进行具体说明。
若写硬件表项操作为增加操作,LPU根据表项数据,生成新的硬件表项。
若写硬件表项操作为修改操作,LPU根据表项数据,查找到相应的硬件表项,并对该硬件表项进行修改。
若写硬件表项操作为删除操作,LPU根据表项数据,查找到相应的硬件表项,并删除该硬件表项。
需要说明的是,针对某一个表项数据而言,在主MPU故障前,LPU可能已经对该表项数据执行写硬件表项操作成功。这种情况下,若在主MPU故障后,从MPU将相同的表项数据下发到LPU,LPU对该表项数据执行写硬件表项操作也会成功。
108、MPU接收LPU反馈的写硬件表项操作结果。
由于RPC的机制,在从MPU将表项数据通过RPC下发给LPU后,LPU会向从MPU反馈该表项数据对应的写硬件表项操作结果。
109、从MPU根据LPU反馈的写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项同步消息。
一种可选的实现方式中,当LPU反馈的写硬件表项操作结果为写硬件表项操作成功时,所述从MPU对所述写硬件表项操作结果对应的表项同步消息中的表项数据执行写软件表项操作。当LPU反馈的写硬件表项操作结果为写硬件表项操作失败时,所述从MPU释放缓存中所述写硬件表项操作结果对应的表项同步消息。
本申请实施例提供一种表项同步方法,从MPU接收并缓存所述主MPU发送的表项同步消息,所述表项同步消息携带有表项数据;所述从MPU从所述主MPU获取与所述表项同步消息对应的确认消息,根据所述确认消息处理对应的表项同步消息。在从MPU进行主从切换后,从MPU将待确认的表项同步消息携带的表项数据通过远程调用协议RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;其中,所述待确认的表项同步消息为从MPU未从所述主MPU接收到对应的确认消息的表项同步消息;从MPU根据LPU反馈的写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项同步消息。即在主MPU故障后,从MPU依然能够对缓存的表项同步消息进行处理,从而保证从MPU与LPU之间软硬件表项的一致,进而保证分布式交换机的正常运行。
如图4所示,本申请实施例提供一种表项同步方法,所述方法包括:
201、主MPU产生表项数据。
可选的,在分布式交换机的正常工作过程中,主MPU会根据网络状况或业务需求,生成相应的表项数据。
202、主MPU向从MPU发送表项同步消息。
其中,所述表项同步消息携带有表项数据。
203、主MPU将表项数据通过RPC下发LPU。
204、LPU对表项数据执行写硬件表项操作。
205、主MPU接收LPU反馈的写硬件表项操作结果。
由于RPC的机制,主MPU将表项数据通过RPC下发给LPU后,LPU会向主MPU反馈该表项数据对应的写硬件表项操作结果。
206、主MPU根据写硬件表项操作结果,发送确认消息给从MPU。
207、从MPU根据确认消息,处理所述确认消息对应的表项同步消息。
208、主MPU根据写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项数据。
一种可选的实现方式中,当写硬件表项操作结果为写硬件表项操作失败时,所述主MPU删除所述写硬件表项操作对应的表项数据。当写硬件表项操作结果为写硬件表项操作成功时,所述主MPU对所述写硬件表项操作对应的表项数据执行写软件表项操作。
通过上述方法,在主MPU处于正常工作状态下,主MPU、从MPU与LPU之间软硬件表项能够保持一致。
如图5所示,本申请实施例提供一种从MPU,用于执行前述表项同步的方法。所述从MPU包括:主从通信模块11、存储模块12、RPC通信模块13以及表项处理模块14。
所述主从通信模块11,用于接收主MPU发送的表项同步消息,所述表项同步消息携带有表项数据。
所述存储模块12,用于缓存所述主从通信模块接收到的表项同步消息。
所述主从通信模块11,还用于从所述主MPU获取与所述表项同步消息对应的确认消息。
所述表项处理模块14,用于根据所述主从通信模块接收到的确认消息,处理对应的表项同步消息。
所述RPC通信模块13,用于在所述从MPU进行主从切换后,将待确认的表项同步消息携带的表项数据通过RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;其中,所述待确认的表项同步消息为从MPU未从所述主MPU接收到对应的确认消息的表项同步消息。
所述RPC通信模块13,还用于接收LPU反馈的写硬件表项操作结果。
所述表项处理模块14,还用于根据LPU反馈的写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项同步消息。
一种可选的实现方式中,所述表项处理模块14,具体用于当确认消息为失败消息时,释放缓存中所述失败消息对应的表项同步消息,所述失败消息用于表示LPU对表项同步消息中的表项数据执行写硬件表项操作失败;当确认消息为成功消息时,对所述成功消息对应的表项同步消息中的表项数据执行写软件表项操作,所述成功消息用于表示LPU对表项同步消息中的表项数据执行写硬件表项操作成功。
一种可选的实现方式中,所述表项处理模块14,具体用于当LPU反馈的写硬件表项操作结果为写硬件表项操作成功时,对所述写硬件表项操作结果对应的表项同步消息中的表项数据执行写软件表项操作;当LPU反馈的写硬件表项操作结果为写硬件表项操作失败时,释放缓存中所述写硬件表项操作结果对应的表项同步消息。
本申请实施例提供一种从MPU,从MPU接收并缓存所述主MPU发送的表项同步消息,所述表项同步消息携带有表项数据;所述从MPU从所述主MPU获取与所述表项同步消息对应的确认消息,根据所述确认消息处理对应的表项同步消息。在从MPU进行主从切换后,从MPU将待确认的表项同步消息携带的表项数据通过远程调用协议RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;其中,所述待确认的表项同步消息为从MPU未从所述主MPU接收到对应的确认消息的表项同步消息;从MPU根据LPU反馈的写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项同步消息。即在主MPU故障后,从MPU依然能够对缓存的表项同步消息进行处理,从而保证从MPU与LPU之间软硬件表项的一致,进而保证分布式交换机的正常运行。
如图6所示,本申请实施例提供一种主MPU,用于执行前述表项同步的方法,所述主MPU包括:生成模块21、主从通信模块22、RPC通信模块23以及表项处理模块24。
所述生成模块21,用于产生表项数据。
所述主从通信模块22,用于将携带所述表项数据的表项同步消息发送给所述从MPU。
所述RPC通信模块23,用于将所述表项数据通过RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作。
所述RPC通信模块23,还用于接收LPU反馈的写硬件表项操作结果。
所述主从通信模块22,还用于根据所述写硬件表项操作结果,将确认消息发送给所述从MPU,以便于所述从MPU根据确认消息,处理所述确认消息对应的表项同步消息。
所述表项处理模块24,用于根据所述写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项数据。
一种可选的实现方式中,所述表项处理模块24,具体用于当写硬件表项操作结果为写硬件表项操作失败时,删除所述写硬件表项操作对应的表项数据;当写硬件表项操作结果为写硬件表项操作成功时,对所述写硬件表项操作对应的表项数据执行写软件表项操作。
这样,在主MPU处于正常工作状态下,主MPU、从MPU与LPU之间软硬件表项能够保持一致。
本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序加载到从MPU上被从MPU执行时,使从MPU执行所述表项同步方法。
其中,上述计算机可读存储介质,例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序加载到主MPU上被主MPU执行时,使主MPU执行所述表项同步方法。
其中,上述计算机可读存储介质,例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (11)
1.一种表项同步方法,其特征在于,所述方法应用于分布式交换机,所述分布式交换机包括:主主控处理单元MPU、从MPU以及至少一个线路处理单元LPU,所述方法包括:
所述从MPU接收并缓存所述主MPU发送的表项同步消息,所述表项同步消息携带有表项数据;
所述从MPU从所述主MPU获取与所述表项同步消息对应的确认消息,根据所述确认消息处理对应的表项同步消息;
在所述从MPU进行主从切换后,所述从MPU将待确认的表项同步消息携带的表项数据通过远程调用协议RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;其中,所述待确认的表项同步消息为从MPU未从所述主MPU接收到对应的确认消息的表项同步消息;
所述从MPU根据LPU反馈的写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项同步消息。
2.根据权利要求1所述的方法,其特征在于,所述根据所述确认消息处理对应的表项数据,具体包括:
当确认消息为失败消息时,所述从MPU释放缓存中所述失败消息对应的表项同步消息,所述失败消息用于表示LPU对表项同步消息中的表项数据执行写硬件表项操作失败;
当确认消息为成功消息时,所述从MPU对所述成功消息对应的表项同步消息中的表项数据执行写软件表项操作,所述成功消息用于表示LPU对表项同步消息中的表项数据执行写硬件表项操作成功。
3.根据权利要求1或2所述的方法,其特征在于,所述从MPU根据LPU反馈的写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项同步消息,具体包括:
当LPU反馈的写硬件表项操作结果为写硬件表项操作成功时,所述从MPU对所述写硬件表项操作结果对应的表项同步消息中的表项数据执行写软件表项操作;
当LPU反馈的写硬件表项操作结果为写硬件表项操作失败时,所述从MPU释放缓存中所述写硬件表项操作结果对应的表项同步消息。
4.一种表项同步方法,其特征在于,所述方法应用于分布式交换机,所述分布式交换机包括:主主控处理单元MPU、从MPU以及至少一个线路处理单元LPU,所述方法包括:
所述主MPU产生表项数据,将携带所述表项数据的表项同步消息发送给所述从MPU;
所述主MPU将所述表项数据通过远程调用协议RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;
所述主MPU接收LPU反馈的写硬件表项操作结果;
所述主MPU根据所述写硬件表项操作结果,将确认消息发送给所述从MPU,以便于所述从MPU根据确认消息,处理所述确认消息对应的表项同步消息;
所述主MPU根据所述写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项数据。
5.根据权利要求4所述的方法,其特征在于,所述主MPU根据所述写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项数据,具体包括:
当写硬件表项操作结果为写硬件表项操作失败时,所述主MPU删除所述写硬件表项操作对应的表项数据;
当写硬件表项操作结果为写硬件表项操作成功时,所述主MPU对所述写硬件表项操作对应的表项数据执行写软件表项操作。
6.一种从主控处理单元MPU,其特征在于,所述从MPU包括主从通信模块、存储模块、远程调用协议RPC通信模块以及表项处理模块;
所述主从通信模块,用于接收主MPU发送的表项同步消息,所述表项同步消息携带有表项数据;
所述存储模块,用于缓存所述主从通信模块接收到的表项同步消息;
所述主从通信模块,还用于从所述主MPU获取与所述表项同步消息对应的确认消息;
所述表项处理模块,用于根据所述主从通信模块接收到的确认消息,处理对应的表项同步消息;
所述RPC通信模块,用于在所述从MPU进行主从切换后,将待确认的表项同步消息携带的表项数据通过RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;其中,所述待确认的表项同步消息为从MPU未从所述主MPU接收到对应的确认消息的表项同步消息;
所述RPC通信模块,还用于接收LPU反馈的写硬件表项操作结果;
所述表项处理模块,还用于根据LPU反馈的写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项同步消息。
7.根据权利要求6所述的从MPU,其特征在于,
所述表项处理模块,具体用于当确认消息为失败消息时,释放缓存中所述失败消息对应的表项同步消息,所述失败消息用于表示LPU对表项同步消息中的表项数据执行写硬件表项操作失败;
当确认消息为成功消息时,对所述成功消息对应的表项同步消息中的表项数据执行写软件表项操作,所述成功消息用于表示LPU对表项同步消息中的表项数据执行写硬件表项操作成功。
8.根据权利要求6或7所述的从MPU,其特征在于,
所述表项处理模块,具体用于当LPU反馈的写硬件表项操作结果为写硬件表项操作成功时,对所述写硬件表项操作结果对应的表项同步消息中的表项数据执行写软件表项操作;
当LPU反馈的写硬件表项操作结果为写硬件表项操作失败时,释放缓存中所述写硬件表项操作结果对应的表项同步消息。
9.一种主主控处理单元MPU,其特征在于,所述主MPU包括:生成模块、主从通信模块、远程调用协议RPC通信模块以及表项处理模块;
所述生成模块,用于产生表项数据;
所述主从通信模块,用于将携带所述表项数据的表项同步消息发送给所述从MPU;
所述RPC通信模块,用于将所述表项数据通过RPC下发LPU,以使得LPU对表项数据执行写硬件表项操作;
所述RPC通信模块,还用于接收LPU反馈的写硬件表项操作结果;
所述主从通信模块,还用于根据所述写硬件表项操作结果,将确认消息发送给所述从MPU,以便于所述从MPU根据确认消息,处理所述确认消息对应的表项同步消息;
所述表项处理模块,用于根据所述写硬件表项操作结果,处理所述写硬件表项操作结果对应的表项数据。
10.根据权利要求9所述的主MPU,其特征在于,
所述表项处理模块,具体用于当写硬件表项操作结果为写硬件表项操作失败时,删除所述写硬件表项操作对应的表项数据;
当写硬件表项操作结果为写硬件表项操作成功时,对所述写硬件表项操作对应的表项数据执行写软件表项操作。
11.一种分布式交换机,其特征在于,包括权利要求6至8任一项所述的从主控处理单元MPU和权利要求9或10所述的主MPU。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711225149.XA CN108011849B (zh) | 2017-11-29 | 2017-11-29 | 表项同步方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711225149.XA CN108011849B (zh) | 2017-11-29 | 2017-11-29 | 表项同步方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108011849A true CN108011849A (zh) | 2018-05-08 |
CN108011849B CN108011849B (zh) | 2021-06-08 |
Family
ID=62054668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711225149.XA Active CN108011849B (zh) | 2017-11-29 | 2017-11-29 | 表项同步方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108011849B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529459A (zh) * | 2003-10-16 | 2004-09-15 | 港湾网络有限公司 | 面向高端交换机的主备倒换实现方法 |
CN1852261A (zh) * | 2006-05-26 | 2006-10-25 | 杭州华为三康技术有限公司 | 维护邻居表项的方法 |
CN102045200A (zh) * | 2010-12-24 | 2011-05-04 | 武汉烽火网络有限责任公司 | 分布式交换机mac地址表项有条件同步的方法 |
US20110208844A1 (en) * | 2008-10-29 | 2011-08-25 | Huawei Technologies Co., Ltd. | Cluster system, method and device for expanding cluster system |
CN102184183A (zh) * | 2011-03-31 | 2011-09-14 | 迈普通信技术股份有限公司 | 一种分布式数据库数据同步方法 |
CN103188173A (zh) * | 2011-12-28 | 2013-07-03 | 迈普通信技术股份有限公司 | 一种交换机设备 |
CN105429823A (zh) * | 2015-12-17 | 2016-03-23 | 迈普通信技术股份有限公司 | 分布式通信设备中组播流量检测方法及装置 |
-
2017
- 2017-11-29 CN CN201711225149.XA patent/CN108011849B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529459A (zh) * | 2003-10-16 | 2004-09-15 | 港湾网络有限公司 | 面向高端交换机的主备倒换实现方法 |
CN1852261A (zh) * | 2006-05-26 | 2006-10-25 | 杭州华为三康技术有限公司 | 维护邻居表项的方法 |
US20110208844A1 (en) * | 2008-10-29 | 2011-08-25 | Huawei Technologies Co., Ltd. | Cluster system, method and device for expanding cluster system |
CN102045200A (zh) * | 2010-12-24 | 2011-05-04 | 武汉烽火网络有限责任公司 | 分布式交换机mac地址表项有条件同步的方法 |
CN102184183A (zh) * | 2011-03-31 | 2011-09-14 | 迈普通信技术股份有限公司 | 一种分布式数据库数据同步方法 |
CN103188173A (zh) * | 2011-12-28 | 2013-07-03 | 迈普通信技术股份有限公司 | 一种交换机设备 |
CN105429823A (zh) * | 2015-12-17 | 2016-03-23 | 迈普通信技术股份有限公司 | 分布式通信设备中组播流量检测方法及装置 |
Non-Patent Citations (1)
Title |
---|
姚城: "以太网供电管理功能在堆叠交换机上的应用与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Also Published As
Publication number | Publication date |
---|---|
CN108011849B (zh) | 2021-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103812823B (zh) | 虚拟机热迁移时配置信息迁移的方法、设备及系统 | |
CN107465767A (zh) | 一种数据同步的方法和系统 | |
CN104935672B (zh) | 负载均衡服务高可用实现方法和设备 | |
CN104243205B (zh) | 一种虚拟交换机故障时的报文处理方法和设备 | |
CN108282352A (zh) | 管理网络切片实例的方法、装置和系统 | |
CN104601680B (zh) | 一种资源管理方法及装置 | |
CN105681077A (zh) | 故障处理方法、装置及系统 | |
CN107003983A (zh) | 配置网络 | |
CN102200901A (zh) | 图像转送方法、图像转送系统以及投影仪 | |
WO2015074396A1 (zh) | 一种软件定义网络sdn的自动配置方法、设备及系统 | |
CN103457770B (zh) | 网络事务控制方法及执行方法及网络控制器及转发设备 | |
CN108011754B (zh) | 转控分离系统、备份方法和装置 | |
CN103944974B (zh) | 一种协议报文处理方法、控制器故障处理方法及相关设备 | |
CN107623593A (zh) | 基于cu分离的双机热备的方法及设备 | |
CN104580124A (zh) | 协议栈选择方法、装置及设备 | |
CN107092521A (zh) | 一种分布式任务调度方法、装置及系统 | |
CN108632063A (zh) | 管理网络切片实例的方法、装置和系统 | |
US20150319036A1 (en) | Network transaction control method and executing method, network controller, and forwarding device | |
JP5647561B2 (ja) | 電力系統の監視制御システム | |
CN105591801B (zh) | 一种虚拟网络功能vnf故障处理方法及vnf管理设备 | |
CN105262604B (zh) | 虚拟机迁移方法及设备 | |
CN104753707A (zh) | 一种系统维护方法及网络交换设备 | |
CN103401954A (zh) | 虚拟dhcp的实现方法 | |
CN110019475A (zh) | 数据持久化处理方法、装置及系统 | |
TWM432075U (en) | Monitoring device and monitoring system applicable to cloud algorithm |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |