CN109314701B - 使用可用网络连接的网络路径探测 - Google Patents

使用可用网络连接的网络路径探测 Download PDF

Info

Publication number
CN109314701B
CN109314701B CN201780033791.XA CN201780033791A CN109314701B CN 109314701 B CN109314701 B CN 109314701B CN 201780033791 A CN201780033791 A CN 201780033791A CN 109314701 B CN109314701 B CN 109314701B
Authority
CN
China
Prior art keywords
probe packet
communication device
reply
header information
nat
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201780033791.XA
Other languages
English (en)
Other versions
CN109314701A (zh
Inventor
S·A·艾哈迈扎德
S·M·达斯
R·古普塔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN109314701A publication Critical patent/CN109314701A/zh
Application granted granted Critical
Publication of CN109314701B publication Critical patent/CN109314701B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2571NAT traversal for identification, e.g. for authentication or billing 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2575NAT traversal using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/121Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
    • H04W12/122Counter-measures against attacks; Protection against rogue devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/16Discovering, processing access restriction or access information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

各种实施例提供实现通过经由网络连接将探测包发送到STUN服务器和接收探测包答复用通信装置进行的网路路径探测的方法、装置和非暂时性处理器可读存储媒体。所述通信装置可递增计数器且发射测试探测包,所述测试探测包被配置成在第一接入点NAT处丢掉,从而使所有后续NAT释放其IP/端口映射。所述通信装置可将另一探测包发送到所述STUN服务器且接收探测包答复。所述通信装置可比较所述第一探测包答复与所述第二探测包答复以确定所述网路路径内的所述最后IP地址是否匹配。通过连续地递增所述计数器且查询接入点,所述通信装置可确定沿着任一给定网路路径排布的接入点的数目。NAT服务器的添加或意料之外的数目个NAT服务器的存在可指示恶意接入点的存在。

Description

使用可用网络连接的网络路径探测
背景技术
基于网络的观测位列获得关于网络拓扑结构及路径中装置的信息的最有效方法当中。网络探测也被视为对于恶意网络装置检测非常有效。当前基于网络的探测方法使用专用服务器充当探测包(probe)产生器或探测包槽。举例来说,在当前基于网络的探测方法中,探测客户端装置常常将探测包发射到专用服务器。因此,在当前基于网络的探测方法中,探测客户端装置必须提前知道专用服务器信息以起始与专用服务器的连接,且专用服务器需要针对待完成之探测包工作起来并运行。因此,用于网络探测之当前方法不可升级,且取决于网络访问规则来启用网络探测。另外,在当前基于网络的探测方法中,恶意装置(例如,恶意接入点)可学习服务器且使用相同专用服务器信息来阻止探测过程。举例来说,在当前基于网络的探测方法中,每一探测包常常被定址到相同服务器地址,由此允许探测包由恶意装置识别和处置以阻止探测过程。需要避开恶意装置吸收探测包的能力的方法。
发明内容
各种实施例可包含方法、用于实施所述方法的装置和非暂时性处理器可读存储媒体,所述非暂时性处理器可读存储媒体包含被配置成使处理器通过通信装置执行用于网络探测的方法的操作的指令。各种实施例可包含将寻址到用于NAT的简单遍历实用程序(STUN)服务器的第一探测包从所述通信装置经由网络连接发射到第一网络地址转译器(NAT),和从所述STUN服务器接收第一探测包答复。各种实施例可进一步包含递增探测包超时计数器,和经由所述网络连接发射包含所述探测包超时计数器的当前值的第一测试探测包,其中所述第一测试探测包可被配置成使所述第一NAT维持活动映射且丢掉所述第一测试探测包。各种实施例可进一步包含经由所述网络连接从所述通信装置发射寻址到所述STUN服务器的第二探测包,接收来自所述STUN服务器的第二探测包答复,和比较所述第一探测包答复与所述第二探测包答复。
在一些实施例中,所述第一探测包和所述第二探测包可包含通信装置因特网协议(IP)地址、通信装置通信端口编号、STUN服务器IP地址、STUN服务器通信端口编号和用以发射所述探测包的通信。
一些实施例可包含使用比较所述第一探测包答复与所述第二探测包答复的结果确定所述第一探测包答复内含有的信息是否匹配所述第二探测包答复内含有的信息。此类实施例可进一步包含响应于确定所述第一探测包答复内含有的所述信息与所述第二探测包答复内含有的所述信息不匹配,递增所述探测包超时计数器,和经由所述网络连接发射包含所述探测包超时计数器的所述递增值的第二测试探测包,其中所述第二测试探测包可被配置成使所述第一NAT和第二NAT维持所述活性映射和使所述第二NAT丢掉所述第二测试探测包。此类实施例可进一步包含经由所述网络连接从所述通信装置发射寻址到所述STUN服务器的第三探测包,接收来自所述STUN服务器的第三探测包答复,和比较所述第三探测包答复与所述第二探测包答复。此类实施例可进一步包含响应于确定所述第一探测包答复内含有的所述信息匹配所述第二探测包答复内含有的信息,确定网络路径中的NAT的数目等于所述探测包超时计数器的所述当前值。此类实施例可进一步包含响应于确定所述网络路径中的NAT的所述确定的数目不匹配NAT的预定数目,确定恶意接入点存在于所述网络路径中。在此类实施例中,所述第一探测包答复内含有的所述信息可包含最后IP地址和端口编号,且所述第二探测包答复内含有的所述信息可包含第二最后IP地址和端口编号。
一些实施例可包含在发射所述第一探测包前将所述探测包超时计数器初始化到零。在此类实施例中,可将多个计算装置的所述IP地址和本地端口映射到所述第一NAT的相同全局IP地址和全局端口。
另外实施例可包含一种通信装置,其具有收发器和配置有执行上文概述的方法的操作的处理器可执行指令的处理器。另外实施例包含一种通信装置,其具有用于执行上文概述的方法的功能的装置。另外实施例可包含一种非暂时性处理器可读存储媒体,处理器可执行指令存储于其上,所述处理器可执行指令被配置成使通信装置的处理器执行上文概述的方法的操作。
附图说明
并入本文中并且构成本说明书的部分的附图说明示范性实施例,并且与上文给出的一般描述和下文给出的详细描述一起用以解释各种实施例的特征。
图1是适合与各种实施例一起使用的网络的通信系统框图。
图2是说明根据各种实施例的通信装置的框图。
图3是说明根据各种实施例的用于网络探测的通信装置与网络之间的交互的框图。
图4是说明根据各种实施例的用于网络探测的通信装置与网络之间的交互的框图。
图5是说明根据各种实施例的用于用通信装置网络探测的方法的过程流程图。
图6是说明根据各种实施例的用于用通信装置网络探测的方法的过程流程图。
图7是说明根据各种实施例的用于用通信装置网络探测的方法的过程流程图。
图8是适合于实施一些实施例的通信装置的组件框图。
具体实施方式
将参看附图详细描述各种实施例和实施方案。在可能的情况下,将在整个图式中使用相同附图标号来指代相同或相似部分。对特定实例和实施方案进行的参考是出于说明性目的,且不希望限制本公开或权利要求书的范围。
术语“通信装置”和“计算装置”在本文中互换地使用以指代以下各项中的任何一个或全部:蜂窝电话、智能电话、个人或移动多媒体播放器、个人数据助理(PDA)、膝上计算机、平板计算机、智能本、掌上型计算机、无线电子邮件接收器、具多媒体因特网功能的蜂窝电话、无线游戏控制器,和包含可编程处理器和存储器和用于建立无线通信路径且经由无线通信路径发射/接收数据的电路系统的类似个人电子装置。各种方面可在通信装置中有用,例如,移动通信装置(例如,智能电话),且因此,在各种实施例的描述中提到此类装置。然而,所述实施例可在能够同时建立两个不同网络连接的任何电子装置中有用。
例如移动通信装置(例如,智能电话)的通信装置可使用多种接口技术,例如,有线接口技术(例如,通用串行总线(USB)连接等)和/或空中接口技术(又称为无线电接入技术)(例如,第三代(3G)、第四代(4G)、长期演进(LTE)、Edge、蓝牙、Wi-Fi、卫星等)。通信装置可在相同时间(例如,同时)经由这些接口技术中的一个以上建立到网络(例如,因特网)的连接。举例来说,移动通信装置可在移动通信装置可建立到因特网连接的Wi-Fi接入点的无线局域网(WLAN)网络连接(例如,Wi-Fi网络连接)的同时经由蜂窝塔或基站建立到因特网的LTE网络连接。通信装置同时建立两个不同网络连接的能力可通过确定网络访问路径中的网络地址转译器的数目来实现用于供网络探测的有线和无线通信装置的解决方案。
如本文中所使用,术语“NAT”和“接入点”可互换地用以意指运行网络访问转译服务的任何网络流量路径接入点。网络地址转译器(NAT)是使用将一或多个通信装置的因特网协议(IP)地址空间(即,第一IP地址空间)映射到例如由互联网服务提供商(ISP)指派的公共IP地址的另一共同IP地址(即,共享IP地址空间)的方法的网络接入点。每一网络流由其五元组(即,源IP、源端口、目的地IP、目的地端口、协议)识别。网络流量路径中的每一NAT可在转译表中维持个别IP地址和端口到全局/共同IP地址空间和端口的唯一映射的记录。可将关于目的地IP地址和端口的信息与源映射相关联地存储。每一包含有包含源IP地址、源端口、目的地IP地址和目的地端口的报头信息。当包越过接入点时,NAT可修改来自不同源的数据流的IP包报头。当包从网络计算装置向外流过NAT时,可更改IP包报头以将某一匿名提供到发送装置,同时越过接入点的返回数据流可具有其基于NAT的唯一映射而映射到原始源装置的IP包报头。从本地网络内发射的包可对外部观测员显得源自接入点且返回到接入点,而非本地通信装置。可因此将本地网络上的多个计算装置的IP地址空间对因特网隐藏。
由网络流量路径中的每一NAT产生的映射可在不活动周期后过期。每一NAT可从转译表去除用于非活动业务流的IP地址转译。映射过期的短持续时间可导致当通信装置结束和开始与新主机的通信时频繁释放和更新IP地址映射。对于处于网络流量路径中的每一NAT,存在一单独的IP映射,其中前一NAT的全局/共同IP地址(例如,公共IP地址)充当用于当前NAT的源IP。每一映射可具有单独的过期持续时间,在所述持续时间后,可释放相应映射。因为每一NAT需要定期的数据流活动来保持活性,所以网络流量路径中存在的NAT越多,那么通信装置就需要越多的功率资源来维持活动数据流映射。
处于NAT“后”的通信装置可执行请求通信装置映射到的公共IP地址的应用程序。公共地址可经由实施用于NAT的会话遍历实用程序(STUN)协议的服务器发现。STUN服务器可使通信装置能够确定NAT映射的全局IP地址、全局端口和过期持续时间。由STUN服务器提供到请求通信装置的信息还可用以确定NAT设置/模型,例如,完全圆锥型、限制圆锥型、端口限制圆锥型或对称。另外,STUN服务器报告可提供可用以确定NAT的端口指派方法(例如,随机、依序或源端口相关)的信息。
定位于网络流量路径中的最后一个NAT的公共侧上的STUN服务器可从处于NAT后的通信装置接收请求包(被称作“探测包”),且可返回网络流量路径中的最后一个NAT的公共IP地址。因此,本地网络上的任一通信装置可将探测包发射到STUN服务器,且随后接收通信装置的公共IP地址和端口。
恶意接入点是可造成严重安全性风险的未授权网络接入点。如果由恶意作用者(攻击者)安装,那么接入点可提供对网络数据流的访问,由此使攻击者能够执行修改发送到受害者的内容的多种网络攻击、伪造数字证书和公共密钥、域名服务器(DNS)欺骗、密码拦截和记录等。因此,未检测到的恶意接入点到网络流量路径内的引入可带来严重隐私和其它风险。随着通信装置获得更多连接性选项(例如,softAP、飞蜂窝、合并的无线广域网(WWAN)和WiFi),攻击向量的数目继续增加。另外,本地网络中的未授权的NAT的存在对联网通信装置的功率资源创造额外应变,这必须花费能量维持恶意接入点以及合法NAT上的活动映射。
各种实施例提供实现通过充分利用经由网络地址转译器(NAT)的网络连接的正常功能性用通信装置进行的网络探测的方法、装置和非暂时性处理器可读存储媒体。各种实施例包含通信装置建立经由第一NAT的网络连接,和通过所述网络连接发射寻址到经由NAT的UDP(用户数据报协议)的简单遍历(STUN)服务器的探测包。所述第一NAT基于为到通信装置的网络流量路径中的第一NAT,可被称作“近NAT”。发送到STUN服务器的探测包使到STUN服务器的通信路径中的每一NAT设置用于通信装置的新网络地址转译映射。响应于所述探测包,STUN服务器将发送探测包答复到在同一本地网络连接上的通信装置。在接收到来自STUN服务器的探测包答复后,通信装置可将探测包超时计数器递增到“1”,用于在下一轮探测中使用。通信装置可然后经由网络连接发射测试探测包(被称作“第一测试探测包”),其中第一测试探测包包含探测包超时计数器。将测试探测包超时计数器设定到“1”使第一NAT维持针对通信装置的活动地址转译映射,但丢掉测试探测包。在丢掉测试探测包过程中,NAT可避免将测试探测包发射到在到STUN服务器的节点链中的下一个节点。由于在第一NAT上游的NAT不接收测试探测包,因此那些NAT将丢掉或删除针对通信装置的地址转译映射。因此,在这阶段,在到STUN服务器的连接中的仅第一NAT将维持针对通信装置的活动地址转译映射。
通信装置可然后经由通过第一NAT的网络连接发射寻址到STUN服务器的第二探测包。当将第二探测包中继到沿着网络流量路径从第一NAT逐渐更远定位的每一NAT时,将产生新地址转译映射。STUN服务器再次经由通过所有NAT的链路将探测包答复发送回到通信装置。通信装置可接收来自STUN服务器的第二探测包答复。通信装置可然后比较第一探测包答复中的端口和IP地址与第二探测包答复中的端口和IP地址以确定在第一探测包答复中报告的IP地址和端口编号是否匹配在第二探测包答复中报告的IP地址和端口编号。如果与第一与第二探测包答复相关联的端口和IP地址匹配,那么通知通信装置在通信装置与STUN服务器之间只存在一个NAT。
如果与第一与第二探测包答复相关联的IP地址不匹配,那么这指示在网络流量路径中存在额外NAT(即,在第一NAT外的至少一个NAT)。在那种情况下,通信装置可再次递增探测包超时计数器(这次到“2”),用于在下一轮探测中使用。通信装置可然后经由网络连接发射第二测试探测包,其中第二测试探测包包含探测包超时计数器。将探测包超时计数器设定到“2”使到STUN服务器的通信路径中的第一NAT和下一个NAT都维持用于通信装置的活动地址转译映射,但丢掉测试探测包。在丢掉测试探测包过程中,NAT可删除接收的包数据或简单地避免将测试探测包发射到在到STUN服务器的节点链中的下一个节点。由于沿着网络流量路径比第二NAT逐渐更远地定位的NAT不接收测试探测包,因此那些NAT将丢掉或删除针对业务流的地址转译映射。因此,在这阶段,在到STUN服务器的连接中的仅第一和第二NAT将维持针对通信装置的活动地址转译映射。
通信装置可然后经由通过第一NAT的网络连接发射寻址到STUN服务器的第三探测包。当将第二探测包从第二NAT中继到沿着网络流量路径逐渐更远定位的每一NAT时,由于删除了前一地址转译映射,因此每一NAT将产生新地址转译映射。STUN服务器再次经由通过所有NAT的链路将探测包答复(第三探测包答复)发送回到通信装置。通信装置可接收来自STUN服务器的第三探测包答复。通信装置可然后比较第二探测包答复中的端口和IP地址与第三探测包答复中的端口和IP地址以确定与第二探测包答复相关联的端口和IP地址是否匹配与第三探测包答复相关联的端口和IP地址。如果与第一与第二探测包答复相关联的端口和IP地址匹配,那么通知通信装置在通信装置与STUN服务器之间存在两个NAT。因此,探测包超时计数器中的值等于到STUN服务器的通信路径中的NAT的数目。
如果与第二与第三探测包答复相关联的端口和IP地址不匹配,那么这指示在网络流量路径中存在额外NAT(即,在第一NAT外的至少一个NAT)。在那种情况下,通信装置可重复递增探测包超时计数器的过程,发送包含那个计数器的另一探测包以使等于那个计数器值的NAT维持针对所述服务器的地址转译映射,同时后续NAT删除其地址转译映射,且接着将另一探测包发送所述STUN服务器。可将这探测过程重复许多次,直到两个探测包答复含有匹配的端口和IP地址。通信装置然后确定到STUN服务器的路径中的NAT的数目等于探测包超时计数器的值。
合法连接常使用NAT提供服务到多个数据流。恶意接入点可使用合法网络连接作为回程,但必须运行单独的NAT服务以便映射到合法公共流。网络设计师通常将NAT的数目保持为最小以优化网络性能,从而使NAT的数目的改变为罕见的事件。用户装置可储存在给定网络流量路径中操作的NAT的预定数目。根据各种实施例的确定在网络流量路径内的NAT的数目可实现冗余NAT的检测,由此指示恶意接入点的存在。
各种实施例可包含具有在通信装置的处理器上(例如,在通信装置的应用处理器上、在通信装置的专用处理器上、在通信装置的调制解调器处理器上或在通信装置的任何一或多个处理器上)运行的探测包管理器的通信装置。探测包管理器可将探测包和探测包答复发送到网络和从网络接收探测包和探测包答复,如上所概述且在下文更详细地描述。
根据各种实施例,探测包管理器可产生被配置成使探测包管理器能够确定在网络流量路径中操作的NAT的数目的探测包。所述一或多个探测包可寻址到处于网络流量路径的“公共侧”上的已知STUN服务器。所述一或多个探测包可具有变化内容,例如,不同报头和/或不同有效负载(例如,插入到报头和/或有效负载内的随机数)。探测包管理器可经由网络发送和接收寻址到STUN服务器的一或多个探测包。探测包管理器可追踪探测包超时计数器(即,NAT计数器)、发送的探测包的数目和任何接收到的探测包答复。探测包管理器可经由第一NAT/接入点建立网络连接,且使通信装置与第一NAT相关联。
寻址到STUN服务器的探测包可经由网络连接从通信装置发送。可经由运行在网络流量路径内操作的NAT服务的一或多个接入点将探测包从网络连接导引到STUN服务器。通信装置可将探测包发送到STUN服务器。探测包可含有识别发射通信装置和目标目的地服务器的五元组(源IP、源端口、目的地IP、目的地端口、协议)。当探测包路过网络流量路径时,第一NAT(即,近NAT)执行第一地址转译,沿着网络流量路径的每一后续NAT节点亦将如此,包含距通信装置最远的NAT节点(“远NAT”)。
探测包管理器可接收和记录由STUN服务器发送到通信装置的探测包答复。探测包答复可包含用于网络流量路径中的最后NAT的端口和IP地址信息。
探测包管理器可将“探测包超时”计数器设定到1,且可然后将测试探测包发送到第一NAT。第一NAT可接收测试探测包,确定本地流仍然在活动,且维持针对本地流的NAT映射。然而,因为探测包超时计数器等于一,且第一NAT是从通信装置的一个跃点,所以第一NAT将丢掉测试探测包。结果,网络流量路径中的后续NAT将不接收测试探测包,且将确定本地流非活动,且因此将释放其针对其相应NAT的相应NAT映射。
通信装置的探测包管理器可然后将另一探测包发送到STUN服务器。针对第一NAT(即,近NAT)的NAT映射保持活动,但随着探测包越过每一额外NAT,必须产生新映射。如同第一探测包,STUN服务器将探测包答复发送到通信装置,所述答复答复包含用于网络流量路径中的最后NAT的端口和IP地址信息。探测包管理器可比较这端口和IP信息(即,第二探测包答复)与先前接收到的信息(即,第一探测包答复)。如果信息不同,那么在网络流量路径中存在另一未考虑的NAT节点(即,不止仅第一NAT节点)。
探测包管理器可将探测包超时计数器递增到2,且将另一测试探测包发送到第一NAT。第一NAT接收测试探测包,确定本地流仍然在活动,且维持针对本地流的NAT映射。因为探测包超时计数器的值大于第一NAT节点在网络业务流中的位置,所以第一NAT将测试探测包中继到下一个NAT。根据标准网络协议,每一NAT将探测包超时计数器递减1,这是因为NAT表示通信路径中的一个跃点,并且如果计数器大于0,那么NAT将包发射到通信路径中的下一个节点。下一个NAT通过接收测试探测包确定本地流仍然在活动,维持先前产生的网络地址转译映射。下一个NAT然后将计数器递减1,如果探测包超时计数器大于0,那么将测试探测包发射到通信路径中的下一个节点,并且如果探测包超时计数器的值是0,那么丢掉测试探测包(即,不发射包)。因此,一旦在递减后NAT发现探测包超时计数器为“0”,那么沿着网络流量路径定位得更远的NAT将不接收测试探测包。当沿着网络流量路径定位得更远的NAT未能接收另外的包时,NAT将确定本地流非活动,且因此将释放(即,删除)其用于在通信装置与STUN服务器之间的业务流的相应网络地址转译映射。
探测包管理器可再次递增探测包超时计数器,且将探测包发送到STUN服务器,且可接收含有最后NAT端口和IP地址的另一探测包答复。通信装置可对照最后接收到的最后NAT端口和IP地址(即,前一探测包答复)比较这条信息以确定是否已发生改变。如果在两组接收到的信息之间不存在差异,那么最后考虑的NAT是最后一个跃点(即,远NAT)。如果在两组接收到的信息之间存在差异,那么通信装置的探测包管理器可继续递增探测包超时计数器当前值和发送查询,直到确定处于网络流量路径内的NAT的总数。
因此,在各种实施例中,探测包管理器可通过发送测试探测包来维持到已知NAT节点的链路,其中每一探测包中的探测包超时计数器设定到对于包到达已知NAT节点所必要的在网络路径中的跃点的数目。这使网络流量路径中处于已知节点外的后续NAT节点释放其NAT映射。探测包管理器可然后将另一探测包发送到STUN服务器,由此需要在已知NAT节点外的NAT节点产生新NAT映射。探测包管理器可然后对照先前接收到的一组最后NAT信息比较接收到的最后NAT IP和端口,以确定是否存在在网络流量路径中操作的未考虑的NAT服务。各种实施例可使探测包管理器能够通过用每一探测包将探测包超时计数器递增到STUN服务器来计数NAT节点/服务,直到从STUN服务器接收的返回的最后NAT端口和IP地址匹配在前一探测包答复中接收的信息。各种实施例可使探测包管理器能够对照NAT节点/服务的预定或预期数目比较在网络流量路径中操作的NAT节点/服务的确定(即,计数)的数目,以检测是否已在流量路径中添加新(即,潜在恶意)NAT节点/服务。如果通过迭代包发射过程计数的NAT节点的数目不匹配NAT节点的预期数目(例如,由网络管理员提供的值),那么未考虑的NAT存在于网络访问路径内,并且有可能是恶意接入点。
各种实施例可实施于多种通信系统100内,其实例说明于图1中。移动网络102典型地包含多个蜂窝式基站(例如,第一基站130)。网络102还可被所属领域的技术人员称作接入网络、无线电接入网络、基站子系统(BSS)、通用移动电信系统(UMTS)地形无线电接入网络(UTRAN)等。网络102可使用相同或不同无线接口技术和/或物理层。在实施例中,基站130可由一或多个基站控制器(BSC)控制。也可以使用替代网络配置且实施例不限于所说明的配置。
第一通信装置110可通过到第一基站130的蜂窝连接132与所述网络102通信。第一基站130可通过有线连接134与移动网络102通信。
可通过双向无线通信链路进行蜂窝连接132,所述无线通信链路例如全球移动通信系统(GSM)、UMTS(例如,长期演进(LTE))、频分多址(FDMA)、时分多址(TDMA)、码分多址(CDMA)(例如,CDMA 1100 1x)、WCDMA、个人通信(PCS)、第三代(3G)、第四代(4G)、第五代(5G)或其它移动通信技术。在各种实施例中,通信装置110可在预占由基站130管理的小区后访问网络102。
网络102可由公共交换电话网络(PSTN)124和/或因特网164互连,跨所述公共交换电话网络(PSTN)124和/或因特网164,网络102可导引到/从通信装置110的各种传入和传出通信。
在一些实施例中,第一通信装置110可建立与无线接入点160的无线连接162,例如,通过WLAN连接(例如,Wi-Fi连接)。在一些实施例中,第一通信装置110可建立与第二通信装置172的无线连接170(例如,个人区域网络连接,例如,蓝牙连接)和/或有线连接171(例如,USB连接)。第二通信装置172可被配置成建立与无线接入点160的无线连接173,例如,通过WLAN连接(例如,Wi-Fi连接)。无线接入点160可被配置成通过有线连接166连接到因特网164或另一网络,例如,经由一或多个调制解调器和路由器。可跨因特网164经由连接162、170和/或171将传入和传出通信导引到通信装置110/从通信装置110导引传入和传出通信。在一些实施例中,接入点160可被配置成在将相应数据流导引到因特网164前运行将第一通信装置110和第二通信装置172的本地网络地址映射到公共IP地址和端口的NAT服务。
图2是适合于实施各种实施例的实例通信装置110的功能框图。参看图1至2,通信装置110可包含第一订户身份模块(SIM)接口202a,其可接收与第一预订相关联的第一身份模块SIM 204a。
在各种实施例中,SIM可为通用集成电路卡(UICC),其配置有SIM和/或通用SIM(Universal SIM,USIM)应用程序,从而实现对(例如)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卡网络运营商提供商。集成电路卡身份(ICCID)SIM序列号打印在SIM卡上以供识别。然而,SIM可实施于通信装置110的存储器(例如,存储器214)的一部分内,且因此不需要为单独的或可去除的电路、芯片或卡。
通信装置110可包含至少一个可耦合到译码器/解码器(编解码器)208的控制器,例如,通用处理器206。编解码器208又可耦合到扬声器210和麦克风212所述通用处理器206还可耦合到存储器214。存储器214可为存储处理器可执行指令的非暂时性计算机可读存储媒体。举例来说,所述指令可包含通过对应的射频(RF)资源链导引通信数据。
存储器214可存储操作系统(OS),以及用户应用程序软件和可执行指令。存储器214还可存储应用程序数据,例如,阵列数据结构。
通用处理器206和存储器214可各耦合到至少两个调制解调器处理器216a和216b。第一RF资源链可包含可执行基带/调制解调器功能以用于与接口技术通信/控制接口技术的第一调制解调器处理器216a,且可包含一或多个放大器和无线电,在本文中大体被称作RF资源(例如,RF资源218a)。通信装置110中的SIM 204a可使用第一RF资源链。RF资源218a可耦合到天线220a,且可执行通信装置110的针对无线服务(例如,与SIM204a相关联的服务)的发射/接收功能。RF资源218a可提供单独的发射和接收功能性,或可包含组合发射器与接收器功能的收发器。第二RF资源链可包含可执行基带/调制解调器功能以用于与接口技术通信/控制接口技术的第二调制解调器处理器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中。在一些实施例中,SIM 204a和对应接口202a可在系统芯片外部。另外,各种输入和输出装置可耦合到芯片上系统上的组件,例如,接口或控制器。适合于在通信装置110中使用的实例用户输入组件可包含(但不限于)小键盘224、触摸屏显示器226和麦克风212。
在一些实施例中,小键盘224、触摸屏显示器226、麦克风212或其组合可执行接收起始传出呼叫的请求的功能。举例来说,触摸屏显示器226可接收来自联系人列表的联系人的选择或接收电话号码。在另一实例中,触摸屏显示器226和麦克风212中的任一个或两个可执行接收起始传出呼叫的请求的功能。作为另一实例,对起始传出呼叫的请求可呈经由麦克风212接收的语音命令的形式。可在通信装置110中的各种软件模块与功能之间提供接口以实现其间的通信。到上文所论述的小键盘224、触摸屏显示器226和麦克风212的输入只提供为可起始传出呼叫和/或起始通信装置110上的其它动作的输入类型的实例。在各种实施例中,可使用任何其它类型的输入或输入的组合来起始传出呼叫和/或起始通信装置110上的其它动作。
通信装置110可包含被配置成管理网络探测的探测包管理器230。探测包管理器230可被配置成经由通信装置110的不同接口技术来发送探测包。探测包管理器230可进一步被配置成经由通信装置110的不同接口技术接收探测包答复。探测包管理器可维护探测包超时计数器的运行计数器,所述运行计数器可指示网络流量路径中的发现的NAT的数目。
在一些实施例中,探测包管理器230可实施于通用处理器206内。在一些实施例中,探测包管理器230实施为单独的硬体组件(即,与通用处理器206分开)。在一些实施例中,探测包管理器230可实施为存储于存储器214内的软件应用程序且由通用处理器206执行。在各种实施例中,探测包管理器230、调制解调器处理器216a、216b、RF资源218a、218b和/或SIM 204a可实施于硬体、软体、韧体或其任何组合中。
虽然在图2中说明包含第一调制解调器处理器216a和第二调制解调器处理器216b的两个RF资源链,但额外RF资源链和额外调制解调器处理器可包含于通信装置110中,由此使额外网络连接能够同时进行。另外,可经由连接到通信装置110的输入/输出端口的调制解调器处理器来建立有线连接。
图3是说明根据各种实施例的用于网络探测的通信装置(例如,参看图1到3描述的通信装置110)与网络300之间的交互的网络图。一或多个通信装置110a、110b可建立WLAN接口技术与例如无线接入点160和路由器302的一或多个接入点(即,运行NAT服务的NAT/接入点)的网络连接。网络300表示不存在恶意接入点的配置,且适合于实施各种实施例。
通信装置110a、110b可产生寻址到通过路由器302和公共网络310连接到接入点160的STUN服务器304的探测包。无线接入点160可接收所述探测包,确定目的地IP和目的地端口(即,STUN服务器IP和端口),且使用全局IP和全局端口产生针对从通信装置110a、110b的源IP地址和源端口到STUN服务器的数据流的一对一映射。在一些实施例中,网络流量路径可含有多个合法无线接入装置,例如,无线接入点160和路由器302。路由器302可接收来自无线接入点160的公共数据流。公共数据流可已用来自通信装置110a、110b的私用数据流发起,且通过在无线接入点160上运行的NAT服务而映射到公共流。
寻址到STUN服务器304的探测包可通过公共网络310(例如,因特网164)从无线接入点160或路由器302导引到STUN服务器304。类似地,STUN服务器304可通过公共网络310将探测包答复发射到路由器302或无线接入点160,无论哪个接入点正作为网络流量路径中的远NAT操作(即,在网络路径中最靠近STUN服务器)。远NAT(例如,图3中的路由器302)可使用一或多个转译表查找公共数据流与相关联于通信装置110a、110b中的一个的私用数据流之间的一对一映射。路由器302的私用数据流可为无线接入点160的公共数据流。因此,当探测包答复包越过无线接入点160时,可执行第二映射查找。无线接入点160的公共数据流可映射到通信装置110a、110b中的一个的私用数据流,且探测包答复可发送到适当装置。
图4是说明根据各种实施例的用于网络探测的通信装置(例如,参看图1到4描述的通信装置110)与网络400之间的交互的网络图。一或多个通信装置110a、110b可建立WLAN接口技术与例如无线接入点160、恶意接入点306和路由器302的一或多个接入点(即,运行NAT服务的NAT/接入点)的网络连接。网络400表示恶意接入点存在于网络流量路径中的配置,且适合于实施各种实施例。
如参看图3所描述,通信装置110a、110b可产生寻址到STUN服务器304的多个探测包。在图3中说明的实例中,通信装置110a连接到无线接入点160(其为通信装置110a的近NAT)且与无线接入点160相关联,且通信装置110b连接到恶意接入点306(其为通信装置110b的近NAT)且与恶意接入点306相关联。因为恶意接入点306尚未授权访问数据流回程,所以恶意接入点306必须运行NAT服务且将公共数据流发送到无线接入点160用于导引。因此,由通信装置110b发射的探测包将体验附加处理负荷,这可呈现关于网络时间和能量资源的消耗。
无线接入点160可直接从通信装置110a接收探测包,或接收所述探测包作为来自恶意接入点306的公共流。从通信装置110a到达的探测包可具有包报头,其含有包含通信装置110a的源IP和源端口的五元组。然而,因为当包穿越恶意接入点306时(即,当NAT映射开始时),修改源自通信装置110b的探测包的包报头,所以在无线接入点160处接收的探测包的源IP和源端口将反映与恶意接入点306相关联的IP和端口。两个探测包可具有其根据无线接入点160的其相应NAT映射修改的包报头,且可继续穿越如参看图3详细描述的网络路径。
在各种实施例中,恶意接入点306的存在导致对于在探测包必须越过的网络流量路径中的额外“跃点”的需求。未连接到恶意接入点306且不与恶意接入点306相关联的通信装置110a可需要两个跃点到达STUN服务器304、无线接入点160和路由器302。连接到恶意接入点306且与恶意接入点306相关联的通信装置110b可需要三个跃点到达STUN服务器、恶意接入点306、无线接入点160和路由器302。各种实施例和实施方案实现探测包必须越过以到达STUN服务器的跃点或NAT的数目和因此存在于网络流量路径内的NAT的数目的确定。对于本地网络内的各种装置,此数目可不同,因为并非所有装置都可连接到同一接入点(即,同一近NAT)。
图5说明根据各种实施例的用于网络探测的数据流500的数据流图。参看图1到5,可产生数据流500,且其用通信装置(例如,参看图1到2描述的通信装置110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独控制器等)操纵。举例来说,数据流500可由在通信装置(例如,参看图1到2描述的通信装置110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独控制器等)上运行的探测包管理器(例如,探测包管理器230)起始和控制。
在各种实施例中,通信装置110通过连接到预标明的接入点、提供最强RF信号的接入点或离通信装置的物理位置最近的接入点来建立与接入点的连接。在操作1中,通信装置110可与接入点(例如,无线接入点160)相关联,所述接入点可对通信装置110指派本地IP地址且确定本地通信端口。即,接入点可给通信装置提供呈本地网络IP地址和端口编号的形式的连接信息,以实现经由本地网络(例如,私用网络)到和从通信装置的包的导引。在数据连接的关联和建立后,通信装置可确定相关联的接入点是网络流量路径内的最近NAT,且因此是近NAT 502。
在操作2中,通信装置的探测包管理器230可产生探测包(例如,STUN查询)。探测包的包报头可含有五元组(source_IP、source_Port、server_IP、server_Port、UDP),其中源是通信装置(即,用户设备),服务器是STUN服务器,且待使用的通信协议是UDP。探测包可从通信装置110发送到近NAT 502,且可继续通过网络流量路径到远NAT 504。在网络流量路径中的每一NAT,针对数据流产生新IP映射。探测包报头中含有的source_IP和source_Port信息可改变到相应NAT的WAN IP和端口。因此,在越过近NAT 502后,探测包的包报头包含五元组(近NAT_IP、近NAT_Port、server_IP、server_Port、UDP)。新本地到全局(即,私用到公共)IP映射的产生和探测包报头的相关联的修改以反映当前NAT WAN IP和端口可继续,直到探测包越过远NAT 504且由STUN服务器304接收。在经由公共网络从远NAT 504导引到STUN服务器304后,五元组包含(远NAT_IP、远NAT_Port、server_IP、服务器、端口、UDP)。
在操作3中,STUN服务器304可发射含有至少以下信息的探测包答复:(远NAT_IP、远NAT_Port、originator_IP、originator_Port)。探测包答复可反向经过网络流量路径。从远NAT 504到近NAT 502的每一NAT可访问存储于本地存储器中的转译表以将NAT的全局IP和端口(例如,WAN IP和端口)映射到本地IP和端口,或网络流量路径中的下一个NAT的全局IP和端口。举例来说,远NAT可接收探测包答复,访问本地存储的转译表,且将接收的答复映射到网络流量路径中的下一个NAT。远NAT可将STUN服务器的IP和端口编号用作“destination_IP”和“destination_Port”,以便使映射反向,且确定流量路径中的下一个NAT(即,将探测包发射到在到STUN服务器的路上的远NAT的NAT)。网络流量路径中的下一个NAT可接收探测包答复,并且也可使用远NAT的IP地址和端口编号(下一个NAT从所述远NAT接收探测包答复)以使映射反向且确定网络流量路径中的下一个跃点来访问本地存储的转译表。网络流量路径中的最后跃点可为通信装置,其可经由本地IP地址和端口编号接收探测包答复。探测包管理器230可将探测包答复存储在本地存储器(例如,存储器214)中供稍后比较。
通信装置110的探测包管理器230可递增本地存储的探测包超时计数器。在一些实施方案中,探测包超时计数器的计数值可在与近NAT 502的关联期间初始化到零。每当探测包管理器将探测包发送到STUN服务器时,探测包管理器可递增探测包超时计数器。将探测包超时计数器递增到“1”指示至少一个NAT在网络流量路径中的存在。通信装置可确定存在至少一个NAT,这是因为如果在网络流量路径中不存在NAT,那么将不会出现数据流且将接收不到STUN服务器探测包答复。
在各种实施例中,通信装置110的探测包管理器230可在操作4中发射寻址到STUN服务器304的测试探测包。因为IP映射是在最后一次探测包越过期间针对通信装置到STUN服务器数据流而产生,所以近NAT 502在近NAT 502的网络地址转译表内维持在活动状态中的现有映射。近NAT 502可读取测试探测包报头中的探测包超时计数器。在测试探测包应被丢掉、检测或另外防止在网络流量路径中前进前,超时计数器的值可对NAT指示在网络流量路径中准许的跃点的数目。当测试探测包越过网络流量路径时,每一NAT递减探测包超时计数器,直到计数器到达零,在此之后,不准许另外的跃点(即,包中继)。在操作4中,探测包超时计数器(即,存留时间或“TTL”)被设定到1,指示已发送成功测试探测包且接收到答复,因此至少一个NAT存在于网络流量路径中。在超时计数器存储当前值1的情况下,当测试探测包由近NAT 502接收到且测试探测包的超时计数器递减时,排空所述测试探测包的准许的跃点的数目。结果,近NAT可维持针对数据流的活动IP映射,但可丢掉测试探测包。处于近NAT外的任何NAT(直到且包含远NAT 504)将不接收测试探测包,因此其针对数据流的IP映射将超时且被释放(例如,从相应转译表去除)。在丢掉测试探测包后,近NAT 502是具有针对数据流从通信装置110到STUN服务器304的活动IP映射的仅有NAT。
在操作5中,通信装置110的探测包管理器230可发射具有与前一测试探测包相同的超时计数器的额外测试探测包。可按间隔发送额外测试探测包,以确保每一接收NAT维持针对业务流的活动映射。因此,通信装置110可通过发射在STUN服务器查询之间具有相同超时计数器的规则测试探测包来确保所要的映射保持活动。
在各种实施例中,通信装置110的探测包管理器230可在操作6中再次发射寻址到STUN服务器304的探测包。因为在近NAT 502处接收到测试探测包,使其维持活动IP映射,所以当前探测包可越过近NAT 502,而不引起新IP映射的产生。即,可简单地通过在近NAT 502转译表中的一对一映射的查找和修改适当包报头来实现数据流的本地IP地址和端口的转译。然而,网络流量路径中的每一后续NAT(例如,远NAT 504)将在接收到探测包后产生新IP映射,这是因为相关映射已过期且被释放。在说明的实例中,针对近NAT 502的映射保持相同,而再次产生针对远NAT 504的映射。因此,由近NAT 502指派到本地数据流的全局IP和端口保持相同,但远NAT 504的全局IP和端口将不是新的,且有可能与在寻址到STUN服务器304的前一探测包上使用的全局IP和端口(例如,操作2)不同。
在操作7中,STUN服务器304可返回含有远NAT_IP和远NAT_Port的新探测包答复。探测包管理器230可比较第二接收到的探测包答复与第一探测包答复以确定它们是否匹配。更具体地说,探测包管理器230可确定远NAT_IP和远NAT_Port在探测包答复之间是否不同。如果未发现匹配,那么探测包管理器230确定存在处于网络路径中的仍然未考虑的NAT。通信装置110的探测包管理器230可再次递增探测包超时计数器,使得其拥有值“2”。
在操作8中,通信装置的探测包管理器230可发送含有递增的探测包超时计数器的第二测试探测包。如前,探测包可越过近NAT 502,而不引起新IP映射的产生。因为在NAT的内部映射超时持续时间排空前发送测试探测包,所以针对通信装置110到STUN服务器304数据流的IP映射保持活动。近NAT 502可评估探测包超时计数器且按“1”递减计数器,这是因为已在网络流量路径中作出1跃点。测试探测包将具有探测包超时计数器,其具有比其到达近NAT 502时小1的值。探测包超时计数器开始于“2”,且然后具有值“1”,指示在应丢掉测试探测包前,准许在网络流量路径中多一个跃点。因此,近NAT 502修改源报头信息(例如,source_IP和source_Port),且将测试探测包传到远NAT 504。远NAT 504确定IP映射仍然在活动,且不释放映射。远NAT 504可然后从“1”到“0”递减且评估探测包超时计数器。不准许测试探测包的另外跃点,且远NAT 504丢掉测试探测包。在第二测试探测包发射之末尾,近NAT 502和远NAT 504都积极地维持其针对通信装置到STUN服务器数据流的IP映射。再次,可按间隔发送具有相同超时计数器的额外测试探测包,以确保每一接收NAT维持针对业务流的活动映射。因此,通信装置110可通过发射在STUN服务器查询之间具有相同超时计数器的规则测试探测包来确保所要的映射保持活动。
在操作9中,探测包管理器230可发送寻址到STUN服务器304的第三探测包。这次,探测包可越过整个网络流量路径(即,近NAT 502和远NAT 504两者),而不使任何NAT产生新IP映射。第二测试探测包到达两个NAT,从而使两者维持活动映射。每一NAT可使用存储于其相应转译表中的活动映射修改第三探测包的包报头。
可将探测包导引到STUN服务器304上,在操作10中,STUN服务器304可产生且发送含有far_NAT_IP和远NAT_Port的第三探测包答复。探测包管理器230可再次比较接收的探测包答复与最后一个先前探测包答复(例如,第二探测包答复)以确定远NAT信息是否已改变。在操作10的最后,第三与第二探测包答复中的远NAT信息匹配,因为在网络流量路径的探针的遍历期间不产生新IP映射。探测包管理器230可确定探测包超时计数器的当前值(即,2)是处于网络流量路径中的NAT的数目。
各种实施方案可包含重复操作2到10,直到接收到远NAT信息匹配的两个同时的探测包答复。
各种实施方案可比较最后探测包超时计数器(例如,存在于网络流量路径中的NAT的数目)与期望值。期望值可为预期处于网络连接内的NAT的数目。此信息可由网络管理员或装置上应用程序或统计提供。
图6说明根据各种实施例的用于网络探测的方法600。参看图1至6,方法600可用通信装置(例如,参看图1到2描述的通信装置110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独控制器等)实施。举例来说,方法600可由在通信装置(例如,参看图1到2描述的通信装置110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独控制器等)上运行的探测包管理器(例如,探测包管理器230)实施。
在框602中,探测包管理器230可建立与本地接入点(例如,接入点160)的网络连接。在各种实施方案中,可取代包含有线与无线组合的不同接口技术的其它组合。蜂窝空中接口技术、WLAN技术、卫星接口技术和PAN技术在本文中仅被称作实例以说明各种实施例的方面。作为建立网络连接的部分,探测包管理器230可使网络连接与通信装置相关联。即,接入点(例如,接入点160)可对通信装置(例如,通信装置110)指派例如IP地址和端口编号的本地网络配置设定。通信装置可将所述接入点标注为近NAT 502,这是因为它第一个处于通信装置的网络流量路径中。
在框604中,探测包管理器可至少部分基于第一网络设置信息和第二网络设置信息产生且发射寻址到探测服务器的探测包。举例来说,探测包管理器可至少部分基于相应网络连接的地址(例如,相应全局IP地址)产生从探测客户端寻址到探测服务器的探测包。所述探测包管理器可产生寻址到探测服务器的探测包,其包含将探测包传递到STUN服务器必要的信息,包含通信装置IP地址、通信装置通信端口、STUN服务器的IP地址、STUN服务器的通信端口编号和用以发射探测包的通信协议。举例来说,探测包可含有五元组:source_IP、source_Port、server_IP、server_Port和UDP。探测包管理器可经由网络连接发射寻址到STUN服务器的探测包。如参看图5所论述,探测包可越过运行NAT服务的一或多个接入点(例如,近NAT 502和远NAT 504)。当探测包移动通过网络流量路径时,每一NAT可执行从通信装置到STUN服务器的本地数据流的一对一映射。
在框606中,探测包管理器230可从STUN服务器(例如,STUN服务器304)接收第一探测包答复。STUN服务器可从网络流量路径中的最后一个NAT(例如,远NAT 504)接收探测包作为公共数据流。STUN服务器可将至少含有最靠近STUN服务器的NAT(例如,远NAT 504)的IP地址和端口的探测包答复发送到通信装置(例如,通信装置110)。额外信息可包含NAT配置、映射模式、NAT格式等。第一探测包答复可本地存储于通信装置用于稍后与未来探测包答复比较。
在框608中,探测包管理器230可递增探测包超时计数器。探测包超时计数器可指示准许包在网络路径中越过的跃点的数目。此值可等于已在网络流量路径中计数的NAT的数目。
在框610中,探测包管理器230可将第一测试探测包发射到第一NAT(例如,近NAT504)。虽然测试探测包可寻址到STUN服务器以便保持相关联的数据流映射活动,但测试探测包不行进超出第一NAT。测试探测包的包报头中含有的探测包超时计数器对NAT提供仅允许一个跃点且应丢掉测试探测包的指示。因此,将测试探测包发送到第一NAT可使NAT维持到STUN服务器的通信装置数据流的活动映射和丢掉测试探测包。通过有效地指导第一NAT丢掉测试探测包,探测包管理器230确保网络流量路径中的其余NAT(例如,远NAT 504)允许其针对通信装置到STUN服务器的IP映射过期。具有相同超时计数器的额外测试探测包可按间隔发送,作为框610中的操作的部分,以确保每一接收NAT维持针对业务流的活动映射。
在框612中,探测包管理器230可发送寻址到STUN服务器(例如,STUN服务器304)的第二探测包。像第一探测包一样,所述探测包管理器可用将探测包传递到STUN服务器必要的信息将第二探测包寻址到探测服务器,包含通信装置IP地址、通信装置通信端口、STUN服务器的IP地址、STUN服务器的通信端口编号和用以发射探测包的通信协议。举例来说,探测包可含有五元组:source_IP、source_Port、server_IP、server_Port和UDP。像第一探测包一样,但与测试探测包不像,第二探测包可越过整个网络流量路径。新IP映射可由接收测试探测包的不同于第一NAT(例如,近NAT 502)的所有NAT产生。
在框614中,探测包管理器230可接收第二探测包答复。第二探测包答复可由STUN服务器(例如,STUN服务器304)产生并发射。第二探测包答复可含有与第一探测包答复中含有的信息相同或类似的信息;然而,归因于更新的IP映射,最靠近STUN服务器的NAT的IP地址和端口可已改变。
在框616中,探测包管理器230可比较第一探测包答复的内容与第二探测包答复的内容。
图7说明根据各种实施例的用于网络探测的方法700。参看图1到7,方法700可用通信装置(例如,参看图1到2描述的通信装置110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独控制器等)实施。举例来说,方法700可由在通信装置(例如,参看图1到2描述的通信装置110)的处理器(例如,通用处理器206、调制解调器处理器216a、216b、单独控制器等)上运行的探测包管理器(例如,探测包管理器230)实施。
在确定框702中,探测包管理器可基于每一答复内含有的信息确定第一探测包答复与第二探测包答复是否匹配。具体地说,探测包管理器230可比较距网络流量路径中的通信装置(例如,通信装置110)最远的NAT的IP地址和端口。如参看图5所论述,两个探测包答复之间的远NAT IP地址和端口的匹配可指示在网络流量路径中未剩余未考虑的NAT。
响应于确定比较的结果不匹配(即,确定框702=“否”),探测包管理器可通过返回到方法600的框608在框704中再次递增探测包超时计数器,且执行如参考图6描述的方法600的框610到616的操作。
响应于确定比较的结果确实匹配(即,确定框702=“是”),探测包管理器230可在框706中确定网络流量路径中的NAT的数目等于探测包超时计数器的值。举例来说,如果探测包超时计数器已递增到“2”,那么探测包管理器230可确定网络流量路径中的NAT的数目为二。
在确定框708中,探测包管理器可确定NAT的数目等于NAT的预定数目。NAT的预定数目可为流量路径中的NAT的预期数目。
响应于确定NAT的数目匹配NAT的预定数目(即,确定框708=“是”),处理器可在框710中确定在网络流量路径中不存在恶意接入点。相反地,响应于确定NAT的数目不等于NAT的预定数目(即,确定框708=“否”),处理器可在框712中确定在网络流量路径中可能存在恶意接入点。
可在多种通信装置中的任一个中实施各种实施例,所述通信装置的实例(例如,通信装置800)说明于图8中。参看图1到8,通信装置800可类似于通信装置110,且可实施如所描述的方法500、方法600和/或方法700。
通信装置800可包含耦合到触摸屏控制器804和内部存储器806的处理器802。处理器802可为指明用于一般或具体处理任务的一或多个多核集成电路。内部存储器806可为易失性或非易失性存储器,并且还可为安全和/或经加密的存储器,或不安全和/或未加密的存储器,或其任何组合。触摸屏控制器804和处理器802还可耦合到触摸屏面板812,例如,电阻性感测触摸屏、电容性感测触摸屏、红外线感测触摸屏等。另外,通信装置800的显示器不需要具有触摸屏能力。
通信装置800可具有耦合到处理器802且耦合到一或多个天线810并被配置成用于发送和接收蜂窝式通信的一或多个蜂窝式网络收发器808。收发器808和天线810可与本文中提到的电路系统一起用以实施各种实施例的方法。通信装置800可包含一或多个SIM卡(例如,SIM 813),其耦合到收发器808和/或处理器802且如所描述般配置。通信装置800可包含耦合到处理器802的蜂窝式网络无线调制解调器芯片817,其实现经由蜂窝式网络的通信。
通信装置800可具有一或多个WLAN收发器816(例如,一或多个Wi-Fi收发器),其耦合到处理器802且耦合到一或多个天线811并被配置成用于发送和接收WLAN通信。收发器816和天线811可与本文中提到的电路系统一起用以实施各种实施例的方法。通信装置800可包含耦合到处理器802的WLAN无线调制解调器芯片818,其实现经由WLAN的通信。
通信装置800可具有一或多个蓝牙收发器821,其耦合到处理器802并被配置成用于发送和接收蓝牙通信。蓝牙收发器821可与本文中提到的电路系统一起用以实施各种实施例的方法。通信装置800可包含耦合到处理器802的蓝牙无线调制解调器芯片823,其实现经由蓝牙的通信。
通信装置800可具有一或多个卫星收发器824,其耦合到处理器802且耦合到一或多个天线825并被配置成用于发送和接收蓝牙通信。收发器824和天线825可与本文中提到的电路系统一起用以实施各种实施例的方法。通信装置800可包含耦合到处理器802的卫星无线调制解调器芯片826,其实现经由卫星网络的通信。
通信装置800还可包含用于提供音频输出的扬声器814。通信装置800还可包含外壳820,其由塑料、金属或材料组合构成,用于含有本文中论述的组件中的全部或一些。通信装置800可包含耦合到处理器802的电源822,例如,一次性或可再充电电池。可再充电电池还可耦合到外围装置连接端口以从在通信装置800外部的来源接收充电电流。外围装置连接端口(例如,USB端口)可连接到处理器802,且可被配置成经由有线接口技术建立有线网络连接,且可与本文中提到的电路系统一起用以实施各种实施例的方法。通信装置800还可包含用于接收用户输入的物理按钮828。通信装置800还可包含用于接通和断开通信装置800的电力按钮827。
前述方法描述和过程流程图只是作为说明性实例而提供,并且不希望需要或暗示各种实施例的操作必须以所提出的次序执行。如所属领域的技术人员将了解,可以任何次序执行前述实施例中的操作的次序。例如“其后”、“然后”、“接下来”等词语并不希望限制操作的次序;这些词语仅用以引导读者浏览方法的描述。另外,举例来说,使用词“一”、“一个”或“所述”以单数形式对权利要求要素的任何参考不应被解释为将所述要素限制为单数。
结合本文中所公开的实施例描述的各种说明性逻辑块、模块、电路和算法操作可实施为电子硬件、计算机软件或两者的组合。为清晰地说明硬件与软件的这种可互换性,上文已大体就其功能性来描述各种说明性组件、块、模块、电路和操作。此功能性实施为硬件还是软件取决于特定应用和强加于总体系统的设计约束。熟练的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但此类实施决策不应被解释为会引起脱离各种实施例的范围。
可用多种处理器实施或执行用以实施关于本文中公开的实施例描述的各种说明性逻辑、逻辑块、模块和电路的硬体。合适处理器的实例包含(例如)通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其被设计成执行本文中描述的功能的任何组合。通用处理器可为微处理器,但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、一或多个微处理器结合DSP核心或任何其它此类配置。替代地,可通过具体针对给定功能的电路系统来执行一些操作或方法。
在一或多个示范性方面中,所描述的功能可以用硬件、软件、固件或其任何组合实施。如果以软件实施,那么所述功能可作为一或多个指令或代码存储在非暂时性计算机可读存储媒体或非暂时性处理器可读存储媒体上。本文中所公开的方法或算法的操作可体现于可驻留在非暂时性计算机可读或处理器可读存储媒体上的处理器可执行软件模块中。非暂时性计算机可读或处理器可读媒体可为可由计算机或处理器存取的任何存储媒体。借助实例但非限制,此类非暂时性计算机可读或处理器可读存储媒体可包含RAM、ROM、EEPROM、闪存、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于以指令或数据结构的形式存储所要的程序代码且可由计算机存取的任何其它媒体。如本文所使用的磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常是以磁性方式再现数据,而光盘是用激光以光学方式再现数据。以上的组合也包含在非暂时性计算机可读和处理器可读媒体的范围内。另外,方法或算法的操作可作为代码和/或指令中的一个或任何组合或集合而驻留在非暂时性处理器可读存储媒体和/或计算机可读存储媒体上,所述媒体可并入到计算机程序产品内。
提供对公开的实施例的先前描述以使所属领域的技术人员能够制作或使用各种实施例。所属领域的技术人员将容易显而易见对这些实施例的各种修改,且可在不脱离权利要求书的范围的情况下将本文中定义的一般原理应用到一些实施例。因此,本公开并不希望限于本文中所展示的实例,而应符合与随附权利要求书和本文中所公开的原理和新颖特征相一致的最广泛范围。

Claims (26)

1.一种由通信装置进行的网络探测的方法,包括:
将寻址到用于网络地址转译器NAT的简单遍历实用程序STUN服务器的第一探测包从所述通信装置经由网络连接发射到第一NAT;
在所述通信装置处接收来自所述STUN服务器的第一探测包答复;
递增探测包超时计数器,所述探测包超时计数器指示探测包在被丢弃之前将遍历的网络流量路径中的NAT的数目;
经由所述网络连接发射第一测试探测包,所述第一测试探测包的包头信息中包含经递增探测包超时计数器,所述第一测试探测包致使所述经递增探测包超时计数器指示的NAT的所述数目中的每一者维持针对所述通信装置的活动地址转译映射;
经由所述网络连接从所述通信装置发射寻址到所述STUN服务器的第二探测包;
在所述通信装置处接收来自所述STUN服务器的第二探测包答复;
确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息是否匹配;以及
响应于确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息匹配,确定所述网络流量路径中的NAT的所述数目等于所述经递增探测包超时计数器。
2.根据权利要求1所述的方法,其中所述第一探测包和所述第二探测包各包括通信装置因特网协议IP地址、通信装置通信端口编号、STUN服务器IP地址、STUN服务器通信端口编号和用以发射所述探测包的通信协议。
3.根据权利要求1所述的方法,进一步包括:
响应于确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息不匹配:
递增所述经递增探测包超时计数器以产生经更新探测包超时计数器;
经由所述网络连接发射第二测试探测包,所述第二测试探测包的包头信息中包含所述经更新探测包超时计数器,所述第二测试探测包致使所述经更新探测包超时计数器指示的NAT的所述数目中的每一者维持针对所述通信装置的活动地址转译映射;
经由所述网络连接从所述通信装置发射寻址到所述STUN服务器的第三探测包;
在所述通信装置处接收来自所述STUN服务器的第三探测包答复;
确定所述第三探测包答复的包头信息与所述第二探测包答复的包头信息是否匹配;以及
响应于确定所述第三探测包答复的包头信息与所述第二探测包答复的包头信息匹配,确定所述网络流量路径中的NAT的所述数目等于所述经更新探测包超时计数器。
4.根据权利要求1所述的方法,进一步包括响应于确定所述网络流量路径中的NAT的所述确定的数目不匹配NAT的预定数目,确定恶意接入点存在于所述网络流量路径中。
5.根据权利要求1所述的方法,其中所述第一探测包答复的所述包头信息为最后IP地址和端口编号,且所述第二探测包答复的所述包头信息为第二最后IP地址和端口编号。
6.根据权利要求1所述的方法,进一步包括在发射所述第一探测包前将所述探测包超时计数器初始化到零。
7.根据权利要求1所述的方法,其中将多个计算装置的IP地址和本地端口映射到所述第一NAT的相同全局IP地址和全局端口。
8.一种通信装置,包括:
收发器,其被配置成通过通信网络发送和接收包;以及
处理器,其耦合到所述收发器且经配置以:
将寻址到用于NAT的简单遍历实用程序STUN服务器的第一探测包经由网络连接发射到第一网络地址转译器NAT;
从所述STUN服务器接收第一探测包答复;
递增探测包超时计数器,所述探测包超时计数器指示探测包在被丢弃之前将遍历的网络流量路径中的NAT的数目;
经由所述网络连接发射第一测试探测包,所述第一测试探测包的包头信息中包含经递增探测包超时计数器,所述第一测试探测包致使所述经递增探测包超时计数器指示的NAT的所述数目中的每一者维持针对所述通信装置的活动地址转译映射;
经由所述网络连接发射寻址到所述STUN服务器的第二探测包;
从所述STUN服务器接收第二探测包答复;
确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息是否匹配;以及
响应于确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息匹配,确定所述网络流量路径中的NAT的所述数目等于所述经递增探测包超时计数器。
9.根据权利要求8所述的通信装置,其中所述第一探测包和所述第二探测包各包括通信装置因特网协议IP地址、通信装置通信端口编号、STUN服务器IP地址、STUN服务器通信端口编号和用以发射所述探测包的通信协议。
10.根据权利要求8所述的通信装置,其中所述处理器进一步经配置有处理器可执行指令以:
响应于确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息不匹配:
递增所述经递增探测包超时计数器以产生经更新探测包超时计数器;
经由所述网络连接发射第二测试探测包,所述第二测试探测包的包头信息中包含所述经更新探测包超时计数器,所述第二测试探测包致使所述经更新探测包超时计数器指示的NAT的所述数目中的每一者维持针对所述通信装置的活动地址转译映射;
经由所述网络连接发射寻址到所述STUN服务器的第三探测包;
从所述STUN服务器接收第三探测包答复;
确定所述第三探测包答复的包头信息与所述第二探测包答复的包头信息是否匹配;以及
响应于确定所述第三探测包答复的包头信息与所述第二探测包答复的包头信息匹配,确定所述网络流量路径中的NAT的所述数目等于所述经更新探测包超时计数器。
11.根据权利要求8所述的通信装置,其中所述处理器进一步经配置有处理器可执行指令以响应于确定所述网络流量路径中的NAT的所确定的数目不匹配NAT的预定数目,确定在所述网络流量路径中存在恶意接入点。
12.根据权利要求8所述的通信装置,其中所述第一探测包答复的所述包头信息为最后IP地址和端口编号,且所述第二探测包答复的所述包头信息为第二最后IP地址和端口编号。
13.根据权利要求8所述的通信装置,其中所述处理器进一步经配置有处理器可执行指令以在发射所述第一探测包前将所述探测包超时计数器初始化到零的操作。
14.根据权利要求8所述的通信装置,其中多个计算装置的IP地址和本地端口被映射到所述第一NAT的相同全局IP地址和全局端口。
15.一种具有存储于其上的处理器可执行指令的非暂时处理器可读媒体,所述处理器可执行指令被配置成使通信装置的处理器执行包括以下各项的操作:
将寻址到用于NAT的简单遍历实用程序STUN服务器的第一探测包经由网络连接发射到第一网络地址转译器NAT;
从所述STUN服务器接收第一探测包答复;
递增探测包超时计数器,所述探测包超时计数器指示探测包在被丢弃之前将遍历的网络流量路径中的NAT的数目;
经由所述网络连接发射第一测试探测包,所述第一测试探测包的包头信息中包含经递增探测包超时计数器,所述第一测试探测包致使所述经递增探测包超时计数器指示的NAT的所述数目中的每一者维持针对所述通信装置的活动地址转译映射;
经由所述网络连接发射寻址到所述STUN服务器的第二探测包;
从所述STUN服务器接收第二探测包答复;
确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息是否匹配;以及
响应于确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息匹配,确定所述网络流量路径中的NAT的所述数目等于所述经递增探测包超时计数器。
16.根据权利要求15所述的非暂时性处理器可读媒体,其中所述第一探测包和所述第二探测包各包括通信装置因特网协议IP地址、通信装置通信端口编号、STUN服务器IP地址、STUN服务器通信端口编号和用以发射所述探测包的通信协议。
17.根据权利要求15所述的非暂时性处理器可读媒体,其中所述存储的处理器可读指令被进一步配置成使通信装置的处理器执行包括以下各项的操作:
响应于确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息不匹配:
递增所述经递增探测包超时计数器以产生经更新探测包超时计数器;
经由所述网络连接发射第二测试探测包,所述第二测试探测包的包头信息中包含所述经更新探测包超时计数器,所述第二测试探测包致使所述经更新探测包超时计数器指示的NAT的所述数目中的每一者维持针对所述通信装置的活动地址转译映射;
经由所述网络连接发射寻址到所述STUN服务器的第三探测包;
从所述STUN服务器接收第三探测包答复;
确定所述第三探测包答复的包头信息与所述第二探测包答复的包头信息是否匹配;以及
响应于确定所述第三探测包答复的包头信息与所述第二探测包答复的包头信息匹配,确定所述网络流量路径中的NAT的所述数目等于所述经更新探测包超时计数器。
18.根据权利要求15所述的非暂时性处理器可读媒体,其中所述存储的处理器可读指令被进一步配置成使通信装置的处理器执行包括以下操作的操作:响应于确定所述网络流量路径中的NAT的所述确定的数目不匹配NAT的预定数目,确定在所述网络流量路径中存在恶意接入点。
19.根据权利要求15所述的非暂时性处理器可读媒体,其中所述第一探测包答复的所述包头信息为最后IP地址和端口编号,且所述第二探测包答复的所述包头信息为第二最后IP地址和端口编号。
20.根据权利要求15所述的非暂时性处理器可读媒体,其中所述存储的处理器可读指令被进一步配置成使通信装置的处理器执行包括在发射所述第一探测包前将所述探测包超时计数器初始化到零的操作。
21.根据权利要求15所述的非暂时性处理器可读媒体,其中多个计算装置的IP地址和本地端口被映射到所述第一NAT的相同全局IP地址和全局端口。
22.一种通信装置,包括:
用于将寻址到用于NAT的简单遍历实用程序STUN服务器的第一探测包经由网络连接发射到第一网络地址转译器NAT的装置;
用于从所述STUN服务器接收第一探测包答复的装置;
用于递增探测包超时计数器的装置,所述探测包超时计数器指示探测包在被丢弃之前将遍历的网络流量路径中的NAT的数目;
用于经由所述网络连接发射第一测试探测包的装置,所述第一测试探测包的包头信息中包含经递增探测包超时计数器,所述第一测试探测包致使所述经递增探测包超时计数器指示的NAT的所述数目中的每一者维持针对所述通信装置的活动地址转译映射;
用于经由所述网络连接发射寻址到所述STUN服务器的第二探测包的装置;
用于从所述STUN服务器接收第二探测包答复的装置;
用于确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息是否匹配的装置;以及
用于响应于确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息匹配,确定所述网络流量路径中的NAT的所述数目等于所述经递增探测包超时计数器的装置。
23.根据权利要求22所述的通信装置,进一步包括:
用于响应于确定所述第一探测包答复的包头信息与所述第二探测包答复的包头信息不匹配递增所述经递增探测包超时计数器以产生经更新探测包超时计数器的装置;
用于经由所述网络连接发射第二测试探测包的装置,所述第二测试探测包的包头信息中包含所述经更新探测包超时计数器,所述第二测试探测包致使所述经更新探测包超时计数器指示的NAT的所述数目中的每一者维持针对所述通信装置的活动地址转译映射;
用于经由所述网络连接发射寻址到所述STUN服务器的第三探测包的装置;
用于从所述STUN服务器接收第三探测包答复的装置;
用于确定所述第三探测包答复的包头信息与所述第二探测包答复的包头信息是否匹配的装置;以及
用于响应于确定所述第三探测包答复的包头信息与所述第二探测包答复的包头信息匹配,确定所述网络流量路径中的NAT的所述数目等于所述经更新探测包超时计数器的装置。
24.根据权利要求22所述的通信装置,进一步包括用于响应于确定所述网络流量路径中的NAT的所述确定的数目不匹配NAT的预定数目来确定在所述网络流量路径中存在恶意接入点的装置。
25.根据权利要求22所述的通信装置,其中所述第一探测包答复的所述包头信息为最后IP地址和端口编号,且所述第二探测包答复的所述包头信息为第二最后IP地址和端口编号。
26.根据权利要求22所述的通信装置,进一步包括用于在发射所述第一探测包前将所述探测包超时计数器初始化到零的装置。
CN201780033791.XA 2016-06-21 2017-05-19 使用可用网络连接的网络路径探测 Active CN109314701B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/187,837 US10158998B2 (en) 2016-06-21 2016-06-21 Network path probing using available network connections
US15/187,837 2016-06-21
PCT/US2017/033598 WO2017222705A1 (en) 2016-06-21 2017-05-19 Network path probing using available network connections

Publications (2)

Publication Number Publication Date
CN109314701A CN109314701A (zh) 2019-02-05
CN109314701B true CN109314701B (zh) 2020-02-14

Family

ID=59009792

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780033791.XA Active CN109314701B (zh) 2016-06-21 2017-05-19 使用可用网络连接的网络路径探测

Country Status (4)

Country Link
US (1) US10158998B2 (zh)
EP (1) EP3472992B1 (zh)
CN (1) CN109314701B (zh)
WO (1) WO2017222705A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10798125B2 (en) * 2016-10-27 2020-10-06 Reliance Jio Infocomm Limited System and method for network entity assisted honeypot access point detection
US20180234535A1 (en) * 2017-02-10 2018-08-16 Mediatek Inc. Method and apparatus for communication
US10397060B2 (en) * 2017-03-02 2019-08-27 Cisco Technology, Inc. Identity-based policy implementation in network address translation (NAT) environments
US10911341B2 (en) * 2018-11-19 2021-02-02 Cisco Technology, Inc. Fabric data plane monitoring
CN112532757B (zh) * 2019-09-19 2023-11-14 华为技术有限公司 一种nat穿越的方法、设备和系统
CN112104761A (zh) * 2020-08-20 2020-12-18 广东网堤信息安全技术有限公司 一种nat地址转换的方法
CN112187584B (zh) * 2020-09-30 2023-07-21 腾讯科技(深圳)有限公司 路径故障探测方法、系统、服务器及存储介质
CN112291749A (zh) * 2020-09-30 2021-01-29 智博汽车科技(上海)有限公司 唤醒T-Box的方法和装置、T-Box、服务器
CN114666072B (zh) * 2020-12-04 2023-06-02 中国联合网络通信集团有限公司 非法转接点检测方法、服务器、平台、系统及存储介质
CN112995358B (zh) * 2021-04-21 2021-07-23 中国人民解放军国防科技大学 大规模网络地址转换流量识别方法、装置及计算机设备
CN114584934B (zh) * 2022-03-14 2023-01-06 联想(北京)有限公司 通信处理方法、装置、系统及存储介质
US11831715B1 (en) * 2022-10-19 2023-11-28 Dell Products L.P. Scalable ethernet bunch of flash (EBOF) storage system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101151596A (zh) * 2005-05-23 2008-03-26 思科技术公司 用于提供网络路径验证协议的系统和方法
WO2013188027A1 (en) * 2012-06-15 2013-12-19 Qualcomm Incorporated Systems and methods for network centric wlan location of a mobile device
CN104521196A (zh) * 2012-06-06 2015-04-15 瞻博网络公司 针对虚拟网络分组流的物理路径确定

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536723B1 (en) * 2004-02-11 2009-05-19 Airtight Networks, Inc. Automated method and system for monitoring local area computer networks for unauthorized wireless access
US8000698B2 (en) * 2006-06-26 2011-08-16 Microsoft Corporation Detection and management of rogue wireless network connections
US7738383B2 (en) * 2006-12-21 2010-06-15 Cisco Technology, Inc. Traceroute using address request messages
US7706278B2 (en) * 2007-01-24 2010-04-27 Cisco Technology, Inc. Triggering flow analysis at intermediary devices
US8074279B1 (en) * 2007-12-28 2011-12-06 Trend Micro, Inc. Detecting rogue access points in a computer network
EP2351296A4 (en) 2008-10-31 2015-01-07 Hewlett Packard Development Co METHOD AND DEVICE FOR DETECTING NETWORK IMPACT
US8844041B1 (en) * 2010-01-12 2014-09-23 Symantec Corporation Detecting network devices and mapping topology using network introspection by collaborating endpoints
KR101540343B1 (ko) 2013-09-05 2015-08-05 숭실대학교산학협력단 로그 ap 탐지 시스템 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101151596A (zh) * 2005-05-23 2008-03-26 思科技术公司 用于提供网络路径验证协议的系统和方法
CN104521196A (zh) * 2012-06-06 2015-04-15 瞻博网络公司 针对虚拟网络分组流的物理路径确定
WO2013188027A1 (en) * 2012-06-15 2013-12-19 Qualcomm Incorporated Systems and methods for network centric wlan location of a mobile device

Also Published As

Publication number Publication date
US20170366978A1 (en) 2017-12-21
EP3472992B1 (en) 2020-04-15
US10158998B2 (en) 2018-12-18
CN109314701A (zh) 2019-02-05
WO2017222705A1 (en) 2017-12-28
EP3472992A1 (en) 2019-04-24

Similar Documents

Publication Publication Date Title
CN109314701B (zh) 使用可用网络连接的网络路径探测
US11838203B2 (en) Multipath data transmission method and device
CN112586004B (zh) 用于在用户设备组内使能专用通信的系统、方法和介质
US11451510B2 (en) Method and apparatus for processing service request
US9247018B2 (en) Method and apparatus for cooperation between push devices
CN110199509B (zh) 使用多路径验证的未授权接入点检测
US10084679B2 (en) Standalone network probing using available network connections
EP2230876B1 (en) Method and apparatus for setting up network for IP communication in a mobile terminal
US10616946B2 (en) Infrastructure-based D2D connection setup using OTT services
KR20180030023A (ko) 셀룰러 사물 인터넷에 대한 네트워크 보안 아키텍처
EP3958534A1 (en) Method and apparatus for establishing end-to-end network connection, and network system
JP2016506696A (ja) ネットワークにアクセスするシステム及び方法
CN108243192B (zh) 应用访问网络的识别方法和系统
US9357386B2 (en) System and method for femto ID verification
US11902380B1 (en) Liveness detection for an authenticated client session
Metongnon et al. Fast and efficient probing of heterogeneous IoT networks
US11956628B2 (en) Openroaming for private communication systems
US11246011B1 (en) Cellular access of user-defined networks
CN115226247A (zh) 无线通信的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant