CN1324898C - 用于为移动通信设备提供远程数据访问的系统和方法 - Google Patents

用于为移动通信设备提供远程数据访问的系统和方法 Download PDF

Info

Publication number
CN1324898C
CN1324898C CNB028178351A CN02817835A CN1324898C CN 1324898 C CN1324898 C CN 1324898C CN B028178351 A CNB028178351 A CN B028178351A CN 02817835 A CN02817835 A CN 02817835A CN 1324898 C CN1324898 C CN 1324898C
Authority
CN
China
Prior art keywords
code
content
content type
information
type
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.)
Expired - Lifetime
Application number
CNB028178351A
Other languages
English (en)
Other versions
CN1554195A (zh
Inventor
萨立姆·H·奥马尔
拉塞尔·N·欧文
赫伯特·A·利特尔
托马什·K·雷巴克
迈克尔·S·布朗
戴维·P·亚切
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.)
BlackBerry Ltd
Original Assignee
Research in Motion Ltd
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 Research in Motion Ltd filed Critical Research in Motion Ltd
Publication of CN1554195A publication Critical patent/CN1554195A/zh
Application granted granted Critical
Publication of CN1324898C publication Critical patent/CN1324898C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0464Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload using hop-by-hop encryption, i.e. wherein an intermediate entity decrypts the information and re-encrypts it before forwarding it
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1045Proxies, e.g. for session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2871Implementation details of single intermediate entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/288Distributed intermediate devices, i.e. intermediate devices for interaction with other intermediate devices on the same level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/566Grouping or aggregating service requests, e.g. for unified processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/567Integrating service provisioning from a plurality of service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/11Allocation or use of connection identifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/561Adding application-functional data or data for application control, e.g. adding metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/564Enhancement of application control based on intercepted application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/26Network addressing or numbering for mobility support

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

在一个示例实施例中,用于提供信息源和移动通信设备之间的数据访问的系统包括代码转换系统和第一网络设备。代码转换系统包括多个代码转换器,每个代码转换器可操作以将信息内容从相应的第一内容类型代码转换成相应的第二内容类型。第一网络设备与所述代码转换系统通信,并且包括连接处理器系统。连接处理机系统可操作以接收用于信息源和移动通信设备之间的连接的连接数据和选择相应的连接处理机,连接处理机可操作,以从多个代码转换器选择一个或更多代码转换器以代码转换信息内容。

Description

用于为移动通信设备提供远程数据访问的系统和方法
该申请要求下列美国临时申请的利益:序列号:60/305,044,题目:“用于为移动通信设备提供远程数据访问的系统和方法”,2001年7月12日提交;序列号:60/327,752,题目:“用于提供到移动通信设备的远程数据访问的系统和方法”,2001年10月9日提交;序列号:60/330,604,题目:“用于为移动通信设备提供远程数据访问和代码转换的系统和方法”,2001年10月25日提交;和序列号:60/340,839,题目:“从信息源到移动通信设备推数据的系统和方法”,2001年12月19日提交。在此引用所有上述标识的临时申请的全部公开并包含在该申请中。
相关申请的交叉参考
该申请还涉及下列待审的非临时申请:序列号:_/__,题目:“用于为移动通信设备提供远程数据访问和代码转换的系统和方法”,2002年提交;序列号:_/__,题目:“用于从信息源到移动通信设备推数据的系统和方法”,2002年提交,在此引用它们的全部公开并包含在本申请中。
技术领域
本发明涉及移动通信,并且特别涉及提供从移动通信设备对远程数据的访问。
背景技术
使用移动通信设备提供对数据的远程访问的已知方案趋于相对受到限制。例如,用于移动设备的无线应用协议(WAP)浏览器通常提供只对与WAP适应源相关的信息的访问。尽管其它已知和类似的产品可允许移动设备用户访问另外的信息源,这些产品一般没有有效地使用移动通信网络资源,特别是无线通信链路,并且经常需要诸如要在移动设备上执行信息解析之类的高强度的处理器操作。
此外,大部分已知的数据访问系统和方法不适合于提供对存储在专用网络上的保密信息,诸如在位于安全防火墙之后的数据存储器上的公司信息的真正安全访问。
发明内容
本申请描述了一种用于向移动通信设备提供对远程信息源的访问的系统和方法。
在此描述的系统和方法提供对多种类型和格式的信息的任何一种的访问。信息翻译操作可在移动通信系统的信息源侧执行,以减少了设备处理操作的复杂性和与这些操作相关的任何设备硬件和软件组件。
在一个示例实施例中,用于提供信息源和移动通信设备之间的数据访问的系统包括代码转换系统和第一网络设备。代码转换系统包括多个代码转换器,每个代码转换器可操作将信息内容从各第一内容类型代码转换成相应的第二内容类型。第一网络设备与代码转换系统通信,并且包括连接处理机系统。该连接处理鸡系统可操作以接收用于信息源和移动通信设备之间的连接的连接数据和选择对应的连接处理机。连接处理机可操作从多个代码转换器选择一个或多个代码转换器,以对信息内容进行代码转换。
附图说明
图1是提供从移动通信设备对远程信息源的访问的通信系统的总体方框图。
图2是图1所示系统的更详细的方框图。
图3是表示在系统中的一般连接的处理机相关操作的流程图。
图4是连接处理机数据处理操作的流程图。
图5是表示基于可用代码转换器由HTTP连接处理机进行的接受内容类型扩展的信号流向图。
图6是表示用于HTTP操作的多代码转换操作的信号流向图。
图7是带有外部代码转换器系统的通信系统的一般方框图。
图8是表示用于诸如图7所示的外部代码转换器系统的示例HTTP操作的信号流向图。
图9示出用于外部代码转换器系统的另一个信号流向图。
图10是具有外部代码转换器系统和外部连接处理机系统的通信系统的方框图。
图11是用于图10的系统的示例信号流向图。
图12是表示信息请求派送到外部连接处理机的信号流向图。
图13是表示图12的请求派送的变体的信号流向图。
图14是表示到外部处理机的请求的越区切换(hand-off)的信号流向图。
图15是在安全网络中实现的IP代理系统的方框图。
图16是表示公司数据访问操作的信号流向图。
具体实时方式
系统总体描述
图1是提供从无线移动通信设备(“移动设备”)12对远程信息源20的访问的通信系统的总体方框图。在图1中,系统10包括:移动设备12,无线网络14,网关15,广域网(WAN)16,网络协议(IP)代理系统18,和信息源20。尽管在图1所示的示例系统中IP示出了代理系统18,用于除IP协议外的代理系统也可以按照在此描述的系统和方法来实现。也可使用这些系统和方法代理在操作系统互连(OSI)模型内的其它层的协议。这些其它协议包括但不限于超文本传输协议(HTTP)和传输控制协议(TCP)。
移动设备12可以是适于操作于无线通信网络14内的任何移动设备,并且最好是双向通信设备。移动设备12还可以具有语音和数据通信能力。根据移动设备12提供的功能,移动设备12还可以是指数据消息设备,双向寻呼机,具有数据消息能力的蜂窝电话,无线互联网用具或数据通信设备(带有或不带有电话能力)。很显然,对于通信领域技术人员明显,移动设备12内的通信子系统的具体设计将取决于移动设备12打算运行于其中的通信网络14。例如,针对北美市场的移动设备12可包括设计运行于MobitexTM移动通信系统或DataTACTM移动通信系统内的通信子系统,而打算用于欧洲的移动设备12可包括通用分组无线业务(GPRS)通信子系统。本领域技术人员还将理解也可期望其它类型的移动设备和网络。在此描述的本发明的系统和方法可以结合实际上的任何无线网络14实现。
图1所示的网关15提供无线网络14和WAN 16,例如可以是互联网,之间的接口。这些功能,如移动设备寻址、WAN协议和无线网络协议之间的数据转换、存储并且将数据前送到移动设备12及从移动设备前送数据,和其它接口功能可以由网关15执行。
IP代理也能由与无线网络14相关的网络运营者/操作者主持。在该情况下,IP代理系统18和网关15之间的连接将使用运营者的专用网络而不是WAN 16。然后,WAN能够用于IP代理系统18和信息源20之间的通信。
IP代理系统18是有效提供移动设备12对信息源20的访问的系统,并且下面进一步详细描述。通过IP代理系统18,移动设备12可以访问能够与IP代理系统18通信的任何信息源20,例如互联网或网络服务器。因此信息源20不需要特殊的应用或协议支持用于无线网络通信,因为它与IP代理系统18通信而不直接与移动设备12通信。尽管图1示出为直接连接,IP代理系统18和信息源20也能够通过诸如局域网(LAN)或WAN包括互联网之类的网络进行通信。
无线网络和互联网使用类似的寻址方案,其中,由数字地址标识诸如在无线网络中的移动设备或连接互联网的计算机之类的接收者。例如,在Mobitex网络中使用Mobitex访问号码(MAN)标识移动设备,并且使用IP地址方案标识公共互联网节点。然而,无线网络和互联网传输机构之间的差别防止了大部分是基于互联网的信息源20和移动设备12之间的直接通信。此外,信息源内容主要针对具有相对强大的处理器的桌面或其它计算机系统,并且可要求诸如由接收者执行的信息解析之类的高强度的处理器操作。由于移动设备趋于具有较小强度的处理器,这些操作在这些移动设备上比在计算机系统上花费更多时间,并且能够消耗通常有限的电源的大量功率。IP代理系统18填补了基于互联网和可能其它信息源20和移动设备12有关的无线网络14之间的间隙。由IP代理系统18支持的这些服务例如可以包括地址映射,内容转换和验证和协议映射和优化。IP代理的详细描述
图2是图1所示的IP代理系统18的更详细的方框图。IP代理系统18可包括:分配器22,TCP处理机24,HTTP处理机26,代码转换系统28,总表示为30的一个或多个推服务,状态持续单元34,监视系统36和登录系统38。图2还示出了推服务器42,网络服务器46,网络浏览器48和文件系统40,IP代理系统18可以时常与它们交互。图2所示的很多组件主要作为计算机软件模块实现。IP代理系统18内的单元将典型地运行在相同的计算机上,而IP代理系统18外的组件通常驻留在分离的计算机上。然而在其它的实施例中,IP代理系统18的单元可改为分布在分布于网络上的一组计算机中。
分配器22管理数据流和与网关15的连接。例如根据连接的类型或被传送数据的类型或被执行的数据交易,分配器22与TCP处理机24或HTTP处理机26交互。代码转换系统28包括一个或多个数据滤波器,每个将数据或其它信息从一种格式转换成能够由移动设备12处理的格式。
推服务30提供通过IP代理系统18将来自诸如推服务器42(例如可以是网络服务器或软件应用)之类的信息源“主动提供的”信息传送到移动设备12。推服务组件30允许推服务器42使用例如移动设备拥有者的电子邮件地址或某些其它方便的标记寻址移动设备12。相应地,推服务器42不需要知道移动设备12在无线网络14中的地址。
状态持续单元34与数据文件系统40或数据库一起使其能够管理IP代理系统18能连接到的网络服务器46相关的应用小程序,口令和可能的其它状态信息。它最好存储有关分离的网络分组,例如HTTP请求/响应对之间存在的连接的状态信息。监视系统36允许监督者通过诸如网络浏览器48之类的接口对IP代理系统18的性能、效率、使用情况和健康进行远端监视。正如其名称所暗示的,日志系统38可以被配置用来存储使用情况、连接、用户统计等到文件系统40或某些其它备用存储器。
连接和处理机
IP代理系统18最好能操作和处理来自各信息源20包括基于互联网的源的内容。该功能由连接处理机提供,连接处理机是具有能够处理来自与IP代理系统18的输入连接和输出连接的内容的中间物。在图2所示的IP代理系统18中,示出了两个这样的处理机,TCP处理机24和HTTP处理机26。这些处理机最好能够被替换和客户化,或附加的处理机能够根据需要被添加到IP代理系统18。连接处理机不仅能够优化内容而且能够优化协议。例如,将通常被发送到移动设备12的某些请求(诸如口令请求)可以由连接处理机解决,此处请求的数据例如通过状态持续单元34已经存储在文件系统40或对于连接处理机可访问的另一个存储器中。这种协议优化的情况能够通过减少经无线网络发送到移动设备的业务量、由此减少无线网络带宽限制和等待时间的影响而使所谓的“闲话”协议更加无线友好。
输出连接能够从移动设备12进行,以便向和从诸如互联网节点之类的其它实体发送和接收数据。IP代理系统18最好使用特定协议,例如称为IP代理协议的专用协议或本发明的受让人开发的IPPP从移动设备12接收连接请求。也可以使用其它协议。IP代理系统18然后按照由移动设备12在连接请求中提供的协议和路由信息,建立互联网连接,并且翻译和映射该连接以开始在两个方向上前送数据。数据滤波和代码转换过程根据需要被调用,例如基于经连接传送的内容的类型。这些输出连接将在网络浏览操作的上下文进一步详细描述。
例如,能够使用输入连接来实现数据推模式。在该模式中,移动设备12可以不用发出取信息的请求而被发送信息。正如输出连接的情况。如上简单描述的,移动设备12可以存在于不同于互联网节点的网络域上。IP代理系统18负责架接互联网和无线网络域。于是,IP代理系统18需要一定的路由信息以路由业务到特定的移动设备12。在推操作中,至少某些该路由信息必须由发出请求以建立输入连接的、诸如推服务器42之类的互联网节点提供。IP代理系统18可以将公知的诸如电子邮件或IP号之类的寻址方案转换成计划接收者移动设备12的合适的无线网络地址。
在IP代理系统18中的连接处理机是基于流的物体。当请求输出或输入连接时,在移动设备12和合适的连接处理机之间建立虚拟管流。连接处理机将用例子说明,并且开始处理内容用于建立的连接。基于连接请求装载连接处理机,该请求最好包含合适处理机名称的引用,该处理机名称将暗示通常穿过虚拟管流的业务的类型和如果没有被装载则必须被装载的处理机的位置。连接处理机的功能包括映射互联网或其它信息源侧连接和移动设备侧的连接,前送这些连接之间的业务,和针对预定给移动设备12的信息来装载和调用合适的代码转换器。
每个连接最好与连接处理机的情况相关。即使对于不需要内容由IP代理系统18处理的连接,例如移动设备12和服务器之间的纯TCP连接也是如此。该类型的连接处理机来回传送内容,不用对内容进行任何修改,尽管它可以对协议进行修改。为了清楚起见,本领域技术人员将会理解数据或内容(移动设备所请求的或正被发送的)和协议(被要求传递数据的“封套(wrappers)”和转换)之间的差别。
连接处理机也负责装载合适的内容滤波器或代码转换器。在上面的例子中,如果网络服务器46例如返回超文本标记语言(HTML)内容,然后如果移动设备不能接受HTML内容,HTTP连接处理机26将使用在代码转换器系统28中的HTML代码转换器。
图3是表示在IP代理系统中一般连接处理机相关操作的流程图。在步骤50,IP代理系统18接收连接请求,如上所述,该连接请求可以涉及输入连接或输出连接。当连接与诸如需要HTTP连接处理机26的HTTP连接之类的特定处理机相关联时,在步骤54,装载并且执行合适的处理机,并且如在步骤58指示的,建立连接。如果请求是输出(来自移动设备12),那么分配器22检查与该连接请求相关联的协议类型,并且派遣该连接到合适的处理机。然后,数据可以在移动设备12和互联网服务,推服务器42,网络服务器46或其它信息源20之间交换。
如果某连接处理机,例如用于如上所述的纯TCP连接,被用于连接,数据则可以无改变地通过IP代理系统18。然而,在某些IP代理系统中,经TCP处理机发送的内容可以被修改。然而当使用其它连接处理机时,针对移动设备12的数据可能需要被转换成合适的最终的内容。
图4是连接处理机数据处理操作的流程图。在步骤62,接收针对移动设备12的数据。例如跟随来自移动设备12的信息请求,尽管被标志为来自连接的响应,应理理解,由连接处理机接收的数据可替换为要从诸如42之类的推服务器,经推服务30推到移动设备12的信息。基于在步骤62接收的数据类型,在步骤64,连接处理机确定是否需要代码转换。如果不需要,那么在步骤70将信息发送到移动设备12。否则,在步骤66装载和执行合适的代码转换器。并且在数据被发送到移动设备12之前,在步骤68数据被代码转换成可接受的格式,如下面将详细描述的。启动通信的实体,用于被取数据的移动设备12或用于被推数据的推服务器42最好能够替换为请求特定的代码转换器,以进行被取和被推数据的代码转换。
连接处理机可以在计算机软件中作为JavaTM类文件被实现,放置在文件系统中的某个目录中,以便IP代理系统Java虚拟机(VM)当被需要或被请求时可以定位和装载文件。正如本领域技术人员将理解的,Java使用CLASSPATH环境变量作为到哪个地方应该执行查询用户定义的类的指导。在一个实施例中,到连接处理机的路径是在CLASSPATH中的第一列表路径中,以便当它们被请求时相对快地装载。连接方向(输入或输出)和与连接处理机相关联的名称也可以在定义处理机的全类名称中起作用。本领域技术人员可以理解,能够根据目标操作系统使用动态链接数据库(DLL)或动态共享目标(DSO)实现相同的方案。
连接处理机能够与代表应用层上的协议的名称相关联。例如,如果用网络浏览器使移动设备12运行,并且由此可以请求开通到诸如46的互联网服务器的连接,应该理解,让HTTP作为用于该连接处理机的名称,正如用连接处理机26所示出的。处理机名称可以遵循在Java语言中命名数据包的已知规则。处理机名称处在较低的情况(case)中;然而,从IP代理系统的观点来看,这没有关系,只要JavaVM能够装载那个连接处理机。任何连接处理机也可以让其类名作为Handler.class。代表连接处理机的有效的全类名的例子如下:
net.rim.protocol.iplayer.connection.handler.<connectiondirection>.<connection handler name>.Handler.class在此连接方向可以是暗示输出连接的设备或暗示输入连接的服务器。连接处理机名称是与处理机相关联的名称,例如http,ftp等。
有至少两个方法使诸如互联网节点之类的信息源能够通过示于图2的示例IP代理系统18建立到移动设备12的连接:(1)直接使用传输层协议,例如TCP,开通到IP代理系统18的直接连接,或(2)使用应用层的数据报协议,例如HTTP。IP代理系统18包括两个相应的连接处理机,其例如可以表示能够处理两个最普通类型的连接的基本IP代理系统。第一个是例如与名称tcp相关联的TCP连接处理机24。第二个是如上所述类似与名称http相关来年的HTTP连接处理机26。除了支持普通连接类型外,这些连接处理机还满足在移动设备12的移动信息设备简要(MIDP)实现的要求。然而,IP代理系统18和移动设备12能够被扩展到支持任何其它类型的连接。在IP代理系统18中,可以能够通过例如在IP代理系统18中提供应用编程接口(API)和发展遵循API的新连接处理机来添加连接处理机。
在一个实施例中,IP代理系统18中的连接处理机从本地存储介质,例如与IP代理系统软件运行在其上的计算机相关来年的盘驱动装载。在另一实施例中,连接处理机存储器也可以是或改为是远离IP代理系统18,例如在由IP代理系统18通过局域网(LAN)连接或甚至WAN,如互联网,可访问的存储介质上。该实施例允许在能够与连接处理机存储器通信的所有IP代理系统18中连接处理机的单个目录的共享。通过在连接处理机Java类能够被找到的地方嵌入URL,也能够让第三方扩展连接处理机组。
如果被连接到互联网,连接处理机目录能够潜在地由所有进行互联网连接的IP代理系统18访问并且由此共享。公共互联网连接的连接处理机目录最好从IP代理系统接收连接处理机请求,并且对此响应,向请求的IP代理系统18传送任何被请求的连接处理机。当与IP代理系统18通信的移动设备12下载新的软件应用或调用使用新的连接方案或移动设备12先前没有使用的连接方法的新移动设备特征时,新连接处理机可由IP代理系统18要求。然后,移动设备用户或新应用或特征发送控制消息到IP代理系统18,例如指示被要求连接处理机的名称,或许要求新连接处理机的移动设备应用,和与新连接处理机可以从其请求的连接处理机目录相关联的地址。然后IP代理系统18最好从该目录请求新连接处理机。连接处理机目录能够例如被作为使用HTTP请求可对IP代理系统18访问的网络服务器类实现。
当从远端源装载一个连接处理机时,IP代理系统18最好在本地存储器中存储处理机,以便提供处理机的较快装载用于涉及连接的相应类型的后面操作,用于连接处理机从目录被初始装载的移动设备12或由IP代理系统18支持的不同移动设备12。依据可供IP代理系统18使用的存储器资源,可以无限期地存储下载的连接处理机,或存储特定的时间段。作为替换,当下载新处理机时,通过覆写相对不常使用的连接处理机,最近较少使用的或LRU代替方案能够被提供用于更有效地使用可用存储器。也可使用其它存储器管理技术来优化本地IP代理系统连接处理机存储配置。
代码转换
相对于诸如互联网之类的计算机网络,无线通信网络较慢。架接两者的任何系统,正如IP代理系统作的,可能必须转换互联网数据,以便它被适当地针对无线网络和移动设备格式化。该过程在此被称为滤波或代码转换,并且通常涉及这些操作,如将来自互联网的数据压缩成为适合于无线传输的更紧密的格式。
在下面的描述中,在上面HTTP处理机26和HTTP连接的示例的上下文中主要示处了代码转换操作。HTTP连接和处理机例子是特别有用的,因为HTTP允许多用途互联网邮件扩展(MIME)类型形式的内容标签,其可以用来针对接收的信息确定合适的代码转换器。
按照在此公开的IP代理系统18,有用于每种类型的连接处理机的单个配置文件。例如在IP代理系统18中,单个配置文件与HTTP连接处理机26相关联并且包括用于所有HTTP内容代码转换器的信息。该配置文件用于将代码转换器映射到某些内容类型。IP代理系统18可以询问该文件,以确定它应该装载哪个内容代码转换器来操作针对移动设备12的任何接收的内容。
在配置文件中,最好是指定如何定义内容类型和代码转换器之间的映射的一般规则。一个可能的配置文件条目的例子如下:
Entry={[default]:{RSV|<Transcoder name>}}|
{[[InputType]|<->OutputType>]:[Transcoder name]}
其中,default向IP代理服务器指示在没有一个代码转换器与接收的内容类型相关联的情况下应该装载哪个缺省的代码转换器;
RSV是配置文件中使用的一组保留的关键字,诸如通过(即,前送数据到移动设备而没有代码转换)或放弃(即,不进行代码转换或前送数据到移动设备);
Transcoder name是映射的代码转换器的名称;
InputType指示映射的代码转换器接受的输入内容类型,对于HTTP代码转换器,配置文件可以是MIME类型;和
OutputType指示输出类型,诸如代码转换器产生的用于HTTP代码转换器的MIME类型。
通过使用内容代码转换器配置文件,可以添加新代码转换器供IP代理系统18使用。因此,随着新代码转换器开发和变得可用,它们能够添加到配置文件以用于任何合适的连接处理机,并且此后当需要时能够由连接处理机装载,并且不影响IP代理系统18的其它组件。例如,可以添加配置文件条目而不用关掉整个IP代理系统18,于是,允许为了传输能够转换到移动设备12的数据的动态扩展。
在另一个实施例中,使用用于所有连接处理机的公共配置文件格式,于是只需要准备单个配置文件条目,并且能够添加到针对任何连接处理机的配置文件中。还可以进一步扩展用于所有连接处理机的公共配置文件格式的概念,以便提供用于IP代理系统18的单个配置文件。然后,可由IP代理系统18中的所有连接处理机使用这样一个配置文件,以确定哪些内容代码转换器是可用的,并且选择特定的代码转换器用于接收的内容。然而,应该理解,公共配置文件格式不是必需的。某些连接处理机可以共享一个配置文件入口格式或甚至单个配置文件,而由相同IP代理系统18支持的其它连接处理机可以具有不同的配置文件和入口格式。
IP代理系统18最好基于有关被推到移动设备12或从移动设备12拉出的数据内容类型的可用信息来装载代码转换器。IP代理系统18可以使用接受和内容类型头标字段来确定应该装载哪个代码转换器。下面进一步详细描述几个示例内容代码转换器装载控制方案。尽管这些示例主要涉及HTTP连接和处理机,本领域技术人员应该理解,当IP代理系统18接收到内容时,其它连接类型和处理机可使用类似配置和方法以选择代码转换器。
还应理解,代码转换器可以改为基于内容类型之外的信息进行选择,所述信息包括在来自移动设备的连接请求的首标部分或其它部分中的信息,对连接请求的响应,或来自包括要被推到移动设备的信息的信息源的通信。例如,可以配置IP代理系统18以确定数据将发送到的移动设备12的类型。由IP代理系统18进行的代码转换器选择能够类似地基于移动设备12的网络地址或其它标识符。依赖移动设备或设备类型的代码转换器选择方案可以通过提供可访问IP代理系统18的设备或设备类型映射表得到支持,该映射表将设备或设备类型映射到代码转换器。作为替换,可以调整配置文件包括设备或设备类型标识符,由此将特定代码转换器与设备或设备类型相关联。
以类似的方式,可以基于信息源的地址(例如URL)或其它信息源的标识符来选择代码转换器,以使特定信息源的代码转换启动。可以使用可访问诸如18之类的IP代理系统的映射表或配置文件,基于信息源来启动代码转换器选择。例如当使用特定的代码转换器对来自特定的网站和针对移动设备的任何内容进行代码转换时,该类型的代码转换可以是有用的。
尽管下面描述的代码转换器选择方案的主要类型是基于内容类型的代码转换器选择,这些可选的方案的任何一个可被使用代替基于内容类型的代码转换器选择。例如,当由基本代码转换器选择方案指定的代码转换器不可用时,诸如当代码转换器系统不包括被配置为将接收的内容类型代码转换成为配置移动设备接受的内容类型的代码转换器时,还可以使用可选方案来选择一个代码转换器。
在IP代理系统18中的HTTP连接处理机将基于接受行和内容类型首标字段正常地设法装载代码转换器。如果代码转换器具有关于移动设备12被配置接受的内容类型和服务器或其它信息源20返回的内容类型的信息,IP代理可以装载该代码转换器。例如,在IP代理系统18中的HTTP连接处理机26可以使用输入类型->输出类型(InputType->OutputType)密钥格式以询问其配置文件的情况下,当配置文件入口包括内容类型字段时,如在上例文件入口中那样。
如果代码转换器具有只与服务器或源20的内容类型有关的,而不是移动设备12能够接受的信息,HTTP连接处理机26也可以装载该代码转换器。在这种情况下,IP代理18能够使用输入类型(InputType)密钥格式询问其配置文件。如果连接处理机不能确定应该使用哪个代码转换器,它最好装载一预定缺省代码转换器。当使用缺省代码转换器时,如果缺省代码转换器的输出内容类型不是由移动设备12可接受的或如果缺省被放弃(见上例配置文件入口),IP代理18可以发送出错消息到移动设备12。由于当这些传递差错发生时大部分基于拉的信息源,例如网络服务器的数据不能实现自动重发送或重试功能,差错消息通常只发送到请求移动设备12。然后,移动设备用户可以发送新请求以检索信息。然而,当信息在推服务器42发出时,差错可以返回到发送服务器,然后可以开始新的推操作。
考虑没有指定接受首标的简单HTTP操作的情况。移动设备用户或在移动设备12上的应用程序发出HTTP请求,没有指示移动设备12或应用能够接受的内容类型的接受首标字段。在缺少接受首标信息的情况下,IP代理18可以推断任何类型的内容能够被接受和前送请求到合适的信息源20。当响应于所述请求针对移动设备12的信息内容由IP代理18中的HTTP连接处理机接收时,内容按原样发送到移动设备12,而与内容类型无关。由于在该情况下移动设备12能够假定接受任何内容类型,HTTP处理机确定不需要代码转换,并且因此不装载或使用任何HTTP代码转换器。作为替换,可以配置IP代理18尝试将返回的内容类型与其代码转换器之一匹配。在发现能够代码转换返回的内容类型的合适的代码转换器的情况下,装载该代码转换器并且用于代码转换传送到移动设备12的内容。否则,IP代理18可以装载缺省的代码转换器或放弃接收的内容。
用于处理丢失来自移动设备12的请求中的内容类型信息的其它机构对于本领域技术人员是显而易见的。依据存储在对于IP代理18可访问的数据库中的,或由IP代理拥有者或运营者确定的移动设备用户概要中的设定,当信息请求未指示可接受的内容类型时,在IP代理系统18中实现的特定机构例如可以是由IP代理系统18使用的缺省机构。然而,移动设备12和驻留其上的任何应用最好被配置成在移动设备12处产生的所有信息请求中包括接受的内容类型指示符,以便给IP代理18提供关于移动设备12能够接受的内容类型的可靠和当前信息。还可以使用模式匹配技术以产生更复杂的缺省行为,例如应用代码转换器以代码转换所有的数据成为普通输出类型,而与输入类型无关。这种模式/代码转换器规则的顺序可意味着优先权。
如上所述,最好具有一个针对由IP代理系统18支持的每个连接处理机的代码转换器配置文件,或可能由所有连接处理机共享的单个配置文件。这样的配置文件不仅提供一机构用于当这些新代码转换器变成可用时添加新代码转换器,而且允许连接处理机快速确定哪些代码转换器在IP代理系统18中是可用的,然后响应于信息请求有效扩展能够被接受的内容的类型。
图5是表示HTTP连接处理机基于可用的代码转换器接受的内容类型的扩展的信号流向图。尽管图5只示出了在来自移动设备12的HTTP请求的例子中直接涉及的IP代理系统18的那些组件,本领域技术人员应该理解,可以呈现其它系统组件。然而为了避免图中拥挤,如图2中的30到48这些组件没有在图5中示出。
在图5中,通过无线网关和可能通过WAN和合适的网关,HTTP请求从移动设备12发送到IP代理系统18。如上所述,移动设备12可以使用除HTTP外的协议,例如专用IPPP,与IP代理系统18通信。在这种配置中,尽管连接请求遵循特定的协议,该请求可以指定与不同协议相关的连接类型或连接处理机,在该例中为HTTP。因此,对从移动设备12发送的HTTP请求的引用应该解释为包括HTTP请求,如果移动设备到IP代理系统通信通过HTTP,以及遵循其它协议但是指定HTTP或HTTP连接处理机并且由IP代理系统18解释为HTTP请求的连接请求。
连接请求由分配器22接收,其标识该请求为HTTP请求并且装载HTTP处理机26。在接受行,在该例中的请求指定移动设备12能够接受一般称为汇编WML或简单WMLC的无线标记语言(WML)的被标记的、压缩版本。然后,HTTP处理机使用该接受的内容类型(WMLC)执行在配置文件72中的查找,如图5中的代码转换系统28中所示。然而,本领域技术人员应该理解,配置文件72可以替换为在代码转换器系统28的外部,作为HTTP处理机26的一部分,或甚至在IP代理系统18的外部,假定HTTP处理机能够访问文件。在大部分实施中,配置文件将存储在可由IP代理系统18访问的数据存储器中,通常在IP代理系统18运行的或相结合的相同计算机系统上。
HTTP处理机26搜索配置文件72,以确定是否任何一个其相关的代码转换器输出被请求的内容类型,WMLC。在一个实施例中,当代码转换器被首先装载到IP代理系统18时,构建一个用于所有被配置的代码转换器的查找表,该查找表映射输入内容类型成为输出内容类型。然后,IP代理系统18访问该表,并且确定它能将哪些类型转换成被请求的内容类型(WMLC)。在图5中,配置文件72,或作为替换,一个查找表,包括用于两个代码转换器的入口,一个用于从WML到WMLC的转换,另一个用于从HTML到WMLC的转换。然后HTTP处理机26添加它能够转换为被请求类型(WMLC)的额外的MIME类型(WML,HTML),并且提交一请求到网络服务器76。如图5所示,由IP代理18准备和发送到网络服务器76的请求在其接受行中包括WMLC,WML和HTML。
所述请求最好以优选顺序列出被接受的内容类型。例如,由于移动设备12能够接受WMLC,该类型的内容不需要代码转换,并且因此最好在IP代理请求中首先出现。然后其它内容类型可以例如以代码转换复杂性递减的顺序或基于某些其它准则被列出。内容类型的优选顺序还可以被明确指示,例如使用在接受行中的质量因数。
响应于来自IP代理系统18的HTTP请求,网络服务器76以在图5的例子中的WML格式返回请求的内容到IP代理系统18。然后,HTTP处理机26确定返回的内容是WML,例如从本地存储器装载合适的WML->WMLC代码转换器74,并且执行代码转换器以转换接收的内容成为WMLC。然后WMLC内容通过分配器22前送到移动设备12。当WMLC内容由网络服务器76返回时,HTTP处理机26前送内容到分配器22而不进行代码转换,而如果HTML内容被返回,HTML->WMLC代码转换器将被调用以将内容代码转换成为WMLC。尽管图5示出了由分配器22处理的对移动设备12的响应,由处理机26使用的HTTP和由移动设备12使用的通信协议之间的类似协议翻译或转换可替换为由HTTP处理机26或其它IP代理协议翻译/转换模块执行。
如上所述,如果返回的内容不能被转换成被请求的类型,例如,如果HTTP处理机26不具有合适的代码转换器或不能确定要使用的最好的代码转换器,则最好使用缺省的代码转换器。如果缺省的代码转换器的输出不能由移动设备接受或缺省的代码转换器被丢掉,差错消息可返回到移动设备12。
连接处理机的接受行扩展不限于单个代码转换器操作。在图5的例子中,每个代码转换器从一种格式直接转换成被请求的格式。另一实施例,可进行配置文件72的更广搜索,或可以组织更详细的查找表。于是,可以使用多个代码转换器以转换接收的内容成为可以由移动设备接受的格式或类型。
图6示出了HTTP操作的多个或“成链”代码转换操作的信号流向图。如同图5,图6只示出了在来自移动设备12的HTTP请求中直接涉及的IP代理系统18的那些组件,以避免图中的拥挤。
HTTP请求可能通过一个或多个中间网络和接口组件从移动设备12发送到IP代理系统18。如同上面例子,该请求由分配器22接收,其标识该请求为HTTP请求并且装载HTTP处理机26。然后,HTTP处理机26询问配置文件78,不仅搜索输出WMLC的代码转换器名称,而且搜索输出可以被输入到输出WMLC的任何代码转换器的内容类型的代码转换器。因此,按照该实施例,额外的MIME类型不仅基于代码转换器输出,而且基于代码转换器输入被附加到HTTP请求的首标接受行。例如,在图6中,HTTP处理机26,可能在通过配置文件78的第一次搜索穿过中找到了WML->WMLC代码转换器入口。然后,HTTP处理机26可以重复配置文件,搜索转换内容成为WML的任何代码转换器,例如HTML->WML代码转换器,它能够转换成请求的WMLC内容类型,由此进一步扩展被接受内容类型的列表。配置文件搜索还可以根据例如在HTTP请求处理中可接受的延迟,由HTTP处理机26进一步重复。
为了避免延迟和对与通过配置文件和该多次搜索穿过相关联的处理资源的需要,可以使用代码转换器内容类型查找表。当代码转换器第一次安装在IP代理系统18中时,最好构建综合映射表,以映射接收的内容类型成为可能的输出内容类型。例如,在图6中,WMLC内容的查找表入口将指示是WML还是HTML能够被转换成WMLC。这样的表最好还指示HTML->WMLC代码转换涉及两个代码转换阶段。该表可替换为组织成单一个和成链的代码转换部分,由此如果只优选单个代码转换操作,包括WML->WMLC代码转换器的入口的表的单个代码转换器部分将被访问。如图所示,转换HTML成为WMLC的成链代码转换器82可以从HTML->WML和WML->WMLC代码转换器创建。还可以独立调用HTML->WML和WML->WMLC代码转换器。
如果可接受进一步的代码转换操作和相关处理操作和时间延迟,那么HTTP处理机26可在表的成链代码转换器部分执行接受内容类型或可能先前标识的代码转换器的输入类型的查找。最好是,可以改变代码转换配置文件的格式,以表示仅是这样一个查找表,以便加速搜索。这是通过,例如,指定涉及多代码转换器的内容类型之间的路径完成的。
可以执行表或配置文件查找操作之前或之后,在HTTP请求发送到网络服务器80之前,或甚至在从信息源20接收被请求的内容之后,由HTTP处理机26进行是否允许多代码转换操作的判定。在图6的例子中,很明显,可以调用多代码转换器以代码转换接收的内容成为WMLC。因此,在来自移动设备12的HTTP请求的首标中的接受行被扩展成除了WMLC还包括WML和HTML。如上所述,接受格式最好按优选顺序列出。由于HTML需要两个代码转换操作,而不是从WML转换成WMLC所需的单个代码转换操作,WML最好列在从IP代理系统18发送到网络服务器80的HTTP请求的接受行中的HTML之前。类似地,WMLC不需要代码转换并且最好首先列在接受行中。
代码转换器链包括本地和远程代码转换服务二者也是可行的。这些远程代码转换服务能够是IP代理系统18发现,下载,和执行的代码转换器文件,或它们能够是以一种格式接收数据并且以另一种格式返回的基于网络的外部转换服务,正如下面将详细描述的。
然后,网络服务器80响应HTTP请求,以在图6中的例子中的HTML格式向IP代理系统18返回被请求的内容。HTTP处理机26确定所述返回的内容是HTML,装载和执行HTML->WML代码转换器,然后根据第一代码转换操作的WML结果,装载和执行WML->WMLC代码转换器。将得到的WMLC内容前送到分配器22,然后到移动设备12。如果WMLC内容由网络服务器80返回,HTTP处理机26前送内容到分配器22而没有代码转换,而如果WML内容被返回,调用WML->WMLC代码转换器。
期望关于是否允许多代码转换操作的判定将根据例如预定规则,如最大HTTP请求处理时间或最大内容代码转换时间或处理器时间进行。该判决还可以考虑用户指定的优先权。如果高时间优先权(低时间延迟)由用户分配给提交的请求,则可以选择单个代码转换器操作。作为替换,如果高数据优先权与请求相关,则可以允许任何数目的成链代码转换器操作,以便以可接受的格式使所请求的数据回到移动设备。可以由连接处理机应用的其它准则包括但不限于:允许成链的代码转换器仅用于相对少量的接收内容,仅在一天的某些时刻,在特定当前业务情况下,或仅当配置文件或查找表存储在本地文件系统中时。另外的准则对本领域技术人员是显而易见的,并且由此保留在本发明的范围内。
在从诸如42(图2)之类的推服务器向移动设备12推数据推的情况下,如果服务器推数据内容但不指定MIME类型,则最好使用缺省代码转换器。如果缺省代码转换器输出不能由移动设备12接受的内容类型,最好向推服务器42返回差错消息,然后重发数据到移动设备12。差错信号最好进一步向推服务器42指示任何这种传递失败的原因,以便推服务器42,如果可能的话,在数据重法之前可以设法解决传递问题。对于由于例如没有MIME类型被指定和缺省代码转换器不能代码转换数据成为可接受内容类型数据而不能被传递到移动设备12的情况,推服务器42则可以用合适的MIME类型重发数据。
具有指定MIME类型的服务器数据推的处理可以取决于是否IP代理18知道移动设备12能够接受的内容类型。不象HTTP请求和响应处理的上述例子,IP代理18不具有来自移动设备12的请求指示当数据被推到移动设备12时可接受的内容类型。如果IP代理18不知道移动设备12能够接受的内容类型,则最好使用缺省的代码转换器。然而,在该情况下,激活的连接处理机可以替换为询问代码转换器配置文件或查找表,以确定接受返回的内容类型作为输入的代码转换器是否是可用的。如果发现可用的代码转换器,则装载并使用,以便对接收的内容进行代码转换。如果发现多于一个合适的代码转换器,则它们中的一个,例如具有在配置文件中的第一入口的代码转换器或被先前使用的代码转换器,如最近被使用的代码转换器可以被装载和执行,以便为获得内容的特定移动设备12代码转换数据。还可以基于先前发送到移动设备12的内容类型选择和使用代码转换器。
外部代码转换器系统
如上简单描述的,可以根据需要从IP代理系统18已经在其上实现的计算机系统上的本地存储器装载代码转换器。在另一实施例中,代码转换器还可以从外部存储器装载。图7是带有外部代码转换器系统的通信系统的总体方框图。
除了外部代码转换系统86之外,图7示出的系统90类似于图1的系统10。上面已经描述了对系统10和90二者公共的单元。如图7中的虚线所示,IP代理系统84可以通过某些直接连接,如串行端口或连接,通过WAN 16,如互联网,或通过IP代理系统84和代码转换器系统86被配置操作其中的LAN 88与代码转换器系统86通信。IP代理84和代码转换器系统86之间的其它通信链路对于本领域技术人员将是显而易见的。
图8是示出用于外部代码转换器系统诸如示于图8中的示例HTTP操作的的信号流向图。如同前面的例子,从移动设备12向IP代理系统84发送HTTP请求,指示在移动设备12处接受WMLC内容。由IP代理系统84中的分配器22接收请求,其确定该请求是HTTP请求,并且前送该请求到HTTP连接处理机94。HTTP处理机94例如可以基本类似于图2中的HTTP连接机26,尽管它的操作稍微不同于处理机24以装载内容代码转换器。HTTP处理机94从移动设备12截获HTTP请求,然后可以引用如上所述的代码转换器配置文件92或查找表,确定是否任何代码转换器是有效的,以转换内容的其它类型成为在移动设备12处可接受的类型。如果在配置文件92或查找表中发现对应于一个或更多合适的代码转换器的入口,HTTP处理机94则在发送到信息源,如网络服务器76的请求中最好包括任何进一步的内容类型。网络服务器76处理来自IP代理系统84的请求,并且返回WML内容到HTTP处理机94。这些操作基本上如在前面例子中描述的。
当由HTTP处理机94接收WML内容时,当合适的代码转换器被装载时,最好存储在文件系统或其它数据存储器98中。在图8的例子中,HTTP处理机94从代码转换器系统86请求需要的WML->WMLC代码转换器。尽管该请求在图8示为来自HTTP处理机94的HTTP请求,显而易见的是,可以替换其它传送机构,而使用IP代理系统84从远端代码转换系统86检索代码转换器。例如,如果IP代理系统84通过LAN 88(图7)与代码转换器系统86通信,LAN协议或数据访问和传送方案则可由HTTP处理机94调用,以便检索任何需要的代码转换器。在图8中,代码转换器系统86在其可用的代码转换器96中定位请求的WML->WMLC代码转换器,并向IP代理系统84返回请求的代码转换器。
与实施的特定代码转换器传送机构无关,IP代理系统84或在图8的例子中HTTP处理机94,如在100指示的,接收和装载返回的WML->WMLC代码转换器。然后,先前接收和可能存储的WML内容可以由代码转换器100处理,以代码转换WML内容成为移动设备12可接受的WMLC内容,并且包含代码转换的内容的响应由分配器22返回到移动设备12。
如果启动成链的代码转换器操作,则可由IP代理系统84向代码转换器系统86做出一个以上的代码转换器请求。请求多代码转换器可代替为在向代码转换器系统86的单个请求。对成链的代码转换器操作先前接收内容的处理可以在或是利用可能在文件系统或数据存储器,如98中存储的中间代码转换的内容当IP代理系统18装载每个需要的代码转换器时进行,或是仅在已经装载所有需要的代码转换器时进行。
当完成代码转换操作时,从外部系统86装载的代码转换器最好由IP代理系统84本地存储,以避免后面对外部代码转换器系统86请求相同的代码转换器。从IP代理系统84中的本地或内部存储器检索和装载代码转换器通常比向远程系统请求更快地完成,并且减少IP代理系统84和代码转换系统86之间的通信链路上的业务。在该IP代理系统中,作为图8中的HTTP处理机94的激活的连接处理机最好在从外部代码转换器系统86请求代码转换器之前,确定所需的代码转换器是否存储在本地数据存储器中。根据可用存储器的量,代码转换器可以无限期地存储或存储某一预定时间段。其它存储器管理方案,如象在URL基础上覆写存储的代码转换器,当存储器资源有限时也可以使用。
配置文件92或代码转换器查找表可以通过在配置文件中包括代码转换器的位置指示或包括代码转换器的表入口而被调整用于外部代码转换器装载。如果代码转换器被存储到本地存储器或被覆写进本地存储器中,最好更新文件92或表,以便激活的处理机能够从初始查找操作中确定是否该代码转换器必需从外部代码转换器系统86装载。当代码转换器没有被本地存储或不再本地存储时,那么文件92或查找表最好指示从哪里可以检索代码转换器。对于可以通过HTTP连接检索的代码转换器,相应的文件或表入口可以指示代码转换器系统86的IP地址,而当使用LAN连接时,网络地址可以在配置文件或查找表中指定。
也期望多于一个外部代码转换器系统可以在通信系统,如90中被实现。在这种配置中,配置文件92或查找表最好包括通过能够与其通信的所有外部代码转换系统供IP代理系统84使用的所有代码转换器的入口。IP代理系统84可由此通过直接或网络连接从多个代码转换器系统的任何一个下载代码转换器。具有多代码转换器系统的IP代理系统84的整个操作基本上如上所述,除了可能使用不同的传送机构和通信协议,可以访问不同的代码转换器系统用于每个数据代码转换操作。成链的代码转换操作也可以潜在地涉及与不同代码转换器系统的通信。
当特定类型的代码转换器可从一个以上的代码转换器系统得到时,配置文件92或查找表最好被配置为方便简单的决议方案。尽管IP代理系统84能够访问多代码转换器系统,IP代理系统84的拥有者或监督者可以指定这些代码转换器系统之一为IP代理系统84首先从其尝试下载代码转换器的优选或缺省系统。用于从一个以上的代码转换器系统得到的任何代码转换器的代码转换器系统的优选顺序例如可以以配置文件或查找表入口的顺序反映。如果文件或表按代码转换器类型安排,那么用于特定代码转换器的相应于最优选源的入口最好列在与其它代码转换器系统相关的入口之前。配置文件或查找表可替换为按照代码转换器系统排列,带有用于首先发生的缺省或优选代码转换器系统的所有入口。在这两个示例配置中,IP代理系统84在访问任何其它源之前最好尝试从其优选源装载特定代码转换器。
从前面的描述中明显可以看到,如果在配置文件或查找表中的代码转换器不能由IP代理系统84装载,则可向移动设备12和可能是信息源20返回差错,尤其是当信息源正尝试将内容推到移动设备12时更是如此。不能装载代码转换器也可以通过找到可选的代码转换器或代码转换器链来解决。解决代码转换器问题的另外的方法是修改可接受行以移去引起问题的数据类型,并且将请求重新提交到网络服务器或信息源20。
如上所述,通过添加一相应入口到配置文件92或代码转换器查找表,新代码转换器可以向IP代理系统84登记。因此,当新代码转换器添加到任何外部代码转换器系统时,最好相应地更新可以从代码转换器系统下载代码转换器的每个IP代理系统84中的配置文件92或查找表。这可通过例如当新代码转换器被添加时配置代码转换器系统以发送更新消息到IP代理系统84来完成。代码转换器系统可以替换为附加一更新消息或指示符到随着新代码转换器的添加而来自IP代理系统84的请求的响应。按照该方案,更新消息或指示符可以被附加到在新代码转换器已经被添加之后第一次从代码转换器系统请求任何代码转换器时对IP代理系统84的响应。通过执行一发现例程,IP代理代码转换配置文件或查找表还可以与一个或更多外部代码转换器系统保持一致,由此,可用代码转换器的登记处被周期地询问以便当新代码转换器有效时“发现”它们。
图9示出了外部代码转换器系统的另一个信号流向图。在图9中,不仅代码转换器系统86,而且配置文件102对IP代理系统84来讲是外部的,因此可以在多个IP代理系统间共享。IP代理系统84和配置文件102之间的通信可以通过直接连接或网络连接进行,并且对于不同的IP代理系统可以是不同的。例如,配置文件102可以由通过直接通信链路链接到配置文件的特定IP代理系统的拥有者或运行者维持,而其它IP代理系统可以通过局域或广域网连接与配置文件102通信。如上所述,配置文件102的实施可以替换为查找表。于是配置文件102可以被认为是登记处,一个或多个外部代码转换器系统,如86,用该登记处登记有效的代码转换器。
现在更详细地描述在图9中概括的操作。当HTTP请求由IP代理系统84中的分配器22接收时,它被前送到HTTP处理机94,其如上所述确定是否任何附加的内容类型能够被代码转换成移动设备兼容的WMLC格式。然而,在图9的例子中,配置文件102远离IP代理系统84。如果配置文件102可通过HTTP可访问,HTTP处理机94则用配置文件102管理代码转换器查找功能。如果配置文件102不适用于HTTP,则可调用不同的连接处理机,以便于代码转换器查找或配置文件搜索。
依据IP代理系统84可用的代码转换器,HTTP处理机94可以在来自移动设备12的请求中扩展接受的内容类型,以包括可以被代码转换成移动设备12可接受的WMLC格式的附加内容类型。如上所述,假定从其请求内容的网络服务器76返回WML内容到HTTP处理机94。在一个实施例中,代码转换器系统86启动内容的远程代码转换。代替从代码转换器系统86请求和装载WML->WMLC内容代码转换器104a,HTTP处理机94(或另一连接处理机,取决于它支持的特定代码转换器系统和传送方案)传送WML内容到代码转换系统86。在代码转换系统86内,执行合适的WML->WMLC代码转换器104a,并且WML内容被代码转换成WMLC格式。然后WMLC内容返回到HTTP处理机94,或如果IP代理系统84到代码转换器系统86的通信不使用HTTP,则返回到另一连接处理机。当WMLC内容可能通过与代码转换系统86通信的另一连接处理机由代码转换系统86返回并且由HTTP处理机94接收时,它被前送到分配器22。然后分配器22准备包括WMLC内容的响应,并且发送该响应到移动设备12。HTTP处理机94可以替换为准备响应,然后将由分配器22翻译(如果需要)遵循由移动设备12使用的通信协议或方案。在数据传送或代码转换差错发生的情况下,如图所示,由网络服务器76返回的WML内容可以由HTTP处理机94存储。WML内容的本地存储允许IP代理系统84重新提交用于代码转换的内容或者给同一代码转换器系统86或者给不同的代码转换器系统,不必首先从网络服务器76请求内容。
在图9的系统中,期望代码转换器系统86和配置文件102也可以相互通信以保证配置文件102准确指示哪些代码转换器是可用的。可以使用上述更新方案之一以保证配置文件保持最新。配置文件可以与连接的特定类型,如HTTP连接和由此的HTTP连接处理机相关联。如果配置文件102与特定代码转换器系统86相关联,配置文件则可以驻留在代码转换系统86内。如果实现多代码转换系统,存储在所有代码转换器系统中可用的代码转换器的代码转换器入口的共享配置文件可以简化连接处理机执行的代码转换器查找。然后IP代理系统84只需询问单个配置文件,以确定是否从它能够通信的任何代码转换器系统中得到合适的代码转换器。这种单个配置文件/服务器还能支持允许外部代码转换服务器登记的协议。该登记过程例如能够添加可用代码转换器列表到单个配置文件。
因此,外部代码转换系统86包括下载系统,可以由IP代理系统84从该下载系统下载代码转换器并且本地执行(见图8),并且包括远程代码转换系统,内容被发送到所述系统用于在代码转换系统进行代码转换(见图9)。在另一实施例中,“混合”代码转换器系统合并这两种类型的代码转换系统的情况。当混合代码转换器系统可用于IP代理系统84时,IP代理系统84可以或是从代码转换器系统下载需要的代码转换器,或是发送内容到要远程代码转换的代码转换器系统。代码转换器下载或远程代码转换的选择可以取决于例如要代码转换的数据量、代码转换的复杂性(单或成链操作)或其它准则。
外部连接处理机系统
图10示出了带有外部的、可能共享组件的分布IP代理系统的概念的进一步扩展。图10是带有外部代码转换系统86和外部连接处理机系统108的通信系统的方框图。除了连接处理机系统108在IP代理系统106的外部之外,图10的系统110基本上与图7中的系统90相同。IP代理系统106能够从连接处理机系统108通过直接连接、LAN 88或WAN 16诸如互联网下载连接处理机。
图11是用于图10的系统的示例信号流向图。在图11中,连接处理机系统108,代码转换器系统86和配置文件102均是外部组件,并且因此可以在多IP代理系统106中共享。这些外部组件可以被实现用于例如由公司、互联网提供商(ISP)或应用服务提供商(ASP)拥有和/或运营的所有IP代理系统106,诸如通过公司内部网、拨号连接或其它通信配置访问。连接处理机系统108,代码转换器系统86和配置文件102可以替换为通过互联网可公共访问任何IP代理106。本领域技术人员将理解,IP代理系统,如106可潜在地访问专用、可能基于公司、ISP或ASP的外部组件和公共连接处理机系统、配置文件或代码转换器系统。如上所述,IP代理106和外部组件之间的通信可以通过直接连接或网络连接,并且可以针对不同的IP代理系统而不同。
通过示例,下面将针对HTTP请求描述与系统诸如110相关的操作。当HTTP请求由IP代理系统106中的分配器22接收时,合适的处理机可能必需从连接处理机系统108下载,除非处理机已经驻留在IP代理106上,正如下面进一步详细描述的。这在图11中作为处理机请求示出,该请求通过与连接处理机系统108匹配的驻留处理机112,如TCP处理机而被处理。该驻留处理机112通常在IP代理系统108中本地提供,以便能够在IP代理系统和外部连接处理机系统108之间进行通信。然而,该处理机可以被替换为通过IP代理系统106从连接处理机系统,最好经自动下载程序下载。
然后,处理机112从外部连接处理机系统108请求合适的连接处理机,在该示例中的HTTP连接处理机。如果被请求的连接处理机不可用或不能下载,则将差错返回到移动设备12。然而,如果连接处理机系统108返回需要的HTTP连接处理机108a,则由IP代理系统106装载。然后,分配器将原始的HTTP请求从移动设备12前送到HTTP处理机108a。HTTP处理机108a可以确定是否可将任何附加的内容类型能够代码转换成移动设备匹配的WMLC格式。如上所述,该确定可以通过在本地配置文件或查找表或外部配置文件102或查找表中执行代码转换器查找进行。如果可通过HTTP访问配置文件102,HTTP处理机108a则管理代码转换器查找;否则,可能在另外的处理机下载操作之后,调用不同的连接处理机,以方便代码转换器查找或配置文件查找。
依据代码转换器查找的结果,HTTP处理机108a可以在从移动设备到信息源诸如网络服务器76的请求中扩展接受的内容类型。如上所述,假定网络浏览器76返回WML内容到HTTP处理机108a。通过调用存储在IP代理系统106中的存储器中的WML->WMLC代码转换器,通过从外部代码转换器系统下载代码转换器然后调用在IP代理系统106的代码转换器,或通过发送WML内容从IP代理系统106到外部代码转换器系统86,以便由在代码转换系统86中的WML->WMLC代码转换器104a进行远程代码转换,返回的WML内容可以被代码转换成WMLC内容。尽管在图11中示出了单个代码转换器操作,成链的代码转换操作和任何需要的相关下载或传送操作也可以执行。然后,当WMLC内容返回到HTTP处理机108a时,如果IP代理106到代码转换器系统86通信不使用HTTP,可能通过另一连接处理机,准备包括WMLC内容的响应并且通过分配器22发送到移动设备12。
外部连接处理机系统108设有连接类型的扩展,通过它IP代理系统106可以访问要发送到移动设备12的数据。一旦从外部连接处理机系统下载,诸如HTTP处理机108a之类的连接处理机可以由IP代理系统106存储到本地数据存储器。在这些系统中,分配器22最好访问本地存储器以确定是否需要的处理机已经驻留在IP代理系统106内。由此能够避免以后下载先前使用的连接处理机。下载操作可以通过在初始化IP代理系统106时在本地存储器中提供一个或更多最常用的连接处理机进一步减少,这样只有较少使用的连接处理机按照需要从外部连接处理机系统下载。
类似于上述的外部代码转换系统,外部连接处理机系统可以是如图11所示的下载系统或者是一个远程连接处理系统,其中连接处理机被调用并在连接处理机系统执行,而不是被下载用于在IP代理系统106执行。在HTTP请求的例子中,当启动远程连接处理时,来自移动设备12的请求可以被派遣给或切换给外部连接处理机系统。
图12示出了信息请求派遣给外部连接处理机的信号流向图。在图12的例子中,来自移动设备12的请求由IP代理系统106a中的分配器22接收,并且前送到驻留处理机112。尽管称为驻留处理机,处理机112还可以从外部连接处理机系统下载到IP代理系统106a。然后,驻留处理机112可以询问代码转换器配置文件72和在请求中扩展接受的内容类型。从前面描述中可以看到,还可以实现外部配置文件。如上所述与连接处理机系统108兼容的驻留处理机112前送所述请求,可能具有扩展的接受行,到连接处理机系统108。连接处理机系统108确定该请求是HTTP请求并且调用HTTP连接处理机108a。由此,该请求被派遣给外部处理机108a,其发送HTTP请求到信息源,在该例中为网络服务器76,并且接收返回的WML内容。然后,将WML内容返回到驻留处理机112,其使用WML->WMLC代码转换器74将WML内容代码转换成移动设备兼容的WMLC内容。作为替换,如上所述,该代码转换能够涉及成链代码转换器和/或外部代码转换器。然后,将得到的WMLC内容通过分配器22返回到移动设备12。
在图12中,接受的内容类型和内容代码转换的扩展在IP代理系统106a内得到管理。图13是展示图12的请求派遣的变体的信号流向图。在图13中,来自移动设备12的请求由分配器22前送到驻留处理机112。然后驻留处理机112前送所述请求到连接处理机系统108,其启动HTTP处理机108a。HTTP处理机108a询问配置文件102或查找表,确定哪个代码转换器(如果有)可用于代码转换其它内容类型成为请求的类型WMLC,然后修改请求,以包括这些其它内容类型,在该例中是WML和HTML。该修改的请求发送到网络浏览器76,其返回WML内容。然后,将返回的WML内容发送到代码转换器系统86中的合适的WML->WMLC代码转换器104a,并且代码转换的内容返回到HTTP处理机108a,然后到IP代理系统106a中的驻留处理机112。包括WMLC内容的响应通过分配器22发送到移动设备以完成操作。
图14是展示对外部连接处理机的请求的切换的信号流向图。在切换方案中,IP代理系统106c通过其驻留处理机112前送请求到外部处理机系统108。连接处理机和合适的处理机,在该例中是HTTP处理机108b,则管理信息请求/响应操作的提醒者。一旦请求被切换到外部连接处理机系统,IP代理系统106c最好不进一步涉及操作。
现在详细参考图14,来自移动设备12的请求发送到连接处理机系统108。连接处理机系统108调用合适的处理机,图示的HTTP处理机108a,其修改请求以包括另外的内容类型并发送该请求到信息源(网络服务器76),接收来自信息源的内容,并且调用在外部代码转换系统86中的任何需要的代码转换操作,基本如上面结合图13所做的描述。然而,代替返回代码转换的WMLC内容到IP代理系统106c,外部连接处理机系统最好包括移动设备协议处理机108c,其发送响应到移动设备12。
当移动设备协议不同于请求协议,以致调用不同的处理机与信息源和移动设备通信时,如图14所示,HTTP处理机108b和移动设备协议处理机108c被有效地链接,类似于上述的代码转换器链。尽管示出了相同连接处理机系统108的一部分,HTTP处理机108b和移动设备协议处理机108c可以替换为与不同的连接处理机系统相关联。连接处理机系统108可以例如从另一连接处理机系统下载移动设备协议处理机108c,并且调用在远程系统处的移动设备协议处理机。从前面描述中明显可以看到,图14中的移动设备协议处理机108c与分配器22在功能上的类似处在于:当需要时,它在连接处理机和移动设备通信协议之间进行翻译。
在相同或不同连接处理机系统中的连接处理机也可以被链接,以便处理来自移动设备12的信息请求,例如请求来自信息源的信息和管理返回的内容的代码转换。任何连接处理机链操作可涉及派遣或切换,并且最好由连接处理机系统或请求被初始接收处的IP代理系统控制。
还期望一个以上的连接处理机系统可用于任何IP代理系统。如上所述,对于外部代码转换器系统,外部连接处理机系统可以登记在一个或更多登记处,该登记处可以由IP代理系统询问,以找到可用的连接处理机。在需要连接处理机链的地方,连接处理机系统也可以访问登记处,以定位在另外连接处理机系统中的特定类型的连接处理机。登记处方案还可以通过促进发现功能来简化动态连接处理机管理,以允许IP代理系统和连接处理机系统当新连接处理机和系统变得可用时发现它们。在带有多外部连接处理机系统的系统中,IP代理系统可以有效地变成一个装载平衡模块,该模块可以在不同连接处理机之间分配输入的移动设备请求。
上面主要是在通信或连接协议的背景下描述了连接处理机。然而,还期望处理机可实现用于其它功能和服务,例如包括加密、压缩、用户验证和状态管理。这些“服务处理机”可以嵌入连接处理机,但最好是按照需要与连接处理机链接的不同模块。链机构设有在连接管理和请求处理方方面的更多的灵活性,这在于,基本连接处理机可以按照需要与很多服务处理机链接,以客户化连接或请求/响应操作。连接处理机系统可包括服务处理机,并且还可以或替换为通过下载或远程执行在一个或更多其它服务处理机系统中的服务处理机,完成连接处理机和服务处理机链。
示例实现
现在描述IP代理系统的示例实现。图15是在安全网络中实现的IP代理系统的方框图。
图15中的系统120包括操作于无线网络14内的移动设备12。通过网关15,移动设备能够通过诸如互联网之类的WAN 16接收并且最好还发送数据。系统120的这些单元基本上与在图1中类似标示的单元相同。然而在系统120中,IP代理系统124配置在安全防火墙127后面的诸如公司网络130之类的专用网络内,并且通过网络服务器计算机122与网关15通信。在具体的示例实施例中,网络服务器122与电子邮件系统128相关联。两个信息源,即内部源126和外部源132也示于图15中。
网络服务器122最好能与移动设备12进行安全通信,如由加密和解密模块122a和122b指示。网络服务器122加密指向移动设备12的任何通信。计划的接收者移动设备12使用存储于其中的保密密钥能够解密来自网络服务器122的加密通信。移动设备12类似地加密发送到网络服务器122的任何信息,其能够由解密模块122b解密。加密技术领域的技术人员将理解,最好是选择在网络服务器122和移动设备12处使用的密钥和加密算法,以致没有所需的秘密密钥使对加密信息的解密在计算上不可行。一个优选的加密方案是三重DES(Data Encryption Standard,数据加密标准)。
在网络服务器122和移动设备12之间的密钥分发可以通过安全连接,如移动设备12和网络服务器122之间,或移动设备12和公司网络内的另一计算机之间的安全物理连接完成。已知的公共密钥加密技术可替换为用于密钥分发。在公共密钥方案中,使用公共密钥以这样的方法对信息加密,即使用相应的专用密钥对加密的信息解密。公共密钥由一般称为证书机构或CA的公共访问的密钥储存库存储并且可从其检索,而专用密钥仅在移动设备或公共密钥与其相关联的系统处存储。这样,希望发送加密的信息到移动设备12的网络服务器122或任何其他发送者可以从CA检索移动设备的公共密钥,并且使用公共密钥加密针对移动设备12的加密信息。移动设备12可以类似地从CA获得网络服务器的公共密钥,并且使用公共密钥加密要发送到服务器的通信信号。
与使用的具体密钥分发方案和加密技术无关,移动设备12和网络服务器122之间的加密的通信可以被使用,例如使用移动设备访问公司或其它专用信息。考虑下面参照图16描述的安全防火墙127内的内部信息源126的例子。图16是公司数据访问操作的信号流向图。与上面示出的示例的操作一致,图16示出了基于HTTP的数据访问操作。
在图16中,HTTP请求在其通过图15的无线网络14和可能其它的中间网络或组件,如图15中所示的网关15和WAN 16,发送到网络服务器122之前,最好使用强加密例程,如三重DES(3DES)在移动设备12被加密。然后,加密的请求由网络服务器122接收并且在解密模块122b解密。解密的请求被前送到IP代理系统124,其可以基本上如上所述进行对该请求的处理。激活的处理机,在该例中是HTTP处理机26,可以询问配置文件72或代码转换器查找表并且扩展接受的内容类型,以包括能够代码转换成可由移动设备12接受的格式的内容类型。然后由HTTP处理机26将一个请求,可能包括另外的内容类型,发送到信息源126,然后返回请求的信息,在该例中以WML格式。如果需要,由HTTP处理机26装载和调用合适的代码转换器74,并且被请求的内容最好以由移动设备12请求的格式,通过分配器22返回到网络服务器122。然后,网络服务器122在其加密模块122a加密中从IP代理系统124接收的内容,并且响应于移动设备12发送加密的内容。在某些实现中,与分配器22相关联的协议转换或翻译操作可替换为由网络服务器122执行。
信息源126可以是最好配置用于在专用网络130上操作的计算机系统或数据存储器,如通过网络130可访问的文件服务器或其它数据存储器。在公司网络的例子中,信息源126可包括网络130的拥有者努力保持专有的保密或另外的敏感信息。安全防火墙127设法防止对包括信息源126的专用网络组件的未授权访问。在某些情形下,存储在信息源处的信息的绝对存在必须保持保密。如图16所示对来自移动设备的请求的加密防止了未经授权方没有破解加密而确定请求的内容,如上所述,对对于强加密方案,如3DES,在计算上是不可行的。该请求保持加密,直到由安全防火墙127后面的网络服务器122接收和解密,如图12中的134处所指示。因此,该请求实际上正如从网络130上的计算机系统发送的请求那样安全。
一旦被解密,如上所述,该请求由IP代理系统124和信息源126处理。然而,由网络服务器122中的加密模块122a对被请求内容进行的加密在发送到移动设备12之前同样保证内容只能由移动设备12观看。因此,保密公司信息直到在移动设备12被接收和解密为止一直保持被加密并因此而安全。从而将安全防火墙127有效地扩展到移动设备12。请求和对此响应而返回到移动设备的信息二者都是安全的。
在已知的诸如WAP之类的远程数据访问方案中,使用移动设备提供数据访问的网关系统通常位于例如在服务提供商的场所处公司或专用建筑物外部。在专用建筑物处加密的任何保密或敏感信息在公司防火墙外部的网关系统处解密,然后在被发送到目的移动设备或一些设备之前被重新加密。因此,信息在网关系统处是未加密的,并且由此可由网关系统的拥有者或运行者访问。此外,从其发送信息的专用网络的拥有者或运营者通常不对网关系统处的安全配置进行控制,这样信息在网关系统易于受到攻击。
图15和16所示的配置提供对专用、保密或其它敏感信息的安全远程访问。信息被从网络服务器122和任何移动设备12之间的端对端加密。在安全防火墙127处可以实现任何级的安全,以保护存储在信息源,如126的保密信息,并且当由网络服务器122加密时,信息在移动设备12处接收之前,不在任何中间点被解密。信息仅在安全防火墙127后面的点134“内部”和在移动设备上是未加密的。安全配置诸如口令或口令句控制也最好在移动设备12处被实现,以防止未授权的用户使用移动设备12或解密接收的加密信息。例如,计算机工作站可以由口令去激活系统锁定保护,并且对公司网络130的访问通常由登录口令保护。类似地,可以需要口令使用移动设备12,而不同的口令句可以是解密任何存储在移动设备上的加密信息必需的。移动设备12和存储其上的信息由此正好象网络工作站和存储在网络上的信息那么安全。如同受限口令字或口令句输入重试这样技术,在口令或口令句输入失败预定数目后,移动设备12或移动设备存储器复位,动态并可能随机地更新口令/口令句,并可以被用来进一步改善移动设备的安全性。
对于外部信息源132(图15),除了信息源是在防火墙127外部之外,数据访问操作基本上与图16所示出的相同。移动设备12和网络服务器122之间的请求和响应可以被加密,但是与信息源132交换的信息可能是不安全的。如果由信息源132提供的信息不是专用的或保密的,那么IP代理系统124和源132之间的非安全交换对于大部分用途将是足够的。
改善从外部源132请求的信息的安全性的一个可能的措施将是使IP代理系统124和源132之间的通信安全。例如,可以调整IP代理系统124支持安全HTTP(HTTPS),安全套接层(SSL)或其它安全通信方案,以便安全访问在信息源132处的信息。来自源132的信息可以由此安全传送到IP代理系统124,然后由安全防火墙127保护。加密信息可以由IP代理系统124例如由激活的连接处理机解密,并被传送到网络服务器122,其然后加密该信息用于传送到移动设备12。如上,信息仅在防火墙127之后是未加密的。或者,通过IP代理系统124在移动设备12和源132之间建立安全通信会话。在图15的系统中,移动设备12和网络服务器122之间的通信然后将被双重加密。
如图15所示,网络服务器122也与电子邮件系统128相关联。在一个实施例中,网络服务器122提供从电子邮件系统128向移动设备12发送数据项。美国专利6,219,694详细描述了这样一个系统,该专利题为“从主系统到具有共享电子地址的移动数据通信设备推信息的系统和方法”,并且在2001年4月17日授予本发明的受让人。该专利的全部公开在此被引用包含在该申请中。
由于网络服务器122也与IP代理系统124相关联,在电子邮件系统128和IP代理系统124之间的集成功能也是可以的。例如,IP代理系统124使用网络服务器122的加密功能以及传输机构,通过该传输机构网络服务器122与移动设备12通信。网络服务器122的其它功能,诸如象数据压缩,可以由IP代理系统124开发,以改善无线通信资源的使用效率。如上面简单描述的,针对移动设备12的内容,可以使用在与移动设备用户相关联的电子邮件系统128中的电子邮件地址,被编址到移动设备。在该例中,由IP代理系统124前送到移动设备12的内容可以由网络服务器122存储在电子邮件系统128上的用户信箱中,如图15指示的,由此提供IP代理系统操作的记录和任何前送内容的存储复制件。其它集成的功能可以包括,但决不限于使用电子邮件系统128的电子邮件地址通过IP代理系统124的来自移动设备的基于电子邮件的内容请求和针对设备的信息的寻址。与任何其它服务相关联的网络服务器122或IP代理系统124可以使用其它的集成功能。
应该理解,上述说明书仅以示例涉及了优选实施例。本领域技术人员就会理解本发明的很多其它变化,并且这些变体是在上述本发明的范围内,无论是否被清楚描述。例如,本发明的实施例已经主要在基于IP系统的情况小进行了描述。用于通信系统的其它类型的类似代理系统也期望在本发明的范围内。除了上面描述的那些外的其它类型的连接、连接处理机和代码转换器对于本领域技术人员也是明显的。
依据远程数据访问系统的具体实施和要支持的特征,图2所示的所有单元并不都是必需的。例如如果不支持推服务,代理系统将不包括推服务30。
本发明也决不限于使用MIME类型的内容类型指示。MIME类型结合本发明是有用的,但不需要实施本发明。其它内容类型指示器可以替换MIME类型以指示被请求或接收的内容的类型或格式。
尽管上述代码转换器在已知的信息类型或格式之间转换,客户化的代码转换器能够被开发和实现用于实际任何信息格式,例如包括应用程序文件类型和专有格式。如上所述,按照本发明的代理系统最好是可配置的,并且新内容代码转换器也可以被添加。
来自信息源的信息内容也能包括多种不同的内容类型,不只是上述的单个内容类型。对于这种多类型内容,可以选择代码转换器例如代码转换内容成为单内容类型,或成为在移动设备处可接受的多种内容类型。按照上述的任何一个代码转换器选择方案可以控制代码转换器的选择。在由移动设备或信息源进行代码转换器的选择的情况下,用于任何或每一部分多类型信息类型内容的代码转换器列表可以在连接请求中,响应于一个请求,或一个推请求被指定。相应代码转换器可以被选择并且用于具有特定内容类型的信息内容的每部分。
当多类型信息内容的任何部分不能按照希望或需要被代码转换时,例如,合适的代码转换器不可用时,只有信息内容的其它部分可能被代码转换和发送到移动设备。或者,如上所述缺省的代码转换操作可以用于代码转换部分多种内容类型。多类型内容的未代码转换的部分或可能所有多类型内容能够改为利用可用于随后访问信息内容或其部分的一链路或其它信息替换,并且发送到移动设备。指示多种内容类型和/或需要或推荐的代码转换器的信息也能被发送到移动设备。然后,信息内容或其一部分可以通过提交一连接请求或可能进一步的代码转换指示或一备用的代码转换器选择到IP代理系统由移动设备检索。
此外,代理系统可以在任何网络中实现,而不仅在图11所示的公司网络中。在ISP、ASP或虚拟运营商(VNO)系统中代理系统的安装提供对网络信息的安全远程访问和任何网络用户之间的信息的安全传送,包括ISP、ASP或VNO用户的移动设备之间的传送。
尽管已经参照特定的图示实施例详细描述了本发明,其变化和改进存在于下面的权利要求所描述和定义的本发明的范围和精神内。

