使用可用的网络连接的独立网络探测的制作方法

文档序号:15885771发布日期:2018-11-09 18:51阅读:177来源:国知局
使用可用的网络连接的独立网络探测的制作方法

基于网络的观察是获得有关网络拓扑的信息和路径内设备的最有效的方法之一。对于流氓(rogue)网络设备检测而言,网络探测也被认为是非常有效的。当前的基于网络的探测方法使用专用服务器来充当探测生成器或探测宿。例如,在当前的基于网络的探测方法中,探测客户端设备通常将探测发送给专用服务器。因此,在当前的基于网络的探测方法中,探测客户端设备必须提前知道专用服务器信息,以启动与专用服务器的连接,并且专用服务器需要启动并运行以完成探测。因此,当前的用于网络探测的方法是不可扩展的,以及依赖于网络接入规则来实现网络探测。此外,在当前的基于网络的探测方法中,流氓设备(例如,流氓接入点)可以了解服务器,并使用相同的专用服务器信息来阻碍探测过程。例如,在当前的基于网络的探测方法中,每一个探测通常被寻址到相同的服务器地址,从而允许由流氓设备来识别和处理探测以阻碍探测过程。



技术实现要素:

各种实施例提供了基于经由第一网络连接发送探测并经由第二网络连接接收探测的通信设备来实现利用通信设备进行网络探测的方法、设备和非暂时性处理器可读存储介质。通过利用通信设备同时建立两个网络连接的能力,各种实施例可以使单个通信设备能够充当探测客户端和探测服务器两者。以这种方式,各种实施例可以实现独立的网络探测,即,可以不需要远程专用探测服务器充当探测生成器或探测宿的网络探测。

各种实施例可以包括由通信设备进行网络探测的方法,包括由通信设备建立第一接口技术的第一网络连接和第二接口技术的第二网络连接,将第一网络连接与在通信设备的处理器上运行的探测客户端相关联,以及将第二网络连接与在处理器上运行的探测服务器相关联,经由第一网络连接从探测客户端发送寻址到探测服务器的探测,经由第二网络连接在探测服务器处接收探测,以及基于在探测服务器处接收探测来确定网络观察。在各种实施例中,第一接口技术和第二接口技术可以是不同的空中接口技术。在各种实施例中,不同的空中接口技术可以是蜂窝空中接口技术和无线局域网(wlan)接口技术。在各种实施例中,蜂窝空中接口技术可以是包括3g、4g、lte和edge的组的至少一个成员。在各种实施例中,探测客户端和探测服务器可以是时间同步的。在各种实施例中,探测客户端和探测服务器可以是基于通信设备的同一时钟来操作的。在各种实施例中,网络观察可以是网络延迟。网络延迟可以是往返时间或分组间延迟。

在各种实施例中,由通信设备进行网络探测的方法可以进一步包括经由探测客户端来收集针对第一网络连接的第一网络设置信息,经由探测服务器来收集针对第二网络连接的第二网络设置信息,以及至少部分地基于第一网络设置信息和第二网络设置信息来生成寻址到探测服务器的探测。

在各种实施例中,经由第一网络连接从探测客户端发送寻址到探测服务器的探测可以包括经由第一网络连接从探测客户端发送寻址到探测服务器的多个探测;经由第二网络连接在探测服务器处接收探测可以包括经由第二网络连接在探测服务器处接收多个探测;以及基于在探测服务器处接收探测来确定网络观察可以包括基于在探测服务器处接收多个探测来确定网络观察。在各种实施例中,网络观察可以是分组间延迟。

在各种实施例中,由通信设备进行网络探测的方法可以进一步包括经由第二网络连接从探测服务器发送寻址到探测客户端的探测,以及经由第一网络连接在探测客户端处接收探测。基于在探测服务器处接收探测来确定网络观察可以包括基于在探测服务器处接收探测和在探测客户端处接收探测来确定网络观察。

各种实施例可以包括被配置为具有处理器可执行指令的通信设备,该处理器可执行指令用于执行上文描述的方法的操作。

各种实施例可以包括具有用于执行上文描述的方法的操作的功能的单元的通信设备。

各种实施例可以包括在其上存储处理器可执行指令的非暂时性处理器可读介质,该处理器可执行指令被配置为使通信设备的处理器执行上文描述的方法的操作。

附图说明

被并入本文中并构成本说明书的部分的附图说明了示例性实施例,以及与上文给出的一般描述和下文给出的详细描述一起,用于解释各种实施例的特征。

图1是适用于与各种实施例一起使用的网络的通信系统方块图。

图2是根据各种实施例的示出了通信设备的方块图。

图3是根据各种实施例的示出了用于利用通信设备进行网络探测的方法的处理流程图。

图4是根据各种实施例的示出了用于网络探测的通信设备与网络之间的交互的呼叫流方块图。

图5是根据各种实施例的示出了用于利用通信设备进行网络探测的方法的处理流程图。

图6是根据各种实施例的示出了用于网络探测的通信设备与网络之间的交互的呼叫流方块图。

图7是根据各种实施例的示出了用于利用通信设备进行网络探测的方法的处理流程图。

图8是适用于实现一些实施例的通信设备的组件方块图。

具体实施方式

将参考附图详细描述各种实施例和实现方式。在可能的情况下,相同的附图标记将贯穿附图被用于指代相同或类似的部分。对特定的示例和实现方式所作出的引用是出于说明性目的,并且不旨在限制公开内容或权利要求的范围。

术语“通信设备”和“计算设备”在本文中互换使用以指以下各项中的任何一者或全部:蜂窝电话、智能电话、个人或移动多媒体播放器、个人数据助理(pda)、膝上型计算机、平板计算机、智能本、掌上计算机、无线电子邮件接收器、启用多媒体互联网的蜂窝电话、无线游戏控制器和类似的个人电子设备,其包括可编程处理器和存储器,以及用于建立无线通信路径和经由无线通信路径来发送/接收数据的电路。在诸如移动通信设备(例如,智能电话)的通信设备中,各个方面可以是有用的,以及因此将这样的设备引用到各种实施例的描述中。然而,在能够同时建立两个不同的网络连接的任何电子设备中,这些实施例可能是有用的。

