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

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

Info

Publication number
CN1554060A
CN1554060A CNA028178408A CN02817840A CN1554060A CN 1554060 A CN1554060 A CN 1554060A CN A028178408 A CNA028178408 A CN A028178408A CN 02817840 A CN02817840 A CN 02817840A CN 1554060 A CN1554060 A CN 1554060A
Authority
CN
China
Prior art keywords
code
code converter
request
content
converter
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.)
Granted
Application number
CNA028178408A
Other languages
English (en)
Other versions
CN100346338C (zh
Inventor
����ķ��H�������
萨利姆·H·奥马尔
N��ŷ��
拉塞尔·N·欧文
��A�����ض�
赫伯特·A·利特尔
��K���װͿ�
托马斯·K·雷巴克
S
迈克尔·S·布朗
P
大卫·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.)
Xircom Research Co ltd
Original Assignee
Xircom Research Co 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 Xircom Research Co ltd filed Critical Xircom Research Co ltd
Publication of CN1554060A publication Critical patent/CN1554060A/zh
Application granted granted Critical
Publication of CN100346338C publication Critical patent/CN100346338C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • 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
    • 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
    • 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

Abstract

一种经过网络向移动通信设备提供信息内容的系统,包括代码转换系统和第一网络设备。所述代码转换系统包括多个代码转换器。每个代码转换器可操作将信息内容从各输入内容类型代码转换成各输出内容类型。第一网络设备与代码转换系统通信,并且包括连接处理机系统。第一网络设备可操作接收包括代码转换器请求数据的第一连接请求,和选择一个相应的连接处理机。该处理机可操作以基于代码转换器请求数据从多个代码转换器中选择一个或更多代码转换器。

Description