Claims (69)

1.一种用于提供信息源和移动通信设备之间的数据访问的系统,该系统包括:
代码转换系统,包括多个代码转换器,每个代码转换器可操作以便将信息内容从各个第一内容类型代码转换成各个第二内容类型;和
第一网络设备,与所述代码转换系统通信,并且包括连接处理机系统,该连接处理机系统可操作以接收用于信息源和移动通信设备之间的连接的连接数据和选择相应的连接处理机,连接处理机可操作以从多个代码转换器选择一个或更多代码转换器,以代码转换信息内容。
2.如权利要求1所述的系统,其中所述连接处理机系统包括连接处理机目录,所述连接处理机目录存储连接处理机数据。
3.如权利要求2所述的系统,其中所述连接处理机数据包括与至少一个连接处理机相关联的连接处理机数据。
4.如权利要求2所述的系统,其中所述连接处理机数据包括指定连接处理机的位置的网络地址。
5.如权利要求4所述的系统,其中所述连接处理机系统可操作以访问由所述网络地址指定的位置,检索所述连接处理机,并且存储与在所述连接处理机目录中的连接处理机相关联的连接处理机数据。
6.如权利要求1所述的系统,其中所述代码转换系统包括一个代码转换器目录,所述代码转换器目录存储代码转换器数据。
7.如权利要求6所述的系统,其中所述代码转换器数据包括与至少一个代码转换器相关联的代码转换器数据。
8.如权利要求6所述的系统,其中所述代码转换器数据包括指定代码转换器的位置的网络地址。
9.如权利要求8所述的系统,其中所述代码转换系统可操作以访问由所述网络地址指定的位置,检索所述代码转换器,并且存储与在所述代码转换器目录中的代码转换器相关联的代码转换器数据。
10.如权利要求1所述的系统,其中所述连接数据包括接受数据,所述接受数据指示移动通信设备可操作以接收的可接受的内容类型。
11.如权利要求10所述的系统,其中所述连接处理机可操作以确定从信息源接收的信息内容的接收内容类型,并且确定接收的内容类型是否与可接受的内容类型匹配。
12.如权利要求11所述的系统,其中所述连接处理机进一步可操作以选择一个或更多代码转换器,以便在接收的内容类型不与可接受的内容类型匹配的情况代码转换该信息内容。
13.如权利要求11所述的系统,其中所述连接处理机进一步可操作,如果所述信息内容不能被代码转换成可接受的内容类型,则向移动通信设备发送差错消息。
14.如权利要求6所述的系统,其中所述代码转换系统可操作以产生和存储包括代码转换链的映射数据,每个代码转换链选择一个或更多代码转换器,以便将信息内容从各个输入内容类型代码转换成各个输出内容类型。
15.如权利要求14所述的系统,其中所述映射数据根据代码转换数据的增加或删除被更新。
16.如权利要求14所述的系统,其中所述连接处理机可操作以确定从信息源接收的信息内容的接收内容类型,确定移动设备可操作接收的可接受内容类型,并且选择代码转换链之一,以便将信息内容从接收的内容类型代码转换成为可接受的内容类型。
17.如权利要求1所述的系统,其中所述连接处理机可操作以优选顺序指定内容类型列表,并且向信息源提供内容类型列表。
18.如权利要求17所述的系统,其中所述连接处理机可操作以确定从信息源接收的信息内容的接收内容类型,确定移动设备可操作接收的可接受内容类型,并且选择一个或更多代码转换器,以便将信息内容从接收的内容类型代码转换成为可接受的内容类型。
19.如权利要求1所述的系统,其中所述连接处理机可操作以确定移动通信设备的类型,并且基于所述确定从多个代码转换器选择一个或更多代码转换器。
20.如权利要求1所述的系统,其中所述连接处理机可操作以确定与移动通信设备相关联的地址,并且基于所述确定从多个代码转换器选择一个或更多代码转换器。
21.如权利要求1所述的系统,其中所述连接处理机可操作以确定与信息源相关联的地址,并且基于所述确定从多个代码转换器选择一个或更多代码转换器。
22.如权利要求17所述的系统,其中:
所述信息内容包括多种不同的内容类型;和
所述连接处理机可操作以选择一个相应的代码转换器,以代码转换多种不同内容类型中的每一种的信息内容。
23.一种向移动通信设备提供远程数据访问的方法,包括步骤:
接收连接请求,并根据所述连接请求,选择多个连接处理机中的一个;
响应于所述连接请求,与信息源建立连接;
从所述信息源接收信息内容;
提供多个代码转换器,每个代码转换器被配置为将信息内容从各个输入内容类型代码转换成为各个输出内容类型;
使用多个代码转换器中的一个或更多来代码转换信息内容,以创建代码转换的信息内容,由所述连接处理机选择多个代码转换器中的一个或更多;和
前送代码转换的信息内容到移动通信设备。
24.如权利要求23所述的方法,其中接收连接请求的步骤包括步骤:从移动通信设备接收连接请求。
25.如权利要求23所述的方法,其中所述连接请求标识所述信息源。
26.如权利要求25所述的方法,其中响应于连接请求与信息源建立连接的步骤包括发送信息请求到信息源的步骤。
27.如权利要求26所述的方法,其中:
所述连接请求遵从第一通信协议;和
所述信息请求遵从第二通信协议。
28.如权利要求27所述的方法,其中所述第二通信协议是超文本传输协议。
29.如权利要求26所述的方法,其中所述连接请求标识一个或更多接受的内容类型,还包括步骤:
确定是否配置多个代码转换器中的任何一个将任何另外的内容类型代码转换成为一个或更多接受的内容类型的任何一个;和
在所述信息请求中包括所述一个或更多接受的内容类型和所述另外的内容类型。
30.如权利要求23所述的方法,其中:
所述连接请求标识一个或更多接受的内容类型;和
使用多个代码转换器中的一个或更多来代码转换信息内容以创建代码转换的信息内容的步骤包括确定信息内容的接收的内容类型是否可被代码转换成一个或更多接受的内容类型的步骤。
31.如权利要求30所述的方法,其中确定信息内容的接收的内容类型是否可被代码转换成一个或更多接受的内容类型的步骤包括步骤:
确定是否配置多个代码转换器中的任何一个将接收的内容类型代码转换成为所述接受的内容类型的一个或更多;和
对于多个代码转换器的任何一个被配置为代码转换接收的内容类型成为一个或更多接受的内容类型的情况,选择一个代码转换器,用于将信息内容代码转换成为接受的内容类型之一。
32.如权利要求31所述的方法,还包括步骤:对于多个代码转换器中没有一个被配置为代码转换接收的内容类型成为一个或更多接受的内容类型的情况,放弃所述信息内容。
33.如权利要求31所述的方法,还包括步骤:对于多个代码转换器中没有一个被配置为代码转换接收的内容类型成为一个或更多接受的内容类型情况,对所述信息内容执行缺省代码转换操作。
34.如权利要求33所述的方法,其中对信息内容执行缺省代码转换操作的步骤包括传递信息内容的步骤。
35.如权利要求33所述的方法,其中对信息内容执行缺省代码转换操作的步骤包括将信息内容代码转换成为响应于先前连接请求前送到移动通信设备的内容类型的步骤:。
36.如权利要求30所述的方法,其中:
所述信息内容包括多种内容类型;和
确定是否可将信息内容的接收内容类型代码转换成一个或更多接受的内容类型的步骤包括步骤:
确定是否配置多个代码转换器的任何一个将多种内容类型的任何一个代码转换成为一个或更多接受的内容类型;和
在配置多个代码转换器的任何一个将多种内容类型的任何一种代码转换成为一个或更多接受的内容类型的情况下,选择一个相应的代码转换器,用于将多种内容类型的每一个的信息内容代码转换成为接受的内容类型之一。
37.如权利要求23所述的方法,其中:
所述信息内容包括多种内容类型;和
使用多个代码转换器中的一个或更多来代码转换信息内容以创建代码转换的信息内容的步骤包括选择一个相应的代码转换器,用于代码转换多种内容类型的每一种的信息内容的步骤。
38.如权利要求23所述的方法,其中使用多个代码转换器中的一个或更多来代码转换信息内容以创建代码转换的信息内容的步骤包括步骤:
确定移动通信设备的类型;和
选择与移动通信设备的类型相关联的多个代码转换器中的一个或更多。
39.如权利要求38所述的方法,其中选择与移动设备的类型相关联的多个代码转换器中的一个或更多的步骤包括访问将移动通信设备类型映射到代码转换器的映射表的步骤。
40.如权利要求23所述的方法,其中使用多个代码转换器中的一个或更多来代码转换信息内容以创建代码转换的信息内容的步骤包括步骤:
确定与移动通信设备相关联的标识符;和
选择与移动通信设备的标识符相关联的多个代码转换器中的一个或更多。
41.如权利要求23所述的方法,还包括步骤:映射多个代码转换器以创建多个代码转换链,每个代码转换链与一个或更多代码转换器相关以代码转换各输入内容类型成为各输出内容类型。
42.如权利要求41所述的方法,其中所述连接请求标识一个或更多接受的内容类型,并且其中使用多个代码转换器中的一个或更多来代码转换信息内容以创建代码转换的信息内容的步骤包括步骤:
确定信息内容的接收内容类型;
从代码转换链搜索与接收的内容类型匹配的各输入内容和与所述一个或更多接受的内容类型之一匹配的各输出内容类型;和
选择代码转换链以代码转换信息内容。
43.如权利要求23所述的方法,其中使用多个代码转换器的一个或更多来代码转换信息内容的步骤包括步骤:
将信息内容代码转换成为中间内容类型;和
将内容从中间格式代码转换成为最终内容类型。
44.如权利要求23所述的方法,其中所述连接请求标识一个或更多接受的内容类型,并且其中与信息源建立连接的步骤包括步骤:
从多个代码转换器搜索被配置代码转换信息内容成为一个或更多接受的内容类型的一组代码转换器;
产生对应于所述一组代码转换器的各输入内容类型的列表;和
发送各输入内容类型的列表和一个或更多接受的内容类型到信息源。
45.如权利要求23所述的方法,其中使用多个代码转换器的一个或更多来代码转换信息内容的步骤包括步骤:
发送信息内容到代码转换系统;和
从代码转换系统接收代码转换的信息内容。
46.权利要求23所述的方法,其中前送代码转换的信息内容到移动通信设备的步骤包括加密代码转换的信息内容的步骤。
47.如权利要求23所述的方法,其中前送代码转换的内容到移动通信设备的步骤包括压缩代码转换的内容的步骤。
48.如权利要求23所述的方法,其中前送代码转换的内容到移动通信设备的步骤包括加密代码转换的内容的步骤。
49.如权利要求23所述的方法,其中信息源是被配置操作于安全防火墙之后的专用计算机网络内的专用信息源。
50.如权利要求23所述的方法,还包括步骤:
按照优选顺序产生代码转换器列表;和
基于所述优选顺序在代码转换器列表中选择代码转换器之一。
51.如权利要求23所述的方法,其中所述输入内容类型和输出内容类型包括从下列组成的组中选择的内容类型:无线标记语言,超文本标记语言,汇编无线标记语言,和可扩展标记语言。
52.一种向移动通信设备提供远程数据访问的系统,包括:
接收连接请求的装置,该连接请求标识一个或更多接受的内容类型;
响应于所述连接请求与信息源建立连接的装置;
从信息源接收信息内容的装置;
提供多个代码转换器,并且使用多个代码转换器的一个或更多来代码转换信息内容成为代码转换的信息内容的装置,每个代码转换器被配置为将信息内容从各输入内容类型代码转换成为各输出内容类型;和
前送代码转换的信息内容到移动通信设备的装置。
53.如权利要求52所述的系统,其中接收标识一个或更多接受的内容类型的连接请求的装置从移动通信设备接收连接请求。
54.如权利要求53所述的系统,其中来自移动通信设备的连接请求使用网际协议地址标识信息源。
55.如权利要求54所述的系统,其中从信息源接收信息内容的装置确定信息内容的接收内容类型是否是接受的内容类型之一。
56.如权利要求52所述的系统,其中从信息源接收信息内容的装置确定多个代码转换器的任何一个是否被配置为代码转换信息内容成为接受的内容类型的一个或更多,并且对于多个代码转换器中的任何一个被配置为代码转换信息内容成为一个或更多接受的内容类型的情况,选择多个代码转换器中的一个以代码转换信息内容成为接受的内容类型之一。
57.如权利要求56所述的系统,其中所述一个或更多接受的内容类型按优选顺序分类,并且代码转换器之一的选择基于所述一个或更多接受的内容类型的优选顺序。
58.如权利要求56所述的系统,其中对于多个代码转换器中没有一个被配置为代码转换信息内容成为一个或更多接受的内容类型的情况,从信息源接收信息内容的装置选择一个缺省代码转换器。
59.如权利要求58所述的系统,其中所述缺省代码转换器丢弃信息内容。
60.如权利要求58所述的系统,其中对于多个代码转换器中没有一个被配置为代码转换信息内容成为一个或更多接受的内容类型的情况,用于前送的装置返回一个差错指示给移动通信设备。
61.如权利要求60所述的系统,其中对于多个代码转换器中没有一个被配置为代码转换信息内容成为一个或更多接受的内容类型的情况,用于建立连接的装置返回一个差错指示给信息源。
62.如权利要求58所述的系统,其中所述缺省的代码转换器可操作以传递信息内容。
63.如权利要求58所述的系统,其中所述缺省代码转换器可操作以代码转换信息内容成为响应来自移动通信设备的先前连接请求前送到移动通信设备的内容类型。
64.如权利要求63所述的系统,还包括一个代码转换器配置文件,该配置文件包括与多个代码转换器的每一个相关联的文件入口;并且其中用于从信息源接收信息内容的装置通过搜索所述配置文件确定代码转换器中的任何一个是否被配置为代码转换信息内容成为一个或更多接受的内容类型。
65.一种经网络提供数据的方法,包括步骤:
提供多个代码转换器,每个代码转换器可操作以将输入内容类型代码转换成为输出内容类型;
映射多个代码转换器以创建多个映射入口,每个映射入口关联一个或更多代码转换器,以便代码转换各接收的内容类型成为各接受的内容类型;
接收对信息内容的请求;
接收信息内容;
确定信息内容的接收的内容类型;
确定接受的内容类型;
确定接收的内容类型是否与接受的内容类型匹配,并且对于所述接收的内容类型不与接受的内容类型匹配的情况,选择一映射入口,以便将信息内容从接收的内容类型代码转换成为接受的内容类型;和
响应于用于信息内容的请求以所述接受的内容类型传送信息内容。
66.如权利要求65所述的方法,其中映射多个代码转换器以创建多个映射入口,每个映射入口关联一个或更多代码转换器以代码转换各接收的内容类型成为各接受的内容类型的步骤包括步骤:
确定用于多个代码转换器的所述输入内容类型;
确定用于多个代码转换器的所述输出内容类型;
创建多个映射入口,每个映射入口将一个相应的接收内容类型与一个相应的接受内容类型关联;和
对于每个映射入口,选择一个或更多代码转换器以代码转换相应的接收内容类型成为相应的接受内容类型。
67.如权利要求66所述的方法,其中确定所述接受的内容类型的步骤包括接收接受的内容类型标识符的步骤。
68.如权利要求65所述的方法,其中接收信息内容的步骤包括步骤:
与信息源建立连接;
从信息源接收信息内容;和
确定从信息源接收的信息内容的接收内容类型。
69.如权利要求65所述的方法,还包括步骤:
比较接受的内容类型与每个映射入口的相应的接受内容类型;
产生与和接受的内容类型匹配的相应的接受内容类型对应的各接收的内容类型的列表;和
传送各接收的内容类型列表和接受的内容类型到信息源。
CNB028178351A 2001-07-12 2002-07-12 用于为移动通信设备提供远程数据访问的系统和方法 Expired - Lifetime CN1324898C (zh)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US30504401P 2001-07-12 2001-07-12
US60/305,044 2001-07-12
US32775201P 2001-10-09 2001-10-09
US60/327,752 2001-10-09
US33060401P 2001-10-25 2001-10-25
US60/330,604 2001-10-25
US34083901P 2001-12-19 2001-12-19
US60/340,839 2001-12-19

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN200710108248XA Division CN101060538B (zh) 2001-07-12 2002-07-12 用于为移动通信设备提供远程数据访问的系统和方法

