用于使用dns数据识别与ip流相关的应用的方法和装置制造方法

文档序号:7791894阅读:209来源:国知局
用于使用dns数据识别与ip流相关的应用的方法和装置制造方法
【专利摘要】一种在通信网络中处理与在多个移动设备和网元之间传送的IP流相关的应用数据的方法,该方法包括:在网元,接收要被发送到所述多个移动设备中的一个或多个移动设备的一个或多个域名系统(DNS)数据包;以及在所述网元,根据在所述网元接收到的所述一个或多个DNS数据包内的映射信息,建立将一个或多个IP地址分别映射到相应的应用信息的映射表。
【专利说明】用于使用DNS数据识别与IP流相关的应用的方法和装置

【技术领域】
[0001] 示例实施例普遍涉及在通信网络中识别与IP流相关的应用。

【背景技术】
[0002] 互联网IP流量可被监控,以便找出特定IP流携带的应用的类型。该应用信息可 被无线和有线的服务提供商用于市场调研、流量监管、以及通用网络智能。企业网络可将该 应用信息用于其策略实施和流量感知。目前,确定与IP流相关的应用的方法包括分析IP 地址和/或子网、端口以及协议;以及通过寻找IP流量中与应用的已知字符串匹配的签名 字符串,来执行深度包检测(Deep Packet Inspection, DPI)。


【发明内容】

[0003] -种在通信网络中处理与在多个移动设备和网元之间传送的IP流相关的应用数 据的方法,可包括,在网元接收要被发送到所述多个移动设备中的一个或多个移动设备的 一个或多个域名系统(DNS,Domain Name System)数据包;以及在网元根据在该网元接收到 的所述一个或多个DNS数据包内的映射信息,建立将一个或多个IP地址分别映射到相应的 应用信息的映射表。
[0004] 所述应用信息可为从在所述网元接收到的所述一个或多个DNS数据包中读取的 至少一个主机名,以及与所读取到的主机名相对应的应用名称。
[0005] 所述接收到的DNS数据包可为DNS响应数据包,且建立所述映射表可包括从在网 元接收到的所述一个或多个DNS数据包中读取所述一个或多个IP地址,以及对应于所述一 个或多个IP地址的一个或多个主机名。
[0006] 该方法可进一步包括在网元接收要被发送到或者来自所述多个移动设备中的移 动设备的IP数据包;以及通过根据所述IP数据包搜索所述映射表,来识别与所述接收到的 IP数据包相关的应用信息。
[0007] 搜索所述映射表可包括选择所述映射表中的、与所述映射表中的发送方IP地址 相对应的应用数据,作为被识别的应用信息,如果所述接收到的IP数据包为要被发送到所 述多个移动设备中的一个的数据包,所述发送方IP地址为所述接收到的IP数据包的发送 方IP地址。搜索所述映射表可包括选择所述映射表中与目的IP地址相对应的应用信息, 作为被识别的应用信息,如果所述接收到的IP数据包为从所述多个移动设备中的一个中 被发送的数据包,所述目的IP地址为所述接收到的IP数据包的目的IP地址。
[0008] 该方法可进一步包括,在所述网元,识别所述网元接收到的IP数据包需要被发送 到的或者来自的、所述一个或多个移动设备中的移动设备;建立具有与所述多个移动设备 中的每个相对应的段(section)的跟踪数据库;以及在所述跟踪数据库中形成与所述被识 别的应用信息相对应的项(entry),所述项在所述跟踪数据库的、与所述被识别的移动设备 相对应的段中被形成。
[0009] 所述被识别的应用信息可为主机名,且在所述跟踪数据库中所形成的项为与所述 主机名相对应的应用名称。
[0010] 所述映射表可为哈希表。
[0011] 一种在通信网络中的网络装置,用于识别与在多个移动设备与该网络装置之间传 送的IP流相关的应用数据,该网络装置可包括数据接收单元;数据传输单元;存储单元, 被配置以存储和与网元进行通信的多个移动设备相对应的参数;以及处理单元,被耦合至 数据传输单元、数据接收单元、以及存储单元,且被配置以控制操作。被控制的操作可包括 接收要被发送到所述多个移动设备中的一个或多个移动设备的一个或多个域名系统(DNS) 数据包;以及根据在所述网络装置接收到的一个或多个DNS数据包内的映射信息,建立将 一个或多个IP地址分别映射到相应的应用信息的映射表。
[0012] 所述应用信息可为从在所述网络装置接收到的一个或多个DNS数据包中读取的 至少一个主机名,以及与所读取到的主机名相对应的应用名称。
[0013] 所述接收到的DNS数据包可为DNS响应数据包,且所述处理单元可被配置,以使所 述建立映射表包括从在网络装置接收到的一个或多个DNS数据包中读取所述一个或多个 IP地址,以及对应于所述一个或多个IP地址的一个或多个主机名。
[0014] 所述处理单元可进一步被配置以控制操作,包括,接收要被发送到或者来自所述 多个移动设备中的移动设备的IP数据包;以及通过基于所述IP数据包搜索所述映射表,来 识别与所述接收到的IP数据包相关的应用信息。
[0015] 所述处理单元可被配置,以使搜索所述映射表包括选择所述映射表中的、与所述 映射表中的发送方IP地址相对应的应用数据,作为被识别的应用信息,如果所述接收到的 IP数据包为要被发送到所述多个移动设备中的一个的数据包,所述发送方IP地址为所述 接收到的IP数据包的发送方IP地址。所述处理单元可被配置,以使搜索所述映射表包括 选择所述映射表中与目的IP地址相对应的应用信息,作为被识别的应用信息,如果所述接 收到的IP数据包为从所述多个移动设备中的一个发送的数据包,所述目的IP地址为所述 接收到的IP数据包的目的IP地址。
[0016] 所述处理单元可进一步被配置以控制操作,包括,识别所述接收到的IP数据包需 要被发送到的或者来自的、所述一个或多个移动设备中的移动设备;建立具有与所述多个 移动设备中的每个相对应的段的跟踪数据库;以及在所述跟踪数据库中形成与所述被识别 的应用信息相对应的项,所述项在所述跟踪数据库的、与所述被识别的移动设备相对应的 段中被形成。
[0017] 所述应用信息可为主机名,且在所述跟踪数据库中所形成的项为与所述主机名相 对应的应用名称。
[0018] 所述映射表可为哈希表。

