同时包数据网络(pdn)接入的制作方法

文档序号:7978153阅读:214来源:国知局
同时包数据网络(pdn)接入的制作方法
【专利摘要】本发明的某些方面提供用于无线通信的技术,其中将不同端口分区指派给用户设备装置上的处理实体。这样做为所述处理实体提供对单个PDN连接的同时接入。
【专利说明】同时包数据网络(PDN)接入
【技术领域】
[0001]本发明大体上涉及无线通信,且更明确地说,涉及在无线终端上的多个处理实体之间共享包数据网络(I3DN)连接的IP地址。
【背景技术】
[0002]无线通信系统广泛部署以提供各种类型的通信内容,例如话音、数据等。这些系统可为能够通过共享可用系统资源(例如,带宽及发射功率)来支持与多个用户的通信的多址系统。所述多址系统的实例包括码分多址(CDMA)系统、时分多址(TDMA)系统、频分多址(FDMA)系统、第三代合作伙伴计划(3GPP)长期演进(LTE)系统以及正交频分多址(OFDMA)系统。
[0003]一股来说,无线多址通信系统可同时支持多个无线终端的通信。每一终端经由正向和反向链路上的发射与一个或一个以上基站通信。正向链路(或下行链路)指代从基站到终端的通信链路,且反向链路(或上行链路)指代从终端到基站的通信链路。此通信链路可经由单输入单输出、多输入单输出或多输入多输出(MMO)系统来建立。
[0004]除运载音频发射之外,无线终端的一个用途是发送和接收经由包数据网络(TON)运载的数据。通常,使用接入点名称(APN)来识别移动数据用户与之通信的TON。除识别TON之外,还可使用APN来定义服务类型。此些基于连接的服务的实例包含到无线应用协议(WAP)服务器的连接、消息接发服务(MMS)、或由特定PDN提供的IMS服务(例如,VoIP、视频电话或文本消息接发)。APN用于3GPP数据接入网络中,例如通用包无线电服务(GPRS)、演进的包核(EPC)。
[0005]通常,无线终端被指派IP地址,以用于经由PDN连接发送到无线终端/从无线终端发送的数据包。然而,在一些情况下,无线终端可包含多个处理实体,例如调制解调器处理器和应用程序处理器,其各自可执行经由独立输送控制协议/因特网协议(TCP/IP)堆栈而请求TON上的网络连接的应用程序。另外,无线终端可本身与其它装置共享TON连接(通常称为系链)。在此些情况下,在不同IP堆栈上运行的应用程序可需要对同一 TON连接的同时接入。

【发明内容】

[0006]本发明中所呈现的实施例提供用于支持对从移动装置上的多个网络层端点接入的包数据网络(TON)的同时接入的技术。所述移动装置可包含需要接入同一 PDN的多个处理实体,例如调制解调器处理器和应用程序处理器。然而,运营商可将单个因特网协议(IP)地址指派给移动装置,以在接入PDN时使用。为了共享所指派的网络地址,在一个实施例中,移动装置将非重叠端口范围指派给每一处理实体。在此实施例中,当处理实体中的一者上的应用程序请求建立到PDN的网络连接时,从指派给所述处理实体的非重叠范围选择端口值。类似地,当移动装置接收到寻址到所指派的IP地址的网络包时,使用所述网络包中的端口值确定包应转发到哪一网络层端点。[0007]在替代实施例中,当处理实体中的一者建立到TON的网络连接时,将为所述网络连接选择的端口值添加到由其它处理实体维持的端口值黑名单。
[0008]在又一实施例中,网络转译(NAT)模块可在所述处理实体中的一者上实施。在此情况下,可为NAT模块的外部接口指派不与指派给所述处理实体的端口范围重叠的端口范围。此实施例的一个变化包含移动装置,其包含单个处理实体和NAT模块两者。在此情况下,可为NAT模块和处理实体指派非重叠端口范围,以用于到TON的网络连接。
【专利附图】