Publications (2)

Publication Number Publication Date
CN1554195A CN1554195A (zh) 2004-12-08
CN1324898C true CN1324898C (zh) 2007-07-04

Family

ID=27501871

Family Applications (4)

Application Number Title Priority Date Filing Date
CN200710108248XA Expired - Lifetime CN101060538B (zh) 2001-07-12 2002-07-12 用于为移动通信设备提供远程数据访问的系统和方法
CNB028177584A Expired - Lifetime CN100347700C (zh) 2001-07-12 2002-07-12 包括进行数据代码转换的用于把数据从信息源推送到移动通信设备的系统和方法
CNB028178351A Expired - Lifetime CN1324898C (zh) 2001-07-12 2002-07-12 用于为移动通信设备提供远程数据访问的系统和方法
CNB028178408A Expired - Lifetime CN100346338C (zh) 2001-07-12 2002-07-12 用于为移动通信设备提供远程数据访问和代码转换的系统和方法

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN200710108248XA Expired - Lifetime CN101060538B (zh) 2001-07-12 2002-07-12 用于为移动通信设备提供远程数据访问的系统和方法
CNB028177584A Expired - Lifetime CN100347700C (zh) 2001-07-12 2002-07-12 包括进行数据代码转换的用于把数据从信息源推送到移动通信设备的系统和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNB028178408A Expired - Lifetime CN100346338C (zh) 2001-07-12 2002-07-12 用于为移动通信设备提供远程数据访问和代码转换的系统和方法

Country Status (9)

Country Link
US (3) US20040199665A1 (zh)
EP (4) EP1410645B1 (zh)
CN (4) CN101060538B (zh)
AT (3) ATE358298T1 (zh)
BR (3) BR0211097A (zh)
CA (4) CA2454219C (zh)
DE (3) DE60219169T2 (zh)
HK (2) HK1062206A1 (zh)
WO (3) WO2003007184A1 (zh)

Families Citing this family (214)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2306259B1 (en) * 2000-09-21 2015-05-27 BlackBerry Limited Software code signing system and method
US7653701B2 (en) * 2001-02-23 2010-01-26 Hewlett-Packard Development Company, L.P. Network system and method for automatically transferring data in a plurality of input and output formats to a computer network
US7302634B2 (en) 2001-03-14 2007-11-27 Microsoft Corporation Schema-based services for identity-based data access
US7024662B2 (en) * 2001-03-14 2006-04-04 Microsoft Corporation Executing dynamically assigned functions while providing services
US9032097B2 (en) * 2001-04-26 2015-05-12 Nokia Corporation Data communication with remote network node
US20060218482A1 (en) * 2002-04-19 2006-09-28 Droplet Technology, Inc. Mobile imaging application, device architecture, service platform architecture and services
US7679649B2 (en) * 2002-04-19 2010-03-16 Ralston John D Methods for deploying video monitoring applications and services across heterogenous networks
US20140368672A1 (en) * 2002-04-19 2014-12-18 Soryn Technologies Llc Methods for Deploying Video Monitoring Applications and Services Across Heterogeneous Networks
US8543657B2 (en) * 2002-05-03 2013-09-24 Samsung Electronics Co., Ltd Data communication system and method using a wireless terminal
US9886309B2 (en) 2002-06-28 2018-02-06 Microsoft Technology Licensing, Llc Identity-based distributed computing for device resources
US20040078601A1 (en) * 2002-08-02 2004-04-22 Chris Tengwall System and method for operating a wireless device network
US7337308B2 (en) * 2002-11-15 2008-02-26 Microsoft Corporation System and method for initiating dialup creation from modem connection to a mobile device
US20040210663A1 (en) * 2003-04-15 2004-10-21 Paul Phillips Object-aware transport-layer network processing engine
US8181022B2 (en) * 2003-06-24 2012-05-15 Realnetworks, Inc. Method and apparatus for controlling access restrictions for media playback
US7392316B2 (en) * 2003-06-30 2008-06-24 Microsoft Corporation Client to server streaming of multimedia content using HTTP
US7586868B2 (en) * 2003-07-14 2009-09-08 Motorola, Inc Method and apparatus for controlling distributed transcoders
US7860046B2 (en) * 2003-12-08 2010-12-28 Motorola Mobility, Inc. Method and apparatus for providing bearer format type information in a cellular communication system
US8856346B2 (en) * 2004-01-15 2014-10-07 Unwired Planet, Llc Stateful push notifications
FR2866168A1 (fr) * 2004-02-11 2005-08-12 France Telecom Emission de cle publique par terminal mobile
US8782281B2 (en) 2004-03-23 2014-07-15 Cisco Technology Inc. Optimally adapting multimedia content for mobile subscriber device playback
CA2565360C (en) * 2004-04-30 2012-01-10 Research In Motion Limited System and method for securing data
CN100338929C (zh) * 2004-05-25 2007-09-19 中国移动通信集团公司 移动终端透过防火墙获取信息服务器信息的系统及方法
CN100345425C (zh) * 2004-05-25 2007-10-24 中国移动通信集团公司 从信息系统向移动终端推送信息的方法及系统
US7693752B2 (en) 2004-05-26 2010-04-06 Hothand, Inc. Mobile commerce framework
KR100687730B1 (ko) * 2004-08-04 2007-02-27 경북대학교 산학협력단 액티브 노드, 액티브 노드를 이용한 컨텐츠 전송 시스템및 그 방법
US7711856B1 (en) * 2004-09-30 2010-05-04 Avaya Inc. Method and apparatus for providing an interface for a messaging mailbox
US8346956B2 (en) 2004-10-29 2013-01-01 Akamai Technologies, Inc. Dynamic image delivery system
US7477908B2 (en) 2004-12-13 2009-01-13 Research In Motion Limited Messaging protocol/service switching methods and devices
KR101032551B1 (ko) * 2004-12-27 2011-05-06 엘지전자 주식회사 콘텐츠 서비스 방법
US8527661B1 (en) * 2005-03-09 2013-09-03 Oracle America, Inc. Gateway for connecting clients and servers utilizing remote direct memory access controls to separate data path from control path
US20060225115A1 (en) * 2005-04-01 2006-10-05 Microsoft Corporation Systems and methods for network communication
WO2006110005A1 (en) * 2005-04-15 2006-10-19 Ktfreetel Co., Ltd. Method for providing contents for mobile comunication terminal
JP2008515046A (ja) * 2005-04-15 2008-05-08 ケーティーフリーテル・カンパニー・リミテッド コンテンツの提供方法
KR100680296B1 (ko) * 2005-04-15 2007-02-07 주식회사 케이티프리텔 무선 네트워크를 통한 대용량 컨텐츠 이어받기 서비스 제공방법 및 이를 구현하기 위한 프로그램이 기록된 기록매체
US7474639B2 (en) * 2005-04-20 2009-01-06 Bank Of America Corporation Dynamic update of push applications for wireless data device
GB2427048A (en) 2005-06-09 2006-12-13 Avecho Group Ltd Detection of unwanted code or data in electronic mail
US20060282884A1 (en) * 2005-06-09 2006-12-14 Ori Pomerantz Method and apparatus for using a proxy to manage confidential information
US8103545B2 (en) 2005-09-14 2012-01-24 Jumptap, Inc. Managing payment for sponsored content presented to mobile communication facilities
US8433297B2 (en) 2005-11-05 2013-04-30 Jumptag, Inc. System for targeting advertising content to a plurality of mobile communication facilities
US8812526B2 (en) 2005-09-14 2014-08-19 Millennial Media, Inc. Mobile content cross-inventory yield optimization
US20110313853A1 (en) 2005-09-14 2011-12-22 Jorey Ramer System for targeting advertising content to a plurality of mobile communication facilities
US8209344B2 (en) 2005-09-14 2012-06-26 Jumptap, Inc. Embedding sponsored content in mobile applications
US8229914B2 (en) 2005-09-14 2012-07-24 Jumptap, Inc. Mobile content spidering and compatibility determination
US8832100B2 (en) 2005-09-14 2014-09-09 Millennial Media, Inc. User transaction history influenced search results
US8238888B2 (en) 2006-09-13 2012-08-07 Jumptap, Inc. Methods and systems for mobile coupon placement
US8302030B2 (en) 2005-09-14 2012-10-30 Jumptap, Inc. Management of multiple advertising inventories using a monetization platform
US8503995B2 (en) 2005-09-14 2013-08-06 Jumptap, Inc. Mobile dynamic advertisement creation and placement
US10911894B2 (en) 2005-09-14 2021-02-02 Verizon Media Inc. Use of dynamic content generation parameters based on previous performance of those parameters
US8156128B2 (en) 2005-09-14 2012-04-10 Jumptap, Inc. Contextual mobile content placement on a mobile communication facility
US8131271B2 (en) 2005-11-05 2012-03-06 Jumptap, Inc. Categorization of a mobile user profile based on browse behavior
US10038756B2 (en) 2005-09-14 2018-07-31 Millenial Media LLC Managing sponsored content based on device characteristics
US8027879B2 (en) 2005-11-05 2011-09-27 Jumptap, Inc. Exclusivity bidding for mobile sponsored content
US9703892B2 (en) 2005-09-14 2017-07-11 Millennial Media Llc Predictive text completion for a mobile communication facility
US8290810B2 (en) 2005-09-14 2012-10-16 Jumptap, Inc. Realtime surveying within mobile sponsored content
US8195133B2 (en) 2005-09-14 2012-06-05 Jumptap, Inc. Mobile dynamic advertisement creation and placement
US7577665B2 (en) 2005-09-14 2009-08-18 Jumptap, Inc. User characteristic influenced search results
US8364540B2 (en) 2005-09-14 2013-01-29 Jumptap, Inc. Contextual targeting of content using a monetization platform
US8805339B2 (en) 2005-09-14 2014-08-12 Millennial Media, Inc. Categorization of a mobile user profile based on browse and viewing behavior
US9471925B2 (en) 2005-09-14 2016-10-18 Millennial Media Llc Increasing mobile interactivity
US8688671B2 (en) 2005-09-14 2014-04-01 Millennial Media Managing sponsored content based on geographic region
US7660581B2 (en) 2005-09-14 2010-02-09 Jumptap, Inc. Managing sponsored content based on usage history
US8819659B2 (en) 2005-09-14 2014-08-26 Millennial Media, Inc. Mobile search service instant activation
US8989718B2 (en) 2005-09-14 2015-03-24 Millennial Media, Inc. Idle screen advertising
US7702318B2 (en) 2005-09-14 2010-04-20 Jumptap, Inc. Presentation of sponsored content based on mobile transaction event
US9076175B2 (en) 2005-09-14 2015-07-07 Millennial Media, Inc. Mobile comparison shopping
US8615719B2 (en) 2005-09-14 2013-12-24 Jumptap, Inc. Managing sponsored content for delivery to mobile communication facilities
US7912458B2 (en) 2005-09-14 2011-03-22 Jumptap, Inc. Interaction analysis and prioritization of mobile content
US9058406B2 (en) 2005-09-14 2015-06-16 Millennial Media, Inc. Management of multiple advertising inventories using a monetization platform
US7752209B2 (en) 2005-09-14 2010-07-06 Jumptap, Inc. Presenting sponsored content on a mobile communication facility
US7676394B2 (en) 2005-09-14 2010-03-09 Jumptap, Inc. Dynamic bidding and expected value
US7860871B2 (en) 2005-09-14 2010-12-28 Jumptap, Inc. User history influenced search results
US9201979B2 (en) 2005-09-14 2015-12-01 Millennial Media, Inc. Syndication of a behavioral profile associated with an availability condition using a monetization platform
US8311888B2 (en) 2005-09-14 2012-11-13 Jumptap, Inc. Revenue models associated with syndication of a behavioral profile using a monetization platform
US8364521B2 (en) 2005-09-14 2013-01-29 Jumptap, Inc. Rendering targeted advertisement on mobile communication facilities
US7769764B2 (en) 2005-09-14 2010-08-03 Jumptap, Inc. Mobile advertisement syndication
US8660891B2 (en) 2005-11-01 2014-02-25 Millennial Media Interactive mobile advertisement banners
US10592930B2 (en) 2005-09-14 2020-03-17 Millenial Media, LLC Syndication of a behavioral profile using a monetization platform
US8666376B2 (en) 2005-09-14 2014-03-04 Millennial Media Location based mobile shopping affinity program
US8204950B2 (en) 2005-09-15 2012-06-19 Qwest Communications International Inc. Webpage search
US7797545B2 (en) * 2005-09-29 2010-09-14 Research In Motion Limited System and method for registering entities for code signing services
US8340289B2 (en) 2005-09-29 2012-12-25 Research In Motion Limited System and method for providing an indication of randomness quality of random number data generated by a random data service
US9998585B2 (en) * 2005-10-05 2018-06-12 SITO Mobile R&D IP, LLC Content selection and delivery of complementary information
US8170189B2 (en) * 2005-11-02 2012-05-01 Qwest Communications International Inc. Cross-platform message notification
US8175585B2 (en) 2005-11-05 2012-05-08 Jumptap, Inc. System for targeting advertising content to a plurality of mobile communication facilities
JP4654918B2 (ja) * 2006-01-12 2011-03-23 株式会社日立製作所 情報処理装置及び情報処理システム
WO2008010857A2 (en) * 2006-03-30 2008-01-24 Seamless Skyy-Fi, Inc. System and method for secure network browsing
US20070239895A1 (en) * 2006-04-05 2007-10-11 Qwest Communications International Inc. Cross-platform push of various media types
US20070239832A1 (en) * 2006-04-05 2007-10-11 Qwest Communications International Inc. Communication presentation in a calendar perspective
US8078476B2 (en) 2006-04-05 2011-12-13 Qwest Communications International Inc. Cross-platform calendar notifications
US9323821B2 (en) 2006-04-05 2016-04-26 Qwest Communications International Inc. Network repository auto sync wireless handset
US8214469B2 (en) 2006-04-06 2012-07-03 Qwest Communications International Inc. Multiple use of common perspectives
US8320535B2 (en) 2006-04-06 2012-11-27 Qwest Communications International Inc. Selectable greeting messages
US8819751B2 (en) 2006-05-16 2014-08-26 Qwest Communications International Inc. Socially networked television experience
US7751339B2 (en) 2006-05-19 2010-07-06 Cisco Technology, Inc. Method and apparatus for simply configuring a subscriber appliance for performing a service controlled by a separate service provider
US20070283048A1 (en) * 2006-06-01 2007-12-06 Nokia Corporation Method, Apparatus and Computer Program Product for Providing Universal Information Transcoding
US8266182B2 (en) * 2006-06-30 2012-09-11 Harmonic Inc. Transcoding for a distributed file system
US20080052381A1 (en) * 2006-08-22 2008-02-28 Koon Wah Yu Method and system for selecting a transcoder to convert between content types
US20080071725A1 (en) * 2006-09-01 2008-03-20 Yahoo! Inc. User-converted media marketplace
GB2444514A (en) 2006-12-04 2008-06-11 Glasswall Electronic file re-generation
US9729513B2 (en) 2007-11-08 2017-08-08 Glasswall (Ip) Limited Using multiple layers of policy management to manage risk
CA2672735A1 (en) 2006-12-13 2008-06-19 Quickplay Media Inc. Mobile media platform
US9124650B2 (en) * 2006-12-13 2015-09-01 Quickplay Media Inc. Digital rights management in a mobile environment
US9571902B2 (en) 2006-12-13 2017-02-14 Quickplay Media Inc. Time synchronizing of distinct video and data feeds that are delivered in a single mobile IP data network compatible stream
US8892761B1 (en) 2008-04-04 2014-11-18 Quickplay Media Inc. Progressive download playback
FR2911023B1 (fr) * 2006-12-29 2009-04-17 Radiotelephone Sfr Procede de securisation d'un flux de donnees.
US7873655B2 (en) * 2007-01-17 2011-01-18 Microsoft Corporation Automated mobile communications
EP2127230A4 (en) * 2007-02-09 2014-12-31 Onmobile Global Ltd METHOD AND APPARATUS FOR ADAPTING MULTIMEDIA CONTENT IN TELECOMMUNICATIONS NETWORKS
CA2578980A1 (en) 2007-02-19 2008-08-19 Cognos Incorporated System and method of report rendering
CA2578979A1 (en) * 2007-02-19 2008-08-19 Cognos Incorporated System and method of report representation
US8190875B2 (en) * 2007-03-22 2012-05-29 Cisco Technology, Inc. Reducing processing load in proxies for secure communications
US8224919B2 (en) 2007-04-04 2012-07-17 Research In Motion Limited Mobile communications system including intermediate service provider and related methods
FR2915648B1 (fr) * 2007-04-26 2009-11-13 Eads Sa Procede de securisation d'un flux de donnees
US20080267634A1 (en) * 2007-04-30 2008-10-30 Futurewei Technologies, Inc. 9b10b Code for Passive Optical Networks
CA2686243C (en) * 2007-05-04 2016-07-19 Chalk Media Service Corp. Method and system for pushing content to mobile devices
EP2145250A4 (en) * 2007-05-08 2010-08-11 Research In Motion Ltd PUSH XML APPLICATION AND REMOTE EXECUTION OF A WIRELESS APPLICATION
CN101599980B (zh) * 2007-07-25 2012-11-21 中国移动通信集团福建有限公司 客户经理掌上助理系统装置
US8400961B1 (en) * 2007-08-27 2013-03-19 Qurio Holdings, Inc. Wireless multimedia brokerage service for real time content provisioning
US8311058B2 (en) * 2008-05-10 2012-11-13 Vantrix Corporation Modular transcoding pipeline
US8261307B1 (en) 2007-10-25 2012-09-04 Qurio Holdings, Inc. Wireless multimedia content brokerage service for real time selective content provisioning
EP2081357B1 (en) * 2008-01-18 2012-12-19 Research In Motion Limited Method and apparatus for checkout transition in an e-commerce application
US8418056B2 (en) * 2008-01-18 2013-04-09 Research In Motion Limited Method and apparatus for checkout transition in an e-commerce application
CN101855863A (zh) * 2008-05-12 2010-10-06 捷讯研究有限公司 用于对抗未授权解密的安全措施
CN101599951A (zh) * 2008-06-06 2009-12-09 阿里巴巴集团控股有限公司 一种发布网站信息的方法、装置及系统
DE102008029102A1 (de) * 2008-06-20 2009-12-24 Micronas Gmbh Audio- und/oder Video-Datenverarbeitungsvorrichtung, Kommunikations- oder Datennetz zum Umkodieren von Audio- und/oder Video-Daten bzw. Verfahren zum Dekodieren von Audio- und/oder Video-Daten
CN101674321A (zh) * 2008-09-12 2010-03-17 华为技术有限公司 一种消息处理方法、装置和系统
US9781148B2 (en) 2008-10-21 2017-10-03 Lookout, Inc. Methods and systems for sharing risk responses between collections of mobile communications devices
US8347386B2 (en) 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
US8108933B2 (en) 2008-10-21 2012-01-31 Lookout, Inc. System and method for attack and malware prevention
US8087067B2 (en) 2008-10-21 2011-12-27 Lookout, Inc. Secure mobile platform system
US20100138748A1 (en) * 2008-12-03 2010-06-03 Qualcomm Incorporated Wireless Network Access to Remote Computer
WO2010063324A1 (en) 2008-12-04 2010-06-10 Telefonaktiebolaget L M Ericsson (Publ) Method for transmitting a media file to a mobile device and entity therefor
US8769140B2 (en) * 2010-06-04 2014-07-01 Broadcom Corporation Method and system for optimizing power consumption in a home network via a broadband gateway
US9955352B2 (en) 2009-02-17 2018-04-24 Lookout, Inc. Methods and systems for addressing mobile communications devices that are lost or stolen but not yet reported as such
US8813127B2 (en) 2009-05-19 2014-08-19 Microsoft Corporation Media content retrieval system and personal virtual channel
US9131007B2 (en) * 2009-05-19 2015-09-08 Vitrual World Computing, Inc. System and method for dynamically transcoding data requests
US8380878B2 (en) 2009-08-13 2013-02-19 Cox Communications, Inc. Side loading
EP2507963B1 (en) * 2009-12-02 2017-01-25 BlackBerry Limited Reliable delivery of content to a push-state aware client device
US20110296048A1 (en) * 2009-12-28 2011-12-01 Akamai Technologies, Inc. Method and system for stream handling using an intermediate format
US8930498B2 (en) * 2010-03-31 2015-01-06 Bank Of America Corporation Mobile content management
US8554872B2 (en) 2010-03-31 2013-10-08 Bank Of America Corporation Integration of different mobile device types with a business infrastructure
US8433775B2 (en) 2010-03-31 2013-04-30 Bank Of America Corporation Integration of different mobile device types with a business infrastructure
US8473743B2 (en) * 2010-04-07 2013-06-25 Apple Inc. Mobile device management
KR101906504B1 (ko) * 2010-04-26 2018-12-07 삼성전자주식회사 복수의 디바이스에 콘텐트를 전송하는 방법 및 장치
US20110320559A1 (en) * 2010-06-23 2011-12-29 Telefonaktiebolaget L M Ericsson (Publ) Remote access with media translation
GB2495435A (en) * 2010-06-29 2013-04-10 Zte Usa Inc Method and system for cloud-based media adaption and transcoding service
CN102346685B (zh) * 2010-07-29 2016-09-28 甲骨文国际公司 集成适配器管理系统和方法
CN101917482B (zh) * 2010-08-23 2016-08-24 宇龙计算机通信科技(深圳)有限公司 一种信息推送方法及信息推送服务器
WO2012044248A1 (en) * 2010-09-28 2012-04-05 Empire Technology Development Llc Data filtering for communication devices
US8966376B2 (en) 2010-12-10 2015-02-24 Wyse Technology L.L.C. Methods and systems for remote desktop session redrawing via HTTP headers
US9430036B1 (en) 2010-12-10 2016-08-30 Wyse Technology L.L.C. Methods and systems for facilitating accessing and controlling a remote desktop of a remote machine in real time by a windows web browser utilizing HTTP
US9535560B1 (en) 2010-12-10 2017-01-03 Wyse Technology L.L.C. Methods and systems for facilitating a remote desktop session for a web browser and a remote desktop server
US8949726B2 (en) 2010-12-10 2015-02-03 Wyse Technology L.L.C. Methods and systems for conducting a remote desktop session via HTML that supports a 2D canvas and dynamic drawing
US9244912B1 (en) 2010-12-10 2016-01-26 Wyse Technology L.L.C. Methods and systems for facilitating a remote desktop redrawing session utilizing HTML
US9245047B2 (en) 2010-12-10 2016-01-26 Wyse Technology L.L.C. Methods and systems for facilitating a remote desktop session utilizing a remote desktop client common interface
US8589800B2 (en) 2010-12-10 2013-11-19 Wyse Technology Inc. Methods and systems for accessing and controlling a remote desktop of a remote machine in real time by a web browser at a client device via HTTP API utilizing a transcoding server
US8504654B1 (en) 2010-12-10 2013-08-06 Wyse Technology Inc. Methods and systems for facilitating a remote desktop session utilizing long polling
US9395885B1 (en) 2010-12-10 2016-07-19 Wyse Technology L.L.C. Methods and systems for a remote desktop session utilizing HTTP header
WO2012088023A2 (en) 2010-12-20 2012-06-28 Akamai Technologies, Inc. Methods and systems for delivering content to differentiated client devices
US20120191876A1 (en) * 2011-01-20 2012-07-26 Openwave Systems Inc. Method and system for policy based transcoding brokering
KR101914488B1 (ko) 2011-04-06 2018-11-05 삼성전자주식회사 푸시 알림 서비스를 위한 서버 클러스터 및 방법
CN102780729B (zh) * 2011-05-13 2015-09-16 宏碁股份有限公司 提供远端接取的方法及其通信装置
JP5378456B2 (ja) * 2011-06-13 2013-12-25 株式会社エヌ・ティ・ティ・ドコモ 通信端末及びコンテンツ更新方法
US9350819B2 (en) * 2011-07-21 2016-05-24 Microsoft Technology Licensing, Llc Centralized service for distributed service deployments
US8788881B2 (en) * 2011-08-17 2014-07-22 Lookout, Inc. System and method for mobile device push communications
US9716743B2 (en) 2011-09-02 2017-07-25 Microsoft Technology Licensing, Llc Accessing hardware devices using web server abstractions
US10462105B1 (en) * 2011-09-28 2019-10-29 EMC IP Holding Company LLC Method and apparatus for encryption with viewer identity—and content address-based identity protection
US8627107B1 (en) 2011-09-29 2014-01-07 Todd Michael Kennedy System and method of securing private health information
US9015021B2 (en) * 2011-10-25 2015-04-21 Cellco Partnership Multiple client simulator for push engine
KR101916739B1 (ko) * 2011-10-26 2018-11-09 삼성전자 주식회사 개선된 데이터 처리를 지원하는 전자 기기 운용 시스템 및 방법과 이를 지원하는 장치와 단말기
US8954555B2 (en) * 2011-10-27 2015-02-10 International Business Machines Corporation Using push notifications to reduce open browser connections
KR101971621B1 (ko) * 2011-11-11 2019-04-24 삼성전자주식회사 서버와 디바이스를 중개하는 방법 및 장치, 컴퓨터로 읽을 수 있는 기록 매체
US9742858B2 (en) 2011-12-23 2017-08-22 Akamai Technologies Inc. Assessment of content delivery services using performance measurements from within an end user client application
US9419852B1 (en) 2011-12-30 2016-08-16 Akamai Technologies, Inc. Systems and methods for identifying and characterizing client devices
US9397932B2 (en) * 2012-01-17 2016-07-19 Reno Acquisitions, Llc Systems and methods for routing network information
US9817916B2 (en) 2012-02-22 2017-11-14 Akamai Technologies Inc. Methods and apparatus for accelerating content authored for multiple devices
US9189484B1 (en) * 2012-02-23 2015-11-17 Amazon Technologies, Inc. Automatic transcoding of a file uploaded to a remote storage system
US8752112B2 (en) * 2012-04-12 2014-06-10 Google Inc. Live streaming video processing
US9589129B2 (en) 2012-06-05 2017-03-07 Lookout, Inc. Determining source of side-loaded software
US9407443B2 (en) 2012-06-05 2016-08-02 Lookout, Inc. Component analysis of software applications on computing devices
US9167493B2 (en) * 2012-06-15 2015-10-20 At&T Intellectual Property I, L.P. Method and apparatus for providing a cloud-based mobility in a wireless network
WO2013190545A1 (en) * 2012-06-17 2013-12-27 Skycure Ltd Access control system for a mobile device
CN102724324B (zh) * 2012-06-28 2016-09-28 用友网络科技股份有限公司 消息推送整合装置和消息推送整合方法
US9436493B1 (en) * 2012-06-28 2016-09-06 Amazon Technologies, Inc. Distributed computing environment software configuration
US8930416B2 (en) * 2012-08-13 2015-01-06 Hulu, LLC Job dispatcher of transcoding jobs for media programs
WO2014030199A1 (ja) * 2012-08-20 2014-02-27 富士通株式会社 シームレスアプリプッシュシステム及びその方法
US10181043B1 (en) * 2012-09-28 2019-01-15 EMC IP Holding Company LLC Method and apparatus for cookie validation and scoring
US8655307B1 (en) 2012-10-26 2014-02-18 Lookout, Inc. System and method for developing, updating, and using user device behavioral context models to modify user, device, and application state, settings and behavior for enhanced user security
US9208215B2 (en) 2012-12-27 2015-12-08 Lookout, Inc. User classification based on data gathered from a computing device
US9374369B2 (en) 2012-12-28 2016-06-21 Lookout, Inc. Multi-factor authentication and comprehensive login system for client-server networks
US9424409B2 (en) 2013-01-10 2016-08-23 Lookout, Inc. Method and system for protecting privacy and enhancing security on an electronic device
CN103971243A (zh) * 2013-01-25 2014-08-06 乐金信世股份有限公司 电子交易文档
JP2014170491A (ja) * 2013-03-05 2014-09-18 Fuji Xerox Co Ltd 中継装置、システム及びプログラム
US9009461B2 (en) * 2013-08-14 2015-04-14 Iboss, Inc. Selectively performing man in the middle decryption
CN104378399B (zh) * 2013-08-15 2019-08-23 腾讯科技(深圳)有限公司 一种数据推送方法、平台服务器、客户端以及系统
GB2518880A (en) 2013-10-04 2015-04-08 Glasswall Ip Ltd Anti-Malware mobile content data management apparatus and method
US9642008B2 (en) 2013-10-25 2017-05-02 Lookout, Inc. System and method for creating and assigning a policy for a mobile communications device based on personal data
US9753796B2 (en) 2013-12-06 2017-09-05 Lookout, Inc. Distributed monitoring, evaluation, and response for multiple devices
US10122747B2 (en) 2013-12-06 2018-11-06 Lookout, Inc. Response generation after distributed monitoring and evaluation of multiple devices
US9380086B2 (en) 2014-02-18 2016-06-28 Dropbox, Inc. Pre-transcoding content items
US9584492B2 (en) * 2014-06-23 2017-02-28 Vmware, Inc. Cryptographic proxy service
CN105516061A (zh) * 2014-09-25 2016-04-20 中兴通讯股份有限公司 远程访问服务器的方法及web服务器
US9330264B1 (en) 2014-11-26 2016-05-03 Glasswall (Ip) Limited Statistical analytic method for the determination of the risk posed by file based content
US10771583B2 (en) 2014-12-29 2020-09-08 Akamai Technologies, Inc. Managing mobile device user subscription and service preferences to predictively pre-fetch content
US10063653B2 (en) 2014-12-29 2018-08-28 Akamai Technologies, Inc. Distributed server architecture for supporting a predictive content pre-fetching service for mobile device users
CA2982463C (en) 2015-05-01 2019-03-05 Lookout, Inc. Determining source of side-loaded software
US10331321B2 (en) 2015-06-07 2019-06-25 Apple Inc. Multiple device configuration application
US10419214B2 (en) * 2015-12-28 2019-09-17 Dell Products L.P. Mobile device management delegate for managing isolated devices
CN105718534B (zh) * 2016-01-14 2017-05-03 广州市动景计算机科技有限公司 信息推送装置、信息推送方法以及客户端
US9680801B1 (en) 2016-05-03 2017-06-13 Iboss, Inc. Selectively altering references within encrypted pages using man in the middle
US10218697B2 (en) 2017-06-09 2019-02-26 Lookout, Inc. Use of device risk evaluation to manage access to services
EP3811582A4 (en) * 2018-06-25 2022-01-26 Nokia Technologies OY INTERNET CONTENT PUSHING SERVICE METHODS AND APPARATUS IN A MOBILE COMMUNICATION SYSTEM
CN111800606B (zh) * 2020-06-19 2022-03-25 烽火通信科技股份有限公司 一种云视频处理方法和系统
CN112925527B (zh) * 2021-02-07 2022-03-08 北京三快在线科技有限公司 一种调用方法、装置、存储介质及电子设备
US12058755B1 (en) * 2024-03-25 2024-08-06 Relay, Inc. Techniques for connecting a disconnected wireless device to a cloud-based communications server via a proxy device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0992922A2 (en) * 1998-10-02 2000-04-12 International Business Machines Corporation Automatic image data quality adjustment to reduce response time of a Web server
CN1285558A (zh) * 1999-08-19 2001-02-28 国际商业机器公司 动态提供内容的处理器
CN1294712A (zh) * 1997-03-25 2001-05-09 英特尔公司 计算机间传输的数据的动态代码转换系统