【专利附图】

【附图说明】
[0019] 根据下面提供的详细描述以及附图,示例实施例将更充分地被理解,其中,相同的 元件由相同的参考标记来表示,其仅通过举例的方式被给出,且因此并非用于限制,且其 中:
[0020] 图1示出了根据至少一个示例实施例的无线通信网络的一部分。
[0021] 图2示出了根据至少一个示例实施例的用于使用DNS数据识别与IP流相关的应 用的网元的结构框图。
[0022] 图3示出了根据至少一个示例实施例的将应用信息映射到IP地址的方法。
[0023] 图4示出了使用映射信息来识别与IP流相关的应用的方法。

【具体实施方式】
[0024] 至少一个示例实施例现在将参考附图来更充分地被描述,在附图中一些示例实施 例被示出。
[0025] 详细说明的示例实施例在这里被公开。然而,在这里所公开的具体结构和功能细 节仅代表性的用于描述至少一个示例实施例。然而,示例实施例可体现为许多替代形式,且 不应被解释为仅限于本文所提出的实施例。
[0026] 因此,尽管示例实施例能够有多种改变和替代形式,实施例在此在附图中以示例 方式被示出,且将在这里被详细地描述。应当理解的是,无论如何,并不存在将示例实施例 限制为所公开的具体形式的意图,但相反地,示例实施例覆盖所有落入示例实施例范围的 改变、等同、以及替代选择。在附图的整个描述中,相同的编号指示相同的元素。如本文所 使用的,术语"和/或"包括相关所列项的一个或多个的任意和所有组合。
[0027] 应当理解的是,当元素被称为"被连接"或"被耦合"至另一个元素,其可直接被连 接或耦合至另一个元素或可能出现的中间元件。相反,当元素被称为"直接被连接"或"直 接被耦合"至另一个元素时,没有中间元件出现。用以描述元素之间关系的其它词汇应以相 似的方式被解释(例如,"之间"对"直接地之间","相邻的"对"直接相邻的")。
[0028] 这里所使用的术语仅用于描述具体示例实施例,且并非意在限制示例实施例。如 在此所使用的,单数形式"a"、"an"和"the"意在同样包括复数形式,除非上下文另有明确 说明。还应理解的是,术语"包含(comprises) "、"包含(comprising)":包括(includes)" 和/或"包括(including) ",当在此使用时,指定所陈述的特征、整数、步骤、操作、元素和/ 或组件的存在,但不排除一个或多个其它特征、整数、步骤、操作、元素、组件和/或其群组 的存在或添加。
[0029] 还应当注意的是,在一些可选择的实现中,所标注的功能/行为可在图中所标注 的顺序之外发生。例如,取决于所涉及的功能/行为,连续示出的两个图形实际上可被基本 上同时执行,或有时可能以相反的顺序被执行。
[0030] 如在此所使用的,术语用户设备(User Equipment,UE)可被认为同义于,且之后 可能偶尔会被称为,终端、移动单元、移动台、移动用户、接入终端(Access Terminal,AT)、 订阅者、用户、远程站、访问终端、接收器等等,且可描述无线通信网络中的无线资源的远程 用户。术语基站(Base Station, BS)可被认为同义于和/或被称为基地收发信台(Base Transceiver Station,BTS)、节点 B(NodeB)、扩展的节点 B(extended Node B,eNB)、接入 点(Access Point,AP)等等,且可描述为网络和一个或多个用户之间的数据和/或音频的 联通性而提供无线基带功能的设备。
[0031] 典型示例实施例在这里被讨论,依照在合适的计算机环境中被实施。尽管不是必 需的,典型示例实施例将在计算机可执行指令,如由一个或多个计算机处理器或CPU所执 行的程序模块或功能处理,的一般环境中被描述。通常,程序模块或功能处理包括执行特定 任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。
[0032] 这里所讨论的程序模块和功能处理可使用现有通信网络中的现有硬件来被实现。 例如,这里所讨论的程序模块和功能处理可在现有网元或控制节点(例如,图1所示的服务 GPRS(通用分组无线服务,General Packet Radio Service)支持节点(SGSN,Serving GPRS SUPPORT NODE)、数据包分析器(Packet Analyzer)、网关 GPRS 支持节点(GGSN,Gateway GPRS Support Node)、无线网络控制器(Radio Network Controller,RNC)、和 / 或基站 (BS))中使用现硬件来被实现。此类现有硬件可包括一个或多个数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit, ASIC)、现场可编程门阵列(Field Programmable Gate Array, FPGA)计算机或类似物。
[0033] 在下面的描述中,说明性示例实施例将参考一个或多个处理器所执行的操作的符 号表示和动作来被描述(例如,以流程图的形式),除非另有说明。如此,应被理解的是,有 时会被认为是计算机执行的此类动作和操作,包括表示结构化形式数据的电信号的、处理 器的操纵。此操纵转换数据或维持其在计算机的存储系统中的位置,其重配置或另外的以 本领域技术人员可很好的理解的方式来改变计算机的操作。 网络体系结构概沭
[0034] 图1示出了无线通信网络100的一部分。在图1所示示例中,无线通信网络100根 据已知的UMTS协议被构建且运行。然而,根据至少一个示例实施例,无线通信网络100可 被构建以支持任何已知的无线通信协议,包括,例如,CDMA2000、EVD0、LTE、以及WiMax。
[0035] 无线通信网络100包括服务GPRS支持节点(SGSN) 110 ;网关GPRS支持节点 (GGSN) 106 ;数据包分析器108 ;无线网络控制器(RNC) 120,多个基站(BS) 130以及多个用 户设备(UE) 140。尽管,为了简单起见并未示出,但无线通信网络100可包括UMTS核心网的 其他元素。
[0036] 用户设备140可包括,例如,第一到第四的用户设备142A-142D。用户设备140可 为,例如,移动手机、智能手机、计算机、或个人数字助手(Personal Digital Assistants, PDA)。用户设备140可与基站130中相对应的一个进行无线通信。
[0037] 基站130可包括第一基站132A和第二基站132B。基站130根据已知方法运行, 且为与基站130进行无线通信的用户设备提供无线覆盖。例如,第一和第二用户设备142A 和142B可与第一基站132A进行无线通信,且第三和第四用户设备142C和142D可与第二 基站132B进行无线通信。基站130被连接到RNC120。
[0038] RNC120根据已知方法运行,且从基站130接收数据以及向基站130转发数据。 RNC120还控制基站130的运行,并为基站130处理无线资源管理。尽管,为简单起见,无线 通信网络100被示出为仅包括第一和第二基站132A和132B,但无线通信网络100可包括任 意数量的基站。RNC被连接到SGSN110。
[0039] SGSN110根据已知方法运行,且被连接到GGSN106。SGSN110处理用户设备140和 GGSN106之间的数据包的路由和传送。GGSN106根据已知方法运行,且处理SGSN110和包括, 例如网络101,的分组数据网络之间的数据包的传送。
[0040] 网络 101 包括域名系统(Domain Name System,DNS) 105。DNS105 包括多个 DNS 服 务器,其执行一些操作,包括将主机名翻译为IP地址。DNS105根据已知标准,包括如互联网 工程任务组(Internet Engineering Task Force, IETF)所发布的DNS规范,来运行。
[0041] 数据包分析器108可被连接到GGSN106和SGSN110之间的连接。数据包分析器 108可访问和分析在GGSN106和SGSN110之间被发送的数据,该数据包括,例如,IP数据包。 数据包分析器108的示例结构和操作将在下面参照图2更详细的被讨论。 通讨IP数据何分析识别应用的说明
[0042] 无线通信网络内的网元能够分析与IP数据包相关的IP地址、IP子网、端口和/或 协议。先前,这种分析可以用来确定与IP流相关的应用的类型,被分析的数据包是该IP流 的一部分。然而,目前,由于内容分发网络(Content Distribution Network, α)Ν)和云计 算正在流行,一个IP子网可对应多个不同的应用。此外,服务于特定应用的计算机的IP地 址可能被改变。
[0043] 此外,多个IP地址可被用于访问一个应用。因此,可能难以仅基于与IP流的IP 数据包相关的IP地址、IP子网、端口和/或协议的常规分析,来确定与IP流相关的应用。
[0044] 此外,深度包检测(Deep Packet Inspection, DPI)能够分析IP流中的IP数据 包,来得到签名字符串和/或行为签名,以确定与该IP流相关的应用。然而,对于那些相应 的IP流没有公知签名串的应用,DPI是不太有效的。此类应用包括,例如,使用具有专有协 议的数据包的应用。此外,当数据包包括加密的数据时,DPI的效果被显著降低。 俥用DNS数据来识别与IP流相关的应用的方法和裝置
[0045] 如上所述,尝试基于包括地址、子网、端口或协议的IP数据包信息的常规分析来 识别与IP流相关的应用是有缺点的。此外,如上所述,使用DPI的常规方法是有缺点的。因 此,实现不依赖于已固定的或公知的IP地址、IP子网、端口和/或协议,来识别与IP流相 关的应用的方法,可能是有利的。进一步地,实现不依赖于访问可能具有未知协议或被加密 的包数据,来识别与IP流相关的应用的方法,可能是有利的。根据至少一个示例实施例,这 样的方法可使用DNS数据来实现。
[0046] 例如,DNS实现了著名的域名服务,通过域名服务,DNS客户端发送查询到DNS服 务器,且从该DNS服务器接收DNS响应。DNS查询可包括主机名(例如,由互联网数字分 配机构(Internet Assigned Number Authority,IANA)所维护的主机名 "www. example, com")。此外,对DNS查询的DNS响应可包括DNS查询中的主机名以及对应的IP地址(例 如,"192. 0· 43. 10")。
[0047] 使用无线通信网络100作为一个示例,如果应用正在运行,例如,第一用户设备 142A需要访问与特定主机名相关的数据,并且与该特定主机名相关的IP地址不包括在该 第一用户设备142A的缓存中,该第一用户设备142A可生成该主机名的DNS查询请求翻译, 并将该DNS查询发送到DNS105。此外,一旦DNS105确定与该DNS查询中所请求的主机名 相关的IP地址,DNS105将,⑴,生成DNS响应,该DNS响应包括所请求的主机名以及与该 所请求的主机名相关的IP地址,以及(ii),将该DNS响应发送到第一用户设备142A。DNS 响应将经过无线通信系统100中的许多网元,包括例如,GGSN106、SGSN110、RNC120以及基 站132A。因此,数据包分析器108,例如,将访问包括所请求的主机名以及与该所请求的主 机名相关的IP地址的该DNS响应内的DNS数据。进一步地,DNS数据将是当前的且以已知 的标准化的格式呈现的。
[0048] 根据至少一个示例实施例,使用DNS数据识别与IP流相关的应用的方法包括,使 用无线通信网络内的网元,从DNS查询以及对应的DNS响应中读取DNS数据,来确定主机名 和IP地址之间当前的映射关系,并建立包括所确定的映射关系的应用映射表。通过识别包 含在IP数据包中的目的IP地址或发送方IP地址,将所识别的IP地址与应用映射表进行 比较,并基于该比较返回与所识别的IP地址相关的主机名,则与IP流相关的应用被确定。 之后,该主机名可被匹配到已知的与该主机名相关的应用。
[0049] 使用DNS数据来识别与IP流相关的应用的方法和装置现在将在下面参照图2至 图5来更详细地被讨论。
[0050] 图2为示出了根据至少一个示例实施例的用于使用DNS数据来识别与IP流相关 的应用的网元251的结构的框图。该网元251可为接收与连接到无线网络100的用户设备 140中的一个相对应的DNS数据包的任何网元。例如,图1所示的GGSN106、数据包分析器 108、SGSN110、基站132A或132B中的一者、或RNC120中的一个或多个,该一个或多个可包 括具有网元251的结构和操作的元素。
[0051] 参照图3A,网元251可包括,例如,数据总线259、传输单元252、接收单元254、存 储单元356和处理单元358。
[0052] 所述传输单元252、接收单元254、存储单元256以及处理单元258可使用数据总 线259互相发送数据和/或接收数据。传输单元252为包括通过无线通信网络100中到网 元的一个或多个有线和/或无线连接来传输有线和/或无线信号,包括例如数据信号和控 制信号,的硬件及任何必要的软件的设备。例如,传输单元252所传输的数据信号可包括要 发送到或来自用户设备140的IP数据包。
[0053] 接收单元254为包括通过无线通信网络100中到网元的一个或多个有线和/或无 线连接接收有线和/或无线信号,包括例如数据信号和控制信号,的硬件及任何必要的软 件的设备。例如,接收单元354所接收的数据信号可包括要发送到或来自用户设备140的 IP数据包。
[0054] 存储单元256可为能够存储数据的任何设备,包括磁存储器、闪存等等。
[0055] 处理单元258可为能够处理数据的任何设备,例如,被配置以基于输入数据执行 特定操作的微处理器,或者,能够执行包含在计算机可读代码中的指令的任何设备。
[0056] 例如,处理单元258能够分析IP数据包,来确定与该IP数据包有关的信息,包括 IP数据包是否为DNS数据包,以及与该IP数据包相关的目的和/或发送方IP地址。此外, 处理单元258还能够分析DNS数据包,包括例如,DNS响应数据包,来确定该DNS响应数据 包内包括主机名以及与该主机名相对应的IP地址的信息。此外,处理单元258能够基于包 含在DNS响应数据包中的信息,形成将IP地址映射到主机名的表,并且使用该表来识别与 包含在IP数据包中的目的和/或发送方IP地址相对应的主机名。
[0057] 操作网元251的示例方法现在将在下面参照图3至图4来更详细地被讨论。图3 至图4将以网元251由数据包分析器108来实现为例,来进行描述。
[0058] 根据至少一个示例实施例,图3至图4中所示的或针对图3至图4来被描述的、由 数据包分析器108执行的每个操作,可由,例如,具有如图2所示的网元251的结构的元素, 来执行。例如,存储单元256可存储与下面针对图3至图4所描述的每个操作相对应的可执 行指令,针对图3至图4所描述的任何数据由数据包分析器108存储。此外,处理单元258 可被配置以执行下面针对图3至图4所描述的每个操作,例如,基于存储单元256中所存储 的可执行指令。此外,根据至少一个示例实施例,被描述为由数据包分析器108所传输或接 收的数据和/或控制信号,可通过传输单元252被传输,或通过接收单元254被接收。
[0059] 图3至图4示出了根据至少一个示例实施例的使用DNS数据处理应用信息来识别 与IP地址相关的应用的方法。图3示出了根据至少一个示例实施例的将应用信息映射到 IP地址的方法;以及图4示出了根据至少一个示例实施例的使用映射信息来识别与IP流 相关的应用的方法。
[0060] 参照图4,在步骤S310中,网元251接收IP数据包。例如,数据包分析器108可接 收从网络101中被发送至用户设备140中的一个的IP数据包。在步骤S315中,网元251 确定该IP数据包是否为DNS响应数据包。DNS响应数据包的格式是已知的并由,例如,IETF 规范所定义的。因此,根据已知方法,数据包分析器108可分析在步骤S310中接收到的IP 数据包的内容,并通过确定该IP数据包是否包括具有DNS响应数据包格式的数据,来确定 该IP数据包是否为DNS响应数据包。
[0061] 如果,在步骤S315中,网元251确定在步骤S310中接收到的IP数据包不是DNS 响应数据包,网元251返回步骤S310并分析下一个接收到的IP数据包。例如,数据包分析 器108可开始下一个接收到的IP数据包的处理。
[0062] 如果网元251确定在步骤S310中接收到的该IP数据包是DNS响应数据包,网元 251继续步骤S320。
[0063] 在步骤S320中,网元251从DNS响应数据包中读取主机名以及对应的IP地址。
[0064] 众所周知,DNS响应数据包,例如通过DNS服务器,被生成以响应DNS查询数据包。 根据DNS数据包的已知格式,DNS查询数据包可包括询问部分(question section),该询 问部分包括生成DNS查询的实体渴望知道的IP地址所对应的主机名。响应DNS查询数据 包而生成的DNS响应数据包可包括DNS查询数据包所包括的相同的询问部分,和应答部分 (answer section)。DNS响应数据包的该应答部分可包括DNS响应数据包的询问部分所包 括的主机名,以及与DNS响应数据包的询问部分所包括的主机名相对应的IP地址。
[0065] 数据包分析器108,例如,可访问DNS数据包的询问部分和/或应答部分,来确定被 生成的DNS响应数据包所针对的主机名。此外,数据包分析器108可访问DNS响应数据包 的应答部分,来确定与被生成的DNS响应数据包所针对的主机名相对应的IP地址。
[0066] 在步骤S325中,网元251将在步骤S320中从DNS响应数据包中读取的主机名和 相应的IP地址输入到应用映射表。数据包分析器108可生成并存储将IP地址映射到主机 名的应用映射表。例如,数据包分析器108可在应用映射表中创建项(entry),该项使在步 骤S320中读取的主机名映射到在步骤S320中读取的相应的IP地址。应用映射表可为,例 如,哈希表,该哈希表中的表索引为每个IP地址,且表项为IP地址加上与其相应的主机名。 所述哈希表可使用任何已知的哈希函数来形成。
[0067] 此外,根据至少一个示例实施例,数据包分析器108可确定与在步骤S320中读取 的主机名相关的应用。数据包分析器108能够根据已知方法确定与特定主机名相关的应 用。例如,数据包分析器108可访问数据包分析器108中所存储的信息,或无线通信网路 100中的其他元素,该其他元素存储主机名和主机名所属的应用之间的关联。因此,在步骤 S325中,替代将读取的IP地址映射到读取的主机名,数据包108可将读取的IP地址映射到 标识符,该标识符指示了与读取的主机名相关的应用,例如,应用名称。
[0068] 一旦网元251将在步骤S320中读取的IP地址和主机名或与该读取的IP地址相 对应的应用输入到应用映射表,网元251可返回步骤S310。例如,在步骤S325之后,数据包 分析器108可开始在该数据包分析器接收到的下一个IP数据包的处理。
[0069] 使用上述在步骤S325中开发的应用映射表来识别与IP流相关的应用的过程将在 下面参照图4被讨论。
[0070] 参照图5,在步骤S410中,网元251接收IP数据包,该IP数据包被包含在要被发 送到或来自用户设备140中的一个的IP数据流中。例如,数据包分析器108可接收作为需 要从第一用户设备142A发送到网络101的IP流中的一部分的数据包。
[0071] 在步骤S415中,网元251可确定在步骤S410中接收到的IP数据包的发送方IP 地址和/或目的IP地址。例如,根据已知方法,数据包分析器108可分析在步骤S410中接 收到的IP数据包的字段,来确定与该IP数据包的目的地相对应的IP地址。数据包分析器 108可额外地,或可选地,确定与最初发送该IP数据包的实体相对应的IP地址。例如,如果 接收到的IP数据包最初来自网络101,数据包分析器108可确定该接收到的IP数据包的发 送方IP地址。进一步地,如果接收到的IP数据包最初来自用户设备140中的一个,数据包 分析器108可确定该IP数据包的目的IP地址。
[0072] 在步骤S420中,网元251可在上述参照图3和图4中所讨论并在步骤S310中形 成的应用映射表中,搜索在步骤S415中确定的IP地址。例如,如果接收到的IP数据包最 初来自网络101,数据包分析器108可在该数据包分析器108所存储的应用映射表中搜索该 接收到的IP数据包的发送方IP地址。如果接收到的IP数据包最初来自用户设备中的一 个,数据包分析器108可在应用映射表中搜索该接收到的IP数据包中的目的IP地址。
[0073] 在步骤S425中,网元251可确定所确定的IP地址是否匹配应用映射表中的项。例 如,如上述参照图4的步骤S325中所述,应用映射表包括将IP地址映射到相应的主机名或 应用的项。因此,在步骤S425中,数据包分析器108可确定与在步骤S415中所确定的IP 地址相对应的项是否存在于数据包分析器108所存储的应用映射表中。
[0074] 如果,在步骤S425中,网元215确定在数据包分析器108所存储的应用映射表中 不存在与在步骤S415中所确定的IP地址相对应的项,网元215返回步骤S410来开始分析 在网元215接收到的下一个IP数据包。
[0075] 如果,在步骤S425中,网元215在网元251所存储的应用映射表中识别出与在步 骤S415中所确定的IP地址相对应的项,网元继续步骤S430。
[0076] 在步骤S430中,网元251在跟踪表中存储应用信息,用于与在步骤S410中接收到 的IP数据包相对应的用户设备。例如,数据包分析器108可生成跟踪数据库,该跟踪数据 库存储与在通信网络100内的用户设备相对应的跟踪信息。该跟踪数据库可包括,例如,与 具有在GGSN106和SGSN110之间传递给用户设备或来自用户设备的IP流的每个用户设备 相对应的跟踪表。对于每个用户设备,相应的跟踪表可包括从该用户设备的IP流的IP数 据包中识别出的应用信息。所述应用信息可为,例如,与从需要发送到或来自用户设备的IP 数据包中读取的IP地址相关的主机名,或者,与该主机名相关的应用的标识符。例如,对于 特定主机名,数据包分析器108能够根据已知方法确定相关的应用。
[0077] 对于每个用户设备,跟踪表还可包括指示时间和/或频率的信息,通过该指示时 间和/或频率的信息,不同的主机名和/或应用可被识别为与通过GGSN106和SGSN110之 间的连接来被发送到或来自用户设备的IP数据包相关。
[0078] 在步骤S430之后,网元251可返回步骤S410来开始对在网元215接收到的下一 个IP数据包的分析。
[0079] 网元251能够同时执行上述在图3和图4中所讨论的方法。例如,网元251可依 照图3中所示的方法,根据从最近接收到的DNS数据包中接收到的信息,不断地更新应用映 射表。此外,同时,网元可依照图4中所示的方法,使用当前应用映射表来不断地将应用与 IP流关联。
[0080] 因此,根据上述针对图3至图4中示例所述的、使用DNS数据识别与IP流相关的 应用的方法,DNS响应数据包中所包括的数据可被通信网络100内的网元251用于建立在 网元251内的应用映射表。应用映射表将IP地址映射到相应的应用信息。应用信息可为 与IP地址相对应的主机名,或与该主机名相关的应用的标识符,例如,应用的名称。
[0081] 此外,应用映射表可被网元251用于确定:与经过经由网元251传输且具有与应用 映射表内的项相对应的发送方或目的IP地址的任何IP数据包相关的应用信息。对于每个 用户设备,所确定的、与发送至或来自用户设备的IP数据包相关的应用信息,可放入网元 所存储的跟踪数据库内的表中。网元251的跟踪数据库内所存储的信息可被无线通信网络 100的网络运营商用于确定特定应用信息,该特定应用信息包括连接到无线通信网络100 的每个用户设备所访问的应用的类型以及所述访问的时间和频率。对与网络运营商,此访 问信息可具有许多用途,例如,市场调研、流量监管、流量感知、策略实施、以及普通的网络 智能。
[0082] 示例实施例因此被描述,明显的是,相同的内容可以以许多方式被改变。此类改变 不被认为违背示例实施例,且所有此类变动被认为包含在示例实施例的范围内。
【权利要求】
1. 一种在通信网络中处理与在多个移动设备(140)和网元(108)之间传送的IP流相 关的应用数据的方法,该方法包括: 在网元(108),接收要被发送到所述多个移动设备(140)中的一个或多个移动设备的 一个或多个域名系统(DNS)数据包;以及 在所述网元(108),根据在所述网元(108)接收到的一个或多个DNS数据包内的映射信 息,建立将一个或多个IP地址分别映射到相应的应用信息的映射表。
2. 根据权利要求1所述的方法,其中,所述应用信息为从在所述网元(108)接收到的一 个或多个DNS数据包中读取的至少一个主机名,以及与所读取到的主机名相对应的应用名 称。
3. 根据权利要求2所述的方法,其中,接收到的DNS数据包为DNS响应数据包,且建立 所述映射表包括从在网元(108)接收到的一个或多个DNS数据包中读取所述一个或多个IP 地址,以及对应于所述一个或多个IP地址的一个或多个主机名。
4. 根据权利要求2所述的方法,进一步包括: 在所述网元(108),接收要被发送到或者来自所述多个移动设备(140)中的移动设备 的IP数据包;以及 通过基于所述IP数据包搜索所述映射表,来识别与所述接收到的IP数据包相关的应 用信息。
5. 根据权利要求4所述的方法,其中,搜索所述映射表包括选择所述映射表中的、与所 述映射表中的发送方IP地址相对应的应用数据作为被识别的应用信息,如果接收到的IP 数据包为要被发送到所述多个移动设备(140)中的一个的数据包,所述发送方IP地址为接 收到的IP数据包的发送方IP地址,以及 搜索所述映射表包括选择所述映射表中与目的IP地址相对应的应用信息作为被识别 的应用信息,如果接收到的IP数据包为从所述多个移动设备(140)中的一个发送的数据 包,所述目的IP地址为接收到的IP数据包的目的IP地址。
6. -种在通信网络中的网络装置(259),该网络装置用于识别与在多个移动设备 (140)与该网络装置之间传送的IP流相关的应用数据,该网络装置包括: 数据接收单元(254); 数据传输单兀(252); 存储单元(256),被配置以存储和与网元(108)进行通信的多个移动设备(140)相对应 的参数;以及 处理单元(258),耦合至所述数据传输单元、所述数据接收单元(254)、以及所述存储 单元(256),且被配置以控制以下操作, 接收要被发送到所述多个移动设备(140)中的一个或多个移动设备的一个或多个域 名系统(DNS)数据包;以及 根据在所述网络装置(259)接收到的一个或多个DNS数据包内的映射信息,建立将一 个或多个IP地址分别映射到相应的应用信息的映射表。
7. 根据权利要求6所述的网络装置(259),其中,所述应用信息为从在所述网络装置 (259)接收到的一个或多个DNS数据包中读取的至少一个主机名,以及与所读取到的主机 名相对应的应用名称。
8. 根据权利要求7所述的网络装置(259),其中,接收到的DNS数据包为DNS响应数据 包,且所述处理单元(258)被配置以使建立所述映射表包括从在网络装置接收到的一个或 多个DNS数据包中读取所述一个或多个IP地址,以及对应于所述一个或多个IP地址的一 个或多个主机名。
9. 根据权利要求7所述的网络装置,其中,处理单元(258)进一步被配置以控制以下操 作, 接收要被发送到或者来自所述多个移动设备(140)中的移动设备的IP数据包;以及 通过基于所述IP数据包搜索所述映射表,来识别与所述接收到的IP数据包相关的应 用信息。
10. 根据权利要求9所述的网络装置(259),其中,所述处理单元被配置以使, 搜索所述映射表包括选择所述映射表中的、与所述映射表中的发送方IP地址相对应 的应用数据,作为被识别的应用信息,如果接收到的IP数据包为要被发送到所述多个移动 设备(140)中的一个的数据包,所述发送方IP地址为接收到的IP数据包的发送方IP地址, 以及 搜索所述映射表包括选择所述映射表中与目的IP地址相对应的应用信息作为被识别 的应用信息,如果接收到的IP数据包为从所述多个移动设备(140)中的一个发送的数据 包,所述目的IP地址为接收到的IP数据包的目的IP地址。
【文档编号】H04L29/08GK104160681SQ201380013321
【公开日】2014年11月19日 申请日期:2013年2月25日 优先权日:2012年3月9日
【发明者】赵姚, 安纳德·普拉布·苏布拉马尼安, 田·部 申请人:阿尔卡特朗讯
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1