诸如移动通信设备(例如,智能电话)的通信设备可以使用各种接口技术,诸如有线接口技术(例如,通用串行总线(usb)连接等)和/或空中接口技术(也称为无线接入技术)(例如,第三代(3g)、第四代(4g)、长期演进(lte)、edge、蓝牙、wi-fi、卫星等)。通信设备可以同时(例如,同时地)经由这些接口技术中的多于一个技术建立到诸如互联网的网络的连接。例如,移动通信设备可以经由蜂窝塔或基站建立到互联网的lte网络连接,同时移动通信设备可以建立去往连接到互联网的wi-fi接入点的无线局域网(wlan)网络连接(例如,wi-fi网络连接)。通信设备同时建立两个不同的网络连接的能力可以实现针对基于网络的探测所遇到的问题的独立的通信设备解决方案。

各种实施例提供了基于经由第一网络连接发送探测并经由第二网络连接接收探测的通信设备来实现利用通信设备进行网络探测的方法、设备和非暂时性处理器可读存储介质。通过利用通信设备同时建立两个网络连接的能力,各种实施例可以使单个通信设备能够充当探测客户端和探测服务器两者。以这种方式,各种实施例可以实现独立的网络探测,即,可以不需要远程专用探测服务器充当探测生成器或探测宿的网络探测。

各种实施例可以包括在通信设备的处理器上运行的探测管理器,诸如在通信设备的应用处理器上、在通信设备的专用处理器上、在通信设备的调制解调器处理器上或在通信设备的任何一个或多个处理器上。探测管理器可以包括探测客户端和探测服务器(或与探测客户端和探测服务器相连接),以及探测管理器可以控制探测客户端和探测服务器的操作来发送和接收到网络的探测。探测客户端可以被配置为发送探测,以及探测服务器可以被配置为接收探测。

在各种实施例中,探测管理器可以从通信设备上的一个或多个应用(即,一个或多个进行请求的应用)接收网络观察请求。网络观察请求可以是来自进行请求的应用的对要由探测管理器执行的一个或多个网络观察的指示。示例性网络观察可以包括对网络延迟的确定、对接入配置的确定、对协议属性的确定和对网络地址转换(nat)配置的确定。对网络延迟的确定可以包括确定往返时间和分组间延迟。对接入配置的确定可以包括确定在网络上的开放端口和允许的协议(例如,是否在网络上正在发生互联网控制消息协议(icmp)分组过滤)。对网络协议属性的确定可以包括确定网络上的最大协议数据单元(pdu)分组长度、协议初始值(例如,初始序列号等)、报头签名(例如,预留报头字段值、互联网协议(ip)生存时间(ttl)等)和协议/版本实现方式(例如,在网络中的中间设备的tcp栈上使用的传输控制协议(tcp)版本)。对nat配置的确定可以包括确定nat设置(例如,全锥型、受限锥型、端口受限锥型、对称等)和nat端口分配(例如,随机的、顺序的、与源(src)端口相关的等)。

响应于接收网络观察请求,探测管理器可以生成一个或多个探测,其被配置为使探测管理器确定一个或多个网络观察,利用该网络观察来响应网络观察请求。一个或多个探测可以被寻址到探测服务器。一个或多个探测可以具有不同的内容,诸如不同的报头和/或不同的有效载荷(例如,插入报头和/或有效载荷中的随机数)。探测管理器可以控制探测客户端和探测服务器的操作,以向网络发送寻址到探测服务器的一个或多个探测以及从网络接收寻址到探测服务器的一个或多个探测。探测管理器可以跟踪所发送的探测的发送时间和/或其它属性,以及所接收的探测的接收时间和/或其它属性。

基于在探测服务器处从网络接收一个或多个探测,探测管理器可以确定一个或多个网络观察,并且将一个或多个网络观察发送给一个或多个进行请求的应用。例如,探测管理器可以比较所发送的探测的发送时间和/或其它属性与所接收的探测的接收时间和/或其它属性,以确定一个或多个网络观察。

探测管理器可以建立第一接口技术的第一网络连接,以及将第一网络连接与探测客户端相关联。探测管理器可以建立第二接口技术的第二网络连接,以及将第二网络连接与探测服务器相关联。在各种实现方式中,探测管理器可以基于网络配置、目标网络观察和/或接口技术的状态(例如,受信任的、受怀疑的等),将第一网络连接和第二网络连接的接口技术分别与探测客户端和探测服务器相关联。在一些实现方式中,第一接口技术和第二接口技术可以是不同的空中接口技术。例如,第一接口技术可以是蜂窝技术(例如,3g、4g、lte、edge),并且第二接口技术可以是wlan技术(例如,wi-fi)或个域网技术(例如,蓝牙)。

寻址到探测服务器的探测可以是经由第一网络连接从探测客户端发送的。可以经由通过两个不同的接口技术的第二网络连接,通过各自的接口网络和通过在这些网络之间的互联网,将探测从第一网络连接路由到探测服务器。

在各种实施例中,探测客户端和探测服务器可以在通信设备上是时间同步的。由于探测客户端和探测服务器是在同一通信设备上操作的,因此探测客户端和探测服务器可能不需要彼此交换外部消息以实现时序同步。可以在探测客户端与探测服务器之间的设备上处理同步。在一个实施例中,探测客户端和探测服务器可以是基于在通信设备上的相同的时钟来共享/操作的。在不需要时钟的同步的情况下,在相同的时钟上的共享/操作使得探测的接收的时间被精确地计时。通过共享相同的时钟,在不需要在客户端与服务器之间的时序同步的情况下,从探测客户端发送的和由探测服务器接收的分组的通过时间可以由探测管理器来观察。