用于为移动通信设备提供远程数据访问和代码转换的系统和方法
该申请要求下列美国临时申请的利益:2001年7月12日提交的序列号为60/305,044,名称为“用于提供移动通信设备的远程数据访问的系统和方法”的申请;2001年10月9日提交的序列号为60/327,752,名称为“用于提供到移动通信设备的远程数据访问的系统和方法”的申请;2001年10月25日提交的序列号为60/330,604,名称为“用于提供移动通信设备的远程数据访问和代码转换的系统和方法”;2001年12月19日提交的序列号为60/340,839,名称为“从信息源到移动通信设备推送数据的系统和方法”的申请。所有上述标识的临时申请的全部公开被引用包含在该申请中以做参考。
相关申请的交叉参考
该申请还涉及下列共同待审的非临时申请:2002年提交的序列号为:/,名称为“用于提供移动通信设备的远程数据访问的系统和方法”的申请;及2002年提交的序列号为:/,名称为“用于从信息源到移动通信设备推送数据的系统和方法”申请,它们的全部公开被引用包含在该申请中以做参考。
背景
技术领域
本发明一般涉及移动通信,并且特别涉及提供移动通信设备对远程数据的访问。
已有技术状态的描述
使用移动通信设备提供对数据的远程访问的已知方案趋于相对有限的。例如,用于移动设备的无线应用协议(WAP)浏览器典型地提供只对与WAP适应源相关的信息的访问。尽管其它已知和类似的产品可允许移动设备用户访问另外的信息源,这些产品一般没有有效地使用移动通信网络资源,特别是无线通信链路,并且经常需要处理器高强度操作诸如要在移动设备上执行的信息解析。
此外,大部分已知的数据访问系统和方法不适合于提供对存储在专用网络上的保密信息诸如在位于安全防火墙之后的数据存储器上的公司信息的真正安全访问。
简述
本即时申请描述了一种用于向移动通信设备提供访问远程信息源的系统和方法。还描述了用于提供安全访问保密信息的系统和方法。
在此描述的系统和方法提供对多种类型和格式的信息的任何一种的访问。具体的信息翻译操作可由移动设备或信息源选择并且在移动通信系统的信息源侧执行。这不仅减少了设备处理操作的复杂性和与这些操作相关的任何设备硬件和软件组件,而且提供了客户化的设备信息格式。
在一个实施例中,用于经网络向移动通信设备提供信息内容的系统包括代码转换系统和第一网络设备。代码转换系统包括多个代码转换器,每个代码转换器可操作从而将信息内容从各输入内容类型代码转换成各输出内容类型。第一网络设备与代码转换系统通信,并且包括连接处理器系统。第一网络设备可操作从而接收包括代码转换器请求数据的第一连接请求并且选择一个相应的连接处理机。该连接处理机可操作从而按照代码转换器请求数据从多个代码转换器中选择一个或更多代码转换器。
附图说明
图1是提供移动通信设备对远程信息源的访问的通信系统的一般方框图。
图2是图1所示的系统的较详细的方框图。
图3是表示在系统中一般连接处理机相关操作的流程图。
图4是连接处理机数据处理操作的流程图。
图5是描述用于HTTP连接的受控设备代码转换器选择的例子的信号流向图。
图6是表示具有接收内容类型扩展的受控设备代码转换器选择的信号流向图。
图7是用于HTTP操作的受控服务器代码转换器选择的例子的信号流向图。
图8是具有外部代码转换器系统的通信系统的一般方框图。
图9是描述使用图8所示的外部代码转换器系统的用于HTTP连接的受控设备代码转换器选择的例子的信号流向图。
图10示出了用于外部代码转换器系统的进一步的信号流向图。
图11是在安全网络中实现的IP代理系统的方框图。
图12是描述公司数据访问操作的信号流向图。
详细描述
一般系统描述
图1是提供无线移动通信设备(“移动设备”)12对远程信息源20的访问的通信系统的一般方框图。在图1中,系统10包括:移动设备12,无线网络14,网关15,广域网(WAN)16,网络协议(IP)代理系统18,和信息源20。尽管IP代理系统18被示于图1的图示范例系统中,用于除了IP之外的协议的代理系统也可以按照本发明实现。在开放系统互连(OSI)模型内的其它层的协议也能使用该系统被代理。这些其它协议包括但不限于超文本协议(HTTP)和传输控制协议(TCP)。
移动设备12可以是适于在无线通信网络14内操作的任何移动设备,并且最好是双路通信设备。移动设备12还可以具有语音和数据通信能力。根据移动设备12提供的功能,移动设备12还可称为数据消息传送设备,双路寻呼机,具有数据消息传送能力的蜂窝电话,无线因特网用具或数据通信设备(带有或不带有电话能力)。正如通信领域的普通技术人员所显而易见的,移动设备12内的通信子系统的具体设计将取决于移动设备12打算运行于其中的通信网络14。例如,针对北美市场的移动设备12可包括设计运行于Mobitex移动通信系统或DataTAC移动通信系统内的通信子系统,而打算用于欧洲的移动设备12可包括通用分组无线业务(GPRS)通信子系统。本领域技术人员还将理解也可期望其它类型的移动设备和网络。实际上,在此描述的本发明的系统和方法可以结合任何无线网络14实现。
图1所示的网关15提供无线网络14和例如可以是因特网的WAN16之间的接口。这些功能如移动设备寻址、WAN协议和无线网络协议之间的数据转换、存储并且将数据转发到移动设备12及从移动设备转发数据,并且其它接口功能可以由网关15执行。
IP代理系统18也能由与无线网络14相关的网络运营者/操作者主管。在该情况下,IP代理系统18和网关15之间的连接将使用运营者的专用网络而不是WAN16。然后,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相关的cookie(小甜饼)、口令和可能的其它状态信息的管理。它最好存储分离的网络分组诸如HTTP请求/响应对之间存在的连接的状态信息。监视系统36允许管理者通过诸如万维网浏览器48的接口进行IP代理系统18的性能、效率、使用情况和正常的远端监视。正如其名称所意指的,日志系统38可以被配置,以便将使用情况、连接、用户统计等存储到文件系统40或某些其它备用存储器。
连接和处理机
IP代理系统18最好能操作和处理来自包括了基于因特网的源的各种信息源20的内容。该功能由连接处理机提供,该连接处理机是具有处理来自与IP代理系统18的输入连接和输出连接的内容的中间物。在图2所示的IP代理系统18中,示出了两个这样的处理机,TCP处理机24和HTTP处理机26。这些处理机最好能够被替换和客户化,或附加的处理机能够根据需要被添加到IP代理系统18。连接处理机不仅能够最优化内容而且能够最优化协议。例如,通常被发送到移动设备的某些请求(诸如口令请求)可以由连接处理机解决,此处请求的数据例如通过状态持续单元34已经存储在文件系统40或连接处理机可访问的另外存储器中。这种协议优化的情况能够通过减少经无线网络发送到移动设备的业务量、由此减少无线网络带宽限制和等待时间的影响使所谓的“闲话(chatty)”协议更加无线友好。
能够从移动设备12进行输出连接,以便向诸如网络节点的其它实体发送数据并从其接收数据。IP代理系统18最好使用特定协议诸如称为IP代理协议的专用协议或本发明的受让人开发的IPPP从移动设备12接收连接请求。也可以使用其它协议。IP代理系统18然后按照移动设备12提供的路由信息,建立因特网连接,并且翻译和映射该连接以开始在两个方向上转发数据。根据需要调用滤波和代码转换过程,例如基于经连接传送的内容的类型,或基于在来自移动设备12的连接请求中指定的特定代码转换处理。将在网络浏览操作的上下文进一步详细描述这些输出连接。
例如使用输入连接以实现数据推送模式。在该模式中,移动设备12可以不用发出取信息的请求而接收信息。这正如输出连接的情况。如上简单描述的,移动设备12可以存在于不同于因特网节点的网络域上。IP代理系统18负责桥接因特网和无线网络域。于是,IP代理系统18需要一定的路由信息以将业务路由到特定的移动设备12。在该推送操作中,必须由发出请求建立输入连接的因特网节点诸如推送服务器42提供至少某些路由信息。IP代理系统18可以将普通公知的寻址方案诸如电子邮件或IP号转换成所需接收者移动设备12的合适的无线网络地址。在另一实施例中,也可以由推送服务器12或信息源20选择和指定用于被推送内容的代码转换处理。
在IP代理系统18中的连接处理机是基于数据流的对象。当请求输出或输入连接时,在移动设备12和合适的连接处理机之间建立虚拟管流。将用例子说明连接处理机,为了建立连接,连接处理机开始处理内容。根据连接请求装载连接处理机,该请求最好包含合适的处理机名字的引用,该处理机名字通常意指将穿过虚拟管流的业务的类型和如果没有被装载处理机必须被装载的位置。连接处理机的功能包括映射因特网或其它信息源侧连接和移动设备侧的连接,转发这些连接之间的业务,以及对针对移动设备12的信息装载和调用合适的代码转换器。
每个连接最好与连接处理机的情况相关。即使对于不需要内容由IP代理系统18处理的连接诸如移动设备12和服务器之间的纯TCP连接也是如此。该类型的连接处理机来回传送内容,不用对内容进行任何修改,尽管它可以对协议进行修改。为了清楚,本领域技术人员将理解数据或内容(移动设备所请求的或正被发送的)和协议(要求传递数据的“封套”和转换)之间的差别。
连接处理机也负责装载合适的内容滤波器或代码转换器。按照一个实施例,连接处理机诸如HTTP连接处理机26或者使用由移动设备12指定或者由推送服务器42或万维网服务器46之类的信息源指定的代码转换器系统28中的特定代码转换器。
图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的信息。在步骤64连接处理机确定是否需要代码转换。如果不需要,那么在步骤70将信息发送到移动设备12。否则,在步骤66装载和执行合适的代码转换器,并且在数据被发送到移动设备12之前,在步骤68数据被代码转换成可接受的格式。在一个实施例中,启动通信的实体,用于取来数据的移动设备或用于被推送数据的推送服务器42能够指定特定的代码转换器,以进行取来和被推送数据的代码转换,正如下面将详细描述的。
可以在计算机软件中作为Java类文件实现连接处理机,将其放置在文件系统中的某目录,以便当需要或请求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建立与移动设备的连接:(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拉回的数据进行代码转换。下面进一步更详细描述几个示例内容代码转换器装载控制方案。尽管这些示例主要涉及HTTP连接和处理机,其它连接类型和处理机可使用类似配置和方法以选择代码转换器。
还应理解,可以改为基于内容类型之外的信息选择代码转换器,所述信息包括在来自移动设备的连接请求的首标部分或其它部分中的信息,对连接请求的响应,或来自包括要被推送到移动设备的信息的信息源的通信。例如,可以配置IP代理系统18确定数据将发送到的移动设备12的类型。由IP代理系统18进行的代码转换器选择能够类似地基于移动设备12的网络地址或其它标识符。依赖移动设备或设备类型的代码转换器选择方案可以通过提供IP代理系统18可访问的设备或设备类型映射表(其将设备或设备类型映射到代码转换器)得到支持。或者,可以调整配置文件使其包括设备或设备类型标识符,由此将特定代码转换器与设备或设备类型相关。
以类似的方式,可以按照信息源的地址(诸如URL)或其它标识符选择代码转换器,以实现信息源特定代码转换。可以利用IP代理系统18可访问的映射表或配置文件按照信息源实现代码转换器选择。例如当使用特定的代码转换器对来自特定的网站和去向移动设备的任何内容进行代码转换时,该类型的代码转换器选择是有用的。
尽管下面描述的代码转换器选择方案的主要类型是基于由移动设备或信息源指定的特定代码转换器,例如当指定的代码转换器不可用时,可以使用任何这些可选的方案选择一代码转换器。如果要发送到移动设备的信息内容包括多内容类型,那么也可以使用这些方案以选择用于一个或更多多内容类型的代码转换器。
从移动设备指定一内容代码转换器
来自移动设备12的连接请求可以指定一特定的代码转换器用于代码转换响应于所述请求接收的任何内容。例如对于HTTP连接,IP代理系统18可以被配置,以期望在HTTP请求首标中的内容代码转换器字段指示移动设备12或典型地移动设备12上的应用程序正指定特定的HTTP内容代码转换器。IP代理系统18将装载和执行指定的代码转换器以操作对请求的任何响应。在IP代理系统18中的激活连接处理机,HTTP连接处理机26还可以修改请求,以便包括能够响应于所述请求被接受的内容类型的指示诸如MIME类型。内容代码转换器首标字段应该具有在HTTP配置文件的上下文中、或另一连接处理机被使用的地方其相应的配置文件中有效的值。
如果被请求的代码转换器不可用,然后一差错消息将例如以指示被请求的代码转换器不是有效的IOException(IO例外)的形式最好被发送回到移动设备12。然后移动设备应用或用户可以具有重试不同的代码转换器请求的选项。然而,当被请求的信息打算用于要求仅从指定的代码转换器得到的特定格式的信息的移动设备软件应用时,该请求可替换为在稍后时间指定的代码转换器可能可用时重试。
现在将通过几个HTTP请求的图示示例进一步详细描述在移动设备信息请求中的代码转换器选择。图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请求的连接请求。
来自移动设备12的请求由分配器22接收,其解释该请求为HTTP请求并且装载HTTP处理机26。最好在首标字段,诸如上面引用的内容代码转换器字段,在该例中的请求指定从无线标记语言(WML)内容转换成一般称为汇编WML或简单WMLC的被标记、压缩的WML版本的特定代码转换器应该被使用以代码转换响应于所述请求接收的任何内容。该请求还包括移动设备被配置接受的内容类型的指示,即,图5中的WMLC。由于IP代理系统18可以从指定代码转换器的输出类型确定或推断由移动设备12接受的内容类型,所接受的内容类型不需要必需在来自移动设备12的请求中被指定。
图5中示出的示例请求针对代码转换器的输入内容类型(WML)和输出内容类型(WMLC)指定特定的代码转换器。然而,也能有其它代码转换器命名习惯。当配置文件(图5中的72)具有以上述格式的入口时,用于每个代码转换器的文件入口的部分指示其各自的输入和输出内容类型。因此,在该配置文件入口中的“Transcoder Name(代码转换器名称)”字段不需要还包括输入和输出类型。尽管能够有很多不同的代码转换器命名方案,最好在任何移动设备请求和配置文件中使用相同的名称指定特定的代码转换器。
与代码转换器命名方案无关,HTTP处理机26最好使用指定的代码转换器名称,在图5中的WML->WMLC,执行在代码转换系统28示出的配置文件72中的查找。然而,应理解,配置文件72可以替换为是代码转换器系统28的外部,HTTP处理机26的部分,或甚至IP代理系统18的外部假定HTTP处理机26能够访问文件。在大部分实现中,配置文件72将被存储在IP代理系统18可访问的数据存储器上,典型地在IP代理系统18运行的相同计算机系统上。
HTTP处理机26搜索配置文件72确定是否在请求中指定的代码转换器在IP代理系统18中是可用的。如果代码转换器输入内容类型不是从代码转换器名称中可推送断的或在来自图5所示的移动设备12的请求中指定,代码转换器输入内容类型最好从配置文件72得到。在图5中,例如可以作为查找表实现的配置文件72,包括用于两个代码转换器的入口,指定的WML->WMLC代码转换器和HTML->WMLC代码转换器。由于在移动设备请求中指定的WML->WMLC代码转换器具有在配置文件72中的入口,并且因此对IP代理系统18是可用的,HTTP处理机26准备包括代码转换器的输入内容类型WML的HTTP请求作为接受的内容类型,并且提交HTTP请求到网络服务器76。如果在IP代理系统18中指定的代码转换器不是可用的,然后,HTTP处理机26通过分配器22或其它协议翻译器(如果需要)返回差错消息到移动设备12,指示所需要的代码转换器不是可用的。或者,分配器22可以执行配置文件查找操作,并且返回差错消息到移动设备12。
响应于来自IP代理系统18的HTTP请求,网络服务器76以在图5的例子中的WML格式返回请求的内容到IP代理系统18。然后,HTTP处理机26确定返回的内容是WML,例如从本地存储器装载在移动设备请求中指定的WML->WMLC代码转换器,并且执行代码转换器以转换接收的内容成为WMLC。然后WMLC内容通过分配器22转发到移动设备12。
尽管图5示出了由分配器22处理的对移动设备12的响应,由处理机26使用的HTTP和由移动设备12使用的通信协议之间的类似协议翻译或转换可替换为由HTTP处理机26或在IP代理系统18中的其它协议翻译/转换模块执行。
在内容以不是被请求的内容类型被返回到IP代理系统18的情况下,差错消息最好返回到移动设备12,并且可能返回到信息源,万维网服务器76,指示该请求不能按指定的被完成。或者,如果被返回内容不能使用指定的代码转换器被转换,然后,HTTP处理机26可搜索一代码转换器以代码转换接收的内容成为能够由被请求代码转换器代码转换的内容类型。具有分别对应于接收内容类型和由移动设备12接受内容类型的输出类型和输入类型的缺省代码转换器或不同的代码转换器可以被替换使用。当内容以移动设备可接受格式,图5中的例子中的WMLC被返回时,内容可以没有代码转换地被转发到分配器22。然而,任何时间指定的代码转换器不能被使用以代码转换返回的内容,最好告诉移动设备12该请求没有按照指定被完成,以及可能使用哪个代码转换器替换指定的代码转换器。
由于移动设备12指定了要用于对响应于一请求从信息源返回的内容进行代码转换的特定代码转换器,当指定的代码转换器不可用时任何后面的代码转换操作的控制也可以传递到移动设备12。例如,当代码转换器配置文件72不包括指定的WML->WMLC代码转换器的入口或返回的内容不具有代码转换器的输入内容类型时,IP代理系统18可以发送一消息到移动设备12指示指定的代码转换器不有效或不能被使用。移动设备12,与请求相关的移动设备软件应用,或移动设备用户然后可以对指示要采取的动作的消息响应。该动作可以包括例如:没有代码转换地转发内容到移动设备12,调用缺省代码转换器,调用由移动设备12、软件应用或用户指定的不同特定代码转换器,或放弃该内容。IP代理系统18也可以确定具有在配置文件72中相应入口的哪些代码转换器(如果有)可以代码转换接收的内容成为在请求中指定的代码转换器的输出内容类型或其它内容类型,并且在发送到移动设备12的消息中标识这些有效的代码转换器。然后,移动设备12,软件应用或用户也可以使用该信息确定是否应该使用任何一个有效的代码转换器代码转换被接收内容。例如,如果返回内容不能由指定的代码转换器代码转换成在移动设备12的特定处理操作需要的格式,但是第二个代码转换器可用于代码转换返回的内容成为能够在移动设备12上观看的内容类型,然后,用户可以指定返回的内容应该使用第二个代码转换器代码转换,并且代码转换的内容应该转发到移动设备12。尽管使用利用第二代码转换器代码转换的内容,原始计划的处理操作可能不可能,用户至少能够观看内容。
为了避免发送指定无效代码转换器的连接请求,希望移动设备12在发出连接请求之前询问IP代理系统18有效的代码转换器表。然后,使用所知的IP代理系统18可使用的代码转换器之一能够准备连接请求。如果被请求的代码转换器在IP代理系统18不有效,然后移动设备12可以尝试询问其它IP代理系统以找到需要的代码转换器,准备指定一个备用的但有效的代码转换器的连接请求,或退出涉及被请求代码转换器的信息请求操作。
期望指定的代码转换器例如可以与特定的移动设备软件应用或功能相关,并且因此被配置以软件应用需要的形式输出内容。由这些代码转换器输出的内容类型可以是普通类型,诸如在上面例子中的WMLC,但可以被调整到某些显示、软件应用输入格式或软件应用相关或移动设备相关属性。这样,缺省或其它代码转换操作可能不产生由移动设备软件应用可使用的格式的内容,因此如果指定的代码转换器不有效,IP代理系统18可以被配置退出请求处理或放弃从信息源返回的内容。如上所述,这些后面的操作可以由移动设备12、移动设备软件应用或移动设备用户控制。
在图5示出的例子中,代码转换器配置文件72包括“互斥的”代码转换器入口,其含义是指每个代码转换器的输出内容类型与任何其它代码转换器的输入类型不匹配。在一个实施例中,可以使用一个或更多另外的代码转换器,转换接收的内容成为可由指定的代码转换器接受的格式或类型。由IP代理系统18发送到信息源示例的万维网服务器76的请求然后可以被格式化,以扩展接受的内容类型,从而包括任何另外的代码转换器的输入内容类型作为接受的内容类型。
图6是表示带有接受的内容类型扩展的移动设备受控代码转换器选择的信号流向图。正如在图5中,图6只示出了在来自移动设备12的HTTP请求中直接涉及的IP代理系统18的那些组件,以避免图中的拥挤。
指定一个特定的代码转换器和接受的内容类型的HTTP请求可能通过一个或多个中间网络和接口组件从移动设备12发送到IP代理系统18。正如上面例子所示,该请求由分配器22接收,其解释该请求为HTTP请求并且装载HTTP处理机26。然后,HTTP处理机26询问配置文件78,不仅搜索指定的代码转换器名称,而且搜索与输出可以输入到指定的代码转换器的内容类型的任何代码转换器相关的入口。因此,按照该实施例,额外的MIME类型不仅基于指定的代码转换器输入类型而且基于其它代码转换器的输入类型被附加到HTTP请求的首标接受行。例如在图6中,HTTP处理机26,可能在通过配置文件78的第一次搜索穿过中找到指定的WML->WMLC代码转换器入口。然后HTTP处理机26可以重复配置文件搜索转换内容成为WML的任何代码转换器诸如HTML->WML代码转换器,它能够输入到指定的WML->WMLC代码转换器,由此标识响应于所述请求可被接受的另外的内容类型。转换HTML到WMLC的成链代码转换器82还可以从HTML->WML和WML->WMLC代码转换器创建。HTML->WML和WML->WMLC代码转换器还可以分离调用。配置文件搜索还可以例如根据在HTTP请求处理中可接受的延迟由HTTP处理机26进一步重复。
为了避免与通过配置文件78的这些多次搜索相关的延迟和对处理资源的需要,可以使用代码转换器内容类型查找表。当代码转换器第一次安装在IP代理系统18中时,最好构建综合映射表,以映射接收的内容类型成为可能的输出内容类型。例如,在图6中,用于指定的代码转换器的输入内容类型(在图6中的WML)的查找表入口将指示HTML能够被转换成WML。该表可替换为组织成单个和成链的代码转换部分,由此如果只有单个代码转换操作是优选的,包括指定的WML->WMLC代码转换器的入口的表的单个代码转换器部分将被访问。如果另外的代码转换操作和相关处理操作和时间延迟是可接受的,那么HTTP处理机26可在表的成链代码转换器部分执行用于指定的代码转换器的输入内容类型的查找。最好,可以调整代码转换配置文件的格式以表示仅是这样一个查找表,以便加速搜索。例如通过指定涉及多代码转换器的内容类型之间的路径完成。
关于是否将允许多代码转换操作的判定可以由HTTP处理机26在执行表或配置文件查找操作执行之前或之后,在HTTP请求发送到网络服务器80之前,或甚至在从网络服务器80接收被请求的内容之后进行。在图6的例子中,为了示例假定可以调用多代码转换器。因此,在来自移动设备12的HTTP请求的首标中的接受行由系统18扩展,以除了包括WML之外还包括HTML。如上所述,接受格式最好以按优选顺序列出。由于HTML需要两个代码转换操作代替指定代码转换器的单个代码转换操作,WML最好列在从IP代理系统18发送到网络服务器80的HTTP请求的接受行中的HTML之前。代码转换器链包括本地和远程代码转换服务二者也是可行的。这些远程代码转换服务能够作为由IP代理系统18发现,下载,和执行的代码转换器文件,或它们能够是以一种格式接收数据并且以另一种格式返回的外部代码转换服务。
然后网络服务器80响应于HTTP请求以图6的示例的HTML格式返回被请求的内容到IP代理系统18。HTTP处理机26确定所述返回的内容是HTML,装载和执行HTML->WML代码转换器,然后根据第一代码转换操作的WML结果,装载和执行指定的WML->WMLC代码转换器。然后产生的WMLC内容转发到分配器22,然后转发到移动设备12。当WML内容由万维网服务器80返回时,只有WML->WMLC代码转换器将被调用。在指定的代码转换器不有效或返回的内容不是在来自IP代理系统18的请求中指定的接受内容类型之一的情况下,请求处理可以被退出或者如上所述进行。
关于允许或拒绝多代码转换操作的判定也可以根据预定规则诸如最大HTTP请求处理时间或最大内容代码转换时间或处理器时间进行。该判决还可以考虑移动设备用户指定的优先权。如果高时间优先权(低时间延迟)由用户分配给提交的请求,然后可以选择单个代码转换器操作。或者,如果高数据优先权与请求相关,然后,可以允许任何数目的成链代码转换器操作以便以可接受的格式取回移动设备所请求的数据。多代码转换器还可以在来自移动设备的信息请求中被指定。可以由连接处理机应用的其它准则包括但决不限于:允许成链的代码转换器仅用于相对少量的接收内容,仅在一天的某些时刻,在特定当前业务情况下,或仅当配置文件或查找表存储在本地文件系统中时。另外的准则对本领域技术人员将是明显的,并且由此保留在本发明的范围内。
多于一个多代码转换器链可以用于在任何两个内容类型之间转换也是可能的。在这种情况下,例如根据代码转换成本或保真度,IP代理系统使用优先权方案,以在几个有效的链之间选择。
从信息源指定内容代码转换器
服务器或信息推送操作不同于信息请求/响应操作,因为信息源发送内容到移动设备12而没有首先接收这样做的一个请求。然而类似于上述的HTTP操作,特定的代码转换器可以由尝试推送内容到移动设备12的信息源指定。图7是用于HTTP操作的受控服务器代码转换器选择的例子的信号流向图。如上,图7只示出了直接在基于HTTP的服务器推送中涉及的IP代理系统的那些组件。
在图7中,内容从推送服务器42推送到IP代理系统18。对于基于HTTP的操作,如上所述,推送可以是HTTP投寄操作。其中推送服务器42提交投寄请求给IP代理系统18。类似于上述的HTTP请求,投寄请求包含首标字段,其中至少代码转换器名称(在该例中WML->WMLC)和可能内容类型的指示诸如图7中的WML的MIME类型可以被指定。由于内容由选择特定代码转换器的同一实体提供,内容类型将通常与指定的代码转换器匹配,并且因此不需要在投寄请求中被指定。
来自推送服务器42的投寄请求由推送服务模块30接收。在图7的例子中,推送操作是基于HTTP的,并且因此推送服务模块30调用HTTP处理机26。应理解,不同的推送服务可以与在IP代理系统18中的各处理机相关,并且单个IP代理系统18可以提供几个不同的推送服务。还期望,多个推送服务模块可以与单个连接处理机相关。或者,单个推送服务模块可以与分配器22功能类似,并且提供推送服务器42和在IP代理系统18中的任何处理机之间的接口。然而,为了清楚,在图7中只示出了与HTTP处理机26相关的单个推送服务模块30。
HTTP处理机26最好使用在投寄请求中的代码转换器名称(图7中的WML->WMLC),执行在配置文件72中的查找,以确定是否指定的代码转换器在IP代理系统18中有效。正如在前面的实施例中,最好使用相同的名称在任何投寄请求和代码转换器配置文件中指定一个特定的代码转换器。在图7中,在投寄请求中指定的代码转换器的入口存在于配置文件72中。因此WML->WMLC代码转换器74对IP代理系统18是有效的,并且装载和执行代码转换器74以将在投寄请求中包含的WML内容代码转换成WMLC内容。WMLC内容通过分配器22转发到移动设备12。当内容由推送服务器以移动设备可接受的格式、图7的示例WMLC提供时,投寄请求可以在合适的请求首标字段中指定零或其它预定值,以指定内容应该没有代码转换地转发到分配器22。还期望推送服务模块30可以被配置直接管理推送内容的代码转换,代替调用分离的连接处理机。
如果在来自推送服务器42的投寄请求中指定的特定代码转换器对IP代理系统18不是有效的,则可以退出推送操作。或者,如果IP代理系统18知道,则可以使用具有分别匹配来自投寄请求的内容和由移动设备12接受的内容类型的输入内容类型和输出内容类型的不同代码转换器。任何时候所请求的代码转换器不能用于代码转换推送内容时,特别如果推送服务器42被配置重试未传递的内容,推送操作失败或出错消息可以返回到推送服务器42。当缺省或任何其它代码转换器被使用代替指定的代码转换器时,推送服务器42可以被告之过去使用的特定代码转换器。任何这种备用的代码转换操作可以改为由推送服务器42控制,其可以例如响应于由IP代理系统18返回的推送操作失败或差错指示消息指定另一代码转换器名称。由于推送内容没有由移动设备12请求,没有这种差错或失败消息将会被典型地发送到移动设备12。
例如如果由推送服务器42指定的代码转换器与特定移动设备软件应用或功能相关或被配置以输出特定应用格式的内容,然后备用代码转换器可能不产生移动设备应用可使用的格式的内容。然而,如上所述,第二个代码转换器可用于将来自推送服务器42的内容代码转换成为例如至少能够以某一方法被处理的将显示在移动设备12上的内容类型。响应于来自IP代理系统18的差错或失败消息,推送服务器42可以重提交内容和/或指定第二代码转换器。被推送内容尽管不适合于按照原来打算的那样在移动设备上处理,但是由此可以在移动设备12上观看。推送服务器42还可以设定代码转换器替换政策,诸如不允许代码转换器替换,允许成链的代码转换器等。
图7的信号流向图示出了通过HTTP投寄操作的服务器数据推送中的单个内容代码转换器。应该明显的是,服务器可以指定多于一个内容代码转换器例如用在成链代码转换操作中。
外部代码转换器系统
如上简单描述的,代码转换器可以按照需要从已经在其上实现IP代理系统18的计算机系统上的本地存储器装入。在另一实施例中,代码转换器也可以从外部存储器装载。图8是具有外部代码转换器系统的通信系统的一般方框图。
除了外部代码转换器系统86以外,图8所示的系统90类似于图1的系统10。对系统10和90二系统公共的单元上面已经进行了描述并且因此仅简单进行了描述。如图8中的虚线所示,IP代理系统84可以通过某些直接连接诸如串行口或连接,通过WAN16诸如因特网,或通过IP代理系统84和代码转换器系统86配置操作于其中的LAN88,与代码转换器系统86通信。IP代理84和代码转换器系统86之间的其它通信链路对本领域技术人员来说是明显的。
图9是使用如图8所示的外部代码转换器系统用于HTTP连接的受控移动设备代码转换器选择的例子的信号流向图。正如在前面的例子所述,HTTP请求从移动设备12发送到IP代理系统84,指定特定的代码转换器(WML->WMLC)并可能指示能够在移动设备12接受的内容类型,例如在该例中为WMLC。由IP代理系统84中的分配器22接收请求,其确定该请求是HTTP请求并且将该请求转发到HTTP连接处理机94。例如HTTP处理机94可以基本类似于图2中的HTTP连接机26,尽管它操作稍微不同于处理机24以装载内容代码转换器。HTTP处理机94从移动设备12接收HTTP请求,然后可以查阅如上所述的代码转换器配置文件92或查找表,以确定指定的WML->WMLC代码转换器是否有效,以转换响应于请求而接收的内容。如果在配置文件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使用以从远端代码转换系统检索代码转换器。例如,如果IP代理系统84通过LAN88(图7)与代码转换器系统86通信,然后,LAN协议或数据访问和传送方案能够由HTTP处理机94调用,以便检索任何需要的代码转换器。在图8中,代码转换器系统86在其可用的代码转换器96中定位请求的WML->WMLC代码转换器,并且返回请求的代码转换器到IP代理系统84。
不考虑实现的特定代码转换器传送机构,IP代理系统84或图8所示的HTTP处理机94,接收和执行返回的WML->WMLC代码转换器,如100所指示的。然后,先前接收和可能存储的WML内容由代码转换器100处理以代码转换WML内容,并且包含代码转换的内容的响应由分配器22返回到移动设备12。
如果成链的代码转换器操作在来自移动设备12的连接请求中被指定,然后由IP代理系统84向代码转换器系统86进行多于一个代码转换器请求。多代码转换器可代替为在单个请求中向代码转换器系统86请求。用于成链的代码转换器操作的先前接收内容的处理可以如下进行:或者当每个需要的代码转换器由IP代理系统84装载时,具有可能存储在文件系统或数据存储器诸如98中的中间代码转换的内容,或只有当所有需要的代码转换器已经装载时。如果从外部代码转换器系统可用的任何代码转换器能够将其它内容类型代码转换成为指定代码转换器的输入内容类型,如上结合图6所描述的,IP代理系统84还可以扩展在发送到信息源的HTTP请求中的接受行。
当完成代码转换操作时,从外部系统86装载的代码转换器最好由IP代理系统84本地存储以便避免后面对外部代码转换器系统86请求相同的代码转换器。从IP代理系统84中的本地或内部存储器检索和装载代码转换器将典型地比对远程系统的请求完成地更快,并且减少IP代理系统84和代码转换系统86之间的通信链路上的业务。在该IP代理系统中,激活的连接处理机(在图8中的HTTP处理机94)最好在向外部代码转换器系统86请求代码转换器之前,确定是否将需要的代码转换器存储在本地数据存储器中。根据可用存储器的量,代码转换器可以无限期地存储或存储某一预定时间段。当存储器资源有限时也可以使用其它存储器管理方案,诸如象在URL基础上覆写存储的代码转换器。
配置文件92或代码转换器查找表可以通过在配置文件中包括代码转换器的位置指示或包括代码转换器的表入口而被调整以便用于外部代码转换器装载。如果代码转换器被存储到本地存储器或在被覆写进本地存储器中,最好更新文件92或表,以便激活的处理机能够从初始查找操作中确定是否必需从外部代码转换器系统86装载该代码转换器。当代码转换器没有被本地存储或不再本地存储时,然后文件92或查找表最好指示从哪里可以检索代码转换器。对于可以通过HTTP连接检索的代码转换器,相应的文件或表入口可以指示代码转换器系统86的IP地址,而当使用LAN连接时,网络地址可以在配置文件或查找表中指定。如果代码转换器系统的位置(指定的代码转换器从其可得到)对于移动设备12已知,则该位置也可以或替换为包括在来自移动设备的连接请求中。
也期望多于一个外部代码转换器系统可以在通信系统诸如90中被实现。在该种配置中,配置文件92或查找表将最好包括通过它能够通信的所有外部代码转换系统IP代理系统84可得到的所有代码转换器的入口。由此IP代理系统84可通过直接或网络连接从多个代码转换器系统的任何一个下载代码转换器。具有多代码转换器系统的IP代理系统84的整个操作将是基本如上所述的,除了可能使用不同的传送机构和通信协议,可以访问不同的代码转换器系统用于每个数据代码转换操作。成链的代码转换操作也可能涉及与不同代码转换器系统的通信。
当从多于一个代码转换器系统得到特定类型的代码转换器时,配置文件92或查找表最好被配置以方便简单决议方案。尽管IP代理系统84可以能够访问多代码转换器系统,IP代理系统84的拥有者或管理者可以指定这些代码转换器系统之一为IP代理系统84首先从其尝试下载代码转换器的优选或缺省系统。用于从多于一个代码转换器系统得到的任何代码转换器的代码转换器系统的优选顺序例如可以以配置文件或查找表入口的顺序反映。如果文件或表按代码转换器类型安排,那么用于特定代码转换器的相应于最优选源的入口最好列在与其它代码转换器系统相关的入口之前。利用首先发生的缺省或优选代码转换器系统的所有入口,配置文件或查找表可替换为按照代码转换器系统排列。优选的代码转换器系统也可以在来自移动设备12的连接请求中被指定。在这些示例的配置中,IP代理系统84将最好设法在访问任何其它源之前从优选源装载特定代码转换器。
从前面描述中明显的是,如果指定的代码转换器不能由IP代理系统84装载,然后出错消息可返回到移动设备12和可能返回万维网服务器76。如果指定的代码转换器不能用于代码转换接收的内容,上述的任何差错或失败操作可由IP代理系统84和移动设备12执行。
来自推送服务器诸如42的数据推送操作可以以类似方式进行,并且因此将只简单描述。推送服务模块可以或者调用合适的连接处理机以处理来自推送服务器的推送请求,或者被配置直接处理请求。在推送请求中被指定的任何代码转换器然后将由激活的连接处理机或可能另一连接处理机(如果需要)从外部代码转换器系统86或在推送请求中指定的另外的代码转换器系统下载。一旦下载到IP代理系统84,指定的代码转换器被调用处理在推送请求中包含的内容。然后,如果任何协议翻译是必须的话被代码转换的内容可以通过分配器22被推送到所需的目的移动设备12。于是除了指定的代码转换器(或如果成链的代码转换器操作在推送请求中指定或被允许用于推送请求)从外部代码转换器系统下载之外,该类型的推送操作基本上与参照图7描述的相同。下载的代码转换器可以由IP代理系统84存储在本地存储器中以便避免后面相同代码转换器的下载。任何上述失败或差错处理方案也可应用到数据推送操作。
图10示出了外部代码转换器系统的另一信号流向图。在图10中,不仅代码转换器系统86,而且配置文件102在IP代理系统84外部,并且因此可以在多个IP代理系统中共享该配置文件。IP代理系统84和配置文件102之间的通信可以通过直接连接或网络连接,并且对于不同的IP代理系统可以是不同的。例如,配置文件102可以由通过直接通信链路链接到配置文件的特定IP代理系统84的拥有者或运行者维持,而其它IP代理系统可以通过局域或广域网连接与配置文件102通信。配置文件102也可以保持在代码转换系统86中。如上,配置文件102也可以作为查找表实现。于是配置文件102可以被认为是登记处(registry),用该登记处一个或多个外部代码转换器系统诸如86登记有效的代码转换器。
当指定特定代码转换器的HTTP请求由IP代理系统84中的分配器22接收时,它被转发到HTTP处理机94,其如上所述确定指定的代码转换器是否在IP代理系统84中是有效的。然而,在图10的例子中,配置文件102远离IP代理系统84。如果通过HTTP可访问配置文件102,然后HTTP处理机94用配置文件102管理代码转换器查找功能。如果配置文件102不适应HTTP,然后不同的连接处理机可被调用便于代码转换器查找或配置文件搜索。
取决于IP代理系统84可用的代码转换器,HTTP处理机94可以包括指定代码转换器的输入内容类型(在该例中为WML)和可以被代码转换成指定代码转换器的输入内容类型的任何附加的内容类型二种作为在对信息源(示出的万维网服务器76)的请求中接受的内容类型。因此,从IP代理系统84到万维网服务器76的请求不仅包括WML而且包括HTML作为接受的内容类型,因为HTML能够由HTML->WML代码转换器104b代码转换成WML,其中,该代码转换器在配置文件102中具有相应的入口。这些内容类型中的一种能够最终由指定的WML->WMLC代码转换器处理。
如上,假定从其请求内容的网络服务器76返回WML内容到HTTP处理机94。在图10所示的例子中代码转换器系统86包括一组可远程执行的代码转换器104,包括WML->WMLC代码转换器104a和HTML->WML代码转换器104b,由此允许内容的远程代码转换。代替从代码转换器系统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翻译(如果需要),以遵循由移动设备使用的通信协议或方案。在数据传送或代码转换差错发生的情况下,如图所示,由网络服务器76返回的WML内容可以由HTTP处理机94存储。WML内容的本地存储允许IP代理系统84重新提交该内容给同一代码转换器系统86或者给不同的代码转换器系统,而没有必要从网络服务器76请求内容。
如果由网络服务器76返回请求的内容作为HTML内容,那么HTTP处理机94,如果需要的话通过另外的处理机,将提交HTML内容到代码转换器系统86,用于使用在移动设备请求中指定的HTML->WML代码转换器104b和然后WML->WMLC代码转换器104a的成链代码转换。这种成链代码转换操作也可以在连接请求中由移动设备12指定。成链代码转换器可以是如图10所示的同一代码转换系统86的部分,或在不同的代码转换器系统中实现。当成链代码转换操作涉及不同的代码转换器系统时,由信息源返回的内容可以首先发送到一个代码转换器系统用于代码转换成返回到IP代理系统84的中间内容类型,然后中间内容类型被发送到另一代码转换系统,用于使用指定的代码转换系统或代码转换器链中的另一中间代码转换器进行代码转换。内容最好通过正在处理连接请求的IP代理系统84在不同的代码转换系统之间转发,但如果在每个代码转换系统中已经实现匹配数据传送机构,可替换为将内容从一个代码转换器系统直接传送到另一代码转换系统。
数据请求差错或失败,诸如代码转换器差错或指定代码转换器不有效的其它情况,可以按照上述的任何方案进行管理,所述方案可能包括这些进一步的操作如使用不同的代码转换器代码转换内容,返回出错消息给移动设备12,返回出错消息给万维网服务器76,和控制来自移动设备12和/或万维网服务器76的请求或内容的任何后续处理。
用于带有一个或多个外部配置文件诸如102的系统的推送操作将从前面的示例中显而易见的。推送除了如图10所示特定的代码转换器将在推送请求中而不是在来自移动设备12的请求中指定之外,数据推送可以基本如上所述由推送服务器42完成。此外,推送服务器42可以在提交推送请求之前询问外部配置文件确定哪些代码转换器可用于IP代理系统84。如果需要的代码转换器的类型不可用,然后推送服务器42可以确定是否包括成链的代码转换器操作的任何其它代码转换器操作可以适合于推送请求和所期望的接收者移动设备12并且相应地格式化推送请求,由此可能避免在IP代理系统84的失败或出错。如上所述,配置文件102可以是包括从一个或多个代码转换器系统可得到的代码转换器入口的登记处。当在配置文件102中的入口包括地址诸如IP地址,或从其可得到特定的代码转换器的代码转换器系统的其它标识符时,则该地址可在推送请求中通过推送服务器42提供给IP代理系统84。至少某些代码转换器搜索操作可由此从IP代理系统84卸载到推送服务器42。
在图10的系统中,期望代码转换器系统86和配置文件102可以相互通信,以保证配置文件102精确指示哪些代码转换器是有效的。配置文件可以与特定类型的连接诸如HTTP连接和由此的HTTP连接处理机相关。如果配置文件102与特定类型的代码转换器系统86相关,然后配置文件可以驻留在代码转换系统86内。
如果实现多代码转换系统,将有效的代码转换器的代码转换器入口存储在所有代码转换系统84中的共享配置文件可以简化为由连接处理机执行的代码转换器查找。然后IP代理系统84或推送服务器42只需要询问单个配置文件,以确定是否合适的代码转换器是可以从它能够通信的任何代码转换器系统得到。该单个配置文件/服务器还能够支持允许外部代码转换服务器登记的协议。例如登记过程能够添加可用代码转换器表到单个配置文件。
外部代码转换系统86最好支持询问功能以允许移动设备12或推送服务器42在连接请求被准备和发送到IP代理系统84之前确定哪个代码转换器是可用的。由此最好还将支持代码转换器还能添加到代码转换器系统86和配置文件102的某些机构。然后推送服务器42可以添加一个新代码转换器到代码转换系统86和通过IP代理系统84推送依赖于新代码转换器的内容到移动设备诸如移动设备12。
外部代码转换系统86包括下载系统,从该下载系统由IP代理系统84下载和本地执行代码转换器(见图9),并且包括远程代码转换系统,内容被发送到该系统用于在代码转换系统代码转换(见图10)。在另一实施例中,“混合”代码转换器系统包括这些类型的代码转换系统的两种的情况。当混合代码转换器系统可用于IP代理系统84时,IP代理系统84可以或者从代码转换器系统下载需要的代码转换器或者发送内容到要远程代码转换的代码转换器系统。代码转换器下载或远程代码转换的选择可以例如根据要代码转换的数据量、代码转换的复杂性(单操作或成链操作)或其它准则。类似地,成链代码转换操作可以涉及下载代码转换系统和本地代码转换器执行及远程代码转换系统。
示例实现
现在将描述IP代理系统的示例实现。图11是在安全网络中实现的IP代理系统的方框图。
图11中的系统120包括操作于无线网络14内的移动设备12。通过网关15,移动设备能够通过WAN16诸如因特网接收并且最好还发送数据。系统120的这些单元基本上与在图1中类似标示的单元相同。然而在系统120中,IP代理系统124配置在安全防火墙127后面的专用网络诸如公司网络130内,并且通过网络服务器计算机122与网关15通信。在具体的示例实施例中,网络服务器122与电子邮件系统128相关。内部源126和外部源132这两个信息源也示于图11中。
网络服务器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之间的加密的通信允许使用移动设备12安全访问公司或其它专用信息。考虑下面参照图12描述的安全防火墙127内的内部信息源126的例子。图12是公司数据推送操作的信号流向图。与上面示出的示例操作一致,图12示出了基于HTTP的数据推送操作。
在图12中,HTTP请求在通过无线网络14(图11)和可能其它的中间网络或组件象图11中所示的网关15和WAN16发送到网络服务器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的专用网络组件的未授权访问。在某些情形下,存储在信息源处的信息的绝对存在必须保持保密。如图12所示来自移动设备的请求的加密防止了未授权方没有破解加密而确定请求的内容,正如上述这对于强加密方案诸如3DES不是计算可行的。该请求保持加密直到由安全防火墙127后面的网络服务器122接收和解密,正如在图12中的134所示。因此,该请求实际上正如从网络130上的计算机系统发送的请求一样安全。
一旦被解密,如上所述,该请求由IP代理系统124和信息源126处理。然而,由在网络服务器122中的加密模块122a进行的被请求内容的加密在发送到移动设备12之前,类似保证了内容只能由移动设备12观看。因此,保密公司信息直到在被移动设备12接收和解密之前保持加密,因此是安全,以及由此有效地扩展了针对移动设备12的安全防火墙。请求和响应请求返回到移动设备的信息二者都是安全的。
在已知的远程数据访问方案诸如WAP中,使用移动设备提供数据访问的网关系统通常位于例如在服务提供商的场所处公司或专用建筑物外部。在专用建筑物处加密的任何保密或敏感信息在公司防火墙外部的网关系统处解密,然后在被发送到目的移动设备或一些设备之前被重加密。因此,信息在网关系统处是未加密的,并且由此由网关系统的拥有者或运行者可访问。此外,信息从其发送的专用网络的拥有者或运营者典型地不对网关系统处的安全配置进行控制,这样信息在网关系统易于受到攻击。
图11和12所示的配置提供对专用、保密或其它敏感信息的安全远程访问。信息从网络服务器122和任何移动设备12之间的端对端被加密。在安全防火墙127处可以实现任何级的安全,以保护存储在信息源诸如126的保密信息,并且当由网络服务器122加密时,信息在移动设备12处接收之前,不在任何中间点被解密。信息仅在安全防火墙127后面的点134“内部”和在移动设备上是未加密的。安全配置诸如口令字或口令词控制也最好在移动设备12处被实现,以防止未授权用户使用移动设备12或解密接收的加密信息。例如,计算机工作站可以由口令字去激活系统锁定保护,并且对公司网络130的访问通常由登录口令字保护。类似地,需要口令字以使用移动设备12,而不同的口令词可以是解密任何存储在移动设备上的加密信息必需的。移动设备12和存储其上的信息由此正好象网络工作站和存储在网络上的信息一样安全。可以使用这些技术如受限口令字或口令词入口的重试、在预定数目的失败口令字或口令词入口之后移动设备12或移动设备存储器复位、动态和可能随机口令字/口令词更新等,以进一步改善移动设备安全。
对于外部信息源132(图11),除了信息源是在防火墙127外部之外,数据访问操作将基本上与图12所示出的相同。移动设备12和网络服务器122之间的请求和响应可以被加密,但是与信息源132交换的信息可能是不安全的。如果由信息源132提供的信息不是专用的或保密的,那么IP代理系统124和源132之间的非安全交换对于大部分用途将是足够的。然而,如果外部源132提供专用信息,则最好提供备用的配置。
改善从外部源132请求的信息的安全性的一个可能的措施将是使IP代理系统124和源132之间的通信安全。例如,IP代理系统124可以被调整以支持安全HTTP(HTTPS),安全套接层(SSL)或其它安全通信方案,以便安全访问在信息源132处的信息。来自源132的信息可以由此安全传送到IP代理系统124然后由安全防火墙127保护。加密信息可以由IP代理系统124例如由激活的连接处理机解密,并被传送到网络服务器122,然后加密该信息用于传送到移动设备12。如上,信息仅在防火墙127之后是未加密的。或者,通过IP代理系统124在移动设备12和源132之间建立安全通信会话。在图11的系统中,移动设备12和网络服务器122之间的通信然后将被双重加密。
如图11所示,网络服务器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上的用户信箱中,正如图11指示的,由此提供IP代理系统操作的记录和任何转发内容的存储复制件。其它集成的功能可以包括,但决不限于使用电子邮件系统128上的电子邮件地址通过IP代理系统124的来自移动设备的基于电子邮件的内容请求和去往移动设备的信息的寻址。另外可以实现进一步的集成功能,其中网络服务器122或IP代理系统124可以与任何其它服务相关。
将理解上述说明书仅以示例涉及范例实施例。本发明的很多其它变体将对本领域技术人员明显的,并且这些变体是在上述本发明的范围内,无论是否被特别地描述。
例如,本发明的实施例已经在基于IP系统的上下文主要进行了描述。用于通信系统的其它类型的类似代理系统也期望在本发明的范围内。除了上面描述之外的其它类型的连接、连接处理机和代码转换器对于本领域技术人员也是明显的。
取决于远程数据访问系统的具体实施和支持的特征,不是图2所示的所有单元都需要。例如如果推送服务不被支持,代理系统将不包括推送服务30。
该即时发明也决不限于使用MIME类型的内容类型指示。MIME类型结合本即时发明是有用的,但不需要实践本发明。其它内容类型指示器可以替换MIME类型以指示被请求或接收的内容的类型或格式。
尽管上述代码转换器在已知的信息类型或格式之间转换,客户化的代码转换器能够被开发和实现用于实际任何信息格式,例如包括应用程序文件类型和专有格式。如上所述,按照本发明的代理系统最好是可配置的,并且新内容代码转换器也可以被添加。
来自信息源的信息内容也能包括不同内容类型,不只是上述的单个内容类型。对于这种多类型内容,可以选择代码转换器例如将内容代码转换成为单内容类型,或代码转换成为在移动设备处可接受的多内容类型。在如上所述由移动设备或信息源进行代码转换器的选择的情况下,用于任何或每一部分多类型信息类型内容的代码转换器列表可以在连接请求中,响应于一个请求,或一个推送请求被指定。各代码转换器可以被指定并且用于具有特定内容类型的信息内容的每部分。可以基于不同的选择方案为多个内容类型的每个选择各代码转换器。例如,当多内容类型包括第一内容类型和第二内容类型时,可以为第一内容类型指定代码转换器,而可以基于移动设备或信息源的类型或标识符选择用于第二内容类型的代码转换器。
当任何部分的多类型信息内容不能按照指定而被代码转换时,例如如果指定的代码转换器不可用,只有信息内容的其它部分可能被代码转换并发送到移动设备。或者,如上所述缺省的代码转换操作可以用于对部分多内容类型进行代码转换。多类型内容的未被代码转换的部分或可能所有多类型内容能够改为利用随后用来访问信息内容或其部分的一链路或其它信息替换,并且发送到移动设备。指示多内容类型和/或需要或推送荐的代码转换器的信息也能被发送到移动设备。然后,通过向IP代理系统提交一连接请求或可能进一步的代码转换指示或一备用的代码转换器选择由移动设备检索信息内容或其一部分。
此外,代理系统可以在任何网络中实现,不仅在图11所示的公司网络中。在ISP、ASP或虚拟网络运营商(VNO)系统中代理系统的安装将提供对网络信息的安全远程访问和任何网络用户之间的信息的安全传送,其包括ISP、ASP或VNO用户的移动设备之间的传送。
尽管已经参照一定的图示的实施例详细描述了本发明,变体和改进存在于所描述的和在下列权利要求定义的本发明的范围和精神内。

Claims (81)

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

Publications (2)

Publication Number Publication Date
CN1554060A true CN1554060A (zh) 2004-12-08
CN100346338C CN100346338C (zh) 2007-10-31

Family

ID=27501871

Family Applications (4)

Application Number Title Priority Date Filing Date
CN200710108248XA Expired - Lifetime CN101060538B (zh) 2001-07-12 2002-07-12 用于为移动通信设备提供远程数据访问的系统和方法
CNB028178408A Expired - Lifetime CN100346338C (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 用于为移动通信设备提供远程数据访问的系统和方法

Family Applications Before (1)

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

Family Applications After (2)

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

Country Status (9)

Country Link
US (3) US7590759B2 (zh)
EP (4) EP1410645B1 (zh)
CN (4) CN101060538B (zh)
AT (3) ATE375686T1 (zh)
BR (3) BR0211094A (zh)
CA (4) CA2454219C (zh)
DE (3) DE60236221D1 (zh)
HK (2) HK1062206A1 (zh)
WO (3) WO2003007617A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499100B (zh) * 2008-01-18 2011-09-07 捷讯研究有限公司 电子商务应用中校验转换的方法和设备
CN109510865A (zh) * 2013-03-05 2019-03-22 富士施乐株式会社 中继装置及系统
CN112602297A (zh) * 2018-06-25 2021-04-02 上海诺基亚贝尔股份有限公司 用于无线移动通信系统中的互联网内容推送服务的方法和装置
CN112925527A (zh) * 2021-02-07 2021-06-08 北京三快在线科技有限公司 一种调用方法、装置、存储介质及电子设备

Families Citing this family (209)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1626324B1 (en) 2000-09-21 2012-04-11 Research In Motion 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
US20140368672A1 (en) * 2002-04-19 2014-12-18 Soryn Technologies Llc Methods for Deploying Video Monitoring Applications and Services Across Heterogeneous Networks
US7679649B2 (en) * 2002-04-19 2010-03-16 Ralston John D Methods for deploying video monitoring applications and services across heterogenous 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
KR101164788B1 (ko) 2004-03-23 2012-07-11 엔디에스 리미티드 이동 가입자 단말기 재생에 적합하게 순응하는 멀티미디어콘텐트
US8130957B2 (en) * 2004-04-30 2012-03-06 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
JP2008512764A (ja) * 2005-04-15 2008-04-24 ケーティーフリーテル・カンパニー・リミテッド 移動通信端末機用コンテンツ提供方法
EP1891496A4 (en) * 2005-04-15 2011-11-30 Kt Freetel Co Ltd METHOD FOR DISTRIBUTING CONTENTS
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
US20060282884A1 (en) * 2005-06-09 2006-12-14 Ori Pomerantz Method and apparatus for using a proxy to manage confidential information
GB2427048A (en) 2005-06-09 2006-12-13 Avecho Group Ltd Detection of unwanted code or data in electronic mail
US8812526B2 (en) 2005-09-14 2014-08-19 Millennial Media, Inc. Mobile content cross-inventory yield optimization
US8311888B2 (en) 2005-09-14 2012-11-13 Jumptap, Inc. Revenue models associated with syndication of a behavioral profile using a monetization platform
US9471925B2 (en) 2005-09-14 2016-10-18 Millennial Media Llc Increasing mobile interactivity
US8832100B2 (en) 2005-09-14 2014-09-09 Millennial Media, Inc. User transaction history influenced search results
US8229914B2 (en) 2005-09-14 2012-07-24 Jumptap, Inc. Mobile content spidering and compatibility determination
US8195133B2 (en) 2005-09-14 2012-06-05 Jumptap, Inc. Mobile dynamic advertisement creation and placement
US7912458B2 (en) 2005-09-14 2011-03-22 Jumptap, Inc. Interaction analysis and prioritization of mobile content
US7660581B2 (en) 2005-09-14 2010-02-09 Jumptap, Inc. Managing sponsored content based on usage history
US10592930B2 (en) 2005-09-14 2020-03-17 Millenial Media, LLC Syndication of a behavioral profile using a monetization platform
US8989718B2 (en) 2005-09-14 2015-03-24 Millennial Media, Inc. Idle screen advertising
US9703892B2 (en) 2005-09-14 2017-07-11 Millennial Media Llc Predictive text completion for a mobile communication facility
US7752209B2 (en) 2005-09-14 2010-07-06 Jumptap, Inc. Presenting sponsored content on a mobile communication facility
US8364521B2 (en) 2005-09-14 2013-01-29 Jumptap, Inc. Rendering targeted advertisement on mobile communication facilities
US8805339B2 (en) 2005-09-14 2014-08-12 Millennial Media, Inc. Categorization of a mobile user profile based on browse and viewing behavior
US8660891B2 (en) 2005-11-01 2014-02-25 Millennial Media Interactive mobile advertisement banners
US8819659B2 (en) 2005-09-14 2014-08-26 Millennial Media, Inc. Mobile search service instant activation
US8463249B2 (en) 2005-09-14 2013-06-11 Jumptap, Inc. System for targeting advertising content to a plurality of mobile communication facilities
US8290810B2 (en) 2005-09-14 2012-10-16 Jumptap, Inc. Realtime surveying within mobile sponsored content
US8666376B2 (en) 2005-09-14 2014-03-04 Millennial Media Location based mobile shopping affinity program
US8103545B2 (en) 2005-09-14 2012-01-24 Jumptap, Inc. Managing payment for sponsored content presented to mobile communication facilities
US10911894B2 (en) 2005-09-14 2021-02-02 Verizon Media Inc. Use of dynamic content generation parameters based on previous performance of those parameters
US7702318B2 (en) 2005-09-14 2010-04-20 Jumptap, Inc. Presentation of sponsored content based on mobile transaction event
US8688671B2 (en) 2005-09-14 2014-04-01 Millennial Media Managing sponsored content based on geographic region
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
US9058406B2 (en) 2005-09-14 2015-06-16 Millennial Media, 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
US10038756B2 (en) 2005-09-14 2018-07-31 Millenial Media LLC Managing sponsored content based on device characteristics
US7860871B2 (en) 2005-09-14 2010-12-28 Jumptap, Inc. User history influenced search results
US8238888B2 (en) 2006-09-13 2012-08-07 Jumptap, Inc. Methods and systems for mobile coupon placement
US7769764B2 (en) 2005-09-14 2010-08-03 Jumptap, Inc. Mobile advertisement syndication
US20110313853A1 (en) 2005-09-14 2011-12-22 Jorey Ramer System for targeting advertising content to a plurality of mobile communication facilities
US8131271B2 (en) 2005-11-05 2012-03-06 Jumptap, Inc. Categorization of a mobile user profile based on browse behavior
US8156128B2 (en) 2005-09-14 2012-04-10 Jumptap, Inc. Contextual mobile content placement on a mobile communication facility
US8615719B2 (en) 2005-09-14 2013-12-24 Jumptap, Inc. Managing sponsored content for delivery to mobile communication facilities
US8027879B2 (en) 2005-11-05 2011-09-27 Jumptap, Inc. Exclusivity bidding for mobile sponsored content
US7676394B2 (en) 2005-09-14 2010-03-09 Jumptap, Inc. Dynamic bidding and expected value
US8364540B2 (en) 2005-09-14 2013-01-29 Jumptap, Inc. Contextual targeting of content using a monetization platform
US8209344B2 (en) 2005-09-14 2012-06-26 Jumptap, Inc. Embedding sponsored content in mobile applications
US7577665B2 (en) 2005-09-14 2009-08-18 Jumptap, Inc. User characteristic influenced search results
US9076175B2 (en) 2005-09-14 2015-07-07 Millennial Media, Inc. Mobile comparison shopping
US8302030B2 (en) 2005-09-14 2012-10-30 Jumptap, Inc. Management of multiple advertising inventories using a monetization platform
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 株式会社日立製作所 情報処理装置及び情報処理システム
US20070232316A1 (en) * 2006-03-30 2007-10-04 Seamless Skyy-Fl, 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
US9323821B2 (en) 2006-04-05 2016-04-26 Qwest Communications International Inc. Network repository auto sync wireless handset
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
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
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
US9124650B2 (en) * 2006-12-13 2015-09-01 Quickplay Media Inc. Digital rights management in a mobile environment
US8892761B1 (en) 2008-04-04 2014-11-18 Quickplay Media Inc. Progressive download playback
US8995815B2 (en) 2006-12-13 2015-03-31 Quickplay Media Inc. Mobile media pause and resume
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
WO2008134894A1 (en) * 2007-05-08 2008-11-13 Research In Motion Limited Xml push 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
US8418056B2 (en) * 2008-01-18 2013-04-09 Research In Motion Limited Method and apparatus for checkout transition in an e-commerce application
EP2195963B1 (en) * 2008-05-12 2016-02-10 BlackBerry Limited Security measures for countering unauthorized decryption
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
US20110289187A1 (en) * 2008-12-04 2011-11-24 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
CN102959531B (zh) * 2010-06-29 2016-01-06 中兴通讯(美国)公司 用于云基媒体自适应和代码转换服务的方法和系统
CN102346685B (zh) * 2010-07-29 2016-09-28 甲骨文国际公司 集成适配器管理系统和方法
CN101917482B (zh) * 2010-08-23 2016-08-24 宇龙计算机通信科技(深圳)有限公司 一种信息推送方法及信息推送服务器
EP2622807B1 (en) * 2010-09-28 2016-03-23 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
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
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
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
US9395885B1 (en) 2010-12-10 2016-07-19 Wyse Technology L.L.C. Methods and systems for a remote desktop session utilizing HTTP header
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
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
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
US8504654B1 (en) 2010-12-10 2013-08-06 Wyse Technology Inc. Methods and systems for facilitating a remote desktop session utilizing long polling
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
US9407443B2 (en) 2012-06-05 2016-08-02 Lookout, Inc. Component analysis of software applications on computing devices
US9589129B2 (en) 2012-06-05 2017-03-07 Lookout, Inc. Determining source of side-loaded software
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
US9077688B2 (en) * 2012-06-17 2015-07-07 Skycure Ltd Access control system for a mobile device
US9436493B1 (en) * 2012-06-28 2016-09-06 Amazon Technologies, Inc. Distributed computing environment software configuration
CN102724324B (zh) * 2012-06-28 2016-09-28 用友网络科技股份有限公司 消息推送整合装置和消息推送整合方法
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 乐金信世股份有限公司 电子交易文档
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
US10122747B2 (en) 2013-12-06 2018-11-06 Lookout, Inc. Response generation after distributed monitoring and evaluation of multiple devices
US9753796B2 (en) 2013-12-06 2017-09-05 Lookout, Inc. Distributed monitoring, evaluation, and response for 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
WO2016178816A1 (en) 2015-05-01 2016-11-10 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
CN111800606B (zh) * 2020-06-19 2022-03-25 烽火通信科技股份有限公司 一种云视频处理方法和系统

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US6754181B1 (en) * 1996-11-18 2004-06-22 Mci Communications Corporation System and method for a directory service supporting a hybrid communication system architecture
US6421733B1 (en) * 1997-03-25 2002-07-16 Intel Corporation System for dynamically transcoding data transmitted between computers
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
US6563517B1 (en) * 1998-10-02 2003-05-13 International Business Machines Corp. Automatic data quality adjustment to reduce response time in browsing
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
US6615212B1 (en) * 1999-08-19 2003-09-02 International Business Machines Corporation Dynamically provided content processor for transcoded data types at intermediate stages of transcoding process
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
MXPA02007310A (es) * 2000-01-28 2003-10-14 Williams Comm Llc Sistema y metodo para reescribir una solicitud/respuesta de recursos de medios entre un servidor de origen y un cliente.
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
ES2239564T3 (es) * 2000-03-01 2005-10-01 Sony International (Europe) Gmbh Gestion de datos de perfiles de usuarios.
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
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
US7500188B1 (en) * 2000-04-26 2009-03-03 Novarra, Inc. System and method for adapting information content for an electronic device
AU2001255742A1 (en) * 2000-04-26 2001-11-07 Portable Internet Inc. Portable internet services
US7747782B2 (en) * 2000-04-26 2010-06-29 Novarra, Inc. System and method for providing and displaying information content
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

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499100B (zh) * 2008-01-18 2011-09-07 捷讯研究有限公司 电子商务应用中校验转换的方法和设备
CN109510865A (zh) * 2013-03-05 2019-03-22 富士施乐株式会社 中继装置及系统
CN112602297A (zh) * 2018-06-25 2021-04-02 上海诺基亚贝尔股份有限公司 用于无线移动通信系统中的互联网内容推送服务的方法和装置
US11533380B2 (en) 2018-06-25 2022-12-20 Nokia Technologies Oy Methods and apparatuses for internet content pushing service in a wireless mobile communication system
CN112925527A (zh) * 2021-02-07 2021-06-08 北京三快在线科技有限公司 一种调用方法、装置、存储介质及电子设备
CN112925527B (zh) * 2021-02-07 2022-03-08 北京三快在线科技有限公司 一种调用方法、装置、存储介质及电子设备

Also Published As

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

Similar Documents

Publication Publication Date Title
CN100346338C (zh) 用于为移动通信设备提供远程数据访问和代码转换的系统和方法
US8578057B2 (en) System and method for providing remote data access for a mobile communication device
US6775687B1 (en) Exchanging supplemental information fields between a client and a server
CN1575579A (zh) 选择用于有线和无线设备的安全格式转换
US20160164890A1 (en) Techniques for sharing network security event information
CN1618066A (zh) 用于处理可扩展标示语言(xml)文档的系统和方法
CN1275286A (zh) 基于目的位置的控制网络连接的方法和装置
CN1554176A (zh) 用于在移动通信设备中安全消息密钥超高速缓存的系统和方法
CN1537374A (zh) 短程无线网络环境中位置独立信息包路由选择和安全访问
CN1653764A (zh) 用于传送和利用附件的方法
CN1653779A (zh) 支持移动通信设备上多个证书状态提供器的系统和方法
CN1568475A (zh) 有关用户档案接入控制的系统及一种方法
US11134061B1 (en) Private virtual network replication of cloud databases
US20190364026A1 (en) Manage encrypted network traffic using dns responses
CN1122230C (zh) 分布式业务网和处理数据接入请求的方法
CN1376369A (zh) 蜂窝通信系统中查询属性的方法和系统
EP1853038A2 (en) System and method for providing remote data access for a mobile communication device

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

Granted publication date: 20071031