CN101228806B - 在多宿主多模式通信装置中选择数据接口 - Google Patents
在多宿主多模式通信装置中选择数据接口 Download PDFInfo
- Publication number
- CN101228806B CN101228806B CN2006800264639A CN200680026463A CN101228806B CN 101228806 B CN101228806 B CN 101228806B CN 2006800264639 A CN2006800264639 A CN 2006800264639A CN 200680026463 A CN200680026463 A CN 200680026463A CN 101228806 B CN101228806 B CN 101228806B
- Authority
- CN
- China
- Prior art keywords
- data
- interface
- application program
- network
- subgroup
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/06—Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/308—Route determination based on user's profile, e.g. premium users
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/18—Selecting a network or a communication service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/08—Access point devices
- H04W88/10—Access point devices adapted for operation in multiple networks, e.g. multi-mode access points
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/16—Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
- H04W28/18—Negotiating wireless communication parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
- H04W80/04—Network layer protocols, e.g. mobile IP [Internet Protocol]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
- Radio Relay Systems (AREA)
- Communication Control (AREA)
Abstract
本发明揭示一种在多宿主网络装置与数据网络之间发射和接收数据的方法,且所述方法包括定义网络策略且将所述网络策略传输到路由模块。另外,所述方法包括从所述路由模块接收路由范围。所述路由范围识别满足所述网络策略的通往所述数据网络的数据接口子组,其中所述数据接口子组选自一组可用的数据接口,且其中所述数据接口子组包括至少一个数据接口。
Description
对相关申请案的参考
本申请案主张2005年6月1日申请的第60/686,844号美国临时专利申请案的优先权。
技术领域
本发明大体上涉及网络装置。更明确地说,本发明涉及多宿主网络装置。
背景技术
近些年来,操作中的无线手持机的数目已经急剧增加。随着对这些移动装置的需要的增加,制造商正将这些装置构建成包括许多数据服务。这种数据服务的汇聚可使得无线装置成为数据联网的强大资源。然而,由于无线装置所提供的数据服务的增加,对无线装置的恶意攻击的数目也已经增加。因此,越来越关注对这些装置加以保护以免受蓄意攻击。
无线电话已经成为包括许多数据接口的多宿主装置,无线电话可通过所述数据接口来接受和发送数据。在任何时候,在特定无线电话内,这些数据接口中的一者以上可开放以用于与因特网或另一种数据网络进行直接数据传送。移动装置中的数据协议堆栈对于所述装置的所述多个数据接口来说通常是透明的。此外,只要传入数据的协议地址与电话的协议地址匹配,数据协议堆栈可从所述数据接口中的任一者接受数据。因而,无线电话是开放的且容易受到来自因特网和其它数据网络的许多攻击。
举例来说,当在多宿主装置处在数据接口上接收包时,所述分组可路由到恰当套接字或应用程序。一般来说,对于使用传输控制协议(TCP)连接的套接字来说,基于四(4)个元组(例如,源地址(src_addr)、源端口(src_port)、目的地地址(dst_addr)和目的地端口(dst_port))将包路由到所述套接字。对于使用用户数据报协议(UDP)连接的套接字来说,基于两个元组(例如,目的地地址(dst_addr)和目的地端口(dst_port))将包路由到所述套接字。对于例如因特网控制消息协议(ICMP)或基于非因特网协议(IP)的协议等其它协议来说,可使用网络和传输层标头中的其它字段。
遗憾的是,在多宿主装置中,上文描述的参数可能由于若干原因而不能够唯一地识别数据接口。举例来说,可向多宿主装置内的数据接口指配重复的私用地址。而且,多宿主装置内的多个应用程序可试图使用不同网络数据接口来接入相同服务。在此类情形中,所述应用程序可绑定到相同服务接入点(SAP),例如在UDP或TCP的情况下是相同端口编号。因而,可能不能够将包正确路由到恰当目的地应用程序。
多宿主装置还可能容易受到经由多宿主装置处可用的不同数据接口的欺骗性攻击。举例来说,在典型的多宿主装置中,安装在其中的应用程序可从任何网络数据接口接收数据,只要所述数据接口开放用于数据传送且所述数据协议地址(例如,IP地址、端口编号等)与应用程序的协议地址匹配。
除安全性考虑事项之外,数据网络提供商还关注对数据网络上的移动电话可用的各种服务和技术的计费和使用。举例来说,存在与数据网络提供商提供的每项新服务和技术相关联的特定成本,且运营商通常关心对移动电话用户所使用的各种服务的一站式分离计费。如果移动电话内的应用程序限于使用移动电话处可用的特定数据接口来进行数据传送,那么运营商网络可较容易地基于每个数据接口的使用来明确地跟踪与使用不同技术和服务相关联的计费和成本。
另外,在多宿主联网装置中,用于联网应用程序的端口空间通常在装置可用的所有数据接口之间共享。如果某一应用程序正使用特定端口编号来在特定数据接口上进行数据传送,那么其它应用程序均不能使用同一端口编号——即使其它应用程序正使用完全不同的数据接口。这对于可能需要用同一端口编号在不同数据接口上运行不同服务的装置来说可是个不必要的限制。举例来说,网络装置可包括使用同一端口编号(例如,端口八十(80))但位于不同数据接口上的两个不同web服务器。大多数网络装置不允许此灵活性。一些实施方案允许绑定到用于所有数据接口或用于特定数据接口(即,一个接口或所有接口)的端口。
发明内容
本发明揭示一种将数据从多宿主网络装置传输到数据网络的方法,且所述方法包括界定网络策略和将所述网络策略传输到路由模块。另外,所述方法包括从路由模块接收路由范围。所述路由范围识别满足网络策略的通往数据网络的数据接口子组,其中所述数据接口子组选自一组可用的数据接口,且其中所述数据接口子组包括至少一个数据网络。
在特定实施例中,网络策略识别用于从所述组可用的数据接口选择所述数据接口子组的一个或一个以上标准。另外,网络策略界定待用于向应用程序或从应用程序传送数据的两个或两个以上数据接口。在另一特定实施例中,网络策略由应用程序界定。
在又一特定实施例中,所述数据接口子组包括全球移动通信***(GSM)数据接口、通用分组无线服务(GPRS)数据接口、通用移动电信***(UMTS)数据接口、码分多址(CDMA)数据接口、CDMA 2000数据接口、CDMA演进数据优化(EVDO)接口、蓝牙BT数据接口、802.11a数据接口、802.11b数据接口、802.11g数据接口、802.11i数据接口、802.15数据接口、802.16数据接口、宽带CDMA(WCDMA)数据接口、正交频率码分多路复用(OFCDM)数据接口、全球定位***(GPS)数据接口或其组合。在特定实施例中,所述接口中的每一者可以是因特网协议版本4(IPv4)数据接口、IP版本6(IPv6)数据接口或另一种网络协议数据接口。
在再一特定实施例中,将与网络策略相关联的应用程序绑定到由路由范围识别的数据接口子组。在另一实施例中,所述方法包括:确定所述数据接口子组内的优选数据接口是否可用;当所述优选数据接口可用时,经由所述优选数据接口开放连接;以及经由优选数据接口传输数据。另外,所述方法包括:当所述优选数据接口不可用时,确定所述数据接口子组内的下一优选数据接口是否可用;经由下一优选数据接口开放连接;以及经由下一优选数据接口传输数据。在再一实施例中,所述方法包括:确定所述连接是否中断;当所述连接中断时,确定下一优选数据接口是否可用;经由下一优选数据接口开放连接;以及经由下一优选数据接口传输数据。
在另一实施例中,揭示一种多宿主网络装置,且所述装置包括处理器和所述处理器可存取的存储器。另外,至少一个应用程序存储在存储器内,且至少一个网络策略存储在存储器中。在这个实施例中,所述至少一个网络策略界定待由应用程序用于发射和接收数据的至少一个数据接口。
在又一实施例中,揭示一种处理器可存取的计算机可读媒体,且所述计算机可读媒体包括至少一个应用程序和与所述至少一个应用程序相关联的至少一个网络策略。在这个实施例中,网络策略识别多宿主网络装置的可用于相对于应用程序传送数据的两个或两个以上数据接口。
在再一实施例中,揭示一种将数据接口绑定到应用程序的方法,且所述方法包括从应用程序接收网络策略以及将应用程序绑定到多宿主网络装置处的一组可用数据接口内的数据接口子组而并非所有数据接口。在这个实施例中,所述数据接口子组包括至少一个数据接口。
在又一实施例中,揭示一种接收数据的方法,且所述方法包括:从数据接口接收数据分组;将所述数据接口的因特网协议(IP)地址与和所述分组相关联的目的地IP地址进行比较;以及当所述数据接口的IP地址不与所述目的地IP地址匹配时,丢弃所述数据分组。
在另一实施例中,揭示一种多宿主网络装置,且所述装置包括处理器、所述处理器可存取的存储器以及存储在所述存储器内的路由模块。在这个实施例中,路由模块经配置以从应用程序接收网络策略且将应用程序绑定到一组可用数据接口内的数据接口子组。
在再一实施例中,揭示一种处理器可存取的计算机可读媒体,且所述计算机可读媒体包括路由范围。在这个实施例中,路由范围指示多宿主装置处的一组可用数据接口内的数据接口子组,且所述多宿主装置内的应用程序绑定到所述数据接口子组以用于发射和接收数据。
在又一实施例中,揭示一种将应用程序绑定到网络装置内的至少一个端口的方法,且所述方法包括:接收将端口绑定到请求的应用程序的请求;确定开放的应用程序是否绑定到所述端口;以及当所述开放的应用程序没有绑定到所述端口时,将所述请求的应用程序绑定到所述端口。
在再一实施例中,揭示一种用户界面,且所述用户界面包括应用程序菜单。在这个实施例中,应用程序菜单包括安装在多宿主网络装置处的应用程序的列表,且用户可从所述应用程序菜单选择应用程序以便编辑与选定应用程序相关联的至少一个网络设置。
在再一实施例中,揭示一种多宿主网络装置,且所述装置包括用于将网络策略传输到路由模块的装置和用于将来自路由模块的路由范围存储在套接字中的装置。在这个实施例中,所述路由范围识别满足网络策略的通往数据网络的数据接口子组,且所述数据接口子组选自一组可用数据接口。另外,所述数据接口子组包括至少一个数据接口。
在另一实施例中,揭示一种多宿主网络装置,且所述装置包括用于从应用程序接收网络策略的装置,以及用于将应用程序绑定到多宿主网络装置处的一组可用数据接口内的数据接口子组而并非所有数据接口的装置。在这个实施例中,所述数据接口子组包括至少一个数据接口。
在又一实施例中,揭示一种多宿主网络装置,且所述装置包括:用于从数据接口接收数据分组的装置;用于将所述数据接口的因特网协议(IP)地址与和所述分组相关联的目的地IP地址进行比较的装置;以及用于在所述数据接口的IP地址不与所述目的地IP地址匹配时丢弃所述数据分组的装置。
在另一实施例中,揭示一种多宿主网络装置,且所述装置包括:用于接收将端口绑定到请求的应用程序的请求的装置;用于确定开放的应用程序是否绑定到所述端口的装置;以及用于在所述开放的应用程序没有绑定到所述端口时将所述请求的应用程序绑定到所述端口的装置。
本文所揭示的一个或一个以上实施例的优点可包括将应用程序绑定到可用网络数据接口子组。
另一优点可包括丢弃不到达应用程序所核准的数据接口上的传入数据分组。
又一优点可包括基于针对应用程序的可用数据接口的层级来传输数据分组。
在阅读整个申请案之后将容易了解本发明的其它方面、优点和特征,所述申请案包括以下部分:附图说明、具体实施方式和权利要求书。
附图说明
通过结合附图参看以下详细描述将更容易了解本文描述的实施例的方面和附随优点,其中:
图1是说明通信***的特定实施例的概括图;
图2是说明数据联网堆栈的概括图;
图3是说明传输数据的方法的流程图;
图4是说明将应用程序绑定到可用数据接口子组的方法的流程图;
图5是说明接收数据的方法的流程图;
图6是说明确定临时路由范围是否符合应用程序的路由范围的方法的流程图;
图7是说明处理传入数据分组的第一实例的概括图;
图8是说明处理传入数据分组的第二实例的概括图;
图9是说明处理传入数据分组的第三实例的概括图;
图10是说明处理传入数据分组的第四实例的概括图;
图11是说明将应用程序绑定到无线装置处的一个或一个以上接口的方法的流程图;
图12是具有第一图形用户数据界面的无线装置的图;
图13是具有第二图形用户数据界面的无线装置的图;
图14是具有第三图形用户数据界面的无线装置的图;以及
图15是具有第四图形用户数据界面的无线装置的图。
具体实施方式
参看图1,展示示范性且非限制性通信***,且所述***一般指定为100。如图所示,所述***包括第一网络装置102和第二网络装置104。在特定实施例中,第一网络装置102与第二网络装置104可经由第一数据网络106、第二数据网络108、第三数据网络110和第N数据网络中的一者或一者以上通信。在特定实施例中,数据网络106、108、110、112可以是全球移动通信***(GSM)网络、通用分组无线服务(GPRS)网络、通用移动电信***(UMTS)网络、码分多址(CDMA)网络、CDMA 2000网络、CDMA演进数据优化(EVDO)网络、蓝牙BT网络、802.11a网络、802.11b网络、802.11g网络、802.11i网络、802.15网络、802.16网络、宽带CDMA(WCDMA)网络、正交频率码分多路复用(OFCDM)网络、全球定位***(GPS)网络或其组合。
如图1所示,第一网络装置102可包括处理器114和存储器16,所述存储器16可被所述处理器114存取。如图所示,应用程序118、套接字层119和路由模块120可嵌入或存储在存储器116内且可由处理器114执行。在特定实施例中,套接字层119包括应用程序可用来发送和接收数据的一个或一个以上套接字。在操作期间,应用程序118将网络策略122经由套接字层119传输到路由模块120。在特定实施例中,网络策略122可识别应用程序可用来与网络106、108、110、112中的一者或一者以上通信的一组数据接口。响应于网络策略122,路由模块120将路由范围124返回到套接字层119,且所述路由范围可存储在套接字层119内以用于与应用程序118相关联的套接字。在特定实施例中,路由范围124包括满足网络策略的数据接口子组。所述数据接口子组选自第一网络装置102处可用的数据接口132、134、136。
图1指示第一网络装置102可包括第一硬件端口126、第二硬件端口128和第N硬件端口130。而且,网络装置102可包括第一数据接口132、第二数据接口134和第N数据接口136。
在特定实施例中,数据接口132、134、136中的每一者可以是全球移动通信***(GSM)数据接口、通用分组无线服务(GPRS)数据接口、通用移动电信***(UMTS)数据接口、码分多址(CDMA)数据接口、CDMA2000数据接口、CDMA演进数据优化(EVDO)接口、蓝牙BT数据接口、802.11a数据接口、802.11b数据接口、802.11g数据接口、802.11i数据接口、802.15数据接口、802.16数据接口、宽带CDMA(WCDMA)数据接口、正交频率码分多路复用(OFCDM)数据接口、全球定位***(GPS)数据接口或其组合。在特定实施例中,所述接口中的每一者可以是因特网协议版本4(IPv4)数据接口、IP版本6(IPv6)数据接口或另一种网络协议数据接口。
如图1所说明,第一网络装置102还包括耦合到处理器114和天线140的收发器138。在特定实施例中,收发器138发射和接收数据分组,且促进与网络106、108、110、112中的一者或一者以上通信。在特定实施例中,第二网络装置104可包括结合第一网络装置102描述的元件中的一者或一者以上。
在特定实施例中,第一网络装置102或第二网络装置104是多宿主联网设备。另外,为了支持数据服务的广泛多样性,第一网络装置102包括多个网络数据接口132、134、136。一旦数据接口132、134、136中的每一者经配置以连接到相关联的网络106、108、110、112,每个数据接口便能够进行数据传送。在特定实施例中,通过多宿主,数据接口132、134、136中的一者或一者以上可同时活动,且每个活动的数据接口132、134、136可提供对不同物理或逻辑网络106、108、110、112的接入。
此外,在特定实施例中,每个活动的数据接口132、134、136包括指配给其的单独网络地址,例如用于IP网络的IP地址。所述网络地址中的每一者在全球可是唯一的,或者如果从私用空间指配的话,所述网络地址中的一者或一者以上可以是重复的。
在特定实施例中,多宿主可允许第一网络装置102接入具有不同数据技术(例如,CDMA、UMTS、GSM等)的不同网络。另外,多宿主可允许第一网络装置102基于与可用网络106、108、110、112相关联的可变成本来接入可用网络106、108、110、112。因而,在所需的质量和成本效益方面,向用户或第一网络装置102内的应用程序赋予更多灵活性。多宿主还可允许第一网络装置基于网络所提供的服务质量来接入可用网络106、108、110、112。用户可能需要特定应用程序使用高质量网络——不管与使用网络相关联的成本如何。另一方面,用户可指示应用程序不超过特定成本且仅使用低于所述成本的网络——不管网络连接的质量如何。
在特定实施例中,多宿主可允许第一网络装置102接入不同网络类型(例如,IPv4、IPv6、IPX等)。而且,多宿主可允许第一网络装置102内的应用程序接入不同物理/逻辑网络所提供的各种服务。举例来说,特定运营商可部署不同网络来提供不同类型的IP服务,例如因特网、电子邮件、SMS、MMS、WAP等。
图2说明TCP/IP联网堆栈的示范性、非限制性实施例,一般指定为200。如图所示,联网堆栈200包括物理层202。数据接口层204位于所述物理层202上方。在特定实施例中,数据接口层204包括第一数据接口206、第二数据接口208、第三数据接口210和第N数据接口212。
如图2所描绘,因特网协议(IP)层214位于所述数据接口层204上方。在说明性实施例中,所述IP层214包括一个或一个以上IP,例如IP版本4(IPv4)216和IP版本6(IPv6)218。图2进一步展示位于IP层214上方的传输层220。所述传输层220可包括一个或一个以上通信协议,例如传输控制协议(TCP)222或用户数据报协议(UDP)224。另外,套接字层226可位于传输层220上方。而且,一个或一个以上应用程序可位于所述套接字层226上方。
参看图3,展示一种将数据从网络装置传输到数据网络的方法,且所述方法开始于方框300处。在方框300处,网络装置内的应用程序将网络策略传输到网络装置内的路由模块。在特定实施例中,应用程序和路由模块可由单个处理器同时执行。或者,应用程序和路由模块可由不同处理器执行。
在特定实施例中,网络策略可识别满足所述网络策略中所规定的一个或一个以上标准的一组数据接口。举例来说,网络策略可规定所述标准作为所有UMTS数据接口或所有IPv4数据接口。另外,网络策略可规定服务质量标准,例如最大延迟值、最大抖动值、带宽值或其组合。而且,网络策略可规定最大成本、通信技术类型、一个或一个以上运营商或其组合。在应用程序可起始数据传送之前,所述应用程序可在满足网络策略的一组数据接口中提高特定数据接口。
在另一特定实施例中,对打开哪个数据接口的决策可由数据堆栈的网络管理软件执行。另外,可基于最惠路由(例如,基于特定网络策略)来执行所述决策。在特定实施例中,每个数据接口可包括其自身的接入控制列表(ACL),其实质上是规则列表。此外,每个数据接口可基于与应用程序相关联的网络策略来评估对其的接入。作为评估的一部分,ACL可限制对数据接口的接入或针对所述数据接口返回非零优先级编号(例如,1到5)。非零优先级编号表示数据接口可与给定策略一起使用,且优先级编号识别优选等级。
在说明性实施例中,路由模块可评估与应用程序相关联的网络策略和与每个可用数据接口相关联的ACL,且选择具有最高优先级的数据接口。因而,路由模块可将所述应用程序绑定到具有最高优先级的数据接口,以便将数据发送出去。在特定实施例中,在任何给定时间,许多数据接口可开放以进行数据传送,且每个数据接口可绑定到单独的应用程序以便实现无线装置上的发射侧多宿主。如果特定数据接口未开放,那么可将其打开以使其开放用于数据通信。
移动到方框302,从路由模块接收路由范围。另外,在方框303处,可将路由范围存储在套接字层内以用于与所述应用程序相关联的套接字。在特定实施例中,路由范围指示满足网络策略的数据接口子组。所述子组中的每个数据接口可包括优先级编号。因而,可将所述数据接口子组排列成从优选数据接口到最不优选数据接口的层级。在说明性实施例中,所述数据接口子组选自在网络装置处的一组可用数据接口。
在决策步骤304处,网络装置确定应用程序是否试图将数据传输到数据网络。如果不是,那么所述方法在状态306处结束。如果是,那么方法前进到决策步骤308,且网络装置确定路由范围内(即,绑定到应用程序的所述数据接口子组内)的优选数据接口是否可用。如果优选数据接口可用,那么方法移动到方框310且网络装置经由优选数据接口开放信道。相反地,如果优选数据接口不可用,那么方法前进到决策步骤312且网络装置决定路由范围内的下一优选数据接口是否可用。
如果下一优选数据接口不可用,那么方法移动到方框314,且例如经由网络装置处的显示器向网络装置的用户显示错误消息。否则,如果下一优选数据接口可用,那么方法前进到方框310,且网络装置经由所述数据接口开放信道。在特定实施例中,可能在显示错误消息之前存在多个迭代。换句话说,可能在数据接口层级中存在多个下一优选数据接口。举例来说,数据接口层级可包括优选数据接口、第一下一优选数据接口、第二下一优选数据接口、第三下一优选数据结构等。在特定实施例中,网络装置可保持对下一可用接口的检查,直到排除路由范围内的所有接口为止。
前进到方框316,应用程序经由可用的数据接口来传输数据。在决策步骤318处,网络装置确定连接是否被中断。如果不是,那么方法移动到决策步骤320,且网络装置确定数据传输是否完成。如果是,那么方法在状态306处结束。如果没有完成数据传输,那么方法返回到方框316且如所描述那样继续进行。
返回到决策步骤318,如果连接中断,那么方法移动到决策步骤322,且网络装置确定路由范围内的下一优选数据接口是否可用。如果不可用,方法在状态306处结束。另一方面,如果下一优选数据接口可用,那么方法继续进行决策步骤324,且网络装置确定用于所述数据传送的协议是否是面向连接的。如果协议不是面向连接的,例如协议是无连接用户数据报协议(UDP),那么方法移动到方框326,且应用程序无缝地跳跃到下一可用数据接口而不会中断连接性。相反地,如果协议是面向连接的,例如协议是传输控制协议(TCP),那么方法前进到方框328,且应用程序再次连接到下一可用数据接口。如果协议是TCP,那么连接性将在应用程序经由新数据接口重新连接时被中断。从方框326或方框328,方法前进到决策步骤320且如所描述那样继续进行。
在特定实施例中,使用上述方法,应用程序可规定用于与应用程序相关联的数据传送的网络策略。网络策略可限制应用程序在其上发送和接收数据的数据接口。在传输路径上,针对所述应用程序从已核准的数据接口子组中选择一个数据接口。在特定实施例中,所选择的数据接口可以是基于网络策略标准为最合适的(即,最高优先级),进而优化传输路径。另外,在特定实施例中,应用程序使用所选择的传输数据接口,直到完成数据传送或丢失数据接口为止。如果数据接口丢失,那么基于优先级从所述数据接口子组(如果可用的话)选择新的数据接口。这允许数据传输符合网络策略,即使最高优先级数据接口丢失。
图4描绘一种将应用程序绑定到一群组可用数据接口内的数据接口子组的方法。在方框400处开始,路由模块从应用程序接收网络策略。在方框402处,路由模块根据网络策略和可用的数据接口创建路由范围。在特定实施例中,路由范围包括或指向满足所述应用程序的网络策略的可用数据接口子组。移动到方框404,路由模块将应用程序绑定到路由范围内的可用数据接口。在方框406处,路由模块将路由范围返回到套接字层进行存储以用于与所述应用程序相关联的套接字。方法接着在状态408处结束。
参看图5,展示一种在网络装置处从数据网络接收数据的方法,且所述方法在方框500处开始。在方框500处,网络装置在数据堆栈的IP层处从数据接口接收数据分组。移动到决策步骤502,网络装置确定数据分组的目的地IP地址是否与指配给所述应用程序的数据接口的IP地址相同。如果不相同,那么方法前进到方框504,且丢弃数据分组。方法接着在状态506处结束。
如果数据分组的目的地IP地址与数据接口的IP地址相同,那么方法移动到方框508,且网络装置搜索与数据分组相关联的套接字。在决策步骤510处,网络装置确定是否找到所述套接字。如果没有找到,方法移动到方框504,且丢弃数据分组。方法接着在状态506处结束。
在决策步骤510处,如果找到套接字,那么方法前进到方框512,且检索与应用程序相关联的路由范围。在方框514处,创建针对所述数据接口的临时路由范围。在特定实施例中,通过确定输入数据接口的索引并将相应位变为1且将临时路由范围中的每隔一个位保持为0来创建临时路由范围。
移动到决策步骤,确定临时路由范围是否符合与应用程序相关联的路由范围。图6说明确定临时路由范围是否符合与应用程序相关联的路由范围的详细实施例。如果临时路由范围符合应用程序的路由范围,那么方法移动到方框518,且网络装置继续数据分组的传输层处理。方法接着在状态506处结束。
如果临时路由范围不符合应用程序的路由范围,那么方法移动到方框520,且网络装置丢弃数据分组。前进到决策步骤522,网络装置确定当前通信协议是TCP还是UDP。如果当前通信协议是TCP,那么方法移动到方框524,且网络装置将复位(RST)消息发送到传输丢弃的数据分组的对等装置。方法在状态506处结束。如果当前通信协议是UDP,那么网络装置将因特网控制消息协议(ICMP)目的地不可达端口不可达发送到传输在网络装置处丢弃的数据分组的对等装置。方法接着在状态506处结束。
在特定实施例中,通过使用上述方法,当包经由用于某一连接的数据接口到达时,可用两个阶段将其限于路由范围中所允许的数据接口。举例来说,第一阶段是简单的健全性检查。这个阶段涉及将包出现的数据接口的IP地址与包的目的地地址进行比较。与此IP地址的不同之处只是目的地地址应当不是多播或广播地址。当将输入包移交到IP层时,IP层被告知包进入的数据接口。如果包的目的地IP地址不与包出现的数据接口的IP地址匹配,那么悄悄地将包丢弃。这将包限制于具有特定IP地址的特定数据接口,且防止针对所述输入包发生任何路由错误。
图6说明一种确定临时路由范围是否符合应用程序的路由范围的方法。在方框600处开始,接收用于应用程序的路由范围。在方框602处,创建临时路由范围。此后,在方框604处,对路由范围和临时路由范围执行逐位“与”运算。移动到方框606,确定所述“与”运算的结果是否为零。如果结果是零,那么方法移动到方框608,且丢弃包。方法接着在状态610处结束。另一方面,如果结果不是零,那么方法移动到方框612,且保持数据分组。接着,方法在状态610处结束。
在特定实施例中,路由范围含有关于允许哪些数据接口针对特定应用程序继续接收数据的信息。可将所述路由范围维持为所有可用数据接口的位掩码。当数据接口满足针对特定应用程序的网络策略时,将所述数据接口添加到与所述特定应用程序相关联的路由范围。举例来说,如果第五数据接口(具有索引五(5))满足针对所述应用程序的网络策略,那么将针对所述应用程序的路由范围中的位编号五(5)设置为一(1),以便包括针对所述应用程序的路由范围中的第五数据接口。
在特定实施例中,当限制所接收的数据时,在针对所述应用程序的路由范围中包括优先级大于零的所有数据接口。所述方法针对每个数据接口审查ACL且包括所述应用程序的路由范围中满足所述应用程序的网络策略的所有数据接口。在特定实施例中,路由范围可包括设置为一(1)的一个或一个以上位,从而指示允许与路由范围相关联的应用程序经由一个或一个以上数据接口来接收数据。
在特定实施例中,如果应用程序绑定到特定IP地址,那么可将路由范围限制为包括具有所请求IP地址且还与网络策略匹配的数据接口。在另一特定实施例中,当应用程序用特定网络策略创建套接字时,创建路由范围。然而,可周期性更新路由范围。
图7到图10说明符合图5和图6中所概述的方法的实例。图7描绘其中接收输入包且所述输入包包括与数据接口地址(10.0.0.1)相同的目的地地址(10.0.0.1)的实例。因而,接受所述输入包。
图8说明其中接收输入包且所述输入包包括与接收所述输入包所在的输入数据接口的地址(10.0.0.2)不同的目的地地址(10.0.0.1)的实例。因而,丢弃所述输入包。
图9说明其中在满足应用程序的网络策略的数据接口上接收输入包且接受所述输入包的实例。如图所示,对应用程序的路由范围和临时路由范围执行的逐位“与”运算为非零。因而,输入包满足应用程序的网络策略。
图10说明其中在不满足应用程序的网络策略的数据接口上接收输入包的实例。如图所示,对应用程序的路由范围和临时路由范围执行的逐位“与”运算为零。因而,输入包违反应用程序的网络策略且丢弃所述输入包。
在特定实施例中,数据接口的状态和无线联网的动态特性可影响与网络装置内每个应用程序相关联的路由范围。举例来说,由于网络装置的移动性的缘故,网络装置可移动越过若干网络的覆盖区域,从而造成相应网络数据接口上升或下降。而且,由于移动性的缘故,一个网络和相关联网络数据接口的优先级可依据可用的网络接入类型或在特定时间在特定位置处提供服务的运营商类型而增加或降低。
由于无线通信的动态特性的缘故,可能存在可造成与网络装置内的应用程序相关联的路由范围变化的若干触发事件。另外,需要管理与应用程序相关联的路由范围,且所述路由范围需要随着数据接口的变化的状态而变化。
在特定实施例中,每当数据接口上升或下降时,其可影响各个应用程序的路由范围,因为与一些应用程序相关联的网络策略和数据接口是动态配置的。举例来说,当打开UMTS数据接口时,UMTS每次连接到不同接入点名称(APN),且提供不同类型的服务。当打开此类数据接口且将其系到特定APN时,所述数据接口可能不再与网络装置内一个或一个以上应用程序的网络策略匹配。因而,打开特定数据接口可缩小一个或一个以上应用程序的路由范围。
类似地,当关闭特定数据接口时,其可扩大与一个或一个以上应用程序相关联的路由范围。在特定实施例中,如果数据接口关闭,那么其仍可包括在应用程序的路由范围内且所述应用程序可能在所述数据接口被打开后使用所述数据接口。另外,在特定实施例中,可自动打开一些数据接口但并非所有数据接口以节省成本。当需要时可例如由用户或应用程序打开额外数据接口。
在特定实施例中,当网络节点改变网络覆盖区域时,一个或一个以上应用程序的路由范围可能变化。举例来说,失去一个网络的覆盖范围可造成相关联的数据接口变得禁用,直到当网络装置重新进入覆盖区域时启用所述数据接口为止。在特定实施例中,当在需要时可能打开被关闭的数据接口且将其用于通信时,由于缺少网络连接性的缘故而不能打开禁用的数据接口。
在另一特定实施例中,特定应用程序可紧紧绑定到单个网络数据接口,且所述数据接口用于发射和接收数据。对于此类应用程序,路由范围仅设置一个位,且可在打开数据接口时设置所述位并在关闭数据接口时将所述位复位到零。
在特定实施例中,当与套接字相关联的网络策略变化时,路由范围也发生变化。在此类实施例中,可根据新的网络策略为所述应用程序计算新的路由范围,且可将所述新的路由范围传播到与所述应用程序相关联的套接字。在另一实施例中,如果应用程序绑定到特定IP地址(例如,使用bind()API调用),那么可将所述路由范围限于具有套接字绑定到其的特定地址的数据接口。由于移动性和网络移变的缘故,数据接口IP地址可变化,且应用程序的路由范围可能需要更新,以将先前的数据接口排除在相关联路由范围外。
另外,在特定实施例中,如果单个网络数据接口能够服务各种技术领域(例如,CDMA、UMTS等)或网络类型(例如,IPv4、Ipv6等),且如果此类数据接口移交到不同技术领域或网络类型,那么需要更新且重新评估包括此数据接口的路由范围以便确定所述数据接口是否继续满足应用程序的网络策略。在又一特定实施例中,对于所连接的套接字(例如,TCP套接字),一旦已经建立连接(例如,使用connect()API调用),便可将路由范围仅限于可连接到特定目的地地址的一个接口。
在另一特定实施例中,由应用程序规定的网络策略可能包括或不包括环回数据接口。然而,可允许每个套接字在环回数据接口上发送和接收包。因而,环回数据接口可视为通过一个或一个以上网络策略限制的数据接口的特殊情况。环回数据接口可包括应当在环回数据接口上接收用环回目的地IP地址接收的包的限制。此检查可在IP层处执行作为针对输入包的数据接口限制的第一阶段(例如,在地址比较期间)。对于传输层限制,可针对与每个应用程序相关联的路由范围开启对应于环回数据接口的位,或可在传输层处执行特殊检查以用于处理路由范围。
参看图11,展示一种将应用程序绑定到端口的方法,且所述方法在方框1100处开始。在方框1100处,网络装置内的路由模块接收用以将端口绑定到应用程序的请求。在方框1102处,路由模块审查所有开放或活动的应用程序。移动到决策步骤1104,路由模块确定任何开放或活动的应用程序是否绑定到请求的应用程序正试图绑定到的同一端口。如果不是,那么方法前进到方框1106,且路由模块将请求的应用程序绑定到所述端口。方法接着在状态1108处结束。
另一方面,在决策步骤1104处,如果任何开放或活动的应用程序绑定到请求的应用程序正试图绑定到的同一端口,那么方法前进到方框1110,且路由模块对每个开放/活动的应用程序的路由范围和请求的应用程序的路由范围执行逐位“与”运算。前进到决策步骤1112,路由模块确定任何逐位“与”运算的结果是否为零。如果是,那么方法移动到方框1106,且路由模块将请求的应用程序绑定到所述端口,从而设置与请求的应用程序相关联的套接字中的端口。方法在状态1108处结束。
回到决策步骤1112,如果任何逐位“与”运算的结果不是零,那么方法移动到方框1114,且路由模块不将请求的应用程序绑定到端口。方法接着在状态1108处结束。
在特定实施例中,当套接字的路由范围由于上述各种原因中的一者或一者以上而变化时,新的路由范围可对端口空间分离具有影响。举例来说,在重新计算应用程序的路由范围期间,如果将一个或一个以上数据接口从路由范围中移除,不会产生问题,因为端口空间保持分开且因为在套接字的路由范围之间没有形成新的交集。然而,如果将一个或一个以上数据接口添加到路由范围时,数据接口的添加可能形成与和其它应用程序相关联的路由范围的冲突。如果具有相交的路由范围的应用程序所使用的端口编号是相同的,那么联网堆栈将不能够决定哪个应用程序来引导到达相交的数据接口中的一者上的传入数据分组。
在特定实施例中,可基于以下方法来解决此潜在冲突:如果冲突的应用程序已正在活动地经由冲突的<端口编号,数据接口>对传送数据,那么单独留下所述应用程序,且阻止另一应用程序使用所述<端口编号,数据接口>对。如果冲突的应用程序不在活动地使用<端口编号,数据接口>对来进行数据传送,那么基于可配置的策略针对冲突的应用程序禁止<端口编号,数据接口>对。
在特定实施例中,禁止应用程序本质上意味着所禁止的应用程序的路由范围临时缩小以排除针对存在问题的端口编号的冲突数据接口。这可通过针对每个应用程序界定一组阻断<端口编号,数据接口>对(即,阻断的路由范围)来处理。在特定实施例中,阻断路由范围是由于与另一应用程序冲突而不是由于网络策略失配而被临时阻断的路由范围。
在非限制性且示范性实施例中,可在以下时间移除阻断的路由范围中的条目:(1)当竞争的应用程序关闭时;(2)当竞争的应用程序重新绑定到另一端口空间时;(3)当禁止的应用程序重新绑定到不同端口空间时;(4)当禁止的应用程序的网络策略变化时;(5)当竞争的应用程序的网络策略变化时;或(6)当所述一个或一个以上应用程序的路由范围由于上文所定义的条件而变化时。
在特定实施例中,以上条件(2)和(5)可致使阻断网络装置内其它应用程序的路由范围。另外,在特定实施例中,条件(3)和(4)可致使将一些条目从阻断的路由范围中移除,同时可能由于新冲突的缘故而添加其它条目。
在特定实施例中,上文结合图3、图4、图5、图6和图11描述的步骤可实施为存储在存储器内的软件,所述存储器例如为随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、只读存储器(ROM)、掩膜式ROM、可编程只读存储器(PROM)、可擦除且可编程只读存储器(EPROM)、电可擦除且可编程只读存储器(EEPROM)、非易失性随机存取存储器(NVRAM)、快闪存储器、硬盘驱动器或其它存储装置。这些方法步骤中的每一者可单独存储或结合其它方法步骤存储。
另外,在特定实施例中,上文结合图3、图4、图5、图6和图11描述的方法步骤可由处理器、微处理器、控制器、微控制器、专用集成电路(ASIC)、数字信号处理器(DSP)或其它处理装置执行。这些方法步骤中的每一者可单独执行或结合其它方法步骤执行。
图12说明一般指定为1200的无线装置。如图所示,无线装置1200包括显示器1202和键区1204。另外,所述无线装置1200可包括麦克风1206和扬声器1208。用户可向麦克风1206讲话且经由扬声器1208收听传入音频。如图12指示,可通过显示器1202显示信号强度指示符1210、语音邮件指示符1212和电池电量指示符1214。
如图12描绘,在示范性和非限制性实施例中,键区1204可包括方向按钮1216,用户可使用所述方向按钮来在显示器1202处来回移动指针或选择器。具体地说,用户可使用方向按钮1216来在任何方向(例如,向上、向下、向左、向右或任何对角方向)移动指针或选择条。另外,在特定实施例中,键区1204可包括确定按钮1218、清除按钮1220和结束按钮1222。用户可使用确定按钮1218、清除按钮1220和结束按钮1222来响应于显示器1202上所呈现的提示来输入答复。
图12进一步说明第一示范性图形用户数据界面(GUI)1250,其可经由无线装置1200的显示器1202向用户呈现。如图所示,第一GUI 1210可包括标题1252,所述标题1252指示第一GUI 1250的用途。如图所示,在说明性实施例中,标题1252被标记为“编辑网络设置”。因而,用户可推测第一GUI 1250可用于编辑网络设置。
图12还指示第一GUI 1250可包括应用程序菜单1254。在特定实施例中,应用程序菜单1254包括安装在无线装置1200处需要网络接入的应用程序的列表。举例来说,应用程序菜单1254包括第一应用程序、第二应用程序、第三应用程序和第N应用程序。如图所示,第一GUI 1250还包括选择条1256,用户可使用键区1204处的方向按钮1216来在应用程序菜单1254内上下移动所述选择条。用户可将选择条1256移动到某一应用程序(例如,第三应用程序),且选择键区1204处的确定按钮1218,以便接入图13所示的第二GUI 1300。
图13说明第二示范性GUI(指定为1300),其可用于编辑针对某一应用程序(例如,在使用第一GUI 1250(图12)时选择的第三应用程序)的设置。如图13所描绘,第二GUI 1300可包括标题1302,其指示第二GUI 1300的用途。在说明性实施例中,第二GUI1300的标题1302被标记为“应用程序3-编辑网络设置”。因而,用户可确定第二GUI 1300可用于编辑针对第三应用程序的网络设置。
在替代性实施例中,如果用户在第一GUI 1250(图12)处选择第一应用程序,那么第二GUI 1300的标题1302可被标记为“应用程序1-编辑网络设置”。
如图13所示,第二GUI 1300可包括网络菜单1304,其包括在网络装置1200处可用的网络或网络数据接口的列表。举例来说,网络菜单1304包括第一网络、第二网络、第三网络和第N网络。第二GUI 1300还包括选择条1306,用户可使用键区1204处的方向按钮1216来在网络菜单1304内上下移动所述选择条。用户可将选择条1306移动到某一网络(例如,第二应用程序),且选择添加软按钮1308或移除软按钮1310,以便针对安装在无线装置1200处的特定应用程序来向核准网络的列表添加或移除网络。
如图所示,第二GUI 1300还包括设置优先级软按钮1312,其在显示器1202处显示。在特定实施例中,用户可选择设置优先级软按钮1312,以便建立经核准以供网线装置1200内的特定应用程序使用的网络的层级。当选择设置优先级软按钮1312时,可经由显示器1202向用户呈现第三GUI 1400。或者,可使用预定ACL来描述网络策略且向数据网络指配优先级。
参看图14,展示第三GUI 1400。如图14所描绘,第三GUI 1400可包括标题1402,其指示第三GUI 1400的用途。举例来说,第三GUI 1400的标题1402被标记为“网络优先级-应用程序3”。因而,用户可确定第三GUI 1400可用于编辑针对经核准以供第三应用程序使用的网络的网络优先级。
在替代性实施例中,如果用户在第一GUI 1250(图12)处选择第一应用程序,且用户在第二GUI 1300(图13)处选择设置优先级软按钮1312,那么第三GUI 1400的标题1402可标记为“网络优先级-应用程序1”。
如图14所示,第三GUI 1400可包括网络优先级菜单1404,其包括经核准以供第三应用程序使用的网络或网络数据接口的列表。而且,网络优先级菜单1404指示每个核准网络或网络数据接口的优先级。举例来说,网络优先级菜单1404包括具有第一优先级的第三网络、具有第二优先级的第一网络、具有第三优先级的第五网络和具有第四优先级的第四网络。
第三GUI 1400还包括选择条1406,用户可使用键区1204处的方向按钮1216来在网络优先级菜单1404内上下移动所述选择条1406。用户可将选择条1406移动到某一网络(例如,第一应用程序)且选择向上软按钮1408或向下软按钮1410以便在网络优先级菜单1404内向上或向下移动第一网络。因而,用户可界定应用程序可在数据传送期间利用的网络的优先级。
图15说明第四GUI 1500,其可在阻止将数据分组发送到应用程序的试图时向用户呈现。如图15所描绘,第四GUI 1500可包括标题1502,其指示第四GUI 1500的用途。举例来说,第四GUI 1500的标题1502标记为“错误消息”。因而,用户可推测无线装置已经遇到错误。图15进一步指示第四GUI 1500可包括错误消息1504,其可经由显示器1202呈现给用户。在示范性且非限制性实施例中,错误消息指示“传入数据分组丢弃。错误记录。”因而,用户知道外部装置试图将数据分组传输到无线装置(例如,无线装置内的应用程序),且所述数据分组由于可疑而被丢弃。在特定实施例中,可在无线装置处记录错误。替代地,可在从中接收可疑包的网络处的网络装置处记录错误。
在特定实施例中,上述每个GUI 1250、1300、1400、1500是独立GUI。或者,如果单个GUI具有多个页面,那么上述GUI 1250、1300、1400、1500是一部分。
通过本文所述的结构配置,用以在多宿主且多模式通信装置中支持数据应用程序的***和方法提供一种用以使网络装置内的应用程序指定哪个数据接口用于数据联网的方式。举例来说,网络装置内的特定网络数据接口可提供对一般网络(例如,因特网)的接入,而另一网络数据接口可提供对专用公司内部网的接入。而且,网络装置可包括用以从专用公司网络存取电子邮件的第一电子邮件客户端应用程序和用以经由因特网检索个人电子邮件的第二电子邮件客户端应用程序。
在特定实施例中,网络装置可包括用于接入专用内部网的“特殊”浏览器和用于一般网络存取的“常规”浏览器。而且,网络装置可包括多个GPS引擎,且每个GPS引擎可经由所述GPS引擎所指定的数据接口来从特定网络存取位置信息。另外,在特定实施例中,与网络装置通信的名称解析器(例如,域名***(DNS))可解析用于特定网络的名称或地址,因为可能存在在两个专用网络中配置的重复名称或地址。
此外,通过本文描述的结构配置,所述***和方法可限制应用程序可在其上接收数据的数据接口的数目。这向协议堆栈和网络装置内的应用程序提供相对较高等级的安全性。而且,所述***和方法提供一种用以限制传入数据使得基于在其上接收数据的数据接口来将传入数据传送到特定应用程序的方式。所述***可利用与每个应用程序相关联的网络策略,以便针对每个应用程序识别允许数据传送的数据接口。
此外,本文所述的***和方法可允许应用程序绑定到用于一个、一个以上或所有数据接口的特定端口。对于其它协议堆栈(例如,非TCP/UDP/IP),可允许应用程序经由一组数据接口获得对服务的接入。
所属领域的技术人员将进一步了解,结合本文所揭示的实施例描述的各种说明性逻辑块、配置、模块、电路和算法步骤可实施为电子硬件、计算机软件或所述两者的组合。为了清楚说明硬件与软件的这种可交换性,上文已经大体上在其功能性方面描述了各种说明性组件、块、配置、模块、电路和步骤。将此类功能性实施为硬件还是软件取决于特定应用和对整个***强加的设计限制。熟练技术人员可针对每种特定应用以不同方式实施所描述的功能性,但不应将此类实施决策解释为造成与本发明范围的脱离。
结合本文所揭示的实施例描述的方法或算法的步骤可直接在硬件、由处理器执行的软件模块或所述两者的组合中实施。软件模块可驻存在RAM存储器、快闪存储器、ROM存储器、PROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM或此项技术中已知的任何其它形式的存储媒体中。示范性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息和向存储媒体写入信息。在替代方案中,存储媒体可与处理器成为一体。处理器和存储媒体可驻留在ASIC中。ASIC可驻留在计算装置或用户终端中。在替代方案中,处理器和存储媒体可作为离散组件驻留在计算装置或用户终端中。
提供先前对所揭示实施例的描述是为了使得所属领域的技术人员能够制作或使用本发明。所属领域的技术人员将容易了解对这些实施例的各种修改,且在不脱离本发明精神或范围的情况下,本文所界定的一般原理可适用于其它实施例。因此,本发明不希望限于本文展示的实施例,而是应符合与所附权利要求书所界定的原理和新颖特征相一致的最宽范围。
Claims (31)
1.一种在多宿主网络装置与数据网络之间发射和接收数据的方法,所述方法包含:
定义网络策略;
将所述网络策略传输到路由模块;以及
从所述路由模块接收路由范围,其中所述路由范围识别满足所述网络策略的通往所述数据网络的数据接口子组,其中所述数据接口子组选自一组可用数据接口,其中所述数据接口子组包括至少一个数据接口,
其中将与所述网络策略相关联的应用程序绑定到由所述路由范围识别的所述数据接口子组;
接收将端口绑定到请求的应用程序的请求;
确定开放的应用程序是否绑定到所述端口;
当所述开放的应用程序没有绑定到所述端口时,将所述请求的应用程序绑定到所述端口;
当所述开放的应用程序绑定到所述端口时,对与所述开放的应用程序相关联的第一路由范围和与所述请求的应用程序相关联的第二路由范围执行逐位“与”运算;
当所述逐位“与”运算的结果为零时将所述请求的应用程序绑定到所述端口;
所述方法还包括:
从所述应用程序接收所述网络策略;和
将所述应用程序绑定到所述多宿主网络装置处的所述组可用数据接口内的数据接口子组而非所有数据接口;
其中所述网络策略识别用于从所述组可用数据接口选择所述数据接口子组的一个或多个标准;以及
其中所述网络策略定义用于向所述应用程序和从所述应用程序传送数据的两个以上数据接口。
2.根据权利要求1所述的方法,其中所述网络策略是由所述应用程序定义。
3.根据权利要求1所述的方法,其中所述数据接口子组包括全球移动通信***GSM
数据接口、通用分组无线服务GPRS数据接口、通用移动电信***UMTS数据接口、码分多址CDMA数据接口、CDMA 2000数据接口、CDMA演进数据优化EVDO接口、蓝牙BT数据接口、802.11a数据接口、802.11b数据接口、802.11g数据接口、802.11i数据接口、802.15数据接口、802.16数据接口、宽带CDMAWCDMA数据接口、正交频率码分多路复用OFCDM数据接口、全球定位***GPS数据接口或其组合。
4.根据权利要求1所述的方法,其进一步包含:
确定所述数据接口子组内的优选数据接口是否可用;
当所述优选数据接口可用时,经由所述优选数据接口开放连接;以及
经由优选数据接口传输数据。
5.根据权利要求4所述的方法,其进一步包含:
当所述优选数据接口不可用时,确定所述数据接口子组内的下一优选数据接口是否可用;
经由所述下一优选数据接口开放连接;以及
经由所述下一优选数据接口传输数据。
6.根据权利要求4所述的方法,其进一步包含:
确定所述连接是否中断;
当所述连接中断时,确定下一优选数据接口是否可用;
经由所述下一优选数据接口开放连接;以及
经由所述下一优选数据接口传输数据。
7.根据权利要求1所述的方法,其进一步包含创建指向所述应用程序所绑定到的所述数据接口子组的所述路由范围。
8.根据权利要求7所述的方法,其进一步包含将所述路由范围存储在与所述应用程序相关联的套接字中。
9.根据权利要求8所述的方法,其中所述网络策略识别两个以上数据接口以用于向所述应用程序和从所述应用程序传递数据。
10.根据权利要求7所述的方法,其中所述路由范围是所述组可用数据接口的位掩码。
11.根据权利要求1所述的方法,其进一步包含:
当所述逐位“与”运算的所述结果不是零时,阻止所述请求的应用程序绑定到所述端口。
12.一种多宿主网络装置,其包含:
用于将网络策略传输到路由模块的装置;
用于从所述路由模块接收路由范围的装置,其中所述路由范围识别满足所述网络策略的通往数据网络的数据接口子组,其中所述数据接口子组选自一组可用数据接口,且其中所述数据接口子组包括至少一个数据接口;
用于将应用程序绑定到所述多宿主网络装置处的所述组可用数据接口内的所述数据接口子组而非所有数据接口的装置;
用于接收将端口绑定到请求的应用程序的请求的装置;
用于确定开放的应用程序是否绑定到所述端口的装置;
用于当所述开放的应用程序没有绑定到所述端口时将所述请求的应用程序绑定到所述端口的装置;
用于当所述开放的应用程序绑定到所述端口时对与所述开放的应用程序相关联的第一路由范围和与所述请求的应用程序相关联的第二路由范围执行逐位“与”运算的装置;
用于当所述逐位“与”运算的结果为零时将所述请求的应用程序绑定到所述端口的装置;
还包括:
用于从所述应用程序接收所述网络策略的装置;和
用于将所述应用程序绑定到所述多宿主网络装置处的所述组可用数据接口内的数据接口子组而非所有数据接口的装置;
其中所述网络策略识别用于从所述组可用数据接口选择所述数据接口子组的一个或多个标准;以及
其中所述网络策略定义用于向所述应用程序和从所述应用程序传送数据的两个以上数据接口。
13.根据权利要求12所述的多宿主网络装置,包含:
处理器;
所述处理器可存取的存储器;
至少一个应用程序,其存储在所述存储器内;以及
至少一个网络策略,其存储在所述存储器中,其中所述至少一个网络策略定义待由所述应用程序用于发射和接收数据的至少一个数据接口。
14.根据权利要求13所述的多宿主网络装置,其进一步包含存储在所述存储器内的所述路由范围。
15.根据权利要求14所述的多宿主网络装置,其中所述数据接口子组包括全球移动通信***GSM数据接口、通用分组无线服务GPRS数据接口、通用移动电信***UMTS数据接口、码分多址CDMA数据接口、CDMA 2000数据接口、CDMA演进数据优化EVDO接口、蓝牙BT数据接口、802.11a数据接口、802.11b数据接口、802.11g数据接口、802.11i数据接口、802.15数据接口、802.16数据接口、宽带CDMAWCDMA数据接口、正交频率码分多路复用OFCDM数据接口、全球定位***GPS数据接口或其组合。
16.根据权利要求14所述的多宿主网络装置,其中所述数据接口子组被组织成层级结构,且所述多宿主网络装置试图基于所述层级结构内的第一可用数据接口一次一个地经由所述数据接口子组中的每一者建立通信。
17.根据权利要求13所述的多宿主网络装置,其中所述组接口中的每一者提供对不同数据网络的接入。
18.根据权利要求17所述的多宿主网络装置,其中所述组接口中的每一者包括接入控制列表ACL,其中所述ACL限制对相应数据接口的接入。
19.根据权利要求18所述的多宿主网络装置,其中所述ACL返回非零优先级编号,其中所述非零优先级编号指示所述相应数据接口可与特定网络策略一起使用。
20.根据权利要求19所述的多宿主网络装置,其中所述非零优先级编号识别与所述相应数据接口相关联的优选等级。
21.根据权利要求13所述的多宿主网络装置,其中所述多宿主网络装置内的第一应用程序经由第一数据接口接入第一网络,且所述多宿主网络装置内的第二应用程序经由第二数据接口接入第二网络。
22.根据权利要求12所述的多宿主网络装置,其包含:
处理器;
所述处理器可存取的存储器;以及;
所述路由模块,其存储在所述存储器内,其中所述路由模块经配置以:
从所述应用程序接收网络策略;且
将所述应用程序绑定到一组可用数据接口内的一数据接口子组。
23.根据权利要求13或22所述的多宿主网络装置,其中所述路由模块进一步经配置以至少部分基于所述网络策略创建所述路由范围。
24.根据权利要求22所述的多宿主网络装置,其中所述路由范围包括对所述应用程序所绑定到的所述数据接口子组的指示。
25.根据权利要求13或22所述的多宿主网络装置,其进一步包含:
收发器,其耦合到所述处理器;以及
天线,其耦合到所述收发器。
26.根据权利要求12所述的多宿主网络装置,其进一步包括用户界面,该用户界面包含:
应用程序菜单,其中所述应用程序菜单包括安装在所述多宿主网络装置处的应用程序的列表,且其中用户可从所述应用程序菜单中选择应用程序以便编辑与选定的应用程序相关联的至少一个网络设置。
27.根据权利要求26所述的多宿主网络装置,其中所述用户界面进一步包含网络菜单,所述网络菜单包括在所述多宿主网络装置处可用的网络的列表。
28.根据权利要求27所述的多宿主网络装置,其中用户可从所述网络菜单中选择网络,且用户可使选定的网络与所述选定的应用程序相关联。
29.根据权利要求28所述的多宿主网络装置,其中所述用户界面进一步包含网络优先级菜单,所述网络优先级菜单包括经核准以供所述选定的应用程序使用的网络的列表。
30.根据权利要求29所述的多宿主网络装置,其中所述网络优先级菜单指示与在所述网络优先级菜单处所列举的每个网络相关联的优先级,且其中所述选定的应用程序基于指配给每个网络的优先级而与每个网络通信。
31.根据权利要求30所述的多宿主网络装置,其中与每个网络相关联的所述优先级是由用户指配的。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US68684405P | 2005-06-01 | 2005-06-01 | |
US60/686,844 | 2005-06-01 | ||
US11/349,314 | 2006-02-06 | ||
US11/349,314 US8526463B2 (en) | 2005-06-01 | 2006-02-06 | System and method to support data applications in a multi-homing, multi-mode communication device |
PCT/US2006/021384 WO2006130807A2 (en) | 2005-06-01 | 2006-06-01 | Selecting data interfaces in a multi-homing, multi-mode communication device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101228806A CN101228806A (zh) | 2008-07-23 |
CN101228806B true CN101228806B (zh) | 2013-01-16 |
Family
ID=37103188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800264639A Active CN101228806B (zh) | 2005-06-01 | 2006-06-01 | 在多宿主多模式通信装置中选择数据接口 |
Country Status (9)
Country | Link |
---|---|
US (5) | US8526463B2 (zh) |
EP (1) | EP1886532B1 (zh) |
JP (2) | JP2008546321A (zh) |
KR (1) | KR101032843B1 (zh) |
CN (1) | CN101228806B (zh) |
AT (1) | ATE536065T1 (zh) |
ES (1) | ES2374941T3 (zh) |
TW (1) | TWI337483B (zh) |
WO (1) | WO2006130807A2 (zh) |
Families Citing this family (69)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100926804B1 (ko) | 2004-04-30 | 2009-11-12 | 리서치 인 모션 리미티드 | 데이터 전송을 처리하기 위한 시스템 및 방법 |
US8167722B2 (en) * | 2005-05-11 | 2012-05-01 | Qualcomm Atheros, Inc | Distributed processing system and method |
US8526463B2 (en) * | 2005-06-01 | 2013-09-03 | Qualcomm Incorporated | System and method to support data applications in a multi-homing, multi-mode communication device |
US7614082B2 (en) | 2005-06-29 | 2009-11-03 | Research In Motion Limited | System and method for privilege management and revocation |
US9455844B2 (en) | 2005-09-30 | 2016-09-27 | Qualcomm Incorporated | Distributed processing system and method |
US8509062B2 (en) * | 2006-08-07 | 2013-08-13 | Ciena Corporation | Smart ethernet edge networking system |
KR101257110B1 (ko) * | 2006-04-12 | 2013-04-22 | 삼성전자주식회사 | 패킷 서비스 재접속 시점의 결정방법 및 장치 |
US20070255797A1 (en) * | 2006-04-28 | 2007-11-01 | Dunn Douglas L | Method for selecting an air interface using an access list on a multi-mode wireless device |
WO2008011253A2 (en) * | 2006-07-17 | 2008-01-24 | Bigfoot Networks, Inc. | Host posing network device and method thereof |
KR100772886B1 (ko) * | 2006-10-27 | 2007-11-05 | 삼성전자주식회사 | 네트워크 정보 제공 장치 및 방법 |
CN101569145A (zh) * | 2006-12-20 | 2009-10-28 | 日本电气株式会社 | 通信终端、终端、通信***、通信方法和程序 |
US8050707B2 (en) * | 2007-02-02 | 2011-11-01 | Dell Products L.P. | Method for selecting a priority for wireless technologies via graphical representation |
KR20100015846A (ko) * | 2007-03-26 | 2010-02-12 | 빅풋 네트웍스, 인크. | 노드들 간의 통신을 위한 방법 및 시스템 |
DE102007025515B4 (de) * | 2007-05-31 | 2010-04-15 | Vodafone Holding Gmbh | Vorrichtung zum Aktivieren und Deaktivieren von Netzwerkschnittstellen |
US8572256B2 (en) * | 2007-07-16 | 2013-10-29 | Qualcomm Incorporated | Method for supporting multiple diversified data applications with efficient use of network resources |
US8107939B2 (en) * | 2007-12-14 | 2012-01-31 | Microsoft Corporation | Software defined radio architecture |
KR100935371B1 (ko) | 2007-12-18 | 2010-01-06 | 한국전자통신연구원 | 프로토콜 확장을 이용한 이동 단말의 이동성 지원 방법 |
KR101466573B1 (ko) | 2008-01-22 | 2014-12-10 | 삼성전자주식회사 | 통신 단말 장치 및 통신 단말 장치에 탑재된 복수개의네트워크 인터페이스를 이용하여 통신을 수행하는 방법 |
JP5371987B2 (ja) * | 2008-07-23 | 2013-12-18 | パナソニック株式会社 | 移動端末及びネットワークノード |
WO2010024961A1 (en) * | 2008-08-29 | 2010-03-04 | Interdigital Patent Holdings, Inc. | Ip mobility for devices with multiple radios |
US8402084B2 (en) * | 2008-09-11 | 2013-03-19 | Intel Corporation | Host embedded controller interface bridge |
US8407721B2 (en) * | 2008-12-12 | 2013-03-26 | Microsoft Corporation | Communication interface selection on multi-homed devices |
US8539053B2 (en) * | 2009-02-27 | 2013-09-17 | Futurewei Technologies, Inc. | Apparatus and method for dynamic host configuration protocol version 6 extensions for configuring hosts with multiple interfaces |
US9531674B2 (en) * | 2009-11-11 | 2016-12-27 | Microsoft Technology Licensing, Llc | Virtual host security profiles |
US8650326B2 (en) * | 2009-11-11 | 2014-02-11 | Microsoft Corporation | Smart client routing |
US9411647B2 (en) * | 2010-01-22 | 2016-08-09 | Qualcomm Incorporated | Hierarchical routing and interface selection for multi-processor multimode network devices |
US9603085B2 (en) * | 2010-02-16 | 2017-03-21 | Qualcomm Incorporated | Methods and apparatus providing intelligent radio selection for legacy and non-legacy applications |
EP2362688B1 (en) * | 2010-02-23 | 2016-05-25 | Alcatel Lucent | Transport of multihoming service related information between user equipment and 3GPP evolved packet core |
GB201009649D0 (en) * | 2010-06-09 | 2010-07-21 | Roke Manor Research | Mobile device and method |
US11405969B2 (en) * | 2010-09-29 | 2022-08-02 | International Business Machines Corporation | Enabling interface aggregation of mobile broadband network interfaces |
TW201223212A (en) * | 2010-11-24 | 2012-06-01 | Inst Information Industry | Network classification connection system, method, and computer recording medium |
CN102480499A (zh) * | 2010-11-24 | 2012-05-30 | 财团法人资讯工业策进会 | 网络分类连结***及方法 |
CN103229467B (zh) * | 2010-12-28 | 2016-02-17 | 英派尔科技开发有限公司 | 病毒***质量升级方法及计算设备 |
US9264868B2 (en) | 2011-01-19 | 2016-02-16 | Qualcomm Incorporated | Management of network access requests |
US9178965B2 (en) | 2011-03-18 | 2015-11-03 | Qualcomm Incorporated | Systems and methods for synchronization of application communications |
KR101222432B1 (ko) * | 2011-07-06 | 2013-01-15 | 주식회사에어플러그 | 고정 호스트 주소에 기반하여 복수의 이종망(異種網)들을 선택적으로 사용하여 데이터 송수신할 수 있게 하는 장치와 이를 위한 방법 |
US9161226B2 (en) | 2011-10-17 | 2015-10-13 | Blackberry Limited | Associating services to perimeters |
US9497220B2 (en) | 2011-10-17 | 2016-11-15 | Blackberry Limited | Dynamically generating perimeters |
US8665847B2 (en) | 2011-11-08 | 2014-03-04 | Microsoft Corporation | Service-assisted network access point selection |
US9613219B2 (en) * | 2011-11-10 | 2017-04-04 | Blackberry Limited | Managing cross perimeter access |
US8799227B2 (en) | 2011-11-11 | 2014-08-05 | Blackberry Limited | Presenting metadata from multiple perimeters |
JP5957231B2 (ja) * | 2012-01-27 | 2016-07-27 | 京セラ株式会社 | 携帯端末 |
EP2677478A1 (en) * | 2012-06-21 | 2013-12-25 | BlackBerry Limited | Managing use of network resources |
US9369466B2 (en) * | 2012-06-21 | 2016-06-14 | Blackberry Limited | Managing use of network resources |
US9075955B2 (en) | 2012-10-24 | 2015-07-07 | Blackberry Limited | Managing permission settings applied to applications |
US8656016B1 (en) | 2012-10-24 | 2014-02-18 | Blackberry Limited | Managing application execution and data access on a device |
JP5958359B2 (ja) * | 2013-01-21 | 2016-07-27 | ブラザー工業株式会社 | 通信支援プログラムおよび通信装置 |
KR102028125B1 (ko) * | 2013-08-14 | 2019-11-04 | 삼성전자주식회사 | Ip주소를 이용하여 어플리케이션을 자동으로 구동하는 방법 및 장치 |
US10193748B2 (en) | 2013-09-30 | 2019-01-29 | Extreme Networks, Inc. | Enabling configuration in networks |
US9954764B2 (en) * | 2013-09-30 | 2018-04-24 | Extreme Networks, Inc. | Performing MAC-in-MAC encapsulation using shortest path bridging configuration information |
JP6394606B2 (ja) * | 2013-10-11 | 2018-09-26 | 日本電気株式会社 | 端末装置、端末装置制御方法および端末装置制御プログラム |
US9554323B2 (en) | 2013-11-15 | 2017-01-24 | Microsoft Technology Licensing, Llc | Generating sequenced instructions for connecting through captive portals |
US9369342B2 (en) | 2013-11-15 | 2016-06-14 | Microsoft Technology Licensing, Llc | Configuring captive portals with a cloud service |
US10057302B2 (en) | 2013-11-15 | 2018-08-21 | Microsoft Technology Licensing, Llc | Context-based selection of instruction sets for connecting through captive portals |
US10382305B2 (en) | 2013-11-15 | 2019-08-13 | Microsoft Technology Licensing, Llc | Applying sequenced instructions to connect through captive portals |
US10009268B2 (en) | 2014-01-06 | 2018-06-26 | Samsung Electronics Co., Ltd. | Method and apparatus for relaying packet transmission and updating network address information in communication system |
US9635486B2 (en) * | 2014-06-10 | 2017-04-25 | Microsoft Technology Licensing, Llc | Network selection for a given application or context |
KR102301843B1 (ko) * | 2014-12-18 | 2021-09-14 | 삼성전자 주식회사 | 환경 설정을 변경하여 무선 통신의 성능을 향상시키는 방법 및 이를 구현한 전자장치 |
JP6540283B2 (ja) * | 2015-06-30 | 2019-07-10 | 富士通株式会社 | 通信装置、通信方法、および、通信プログラム |
US9918255B2 (en) | 2015-09-22 | 2018-03-13 | International Business Machines Corporation | Electronic devices with distributed radios |
US10521350B2 (en) | 2016-07-20 | 2019-12-31 | International Business Machines Corporation | Determining the effectiveness of prefetch instructions |
US10452395B2 (en) | 2016-07-20 | 2019-10-22 | International Business Machines Corporation | Instruction to query cache residency |
US10621095B2 (en) * | 2016-07-20 | 2020-04-14 | International Business Machines Corporation | Processing data based on cache residency |
US10169239B2 (en) | 2016-07-20 | 2019-01-01 | International Business Machines Corporation | Managing a prefetch queue based on priority indications of prefetch requests |
EP3327971A1 (en) * | 2016-11-29 | 2018-05-30 | Thomson Licensing | A method and apparatus for managing interfaces steering in communication devices |
US10455464B1 (en) * | 2017-05-12 | 2019-10-22 | Sprint Spectrum L.P. | Dynamic handover threshold adjustment |
WO2021188026A1 (en) * | 2020-03-20 | 2021-09-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods, host devices and computer program products for assigning communication ports |
US11343180B2 (en) * | 2020-08-14 | 2022-05-24 | Cisco Technology, Inc. | Network service access and data routing based on assigned context |
US11979292B1 (en) * | 2022-12-14 | 2024-05-07 | Ca, Inc. | Virtual network interface management for network functions using network definitions |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6473404B1 (en) * | 1998-11-24 | 2002-10-29 | Connect One, Inc. | Multi-protocol telecommunications routing optimization |
CN1561041A (zh) * | 2004-02-26 | 2005-01-05 | 中兴通讯股份有限公司 | 一种以太网接口热备份的装置及方法 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5181017A (en) * | 1989-07-27 | 1993-01-19 | Ibm Corporation | Adaptive routing in a parallel computing system |
JPH05316248A (ja) | 1992-05-08 | 1993-11-26 | N T T Data Tsushin Kk | 通信回線自動選択方法 |
US5345550A (en) * | 1992-12-23 | 1994-09-06 | International Business Machines Corporation | User-modifiable popup menus for object oriented behavior |
US6016307A (en) | 1996-10-31 | 2000-01-18 | Connect One, Inc. | Multi-protocol telecommunications routing optimization |
US6122514A (en) | 1997-01-03 | 2000-09-19 | Cellport Systems, Inc. | Communications channel selection |
US6078587A (en) | 1997-06-23 | 2000-06-20 | Sun Microsystems, Inc. | Mechanism for coalescing non-cacheable stores |
JP2000244601A (ja) | 1999-02-24 | 2000-09-08 | Mitsubishi Electric Corp | データ回線選択方法およびデータ回線選択装置 |
ATE383722T1 (de) | 1999-11-01 | 2008-01-15 | White Cell Inc | Verfahren für sicherheit in einem zellularen datensystem |
US6522884B2 (en) * | 2000-02-23 | 2003-02-18 | Nexterna, Inc. | System and method for dynamically routing messages transmitted from mobile platforms |
US7171492B1 (en) * | 2000-02-24 | 2007-01-30 | Utstarcom, Inc. | Method and application programming interface for assigning multiple network addresses |
US7120697B2 (en) * | 2001-05-22 | 2006-10-10 | International Business Machines Corporation | Methods, systems and computer program products for port assignments of multiple application instances using the same source IP address |
US20020116397A1 (en) | 2000-12-21 | 2002-08-22 | Berg Mitchell T. | Method and system for communicating an information packet through multiple router devices |
JP3782671B2 (ja) | 2001-02-28 | 2006-06-07 | 株式会社エヌ・ティ・ティ・ドコモ | リンクマネージャ及びリンク管理方法 |
US7363286B2 (en) * | 2001-10-29 | 2008-04-22 | International Business Machines Corporation | File system path alias |
US6904282B2 (en) * | 2001-11-16 | 2005-06-07 | Qualcomm Incorporated | Method and apparatus for identifying and acquiring preferred wireless communications systems |
US20060084417A1 (en) * | 2002-07-10 | 2006-04-20 | Diego Melpignano | Interface selection from multiple networks |
US7065367B2 (en) * | 2002-07-11 | 2006-06-20 | Oliver Michaelis | Interface selection in a wireless communication network |
AU2003273340A1 (en) * | 2002-09-18 | 2004-04-08 | Flarion Technologies, Inc. | Methods and apparatus for using a care of address option |
US8191136B2 (en) | 2002-11-04 | 2012-05-29 | Riverbed Technology, Inc. | Connection based denial of service detection |
US7146130B2 (en) | 2003-02-24 | 2006-12-05 | Qualcomm Incorporated | Wireless local access network system detection and selection |
JP2004304399A (ja) | 2003-03-31 | 2004-10-28 | Nec Corp | 通信端末、基地局、サーバ、ネットワークシステム及びハンドオーバ方法 |
US20050125511A1 (en) * | 2003-12-08 | 2005-06-09 | Hunt Preston J. | Intelligent local proxy for transparent network access from multiple physical locations |
AU2005209201B2 (en) * | 2004-01-20 | 2010-06-03 | Allergan, Inc. | Compositions for localized therapy of the eye, comprising preferably triamcinolone acetonide and hyaluronic acid |
US7761607B2 (en) * | 2004-04-23 | 2010-07-20 | Microsoft Corporation | User based communication mode selection on a device capable of carrying out network communications |
US8526463B2 (en) | 2005-06-01 | 2013-09-03 | Qualcomm Incorporated | System and method to support data applications in a multi-homing, multi-mode communication device |
JP5316248B2 (ja) | 2009-06-16 | 2013-10-16 | 株式会社リコー | テレビ会議装置、テレビ会議方法、そのプログラム |
US8626463B2 (en) | 2009-12-23 | 2014-01-07 | Western Digital Technologies, Inc. | Data storage device tester |
-
2006
- 2006-02-06 US US11/349,314 patent/US8526463B2/en not_active Expired - Fee Related
- 2006-06-01 CN CN2006800264639A patent/CN101228806B/zh active Active
- 2006-06-01 KR KR1020077031048A patent/KR101032843B1/ko active IP Right Grant
- 2006-06-01 AT AT06771906T patent/ATE536065T1/de active
- 2006-06-01 EP EP06771906A patent/EP1886532B1/en active Active
- 2006-06-01 ES ES06771906T patent/ES2374941T3/es active Active
- 2006-06-01 WO PCT/US2006/021384 patent/WO2006130807A2/en active Application Filing
- 2006-06-01 TW TW095119479A patent/TWI337483B/zh not_active IP Right Cessation
- 2006-06-01 JP JP2008514882A patent/JP2008546321A/ja active Pending
-
2011
- 2011-02-07 JP JP2011024195A patent/JP5102378B2/ja active Active
-
2013
- 2013-08-02 US US13/958,454 patent/US9185582B2/en not_active Expired - Fee Related
-
2014
- 2014-09-24 US US14/495,675 patent/US9185583B2/en not_active Expired - Fee Related
- 2014-09-25 US US14/496,996 patent/US20150012832A1/en not_active Abandoned
- 2014-09-26 US US14/498,943 patent/US9258721B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6473404B1 (en) * | 1998-11-24 | 2002-10-29 | Connect One, Inc. | Multi-protocol telecommunications routing optimization |
CN1561041A (zh) * | 2004-02-26 | 2005-01-05 | 中兴通讯股份有限公司 | 一种以太网接口热备份的装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20080026571A (ko) | 2008-03-25 |
US20150012832A1 (en) | 2015-01-08 |
US9258721B2 (en) | 2016-02-09 |
US20060274750A1 (en) | 2006-12-07 |
US20130315146A1 (en) | 2013-11-28 |
ES2374941T3 (es) | 2012-02-23 |
WO2006130807A3 (en) | 2007-05-24 |
JP5102378B2 (ja) | 2012-12-19 |
US20150016442A1 (en) | 2015-01-15 |
US8526463B2 (en) | 2013-09-03 |
ATE536065T1 (de) | 2011-12-15 |
CN101228806A (zh) | 2008-07-23 |
TWI337483B (en) | 2011-02-11 |
KR101032843B1 (ko) | 2011-05-06 |
US9185583B2 (en) | 2015-11-10 |
TW200713930A (en) | 2007-04-01 |
EP1886532B1 (en) | 2011-11-30 |
JP2008546321A (ja) | 2008-12-18 |
WO2006130807A2 (en) | 2006-12-07 |
JP2011172220A (ja) | 2011-09-01 |
EP1886532A2 (en) | 2008-02-13 |
US20150010006A1 (en) | 2015-01-08 |
US9185582B2 (en) | 2015-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101228806B (zh) | 在多宿主多模式通信装置中选择数据接口 | |
KR101215208B1 (ko) | 패킷 목적지 주소 및 발신 인터페이스로부터 구성된 라우팅 검색 키에 기초하는 패킷의 발신 송신 | |
CN101346947B (zh) | 用于电信网络中路由优化的方法和设备 | |
EP1189411B1 (en) | Packet transfer scheme using mobile terminal and router for preventing attacks using global address | |
US8446874B2 (en) | Apparatus and method for filtering packet in a network system using mobile IP | |
EP1632063B1 (en) | Method and appartus for packet claasification and rewriting | |
US20040008653A1 (en) | Device, system, method and computer readable medium for fast recovery of IP address change | |
WO2006087414A1 (en) | Providing access bearer related information in a packet data network | |
US20150365828A1 (en) | Communication terminal, communication method, program, communication system, and information processing apparatus | |
EP1317112B1 (en) | Handling connections moving between firewalls | |
JP5206677B2 (ja) | 通信装置及び通信方法 | |
JP4600154B2 (ja) | 携帯通信端末および通信経路選択方法と通信経路選択プログラム | |
CN112804130A (zh) | 报文处理方法及装置、***、存储介质以及电子设备 | |
US20080069101A1 (en) | System and method of routing packets | |
EP3327978B1 (en) | A method and apparatus for managing interfaces steering in communication devices | |
KR20090104425A (ko) | 모바일 인터넷 환경에서의 dpi 장치 및 방법과 이에사용되는 패턴 매칭 방법 및 기록매체 | |
CN117255054A (zh) | 虚拟路由转发方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |