一种流量统计方法、装置及计算机可读存储介质与流程

文档序号:17937976发布日期:2019-06-18 22:47阅读:138来源:国知局
一种流量统计方法、装置及计算机可读存储介质与流程
本发明涉及无线通信
技术领域
,尤其涉及一种流量统计方法、装置及计算机可读存储介质。
背景技术
:云计算已经成为当前it巨头建设的重点,虚拟化数据中心作为云计算的重要组成部分其重要性可见一斑.从主机等计算资源的角度看,数据中心虚拟化,包含多虚一与一虚多两个方向,都提供了计算资源被按需调配的手段。系统虚拟化以缩短业务部署时间,提高资源使用效率为主要目的,通过某种方式隐藏底层物理硬件的过程,从而让多个操作系统可以透明地使用和共享它,主要是在一个物理系统上的多操作系统同时并存的技术。边缘虚拟桥(edgevirtualbridging,evb)技术是当前用于解决虚拟化环境的虚拟机(virtualmachine,vm)与网络之间的连接与管理边界问题而产生。并在此标准802.1qbg定义的框架基础上可以实现vm生命周期与网络的自动化关联、网络属性的灵活变更。evb原来由802.1qbg和802.1qbh组成,数据层面的实现一共有四种:其中802.1qbg包含了三种,即虚拟网络桥(virtualethernetbridging,veb)模式、虚拟网络端口聚合(virtualethernetportaggregator,vepa)模式和多通道multichannel模式;802.1qbh为端口扩展(portextender,pe)模式。当前802.1qbh已经在evb内取消,因此evb目前也就是802.1qbg。从技术实现的角度,以及某些特殊应用场景下,802.1qbg的不同模式是可以同时存在的,并且技术上要求能够多层级联,这在标准预备文档中也进行了描述。但在更多的场景下,并不需要复杂的级联拓扑和层次,标准在使用上建议了一个基本的evb架构。虚拟化数据中心给网络侧带来了一些挑战,如图1所述,vm跟普通evb服务器设备一样,每个vm有着自己的虚拟网卡(virtualnic),每个virtualnic有着自己的媒体访问控制(mediumaccesscontrol,mac)地址和ip地址。虚拟交换机(virtualswitch)即vswitch相当于一个虚拟的二层交换机,abcde分别是vswitch上的虚拟端口,该vswitch连接虚拟网卡和物理网卡,将vm上的数据报文从物理网口转发出去。根据需要,vswitch还可以支持二层转发、安全控制、端口镜像等功能。这种方案对于网络管理员而言,无法看到vswitch,这样导致vswitch游离于网络整体管理之外,不利于整体网络安全监控的实现。为了将evb服务器从复杂的网络交换工作中脱离出来,回归到原先的服务应用功能上,而将报文转发及网络策略控制交还给网络设备来完成,考虑另外一种实现vm网络通讯的方法,这就是ieee802.1qbg标准所要说明的内容,它指定了一种evb标准,该标准基于vepa技术。通过vepa技术,来自于vm的所有流量都会被转发到邻近的物理接入交换机,使得网络接入交换机能够看到vm的报文流。这种情况下,当目标vm也位于同一个evb服务器时被转回到相同的物理evb服务器,流量作了一个180度的转向,如图2所示,同一宿主evb服务器station内部的vm之间的流量都需要经过网络设备来进行蛇形转发。这样网络设备就可以知道station内部的vm之间的流量信息。现有的vepa技术可以使网络管理员监控同一个station内部vm之间的网络流量,把控整个数据中心网络的流量信息,但是带来的后果是把本来可以在vm内部直接转发的报文,需要绕一圈到网络设备的同一个端口进行180度的蛇形转发,对网络设备的带宽资源是很大的浪费,也带来了不必要的带宽延时。技术实现要素:为解决现有存在的技术问题,本发明实施例提供一种流量统计方法、装置及计算机可读存储介质,能够监控evb服务器的网络流量的同时,还避免蛇形转发。本发明实施例的技术方案是这样实现的:本发明实施例提供一种流量统计方法,所述方法包括:通过虚拟交换机对虚拟机vm的传输数据进行统计得到所述vm的流量参数;根据所述流量参数和所述vm的通讯标识生成流量状态通知,并发送所述流量状态通知至边缘虚拟桥evb交换机。上述方案中,所述方法还包括:判断所述传输数据的源地址和目的地址是否属于同一边缘虚拟桥evb服务器;确定所述传输数据的源地址和目的地址属于同一evb服务器时,通过第一路径传输所述传输数据,所述第一路径为所述evb服务器的内部路径;确定所述传输数据的源地址和目的地址不属于同一evb服务器时,通过第二路径传输所述传输数据,所述第二路径为所述evb服务器和所述evb交换机之间的路径。上述方案中,在发送所述流量状态通知至evb交换机之前,所述方法还包括:确定所述虚拟交换机对应的虚拟服务商通道;为所述流量状态通知添加所述虚拟服务商通道的通道标识。上述方案中,所述方法还包括:基于隧道发现配置协议cdcp在状态通知中设置流量统计标识生成所述流量状态通知。本发明实施例还提供一种流量统计方法,所述方法包括:接收边缘虚拟桥evb服务器发送的流量状态通知,对所述流量状态通知进行解析得到流量参数和虚拟机vm的通讯标识,所述流量参数通过所述evb服务器的虚拟交换机对所述vm的传输数据进行统计得到;利用所述流量参数对所述vm进行流量统计。上述方案中,在对所述流量状态通知进行解析得到流量参数和vm的通讯标识之前,所述方法还包括:对所述流量状态通知进行解析得到虚拟服务商通道的通道标识;根据所述虚拟服务商通道的通道标识确定所述流量参数所属的虚拟交换机。上述方案中,所述方法还包括:基于隧道发现配置协议cdcp对接收的状态通知进行解析,检测到解析结果中包括流量统计标识,确定所述状态通知为流量状态通知。本发明实施例还一种流量统计方法,所述方法包括:边缘虚拟桥evb服务器通过虚拟交换机对虚拟机vm的传输数据进行统计得到所述vm的流量参数,根据所述流量参数和所述vm的通讯标识生成流量状态通知,并发送所述流量状态通知至边缘虚拟桥evb交换机;所述evb交换机接收所述evb服务器发送的所述流量状态通知,对所述流量状态通知进行解析得到所述流量参数和所述vm的通讯标识,利用所述流量参数对所述vm进行流量统计。为实现上述流量统计方法,本发明实施例还提供一种流量统计装置,所述装置包括:第一处理器和第一收发器;其中,所述第一处理器,用于通过虚拟交换机对虚拟机vm的传输数据进行统计得到所述vm的流量参数;根据所述流量参数和所述vm的通讯标识生成流量状态通知;所述第一收发器,用于发送所述流量状态通知至边缘虚拟桥evb交换机。上述方案中,所述第一处理器还用于:判断所述传输数据的源地址和目的地址是否属于同一边缘虚拟桥evb服务器;确定所述传输数据的源地址和目的地址属于同一evb服务器时,控制所述第一收发器通过第一路径传输所述传输数据,所述第一路径为所述evb服务器的内部路径;确定所述传输数据的源地址和目的地址不属于同一evb服务器时,控制所述第一收发器通过第二路径传输所述传输数据,所述第二路径为所述evb服务器和所述evb交换机之间的路径。上述方案中,所述第一处理器还用于:基于隧道发现配置协议cdcp在状态通知中设置流量统计标识生成所述流量状态通知。为实现上述流量统计方法,本发明实施例还提供一种流量统计装置,所述装置包括:第二处理器、第二收发器;其中,所述第二收发器,用于接收边缘虚拟桥evb服务器发送的流量状态通知;所述第二处理器,用于对所述流量状态通知进行解析得到流量参数和虚拟机vm的通讯标识,利用所述流量参数对所述vm进行流量统计;所述流量参数通过所述evb服务器的虚拟交换机对所述vm的传输数据进行统计得到。上述方案中,所述第二处理器还用于:基于隧道发现配置协议cdcp对接收的状态通知进行解析,检测到解析结果中包括流量统计标识,确定所述状态通知为流量状态通知。为实现上述流量统计方法,本发明实施例还提供一种流量统计系统,所述系统包括边缘虚拟桥evb服务器和边缘虚拟桥evb交换机;其中,所述evb服务器通过虚拟交换机对虚拟机vm的传输数据进行统计得到所述vm的流量参数,根据所述流量参数和所述vm的通讯标识生成流量状态通知,并发送所述流量状态通知至所述evb交换机;所述evb交换机接收所述evb服务器发送的所述流量状态通知,对所述流量状态通知进行解析得到所述流量参数和所述vm的通讯标识,利用所述流量参数对所述vm进行流量统计。本发明实施例还提供一种流量统计装置,所述装置包括:处理器、存储器;所述存储器上存储有能够在所述处理器上运行的计算机程序;其中,所述处理器用于运行所述计算机程序时,执行上述evb服务器侧任一方法的步骤;或执行上述evb交换机侧任一方法的步骤。本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现上述evb服务器侧任一方法的步骤,或实现上述evb交换机侧任一方法的步骤。本发明实施例提供的流量统计方法、装置及计算机可读存储介质,将evb服务器的vm的传输数据的流量参数通过流量状态通知发送给evb交换机,evb交换机通过接收到的流量状态通知对evb服务器的vm的流量进行流量统计;如此,在evb服务器内部可实现传输数据的流量的统计,避免蛇形转发,同时,能够通过流量参数的发送实现evb交换机对evb服务器内部vm的网络流量的统计和监控。附图说明在附图(其不一定是按比例绘制的)中,相似的附图标记可在不同的视图中描述相似的部件。附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。图1为虚拟数据中心网络结构示意图;图2为蛇形转发的路径示意图;图3为本发明实施例一提供的流量统计方法的流程示意图;图4为本发明实施例二提供的流量统计方法的流程示意图;图5为本发明实施例三提供的流量统计方法的流程示意图;图6为本发明实施例四提供的网络结构示意图;图7为本发明实施例四提供的evb服务器与evb交换机传输的消息交互示意图;图8为cdcp消息结构示意图;图9为本发明实施例四提供的基于cdcp的流量状态通知的消息结构示意图;图10为本发明实施例五或六提供的流量统计装置硬件结构示意图;图11为本发明实施例七提供的流量统计装置结构示意图;图12为本发明实施例八或九提供的流量统计装置硬件结构示意图;具体实施方式下面结合附图及实施例对本发明再作进一步详细的描述。在本发明实施例中,evb服务器通过虚拟交换机对vm的传输数据进行统计得到所述vm的流量参数,根据所述流量参数和所述vm的通讯标识生成流量状态通知,并发送所述流量状态通知至evb交换机;所述evb交换机接收所述evb服务器发送的所述流量状态通知,对所述流量状态通知进行解析得到所述流量参数和所述vm的通讯标识,利用所述流量参数对所述vm进行流量统计。进一步地,在进行传输数据的传输时,将源地址和目标地址属于同一evb服务器的传输数据在evb服务器内进行传输,将源地址和目标地址不属于同一evb服务器的传输数据通过evb交换机进行传输。实施例一本发明实施例提供一种流量统计方法,应用于evb服务器,如图3所示,该方法包括:s301、通过虚拟交换机对vm的传输数据进行统计得到所述vm的流量参数;在进行传输数据的转发时,判断所述传输数据的源地址和目的地址是否属于同一evb服务器;确定所述传输数据的源地址和目的地址属于同一evb服务器时,通过第一路径传输所述传输数据,所述第一路径为所述evb服务器的内部路径;确定所述传输数据的源地址和目的地址不属于同一evb服务器时,通过第二路径传输所述传输数据,所述第二路径为所述evb服务器和所述evb交换机之间的路径。其中,可将发出数据的源vm作为源地址,将接收数据的目标vm作为目标地址。evb服务器中包括vm和虚拟交换机,vm的传输数据通过虚拟交换机进行交换控制实现vm的传输数据的转发。其中,一个evb服务器中可包括一个或多个vm。根据发送数据的源vm和接收数据的目标vm所属的evb服务器是否为同一个evb服务器,将传输数据区分为两类数据:内部传输数据和外部传输数据,内部传输数据的传输路径为第一路径,外部传输数据的传输路径为第二路径。内部传输数据的源vm和目标vm属于同一evb服务器。当数据为内部传输数据时,源vm发出的传输数据发送至源vm对应的源虚拟交换机,源虚拟交换机经过对目标地址的识别,将数据转发至目标虚拟交换机,目标虚拟交换机则将传输数据转发至目标vm,实现evb服务器内部转发。这里,源虚拟交换机和目标虚拟交换机可为同一个虚拟交换机,也可为同一evb服务器内不同的虚拟交换机。这里,传输数据的第一路径为evb服务器的内部路径。外部传输数据的源vm和目标vm属于不同的evb服务器。当数据为外部传输数据时,对于不同的传输数据,evb服务器既可作为发出数据的源evb服务器,也可作为接收数据的目标evb服务器。在进行传输数据的转发时,源evb服务器中的源vm的传输数据发送至源vm对应的源虚拟交换机,源虚拟交换机经过对目标地址的识别,将传输数据转发至与源evb服务器对应的源evb交换机,源evb交换机将传输数据转发至目标evb服务器对应的目标evb交换机,目标evb交换机将传输数据转发目标evb服务器内的目标vm。这里,源evb交换机和目标evb交换机可为同一个evb交换机,也可为不同的evb交换机。这里,传输数据的第二路径为evb服务器与evb交换机之间的路径。这里,当通过传输数据时,可通过vm对应的虚拟交换机对传输数据进行统计,得到的传输数据的流量参数,其中,流量参数可包括:入接口报文的最大速率、出接口报文的最大速率、接收报文总数量、发送报文总数量、接口接收的单播报文的数目、接口发送的单播报文的数目、接口接收的组播报文的数目、接口发送的组播报文的数目、接口接收的广播报文的数目、接口发送的广播报文的数目、接口接收的超大帧长报文数目、接口发送的超大帧长报文数目、接口在物理层检测时发现的丢弃报文数目、接口在物理层检测时发现的错误报文总数目、接口接收的crc错误报文数目等与流量统计有关的参数。在实际应用中,流量统计参数可为上述参数中的一个或多个的组合,也可根据实际需求对流量统计参数进行设置。s302、根据所述流量参数和所述vm的通讯标识生成流量状态通知,并发送所述流量状态通知至evb交换机。在统计得到vm的流量参数后,通过流量状态通知将流量参数发送至evb交换机。在生成流量状态通知时,将vm的流量参数和vm的通讯标识同时封装在流量状态通知中,vm的通讯标识可为vm的mac地址。在一些实施例中,基于隧道发现配置协议(channeldiscoveryandconfigurationprotocol,cdcp)在状态通知中设置流量统计标识生成所述流量状态通知。具体的,可将状态通知的保留字段设置为自定义的流量统计标识,从而生成流量状态通知,以表征该状态通知携带流量参数,以和未携带流量参数的状态通知进行区分,流量统计标识可根据用户需求进行设置,比如:保留字段为0x1。在生成流量状态通知时,可在具有流量统计标识的状态通知的基础上新增一个流量统计信息字段,将流量参数和vm的通讯标识封装在该流量统计信息字段。比如:在状态通知的服务信道标识(s-channelid,scid)/服务vlan标识(s-vlanid,svid)对中增加流量统计字段。在一些实施例中,在发送所述流量状态通知至evb交换机之前,确定所述虚拟交换机对应的虚拟服务商通道;为所述流量状态通知添加所述虚拟服务商通道的通道标识,以通过虚拟交换机对应的服务商通道来发送所述流量状态通知。当evb服务器中包括多个虚拟交换机时,多个虚拟交换机和evb交换机之间存在多个虚拟服务商通道,且多个虚拟服务商通道通过evb服务器和evb交换机一个物理通道来实现。此时,发送流量状态通知的虚拟交换机向evb交换机发送请求消息以请求创建虚拟服务商通道;evb交换机根据请求消息对应的虚拟交换机分配虚拟服务商通道并创建虚拟服务商通道,创建后,向evb服务器返回虚拟服务商通道创建通知。当evb服务器接收到evb交换机返回的虚拟服务商通道创建通知时,通过创建的服务商通道向evb交换机发送流量状态通知。evb服务器在发送流量状态通知之前,为流量状态通知添加该虚拟服务商通道的通道标识,以标识该流量状态通知所属的虚拟服务商通道。这里,通道标识的形式可根据实际需求进行设置。evb服务器在该虚拟交换机开始传输数据时,为该虚拟交换机创建虚拟服务商通道。在传输数据的传输的过程中,可周期性向evb交换机发送流量状态通知,发出的流量状态通知中携带的流量参数为发出时刻所统计的流量参数,在传输数据传输完成后,向evb交换机发送请求消息以删除该虚拟交换机对应的虚拟服务商通道。需要说明的是,evb服务器可同时通过不同的虚拟服务商通道向evb交换机发送多个虚拟交换机的流量状态通知。当evb交换机接收到流量状态通知时,对流量状态通知进行解析,得到evb服务器发送的流量参数和流量参数所属的vm。在本发明实施例中,evb服务器通过虚拟交换机对vm的传输数据进行统计得到vm的流量参数,根据所述流量参数和所述vm的通讯标识生成流量状态通知,并发送所述流量状态通知至evb交换机;能够通过流量参数的发送实现evb交换机对evb服务器内部vm的网络流量的统计和监控,并且由evb服务器进行流量统计,避免了蛇形转发。进一步地,在进行传输数据的传输时,将源地址和目标地址属于同一evb服务器的传输数据在evb服务器内进行传输,将源地址和目标地址不属于同一evb服务器的传输数据通过evb交换机进行传输,从而降低了宽带资源的浪费,减少了传输时延。实施例二本发明实施例提供一种流量统计方法,应用于evb交换机,如图4所示,包括:s401、接收evb服务器发送的流量状态通知,对所述流量状态通知进行解析得到流量参数和vm的通讯标识;所述流量参数通过所述evb服务器的虚拟交换机对所述vm的传输数据进行统计得到。当evb服务器内的vm进行的传输数据的传输时,evb服务器通过传输数据的vm对应的虚拟交换机对vm的传输数据进行统计,其中,传输数据包括第一路径的传输数据和第二路径的传输数据,第一路径为evb服务器的内部路径,第二路径为evb服务器与evb交换机之间的路径。当虚拟交换机对vm的传输数据进行统计得到该vm对应的流量参数后,将流量参数和vm的通讯标识进行封装,生成流量状态标识,并将生成的流量状态标识发送至evb交换机。evb交换机接收到流量状态通知,对流量状态通知进行解析,解析出流量状态通知携带的流量参数和vm的通讯标识,其中,流量参数可包括:入接口报文的最大速率、出接口报文的最大速率、接收报文总数量、发送报文总数量、接口接收的单播报文的数目、接口发送的单播报文的数目、接口接收的组播报文的数目、接口发送的组播报文的数目、接口接收的广播报文的数目、接口发送的广播报文的数目、接口接收的超大帧长报文数目、接口发送的超大帧长报文数目、接口在物理层检测时发现的丢弃报文数目、接口在物理层检测时发现的错误报文总数目、接口接收的crc错误报文数目等与流量统计有关的参数。vm的通讯标识可为vm的mac地址。一些实施例中,流量状态通知为添加有流量统计标识的状态通知。当evb交换机接收到状态通知时,基于cdcp对所述状态通知进行解析,检测到解析结果中包括流量统计标识,确定所述状态通知为流量状态通知。确定所述状态通知为流量状态通知时,确定接收到的状态通知中携带有流量参数,对流量参数对应的字段进行解析得到流量参数。这里,当状态通知的保留字段设置为自定义的流量统计标识时,确定该状态通知为流量状态通知,以表征该状态通知携带流量参数,以和未携带流量参数的状态通知进行区分,流量统计标识可根据用户需求进行设置,比如:保留字段为0x1。当基于cdcp对所述状态通知进行解析时,可通过识别状态通知中新增的流量统计信息字段来确定流量参数和vm的通讯标识,比如:状态通知的scid/svid对中增加的流量统计字段。在一些实施例中,在对所述流量状态通知进行解析得到流量参数和vm的通讯标识之前,对所述流量状态通知进行解析得到虚拟服务商通道的通道标识;根据所述虚拟服务商通道的通道标识确定所述流量参数所属的虚拟交换机。这里,evb交换机与evb服务器的多个虚拟交换机之间存在多个虚拟服务商通道,且多个虚拟服务商通道通过evb交换机与evb服务器之间的一个物理通道来实现。当evb交换机接收到evb服务器的请求消息以请求创建虚拟服务商通道时,根据虚拟服务商通道配置为发送请求的虚拟交换机分配虚拟服务商通道,并为该虚拟交换机创建虚拟服务商通道,在创建虚拟服务商通道后向evb服务器返回虚拟服务商通道创建通知,通过创建的虚拟服务商通道接收evb服务器发送的该虚拟交换机的流量状态通知。evb服务器在发送状态流量通知前,将虚拟服务商通道的通道标识添加在流量状态通知中,在evb交换机接收到流量状态通知时,剥离流量状态通知携带的虚拟服务商通道的通道标识并识别该通道标识,以确定传输流量状态通知的虚拟服务商通道,进一步确定流量状态通知携带的流量参数所属的虚拟交换机。在进行传输数据的传输过程中,evb交换机可周期性的接收到evb服务器发送的一虚拟交换机的流量状态通知,接收到的流量状态通知中携带的流量参数为发出时刻所统计的流量参数。在接收到evb服务器发送的请求消息以删除创建的虚拟服务商通道时,可删除虚拟服务商通道,直到再次接收evb服务器发送的针对同一虚拟交换机的创建虚拟服务商通道的请求消息,以再次创建该虚拟交换机对应的虚拟服务商通道。需要说明的是,evb交换机在创建虚拟服务商通道时,创建的虚拟服务商通道与虚拟交换机对应,即虚拟服务商通道与虚拟交换机之间具有一一对应的关系。evb交换机和evb服务器之间可同时创建多个虚拟交换机对应的虚拟服务商通道,以接收不同的虚拟交换机的流量状态通知,以获取evb服务器的内部传输数据的流量参数。s402、利用所述流量参数对所述vm进行流量统计;当evb交换机获取vm的流量参数后,利用流量参数对该vm的流量进行流量统计。在实际的应用中,evb交换机通过交换机发送的同一vm的多条流量状态通知中携带的流量参数对该vm进行流量统计。可通过多同一evb服务器中的各vm的流量的统计来实现对服务器的流量的统计。当evb交换机确定evb服务器的vm的流量后,可将统计的流量上报给网管系统,供网管人员查阅。在本发明实施例中,由evb交换机通过从evb接收的流量状态通知来对evb内的vm的流量进行统计,不需要evb基于转发的数据进行流量统计,避免了服务器内部转发的数据需要经过蛇形转发,降低了宽带资源的浪费,减少了传输时延。实施例三本发明实施例提供一种流量统计方法,应用于包括evb服务器和evb交换机的网络系统,如图5所示,包括:s501、evb服务器通过虚拟交换机对vm的传输数据进行统计得到所述vm的流量参数,根据所述流量参数和所述vm的通讯标识生成流量状态通知,并发送所述流量状态通知至evb交换机;s502、evb交换机接收所述evb服务器发送的所述流量状态通知,对所述流量状态通知进行解析得到所述流量参数和所述vm的通讯标识,利用所述流量参数对所述vm进行流量统计。在一些实施例中,evb服务器判断所述传输数据的源地址和目的地址是否属于同一evb服务器;确定所述传输数据的源地址和目的地址属于同一evb服务器时,通过第一路径传输所述传输数据,所述第一路径为所述evb服务器的内部路径;确定所述传输数据的源地址和目的地址不属于同一evb服务器时,通过第二路径传输所述传输数据,所述第二路径为所述evb服务器和所述evb交换机之间的路径。在一些实施例中,evb服务器在发送所述流量状态通知至evb交换机之前,确定所述虚拟交换机对应的虚拟服务商通道;为所述流量状态通知添加所述虚拟服务商通道的通道标识。此时,evb交换机在对所述流量状态通知进行解析得到流量参数和vm的通讯标识之前,对所述流量状态通知进行解析得到虚拟服务商通道的通道标识;根据所述虚拟服务商通道的通道标识确定所述流量参数所属的虚拟交换机。在一些实施例中,evb服务器基于cdcp在状态通知中设置流量统计标识生成所述流量状态通知。此时,evb交换机基于cdcp对接收的状态通知进行解析,检测到解析结果中包括流量统计标识,确定所述状态通知为流量状态通知。实施例四下面结合具体的应用实施例对本发明实施例提供的流量统计方法再作详细的描述。evb服务器(station)和evb交换机(bridge)组成的系统结构如图6所示,station包括vm、vswitch和服务商组件(s-component),bridge包括s-component,station和bridge之间的虚拟通道称为虚拟服务商通道s-channel。cdcp是一个基于链路层发现协议(linklayerdiscoveryprotocol,lldp)的配置供s-channel的s-vlan(服务商vlan)的协议,通过在报文中以tlv格式封装设备自身信息进行发送,用于发现二层直连设备。cdcp是专门用于建立multichannel模式下s-component与网络连接的通道,evb服务器上的虚拟交换机的veb/vepa均通过s-channel和evb交换机接,s-channel是一个虚拟连接,它利用了两端的s-vlan组件来进行连接。s-channel两端端点称为服务商通道端点(s-channelaccessport,cap),cap负责在报文进入s-channel时候封装通道标识s-tag,在报文离开s-channel时候剥离s-tag。由于所有虚拟连接都是在同一个物理链路上传输的,所以该s-tag用途是来标识每个虚拟交换机所对应的通道。也就是一个vswitch就对应一个s-channel。s-vlan组件能够识别、插入、移除s-tag使得能够在evb交换机上运作多个s-channel。如图7所示,s-channel配置由evb交换机决定,并保存在evb交换机上,由evb服务器向evb交换机发起s-channel资源请求,evb交换机分配s-vlan。station的以太网接口上使能evb交换机功能后,evb交换机通过lldp报文向外发布状态通告701。当vm有创建s-channel的请求,或者原有的请求发生变化时,通道请求消息702向evb交换机发出创建s-channel的请求报文。evb交换机为其分配svid以创建对应的s-channel接口,随后回复响应报文703通知evb服务器分配s-channel的svid。evb服务器和evb交换机在后续的报文中携带当前s-channel的通道标识发送流量状态通告704。这里,可周期性的发送流量状态通告704。evb交换机也可周期性地向evb服务器发送状态通知701。evb服务器周期性的向evb交换机发送cdcp的流量状态通告,携带流量参数和vm的通讯标识,交换机解析流量状态通告就可以知道每个vm对应的流量信息了。需要说明的是,也可通过通道请求消息702向evb交换机发出删除s-channel的请求报文,evb交换机为其释放svid以删除对应的s-channel接口,随后回复响应报文703通知evb服务器删除s-channel的svid,将s-channel删除。cpcp协议tlv字段如图8所示,各字段的含义如表1所示。表1cpcp协议tlv字段的含义valueinterpretation0x0默认的cdcp报文0x1带vswitch统计信息的cdcp报文0x2-0x7保留字段承载流量参数的流量状态通知的tlv字段如图9所示,其中,resv1保留字段默认取值为0,当状态通知的resv1为0时,为普通的状态通知。可自定义一个取值0x1,代表本次station发给bridge的状态通告里面携带流量参数。0x2-0x7为保留字段,可根据用户需求进行设置。流量通知消息中携带流量参数和vm的通讯标识的vswitchstatistic字段由表2所示的字段组成。表2vswitchstatistic字段的组成实例name长度interpretationmac6octets代表对应虚拟机的mac地址inputpeakrate4octets入接口报文的最大速率。outputpeakrate4octets出接口报文的最大速率。input4octets接收报文总数量。output4octets发送报文总数量。inputunicast4octets接口接收的单播报文的数目。outputunicast4octets接口发送的单播报文的数目。inputmulticast4octets接口接收的组播报文的数目。outputmulticast4octets接口发送的组播报文的数目。inputbroadcast4octets接口接收的广播报文的数目。outputbroadcast4octets接口发送的广播报文的数目。inputjumbo4octets接口接收的超大帧长报文数目。outputjumbo4octets接口发送的超大帧长报文数目。discard4octets接口在物理层检测时发现的丢弃报文数目。totalerror4octets接口在物理层检测时发现的错误报文总数目。crc4octets接口接收的crc错误报文数目。需要说明的是,表2中的字段为vswitchstatistic所包括的流量参数的示例,在实际应用中,可根据实际需求对流量参数的具体信息进行设置。实施例五为实现本发明实施例一的方法,本发明实施例还提供了一种流量统计装置,该装置包括第一处理器和第一收发器;其中,第一处理器,用于通过虚拟交换机对vm的传输数据进行统计得到所述vm的流量参数;根据所述流量参数和所述vm的通讯标识生成流量状态通知;第一收发器,用于发送所述流量状态通知至evb交换机。在一些实施例中,第一处理器还用于:判断所述传输数据的源地址和目的地址是否属于同一evb服务器;确定所述传输数据的源地址和目的地址属于同一evb服务器时,控制所述第一收发器通过第一路径传输所述传输数据,所述第一路径为所述evb服务器的内部路径;确定所述传输数据的源地址和目的地址不属于同一evb服务器时,控制所述第一收发器通过第二路径传输所述传输数据,所述第二路径为所述evb服务器和所述evb交换机之间的路径。在一些实施例中,第一处理器还用于:确定所述虚拟交换机对应的虚拟服务商通道;为所述流量状态通知添加所述虚拟服务商通道的通道标识。在一些实施例中,第一处理器还用于:基于cdcp在状态通知中设置流量统计标识生成所述流量状态通知。实施例六为实现本发明实施例二的方法,本发明实施例还提供了一种流量统计装置,该装置包括第二处理器和第二收发器;其中,第二收发器,用于接收evb服务器发送的流量状态通知;第二处理器,用于对所述流量状态通知进行解析得到流量参数和vm的通讯标识,利用所述流量参数对所述vm进行流量统计;所述流量参数通过所述evb服务器的虚拟交换机对所述vm的传输数据进行统计得到。在一些实施例中,第二处理器还用于:对所述流量状态通知进行解析得到虚拟服务商通道的通道标识;根据所述虚拟服务商通道的通道标识确定所述流量参数所属的虚拟交换机。在一些实施例中,第二处理器还用于:基于隧道发现配置协议cdcp对接收的状态通知进行解析,检测到解析结果中包括流量统计标识,确定所述状态通知为流量状态通知。需要说明的是,本发明实施例五或实施例六提供的流量统计装置可通过图10所示的装置实现,图10所示的流量统计装置包括:至少一个处理器1001和收发器1002。流量统计装置中的各个组件通过总线系统1003耦合在一起。可理解,总线系统1003用于实现这些组件之间的连接通信。其中第一处理器或第二处理器与处理器1001对应,第一收发器或第二收发器与收发器1001对应。实施例七本发明实施例还提供一种流量统计系统,如图11所示,所述系统包括evb服务器1101和evb交换机1102;其中,evb服务器1101通过虚拟交换机对vm的传输数据进行统计得到所述vm的流量参数,根据所述流量参数和所述vm的通讯标识生成流量状态通知,并发送所述流量状态通知至evb交换机1102;evb交换机1102接收evb服务器1101发送的所述流量状态通知,对所述流量状态通知进行解析得到所述流量参数和所述vm的通讯标识,利用所述流量参数对所述vm进行流量统计。实施例八基于此,为了实现本发明实施例一的方法,本发明实施例还提供了一种流量统计装置,该装置包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序;其中,处理器用于运行所述计算机程序时,执行:通过虚拟交换机对vm的传输数据进行统计得到所述vm的流量参数;根据所述流量参数和所述vm的通讯标识生成流量状态通知,并发送所述流量状态通知至evb交换机。在一些实施例中,处理器用于运行所述计算机程序时,还执行:判断所述传输数据的源地址和目的地址是否属于同一evb服务器;确定所述传输数据的源地址和目的地址属于同一evb服务器时,控制所述第一收发器通过第一路径传输所述传输数据,所述第一路径为所述evb服务器的内部路径;确定所述传输数据的源地址和目的地址不属于同一evb服务器时,控制所述第一收发器通过第二路径传输所述传输数据,所述第二路径为所述evb服务器和所述evb交换机之间的路径。在一些实施例中,处理器用于运行所述计算机程序时,在发送所述流量状态通知至evb交换机之前,还执行:确定所述虚拟交换机对应的虚拟服务商通道;为所述流量状态通知添加所述虚拟服务商通道的通道标识。在一些实施例中,处理器用于运行所述计算机程序时,还执行:基于cdcp在状态通知中设置流量统计标识生成所述流量状态通知。实施例九基于此,为了实现本发明实施例二的方法,本发明实施例还提供了一种流量统计装置,该装置包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序;其中,处理器用于运行所述计算机程序时,执行:接收evb服务器发送的流量状态通知,对所述流量状态通知进行解析得到流量参数和vm的通讯标识,所述流量参数通过所述evb服务器的虚拟交换机对所述vm的传输数据进行统计得到;利用所述流量参数对所述vm进行流量统计。在一些实施例中,处理器用于运行所述计算机程序时,在对所述流量状态通知进行解析得到流量参数和vm的通讯标识之前,还执行:对所述流量状态通知进行解析得到虚拟服务商通道的通道标识;根据所述虚拟服务商通道的通道标识确定所述流量参数所属的虚拟交换机。在一些实施例中,处理器用于运行所述计算机程序时,还执行:基于cdcp对接收的状态通知进行解析,检测到解析结果中包括流量统计标识,确定所述状态通知为流量状态通知。图12是本发明实施利八或实施例九的流量统计装置的结构示意图,图12所示的流量统计装置包括:至少一个处理器1201和存储器1202。流量统计装置中的各个组件通过总线系统1203耦合在一起。可理解,总线系统1203用于实现这些组件之间的连接通信。可以理解,存储器1202可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,readonlymemory)、可编程只读存储器(prom,programmableread-onlymemory)、可擦除可编程只读存储器(eprom,erasableprogrammableread-onlymemory)、电可擦除可编程只读存储器(eeprom,electricallyerasableprogrammableread-onlymemory)、磁性随机存取存储器(fram,ferromagneticrandomaccessmemory)、快闪存储器(flashmemory)、磁表面存储器、光盘、或只读光盘(cd-rom,compactdiscread-onlymemory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,randomaccessmemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,staticrandomaccessmemory)、同步静态随机存取存储器(ssram,synchronousstaticrandomaccessmemory)、动态随机存取存储器(dram,dynamicrandomaccessmemory)、同步动态随机存取存储器(sdram,synchronousdynamicrandomaccessmemory)、双倍数据速率同步动态随机存取存储器(ddrsdram,doubledataratesynchronousdynamicrandomaccessmemory)、增强型同步动态随机存取存储器(esdram,enhancedsynchronousdynamicrandomaccessmemory)、同步连接动态随机存取存储器(sldram,synclinkdynamicrandomaccessmemory)、直接内存总线随机存取存储器(drram,directrambusrandomaccessmemory)。本发明实施例描述的存储器1202旨在包括但不限于这些和任意其它适合类型的存储器。本发明实施例中的存储器1202用于存储各种类型的数据以支持实施例八或实施例九的流量统计装置的操作。上述本发明实施例揭示的方法可以应用于处理器1201中,或者由处理器1201实现。处理器1201可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1201中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1201可以是通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器1201可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器1202,处理器1201读取存储器1202中的信息,结合其硬件完成前述方法的步骤。在示例性实施例中,实施例八或实施例九的流量统计装置可以被一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)、通用处理器、控制器、微控制器(mcu,microcontrollerunit)、微处理器(microprocessor)、或其他电子元件实现,用于执行前述方法。实施例十在示例性实施例中,本发明实施例还提供了一种计算机可读存储介质,例如包括计算机程序的存储器1202,上述计算机程序可由流量统计装置的处理器1201执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flashmemory、磁表面存储器、光盘、或cd-rom等存储器。具体地,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行:通过虚拟交换机对vm的传输数据进行统计得到所述vm的流量参数;根据所述流量参数和所述vm的通讯标识生成流量状态通知,并发送所述流量状态通知至evb交换机。在一些实施例中,所述计算机程序被处理器运行时,还执行:判断所述传输数据的源地址和目的地址是否属于同一evb服务器;确定所述传输数据的源地址和目的地址属于同一evb服务器时,通过第一路径传输所述传输数据,所述第一路径为所述evb服务器的内部路径;确定所述传输数据的源地址和目的地址不属于同一evb服务器时,通过第二路径传输所述传输数据,所述第二路径为所述evb服务器和所述evb交换机之间的路径。在一些实施例中,所述计算机程序被处理器运行时,在发送所述流量状态通知至evb交换机之前,还执行:确定所述虚拟交换机对应的虚拟服务商通道;为所述流量状态通知添加所述虚拟服务商通道的通道标识。在一些实施例中,所述计算机程序被处理器运行时,还执行:基于cdcp在状态通知中设置流量统计标识生成所述流量状态通知。实施例十一在示例性实施例中,本发明实施例还提供了一种计算机可读存储介质,例如包括计算机程序的存储器1202,上述计算机程序可由流量统计装置的处理器1201执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flashmemory、磁表面存储器、光盘、或cd-rom等存储器。具体地,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行:接收evb服务器发送的流量状态通知,对所述流量状态通知进行解析得到流量参数和vm的通讯标识,所述流量参数通过所述evb服务器的虚拟交换机对所述vm的传输数据进行统计得到;利用所述流量参数对所述vm进行流量统计。在一些实施例中,所述计算机程序被处理器运行时,在对所述流量状态通知进行解析得到流量参数和vm的通讯标识之前,还执行:对所述流量状态通知进行解析得到虚拟服务商通道的通道标识;根据所述虚拟服务商通道的通道标识确定所述流量参数所属的虚拟交换机。在一些实施例中,所述计算机程序被处理器运行时,还执行:基于cdcp对接收的状态通知进行解析,检测到解析结果中包括流量统计标识,确定所述状态通知为流量状态通知。需要说明的是:本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1