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

文档序号:7654014阅读:82来源:国知局
专利名称:用于为移动通信设备提供远程数据访问的系统和方法
技术领域
本发明涉及移动通信,并且特别涉及提供从移动通信设备对远程数据的访问。
背景技术
使用移动通信设备提供对数据的远程访问的已知方案趋于相对受到限制。例如,用于移动设备的无线应用协议(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>.<connectionhandler 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用户的移动设备之间的传送。
尽管已经参照特定的图示实施例详细描述了本发明,其变化和改进存在于下面的权利要求所描述和定义的本发明的范围和精神内。
权利要求
1.一种系统,用于将从信息源(126、132)接收到的信息内容通过网关(15)、在网络(14、16)上提供给无线移动通信设备(12),所述系统包括IP代理系统(124),配置在专用网络(130)内且位于安全防火墙(127)后面,用于通过网关(15)和同样配置在专用网络(130)内且位于安全防火墙(127)后面的网络服务器(122),与移动设备(12)进行通信;其中网络服务器通过对去往移动设备(12)的通信进行加密,以及对来自移动设备(12)的通信进行解密,来实现与移动设备(12)的安全通信;IP代理系统(124)包括连接处理器系统,所述连接处理器系统包括多个连接处理器和代码转换系统(28),所述多个连接处理器用于请求来自信息源(126,132)的信息内容,以及所述代码转换系统(28)包括多个代码转换器(74),用于将来自信息源(126,132)的信息内容从各个输入内容类型代码转换成各个输出内容类型;IP代理系统(124)还操作用于将所选择的特定代码转换器(74)的输出内容类型的代码转换后的信息内容发送给网络服务器,以便进行加密并传输至移动设备。
2.根据权利要求1所述的系统,其特征在于所述连接处理器系统包括连接处理器目录,所述连接处理器目录存储连接处理器数据。
3.根据权利要求2所述的系统,其特征在于所述连接处理器数据包括与至少一个连接处理器相关联的连接处理器数据。
4.根据权利要求2所述的系统,其特征在于所述连接处理器数据包括指定连接处理器位置的网络地址。
5.根据权利要求4所述的系统,其特征在于所述连接处理器系统操作用于访问由所述网络地址指定的位置,获取连接处理器,并将与连接处理器相关联的连接处理器数据存储在连接处理器目录中。
6.根据权利要求1所述的系统,其特征在于所述IP代理系统操作用于接收来自移动设备的连接数据,所述连接数据包括指示进行接收的移动通信设备(12)可接受的内容类型的接受数据。
7.根据权利要求6所述的系统,其特征在于所述连接处理器操作用于确定从信息源(126,132)接收到的信息内容的接收内容类型,并确定接收内容类型是否与可接受内容类型匹配。
8.根据权利要求7所述的系统,其特征在于所述连接处理器还操作用于在接收内容类型与可接受内容类型不匹配的情况下,选择一个或多个代码转换器(74)对所述信息内容进行代码转换。
9.根据权利要求7所述的系统,其特征在于所述连接处理器还操作用于如果信息内容不能被代码转换成可接受内容类型,向移动通信设备(12)发送错误信息。
10.根据权利要求1所述的系统,其特征在于所述代码转换系统(28)操作用于产生和存储包括代码转换链的映射数据,每个代码转换链选择一个或多个代码转换器(74),以将信息内容从各个输入内容类型代码转换成各个输出内容类型。
11.根据权利要求10所述的系统,其特征在于在添加或删除代码转换数据时,更新所述映射数据。
12.根据权利要求10所述的系统,其特征在于所述连接处理器操作用于确定从信息源(126,132)接收到的信息内容的接收内容类型,确定进行接收的移动通信设备(12)可接受的内容类型,以及指定所述代码转换链之一,以将信息内容从接收内容类型转换成可接受内容类型。
13.根据权利要求1所述的系统,其特征在于所述连接处理器操作用于遵照优选次序指定内容类型列表,并将所述内容类型列表提供给信息源(126,132)。
14.根据权利要求13所述的系统,其特征在于所述连接处理器操作用于确定从信息源(126,132)接收到的信息内容的接收内容类型,确定进行接收的移动通信设备(12)可接受的内容类型,以及指定一个或多个代码转换器(74),以将信息内容从接收内容类型转换成可接受内容类型。
15.根据权利要求13所述的系统,其特征在于所述信息内容包括多个不同的内容类型;以及所述连接处理器操作用于指定各个代码转换器(74),以对多个不同的内容类型中的每一内容类型的信息内容进行代码转换。
16.根据权利要求1所述的系统,其特征在于所述信息源(126)配置为在专用网络(130)上进行操作。
17.根据权利要求1所述的系统,其特征在于所述信息源(132)配置为在专用网络(130)外部进行操作。
18.根据权利要求17所述的系统,其特征在于所述IP代理系统(124)适合于支持安全通信方案,以实现对信息源(132)处的信息的安全访问。
19.根据权利要求18所述的系统,其特征在于所述安全通信方案包括安全HTTP或HTTPS。
20.根据权利要求18所述的系统,其特征在于所述安全通信方案包括安全套接层或SSL。
21.根据权利要求1所述的系统,其特征在于所述系统操作用于通过网络服务器(122)、在电子邮件系统(128)上,存储由IP代理系统(124)通过网络服务器(122)转发给移动设备(12)的信息内容。
22.一种方法,用于将从信息源(126、132)接收到的信息内容通过网关(15)、在网络(14、16)上提供给无线移动通信设备(12),所述方法包括以下步骤在专用网络(130)内,安全防火墙(127)后面,接收来自移动通信设备(12)的连接请求,其中由专用网络(130)内且位于安全防火墙(127)后面的网络服务器解密所述连接请求;提供针对不同通信协议的多个连接处理器,以便与信息源(126,132)进行通信;选择连接处理器,并使用所选择的连接处理器来建立连接;接收来自信息源(126,132)的信息内容;提供多个代码转换器(74),每个代码转换器(74)配置用于将信息内容从各个输入内容类型代码转换成各个输出内容类型;从所述多个代码转换器(74)中选择特定的代码转换器(74),并使用所选择的代码转换器(74)对接收到的信息内容进行代码转换,以产生代码转换后的信息内容;以及将代码转换后的信息内容发送至网络服务器(122),以便进行加密,并通过网关(15)转发给移动通信设备(12)。
23.根据权利要求22所述的方法,其特征在于所述连接请求标识出所述信息源(126,132)。
24.根据权利要求23所述的方法,其特征在于响应于连接请求建立与信息源(126,132)之间的连接的步骤包括向信息源(126,132)发送信息请求的步骤。
25.根据权利要求24所述的方法,其特征在于所述连接请求符合第一通信协议;以及所述信息请求符合第二通信协议。
26.根据权利要求25所述的方法,其特征在于所述第二通信协议是超文本传送协议或HTTP。
27.根据权利要求24所述的方法,其特征在于所述连接请求标识出一个或多个接受内容类型,以及所述方法还包括以下步骤确定所述多个代码转换器(74)中是否存在任何代码转换器(74)被配置为将任何其他内容类型代码转换成任何一个或多个接受内容类型;以及将所述一个或多个接受内容类型和所述其他内容类型包括在所述信息请求中。
28.根据权利要求22所述的方法,其特征在于所述连接请求标识出一个或多个接受内容类型;以及向代码转换系统指定要使用的一个或多个代码转换器的步骤包括确定信息内容的接收内容类型能否被代码转换成一个或多个接受内容类型的步骤。
29.根据权利要求28所述的方法,其特征在于确定信息内容的接收内容类型能否被代码转换成一个或多个接受内容类型的步骤包括以下步骤确定所述多个代码转换器(74)中是否存在任何代码转换器(74)被配置为将所述接收内容类型代码转换成一个或多个接受内容类型;以及在所述多个代码转换器(74)中存在任何代码转换器(74)被配置为将所述接收内容类型代码转换成一个或多个接受内容类型的情况下,选择用于将所述信息内容转换成接受内容类型之一的代码转换器(74)。
30.根据权利要求29所述的方法,其特征在于还包括以下步骤在所述多个代码转换器(74)中不存在任何代码转换器(74)被配置为将所述接收内容类型代码转换成一个或多个接受内容类型的情况下,丢弃所述信息内容。
31.根据权利要求29所述的方法,其特征在于还包括以下步骤在所述多个代码转换器(74)中不存在任何代码转换器(74)被配置为将所述接收内容类型代码转换成一个或多个接受内容类型的情况下,传递所述信息内容。
32.根据权利要求28所述的方法,其特征在于所述信息内容包括多个内容类型;以及确定信息内容的接收内容类型能否被代码转换成一个或多个接受内容类型的步骤包括以下步骤确定是否存在任何代码转换器(74)被配置为将多个内容类型中的任何内容类型转换成一个或多个接受内容类型;以及在多个代码转换器(74)被配置为将所述多个内容类型中的一些转换成一个或多个接受内容类型的情况下,选择用于将所述多个内容类型中的每一内容类型的信息内容转换成接受内容类型之一的各个代码转换器(74)。
33.根据权利要求22所述的方法,其特征在于所述连接请求标识出一个或多个接受内容类型,以及建立连接的步骤包括以下步骤针对配置用于将信息内容代码转换成一个或多个接受内容类型的代码转换器(74)组,搜索配置文件;产生与代码转换器(74)组相对应的各个输入内容类型的列表;以及向所述信息源(126,132)发送各个输入内容类型的列表和一个或多个接受内容类型。
34.根据权利要求22所述的方法,其特征在于响应于向网络服务器(122)发送代码转换后的信息内容的步骤,所述网络服务器(122)压缩所述代码转换后的内容。
35.根据权利要求22所述的方法,其特征在于所述信息源(126)配置为在专用网络(130)内、安全防火墙(127)后面进行操作。
36.根据权利要求22所述的方法,其特征在于还包括以下步骤遵照优选次序,产生代码转换器(74)的列表;以及根据优选次序,从代码转换器列表中选择一个代码转换器(74)。
37.根据权利要求22所述的方法,其特征在于所述输入内容类型和输出内容类型包括从以下组中选择的内容类型无线标记语言或WML、超文本标记语言或HTML、汇编WML或WMLC和可扩展标记语言或XML。
38.根据权利要求22所述的方法,其特征在于所述信息源(132)配置为在专用网络(130)外部进行操作。
39.根据权利要求38所述的方法,其特征在于使用所选择的连接处理器建立连接的步骤包括使用可实现对信息源(132)处的信息的安全访问的安全连接方案,来建立连接。
40.根据权利要求39所述的方法,其特征在于所述安全通信方案包括安全HTTP或HTTPS。
41.根据权利要求39所述的方法,其特征在于所述安全通信方案包括安全套接层或SSL。
全文摘要
在一个示例实施例中,用于提供信息源和移动通信设备之间的数据访问的系统包括代码转换系统和第一网络设备。代码转换系统包括多个代码转换器,每个代码转换器可操作以将信息内容从相应的第一内容类型代码转换成相应的第二内容类型。第一网络设备与所述代码转换系统通信,并且包括连接处理器系统。连接处理机系统可操作以接收用于信息源和移动通信设备之间的连接的连接数据和选择相应的连接处理机,连接处理机可操作,以从多个代码转换器选择一个或更多代码转换器以代码转换信息内容。
文档编号H04L29/12GK101060538SQ200710108248
公开日2007年10月24日 申请日期2002年7月12日 优先权日2001年7月12日
发明者萨立姆·H·奥马尔, 拉塞尔·N·欧文, 赫伯特·A·利特尔, 托马什·K·雷巴克, 迈克尔·S·布朗, 戴维·P·亚切 申请人:捷讯研究有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1