各种实施例使通信设备的处理器能够充当探测客户端和探测服务器两者,从而基本上操作为将相同的探测从通信设备路由回通信设备的单个独立的设备。各种实施例的该独立的能力可以消除对用于进行网络观察的专用服务器的需要。

此外,不需要从探测服务器发送探测响应,因为探测管理器可以跟踪并且比较所发送的探测的发送时间和/或其它属性与所接收的探测的接收时间和/或其它属性,以在没有任何对数据的传输离开设备的情况下,确定一个或多个网络观察。因此,探测生成、数据传输和数据接收可以存在于同一通信设备上。消除探测响应可以减少流氓设备了解和阻碍探测过程的机会。

进一步地,由于同一通信设备发送和接收探测,因此可以由同一处理器来观察分组间传输时间和分组间到达时间两者。分组间到达时间中的显著变化可以指示:使用另一无线连接作为其回程的流氓接入点可以是位于由探测遍历的网络路径和网络中的。由各种实施例提供的观察可以使进行接收的应用能够识别流氓接入攻击。

各种实施例动态地生成具有不同的探测结构、探测服务器地址、时序和内容的探测的能力可以消除在当前的基于网络的探测中固有的探测模式,和/或减少敌手设备可以了解探测服务器和/或探测模式,以及阻碍或利用探测过程的机会。

各种实施例可以是在各种通信系统100内实现的,在图1中示出了该通信系统100的示例。第一移动网络102和第二移动网络104通常各自包括多个蜂窝基站(例如,第一基站130和第二基站140)。网络102、104还可以被本领域技术人员称为接入网、无线接入网、基站子系统(bss)、通用移动电信系统(umts)地面无线接入网(utran)等。网络102、104可以使用相同的或不同的无线接口技术和/或物理层。在实施例中,基站130、140可以由一个或多个基站控制器(bsc)来控制。还可以使用替代的网络配置,以及实施例不限于所示出的配置。

第一通信设备110可以通过到第一基站130的蜂窝连接132与第一移动网络102相通信。第一通信设备110还可以通过到第二基站140的蜂窝连接142与第二移动网络104相通信。第一基站130可以在有线连接134上与第一移动网络102相通信。第二基站140可以在有线连接144上与第二移动网络104相通信。

蜂窝连接132和142可以通过双向无线通信链路(诸如全球移动通信系统(gsm)、umts(例如,长期演进(lte))、频分多址(fdma)、时分多址(tdma)、码分多址(cdma)(例如,cdma11001x)、wcdma、个人通信(pcs)、第三代(3g)、第四代(4g)、第五代(5g)或其它移动通信技术)来实现。在各种实施例中,通信设备110可以在驻留在由基站130、140管理的小区之后接入网络102、104。

网络102、104可以由公共交换电话网(pstn)124和/或互联网164互相连接,网络102、104可以跨越所述pstn124和/或互联网164向/从通信设备110路由各种进来的通信和向外的通信。

在一些实施例中,第一通信设备110可以诸如通过wlan连接(例如,wi-fi连接)建立与无线接入点160的无线连接162。在一些实施例中,第一通信设备110可以与第二通信设备172建立无线连接170(例如,诸如蓝牙连接的个域网连接)和/或有线连接171(例如,usb连接)。第二通信设备172可以被配置为通过诸如wlan连接(例如,wi-fi连接)建立与无线接入点160的无线连接173。无线接入点160可以被配置为诸如经由一个或多个调制解调器和路由器通过有线连接166连接到互联网164或另一网络。可以经由连接162、170和/或171跨越互联网164来向/从通信设备110路由将进来的通信和向外的通信。

在一些实施例中,第一通信设备110可以与卫星系统151建立无线连接150。卫星系统151可以与一个或多个地面站154建立无线连接152,所述一个或多个地面站154可以由诸如经由一个或多个调制解调器和路由器的有线连接156连接到互联网164。可以经由连接150跨越互联网164来向/从通信设备110路由将进来的通信和向外的通信。

图2是适用于实现各种实施例的示例性通信设备110的功能方块图。参考图1-图2,通信设备110可以包括第一订户身份模块(sim)接口202a,其可以接收与第一订阅相关联的第一身份模块sim204a。

在各种实施例中,sim可以是被配置为具有sim和/或通用sim(usim)应用的通用集成电路卡(uicc),使得能够接入例如gsm和/或umts网络。uicc还可以提供针对电话簿和其它应用的存储器。或者,在cdma网络中,sim可以是uicc可移除用户身份模块(r-uim)或在卡上的cdma订户标识模块(csim)。每一个sim卡可以具有cpu、rom、ram、eeprom和i/o电路。

在各种实施例中使用的sim可以包含用户帐户信息、国际移动订户身份(imsi)、sim应用工具包(sat)命令集合以及用于电话簿联系人的存储空间。sim卡可以进一步存储家庭标识符(例如,系统识别号(sid)/网络识别号(nid)对、家庭plmn(hplmn)码等),以指示sim卡网络运营商提供方。在sim卡上印有集成电路卡身份(iccid)sim序列号以用于识别。然而,sim可以是在通信设备110的存储器(例如,存储器214)的部分内实现的,以及因此不必是单独的或可移除的电路、码片或卡。

通信设备110可以包括诸如通用处理器206的至少一个控制器,该通用处理器206可以被耦合到编码器/解码器(codec)208。codec208可以继而被耦合到扬声器210和麦克风212。通用处理器206还可以被耦合到存储器214。存储器214可以是存储处理器可执行指令的非暂时性计算机可读存储介质。例如,指令可以包括通过相应的射频(rf)资源链来路由通信数据。

存储器214可以存储操作系统(os)以及用户应用软件和可执行指令。存储器214还可以存储诸如阵列数据结构的应用数据。

