一种VSM系统的报文分配方法及装置与流程

文档序号:21000125发布日期:2020-06-05 22:35阅读:192来源:国知局
一种VSM系统的报文分配方法及装置与流程
本申请涉及通信
技术领域
,尤其涉及一种vsm系统的报文分配方法和装置。
背景技术
:vsm(virtualswitchmatrix,虚拟交换矩阵)是一种将多台网络设备虚拟成一台逻辑设备的虚拟化技术。其中,每台网络设备可以包括多块用于处理报文的业务板。在vsm系统中,网络设备之间通过级联端口连接,形成了用于网络设备间报文传输的级联通道。vsm系统中的网络设备通过业务板接收到报文后,根据预设的分流算法选择处理该报文的业务板,若选中的业务板不属于接收报文的网络设备,则接收报文的网络设备通过级联通道将报文发送给被选中的业务板。然而,级联通道的带宽有限,当需要跨网络设备转发的报文较多时,常常会因级联通道带宽不足而导致网络拥塞和丢包等。技术实现要素:针对上述技术问题,本申请提供了一种vsm系统的报文分配方法和装置,可以有效减少对级联通道的带宽占用。根据本申请的第一方面,提供一种vsm系统的报文分配方法,该方法应用于vsm系统中的任一网络设备,该方法包括:在通过本设备上的第一业务板接收到第一报文时,确定本设备上是否存在业务负载符合预设条件的业务板;若存在,则从本设备上业务负载符合预设条件的业务板中选择第二业务板,并控制所述第一业务板将所述第一报文发送给所述第二业务板,以由所述第二业务板对所述第一报文进行处理。根据本申请的第二方面,提供一种vsm系统的报文分配装置,该装置应用于vsm系统中的任一网络设备,该装置包括:负载确定单元,用于在通过本设备上的第一业务板接收到第一报文时,确定本设备上是否存在业务负载符合预设条件的业务板;同设备发送单元,用于在确定本设备上存在业务负载符合条件的业务板的情况下,从本设备上业务负载符合预设条件的业务板中选择第二业务板,并控制所述第一业务板将所述第一报文发送给所述第二业务板,以由所述第二业务板对所述第一报文进行处理。本申请中,网络设备通过业务板接收到报文后,在确定本设备上存在业务负载符合预设条件的业务板时,从本设备上业务负载符合预设条件的业务板中选择一块业务板来处理报文。因此,网络设备会优先选择本设备上的业务板,一定程度上减少了报文跨网络设备传输,减少了对级联通道的带宽占用。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。图1是本申请一示例性实施例示出的一种应用场景示意图;图2是本申请一示例性实施例示出的一种vsm系统的报文分配方法流程图;图3是本申请一示例性实施例示出的一种网络设备的硬件结构图;图4是本申请一示例性实施例示出的一种vsm系统的报文分配装置框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。参见图1,图1是本申请一示例性实施例示出的一种应用场景示意图,图中所示vsm系统包括多台网络设备,这里仅示出网络设备1和网络设备2为例。其中,每台网络设备均包括至少一块业务板和至少一个级联端口。如图1中,网络设备1包括级联端口1、业务板a和业务板b;网络设备2包括级联端口2、业务板c和业务板d。vsm系统中,网络设备之间通过级联端口互相连接,形成了用于网络设备间报文传输的级联通道。如图1中,网络设备1的级联端口1与网络设备2的级联端口2通过外部线缆(例如双绞线、光缆等)连接。当vsm系统中的网络设备通过业务板接收到报文后,首先会从vsm系统的所有网络设备上选择一块业务板,确定由该业务板来处理报文;然后控制接收到报文的业务板将报文转发至该确定的业务板。可以理解的是,若接收到报文的业务板和被确定为处理报文的业务板位于不同的网络设备,则报文需要通过级联通道在网络设备间传输。以图1为例,网络设备1通过业务板a接收到报文后,网络设备1根据预设的分流算法从业务板a、业务板b、业务板c和业务板d中选择一块业务板来处理报文。若选择由业务板c来处理报文,则网络设备1控制业务板a将报文转发至业务板c。具体地,业务板a将报文转发至级联端口1,并在报文中携带由业务板c来处理报文的通知信息;然后级联端口1通过外部线缆将报文和该通知信息转发至网络设备2的级联端口2;最后,网络设备2通过级联端口2接收到该报文和通知消息后,控制级联端口2将报文转发至业务板c,以由业务板c对报文进行处理。经过上述流程,vsm系统完成了一次接收报文和处理报文的流程。然而,级联通道的带宽有限,当vsm系统接收到大量报文时,根据预设的分流算法,会将待处理的报文均匀地分配给每块业务板,因此,报文常常会被跨设备转发,从而占用了大量的级联通道带宽,导致网络拥塞和丢包等情况出现。有鉴于此,本申请提出了一种vsm系统中新的报文分配的方法。本申请中,网络设备通过业务板接收到报文后,在确定本设备上存在业务负载符合预设条件的业务板时,从本设备上业务负载符合预设条件的业务板中选择一块业务板来处理报文。因此,网络设备会优先选择本设备上的业务板,一定程度上减少了报文跨网络设备传输,减少了对级联通道的带宽占用。参见图2,图2是本申请一示例性实施例示出的一种vsm系统的报文分配方法,该方法应用于vsm系统中的任一网络设备上。如图2所示,包括以下步骤:步骤s201:网络设备在通过本设备上的第一业务板接收到第一报文时,确定本设备上是否存在业务负载符合预设条件的业务板。vsm系统中,每台网络设备包括至少一块业务板,其中,每块业务板都具有能与网络环境中电子设备(例如服务器、交换机等)连接的接口,使得网络设备通过这些接口与电子设备交互,包括从电子设备接收报文和将报文发送至电子设备。当网络设备通过第一业务板接收到第一报文时,查询本设备上包括第一业务板在内的所有业务板中,是否存在业务负载符合预设条件的业务板。其中,业务负载符合预设条件是指业务板的新建连接数、并发连接数、和/或吞吐量不超过预设的阈值。具体的,新建连接数是指单位时间内网络设备所能够处理的新建连接请求的数量;并发连接数是指网络设备最大能够维护的连接数的数量;吞吐量是指单位时间内网络设备所能够处理的数据包的数量。下面介绍“网络设备确定本设备上是否存在业务负载符合预设条件的业务板”的方法:网络设备周期性地对本设备上所有业务板的业务负载情况进行检测,并将检测结果与预设的阈值进行比较。根据比较结果,网络设备记录业务负载不超过预设阈值的业务板。例如,网络设备可以将业务负载不超过预设阈值的业务板标记为优先上送状态;或者网络设备可以使用表格来记录业务负载不超过预设阈值的业务板,在此不做限定。当然,若网络设备检测到已记录的业务板的业务负载不符合预设条件,也会从记录中对应的删除该业务板,删除方法与记录方法对应,在此不再赘述。作为一个可选的实施例,网络设备通过任一业务板接收到报文时,网络设备检查本设备上是否存在符合预设条件的业务板。作为另一个可选的实施例,vsm系统预先配置了云板卡,并且每台网络设备提供至少一块业务板作为云板卡的成员板卡。网络设备通过任一业务板接收到报文后,网络设备检查本设备上是否存在业务负载符合预设条件、且被配置为云板卡成员板卡的业务板。步骤s202:若存在,则网络设备从本设备上业务负载符合预设条件的业务板中选择第二业务板,并控制所述第一业务板将所述第一报文发送给所述第二业务板,以由所述第二业务板对所述第一报文进行处理。本申请中,经过步骤s201的筛选,若确定存在业务负载符合预设条件的业务板,则网络设备首先从中选择第二业务板。可选地,网络设备可以根据预设的分流算法从满足条件的所有业务板中选择一块业务板,作为第二业务板;也可以根据满足条件的业务板的业务负载情况确定权重值,并根据权重值确定每块业务板被选中的概率,最后按概率从中选择一块业务板,作为第二业务板。然后,网络设备控制第一业务板将接收到的报文转发给第二业务板。最后,第二业务板接收到第一业务板发送的报文,对报文进行处理。可选地,网络设备选中的第二业务板和第一业务板可以是同一块业务板,那么,第一业务板可以直接对报文进行处理,而不需要转发报文。可以理解的是,由于第二业务板和第一业务板属于同一网络设备,因此报文经过网络设备的内部连接就可以转发,不需要使用级联端口,不会占用级联通道的带宽。至此,完成了图2所示流程。本申请中,网络设备通过业务板接收到报文后,在确定本设备上存在业务负载符合预设条件的业务板时,从本设备上业务负载符合预设条件的业务板中选择一块业务板来处理报文。因此,网络设备会优先选择本设备上的业务板,一定程度上减少了报文跨网络设备传输,减少了对级联通道的带宽占用。在步骤s201中,若确定本设备上不存在业务负载符合预设条件的业务板,则可以执行如下步骤,以从vsm系统中的其他网络设备上的业务板中选择第三业务板。首先,接收报文的网络设备查询vsm系统中其他网络设备业务板的信息,并从中选择一块业务板作为第三业务板。可选地,若vsm系统预先配置了云板卡,则该网络设备直接查询云板卡所有成员板卡的信息,并按照预设的分流算法,从不属于本设备的云板卡成员板卡中,选择一块业务板作为第三业务板。然后,网络设备向第一业务板发送被选中的第三业务板的编号,并通知第一业务板将接收到的报文转发给第三业务板。具体的,网络设备将第三业务板的编号、以及接收到的报文发送给本设备的级联端口,以使级联端口将报文转发至第三业务板所属网络设备的级联端口。最后,第三业务板从所属设备的级联端口接收到报文,并对报文进行处理。可以理解的是,通过以上步骤使用级联通道将报文跨设备转发,可以确保网络设备在接收到报文后,即使本设备上所有业务板的业务负载均超过阈值,vsm系统仍能对报文进行正常的处理,保证业务正常进行。vsm系统中的网络设备之间不仅会相互转发报文,还会发送本设备上每块业务板的会话处理情况。从而,每台网络设备中均记录有会话列表,该会话列表包括vsm系统中所有业务板正在处理的会话,其中,每个会话包括业务板的编号和会话标识。可选地,会话标识可以是报文的五元组信息,也可以是其他标识信息,只要能根据该标识确定唯一的会话即可,在此不做限定。可选地,当网络设备确定会话结束时,会从会话列表中删除已结束的会话;若网络设备在预设的老化时间内均未收到会话的更新消息,则认为会话已结束,删除已结束的会话。本申请中,网络设备在接收到报文后,还可以先查询是否存在与该报文对应的会话。作为一个可选的实施例,网络设备在接收到第一报文后,从会话列表中查询与第一报文对应的第一会话。具体的,网络设备首先解析该第一报文,获取第一报文的五元组信息;然后在会话列表中查询与该五元组信息匹配的第一会话。在成功查询到第一会话的情况下,网络设备根据第一会话中的业务板编号,确定该业务板编号所指示的业务板为处理第一会话的业务板。若网络设备确定处理第一会话的业务板为接收第一报文的第一业务板,则直接控制第一业务板对第一报文进行处理,无需对第一报文进行转发;若网络设备确定处理第一会话的业务板不是接收第一报文的第一业务板,则控制第一业务板将第一报文转发至该处理第一会话的业务板,以由该处理第一会话的业务板对第一报文进行处理。在查询第一会话失败的情况下,则网络设备执行步骤s201,以选择处理该第一报文的第二业务板或第三业务板。可选地,网络设备在确定处理第一报文的第二业务板或第三业务板后,还可以在会话列表中建立与第一报文对应的第一会话,具体的,该第一会话包括该第一会话的标识、以及处理第一报文的业务板(即第二业务板或第三业务板)。可以理解的是,在实际网络中,一次会话处理往往需要多次报文交互,且这些交互之间互相关联。因此,本申请在接收到报文后,首先查询是否存在与报文对应的已进行中的会话,若是,则由正在处理该会话的业务板继续处理该报文,保证同一次会话的所有报文都由同一块业务板处理。下面结合图1,描述一个实现本申请方法的具体实施例。如图1所示的vsm系统,假设网络设备1通过业务板a接收到了第一报文。第一步,网络设备1解析第一报文的报文头,确定该报文的五元组信息,假设报文的源ip地址、源端口、目的ip地址和目的端口分别为192.168.1.1、50、192.168.1.2和5050。第二步,网络设备1查询预设的会话列表,假设查询到的会话列表如表1所示。在表1中,以报文的源ip和源端口作为会话标识。源ip源端口目的ip目的端口业务板192.168.1.180192.168.1.28080业务板a192.168.1.181192.168.1.28181业务板c表1第三步,网络设备1确定如表1所示的会话列表中不存在与第一报文对应的第一会话,则查询本设备上业务板的业务负载情况。由于网络设备1周期性的检查本设备上业务板的业务负载情况,并将业务负载满足预设条件的业务板标记为优先上送状态,假设查询到的业务负载情况如表2所示:业务板业务负载状态业务板a优先上送业务板b优先上送表2第四步,根据表2,网络设备1确定本设备上存在业务板a和业务板b均符合预设条件,则采用预设的分流算法从业务板a和业务板b中选择一块业务板作为处理第一报文的第二业务板。第五步,假设网络设备1确定业务板b为第二业务板,则控制业务板a将接收到的报文转发至业务板b,以使业务板b对报文进行处理。第六步,在如表1所示的会话列表中建立与第一报文对应的第一会话,包括第一报文的源地址和源端口、以及处理第一报文的业务板b,更新后的会话列表如表3所示。ip端口目的ip目的端口业务板192.168.1.180192.168.1.28080业务板a192.168.1.181192.168.1.28181业务板c192.168.1.150192.168.1.25050业务板b表3至此,完成了一次vsm系统报文分配的流程。与前述vsm系统的报文分配方法实施例相对应,本申请还提供了vsm系统的报文分配装置的实施例。本申请vsm系统的报文分配装置的实施例可以应用在网络设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在网络设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图3所示,为本申请检测vsm系统的报文分配装置所在网络设备的一种硬件结构图,除了图3所示的处理器、内存、网络出接口、以及非易失性存储器之外,实施例中装置所在的网络设备通常根据该网络设备的实际功能,还可以包括其他硬件,对此不再赘述。参见图4,图4是本申请一示例性实施例示出的一种vsm系统的报文分配装置的框图。该装置可以应用于vsm系统中的任一设备,该装置可包括:负载确定单元401,用于在通过本设备上的第一业务板接收到第一报文时,确定本设备上是否存在业务负载符合预设条件的业务板;同设备发送单元402,用于在确定本设备上存在业务负载符合条件的业务板的情况下,从本设备上业务负载符合预设条件的业务板中选择第二业务板,并控制所述第一业务板将所述第一报文发送给所述第二业务板,以由所述第二业务板对所述第一报文进行处理。可选地,该装置还包括:跨设备发送单元403(图中未示出),用于在确定本设备上不存在业务负载符合预设条件的业务板的情况下,从所述vsm系统中的其他网络设备上的业务板中选择第三业务板,并控制所述第一业务板将所述第一报文发送给所述第三业务板,以由所述第三业务板对所述第一报文进行处理。可选地,该装置还包括:会话确定单元404(图中未示出),用于在负载确定单元执行确定本设备上是否存在业务负载符合预设条件的业务板之前,判断预设的会话列表中,是否存在与接收到的第一报文对应的第一会话;所述第一会话包括:处理第一会话的业务板;若是,则若所述第一业务板为所述处理第一会话的业务板,则在本地对第一报文进行处理;若所述第一业务板不是所述处理第一会话的业务板,则控制所述第一业务板将所述第一报文发送至所述处理第一会话的业务板,以由所述处理第一会话的业务板对所述第一报文进行处理;若否,则负载确定单元执行所述确定本设备上是否存在业务负载符合预设条件的业务板的步骤。可选地,业务负载包括:新建连接数、并发连接数、和/或吞吐量。可选地,该装置还包括:会话建立单元405(图中未示出),用于在确定所述预设的会话列表中不存在与接收到的第一报文对应的第一会话的情况下,在所述会话列表中建立第一会话,所述第一会话包括:第一会话标识、以及处理所述第一报文的第二业务板或第三业务板。至此,完成图4所示装置的框图。上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1