【附图说明】
[0009]图1展示无线通信网络。
[0010]图2A到2D展示突出根据本发明某些方面的促进移动装置上的多个处理实体的同时包数据网络接入的移动装置配置的若干方面的框图。
[0011]图3说明根据本发明某些方面的可由移动装置执行以促进移动装置上的多个处理实体的同时包数据网络接入的实例操作。
[0012]图4说明根据本发明某些方面的可由移动装置上的处理实体执行以将端口值指派给由移动装置上的多个处理实体同时共享的包数据网络上的网络连接的实例操作。
[0013]图5展示基站和移动装置的框图。
【具体实施方式】
[0014]本发明的某些方面提供一种用于在用户设备(UE)(例如移动装置)上的多个处理实体之间共享包数据网络O3DN)的IP地址的方法。即,本发明的方面允许在UE上的不同处理器上运行的多个应用程序/服务同时接入单个TON。连接到TON的应用程序可为嵌入式应用程序和/或系留应用程序,且可共享由TON网关指派的同一因特网协议(IP)地址,PDN网关指派因特网协议版本4 (IPv4)或因特网协议版本6 (IPv6)地址。
[0015]在一个实施例中,连接到同一 TON(且共享同一 IP地址)的应用程序通过连接到同一 Um Iface来这样做,Um Iface在UE上提供经配置以提供来自用于特定数据协议堆栈(例如,用于CDMA2000的点到点协议和基于跳跃距离的路由协议,以及用于演进型通用陆上无线电接入(E-UTRA)的LTE协议)的无线电技术的数据服务的软件。连接到同一 TON的任何系留装置还通过连接到UE上的Um Iface来这样做。在一个实施例中,使用端口分割来创建UE上(例如,在调制解调器处理器与应用程序处理器之间)的多个处理入口的端口值的非重叠范围。UM Iface基于给定包中的端口值将业务转发到给定处理器的IP堆栈。如下文更详细地描述,端口分区可为静态的或动态的。
[0016]另外,在某些实施例中,可使用网络地址转译(NAT)模块来将私用IP地址提供给在任何系留装置上运行的应用程序(如RFC1631中所描述)。如果存在,那么可为NAT模块指派不同的端口范围(相对于指派给其它处理实体的范围),以用于将数据包转发到TON以及NAT模块后面的私用地址/从TON以及所述私用地址转发数据包。
[0017]在一个实施例中,处理实体各自被指派有不同端口范围,以用于由在给定处理实体上运行的应用程序建立的到TON的网络连接。这样做允许处理实体同时接入单个TON连接。举例来说,在通用集成电路卡(UICC)/调制解调器处理器上运行的承载独立协议(BIP)应用程序可使用管理TON连接来提供或配置UE上的订户身份模块(SM)卡,且在应用程序处理器上运行的空中装置管理(OTADM)客户端可同时接入所述管理TON,以提供或配置UE的其它方面。类似地,在系留个人计算机(PC)上运行的文件传送协议(FTP)客户端和在UE上的应用程序处理器上运行的网络浏览器应用程序可同时接入因特网PDN。同时PDN接入的另一实例包含在调制解调器处理器上运行的IP多媒体子系统(MS)客户端(例如,VoIP客户端)以及在应用程序处理器上运行的位置/定位应用程序,其中两个应用程序同时接人 IMS PDN。
[0018]在不同实施例中,取决于UE的配置,NAT模块可在UE的调制解调器处理器或应用程序处理器上运行。另外,在一个实施例中,在多个处理实体与NAT模块之间使用两种端口分割的混合解决方案可经简化以包含两个(或两个以上)处理实体(不具有NAT模块)之间的静态端口分区,或经简化以包含单个处理实体(例如,调制解调器处理器)和NAT模块。端口分区通常指代指派给每一处理实体的端口值的非重叠范围。更具体地说,每一处理实体接收不同范围的端口值,以用于建立与TON的网络连接。下文更详细地描述用于为UE上的多个处理实体提供对I3DN的同时接入的这些变化中的每一者。
[0019]本文所述的技术可用于各种无线通信网络,例如CDMA、TDMA、FDMA、OFDMA、SC-FDMA以及其它网络。通常,可互换地使用术语“网络”和“系统”。CDMA网络可实施无线电技术,例如通用陆上无线电接入(UTRA)、cdma2000等。UTRA包含宽带CDMA(WCDMA)、时分同步CDMA (TD-SCDMA)以及 CDMA 的其它变体。cdma2000 涵盖 IS-2000、IS-95 和 IS-856 标准。TDMA网络可实施例如全球移动通信系统(GSM)等无线电技术。OFDMA网络可实施无线电技术,例如演进型 UTRA(E-UTRA)、超移动宽带(UMB)、IEEE802.11 (W1-Fi)、IEEE802.16 (WiMAX)、IEEE802.20、Flash-C)FDM?等。UTRA和E-UTRA是全球移动电信系统(UMTS)的部分。在频分双工(FDD)和时分双工(TDD)中,3GPP长期演进(LTE)和LTE高级(LTE-A)是使用E-UTRA的UMTS的新版本,其在下行链路上使用OFDMA且在上行链路上使用SC-FDMA。UTRA,E-UTRA, UMTS, LTE、LTE-A及GSM描述于来自名为“第三代合作伙伴计划”(3GPP)的组织的文献中。CDMA2000及UMB描述于来自名为“第三代合作伙伴计划2”(3GPP2)的组织的文献中。本文所描述的技术可用于上文所提到的无线网络和无线电技术,以及其它无线网络和无线电技术。出于清楚起见,下文针对LTE描述所述技术的某些方面,且在以下描述的大部分中使用LTE术语。应注意,所述描述还适用于具有不同术语的其它技术。
[0020]图1展示无线通信系统100,其可为LTE网络或某一其它无线网络。无线网络100可包含若干演进型节点B(eNB) 110和其它网络实体。eNB是与UE通信的实体,且还可称为基站、节点B、接入点等。每一 eNB可为特定地理区域提供通信覆盖。在3GPP中,术语“小区”可指代eNB的覆盖区域和/或服务所述覆盖区域的eNB子系统,这取决于使用所述术语的上下文。
[0021]eNB可提供对宏小区、微微小区、毫微微小区和/或其它类型的小区的通信覆盖。宏小区可覆盖相对较大的地理区域(例如,半径为若干千米),且可允许具有服务预订的UE的不受限接入。微微小区可覆盖相对较小的地理区域,且可允许具有服务预订的UE的不受限接入。毫微微小区可覆盖相对较小的地理区域(例如,家庭),且可允许具有与毫微微小区的关联的UE(例如,在封闭订户群组(CSG)中的UE)的受限接入。用于宏小区的eNB可称为宏eNB。用于微微小区的eNB可称为微微eNB。用于毫微微小区的eNB可称为毫微微eNB或家庭eNB (HeNB)。在图1中所示的实例中,eNBllOa可为宏小区102a的宏eNB,eNB I IOb可为微微小区102b的微微eNB,且eNBlIOc可为毫微微小区102c的毫微微eNB。eNB可支持一个或多个(例如,三个)小区。术语“eNB”、“基站”和“小区”在本文中可互换使用。
[0022]无线网络100还可包含中继站。中继站是可接收来自上游站(例如,eNB或UE)的数据的发射且将所述数据的发射发送到下游站(例如,UE或eNB)的实体。中继站还可以是可为其它UE中继发射的UE。在图1中所示的实例中,中继站IlOd可与eNBllOa和UE120d通信,以便促进eNBllOa与UE120d之间的通信。中继站还可称为中继eNB、中继基站、中继
吳坐-nfr ο
[0023]无线网络100可为包含不同类型的eNB(例如,宏eNB、微微eNB、毫微微eNB、中继eNB等)的异质网络。这些不同类型的eNB可具有不同的发射功率电平、不同的覆盖区域以及不同的对无线网络100中的干扰的影响。举例来说,宏eNB可具有较高发射功率电平(例如,5到40瓦),而微微eNB、毫微微eNB和中继eNB可具有较低的发射功率电平(例如,
0.1到2瓦)。
[0024]网络控制器130可耦合到一组eNB,且可提供对这些eNB的协调和控制。网络控制器130可经由回程与eNB通信。eNB还可彼此通信,例如直接地或经由无线或有线回程间接地通信。
[0025]UE120可分散在整个无线网络100上,且每一 UE可为静止的或移动的。UE还可称为终端、移动台、订户单元、站等。UE可为蜂窝式电话、个人数字助理(PDA)、无线调制解调器、无线通信装置、手持式装置、膝上型计算机、无绳电话、无线本地环路(WLL)站、智能电话、笔记本型计算机、智能本等。
[0026]图2A到2D提供说明移动装置上的处理实体共享指派给TON连接的IP地址的实施例的功能框图。然而,注意,图2A到2D中所示的功能框图经简化以突出本发明的若干方面,且UE可包含多种其它互连组件、模块等。
[0027]首先,图2A展示UE200的框图,其包含调制解调器处理器210和应用程序处理器220两者,以及UM Iface205和数据堆栈215。在此实施例中,UM Iface206提供经配置以提供来自用于特定数据协议堆栈的无线电技术的数据服务的软件组件或模块。举例来说,UM Iface206可向UE200上的不同处理器提供数据链路层类型的服务。另外,UM Iface205可经配置以建立和/或管理到网络225的PDN连接。在此实施例中,为每一 PDN连接例示UM Iface205。举例来说,可例示UM Iface205建立用于管理网络的PDN连接(如应用程序222"所请求),其提供对一组应用程序/服务(例如供应和配置)的接入。可例示额外UMIface205建立与因特网网络的PDN连接,其提供用于一股IP业务的网络,且对于MS网络,其提供对頂S应用程序/服务(例如,VoIP业务)的接入。另外,给定运营商可通过专用PDN提供对特定服务/应用程序的接入。当然,实际PDN连接在特定使用中可变化。数据堆栈215提供经配置以经由UE200的用于到PDN网络255的PDN连接的物理接口来存储、发送和接收数据的软件组件。
[0028]如图所示,调制解调器处理器210在执行应用程序2221;且应用程序处理器220在执行应用程序2222。通过说明的方式,调制解调器处理器210可提供经配置以执行与UE200的操作有关的一个(或一个以上)应用程序222i的处理器。举例来说,应用程序222i可为BIP应用程序,所述BIP应用程序用于配置UE200上的SM卡的需要将数据包发送到管理PDN/从管理TON接收数据的若干方面。类似地,应用程序处理器220可提供经配置以执行应用程序2222的处理器,其还用于配置或供应UE200,例如OTADM客户端,其也将数据包发送到管理TON/从管理PDN接收数据包。在此情况下,应用程序222i和22?两者请求到管理I3DN的网络连接。不同应用程序ZZZ1和2222可类似地需要对其它I3DN的同时接入(例如,连接到因特网I3DN的应用程序或连接到MS PDN的应用程序)。
[0029]在此实施例中,UE200通过将端口分区226i指派给调制解调器处理器210上的IP堆栈221,且将端口分区2262指派给应用程序处理器220上的IP堆栈2242,而解决对给定PDN的同时接入的需要。每一端口分区可指示可供用于由应用程序222"建立的到TON的连接的端口值范围。另外,每一端口分区中的端口值范围不与其它分区中的端口值范围重叠。就是说,每一端口分区提供供调制解调器处理器210或应用程序处理器220使用的不同的非重叠端口值范围。这样做允许调制解调器处理器210和应用程序处理器220上的应用程序222"同时建立到被指派有单个IP地址的给定I3DN连接的网络连接,其中所述连接是通过端口值来区分。
[0030]如图2A中所示,在应用程序222中的一者的请求下,调制解调器处理器210或应用程序处理器220选择尚未由连接到同一 PDN且使用同一 IP地址的任何应用程序使用的端口编号。在不同实施例中,可静态地或动态地创建端口分区226"。对于静态端口空间分割实施例,将可用端口空间分割为非重叠范围,且指派给不同处理器(例如,处理器210和220)。在此情况中,当应用程序222"请求I3DN连接时,应用程序222在其上运行的处理器从指派给所述处理器的特定范围选择端口。对于动态端口分割实施例,每一处理器(例如,处理器210和220)维持禁用端口列表(FPL)。每当一个处理器选择端口编号时,其将选定端口编号传送到另一处理器,所述另一处理器将所述端口编号添加到其FPL,从而在每一处理器上有效地建立端口的黑名单。注意,虽然动态方法可实现与静态方法一样的效果,但其在每次将端口编号指派给应用程序时 也需要处理器间通信。
[0031]在调制解调器处理器210和应用程序处理器220上运行的操作系统各自具有选择端口编号以指派给应用程序222"所请求的网络连接的能力。如所描述,可从指派给相应处理器210、220的非重叠范围选择此些端口编号(或选择为不与FPL冲突)。举例来说,当应用程序222i请求网络连接时,用以建立套接字的端口值是从由端口分区226i指定的范围选择。类似地,当应用程序22?请求网络连接时,用以建立套接字的端口值是从由端口分区2262指定的范围选择。
[0032]对于入站业务,当UM Iface205接收到寻址到指派给给定PDN连接的公用IP地址的网络包时,UM Iface205可评估给定包的输送标头中存在的端口值,以确定是将包转发到IP堆栈22七还是IP堆栈2242。
[0033]如上文所述,在另一实施例中,UE200还可与所连接的装置共享PDN连接,例如经由802.11无线连接“系留”到因特网PDN的膝上型计算机。对于此实施例,端口分割可不为调制解调器处理器210、应用程序处理器220上的应用程序222"以及为一个或一个以上所连接装置单独提供对因特网TON的同时接入,因为UE200可能缺乏用以控制对由此些所连接装置建立的网络连接的端口选择的能力。
[0034]在这些情形中,使用混合解决方案来为多个处理实体提供对给定I3DN的同时接入。更特殊地说,在这些情形中,基于NAT的方法可结合端口分割来使用。举例来说,图2B展示上文相对于图2A所描述的包含调制解调器处理器210和应用程序处理器220的UE200的功能框图。然而,在图2B中所示的实施例中,应用程序处理器220还包含NAT模块235,其用作一个或一个以上客户端装置250的前端接口。客户端装置250可为膝上型或桌上型计算机,但也可为任何其它具有网络能力的装置(例如,平板计算机、游戏控制台,以及其它“网络感知”消费型电子装置)。
[0035]如图所示,网络地址转译(或NAT)是一个网络内所使用的IP地址到另一网络内已知的不同IP地址的转译。一个网络通常表示为内部(或私用)网络,且另一网络为外部(或公用)网络。在本发明的上下文中,外部网络通常指代指派给给定roN(且由调制解调器处理器210和应用程序处理器220共享)的IP地址。并且,内部地址指代由NAT模块235指派给所连接的装置(例如,客户端装置250)的IP地址。
[0036]NAT模块235将私用IP地址指派给客户端装置250上的IP堆栈254。举例来说,假定UE200通过802.11接口而提供对客户端装置250的W1-Fi接入。在此情况下,NAT模块235将私用IP地址指派给所连接的W1-Fi客户端,且客户端装置250上的应用程序252使用指派给IP堆栈254的私用地址发送/接收网络包。公用IP地址由在调制解调器处理器210和应用程序处理器220上以及NAT模块235的外部接口上运行的应用程序使用222卜2。
[0037]另外,在图2B的实施例中,NAT模块235包含端口分区2263。类似于端口分区226",端口分区2263提供不与端口分区226"中的端口值中的任一者重叠的某一范围的端口值,以用于由NAT模块235 (代表所连接的客户端装置250)起始的网络连接。NAT模块235将分区2263中所识别的端口用于NAT模块235与给定PDN连接之间的网络连接。因此,NAT模块235、应用程序222i和应用程序2222可同时接入给定TON。应用程序222"和NAT模块235所创建的网络连接各自使用从相应端口分区226卜3选择的端口值。或者,如果动态地选择端口值,那么将应用程序222"和NAT模块235为网络连接选择的每一端口添加到UE200上的其它处理实体的FPL。
[0038]在一个实施例中,应用程序处理器220将端口编号指派给NAT模块235上的外部接口以作为端口分区2262的子集,且确保与在调制解调器处理器210或应用程序处理器220上运行的应用程序没有冲突。或者,端口分区2262和2263可由UE200指派为不同范围。
[0039]对于在客户端装置250上运行(且连接到同一 I3DN)的应用程序252,NAT模块235将所指派的私用IP地址与端口对映射到同一公用IP地址,但针对每一连接具有不同的端口编号。所述端口编号可选自端口分区2262。明确地说,NAT模块235可维持地址转译表,且为每一 IP连接创建条目,所述条目由IP地址和IP连接的另一端点的端口编索引。对于上行链路包,NAT模块235将本地IP地址与端口对转译为公用IP地址与端口对。对于下行链路包,NAT模块235将公用目的地(IP地址和端口 )转译到对应的本地目的地(IP地址和端口)。
[0040]另外,NAT模块235还可经配置以管理在NAT接口后运行的一些应用程序252出现的NAT遍历问题。举例来说,NAT模块235可包含应用层网关(ALG)。如已知,ALG充当协议感知防火墙,从而监视业务且更新需要额外地址转译的任何有效负载数据。ALG需要理解它们需要解决的较高层协议,且因此具有NAT遍历问题的每一协议需要单独的ALG。作为替代方案,可使用用于NAT的会话遍历公共事业(STUN)(如RFC5389中所描述)或交互式连接性建立(如RFC524中所描述)来解决NAT遍历问题。另外,对于需要从外部网络起始的网络连接的服务,可使用端口转发来为特定端口转发入站业务。[0041]另外,一些网络包,例如因特网控制消息协议(ICMP)包,不包含端口编号。在一个实施例中,UM Iface205可经配置以基于包中不同于端口值的值而将此些包转发到处理器210,220中的一者,或NAT模块235。对于应发送到调制解调器处理器210或应用程序处理器220的包,可使用IP包的ICMP标头中所包含的ICMP识别符值来将ICMP包路由到正确的处理器。举例来说,UM Iface205可经配置以将某些ICMP包路由到调制解调器处理器210。注意,此方法还可用于不包含(或那时不正在使用)NAT模块235的UE。
[0042]对于客户端装置250的遍历NAT模块235的ICMP包,包含于IP数据报的ICMP标头中的ICMP识别符值可用以创建转译表中的条目。通常,ICMP消息可适合一个IP包。然而,在其中ICMP消息包含于IP数据报的多个片段中的情况下,由于仅IP数据报的第一片段含有ICMP标头,因此使用第一片段来创建转译表中的条目。在一个实施例中,跟踪第一片段的IP标头中的IP识别值(如RFC791中所描述)。如果若干片段具有与第一片段相同的IP识别值,那么NAT使用同一转译条目来转译这些片段。
[0043]如图2B中所展示,NAT模块235由应用程序处理器220上的操作系统提供。在替代实施例中,可实施NAT模块以在调制解调器处理器210上执行。举例来说,图2C说明UE200的另一功能框图,其提供UE200上具有对PDN连接的同时接入的多个处理实体。图2C中所示的实施例可在其中应用程序处理器220无法提供NAT模块的情况下使用。
[0044]类似于图2A和2B中所示的UE200,图2C中所示的实施例包含上文相对于图2A所述的调制解调器处理器210和应用程序处理器220。然而,在图2C的实施例中,调制解调器处理器210包含NAT模块260和端口分区265。NAT模块265可大体上如针对图2B的NAT模块235所述那样起作用。因此,在调制解调器处理器210上运行的OS可为NAT模块265上的外部接口指派(或接收)端口分区265,且指派(或接收)端口分区226i以供在调制解调器处理器210上运行的应用程序ZZZ1使用。类似于图2B中的NAT模块235,NAT模块265可将IP地址提供给例如使用USB接口或802.11连接来连接的客户端装置,从而创建NAT模块265后面的私用网络。说明性地,NAT模块265将私用IP地址指派给所连接的客户端装置250(例如,膝上型计算机、平板计算机或其它“网络感知”装置),且客户端装置250上的应用程序252使用指派给IP堆栈254的私用地址来发送/接收网络包。另外,NAT模块265可将从应用程序225发送的网络包中的本地IP地址与端口对转译为对应的公用IP地址与端口对(且反之亦然),以及上文所提到的地址NAT遍历问题和其它NAT相关问题。
[0045]图2D说明用以共享对用户设备装置上的TON的同时接入的多个处理实体的另一实施例。更具体地说,图2D说明UE275的实施例,其中UE200的应用程序处理器(如图2A到2C中所展示)不存在。UE275可为例如用以为多个客户端装置280提供移动网络“热点”的无线数据卡或“圆盘”。UE275还可对应于其中NAT模块290在调制解调器处理器210上运行的配置,且其包含应用程序处理器,但在无应用程序在应用程序处理器上运行的情况下需要对PDN连接的共享接入。
[0046]在图2D的实施例中,NAT模块290和应用程序处理器220各自连接到UMIface205,且共享对指派给一个或一个以上TON连接中的每一者的公用IP地址的接入。如上文所述,UM Iface205可经配置以维持用于区分应用程序处理器220上应用程序282 (和IP堆栈284)所起始的网络连接与应用程序222i (和IP堆栈224J所起始的网络连接的端口转译表。当从调制解调器处理器上的NAT模块290或IP堆栈221的外部接口发送业务时,创建转译表中的条目。其后,可在适当时基于此网络业务中存在的端口地址而转发UMIface205所接收到的业务。另外,一些端口可专用为“属于”调制解调器处理器210。并且,如针对图2B和2C的NAT模块235和260所描述,NAT模块290可在公用与私用地址/端口对之间转译,并且解决上文所提到的NAT遍历问题和其它NAT相关问题。
[0047]图3说明根据本发明某些方面的由UE装置上的多个处理实体执行以促进同时TON接入的实例算法。就是说,图3说明由移动装置执行以将端口分区指派给移动装置上存在的不同处理实体的算法,其中每一处理实体可需要接入由数据运营商指派了单个IP地址的TON。一旦被指派,处理实体就可使用端口值来建立与PDN的网络连接。因为端口范围不重叠,因此不同处理实体可同时使用同一 IP地址建立到I3DN的网络连接。
[0048]如图所示,方法300在步骤305处开始,其中UE确定(或获得)IP地址以用于到PDN的连接。举例来说,UE可与服务提供商网络内的动态主机控制协议(DHCP)服务器交互,以获得一个或一个以上I3DN(例如管理TONUMS TON、通用IP数据网络Η)Ν,以及其它实例)的网络地址。在步骤310处,UE可将端口值范围指派给每一处理实体(例如,指派给调制解调器处理器和应用程序处理器的端口值范围,如上文所论述)。这样做允许每一处理实体使用不同端口值起始给定PDN上的网络连接。
[0049]在步骤315处,如果NAT模块存在于处理实体中的一者上,那么在步骤320处,也指派端口值范围,以供NAT模块的外部接口(即,到给定PDN连接的IP地址的接口 )使用。在一个实施例中,指派给NAT模块的端口值可为指派给实施NAT模块的处理实体的端口值的子集。然而,也可使用用于为处理实体和NAT模块确定端口值范围的其它方法。
[0050]在步骤315 (或320,如果NAT模块存在的话)之后,在步骤325处,在UE以及使用由NAT模块指派的私用地址系留到UE的装置的处理实体上运行的应用程序可同时将网络包路由到PDN连接。
[0051 ] 当处理实体(和/或NAT模块)起始新的连接时,从指派给给定处理实体(或NAT模块的外部接口)且添加到用以将传入业务转发到适当的处理实体(或转发到NAT模块的外部接口)的端口转译表的端口分区选择用于给定网络连接的端口值。举例来说,图4说明根据本发明某些方面的可由UE上的处理实体执行以将端口值指派给到由多个处理实体同时共享的I3DN的网络连接的算法。
[0052]如图所示,方法400在步骤405处开始,其中在处理实体中的一者上运行的应用程序请求端口值以用于使用给定PDN的IP地址发送的数据包。举例来说,调制解调器处理器或应用程序处理器可各自己被指派非重叠的端口范围以用于连接给定TON。在步骤410处,如果不启用(或需要,如在图3D中所示的UE配置中)同时PDN接入,那么为网络连接选择端口,且使用选定端口值产生网络标头(步骤425)。然而,在其中启用对给定PDN的同时接入的情况下,接着在步骤420处,处理实体从指派给所述处理实体(或指派给NAT模块)的端口分区选择端口值以指派给网络连接。并且,因为端口分区不重叠,因此不同处理实体可同时使用同一 IP地址建立到I3DN的网络连接。
[0053]一旦指派端口值,处理实体上的IP堆栈就可产生发送到使用选定端口值的PDN的包的网络标头(步骤420)。并且,在UE中包含多个处理实体的情况下,选择选自不同端口分区的端口值允许多个此类处理实体(以及NAT模块)共享对给定PDN连接的同时接入。在一个实施例中,连接到每一处理实体(和NAT模块,如果存在的话)的UM Iface可维持转译表,所述转译表用以基于其中所指示的端口值来转发发送到与给定PDN连接相关联的IP地址的网络包。
[0054]图5展示设备500的硬件实施方案的部分。更具体地说,图5说明实例可支持用于共享图2A到2D中所说明的PDN连接的功能配置的硬件实施方案。在图5中,电路设备由参考标号500表不,其包含电路且可为UE120的一个配置。在本说明书和所附权利要求书中,应清楚,将术语“电路”解释为结构术语,而不解释为功能术语。举例来说,电路可为电路组件的集合体,例如大量集成电路组件,呈处理和/或存储器单元、单位、块等的形式,例如图5中所展示和描述。
[0055]设备500包括将若干电路链接在一起的中央数据总线502。所述电路包含一个或一个以上处理器504、接收电路506、发射电路508和存储器510。存储器510与处理器504进行电子通信,即处理器504"可从存储器510读取信息且/或将信息写入到存储器510。
[0056]说明性地,设备500包含调制解调器处理器501和应用程序处理器5042。调制解调器处理器501可经配置以执行与设备500的操作有关的应用程序,例如经配置以配置设备上的SM卡或解码由所述设备接收到的GPS信号以确定其位置的应用程序。此些应用程序可依靠由在调制解调器处理器5042上运行的代码管理的第一 IP堆栈来发送和接收网络包。应用程序处理器5042可经配置以执行其它应用程序,例如用户应用程序,例如网络浏览器、电子邮件客户端、OTADM客户端或绘图软件。此些应用程序可依靠由在应用程序处理器5 042上运行的代码管理的第二 IP堆栈来发送和接收网络包。
[0057]每一处理器504"可为通用处理器、中央处理单元(CPU)、微处理器、数字信号处理器(DSP)、控制器、微控制器、状态机、专用集成电路(ASIC)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)等。处理器504可包含处理装置的组合,例如DSP与微处理器的组合、多个微处理器的组合、结合DSP核心的一个或一个以上微处理器,或任何其它此类配置。
[0058]接收电路506和发射电路508可连接到RF(射频)电路,但图中未展示。接收电路506在将信号发出到数据总线502之前可处理和缓冲接收到的信号。另一方面,发射电路508在将数据从装置500发出之前可处理和缓冲来自数据总线502的数据。处理器504可执行数据总线502的数据管理功能,且进一步执行通用数据处理(包含执行存储器510的指令内容)的功能。
[0059]代替于如图5中所示单独地安置,作为替代方案,发射电路508和接收电路506可为处理器504的部分。
[0060]存储器单元510包含大体上由参考标号512表示的一组指令。指令512可由处理器504执行以实施本文所描述的方法。指令512可包含用于从具有地址/端口组合的MAC层接收网络帧的代码514。指令512还可包含用于将接收到的帧转发到设备500上的不同处理器上的IP堆栈的代码516。指令512可进一步包含用于为设备500上的不同处理器指派非重叠端口范围的代码518。指令512还可包含用于指派端口范围以供NAT模块的外部接口使用的代码520。
[0061]存储器510中所展示的指令512可包括任何类型的计算机可读语句。举例来说,存储器510中的指令512可指代一个或一个以上程序、例程、子例程、模块、函数、过程、数据集等。指令512可包括单个计算机可读语句或许多计算机可读语句。
[0062]存储器510可为RAM(随机存取存储器)电路。存储器510可连结到可为易失性或非易失性类型的另一存储器电路(未图示)。作为替代方案,存储器510可由其它电路类型制成,例如EEPROM(电可擦除可编程只读存储器)、EPROM(电可编程只读存储器)、R0M(只读存储器)、ASIC(专用集成电路)、磁盘、光盘,以及此项技术中众所周知的其它电路类型。存储器510可被视为包括里面存储有指令512的计算机可读媒体的计算机程序产品的实例。
[0063]有利地,本发明中所呈现的实施例提供用于在UE装置上的多个处理实体之间共享包数据网络(TON)的共用IP地址的技术。在一个实施例中,处理实体各自被指派有非重叠的端口值范围(称为端口分区),以用于由在给定处理实体上运行的应用程序建立的到PDN的网络连接。这样做为所述处理实体提供对单个PDN连接的同时接入。另外,在某些实施例中,可使用NAT模块来将私用IP地址提供给在任何系留装置上运行的应用程序。如果存在,那么还可为NAT模块指派不同的端口范围(相对于指派给其它处理实体的范围),以用于将数据包转发到TON以及NAT模块后面的私用地址/从TON以及NAT模块后面的私用地址转发数据包。
[0064]提供本发明的先前描述是为了使所属领域的技术人员能够制造或使用本发明。所属领域的技术人员将容易了解对本发明的各种修改,且本文中界定的一股原理可应用于其它变化而不背离本发明的精神或范围。因此,本发明无意限于本文中描述的实例和设计,而是将被赋予与本文中揭示的原理和新颖特征相一致的最广范围。
【权利要求】
1.一种用于无线通信的方法,其包括: 确定移动装置的网络地址以连接到包数据网络; 向所述移动装置上的第一处理实体指派第一端口分区以与所述网络地址一起使用以用于由在所述第一处理实体上执行的应用程序起始的到所述包数据网络的连接;以及 向所述移动装置上的第二处理实体指派第二端口分区以与所述网络地址一起使用以用于由在所述第二处理实体上执行的应用程序起始的到所述包数据网络的连接,其中所述第一和第二端口分区不重叠。
2.根据权利要求1所述的方法,其中所述移动装置上的所述第一处理实体是调制解调器处理器,所述调制解调器处理器包含第一因特网协议堆栈,且其中所述移动装置上的所述第二处理实体是应用程序处理器,所述应用程序处理器包含第二因特网协议堆栈。
3.根据权利要求1所述的方法,其进一步包括: 向所述移动装置上的网络地址转译模块指派第三端口分区以用于由通过所述网络地址转译模块的外部接口连接到所述包数据网络的应用程序起始的到所述包数据网络的网络连接,其中所述第三端口分区不与所述第一端口分区或所述第二端口分区重叠。
4.根据权利要求3所述的方法,其中在所述第一处理实体或所述第二处理实体上实施所述网络地址转译模块。
5.根据权利要求3所 述的方法,其进一步包括: 通过所述移动装置接收具有与指派给所述移动装置以用于所述包数据网络连接的所述网络地址匹配的目的地地址且具有端口值的网络包;以及 基于所述端口值,将所述包转发到所述第一处理实体、所述第二处理实体以及所述网络地址转译模块的所述外部接口中的一者。
6.根据权利要求1所述的方法,其进一步包括: 通过所述移动装置接收具有与指派给所述移动装置以用于所述包数据网络连接的所述网络地址匹配的目的地地址且具有端口值的网络包;以及 基于所述端口值,将所述包转发到所述第一处理实体和所述第二处理实体中的一者。
7.一种用于无线通信的方法,其包括: 确定移动装置的网络地址以连接到包数据网络; 通过所述移动装置接收具有与所述包数据网络的所述网络地址匹配的目的地地址且具有端口值的网络包;以及 基于所述端口值,将所述包转发到第一处理实体以及网络地址转译模块的外部接口中的一者。
8.根据权利要求7所述的方法,其中所述第一处理实体为所述移动装置上的调制解调器处理器,且其中所述调制解调器处理器执行一个或一个以上应用程序且包含第一因特网协议堆栈。
9.根据权利要求7所述的方法,其进一步包括: 从所述网络地址转译模块后面的客户端装置接收用以创建到可经由所述包数据网络到达的主机的网络连接的请求;以及 将端口值指派给所述网络连接,其中将所述端口值选择成不与所述网络地址转译模块或所述第一处理实体正使用的用于到所述包数据网络的连接的任何端口值冲突。
10.一种用于无线通信的方法,其包括: 通过移动装置上的第一处理实体接收用以建立到包数据网络的连接的请求;以及 将端口值指派给所述连接,其中从第一端口范围选择所述端口值,其中所述第一端口范围不与所述移动装置上的第二处理实体所使用的第二端口范围重叠。
11.根据权利要求10所述的方法,其中所述第一端口范围和所述第二端口范围不与由所述第一处理实体和所述第二处理实体中的一者实施的网络地址转译模块所使用的第三端口范围重叠。
12.一种用于无线通信的设备,其包括: 用于确定移动装置的网络地址以连接到包数据网络的装置; 用于向所述移动装置上的第一处理实体指派第一端口分区以与所述网络地址一起使用以用于由在所述第一处理实体上执行的应用程序起始的到所述包数据网络的连接的装置;以及 用于向所述移动装置上的第二处理实体指派第二端口分区以与所述网络地址一起使用以用于由在所述第二处理实体上执行的应用程序起始的到所述包数据网络的连接的装置,其中所述第一和第二端口分区不重叠。
13.根据权利要求12所述的设备,其中所述移动装置上的所述第一处理实体是调制解调器处理器,所述调制解 调器处理器包含第一因特网协议堆栈,且其中所述移动装置上的所述第二处理实体是应用程序处理器,所述应用程序处理器包含第二因特网协议堆栈。
14.根据权利要求12所述的设备,其进一步包括: 用于向所述移动装置上的网络地址转译模块指派第三端口分区以用于由通过所述网络地址转译模块的外部接口连接到所述包数据网络的应用程序起始的到所述包数据网络的网络连接的装置,其中所述第三端口分区不与所述第一端口分区或所述第二端口分区重叠。
15.根据权利要求14所述的设备,其中所述网络地址转译模块是在所述第一处理实体或所述第二处理实体上实施。
16.根据权利要求14所述的设备,其进一步包括: 用于通过所述移动装置接收具有与指派给所述移动装置以用于所述包数据网络连接的所述网络地址匹配的目的地地址且具有端口值的网络包的装置;以及 用于基于所述端口值将所述包转发到所述第一处理实体、所述第二处理实体以及所述网络地址转译模块的所述外部接口中的一者的装置。
17.根据权利要求12所述的设备,其进一步包括: 用于通过所述移动装置接收具有与指派给所述移动装置以用于所述包数据网络连接的所述网络地址匹配的目的地地址且具有端口值的网络包的装置;以及 用于基于所述端口值将所述包转发到所述第一处理实体和所述第二处理实体中的一者的装置。
18.一种用于无线通信的设备,其包括: 用于确定移动装置的网络地址以连接到包数据网络的装置; 用于通过所述移动装置接收具有与所述包数据网络的所述网络地址匹配的目的地地址且具有端口值的网络包的装置;以及用于基于所述端口值将所述包转发到第一处理实体以及网络地址转译模块的外部接口中的一者的装置。
19.根据权利要求18所述的设备,其中所述第一处理实体为所述移动装置上的调制解调器处理器,且其中所述调制解调器处理器执行一个或一个以上应用程序且包含第一因特网协议堆栈。
20.根据权利要求18所述的设备,其进一步包括: 用于从所述网络地址转译模块后面的客户端装置接收用以创建到可经由所述包数据网络到达的主机的网络连接的请求的装置;以及 用于将端口值指派给所述网络连接的装置,其中将所述端口值选择成不与所述网络地址转译模块或所述第一处理实体正使用的用于到所述包数据网络的连接的任何端口值冲关。
21.一种用于无线通信的设备,其包括: 用于通过移动装置上的第一处理实体接收用以建立到包数据网络的连接的请求的装置;以及 用于将端口值指派给所述连接的装置,其中从第一端口范围选择所述端口值,其中所述第一端口范围不与所述移动装置上的第二处理实体所使用的第二端口范围重叠。
22.根据权利要求21所述的设备,其中所述第一端口范围和所述第二端口范围不与由所述第一处理实体和所述第二处理实体中的一者实施的网络地址转译模块所使用的第三端口范围重叠。
23.—种设备,其包括: 电路,其经配置以: 确定移动装置的网络地址以连接到包数据网络; 向所述移动装置上的第一处理实体指派第一端口分区以与所述网络地址一起使用以用于由在所述第一处理实体上执行的应用程序起始的到所述包数据网络的连接;以及 向所述移动装置上的第二处理实体指派第二端口分区以与所述网络地址一起使用以用于由在所述第二处理实体上执行的应用程序起始的到所述包数据网络的连接,其中第一和第二端口范围不重叠。
24.—种设备,其包括: 电路,其经配置以: 确定移动装置的网络地址以连接到包数据网络; 通过所述移动装置接收具有与所述包数据网络的所述网络地址匹配的目的地地址且具有端口值的网络包;以及 基于所述端口值,将所述包转发到第一处理实体以及网络地址转译模块的外部接口中的一者。
25.—种设备,其包括: 电路,其经配置以: 通过移动装置上的第一处理实体接收用以建立到包数据网络的连接的请求;以及将端口值指派给所述连接,其中从第一端口范围选择所述端口值,其中所述第一端口范围不与所述移动装置上的第二处理实体所使用的第二端口范围重叠。
26.一种计算机程序产品,其包括上面存储有指令的计算机可读媒体,所述指令可由一个或一个以上处理器执行以用于: 确定移动装置的网络地址以连接到包数据网络; 向所述移动装置上的第一处理实体指派第一端口分区以与所述网络地址一起使用以用于由在所述第一处理实体上执行的应用程序起始的到所述包数据网络的连接;以及 向所述移动装置上的第二处理实体指派第二端口分区以与所述网络地址一起使用以用于由在所述第二处理实体上执行的应用程序起始的到所述包数据网络的连接,其中第一和第二端口范围不重叠。
27.一种计算机程序产品,其包括上面存储有指令的计算机可读媒体,所述指令可由一个或一个以上处理器执行以用于: 确定移动装置的网络地址以连接到包数据网络; 通过所述移动装置接收具有与所述包数据网络的所述网络地址匹配的目的地地址且具有端口值的网络包;以及 基于所述端口值,将所述包转发到第一处理实体以及网络地址转译模块的外部接口中的一者。
28.一种计算机程序产品,其包括上面存储有指令的计算机可读媒体,所述指令可由一个或一个以上处理器执行以用于: 通过移动装置上的第一处理实体接收用以建立到包数据网络的连接的请求;以及将端口值指派给所述连接,其中从第一端口范围选择所述端口值,其中所述第一端口范围不与所述移动装置上的第二处理实体所使用的第二端口范围重叠。
【文档编号】H04L29/06GK103650460SQ201180072191
【公开日】2014年3月19日 申请日期:2011年7月14日 优先权日:2011年7月13日
【发明者】赵苏利, 斯里尼瓦桑·巴拉苏布拉马尼亚安, 阿吉塔·T·帕亚皮利 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1