通用处理器206和存储器214可以分别被耦合到至少两个调制解调器处理器216a和216b。第一rf资源链可以包括第一调制解调器处理器216a,该第一调制解调器处理器216a可以执行用于与接口技术通信/控制接口技术的基带/调制解调器功能,以及可以包括一个或多个放大器和本文中通常被称为rf资源(例如,rf资源218a)的无线单元。在通信设备110中的sim204a可以使用第一rf资源链。rf资源218a可以被耦合到天线220a,以及可以执行针对通信设备110的无线服务(诸如与sim204a相关联的服务)的发送/接收功能。rf资源218a可以提供单独的发送和接收功能,或者可以包括组合发射机和接收机功能的收发机。第二rf资源链可以包括第二调制解调器处理器216b,该第二调制解调器处理器216b可以执行用于与接口技术通信/控制接口技术的基带/调制解调器功能,以及可以包括一个或多个放大器和本文中通常被称为rf资源(例如,rf资源218b)的无线单元。rf资源218b可以被耦合到天线220b,以及可以执行针对通信设备110的无线服务的发送/接收功能。rf资源218b可以提供单独的发送和接收功能,或者可以包括组合发射机和接收机功能的收发机。

在各种实施例中,包括第一调制解调器处理器216a的第一rf资源链和包括第二调制解调器处理器216b的第二rf资源链可以与不同的接口技术相关联。作为示例,一个rf资源链可以与蜂窝空中接口技术相关联,以及另一个rf资源链可以与wlan技术相关联,一个rf资源链可以与蜂窝空中接口技术相关联,以及另一个rf资源链可以与个域网(“pan”)技术相关联,一个rf资源链可以与pan技术相关联,以及另一个rf资源链可以与wlan技术相关联,一个rf资源链可以与蜂窝空中接口技术相关联,以及另一个rf资源链可以与卫星接口技术相关联,以及一个rf资源链可以与wlan技术相关联,以及另一个rf资源链可以与卫星空中接口技术相关联。不同的接口技术的其它组合包括有线的和无线的组合,可以在各种实施例中被替代,以及蜂窝空中接口技术、wlan技术、卫星接口技术和pan技术仅用作示例,以说明各种实施例的方面。

在一些实施例中,通用处理器206、存储器214、调制解调器处理器216a、216b和rf资源218a、218b可以被包括在作为片上系统的通信设备110中。在一些实施例中,sim204a和相应的接口202a可以是在片上系统外部的。进一步地,各种输入和输出设备可以被耦合到在片上系统上的组件,诸如接口或控制器。适合于在通信设备110中使用的示例性用户输入组件可以包括但不限于小键盘224、触摸屏显示器226和麦克风212。

在一些实施例中,小键盘224、触摸屏显示器226、麦克风212或其组合可以执行接收发起向外呼叫的请求的功能。例如,触摸屏显示器226可以从联系人列表接收对联系人的选择或接收电话号码。在另一个示例中,触摸屏显示器226和麦克风212中的任一者或两者可以执行接收发起向外呼叫的请求的功能。例如,触摸屏显示器226可以从联系人列表接收对联系人的选择或接收电话号码。作为另一个示例,发起向外呼叫的请求可以是采用经由麦克风212接收的语音命令的形式的。接口可以是在通信设备110中在各种软件模块与功能之间来提供的,以实现在它们之间的通信。对上文所论述的小键盘224、触摸屏显示器226和麦克风212的输入仅提供作为输入的类型的示例,该输入可以发起在通信设备110上的向外呼叫和/或发起其它动作,以及任何其它输入的类型或输入的组合可以用于各种实施例中,以在通信设备110上发起向外呼叫和/或发起其它动作。

通信设备110可以包括被配置为管理网络探测的探测管理器230。通信设备110还可以包括被配置为经由通信设备110的不同的接口技术来发送探测的探测客户端231,以及被配置为经由通信设备110的不同的接口技术来接收探测的探测服务器232。在各种实施例中,探测客户端231、探测管理器230和/或探测服务器232可以在通信设备110上是时间同步的。由于探测客户端231和探测服务器232是在同一通信设备110上操作的,因此探测客户端231和探测服务器232可能不需要彼此交换外部消息以实现时序同步。相反,在通信设备110上,在探测客户端231、探测管理器230和/或探测服务器232之间的交换可能导致时间同步。在各种实施例中,探测管理器230、探测客户端231和/或探测服务器232可以是使用在通信设备110上的相同的时钟来共享和/或操作的。以这种方式,在通信设备110上可能不需要在探测管理器230、探测客户端231和探测服务器232之间的同步和/或时序调整。

在一些实施例中,探测管理器230、探测客户端231和/或探测服务器232可以是在通用处理器206内来实现的。在一些实施例中,探测管理器230、探测客户端231和/或探测服务器232可以被实现作为单独的硬件组件(即,与通用处理器206分开)。在一些实施例中,探测管理器230、探测客户端231和/或探测服务器232可以被实现作为存储在存储器214中并由通用处理器206执行的软件应用。

在一些实施例中,探测客户端231和/或探测服务器232可以是探测管理器230的子组件。在一些实施例中,探测客户端231和/或探测服务器232可以与探测管理器230分离。在各种实施例中,探测管理器230、探测客户端231、探测服务器232、调制解调器处理器216a、216b、rf资源218a、218b和/或sim204a可以是在硬件、软件、固件或其任何组合中来实现的。

虽然在图2中示出了包括第一调制解调器处理器216a和第二调制解调器处理器216b的两个rf资源链,但是另外的rf资源链和另外的调制解调器处理器可以是包括在通信设备110中的,从而使另外的网络连接能够同时被实现。另外,有线连接可以是经由连接到通信设备110的输入/输出端口的调制解调器处理器来建立的。

图3根据各种实施例示出了用于网络探测的方法300。参考图1-图3,方法300可以是利用通信设备(例如,参考图1-图2所描述的通信设备110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独的控制器等)来实现的。例如,方法300可以是由在通信设备(例如,参考图1-图2所描述的通信设备110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独的控制器等)上运行的探测管理器(例如,探测管理器230)来实现的。

