一种网络流量的状态确定方法、计算设备及存储介质与流程

文档序号:27753740发布日期:2021-12-03 20:54阅读:94来源:国知局
一种网络流量的状态确定方法、计算设备及存储介质与流程

1.本技术涉及计算机技术领域,尤其涉及一种网络流量的状态确定方法、网络异常的确定方法、计算设备及存储介质。


背景技术:

2.随着互联网高速发展,云服务相比于传统的计算服务,具有廉价、易扩展、可伸缩、易管理、高可用等多项优势,因此在信息互联网时代占据着越来越关键的地位。
3.由于大多数用户通过因特网使用云服务,因此保证网络流量的健康运行,是维持云服务的高可用性的重中之重。当网络流量出现异常时,云网络运维人员的首要任务就是确定异常来网络的哪一侧。
4.但是,当前的检测方法需要大范围内部署的大量设备,并与云服务之间进行频繁地通信,为此给云服务的网络带来沉重的负载压力,干扰云服务的正常运行,且检测结果并不能真实反映网络流量的情况。


技术实现要素:

5.本技术的多个方面提供一种网络流量的状态确定方法、网络异常的确定方法、计算设备及存储介质,用以能够较为真实的对异常进行检测,且减低网络压力。
6.本技术实施例提供一种网络流量的状态确定方法,包括:获取进入目标网络的网络流量和流出所述目标网络的网络流量,并确定所述网络流量的特征数据;对所述网络流量进行分类;根据分类后的网络流量的特征数据,建立分类模型;根据所述分类模型,确定进入所述目标网络的待分类网络流量的状态和流出所述目标网络的待分类网络流量的状态。
7.本技术实施例还提供一种网络异常的确定方法,包括:获取进入目标网络的网络流量和流出所述目标网络的网络流量,并确定所述网络流量的特征数据;对所述网络流量进行分类;根据分类后的网络流量的特征数据,建立分类模型;根据所述分类模型,确定进入目标网络的待分类网络流量的状态和流出所述目标网络的待分类网络流量的状态;根据所述状态,进行异常排查。
8.本技术实施例还提供一种网络流量的状态确定方法,包括:获取进入目标网络的第一网络流量,并确定所述第一网络流量的特征数据;对所述第一网络流量进行分类;根据分类后的第一网络流量的特征数据,建立第一分类模型;根据所述第一分类模型,确定进入所述目标网络的待分类网络流量的状态。
9.本技术实施例还提供一种计算设备,包括:存储器以及处理器;所述存储器,用于存储计算机程序;所述处理器,用于执行所述计算机程序,以用于:获取进入目标网络的网络流量和流出所述目标网络的网络流量,并确定所述网络流量的特征数据;对所述网络流量进行分类;根据分类后的网络流量的特征数据,建立分类模型;根据所述分类模型,确定进入目标网络的待分类网络流量的状态和流出所述目标网络的待分类网络流量的状态。
10.本技术实施例还提供一种计算设备,包括:存储器以及处理器;所述存储器,用于存储计算机程序;所述处理器,用于执行所述计算机程序,以用于:获取进入目标网络的网络流量和流出所述目标网络的网络流量,并确定所述网络流量的特征数据;对所述网络流量进行分类;根据分类后的网络流量的特征数据,建立分类模型;根据所述分类模型,确定进入目标网络的待分类网络流量的状态和流出所述目标网络的待分类网络流量的状态;根据所述状态,进行异常排查。
11.本技术实施例还提供一种计算设备,包括:存储器以及处理器;所述存储器,用于存储计算机程序;所述处理器,用于执行所述计算机程序,以用于:获取进入目标网络的第一网络流量,并确定所述第一网络流量的特征数据;对所述第一网络流量进行分类;根据分类后的第一网络流量的特征数据,建立第一分类模型;根据所述第一分类模型,确定进入所述目标网络的待分类网络流量的状态。
12.本技术实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被一个或多个处理器执行时,致使所述一个或多个处理器实现上述方法中的步骤。
13.在本技术实施例中,获取进入目标网络和流出目标网络的网络流量,并确定网络流量的特征数据;对网络流量进行分类,根据分类后的网络流量的特征数据,建立分类模型,并通过模型来确定进入目标网络和流出目标网络的待分类网络流量的状态。由于是直接获取到的进出目标网络的网络流量,无需与目标网络进行通信,来获取检测网络流量,从而不用与目标网络频繁的进行通信,减轻目标网络的负载压力。同时,由于获取到的是目标网络的网络流量,而不是通过与目标网络通信,获取的检测网络流量,从而更能真实的反应当前目标网络的网络流量情况,更加真实地反映出当前进出目标网络的网络流量状态。且在此基础上,由于通过建立分类模型进行网络流量分类,能够更加精准地确定出网络流量的状态。并能够通过网络流量的状态,为帮助进行异常排查作准备。
14.相对的,本技术实施例也可以根据相似方式建立单一模型确定进入目标网络的待分类网络流量的状态,从而进行异常排查。
附图说明
15.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
16.图1a为本技术一示例性实施例的网络流量的状态确定系统的结构示意图;
17.图1b为本技术一示例性实施例的网络流量的状态确定系统的结构示意图;
18.图2为本技术一示例性实施例的网络流量的状态确定方法的流程示意图;
19.图3为本技术又一示例性实施的创建分类模型的示意图;
20.图4为本技术一示例性实施例的网络异常的确定方法的流程示意图;
21.图5为本技术又一示例性实施例提供的网络流量的状态确定装置的结构示意图;
22.图6为本技术又一示例性实施例提供的网络异常的确定装置的结构示意图;
23.图7为本技术一示例性实施例提供的计算设备的结构示意图;
24.图8为本技术一示例性实施例提供的计算设备的结构示意图;
25.图9为本技术一示例性实施例的网络流量的状态确定方法的流程示意图;
26.图10为本技术又一示例性实施例提供的网络流量的状态确定装置的结构示意图;
27.图11为本技术一示例性实施例提供的计算设备的结构示意图。
具体实施方式
28.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
29.基于上述背景技术可知,由于大多数用户通过因特网使用云服务,因此保证网络流量的健康运行,是维持云服务的高可用性的重中之重。当网络流量出现异常时,云网络运维人员的首要任务就是确定异常来网络的哪一侧。
30.为了达到此目的,云服务供应商首先在各地的因特网上部署大量主机设备,通过主机设备上的探测工具对云网络中的云服务器进行周期性探测。当因特网与云网络之间的流量出现异常时,运维人员可以通过分析各地探测工具获取到的探测结果,对异常位置进行判断。但这种方法不仅耗时耗力,而且有两个严重的缺陷:一方面是,大范围的部署大量主机设备,与云服务器之间进行通信,会为云网络带来沉重的负载,反而会干扰云服务器的正常运行;另一方面是,上述探测工具获取到的探测结果不能准确反映用户流量的实时状态。因此,本技术实施例提供了一种网络流量的状态确定方法,对于快速排查网络故障的具有重要意义。
31.在本技术实施例中,获取进入目标网络和流出目标网络的网络流量,并确定网络流量的特征数据;对网络流量进行分类,根据分类后的网络流量的特征数据,建立分类模型,并通过模型来确定进入目标网络和流出目标网络的待分类网络流量的状态。由于是直接获取到的进出目标网络的网络流量,无需与目标网络进行通信,来获取检测网络流量,从而不用与目标网络频繁的进行通信,减轻目标网络的负载压力。同时,由于获取到的是目标网络的网络流量,而不是通过与目标网络通信,获取的检测网络流量,从而更能真实的反应当前目标网络的网络流量情况,更加真实地反映出当前进出目标网络的网络流量状态。且在此基础上,由于通过建立分类模型进行网络流量分类,能够更加精准地确定出网络流量的状态。并能够通过网络流量的状态,为帮助进行异常排查作准备。
32.以下结合附图,详细说明本技术各实施例提供的技术方案。
33.图1a为本技术一示例性实施例提供的一种网络流量的状态确定系统的结构示意图。如图1a所示,该系统100a可以包括:第一设备101以及第二设备102。
34.其中,第一设备101可以是有一定计算能力的设备,可以实现向第二设备102发送数据的功能,并从第二设备102获取到响应数据。该数据可以以数据包的形式发送。第一设备101的基本结构可以包括:至少一个处理器。处理器的数量可以取决于具有一定计算能力装置的配置和类型。具有一定计算能力装置也可以包括存储器,该存储器可以为易失性的,例如ram,也可以为非易失性的,例如只读存储器(read-only memory,rom)、闪存等,或者也可以同时包括两种类型。存储器内通常存储有操作系统(operating system,os)、一个或多个应用程序,也可以存储有程序数据等。除了处理单元和存储器之外,具有一定计算能力装置还包括一些基本配置,例如网卡芯片、io总线、显示组件以及一些外围设备等。可选地,一些外围设备可以包括,例如键盘、输入笔等。其它外围设备在本领域中是众所周知的,在此
不做赘述。可选地,第一设备101可以为智能终端,例如,手机、台式电脑、笔记本、平板电脑等。
35.第二设备102是指可以在网络虚拟环境中提供计算处理服务的设备,可以是指利用网络进行数据处理以及确定网络流量的状态的设备。在物理实现上,第二设备102可以是任何能够提供计算服务,响应服务请求,并进行确定网络流量的状态的设备,例如可以是云服务器、云主机、虚拟中心、常规服务器等等。第二设备102的构成主要包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似。
36.需要说明的是,在第二设备102的数量可以为多个,如多个云服务器。且这些第二设备102都设置在一个网络中,如云网络中。每个第二设备102中可以设置有第四设备104,如网关,该网关可以是逻辑网关,也可以称为网关模块等,如云数据中心网关。
37.在本技术实施例中,第一设备101,通过网络103,发送数据至第二设备102。其中数据以数据包的形式发送。第二设备102中的云数据中心网关接收到该数据包,获取该数据包(如,获取该数据包的内容)。在获取到数据包后,将该数据包继续发送至第二设备102中用于处理该数据包的目标设备,如虚拟设备等。第二设备102中的云数据中心网关通过该数据包,获取进入目标网络的网络流量和流出目标网络(如,云网络)的网络流量,并确定网络流量的特征数据;对网络流量进行分类;根据分类后的网络流量的特征数据,建立分类模型;根据分类模型,确定进入目标网络的待分类网络流量的状态和流出目标网络的待分类网络流量的状态。
38.此外,第二设备102在处理完该数据包后,向第一设备101返回处理后的数据,该处理后的数据也可以以数据包的形式发送。此时,该数据包需要通过第二设备102中的云数据中心网关,流向第一设备101。第二设备102中的云数据中心网关接收到该向第一设备101发送的数据包时,获取该数据包(如,获取该数据包的内容),在获取完数据包后,在将该数据包发送至第一设备101。至此,第二设备102中的云数据中心网关获取到了进入该云网络的网络流量和流出该云网络的网络流量,从而可以建立分类模型,并根据分类模型对待分类网络流量进行分类。
39.此外,基于该系统100a,本技术一示例性实施例还提供的一种网络流量的状态确定系统的结构示意图。如图1b所示,该系统100b可以包括:第一设备101以及第四设备104’。此外,该系统100b还可以包括第二设备102。由于前文已经对第一设备101以及第二设备102进行了详细地介绍,此处不再赘述。仅说明:
40.该系统100b中的第四设备104’与上述系统100a中的第四设备稍有不同。其实现的功能是相同的。但是在本系统100b中,该第四设备104’是指具有一定计算能力的设备,其基本结构可以包括:至少一个处理器。处理器的数量可以取决于具有一定计算能力装置的配置和类型。具有一定计算能力装置也可以包括存储器,该存储器可以为易失性的,例如ram,也可以为非易失性的,例如只读存储器(read-only memory,rom)、闪存等,或者也可以同时包括两种类型。存储器内通常存储有操作系统(operating system,os)、一个或多个应用程序,也可以存储有程序数据等。除了处理单元和存储器之外,具有一定计算能力装置还包括一些基本配置,例如io总线等。第四设备104可以具体为网关,如云数据中心网关,可以是物理网关设备,与第二设备102连接。
41.在本技术实施例中,第一设备101,通过网络103,发送数据至第二设备102。其中数
据以数据包的形式发送。第四设备104’接收到该数据包,通过数据包采集器获取该数据包(如,获取该数据包的内容)。在获取到数据包后,第四设备104’将该数据包继续发送至对应第二设备102中,如云服务器1,以处理该数据包。第二设备102将对该数据包进行处理,并将处理后的数据返回至第一设备101,该处理后的数据也可以以数据包的形式发送。该数据包需要通过第四设备104’返回至第一设备101。由此,第四设备104’可以获取到进入目标网络的网络流量和流出目标网络(如,云网络)的网络流量,并确定网络流量的特征数据;对网络流量进行分类;根据分类后的网络流量的特征数据,建立分类模型;根据分类模型,确定进出目标网络的待分类网络流量的状态。
42.在本技术实施例的应用场景中,用户通过第一设备101,如电脑,向第二设备102,如云网络中的云服务器,发送数据,如用于获取一个电影视频的请求。用户可以通过第一设备101安装的浏览器发送数据。该数据可以以数据包的形式发送。该发送数据进入云网络后,首先需要进入到第四设备104或104’中(如,云数据中心网关)。以下简称为网关。该网关接收到该数据后,可以通过该其数据包采集器对接收到的数据包进行复制,复制后,该网关将数据包发送至对应云服务器。在这里该网关可以通过拦截功能拦截这些数据包,然后在撤销拦截即可。基于相似过程,该网关也可以获取到云服务器向用户电脑发送的数据包。由此,该网关可以获取到多个进出入该云网络的多个数据包,即网络流量。
43.该网关在获取到网络流量后,确定这些网络流量的特征数据。同时确定这些网络流量中的异常流量,即确定异常特征数据。还可以确定这些网络流量的来源,是来自云网络还是来自用户网络(用户网络可以是由其它网络运营商提供的网络),即对这些网络流量进行分类。之后,该网关根据分类后的网络流量的特征数据,来建立分类模型,该分类模型可以为随机森林模型。该模型可以建立为两层,第一层随机森林是用于确定网络流量是否异常。第二层随机森林是用于确定异常的网络流量的来源,如是来自云网络还是来自用户网络。建立完成分类模型后,可以从其它云服务器上获取到待分类网络流量,将其输入至分类模型中,确定该网络流量是否异常,如果异常,确定该异常来源。
44.需要说明的是,除了上述系统实现方式外,云数据中心网关还可以基于进入目标网络的网络流量建立单一模型,用于确定进入目标网络的待分类网络流量的状态,具体的建立过程与前文所述的建立过程相似,此处就不再赘述。
45.相似的,云数据中心网关还可以基于流出目标网络的网络流量建立单一模型,用于确定流出目标网络的待分类网络流量的状态,具体的建立过程与前文所述的建立过程相似,此处就不再赘述。
46.在上述本实施例中,第一设备101、第二设备102、以及第四设备104进行网络连接,该网络连接可以是无线连接。若第一设备101、第二设备102、以及第四设备104是通信连接,该移动网络的网络制式可以为2g(gsm)、2.5g(gprs)、3g(wcdma、td-scdma、cdma2000、utms)、4g(lte)、4g+(lte+)、wimax、5g等中的任意一种。
47.下面结合方法实施例,针对网络流量的状态确定过程进行详细说明。
48.图2为本技术一示例性实施例的一种网络流量的状态确定方法的流程示意图。本技术实施例提供的该方法200由计算设备执行,如,物理网关设备或服务器中的网关(无论是哪一种,以下均可以简称为网关)。该方法200包括以下步骤:
49.201:获取进入目标网络的网络流量和流出目标网络的网络流量,并确定网络流量
的特征数据。
50.202:对网络流量进行分类。
51.203:根据分类后的网络流量的特征数据,建立分类模型。
52.204:根据分类模型,确定进入目标网络的待分类网络流量的状态和流出目标网络的待分类网络流量的状态。
53.需要说明的是,对于服务器中的网关而言,由于网关依赖于服务器,是服务器中的逻辑网关,其执行主体也可以认为是服务器,更具体而言,可以是服务器中的网关。
54.以下针对上述步骤进行详细阐述:
55.201:获取进入目标网络的网络流量和流出目标网络的网络流量,并确定网络流量的特征数据。
56.其中,目标网络是可以指待测网络,例如云网络。
57.需要说明的是,对于待测网络而言,也可以是其它网络运营商提供的网络(也可以称为三方网络运营商提供的服务网络)。
58.网络流量是指在网络传输的数据量,这些数据量里包括多个的数据,这些数据可以以数据包的形式传输。
59.特征数据是指用于描述网络流量的数据,例如,源ip(internet protocol,网际互连协议)地址的数据、目的ip地址的数据、源端口号的数据、目的端口号的数据、出入目标网络的方向(如,出入云网络的方向)的数据、传输字节数的数据、传输包数的数据、syn(synchronize sequence numbers,同步序列编号)报文数的数据、ack(acknowledge character,确认字符)报文数的数据、重传报文数的数据、ttl(time to live,生存时间)的数据、rtt(round-trip time,往返时间)的数据等。需要说明的是,这些特征数据都是可以根据数据包中携带的数据,来确定的。
60.其中,获取进入目标网络的网络流量和流出目标网络的网络流量的方式,可以包括:接收进入目标网络的网络流量,并复制网络流量;接收流出目标网络的网络流量,并复制网络流量。
61.例如,根据前文所述,用户的电脑发送视频获取请求至云网络中的云服务器,该请求以数据包的形式发送。首先该数据包进入到云网络中,先经过网关,网关接收到该数据包后,通过数据包采集器对该数据进行复制。其中,网关可以通过拦截功能拦截该数据包,在复制完数据包后,撤销拦截,则数据包继续发往目标云服务器。
62.反之一样,云网络中的云服务器向用户的电脑发送数据时,在出去云网络之前,需要经过网关,可以是由网关通过拦截功能拦截到该数据所在的数据包。网关通过数据包采集器对该数据包进行复制,在复制后,再将该数据包发送至目标用户的电脑。应理解,网关是对进出目标网络的数据包进行复制,可以是对每个进出云网络的数据包进行复制,也可以是针对某个时间段内的进出云网络的数据包进行复制,可以根据需求而设定。这些获取到的数据包就形成了网络流量。
63.需要说明的是,这样的获取方式可以,无需和云网络中的云服务器进行频繁地网络连接,即使将数据包继续发往至目标云服务器也是基于用户侧与云服务器进行通信连接,而不需要额外的通信连接。所以不会给云服务器增加负重负担。大大降低了云服务器乃至云网络的负重压力。
64.此外,在网关处采集数据包,能够覆盖网络中所有的异常情况,更有利于区分异常类型。获得实时、准确的流量数据。
65.其中,确定网络流量的特征数据的方式,可以包括:根据网络地址,确定网络地址对应的网络流量;根据特征指标,从对应网络流量中确定对应的特征数值。
66.其中,网络地址是指ip地址,如源ip地址以及目的ip地址。应理解,对于不同方向的网络流量,同一个ip地址可以是源ip地址以及目的ip地址。
67.特征指标是指特征数据的类型,如源ip地址、目的ip地址、源端口号、目的端口号、出入云网络方向等等。特征数值则是该特征指标的数据值,如源ip地址
-“
xx.xx.xx.xx”。
68.例如,根据前文所述,网关在获取到大量数据包后,根据每个数据包内携带的数据,确定各个数据特征。通过统计这些大量数据包中各个ip地址对所对应的特征数据。如,源ip地址“xx.xx.xx.xx
”-
目的ip地址“yy.yy.yy.yy”,为一个地址对,确定该地址对所对应的:源端口号“aa”、目的端口号“bb”、出入云网络的方向“1(表示进入云网络方向,0可以表示流出云网络方向)”、这个地址对内的传输字节数“10000”字节(可以统计的是总数量)、传输包数“500个”(可以统计的是总数量)、syn报文数“200”个(可以统计的是总数量)、ack报文数“100”个(可以统计的是总数量)、重传报文数“500”个(可以统计的是总数量)、ttl“40000”(可以统计的是总数量)、rtt“20000”ms(可以统计的是总数量)等。应理解,上述举例仅为了示意。
69.需要说明的是,也可以通过单独统计各个源ip地址或目的ip地址,来确定不同源ip地址或不同目的ip地址对应的特征数据。但是通过统计ip地址对(也可以称为二元组)的特征数据,分类效果更好。
70.故,为了提高分类精度,可以将网络地址以上述网络地址对的形式,进行对应的特征数据的统计。
71.具体的,根据网络地址,确定网络地址对应的网络流量,可以包括:将源网络地址以及目的网络地址进行组合,生成至少一组地址对;根据地址对,确定每组地址对对应的网络流量。
72.需要说明的是,由于前文已经阐述过了该实施方式,此处就不再赘述。仅说明:在确定完地址对后,可以根据地址对来统计各个地址对所对应的数据包。从而可以根据统计到的数据包,来获取或确定出对应的数据特征。
73.此外,还应当理解的是,当确定出来地址对后,由于每个地址对中都会明确出来源ip地址以及目的ip地址,所以就可以确定出这个地址对的方向。例如,当源ip地址为用户侧的地址,那么其目的ip地址则是云网络侧的地址,那么该地址对的方向就是进入云网络的方向,反之亦然。
74.也可以不对地址对中网络地址标明其起源和目的,仅仅作为一组地址对,那么此时,这个地址对既可以包括源ip地址是a以及目的ip地址是b,也可以包括源ip地址是b以及目的ip地址是a。但是,标明起源和目的的地址对,更有利于对后续的分类模型的建立,提高分类模型的分类精度,能够分类出异常发生在目标网络的哪一侧,如用户网络侧还是云网络侧。
75.虽然,在地址对中可以标明出来源ip地址以及目的ip地址,其可以表明出来地址对的方向。但是,需要分析才可以知晓。为了更加明确出来地址对的方向,直接就可以知道
该地址对的方向,通过下述方式来实现:
76.具体的,该方法200还包括:确定网络流量进出目标网络的方向。
77.例如,根据前文所述,在每个地址对中通过方向标识,标出各个地址对的方向。例如进入云网络方向为1。流出云网络方向为0。以此,可以将方向设置为d,即d=1,即为该地址对中的特征数据是进入云网络方向的网络流量的特征数据。反之亦然。
78.由于每组地址对中可以有多条网络连接,即决定一条网络连接的因素除了网络地址以外,还有端口号,例如源端口号以及目的端口号。则为了更能够准确地表明一组地址对的特征,或者描述一组地址对,还需要将每组地址对中的端口号因素考虑进去:
79.具体的,该方法200还包括:确定每组地址对中至少一条网络连接;确定每条网络连接对应的网络流量。
80.其中,一条网络连接是指由源ip地址、目的ip地址、源端口号以及目的端口号确定的一条网络连接。
81.例如,根据前文所述,网关在获取到多个数据包后,根据源ip地址、目的ip地址、源端口号以及目的端口号,确定多条网络连接。而每条网络连接对应的源ip地址、目的ip地址、源端口号以及目的端口号即可以作为该网络连接的标识。然后确定在每条网络连接内传输的数据包。
82.在确定完在每条网络连接内传输的数据包后,就可以针对网络连接,确定网络连接的特征数据了,从而来作为所属地址对的特征数据。
83.而确定网络连接的特征数据可以通过下述方式实现:
84.根据特征指标,从对应网络流量中确定对应的特征数值,包括:获取预置特征指标,针对每个预置特征指标,从对应网络流量中确定对应的多个特征数值;其中,该方法200还包括:根据每个预置特征指标对应的多个特征数据,确定每个预置特征指标的基础统计值,基础统计值用于综合描述对应特征指标。
85.其中,基础统计值可以包括:每个指标的平均值、最大值、最小值、标准差、第10百分位数、中位数、第80百分位数等统计量。
86.此外,可以直接从网络流量对应的数据包中获取或确定多个特征数值。更具体的,可以是从包头信息中获取或确定多个特征数值。
87.例如,根据前文所述,网关在获取到多个数据包后,且确定了地址对后,获取到预置特征指标,如传输字节数、传输包数、syn报文数、ack报文数、重传报文数、rtt以及ttl。由于已经确定出来了地址对以及对应的网络连接,所以地址对以及网络连接所对应的网络地址以及端口号特征指标,此处可以忽略。如,对于源ip地址“xx.xx.xx.xx
”-
目的ip地址“yy.yy.yy.yy”,对应着多条网络连接。确定在该地址对中多条网络连接中多个数据包的传输字节数的平均值。数据包的总传输字节数/n(网络连接的数量)=传输字节数的平均值。依次类推,其它特征指标也是这样计算。从而就可以最终确定出来该地址对的特征指标的基础统计值,该确定方式更能体现地址对的特征数据,提高特征数据的优异性。
88.需要说明的是,对于特征指标ttl而言,其基础统计值可以是平均值、最大值、最小值。
89.针对前述地址对(不考虑端口号因素)而言,其特征数据的确定也是:获取预置特征指标,针对每个预置特征指标,从对应网络流量中确定对应的多个特征数值。此处就不再
赘述了。
90.由于,在获取网络流量时,为了能够获取到更多的异常网络流量,可以对获取到的网络流量进行筛选,选择出更多可能成为异常网络流量的流量。
91.具体的,该方法200还包括:将获取到的网络流量根据预定时间周期进行划分,生成至少一组网络流量;针对每组网络流量,确定每条网络连接的网络流量的特征数据;对每条网络连接的网络流量的特征数据进行过滤,对过滤后的特征数据,执行根据网络地址,确定网络地址对应的网络流量的步骤。
92.需要说明的是,此处的每条网络连接的网络流量的特征数据并不是指前述的基础统计值,而是前述的特征指标,如传输字节数、传输包数、syn报文数、ack报文数、重传报文数、rtt以及ttl等。
93.其中,过滤条件是用于过滤出有较高可能性成为异常网络流量的条件。
94.例如,根据前文所述,网关在获取数据包之前,可以设定为获取某个时间段内的数据包。如,xx日期上午9点-9点半的数据包。在时间到来时,触发网关获取该时间段内的数据包。获取到数据包,按照每150s来划分数据包。即第一个150s内的数据包为第一组,依次类推,得到多组数据包。如前所述,针对每组数据包,根据网络连接,来统计数据包,并确定每条网络连接的特征数据,如传输字节数(该网络连接的总数量)、传输包数(该网络连接的总数量)、syn报文数(该网络连接的总数量)、ack报文数(该网络连接的总数量)、重传报文数(该网络连接的总数量)、rtt(该网络连接的总数量)以及ttl(该网络连接的总数量)等。在得到特征数据后,网关根据过滤条件对每条网络连接对应的特征数据进行过滤,得到过滤后的每条网络连接对应的特征数据。根据上述实施方式,通过过滤后的特征数据,来确定出来该地址对的特征指标的基础统计值。
95.其中,对每条网络连接的网络流量的特征数据进行过滤,包括:基于网络连接疑似异常的过滤条件,对每条网络连接的网络流量的特征数据进行过滤,得到符合过滤条件的特征数据。
96.其中,过滤条件可以包括:最大连续传输syn报文数不小于2,或最大连续传输ack报文数不小于3,或最大连续重传报文数不小于5。也就是说,对于每条网络连接而言,可以过滤掉网络连接中最大连续传输syn报文数小于2的网络连接,或者可以过滤掉网络连接中最大连续传输ack报文数小于3的网络连接,或者可以过滤掉网络连接中最大连续重传报文数小于5的网络连接。以最大连续传输syn报文数不小于2为例,针对网络连接a而言,经统计可知,最大连续传输syn报文数为1。则过滤掉该网络连接a。
97.需要说明的是,通过上述实现方式,可以滤去大部分与异常无关的流量数据,只保留了少部分有异常高度相关的数据,相较于分析全量(所有)数据的方法,提高了分类的确定效率。
98.202:对网络流量进行分类。
99.其中,分类可以是指确定网络流量的类型,类型可以包括异常类型以及非异常类型(即无异常类型)。更具体的细化还可以为无异常类型、云网络侧异常类型、因特网侧异常类型(也可以称为用户网络侧异常类型或其它网络运营商提供的网络侧异常类型)。可以通过标签的形式来表明该网络流量的类型。
100.其中,对于更加细化的分类,还需要考虑到云网络和因特网的因素。于此,该方法
200还可以包括:根据网络地址指向的目的地,确定网络地址的对应网络服务提供方,以使根据确定的网络服务提供方,执行对网络流量进行分类的步骤。
101.其中,网络服务提供方为其它网络服务提供方(也可以称为三方网络运营商)和/或目标网络服务提供方(如,云网络提供方)。
102.例如,根据前文所述,网关可以根据ip地址所指向的目的地,确定提供方。如,单个ip地址时,若其属于源ip地址,且其所指向的目的是云网络,那么确定其提供方为所属的其它网络运营商。若其所指向的目的是用户网络侧,则确定其提供方为云网络提供方。反之亦然,即单个ip地址时,若其属于目的ip地址,确定出提供方。
103.此外,当ip地址对时,则可以直接根据源ip地址-目的ip地址,来确定出提供方,与上述方式相似,此处就不再赘述。
104.由此,就可以确定出各个特征数据所属的提供方,从而可以对网络流量所属的提供方进行分类(是否异常),并确定出发送异常的网络流量所属的提供方(即可以确定出异常发生在网络哪一侧),并在该提供方处进行异常排查。
105.需要说明的是,对于类型可以包括异常类型以及非异常类型(即无异常类型)而言,则可以不进行提供方分类,直接进行网络流量是否异常的分类,在分类之后,再根据分类结果,确定出异常的网络流量,根据该网络流量所携带的ip地址,如目的ip地址,来确定发生异常的网络提供方即可。
106.其中,对网络流量进行分类,包括:根据网络服务提供方,对网络流量进行分组;获取已知异常历史网络流量,确定已知异常历史网络流量的特征数据;根据已知异常历史网络流量的特征数据,对分组后的网络流量进行分类。
107.其中,已知异常历史网络流量是指历史时间段内,发生过的网络流量异常情况,并且确定出来了发生异常的网络流量以及发生异常的时间段。
108.在确定的已知异常历史网络流量以及发生异常的时间段,将该时间段以150s为周期进行划分,从而划分出每组150s内的已知异常历史网络流量。再根据前文所述,确定特征数据的方式,来确定已知异常历史网络流量的特征数据。此处就不再赘述。需要注意的是,已知异常历史网络流量的特征数据确定方式要与前述网络流量的特征数据的确定方式对应,才能更加准确地确定出最终的异常网络流量,提高已知异常历史网络流量的参考性。
109.在确定出已知异常历史网络流量的特征数据后,可以将该特征数据与网络流量的特征数据进行匹配,完全匹配上的,则认定该网络流量的特征数据为异常流量的特征数据,则该网络流量则为异常网络流量,从而对网络流量进行分类。
110.应理解的是,如果该网络流量的特征数据是单ip地址的特征数据,则匹配单ip地址的数据特征,若是ip地址对的特征数据,则匹配ip地址对的数据特征。当特征指标中包括出入云网络的方向的话,也要匹配这个特征指标的数据。当明确提供方出网络服务提供方的时候,也要匹配网络服务提供方,即在网络服务提供方相同的情况下,来进行匹配。自然的,已知异常历史网络流量也需要明确出网络服务提供方,以及出入云网络的方向。总之,网络流量的特征指标要与已知异常历史网络流量的特征指标对应,网络服务提供方也要对应。
111.还需要说明的是,在进行匹配前,还可以对网络流量进行分组,分组方式就是根据网络服务提供方的类型进行分组的,即同一个提供方的网络流量在一个组。分组以后,即明
确了各个网络流量的提供方,然后再去对网络流量分类。
112.上述确定已知异常历史网络流量的特征数据的方式,可以为:获取已知异常历史网络流量,确定已知异常历史网络流量的特征数据,包括:根据网络地址,确定网络地址对应的已知异常历史网络流量;根据特征指标,从对应已知异常历史网络流量中确定对应的特征数值。
113.由于前文已经阐述过了,此处就不再赘述。
114.另外,上述匹配的过程具体可以为:
115.根据已知异常历史网络流量的特征数据,对分组后的网络流量进行分类,包括:将已知异常历史网络流量的特征数据与分组后的网络流量的数据特征进行匹配;在匹配成功的情况下,根据已知异常历史网络流量的异常类型,确定分组后的网络流量的异常类型;在匹配不成功的情况下,直接确定分组后的网络流量为非异常类型。
116.由于前文已经阐述过该实现方式,此处就不再赘述。通过上述方式,确定出网络流量中的异常类型以及非异常类型(即正常类型)。此外,该分类后的网络流量都可以明确出来提供方(即可以确定出来异常发生在网络的哪一侧)。
117.为了更具体的定位到更具体的位置,还可以在考虑网络服务提供方的同时,进一步的考虑到提供方的具体因素,例如提供方的位置等。
118.具体的,该方法200还包括:在网络服务提供方为其它网络服务提供方,确定提供方标识以及其它网络中对应网络地址的地理位置;在网络服务提供方为目标网络服务提供方,确定目标网络中接收或发出历史网络流量的设备的地理位置以及提供同一网络地址的虚拟设备。
119.其中,其它网络服务提供方的标识可以为其它网络运营商的标识,如名称以及id等。其地理位置可以为城市地址,或者城市下城区地址等,可以根据需求进行调整。
120.目标网络中设备的地理位置可以是指具体的定位地址,例如该设备所属机房,乃至所属机房的机柜或机架等,从而可以根据该定位地址确定出该实体设备。目标网络中提供同一网络地址的虚拟设备可以是提供同一ip地址的多个虚拟机,这些多个虚拟机可以设置为同一产品,并可以分布在不同的实体设备上。
121.例如,根据前文所述,网关在确定了各个网络流量的网络服务提供方后,还可以进一步根据ip地址,确定出其在提供方更具体的信息。如,当网络流量属于其它网络运营商提供方(如,运营商a),则根据所属于其它网络运营商提供方的ip地址确定,该网络流量的归属地。当网络流量属于云网络,则确定属于云网络的ip地址,确定该ip地址对应的机房,以及该机房内对应的机柜,并确定属于该ip地址的多个虚拟机。本技术实施例中,通过对异常网络流量的特征数据进行筛选,并结合故障排查的历史记录,将因特网侧(即用户网络侧)异常特征数据的范围缩小至某省、某运营商的流量,同时将目标网络侧(如云网络侧)异常特征数据的范围缩小至某机房、某产品(如,同一个网络地址的虚拟设备)的流量。
122.203:根据分类后的网络流量的特征数据,建立分类模型。
123.其中,分类模型是用于对待分类网络流量进行分类,如是否异常,以及异常发生在网络哪一侧等。分类模型可以包括:随机森林、支持向量机以及逻辑回归等。以随机森林为例进行说明:
124.随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个别树输出的
类别的众数而定。决策树是一种基本的分类器,一般是将特征分为两类。构建好的决策树呈树形结构,具有可读性,分类速度快的特点。
125.例如,根据前文所述,网关得到分类后的网络流量,将分类后的网络流量的特征数据作为训练样本,训练随机森林。该随机森林可以是用于确定待分类网络流量是否异常。进一步还可以训练随机森林,除了可以用于确定待分类网络流量是否异常以外,还可以确定待分类网络流量的异常类型是在网络的哪一侧(如,用户网络侧或云网络侧等)。
126.由于随机森林的训练过程属于现有技术,此处就不再赘述。仅说明:在训练随机森林的时候,可以根据需求创建至少一层随机森林。在确定网络流量是否异常的话,可以创建一层随机森林:
127.具体的,根据分类后的网络流量的特征数据,建立分类模型,包括:根据分类后的网络流量的特征数据,建立第一层分类模型,第一层分类模型由多个分类器组成,用于确定网络流量是否存在异常。
128.例如,根据前文所述,网关可以根据网络流量中地址对的特征数据来创建第一层分类模型,该特征数据可以没有明确出来所属的网络侧,即网络服务提供方,但是明确了各个网络流量的类型,如异常类型以及非异常类型,从而建立第一个随机森林。建立过程就不再赘述。建立好该随机森林后就可以对其它网络流量进行分类,确定其它网络流量是否异常。
129.为了更加精准地确定网络流量是否异常,在训练第一层随机森林时,还可以采取以下方式:
130.具体的,根据分类后的网络流量的特征数据,建立第一层分类模型,包括:将特征数据划分为多份;根据划分后的多份特征数据来训练多个分类器。
131.例如,根据前文所述,网关可以将所有的地址对的特征数据划分成10分,并未每一份特征数据进行标号,按照标号从小到大的顺序进行排列。根据这10份特征数据,来建立10个随机森林,这10个随机森林组成第一层随机森林。在建立第一个随机森林时,可以去掉10份特征数据中第一份数据,根据剩下9份特征数据建立第一个随机森林。建立第二个随机森林时,可以去掉10份特征数据中第二份数据,根据剩下9份特征数据建立第一个随机森林。依次类推,建立10个随机森林。使得第一层随机森林的分类效果更精准。应理解,第一层随机森林中随机森林的个数可以根据需求来调整。
132.在确定待分类网络流量的异常类型是在网络的哪一侧,可以创建两层随机森林,在上述创建第一层随机森林的基础上创建第二层随机森林:
133.具体的,该方法200还包括:从分类后的网络流量中选择具有异常类型的网络流量;根据具有异常类型的网络流量,建立第二层分类模型,第二层分类模型用于确定网络流量的异常类型。
134.例如,根据前文所述,网关从网络流量中选择出属于异常类型的地址对的特征数据,且该异常类型的地址对表明有所属的网提供方(如,其它网络服务提供方或云网络提供方)。基于异常类型的地址对的特征数据,来创建第二层随机森林,即第二个随机森林。该随机森林用于确定异常流量所属的提供方。具体的训练过程属于现有技术,此处就不再过多赘述。
135.204:根据分类模型,确定进入目标网络的待分类网络流量的状态和流出目标网络
的待分类网络流量的状态。
136.其中,网络流量的状态是指网络流量是否异常,如果异常,确定异常发生在网络哪一侧。
137.例如,根据前文所述,网关在确定出来分类模型后,对于想要进行分类的网络流量进行获取,获取到的网络流量作为待分类网络流量,并将该待分类网络流量发送至网关,网关根据前述方式确定该待分类网络流量的特征数据(与创建分类模型的特征数据对应),并将该待分类网络流量的特征数据输入至分类模型中,分类模型输出该待分类网络流量的类型,例如,是否异常,以及异常发生在网络哪一侧。
138.其中,为了更加精准地以及有目标地对网络流量进行分类,可以对疑似异常的网络流量进行分类,具体如下:
139.根据分类模型,确定进入目标网络的待分类网络流量的状态和流出目标网络的待分类网络流量的状态,包括:确定进入目标网络的疑似异常网络流量和流出目标网络的疑似异常网络流量,并作为待分类网络流量;将疑似异常网络流量输入至分类模型中,确定疑似异常网络流量中的异常网络流量以及异常网络流量的异常类型。
140.其中,疑似异常网络流量的确定方式可以为:获取到用户发送的异常信息,该异常信息表明当前目标网络存在异常。当异常信息的数量在一定时间内达到阈值,则确定该一定时间内的网络流量属于疑似异常网络流量。或
141.对网络流量进行监测,当监测到某段时间内,网路流量存在异常,则确定该段时间内的网络流量为疑似异常网络流量。
142.以此为基础,可以由监测服务器获取到疑似异常网络流量后,可以发送至网关,如图3所示,网关根据前述方式确定该疑似异常网络流量的特征数据(与创建分类模型的特征数据对应),并将该疑似异常网络流量的特征数据输入至分类模型中,分类模型的第一层随机森林确定疑似异常网络流量是否真的异常,当第一层随机森林输出异常网络流量,或者对疑似异常网络流量进行异常分类后,分类模型将异常网络流量的特征数据输入至第二层随机森林,确定该异常网络流量所属的网络服务提供方(即异常发生在网络哪一侧),是属于云网络侧还是属于用户网络侧(即因特网侧),即其它网络运营商侧。从而最终分类模型可以输出疑似异常网络流量中正常网络流量、异常网络流量以及异常发生的网络侧等。根据需求,还可以通过第二层随机森林确定出异常发生在用户网络侧时,其归属地;或者异常发生在云网络侧时,其所属机房乃至机架、以及对应的虚拟机。
143.需要说明的是,若被分类为云网络侧的异常特征数据(即异常网络流量)在所有异常特征数据中的占比不低于70%,则确定为云网络侧发生异常;若被分类为因特网侧(即用户网络侧)的异常特征数据在所有异常数据中的占比不低于70%,则确定为因特网侧(即用户网络侧)发生异常。其中,该占比可以根据场景以及需求进行调整。
144.使用两份数据来评估本技术实施例的有效性。第一份数据采集于一次因特网故障期间,第二份数据采集于一次云网络故障期间。两份数据的分类结果如表1所示。结果表明,尽管正常网络流量占绝大多数,但分类模型还是能有效鉴别因特网侧的异常网络流量和云网络侧的异常网络流量,因此本技术实施例能准确确定出异常位于因特网侧还是云网络侧。
145.表1
[0146][0147]
基于上述相同的发明构思,图4示出了本技术另一示例性实施例提供的一种网络异常的确定方法的流程示意图。本技术实施例提供的该方法400由上述网关执行,如,物理网关设备或服务器中的网关,该方法400包括以下步骤:
[0148]
401:获取进入目标网络的网络流量和流出目标网络的网络流量,并确定网络流量的特征数据。
[0149]
402:对网络流量进行分类。
[0150]
403:根据分类后的网络流量的特征数据,建立分类模型。
[0151]
404:根据分类模型,确定进入目标网络的待分类网络流量的状态和流出目标网络的待分类网络流量的状态;
[0152]
405:根据状态,进行异常排查。
[0153]
由于前文已经详细阐述过步骤401-404的具体实施方式,此处就不再赘述。仅说明,步骤405中,根据状态,进行异常排查。
[0154]
其中,根据状态,进行异常排查,包括:当状态为其它网络服务异常状态的情况下,则通知对应其它网络服务,以使其它网络服务进行异常排查;当状态为目标网络服务异常状态的情况下,则确定发生异常的设备。
[0155]
由于前文已经阐述过此处,就不再赘述。
[0156]
其中,确定发生异常的设备,包括:确定异常的网络地址,根据异常的网络地址,确定设备的地理位置,从而定位到对应设备;和/或,根据异常的网络地址,确定提供同一网络地址的虚拟设备。
[0157]
由于前文已经阐述过此处,就不再赘述。
[0158]
基于此,就可以排查到具体的问题。还需要说明的是,当异常发生在目标网络侧时,可以根据确定到的设备以及虚拟设备,来进行设备排查,找到对应的问题,就行维护,使得网络流量正常。
[0159]
当异常发生在用户网络侧时,确定对应的其它网络运营商以及其归属地,并通知其归属地的其它网络运营商,进行网络排查。
[0160]
另,本方法400未能详细描述的内容,还可以参照上述方法200中的各个步骤。
[0161]
图5为本技术一示例性实施例提供的一种网络流量的状态确定装置的结构框架示意图。该装置500可以应用于上述网关,如,物理网关设备或服务器中的网关。该装置500包括获取模块501、分类模块502、建立模块503以及确定模块504;以下针对各个模块的功能进行详细的阐述:
[0162]
获取模块501,用于获取进入目标网络的网络流量和流出目标网络的网络流量,并确定网络流量的特征数据。
[0163]
分类模块502,用于对网络流量进行分类。
[0164]
建立模块503,用于根据分类后的网络流量的特征数据,建立分类模型。
[0165]
确定模块504,用于根据分类模型,确定进入目标网络的待分类网络流量的状态和流出目标网络的待分类网络流量的状态。
[0166]
其中,获取模块501,包括:复制单元,用于接收进入目标网络的网络流量,并复制网络流量;接收流出目标网络的网络流量,并复制网络流量。
[0167]
具体的,获取模块501包括:第一确定单元,用于根据网络地址,确定网络地址对应的网络流量;根据特征指标,从对应网络流量中确定对应的特征数值。
[0168]
另,确定模块504,还用于:根据网络地址指向的目的地,确定网络地址的对应网络服务提供方,以使根据确定的网络服务提供方,执行对网络流量进行分类的步骤。
[0169]
其中,第一确定单元,用于将源网络地址以及目的网络地址进行组合,生成至少一组地址对;根据地址对,确定每组地址对对应的网络流量。
[0170]
另,确定模块504,还用于:确定每组地址对中至少一条网络连接;确定每条网络连接对应的网络流量。
[0171]
另,确定模块504,还用于:确定网络流量进出目标网络的方向。
[0172]
另,该装置500还包括:划分模块,用于将获取到的网络流量根据预定时间周期进行划分,生成至少一组网络流量;确定模块504,用于针对每组网络流量,确定每条网络连接的网络流量的特征数据;过滤模块,用于对每条网络连接的网络流量的特征数据进行过滤,对过滤后的特征数据,执行根据网络地址,确定网络地址对应的网络流量的步骤。
[0173]
其中,过滤模块,具体用于:基于网络连接疑似异常的过滤条件,对每条网络连接的网络流量的特征数据进行过滤,得到符合过滤条件的特征数据。
[0174]
其中,第一确定单元,用于获取预置特征指标,针对每个预置特征指标,从对应网络流量中确定对应的多个特征数值;确定模块504,还用于:根据每个预置特征指标对应的多个特征数据,确定每个预置特征指标的基础统计值,基础统计值用于综合描述对应特征指标。
[0175]
其中,分类模块502,包括:分组单元,用于根据网络服务提供方,对网络流量进行分组;获取单元,用于获取已知异常历史网络流量,确定已知异常历史网络流量的特征数据;分类单元,用于根据已知异常历史网络流量的特征数据,对分组后的网络流量进行分类。
[0176]
其中,获取单元,用于根据网络地址,确定网络地址对应的已知异常历史网络流量;根据特征指标,从对应已知异常历史网络流量中确定对应的特征数值。
[0177]
其中,分类单元,用于将已知异常历史网络流量的特征数据与分组后的网络流量的数据特征进行匹配;在匹配成功的情况下,根据已知异常历史网络流量的异常类型,确定分组后的网络流量的异常类型;在匹配不成功的情况下,直接确定分组后的网络流量为非异常类型。
[0178]
具体的,建立模块503,具体用于,根据分类后的网络流量的特征数据,建立第一层分类模型,第一层分类模型由多个分类器组成,用于确定网络流量是否存在异常。
[0179]
另,建立模块503,还用于:从分类后的网络流量中选择具有异常类型的网络流量;根据具有异常类型的网络流量,建立第二层分类模型,第二层分类模型用于确定网络流量的异常类型。
[0180]
另,建立模块503包括:划分单元,用于将特征数据划分为多份;训练单元,用于根
据划分后的多份特征数据来训练多个分类器。
[0181]
其中,确定模块504,包括:第二确定单元,用于确定进入目标网络的疑似异常网络流量和流出目标网络的疑似异常网络流量,并作为待分类网络流量;输入单元,用于将疑似异常网络流量输入至分类模型中,确定疑似异常网络流量中的异常网络流量以及异常网络流量的异常类型。
[0182]
其中,网络服务提供方为其它网络服务提供方和/或目标网络服务提供方;确定模块504,还可以用于:在网络服务提供方为其它网络服务提供方,确定提供方标识以及其它网络中对应网络地址的地理位置;在网络服务提供方为目标网络服务提供方,确定目标网络中接收或发出历史网络流量的设备的地理位置以及提供同一网络地址的虚拟设备。
[0183]
图6示出了本技术又一示例性实施例提供的一种网络异常的确定装置的结构框架示意图。该装置600可以应用于上述网关,如,物理网关设备或服务器中的网关。该装置600包括:获取模块601、分类模块602、建立模块603、确定模块604以及排查模块605,以下针对各个模块的功能进行详细的阐述:
[0184]
获取模块601,用于获取进入目标网络的网络流量和流出目标网络的网络流量,并确定网络流量的特征数据。
[0185]
分类模块602,用于对网络流量进行分类。
[0186]
建立模块603,用于根据分类后的网络流量的特征数据,建立分类模型。
[0187]
确定模块604,用于根据分类模型,确定进入目标网络的待分类网络流量的状态和流出目标网络的待分类网络流量的状态;
[0188]
排查模块605,用于根据状态,进行异常排查。
[0189]
其中,排查模块605,包括:通知单元,用于当状态为其它网络服务异常状态的情况下,则通知对应其它网络服务,以使其它网络服务进行异常排查;确定单元,用于当状态为目标网络服务异常状态的情况下,则确定发生异常的设备。
[0190]
其中,确定单元,用于确定异常的网络地址,根据异常的网络地址,确定设备的地理位置,从而定位到对应设备;和/或,根据异常的网络地址,确定提供同一网络地址的虚拟设备。
[0191]
需要说明的是,对于装置600未能提及的部分内容,可以参照上述装置500的内容。
[0192]
以上描述了图5所示的装置500的内部功能和结构,在一个可能的设计中,图5所示的装置500的结构可实现为计算设备,如,物理网关设备或服务器。如图7所示,该设备700可以包括:存储器701以及处理器702;
[0193]
存储器701,用于存储计算机程序。
[0194]
处理器702,用于执行计算机程序,以用于:获取进入目标网络的网络流量和流出目标网络的网络流量,并确定网络流量的特征数据;对网络流量进行分类;根据分类后的网络流量的特征数据,建立分类模型,根据分类模型,确定进入目标网络的待分类网络流量的状态和流出目标网络的待分类网络流量的状态。
[0195]
其中,处理器702,具体用于:接收进入目标网络的网络流量,并复制网络流量;接收流出目标网络的网络流量,并复制网络流量。
[0196]
具体的,处理器702,具体用于:根据网络地址,确定网络地址对应的网络流量;根据特征指标,从对应网络流量中确定对应的特征数值。
[0197]
另,处理器702,还用于:根据网络地址指向的目的地,确定网络地址的对应网络服务提供方,以使根据确定的网络服务提供方,执行对网络流量进行分类的步骤。
[0198]
其中,处理器702,具体用于:将源网络地址以及目的网络地址进行组合,生成至少一组地址对;根据地址对,确定每组地址对对应的网络流量。
[0199]
另,处理器702,还用于:确定每组地址对中至少一条网络连接;确定每条网络连接对应的网络流量。
[0200]
另,处理器702,还用于:确定网络流量进出目标网络的方向。
[0201]
另,处理器702,还用于:将获取到的网络流量根据预定时间周期进行划分,生成至少一组网络流量;针对每组网络流量,确定每条网络连接的网络流量的特征数据;对每条网络连接的网络流量的特征数据进行过滤,对过滤后的特征数据,执行根据网络地址,确定网络地址对应的网络流量的步骤。
[0202]
其中,处理器702,具体用于:基于网络连接疑似异常的过滤条件,对每条网络连接的网络流量的特征数据进行过滤,得到符合过滤条件的特征数据。
[0203]
其中,处理器702,具体用于:获取预置特征指标,针对每个预置特征指标,从对应网络流量中确定对应的多个特征数值;处理器702,还用于:根据每个预置特征指标对应的多个特征数据,确定每个预置特征指标的基础统计值,基础统计值用于综合描述对应特征指标。
[0204]
其中,处理器702,具体用于:根据网络服务提供方,对网络流量进行分组;获取已知异常历史网络流量,确定已知异常历史网络流量的特征数据;根据已知异常历史网络流量的特征数据,对分组后的网络流量进行分类。
[0205]
其中,处理器702,具体用于:根据网络地址,确定网络地址对应的已知异常历史网络流量;根据特征指标,从对应已知异常历史网络流量中确定对应的特征数值。
[0206]
其中,处理器702,具体用于:将已知异常历史网络流量的特征数据与分组后的网络流量的数据特征进行匹配;在匹配成功的情况下,根据已知异常历史网络流量的异常类型,确定分组后的网络流量的异常类型;在匹配不成功的情况下,直接确定分组后的网络流量为非异常类型。
[0207]
具体的,处理器702,具体用于:根据分类后的网络流量的特征数据,建立第一层分类模型,第一层分类模型由多个分类器组成,用于确定网络流量是否存在异常。
[0208]
另,处理器702,还用于:从分类后的网络流量中选择具有异常类型的网络流量;根据具有异常类型的网络流量,建立第二层分类模型,第二层分类模型用于确定网络流量的异常类型。
[0209]
另,处理器702,具体用于:将特征数据划分为多份;训练单元,用于根据划分后的多份特征数据来训练多个分类器。
[0210]
其中,处理器702,具体用于:确定进入目标网络的疑似异常网络流量和流出目标网络的疑似异常网络流量,并作为待分类网络流量;将疑似异常网络流量输入至分类模型中,确定疑似异常网络流量中的异常网络流量以及异常网络流量的异常类型。
[0211]
其中,网络服务提供方为其它网络服务提供方和/或目标网络服务提供方;处理器702,还可以用于:在网络服务提供方为其它网络服务提供方,确定提供方标识以及其它网络中对应网络地址的地理位置;在网络服务提供方为目标网络服务提供方,确定目标网络
中接收或发出历史网络流量的设备的地理位置以及提供同一网络地址的虚拟设备。
[0212]
另外,本发明实施例提供了一种计算机存储介质,计算机程序被一个或多个处理器执行时,致使一个或多个处理器实现图2方法实施例中一种网络流量的状态确定方法的步骤。
[0213]
以上描述了图6所示的装置600的内部功能和结构,在一个可能的设计中,图6所示的装置600的结构可实现为计算设备,如,物理网关设备或服务器中。如图8所示,该设备800可以包括:存储器801以及处理器802;
[0214]
存储器801,用于存储计算机程序;
[0215]
处理器802,用于执行计算机程序,以用于:获取进入目标网络的网络流量和流出目标网络的网络流量,并确定网络流量的特征数据;对网络流量进行分类;根据分类后的网络流量的特征数据,建立分类模型,根据分类模型,确定进入目标网络的待分类网络流量的状态和流出目标网络的待分类网络流量的状态;根据状态,进行异常排查。
[0216]
其中,处理器802,具体用于:当状态为其它网络服务异常状态的情况下,则通知对应其它网络服务,以使其它网络服务进行异常排查;当状态为目标网络服务异常状态的情况下,则确定发生异常的设备。
[0217]
其中,处理器802,具体用于:确定异常的网络地址,根据异常的网络地址,确定设备的地理位置,从而定位到对应设备;和/或,根据异常的网络地址,确定提供同一网络地址的虚拟设备。
[0218]
需要说明的是,对于该设备800未能提及的部分内容,可以参照上述设备700的内容。
[0219]
另外,本发明实施例提供了一种计算机存储介质,计算机程序被一个或多个处理器执行时,致使一个或多个处理器实现图4方法实施例中一种网络异常的确定方法的步骤。
[0220]
基于上述相似的发明构思,图9示出了本技术另一示例性实施例提供的一种网络流量的状态确定方法的流程示意图。本技术实施例提供的该方法900由上述网关执行,如,物理网关设备或服务器中的网关,该方法900包括以下步骤:
[0221]
901:获取进入目标网络的第一网络流量,并确定第一网络流量的特征数据。
[0222]
902:对第一网络流量进行分类。
[0223]
903:根据分类后的第一网络流量的特征数据,建立第一分类模型。
[0224]
904:根据第一分类模型,确定进入目标网络的待分类网络流量的状态。
[0225]
由于前文已经详细阐述过步骤901-904的具体实施方式,此处就不再赘述。仅说明,对于本方法900而言,是针对进入目标网络的第一网络流量(即前文所述的进入目标网络的网络流量),构建的第一分类模型,该第一分类模型可以是指前文所述的分类模型,可以包括:随机森林、支持向量机以及逻辑回归等。且步骤903中与前文所述构建分类模型的方式相似。
[0226]
由于是基于进入目标网络的网络流量,所以该网络流量的方向已经确定好了,是指向目标网络的。所以在前文所述中涉及到方向性的数据处理,在本方法900中就无需进行处理了。此外,由于是针对进入目标网络而言,那么无需将第一网络流量分类为云网络侧异常类型、因特网侧异常类型等,可以直接分类为异常类型以及非异常类型(即无异常类型)。且对于流出目标网络的网络流量的数据处理,在本方法900中也可以忽略。
[0227]
此外,该方法900还包括:获取流出目标网络的第二网络流量,并确定第二网络流量的特征数据;对第二网络流量进行分类;根据分类后的第二网络流量的特征数据,建立第二分类模型;根据第二分类模型,确定流出目标网络的待分类网络流量的状态。
[0228]
由于前文已经详细阐述过,此处就不再赘述,仅说明,基于第二网络流量(即前文所述的流出目标网络的网络流量)。与前述第一网络流量相似,对于第二网络流量而言,构建的第二分类模型,该第二分类模型可以是指前文所述的分类模型,可以包括:随机森林、支持向量机以及逻辑回归等。
[0229]
且该第二网络流量也具有方向性,所以在前文所述中涉及到方向性的数据处理,在此处就无需进行处理了。也无需将第二网络流量分类为云网络侧异常类型、因特网侧异常类型等,可以直接分类为异常类型以及非异常类型(即无异常类型)。且对于进入目标网络的网络流量的数据处理,在此处也可以忽略。
[0230]
具体的,对第一网络流量进行分类,包括:获取已知异常历史第一网络流量,确定已知异常历史第一网络流量的特征数据;根据已知异常历史第一网络流量的特征数据,对获取到第一网络流量进行分类。
[0231]
由于前文已经阐述过了,此处就不再赘述。仅说明,由于第一网络流量具有方向性,则对于第一网络流量而言,无需进行网络服务提供方的分组。
[0232]
具体的,对第二网络流量进行分类,包括:获取已知异常历史第二网络流量,确定已知异常历史第二网络流量的特征数据;根据已知异常历史第二网络流量的特征数据,对获取到的第二网络流量进行分类。
[0233]
由于前文已经阐述过了,此处就不再赘述。仅说明,由于第二网络流量具有方向性,则对于第二网络流量而言,无需进行网络服务提供方的分组。
[0234]
具体的,根据分类后的第一网络流量的特征数据,建立第一分类模型,包括:根据分类后的第一网络流量的特征数据,建立第一分类模型,第一分类模型由多个分类器组成,用于确定第一网络流量是否存在异常。
[0235]
由于前文已经阐述过了,此处就不再赘述。仅说明,由于第一网络流量具有方向性,则对于第一网络流量而言,建立的分类模型是用于确定是否存在异常的。可以通过该第一分类模型确定出是否是第一网络流量所指向的网络服务提供方异常。如果不是,还可以通过下述第二分类模型进行分类。
[0236]
具体的,根据分类后的第二网络流量的特征数据,建立第二分类模型,包括:根据分类后的第二网络流量的特征数据,建立第二分类模型,第二分类模型由多个分类器组成,用于确定第二网络流量是否存在异常。
[0237]
由于前文已经阐述过了,此处就不再赘述。仅说明,由于第二网络流量具有方向性,则对于第二网络流量而言,建立的分类模型是用于确定是否存在异常的。可以通过该第二分类模型确定出是否是第二网络流量所指向的网络服务提供方异常。
[0238]
需要说明的是,对于本方法900而言,也可以先针对流出目标网络的网络流量,建立分类模型,进行确定流出目标网络的网络流量所指向的网络服务提供方是否异常。
[0239]
再基于进入目标网络的网络流量建立分类模型。在流出目标网络的网络流量所指向的网络服务提供方非异常的情况下,则进行确定进入目标网络的网络流量所指向的网络服务提供方是否异常。由于前文已经阐述过具体的过程,此处就不再赘述。
[0240]
另,本方法900未能详细描述的内容,还可以参照上述方法200中的各个步骤。
[0241]
图10示出了本技术又一示例性实施例提供的一种网络流量的状态确定装置的结构框架示意图。该装置1000可以应用于上述网关,如,物理网关设备或服务器中的网关。该装置1000包括:获取模块1001、分类模块1002、建立模块1003以及确定模块1004,以下针对各个模块的功能进行详细的阐述:
[0242]
获取模块1001,用于获取进入目标网络的第一网络流量,并确定第一网络流量的特征数据。
[0243]
分类模块1002,用于对第一网络流量进行分类。
[0244]
建立模块1003,用于根据分类后的第一网络流量的特征数据,建立第一分类模型。
[0245]
确定模块1004,用于根据第一分类模型,确定进入目标网络的待分类网络流量的状态。
[0246]
此外,获取模块1001,还用于:获取流出目标网络的第二网络流量,并确定第二网络流量的特征数据。
[0247]
分类模块1002,还用于对第二网络流量进行分类。
[0248]
建立模块1003,还用于根据分类后的第二网络流量的特征数据,建立第二分类模型。
[0249]
确定模块1004,还用于根据第二分类模型,确定流出目标网络的待分类网络流量的状态。
[0250]
具体的,分类模块1002,包括:获取单元,用于获取已知异常历史第一网络流量,确定已知异常历史第一网络流量的特征数据;分类单元,用于根据已知异常历史第一网络流量的特征数据,对获取到第一网络流量进行分类。
[0251]
此外,获取单元,还用于获取已知异常历史第二网络流量,确定已知异常历史第二网络流量的特征数据;分类单元,还用于根据已知异常历史第二网络流量的特征数据,对获取到的第二网络流量进行分类。
[0252]
具体的,建立模块1003,具体用于:根据分类后的第一网络流量的特征数据,建立第一分类模型,第一分类模型由多个分类器组成,用于确定第一网络流量是否存在异常。
[0253]
具体的,建立模块1003,具体用于:根据分类后的第二网络流量的特征数据,建立第二分类模型,第二分类模型由多个分类器组成,用于确定第二网络流量是否存在异常。
[0254]
需要说明的是,对于装置1000未能提及的部分内容,可以参照上述装置500的内容。
[0255]
以上描述了图10所示的装置1000的内部功能和结构,在一个可能的设计中,图10所示的装置1000的结构可实现为计算设备,如,物理网关设备或服务器。如图11所示,该设备1100可以包括:存储器1101以及处理器1102;
[0256]
存储器1101,用于存储计算机程序。
[0257]
处理器1102,用于执行计算机程序,以用于:获取进入目标网络的第一网络流量,并确定第一网络流量的特征数据;对第一网络流量进行分类;根据分类后的第一网络流量的特征数据,建立第一分类模型;根据第一分类模型,确定进入目标网络的待分类网络流量的状态。
[0258]
此外,处理器1102,还用于:获取流出目标网络的第二网络流量,并确定第二网络
流量的特征数据;对第二网络流量进行分类;根据分类后的第二网络流量的特征数据,建立第二分类模型;根据第二分类模型,确定流出目标网络的待分类网络流量的状态。
[0259]
具体的,处理器1102,具体用于:获取已知异常历史第一网络流量,确定已知异常历史第一网络流量的特征数据;根据已知异常历史第一网络流量的特征数据,对获取到第一网络流量进行分类。
[0260]
具体的,处理器1102,具体用于:获取已知异常历史第二网络流量,确定已知异常历史第二网络流量的特征数据;根据已知异常历史第二网络流量的特征数据,对获取到的第二网络流量进行分类。
[0261]
具体的,处理器1102,具体用于:根据分类后的第一网络流量的特征数据,建立第一分类模型,第一分类模型由多个分类器组成,用于确定第一网络流量是否存在异常。
[0262]
具体的,处理器1102,具体用于:根据分类后的第二网络流量的特征数据,建立第二分类模型,第二分类模型由多个分类器组成,用于确定第二网络流量是否存在异常。
[0263]
需要说明的是,对于该设备1100未能提及的部分内容,可以参照上述设备700的内容。
[0264]
另外,本发明实施例提供了一种计算机存储介质,计算机程序被一个或多个处理器执行时,致使一个或多个处理器实现图9方法实施例中一种网络流量的状态确定方法的步骤。
[0265]
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如201、202、203等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
[0266]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0267]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0268]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程多媒体数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程多媒体数据处理设备的处理器执行的指
令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0269]
这些计算机程序指令也可存储在能引导计算机或其他可编程多媒体数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0270]
这些计算机程序指令也可装载到计算机或其他可编程多媒体数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0271]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0272]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0273]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0274]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1