流量监控方法以及装置与流程

文档序号:12376030阅读:344来源:国知局
本发明涉及通信
技术领域
:,尤其涉及一种流量监控方法以及装置。
背景技术
::SDN(SoftwareDefinedNetwork,软件定义网络)中,控制器可以通过向交换机下发Meter(计速)表项来对流量进行监管和统计,Meter表项指定了为允许通过的流量设置的限制速率与控制策略。控制器还可以定时主动向交换机获取Meter表项信息来对流量进行监控。然而,控制器定时访问交换机获取Meter表项信息的方式会占用控制器巨大的CPU资源,且极大地增加了控制器和交换机之间的通信负担。技术实现要素:针对现有技术的缺陷,本发明提供了一种流量监控方法以及装置。本发明提供一种流量监控方法,应用于控制器,其中该方法包括:向交换机发送计速meter更新报文,所述meter更新报文携带监控条件,以使所述交换机在满足所述监控条件时,向所述控制器发送meter状态通告报文;接收所述交换机发送的meter状态通告报文,所述meter状态通告报文携带所述交换机的第一meter表项信息;控制器根据所述第一meter表项信息进行流量监控。本发明还提供一种流量监控装置,应用于控制器,该装置包括:第一发送单元,用于向交换机发送meter更新报文,所述meter更新报文携带监控条件,以使所述交换机在满足所述监控条件时,向所述控制器发送meter状态通告报文;第一接收单元,用于接收所述交换机发送的meter状态通告报文,所述meter状态通告报文携带所述交换机的第一meter表项信息;监控单元,用于根据所述第一meter表项信息进行流量监控。本发明提供的流量监控方法以及装置,无需控制器定期主动向交换机获取meter表项信息,而是通过控制器向交换机发送携带监控条件的meter更新报文,以使交换机在满足监控条件时,向控制器主动发送携带第一meter表项信息的meter状态通告报文,由控制器根据第一meter表项信息进行流量监控。本发明可降低控制器CPU资源的占用,且有效降低了控制器和交换机之间的通信负担。附图说明图1是本发明实施例中一种流量监控方法所应用的SFC网络示意图;图2是本发明实施例中一种流量监控方法流程示意图;图3是本发明实施例中一种流量监控装置的逻辑结构示意图;图4是本发明实施例中流量监控装置所在控制器的硬件架构示意图。具体实施方式为使本申请的目的,技术方案及优点更加清楚明白,以下参照附图对本申请方案做进一步的详细说明。为了解决现有技术中存在的问题,本发明提供了流量监控方法以及装置。图1示出了本发明一种流量监控方法所应用的SDN网络示意图,包括控制器101,交换机102、103,以及接入交换机102的主机104以及接入交换机103的主机105。该交换机可以是实际存在的硬件交换机(Switch)也可以是虚拟交换机(VirtualSwitch,VS),主机可以是实际存在的主机(HOST)也可以是虚拟主机(VirtualMachine,VM)。请参考图2,为本发明提供的流量监控方法的处理流程示意图,该流量监控方法可应用于控制器,该方法包括以下步骤:步骤201,向交换机发送meter更新报文,所述meter更新报文携带监控条件,以使所述交换机在满足所述监控条件时,向所述控制器发送meter状态通告报文。在进行流量监控过程中,控制器可以收集各交换机的meter表项信息,并根据收集的meter表项信息对新流量以及原有流量进行监控。在收集各交换机的meter状态时,为了减少控制器和交换机之间的通信负担,避免因控制器过多访问交换机获取meter状态而占用控制器巨大的CPU资源,本发明实施方式中可以由控制器预先确定出针对交换机的监控条件,并将该监控条件告知交换机,以使交换机在监测到满足该监控条件时,主动向控制器通告自身的meter表项信息,进而减少控制器和交换机之间的通信数量。本例中,将交换机根据监控条件主动通告的meter表项信息称为第一meter表项信息。本例中,监控条件可以根据经验值进行设置,但为了更准确的确定出该监控条件,也可以在步骤201之前,首先向交换机发送meter状态请求报文,以使交换机在接收到meter状态请求报文后,向所述控制器发送具有交换机的meter表项信息的meter状态响应报文,为了便于描述,该meter状态响应报文中的meter表项信息可以称为第二meter表项信息。当控制器接收到交换机发送的meter状态响应报文后,获取该meter状态响应报文中携带的交换机的第二meter表项信息,并根据该交换机的第二meter表项信息确定出meter状态的监控条件。该第二meter表项信息包括:所述交换机的可用meter表项信息或闲置meter表项信息或超载meter表项信息。该交换机的可用meter表项信息可以包括可用meter表项数量,闲置meter表项信息可以包括闲置meter表项数量以及闲置meter表项列表;超载meter表项信息可以包括超载meter表项数量以及超载meter表项列表。其中,可用meter表项是指meter表中未被下发meter信息的meter表项;闲置meter表项是指meter表中已经被下发meter信息但未用于控制流量的meter表项,例如,在预设周期内,某个已经被下发meter信息的meter表项一直未用于控制任何流量,则可以确定该meter表项为闲置meter表项,闲置meter表项列表包括闲置meter表项的meterID;超载meter表项是指meter表中用于控制流量大于限制速率的meter表项,该限制速率为该meter表项中的meter信息包括的限制速率,超载meter表项列表包括超载meter表项的meterID。交换机向控制器发送的meter状态响应报文可以是meterfeaturesstatistics报文,在一个实施例中,可以通过在该meterfeaturesstatistics报文中新增Available_size字段,以添加该可用meter表项数量;新增idle_meter_size字段以添加闲置meter表项数量;新增idle_meter_array字段,以添加闲置meter表项列表;新增overlad_meter_size字段,以添加超载meter表项数量;新增overload_meter_array字段,以添加超载meter表项列表。在又一可选实施例中,meter状态响应报文还可以包括该交换机能够支持的最大meter表项数量、最大带宽速率、等级标识等能力集信息。当控制器获得该第二meter表项信息后,可以根据该第二meter表项信息以及监控需要来设定监控条件,设定监控条件可以为以下任意一项或任意多项:所述交换机的可用meter表项数量不大于预设数量;所述交换机的闲置meter表项数量发生变化;所述交换机的超载meter表项数量发生变化。所设定的监控条件可以携带在meter更新报文中发送至交换机,以使交换机在满足所述监控条件时,向控制器发送meter状态通告报文。在一实施例中,meter更新报文可以是modifymetertablemessage报文,可以在该modifymetertablemessage报文新增min_number字段,若监控条件包括交换机的可用meter表项数量不大于预设数量,可以在min_number字段添加监控条件中为可用meter表项数量设定的预设数量;还可以新增flags字段,当监控条件包括所述交换机的闲置meter表项数量发生变化,和/或所述交换机的超载meter表项数量发生变化时,可以在flags字段添加所设定的对应的监控条件。步骤202,接收所述交换机发送的meter状态通告报文,所述meter状态通告报文携带所述交换机的第一meter表项信息;交换机在确定meter状态满足meter更新报文中的监控条件时,则会向控制器发送meter状态通告报文,并将交换机的第一meter表项信息携带在meter状态通告报文中,以通告自身的meter状态。其中,该第一meter表项信息可以包括所述交换机的可用meter表项信息、交换机的闲置meter表项信息以及交换机的超载meter表项信息中的任意一项或多项,具体内容可以与第二表项信息类似,在此不再赘述。在一实施例中,该meter状态通告报文可以是metertablestatus报文,该metertablestatus报文中也可以新增Available_size字段、idle_meter_array字段、overlad_meter_size字段、overload_meter_array字段。若满足的监控条件包括交换机的可用meter表项数量不大于预设数量,可以在Available_size字段添加可用meter表项数量;若满足的监控条件包括所述交换机的闲置meter表项数量发生变化,可以在新增idle_meter_size字段添加发生变化的闲置meter表项数量,在新增idle_meter_array字段添加发生变化的闲置meter表项列表;若满足的监控条件包括所述交换机的超载meter表项数量发生变化,可以在新增的overlad_meter_size字段添加超载meter表项数量,在新增的overload_meter_array字段添加超载meter表项列表。在又一实施例中,meter状态通告报文还可以具有reason字段,通过在该reason字段添加监控标识,以表征所述交换机满足的监控条件。例如,当监控条件包括多个条件:所述交换机的可用meter表项数量不大于预设数量,以及所述交换机的闲置meter表项数量发生变化,那么当交换机监测到闲置meter表项数量发生变化,则可以发送携带有与闲置meter表项数量发生变化对应的监控标识的meter状态通告报文,以通告交换机的闲置meter表项数量发生变化。当然,若监控条件仅包含上述条件中之一时,也可以不携带该监控标识,当控制器接收到该meter状态通告报文即可以视为交换机meter状态满足了预设的监控条件。步骤203,控制器根据所述第一meter表项信息进行流量监控。当主机之间首次进行报文通信、或者用户通过云平台主动对某个流量进行控制时,可以为该流量生成meter信息下发至指定交换机的meter表,并生成meter流表项下发至指定交换机的转发流表,以对该流量进行监控。该meter信息包括对待监控流量设置的限制速率、最大速率以及等级标识等。该指定交换机则是流量源主机接入的交换机。在将生成的meter信息下发至指定交换机的meter表时,为了避免因meter表无可用meter表项而导致meter信息下发失败,可以在下发meter信息时根据获取的第一meter表项信息中的可用meter表项信息确定所述交换机是否具有可用meter表项,当确定具有可用meter表项时,将待下发的meter信息下发至所述交换机的可用meter表项中;若确定没有可用meter表项,可以在确定出待监控流量对应的meter信息后,根据第一meter表项信息中的闲置meter表项信息确定所述交换机是否具有闲置meter表项,若确定所述交换机具有闲置meter表项,且所述闲置meter表项中包括meter信息与所述待监控流量对应的meter信息相同的第一meter表项,则可以复用该第一meter表项,将该闲置的第一meter表项作为为该待监控流量分配的meter表项,并向所述交换机下发流表,所下发的流表用于指示根据所述第一meter表项监控所述待监控流量。当控制器获取到第一meter表项信息后,若根据所述第一meter表项信息中的超载meter表项信息确定所述交换机具有超载meter表项,还可以在确定出利用所述超载meter表项监控的流量后,向发送所述流量的设备发送告警消息,以使所述设备降低发送所述流量的速率。具体地,当确定所述交换机具有超载meter表项时,可以根据利用所述超载meter表项监控的流量获取到该流量的源主机,并向该流量的源主机发送告警消息,通知源主机降低发送所述流量的速率,例如,可以将该流量对应的meter信息中的限制速率发送至源主机,以通知源主机将其发送流量的速率调整至该限制速率以下,避免超速。值得一提的是,控制器还可以在任意时刻根据当前获取的meter表项信息对进行流量监控,例如,当控制器需要对交换机设定监控条件时,获取到该meter状态响应报文中的第二meter表项信息后,还可以根据该第二meter表项信息进行流量监控,根据第二meter表项信息进行流量监控的处理流程可以与根据第一meter表项信息进行流量监控类似,此处不再赘述。本发明实施例提供的流量监控方法,无需控制器定期主动向交换机获取meter表项信息,而是通过控制器向交换机发送携带监控条件的meter更新报文,以使交换机在满足监控条件时,向控制器主动上送携带第一meter表项信息的meter状态通告报文,由控制器根据第一meter表项信息进行流量监控。由此可见,本发明中无需控制器频繁获取交换机上meter表的状态,减少了控制器和交换机之间协议报文的交互,避免因控制器过多访问交换机获取Meter状态而占用控制器巨大的CPU资源。并且,与现有技术相比,本发明除了可以主动上报交换机可存储的最大meter表项数量之外,还可以通过上报具体的meter表项信息,使控制器根据该具体的meter表项信息更好的进行流量监控,进而提高网络的整体处理效率。本发明还提供一种流量监控装置,图3为该流量监控装置的结构示意图,该装置可以应用于控制器,该流量监控装置可以包括:第一发送单元301,用于向交换机发送meter更新报文,所述meter更新报文携带监控条件,以使所述交换机在满足所述监控条件时,向所述控制器发送meter状态通告报文;第一接收单元302,用于接收所述交换机发送的meter状态通告报文,所述meter状态通告报文携带所述交换机的第一meter表项信息;监控单元303,用于根据所述第一meter表项信息进行流量监控。进一步地,所述第一meter表项信息包括所述交换机的可用meter表项信息;所述监控单元303还可以用于:当根据所述可用meter表项信息确定所述交换机具有可用meter表项时,将待下发的meter信息下发至所述交换机的可用meter表项中。进一步地,所述第一meter表项信息包括所述交换机的闲置meter表项信息;所述监控单元303还可以用于:确定待监控流量对应的meter信息;当根据所述闲置meter表项信息确定所述交换机具有闲置meter表项,且所述闲置meter表项中包括meter信息与所述待监控流量对应的meter信息相同的第一meter表项,则向所述交换机下发流表,所述流表用于指示根据所述第一meter表项监控所述待监控流量。进一步地,所述第一meter表项信息包括所述交换机的超载meter表项信息;所述监控单元303,还可以用于:当根据所述超载meter表项信息确定所述交换机具有超载meter表项时,确定利用所述超载meter表项监控的流量;向发送所述流量的设备发送告警消息,以使所述设备降低发送所述流量的速率。进一步地,所述装置还可以包括:第二发送单元304,用于在所述向交换机发送meter状态监控报文之前,向所述交换机发送meter状态请求报文,以使所述交换机在接收到所述meter状态请求报文后,向所述控制器发送meter状态响应报文;第二接收单元305,用于接收所述交换机发送的meter状态响应报文,所述meter状态响应报文携带所述交换机的第二meter表项信息,所述第二meter表项信息包括:所述交换机的可用meter表项信息或闲置meter表项信息或超载meter表项信息;确定单元306,用于根据所述第二meter表项信息确定所述监控条件。进一步地,所述监控条件可以包括以下至少一项:所述交换机的可用meter表项数量不大于预设数量;所述交换机的闲置meter表项数量发生变化;所述交换机的超载meter表项数量发生变化。进一步地,所述meter状态通告报文还携带监控标识,所述监控标识用于表征所述交换机满足的监控条件。本发明应用于控制器的流量监控装置在具体的处理流程中可以与上述应用于控制器的流量监控方法的处理流程一致,在此不再赘述。上述装置可以通过软件实现,也可以通过硬件实现,本发明流量监控装置所在控制器的硬件架构示意图均可参考图4所示,其基本硬件环境包括中央处理器CPU401、转发芯片402、存储器403以及其他硬件404,其中存储器403中包括机器可读指令,CPU401读取并执行机器可读指令执行图3中各单元的功能。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1