在方块302中,探测管理器可以从进行请求的应用接收网络观察请求。进行请求的应用可以是在通信设备(例如,参考图1-图2所描述的通信设备110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独的控制器等)上运行的应用。可以由进行请求的应用来发送网络观察请求以触发网络探测,来向进行请求的应用提供一个或多个网络观察。例如,进行请求的应用可以是被配置为分析网络的行为向量以检测流氓接入点攻击的安全应用,以及网络观察请求可以触发与检测流氓接入点攻击相关联的网络探测。

可以由应用来请求的示例性网络观察包括对网络延迟的确定、对接入配置的确定、对协议属性的确定和对nat配置的确定。对网络延迟的确定可以包括确定往返延迟和确定分组间延迟。对接入配置的确定可以包括确定开放端口和确定在网络上允许的协议(例如,在网络上是否正在发生icmp分组过滤)。对网络协议属性的确定可以包括确定最大的pdu分组长度、确定协议初始值(例如,初始序列号等)、确定报头签名(例如,预留的报头字段值、ipttl等)和确定在网络上的协议/版本实现方式(例如,在网络中在中间设备的tcp栈上使用的tcp版本)。对nat配置的确定可以包括确定nat设置(例如,全锥型、受限锥型、端口受限锥型、对称等)和确定nat端口分配(例如,随机的、顺序的、与src端口相关的等)。在各种实施例中,网络观察请求可以指示要由网络探测来确定的网络观察。

在方块304中,探测管理器可以建立第一接口技术的第一网络连接和第二接口技术的第二网络连接。例如,探测管理器可以控制通信设备的第一rf资源链以建立wlan连接(例如,wi-fi连接),以及控制通信设备的第二rf资源链以建立蜂窝连接。作为另一个示例,探测管理器可以控制通信设备的第一rf资源链以建立wlan连接(例如,wi-fi连接),以及控制通信设备的第二rf资源链以建立卫星连接。作为进一步的示例,探测管理器可以控制通信设备的第一rf资源链以建立蜂窝连接,以及控制通信设备的第二rf资源链以建立卫星连接。在进一步的示例中,探测管理器可以控制通信设备的第一rf资源链以建立蜂窝连接,以及控制通信设备的第二rf资源链以建立pan连接(例如,蓝牙连接)。不同的接口技术的其它组合包括有线的和无线的组合,可以在各种实现方式中被替代。蜂窝空中接口技术、wlan技术、卫星接口技术和pan技术在本文中仅作为示例来说明各种实施例的方面。

在方块306中,探测管理器可以将第一网络连接与在通信设备的处理器上运行的探测客户端相关联,以及将第二网络连接与在通信设备的处理器上运行的探测服务器相关联。与在通信设备的处理器上运行的探测客户端(例如,探测客户端231)相关联的网络和与在通信设备的处理器上运行的探测服务器(例如,探测服务器232)相关联的网络可以是基于网络配置、目标网络观察和/或接口技术的状态(例如,受信任的、受怀疑的等)的。例如,被怀疑为被流氓接入点攻击危害的接口技术可以是第一网络连接的接口技术,并且第一网络连接可以是与探测客户端相关联的,而受信任的接口技术可以是第二网络连接的接口技术,以及第二网络连接可以是与探测服务器相关联的。

在方块308中,探测管理器可以经由探测客户端来收集针对第一网络连接的第一网络设置信息,以及在方块310中,探测管理器可以经由探测服务器从第二网络连接来收集第二网络设置信息。虽然在图3中示出为按定义的顺序发生,但是方块308和方块310的操作不需要按示出的顺序来发生。在各种实施例中,方块308的操作可以发生在方块310的操作之前。在各种实施例中,方块310的操作可以发生在方块308的操作之前。在各种实施例中,方块308和方块310的操作可以同时发生。网络设置信息可以包括网络连接的地址,诸如全局ip地址、网络连接的nat配置,诸如nat设置(例如,全锥型、受限锥型、端口受限锥型、对称等)、nat端口分配(例如,随机的、顺序的、与src端口相关的等)等,以及探测客户端或探测服务器可以确定的关于各自的网络连接的任何其它信息各自可以是相互关联的。

在方块312中,探测管理器可以至少部分地基于第一网络设置信息和第二网络设置信息来生成寻址到探测服务器的探测。例如,探测管理器可以至少部分地基于各自的网络连接的地址(诸如各自的全局ip地址)来生成从探测客户端寻址到探测服务器的探测。

在各种实现方式中,可以基于比仅第一网络设置信息和第二网络设置信息多的信息来生成探测。例如,除了第一网络设置信息和第二网络设置信息之外,还可以基于网络观察请求来生成探测。

在各种实现方式中,在方块312中,可以利用基于网络观察请求、第一网络设置信息和/或第二网络设置信息的内容来生成探测。该探测可以以各种方式来生成,包括具有随机生成的内容,诸如为随机数的报头和/或有效载荷元素。例如,探测可以是icmpping分组。

在方块314中,探测管理器可以经由第一网络连接从探测客户端发送寻址到探测服务器的探测。经由第一网络连接从探测客户端发送寻址到探测服务器的探测可以包括跟踪探测由探测客户端发送的时间和/或所发送的探测的其它属性。

在方块316中,探测管理器可以经由第二网络连接在探测服务器处接收探测。经由第二网络连接在探测服务器处接收寻址到探测服务器的探测可以包括跟踪探测由探测服务器接收的时间和/或所接收的探测的其它属性。在各种实施例中,探测客户端和探测服务器可以在通信设备上是时间同步的。由于探测客户端和探测服务器是在同一通信设备上操作的,探测客户端和探测服务器可能不需要彼此交换外部消息以实现时序同步。可以在探测客户端与探测服务器之间的设备上处理同步。在实施例中,探测客户端和探测服务器可以是基于在通信设备上的相同的时钟来共享/操作的。在不需要时钟同步的情况下,在同一时钟上的共享/操作使得探测的接收时间被精确地计时。通过共享相同的时钟,在不需要在客户端与服务器之间的时序同步的情况下,可以由探测管理器来观察从探测客户端发送的和由探测服务器接收的分组的通过时间。

在方块318中,探测管理器可以基于在探测服务器处接收探测来确定网络观察。例如,探测管理器可以比较所发送的探测的发送时间和/或其它属性与所接收的探测的接收时间和/或其它属性,以确定一个或多个网络观察。可以基于将所发送的探测的发送时间和/或其它属性与所接收的探测的接收时间和/或其它属性进行对比来确定的示例性网络观察可以包括网络延迟(例如,往返延迟、分组间延迟等)、接入配置(例如,开放端口、icmp分组过滤状态等)、协议属性(例如,最大pdu分组长度、初始序列号、预留的报头字段值、ipttl、tcp版本信息等)和/或nat配置(例如,全锥型、受限锥型、端口受限锥型、对称、nat端口分配等)。作为具体的示例,探测管理器可以基于通过计算探测客户端到探测服务器网络路径的单向延迟来在探测服务器处接收寻址到探测服务器的探测,来确定网络观察。探测管理器可以通过从在探测客户端处记录的发送时间减去在探测服务器处记录的接收时间来计算单向延迟。

在方块320中,探测管理器可以将网络观察发送给进行请求的应用。进行请求的应用可以使用通过网络探测确定的网络观察。例如,进行请求的应用可以是被配置为分析网络的行为向量以检测流氓接入点攻击的安全应用,并且网络观察可以用于确定在网络中是否有流氓接入点正在操作。

在各种实施例中,在每一次从进行请求的应用接收到网络观察请求时,可以由探测管理器来执行方法300。在各种实施例中,由于响应于每一个网络观察请求可以建立新的网络连接,因此在每一次执行方法300时,可以收集诸如新的网络地址的新的网络设置信息用于第一和第二网络连接。

不论寻址是否改变,新的随机数可以在方法300的每一次执行时被插入到探测中。以这种方式,如果重复执行方法300,则方法300可以动态地生成具有不同的探测结构、探测服务器地址和内容的探测,这可以消除在当前的基于网络的探测中固有的探测模式。这可以减少敌手设备可以了解探测服务器和/或探测模式,以及阻碍或利用探测过程的机会。

图4是根据各种实施例的示出了在通信设备(例如,参考图1-图3所描述的通信设备110)之间的交互的呼叫流网络图和针对网络探测的网络。通信设备110可以与卫星系统151建立卫星接口技术的第一网络连接,以及与无线接入点160建立wlan接口技术的第二网络连接。

通信设备110可以生成寻址到在通信设备110的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独的控制器等)上运行的探测服务器的探测。在操作401中,通信设备110可以经由到卫星系统151的第一网络连接从探测客户端发送寻址到探测服务器的探测。

在操作402中,卫星系统151可将寻址到探测服务器的探测路由到地面站154。在操作403中,地面站154可以将寻址到探测服务器的探测路由到互联网164。在操作404中,寻址到探测服务器的探测可以通过互联网164被路由到无线接入点160。在操作405中,无线接入点160可以向通信设备110发送寻址到探测服务器的探测。

图4示出了如何使用由通信设备110建立的两个不同的网络连接,使得探测能够被路由通过诸如互联网164的公共网络,并且返回到通信设备110,从而使单个通信设备110能够以独立的方式操作为探测客户端和探测服务器两者。

图5根据各种实施例示出了用于网络探测的方法500。参考图1-图5,方法500可以利用通信设备(例如,通信设备110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独的控制器等)来实现。例如,方法500可以由在通信设备的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独的控制器等)上运行的探测管理器(例如,探测管理器230)来实现。除了方法500可以实现从探测客户端发送寻址到探测服务器的多个探测,方法500可以类似于参考图3所描述的方法300。

在方块302-方块310中,探测管理器可以执行参考图3所描述的方法300的类似编号方块的操作,以接收网络观察请求,建立网络连接,与网络连接相关联,以及收集网络设置信息。

在方块502中,探测管理器可以至少部分地基于第一网络设置信息和第二网络设置信息来生成寻址到探测服务器的多个探测。在各种实现方式中,多个探测可以是两个、三个、四个或更多个探测。在一些实施例中,多个探测可以是相同的。在一些实施例中,多个探测可以具有不同的报头和有效载荷值(例如,不同的大小、不同的ttl值等)。不管探测是全部相同的还是探测中的一个或多个探测是不同的,探测结构都可以在探测被发送时是可知的,因为探测管理器存在于该设备上。

在方块504中,探测管理器可以经由第一网络连接从探测客户端发送寻址到探测服务器的多个探测。在各种实施例中,探测客户端可以在每一个探测传输之间以预定的时间间隔顺序地发送多个探测。举例而言,探测管理器可以生成以及探测客户端可以发送具有固定的或随机的分组间延迟(ipd)的探测。由于探测管理器、探测服务器和探测客户端是在同一设备上运行的,探测结构和ipd值在传输时可以在探测客户端和探测服务器处是可知的。

在方块506中,探测管理器经由第二网络连接在探测服务器处接收多个探测。

在方块508中,探测管理器可以基于在探测服务器处接收寻址到探测服务器的多个探测来确定网络观察。例如,探测管理器可以确定在多个探测之间的分组间到达时间。在分组间到达时间中的显著变化可以指示:使用另一无线连接作为其回程的流氓接入点可以是在由多个探测遍历的网络路径中的,并且对分组间到达时间的网络观察可以使进行接收的应用能够识别流氓接入攻击。举例而言,使用由探测客户端发送的探测和由探测服务器生成的响应的组合,探测管理器可以作出关于网络和路径内节点行为的多个确定,包括:1)查询是否已完整到达探测服务器,和/或2)客户端响应是否已完整到达探测客户端。