Family Cites Families (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754181B1 (en) * 1996-11-18 2004-06-22 Mci Communications Corporation System and method for a directory service supporting a hybrid communication system architecture
US7145898B1 (en) * 1996-11-18 2006-12-05 Mci Communications Corporation System, method and article of manufacture for selecting a gateway of a hybrid communication system architecture
US6216157B1 (en) * 1997-11-14 2001-04-10 Yahoo! Inc. Method and apparatus for a client-server system with heterogeneous clients
US6647431B1 (en) * 1997-12-31 2003-11-11 Nortel Networks Limited Method and apparatus for handling I/O messages
US6925595B1 (en) * 1998-08-05 2005-08-02 Spyglass, Inc. Method and system for content conversion of hypertext data using data mining
US6970602B1 (en) * 1998-10-06 2005-11-29 International Business Machines Corporation Method and apparatus for transcoding multimedia using content analysis
US6567411B2 (en) * 1998-12-31 2003-05-20 Qwest Communications International, Inc. Method and apparatus for continuous narrowcast of individualized information over a data network
US6785730B1 (en) * 1999-02-16 2004-08-31 Rebecca S. Taylor Generic communications protocol translator
US6484212B1 (en) * 1999-04-20 2002-11-19 At&T Corp. Proxy apparatus and method for streaming media information
US6345279B1 (en) * 1999-04-23 2002-02-05 International Business Machines Corporation Methods and apparatus for adapting multimedia content for client devices
US6584567B1 (en) * 1999-06-30 2003-06-24 International Business Machines Corporation Dynamic connection to multiple origin servers in a transcoding proxy
US6993476B1 (en) * 1999-08-26 2006-01-31 International Business Machines Corporation System and method for incorporating semantic characteristics into the format-driven syntactic document transcoding framework
US6981045B1 (en) * 1999-10-01 2005-12-27 Vidiator Enterprises Inc. System for redirecting requests for data to servers having sufficient processing power to transcast streams of data in a desired format
US7020685B1 (en) * 1999-10-08 2006-03-28 Openwave Systems Inc. Method and apparatus for providing internet content to SMS-based wireless devices
US7685252B1 (en) * 1999-10-12 2010-03-23 International Business Machines Corporation Methods and systems for multi-modal browsing and implementation of a conversational markup language
US6715129B1 (en) * 1999-10-13 2004-03-30 International Business Machines Corporation Achieving application-specific document content by transcoding using Java Server Pages
US6742043B1 (en) * 2000-01-14 2004-05-25 Webtv Networks, Inc. Reformatting with modular proxy server
US7013322B2 (en) * 2000-01-28 2006-03-14 Wiltel Communications Group, Llc System and method for rewriting a media resource request and/or response between origin server and client
US7159235B2 (en) * 2000-01-28 2007-01-02 Sedna Patent Services, Llc Method and apparatus for content distribution via non-homogeneous access networks
US7047033B2 (en) * 2000-02-01 2006-05-16 Infogin Ltd Methods and apparatus for analyzing, processing and formatting network information such as web-pages
US7149772B1 (en) * 2000-02-04 2006-12-12 Lucent Technologies Inc. Media gateway appliance
US6941382B1 (en) * 2000-02-07 2005-09-06 Raja Tuli Portable high speed internet or desktop device
EP1130869B1 (en) * 2000-03-01 2005-06-01 Sony International (Europe) GmbH Management of user profile data
US6781972B1 (en) * 2000-03-31 2004-08-24 Lucent Technologies Inc. Method and system for subscriber-configurable communications service
US7111076B2 (en) * 2000-04-13 2006-09-19 Intel Corporation System using transform template and XML document type definition for transforming message and its reply
US7702995B2 (en) * 2000-04-24 2010-04-20 TVWorks, LLC. Method and system for transforming content for execution on multiple platforms
US7500188B1 (en) * 2000-04-26 2009-03-03 Novarra, Inc. System and method for adapting information content for an electronic device
US7747782B2 (en) * 2000-04-26 2010-06-29 Novarra, Inc. System and method for providing and displaying information content
AU2001255742A1 (en) * 2000-04-26 2001-11-07 Portable Internet Inc. Portable internet services
US7072984B1 (en) * 2000-04-26 2006-07-04 Novarra, Inc. System and method for accessing customized information over the internet using a browser for a plurality of electronic devices
US20020174147A1 (en) * 2000-05-19 2002-11-21 Zhi Wang System and method for transcoding information for an audio or limited display user interface
US6556217B1 (en) * 2000-06-01 2003-04-29 Nokia Corporation System and method for content adaptation and pagination based on terminal capabilities
US7134073B1 (en) * 2000-06-15 2006-11-07 International Business Machines Corporation Apparatus and method for enabling composite style sheet application to multi-part electronic documents
US6769127B1 (en) * 2000-06-16 2004-07-27 Minerva Networks, Inc. Method and system for delivering media services and application over networks
US7003584B1 (en) * 2000-07-06 2006-02-21 International Business Machines Corporation Apparatus and method for accessing request header information using a transcoding filter servlet
US6704024B2 (en) * 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
US6823373B1 (en) * 2000-08-11 2004-11-23 Informatica Corporation System and method for coupling remote data stores and mobile devices via an internet based server
TW512640B (en) * 2000-08-25 2002-12-01 Phone Inc W Mobile opinion polling system and method
US6842777B1 (en) * 2000-10-03 2005-01-11 Raja Singh Tuli Methods and apparatuses for simultaneous access by multiple remote devices
US7249196B1 (en) * 2000-10-06 2007-07-24 Juniper Networks, Inc. Web page source file transfer system and method
US6965947B1 (en) * 2000-10-06 2005-11-15 International Business Machines Corporation Method and apparatus for automated transcoder selection
US6501956B1 (en) * 2000-10-17 2002-12-31 Intervoice Limited Partnership Providing blended interface for wireless information services
US7225238B1 (en) * 2000-10-25 2007-05-29 Cisco Technology, Inc. Method and system for providing services for wireless data calls
US7801958B1 (en) * 2000-10-30 2010-09-21 Nokia Corporation Content converter portal
US6407680B1 (en) * 2000-12-22 2002-06-18 Generic Media, Inc. Distributed on-demand media transcoding system and method
US7197531B2 (en) * 2000-12-29 2007-03-27 Fotomedia Technologies, Llc Meta-application architecture for integrating photo-service websites for browser-enabled devices
US6871236B2 (en) * 2001-01-26 2005-03-22 Microsoft Corporation Caching transformed content in a mobile gateway
US20020103933A1 (en) * 2001-01-29 2002-08-01 Ross Garon Internet-access enabled device personalization
US6848103B2 (en) * 2001-02-16 2005-01-25 Telefonaktiebolaget Lm Ericsson Method and apparatus for processing data in a multi-processor environment
US20020116533A1 (en) * 2001-02-20 2002-08-22 Holliman Matthew J. System for providing a multimedia peer-to-peer computing platform
US7120702B2 (en) * 2001-03-03 2006-10-10 International Business Machines Corporation System and method for transcoding web content for display by alternative client devices
US7277927B2 (en) * 2001-04-13 2007-10-02 Earthlink, Inc. Systems and methods for saving internet content into a handheld internet appliance
US6981062B2 (en) * 2001-04-20 2005-12-27 Sbc Technology Resources, Inc. World wide web content synchronization between wireless devices
US7213072B2 (en) * 2001-05-08 2007-05-01 Nokia Mobile Phones Method and apparatus for transcoding content with permissible operations authorized by content creator
US7155530B2 (en) * 2001-06-14 2006-12-26 International Business Machines Corporation Macro facilities for direction of streaming digital content
US20020198964A1 (en) * 2001-06-26 2002-12-26 International Business Machines Corporation Method and system for wireless remote monitoring and control of a manufacturing execution system
US7458017B2 (en) * 2001-06-26 2008-11-25 Microsoft Corporation Function-based object model for use in website adaptation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1294712A (zh) * 1997-03-25 2001-05-09 英特尔公司 计算机间传输的数据的动态代码转换系统
EP0992922A2 (en) * 1998-10-02 2000-04-12 International Business Machines Corporation Automatic image data quality adjustment to reduce response time of a Web server
CN1285558A (zh) * 1999-08-19 2001-02-28 国际商业机器公司 动态提供内容的处理器

Also Published As

Publication number Publication date
CA2454219C (en) 2010-11-30
CN101060538B (zh) 2012-08-08
ATE358298T1 (de) 2007-04-15
DE60222904T2 (de) 2008-07-24
CA2454219A1 (en) 2003-01-23
CN100346338C (zh) 2007-10-31
WO2003007184A1 (en) 2003-01-23
EP1410645A1 (en) 2004-04-21
CA2454222C (en) 2012-07-17
CA2454207C (en) 2012-07-17
EP1773027A2 (en) 2007-04-11
EP1405224A1 (en) 2004-04-07
BR0211097A (pt) 2004-10-13
ATE375686T1 (de) 2007-10-15
DE60236221D1 (de) 2010-06-10
CA2640571A1 (en) 2003-01-23
CA2454222A1 (en) 2003-01-23
BR0211094A (pt) 2004-10-19
EP1410264A1 (en) 2004-04-21
US20040166834A1 (en) 2004-08-26
CN1554195A (zh) 2004-12-08
US20090296657A1 (en) 2009-12-03
DE60219169T2 (de) 2008-01-24
CA2454207A1 (en) 2003-01-23
WO2003007183A1 (en) 2003-01-23
CN101060538A (zh) 2007-10-24
CN1554060A (zh) 2004-12-08
HK1062206A1 (en) 2004-10-21
CN1554059A (zh) 2004-12-08
US20040199665A1 (en) 2004-10-07
US8554950B2 (en) 2013-10-08
DE60219169D1 (de) 2007-05-10
HK1062249A1 (en) 2004-10-21
EP1410645B1 (en) 2007-10-10
EP1773027A3 (en) 2007-06-20
EP1405224B1 (en) 2007-03-28
DE60222904D1 (de) 2007-11-22
ATE466346T1 (de) 2010-05-15
US7590759B2 (en) 2009-09-15
CN100347700C (zh) 2007-11-07
BR0211878A (pt) 2004-09-21
WO2003007617A1 (en) 2003-01-23
EP1773027B1 (en) 2010-04-28

Similar Documents

Publication Publication Date Title
CN1324898C (zh) 用于为移动通信设备提供远程数据访问的系统和方法
US8578057B2 (en) System and method for providing remote data access for a mobile communication device
CN1196301C (zh) 电子邮件发送系统及其方法
CN1618066A (zh) 用于处理可扩展标示语言(xml)文档的系统和方法
US6742022B1 (en) Centralized service management system for two-way interactive communication devices in data networks
CN1148927C (zh) 增加网浏览器的性能并和网服务器通信的方法和设备
CN1167237C (zh) 差分通信方法
CN1537374A (zh) 短程无线网络环境中位置独立信息包路由选择和安全访问
CN1539111A (zh) 证书管理和传送系统及方法
CN1241368C (zh) 假想私设网
CN1575579A (zh) 选择用于有线和无线设备的安全格式转换
CN1275286A (zh) 基于目的位置的控制网络连接的方法和装置
CN1653783A (zh) 移动轻量密码目录访问的系统和方法
CN1812383A (zh) 供应组件应用程序的系统和方法
CN1812382A (zh) 管理组件应用程序的通信的系统和方法
US20040193601A1 (en) Method and contact list server for modifying the entry names in a contact list
CN1198432C (zh) 数据获取方法和终端
CN1625882A (zh) 定义数字项适配的协商机制的方法
CN1122230C (zh) 分布式业务网和处理数据接入请求的方法
CN1633063A (zh) 提高开放业务中隐私数据安全性的方法
EP1853038A2 (en) System and method for providing remote data access for a mobile communication device
CN1489855A (zh) 提供用于短程无线计算设备的安全网络访问
KR20090064795A (ko) 휴대용 단말기 간 데이터 수신 방법

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
CX01 Expiry of patent term

Granted publication date: 20070704

CX01 Expiry of patent term