本发明专利技术提供一种将同步和异步相结合的交换机MAC地址同步方法以及系统,在交换芯片发送的需同步的变动消息较少的时候,采用同步的处理方式,在交换芯片发送的需同步的变动消息较多的时候,采用异步的处理方式,这样同时具有同步和异步的优点,又能有效克服单独使用一种同步方式而带来的缺点。
【技术实现步骤摘要】
本专利技术涉及一种同步方法,特别是涉及一种应用于多交换芯片的交换机中的交换机MAC地址同步方法以及系统。
技术介绍
现在的交换机一般都包括一个主控CPU和多块交换芯片构成。每块交换芯片都有自己的MAC地址表,由交换芯片硬件本身维护,同时,交换机中存在一张由主控CPU进行软件维护的包含整个交换机系统范围内的所有交换芯片MAC地址的全局软件表。当某块交换芯片的MAC地址表发生变化,该块交换芯片硬件就会产生消息通知主控CPU,主控CPU通过解析交换芯片硬件上报的MAC地址消息并结合全局软件表做出相应处理,更新全局软件表并同步到所有交换芯片的MAC地址表中,这样整个交换机系统二层转发才能正常。如果不正确处理交换芯片地址改变的消息,就会造成整个交换机系统的各交换芯片的MAC地址表不一致,交换机的二层转发功能就会出现异常。而软件同步交换芯片MAC地址表有两种方式:同步和异步。同步是指CPU收到交换芯片MAC地址改变消息时,立即处理;异步是指CPU收到交换芯片MAC地址改变消息时,先暂存到消息队列,等CPU负载较轻时延后处理。同步方式适用MAC地址改变消息较少,优点是实时性好,缺点是MAC地址改变消息多的时候CPU利用率低;异步方式适用MAC地址改变消息较多,优点是CPU利用率高,缺点是同步实时性稍差。因此,本专利技术提出一种同步和异步相结合的交换机MAC地址同步方法以及系统,以有效克服单纯使用一种同步方式所带来的弊端。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种交换机MAC地址同步方法以及系统,用于解决现有技术中单纯使用同步或者异步这样一种同步方式所带来的问题。为实现上述目的及其他相关目的,本专利技术提供一种交换机MAC地址同步方法,其应用于一包括主控CPU以及多个交换芯片的交换机系统中,当其中一个交换芯片的MAC地址表发生变化时,该交换芯片硬件就会产生一变动消息,并予以发送至该主控CPU中,其特征在于,该交换机MAC地址同步方法包括:1)令该主控CPU将所发送的变动消息暂存一缓存空间中;2)令该主控CPU每隔一预定时间统计暂存于该缓存空间中的变动消息的数量;3)令该主控CPU判断所统计的数量是否不大于一预定数量值,若是,则进至步骤4),若否,则进至步骤5) ;4)采用同步方式处理暂存于该缓存空间中的所有变动消息;以及5)采用异步方式处理暂存于该缓存空间中的所有变动消息。其中,该主控CPU还预存一包含所有交换芯片的MAC地址的全局软件表。而在一具体实施例中,该缓存空间为先入先出(FirstInput First Output ;FIF0)消息队列,但不以此为限。优选地,上述步骤4)进一步包括:4-1)令该主控CPU解析暂存于该缓存空间中的所有变动消息,而得到一对应该变动消息数量的变更条目,并清除该缓存空间中已执行解析处理的所有变动消息;4-2)令该主控CPU将所得到的所有变更条目同步到存储于该主控CPU中的全局软件表中;以及4-3)令该主控CPU根据所得到的所有变更条目,逐个搜寻各个交换芯片中的MAC地址表是否已存储有上述变更条目,若是,则不对存储有上述变更条目的交换芯片进行同步操作,若否,则将上述变更条目更新至未存储有上述变更条目的交换芯片的MAC地址表中。上述步骤5)进一步包括:5-1)令该主控CPU判断当前的负载是否超负荷,若否,则进至步骤5-2),若是,则重复上述的判断步骤;5-2)令该主控CPU解析暂存于该缓存空间中的所有变动消息,而得到一变更条目,并清除该缓存空间中已执行解析处理的所有变动消息;5-3)令该主控CPU将所得到的变更条目同步到该全局软件表中;以及5-4)令该主控CPU根据所得到的变更条目,逐个搜寻各个交换芯片中的MAC地址表是否已存储有上述变更条目,若是,则不对存储有上述变更条目的交换芯片进行同步操作,若否,则将上述变更条目更新至未存储有上述变更条目的交换芯片的MAC地址表中。此外,本专利技术还提供一种交换机MAC地址同步系统,应用于一包括主控CPU以及多个交换芯片的交换机系统中,当其中一个交换芯片的MAC地址表发生变化时,该交换芯片硬件就会产生一变动消息,并予以发送至该主控CPU中,其特征在于,该交换机MAC地址同步系统包括:存储模块,用以将该交换芯片所发送的变动消息暂存至一缓存空间中;统计模块,用以每隔一预定时间统计该缓存空间中暂存的变动消息的数量;以及处理模块,用以判断该统计模块所统计的数量是否不大于一预定数量值,若是,则采用同步方式处理暂存于该缓存空间中的所有变动消息,若否,则采用异步方式处理暂存于该缓存空间中的所有变动消息。其中,该存储模块还预存一包含所有交换芯片的MAC地址的全局软件表。而该缓存空间可例如为先入先出消息队列,但不以此为限。具体而言,上述采用同步方式处理暂存于该缓存空间中的所有变动消息的步骤进一步包括:该处理模块解析暂存于该缓存空间中的所有变动消息,而得到一对应该变动消息数量的变更条目,并清除该缓存空间中已执行解析处理的所有变动消息,然后,将所得到的所有变更条目同步到该全局软件表中,再根据所得到的所有变更条目,逐个搜寻各个交换芯片中的MAC地址表是否已存储有上述变更条目,若是,则不对存储有上述变更条目的交换芯片进行同步操作,若否,则将上述变更条目更新至未存储有上述变更条目的交换芯片的MAC地址表中。而上述采用异步方式处理暂存于该缓存空间中的所有变动消息进一步包括:该处理模块判断该主控CPU当前的负载是否超负荷,若是,则重复上述的判断步骤,若否,则解析暂存于该缓存空间中的所有变动消息,而得到一对应该变动消息数量的变更条目,并清除该缓存空间中已执行解析处理的所有变动消息,然后,将所得到的所有变更条目同步到该全局软件表中,再根据所得到的所有变更条目,逐个搜寻各个交换芯片中的MAC地址表是否已存储有上述变更条目,若是,则不对存储有上述变更条目的交换芯片进行同步操作,若否,则将上述变更条目更新至未存储有上述变更条目的交换芯片的MAC地址表中。 较佳地,上述存储模块、统计模块以及处理模块均是由该主控CPU实现的。如上所述,本专利技术提出一种同步和异步相结合的交换机MAC地址同步方法以及系统,在交换芯片同步消息较少的时候,采用同步的处理方式,在交换芯片同步消息较多的时候,采用异步的处理方式,这样同时具有同步和异步的优点,又能有效克服其缺点。【附图说明】图1显示为本专利技术的交换机MAC地址同步系统的方块示意图。图2显示应用本专利技术的交换机MAC地址同步方法的操作流程图。元件标号说明I交换机10主控 CPU100交换机MAC地址同步系统101存储模块1011缓存空间102统计模块103处理模块11?14交换芯片SlOO ?S162 步骤【具体实当前第1页1 2 3 本文档来自技高网...
【技术保护点】
一种交换机MAC地址同步方法,应用于一包括主控CPU以及多个交换芯片的交换机系统中,当其中一个交换芯片的MAC地址表发生变化时,所述交换芯片硬件就会产生一变动消息,并予以发送至所述主控CPU中,其特征在于,所述交换机MAC地址同步方法包括:1)令所述主控CPU将所发送的变动消息暂存一缓存空间中;2)令所述主控CPU每隔一预定时间统计暂存于所述缓存空间中的变动消息的数量;3)令所述主控CPU判断所统计的数量是否不大于一预定数量值,若是,则进至步骤4),若否,则进至步骤5);4)采用同步方式处理暂存于所述缓存空间中的所有变动消息;以及5)采用异步方式处理暂存于所述缓存空间中的所有变动消息。
【技术特征摘要】
【专利技术属性】
技术研发人员:易开东,
申请(专利权)人:上海斐讯数据通信技术有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。