在方块320中,如针对参考图3所描述的方法300的类似编号方块所描述的,探测管理器可以将网络观察发送给进行请求的应用。

图6是根据各种实施例的示出了在通信设备(例如,参考图1-图5所描述的通信设备110)之间的交互的呼叫流网络图和用于网络探测的网络。参考图1-图6,通信设备110可以与连接到第一移动网络102的基站130建立蜂窝接口技术的第一网络连接,以及与无线接入点160建立wlan接口技术的第二网络连接。流氓接入点600还可以通过例如对基站130进行欺骗,来建立到通信设备110的连接。在这样的情况下,通信设备110可能不经意地将数据发送给流氓接入点600,这可能使用与连接到第一移动网络102的基站130不同的到互联网164的回程连接。

通信设备110可以生成寻址到在通信设备110的处理器上运行的探测服务器的多个探测。在操作601中,通信设备110可以经由到基站130的第一网络连接从探测客户端发送寻址到探测服务器的多个探测中的第一探测。在操作602中,基站130可以将寻址到探测服务器的第一探测路由到第一移动网络102。在操作603中,第一移动网络102可以将寻址到探测服务器的第一探测路由到互联网164。在操作604中,寻址到探测服务器的第一探测可以通过互联网164被路由到无线接入点160。在操作605中,无线接入点160可以将寻址到探测服务器的第一探测发送给通信设备110。

在操作606中,通信设备110可以经由第一网络连接从探测客户端发送寻址到探测服务器的多个探测中的第二探测。然而,当流氓接入点可能已欺骗了基站130时,第二探测可能被发送给流氓接入点600。在操作607中,流氓接入点600可以将寻址到探测服务器的第二探测路由到互联网164。在操作608中,寻址到探测服务器的第二探测可以通过互联网164被路由到无线接入点160。在操作609中,无线接入点160可以向通信设备110发送寻址到探测服务器的第二探测。

如在图6中所示出的,通过使用由通信设备110建立的两个不同的网络连接来发送多个探测,单个通信设备110可以以独立的方式作为探测客户端和探测服务器两者来操作,以测试在各种网络中流氓行为的存在。例如,通过比较在探测服务器处接收的第一探测和第二探测的通过时间或传输延迟,通信设备110可以检测在网络路径中流氓接入点600的存在。

图7根据各种实施例示出了用于网络探测的方法700。参考图1-图7,方法500可以利用通信设备(例如,通信设备110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独的控制器等)来实现。例如,方法500可以由在通信设备的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独的控制器等)上运行的探测管理器(例如,探测管理器230)来实现。除了方法700可以实现从探测服务器发送寻址到探测客户端的探测,方法700可以类似于参考图3所描述的方法300。

在方块302-方块310中,探测管理器可以执行参考图3所描述的方法300的类似编号方块的操作,以接收网络观察请求,建立网络连接,与网络连接相关联,以及收集网络设置信息。

在方块702中,探测管理器可以至少部分地基于第一网络设置信息和第二网络设置信息来生成寻址到探测服务器的探测和寻址到探测客户端的探测。例如,探测管理器可以至少部分地基于诸如各自的全局ip地址的各自的网络连接的地址来生成从探测客户端寻址到探测服务器与从探测服务器寻址到探测客户端的各自的探测。

在方块314和方块316中,探测管理可以执行参考图3所描述的方法300的类似编号方块的操作,以经由第一网络连接从探测客户端发送寻址到探测服务器的探测,以及经由第二网络连接接收寻址到探测服务器的探测。

在方块704中,探测管理器可以经由第二网络连接从探测服务器发送寻址到探测客户端的探测。经由第二网络连接从探测服务器发送寻址到探测客户端的探测可以包括跟踪探测由探测服务器发送的时间和/或所发送的探测的其它属性。

在方块706中,探测管理器可以经由第一网络连接在探测客户端处接收探测。经由第一网络连接在探测客户端处接收寻址到探测客户端的探测可以包括跟踪探测由探测客户端接收的时间和/或所接收的探测的其它属性。

在方块708中,探测管理器可以基于在探测服务器处接收探测和在探测客户端处接收探测来确定网络观察。例如,探测管理器可以比较所发送的探测的发送时间和/或其它属性与所接收的探测的接收时间和/或其它属性,以确定一个或多个网络观察。可以基于这样的比较来确定的示例性网络观察可以包括网络延迟(例如,往返延迟、分组间延迟等)、接入配置(例如,开放端口、icmp分组过滤状态等)、协议属性(例如,最大pdu分组长度、初始序列号、预留的报头字段值、ipttl、tcp版本信息等),和/或nat配置(例如,全锥型、受限锥型、端口受限锥型、对称、nat端口分配等)。作为具体的示例,通过计算从探测客户端到探测服务器的前向路径的单向延迟和从探测服务器到探测客户端的反向路径延迟,探测管理可以基于在探测服务器处接收寻址到探测服务器的探测来确定网络观察。探测管理器可以通过从在探测客户端处记录的发送时间减去在探测服务器处记录的接收时间来计算前向路径延迟。类似地,探测管理器可以通过从在探测服务器处记录的发送时间减去在探测客户端处记录的接收时间来计算反向路径延迟。

在方块320中,如参考图3所描述的方法300的类似编号方块所描述的,探测管理器可以将网络观察发送给进行请求的应用。

各种实施例可以在各种通信设备中的任何一者中实现,在图8中示出了在所述通信设备上的示例(例如,通信设备800)。参考图1-图8,通信设备800可以类似于通信设备110,以及可以实现所描述的方法300、方法500和/或方法700。

通信设备800可以包括被耦合到触摸屏控制器804和内部存储器806的处理器802。处理器802可以是被设计为针对通用或专用处理任务的一个或多个多核集成电路。内部存储器806可以是易失性或非易失性存储器,以及还可以是安全的和/或加密的存储器,或不安全的和/或未加密的存储器,或其任何组合。触摸屏控制器804和处理器802还可以被耦合到触摸屏面板812,诸如电阻传感触摸屏、电容传感触摸屏、红外传感触摸屏等。此外,通信设备800的显示器不需要具有触摸屏能力。

通信设备800可以具有被耦合到处理器802和一个或多个天线810的一个或多个蜂窝网络收发机808,以及被配置为用于发送和接收蜂窝通信。收发机808和天线810可以与本文中提到的电路一起使用来实现各种实施例的方法。通信设备800可以包括一个或多个sim卡(例如,sim813),其被耦合到收发机808和/或处理器802,并且如所描述的来配置。通信设备800可以包括蜂窝网络无线调制解调器芯片817,其实现经由蜂窝网络的通信,并被耦合到处理器802。

通信设备800可以具有被耦合到处理器802和一个或多个天线811的一个或多个wlan收发机816(例如,一个或多个wi-fi收发机),以及被配置为用于发送和接收wlan通信。收发机816和天线811可以与本文中提到的电路一起使用来实现各种实施例的方法。通信设备800可以包括wlan无线调制解调器码片818,其实现经由wlan的通信并被耦合到处理器802。

通信设备800可以具有被耦合到处理器802和一个或多个天线829的一个或多个蓝牙收发机821,以及被配置为用于发送和接收蓝牙通信。收发机821和天线829可以与本文中提到的电路一起使用,来实现各种实施例的方法。通信设备800可以包括蓝牙无线调制解调器芯片823,其能够经由蓝牙进行通信并被耦合到处理器802。

通信设备800可以具有被耦合到处理器802和一个或多个天线825的一个或多个卫星收发机824,并且被配置为用于发送和接收蓝牙通信。收发机824和天线825可以与本文中提到的电路一起使用来实现各种实施例的方法。通信设备800可以包括卫星无线调制解调器芯片826,其实现经由卫星网络的通信并被耦合到处理器802。

通信设备800还可以包括用于提供音频输出的扬声器814。通信设备800还可以包括由塑料、金属或材料组合构成的壳体820,用于容纳本文中所论述的组件中的全部或一些组件。通信设备800可以包括被耦合到处理器802的电源822,诸如一次性电池或可充电电池。可充电电池还可以被耦合到外围设备连接端口,以接收来自通信设备800的外部的源的充电电流。诸如usb端口的外围设备连接端口可以连接到处理器802,并且可以被配置为经由有线接口技术建立的有线网络连接,并且可以与本文中提到的电路一起使用来实现各种实施例的方法。通信设备800还可以包括用于接收用户输入的物理按钮828。通信设备800还可以包括用于开启和关闭通信设备800的电源按钮827。

前述方法描述和处理流程图仅作为说明性示例来提供,以及不旨在要求或暗示必须以给出的顺序来执行各种实施例的操作。如本领域技术人员将理解的是,在前述实施例中的操作的顺序可以按任何顺序来执行。诸如“此后”、“然后”、“下一步”等词语并不旨在限制操作的顺序;这些词语仅用于引导读者通读对方法的描述。进一步地,任何例如使用冠词“一个(a)”、“一个(an)”或“这个”对单数权利要求元素的引用,不应被解释为将元素限制为单数。

结合本文所公开的实施例所描述的各种说明性逻辑块、模块、电路和算法操作可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,各种说明性组件、方块、模块、电路和操作通常按照它们的功能已经在上文进行了描述。这样的功能是被实现为硬件还是软件取决于特定的应用和对整个系统施加的设计约束。熟练的技术人员可以针对每一个特定的应用以不同的方式实现所描述的功能,但是这样的实现方式决定不应被解释为导致背离各种实施例的范围。

用于实现结合本文所公开的方面所描述的各种说明性逻辑单元、逻辑块、模块和电路的硬件可以利用被设计为执行本文所描述的功能的通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门控(fpga)或其它可编程逻辑器件、分立门或晶体管逻辑单元、分立硬件组件或其任何组合来实现或执行。通用处理器可以是微处理器,但在替代的方案中,处理器可以是任何常规的处理器、控制器、微控制器或状态机。处理器还可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、与dsp内核相结合的一个或多个微处理器,或任何其它这样的配置。或者,一些操作或方法可以由特定于给定功能的电路来执行。

在一个或多个示例性方面中,所描述的功能可以在硬件、软件、固件或其任何组合中实现。如果在软件中实现,则功能可以作为一个或多个指令或代码存储在非暂时性计算机可读存储介质或非暂时性处理器可读存储介质上。本文所公开的方法或算法的操作可以体现在处理器可执行软件模块中,该模块可以存在于非暂时性计算机可读或处理器可读存储介质上。非暂时性计算机可读或处理器可读存储介质可以是可以由计算机或处理器访问的任何存储介质。通过举例而非限制性的方式,这样的非暂时性计算机可读或处理器可读存储介质可以包括ram、rom、eeprom、闪存、cd-rom或其它光盘存储、磁盘存储或其它磁存储设备,或可以用于以指令或数据结构形式存储期望的程序代码、以及可以由计算机访问的任何其它介质。如本文所使用的,磁盘和光盘包括压缩光盘(cd)、激光光盘、光盘、数字多功能光盘(dvd)、软盘和蓝光光盘,其中磁盘通常磁性地复制数据,而光盘则利用激光来光学地复制数据。上述组合也包括在非暂时性计算机可读和处理器可读介质的范围内。另外,方法或算法的操作可以存在于在非暂时性处理器可读存储介质和/或计算机可读存储介质上的一个或任何组合或代码和/或指令集合,它们可以合并到计算机程序产品中。

提供所公开实施例的前文描述,以使本领域中的任何技术人员能够制造或者使用各种实施例。对这些实施例的各种修改对于本领域技术人员将是显而易见的,并且在不背离权利要求的范围情况下,本文定义的通用原则可以应用于一些实施例。因此,本公开内容不旨在限于本文所示出的示例,而是要符合与所附权利要求以及本文所公开的原理和新颖特征相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1