使用客户端本地代理服务器访问具有分配的网络地址的设备的系统和方法与流程

文档序号:12756077阅读:707来源:国知局
使用客户端本地代理服务器访问具有分配的网络地址的设备的系统和方法与流程
使用客户端本地代理服务器访问具有分配的网络地址的设备的系统和方法基于35U.S.C.§119要求优先权本专利合作条约申请要求以下临时申请的专利优先权:2011年3月11日提交的、题目为“REMOTEMOBILEADMINISTRATIONANDLOGGINGUSINGHTTPPROTOCOL”的临时申请No.61/452,031,该临时申请已经转让给本申请的受让人,故明确地以引用方式将其并入本文;2012年1月18日提交的、题目为“REMOTEACCESSANDADMINISTRATIONOFDEVICECONTENTANDCONFIGURATIONUSINGHTTPPROTOCOL”的临时申请No.61/588,007,该临时申请已经转让给本申请的受让人,故明确地以引用方式将其并入本文;2012年1月18日提交的、题目为“SYSTEMANDMETHODUSINGACLIENT-LOCALPROXY-SERVERTOACCESSADEVICEHAVINGANASSIGNEDADDRESS”的临时申请No.61/588,030,该临时申请已经转让给本申请的受让人,故明确地以引用方式将其并入本文;2012年3月8日提交的、题目为“SYSTEMANDMETHODUSINGACLIENT-LOCALPROXY-SERVERTOACCESSADEVICEHAVINGANASSIGNEDNETWORKADDRESS”的共同未决非临时申请No.13/415,604,该申请已经转让给本申请的受让人,故明确地以引用方式将其并入本文。对共同未决专利申请的引用本专利申请涉及以下共同未决的美国专利申请:由YuvalCoreyHershko和NirStrauss与此同时提交的、代理案卷号为No.103234的“REMOTEACCESSANDADMINISTRATIONOFDEVICECONTENTANDCONFIGURATIONUSINGHTTPPROTOCOL”,该申请已经转让给本申请的受让人,故明确地以引用方式将其并入本文;由YuvalCoreyHershko和NirStrauss与此同时提交的、代理案卷号为No.110525的“SYSTEMANDMETHODUSINGAWEBPROXY-SERVERTOACCESSADEVICEHAVINGANASSIGNEDNETWORKADDRESS”,该申请已经转让给本申请的受让人,故明确地以引用方式将其并入本文;由YuvalCoreyHershko和NirStrauss与此同时提交的、代理案卷号为No.110526的“SYSTEMANDMETHODUSINGFORACCESSINGADEVICEHAVINGANASSIGNEDNETWORKADDRESS”,该申请已经转让给本申请的受让人,故明确地以引用方式将其并入本文。技术领域概括地说,所公开的实施例针对于访问在通信网络中进行操作的设备。更具体地说,所公开的实施例针对于定位、路由到以及访问因特网协议(IP)网络上的设备的系统和方法,其中该设备地址可以改变。

背景技术:
在通信网络中,地址是分配给网络上的每个设备的标识符。当应用于因特网时,设备的地址通常称为其“因特网协议地址”(IP地址),IP地址是设备在因特网上的虚拟位置的数字表示。如果设备承载一个网站,则使用该主机设备的IP地址来定位该主机设备,并提供从该网站对内容的访问。例如,网页域名google.com实际上代表数字IP地址,该数字IP地址可以是例如73.14.213.99。当网页客户端在其网页浏览器中键入域名时,下游DNS系统将输入的域名匹配或者路由到IP地址,然后使用该数字IP地址来定位和提供对与该地址相关联的主机服务器设备的访问。通常,设备的IP地址由网络中的实体为其进行分配。例如,在CDMA网络中,地址分配实体是分组数据服务节点(PDSN)。可以静态地或动态地分配IP地址。静态IP地址方案为一个客户/设备分配一个IP地址,而动态IP地址方案以选择的或者随机的时间间隔,向给定的客户/设备分配不同的IP地址。例如,每次给定的客户登录其计算机,一些因特网服务提供商(ISP)向该客户分配不同的IP地址。具有静态的、唯一IP地址的主机设备上的网站能可靠地访问,并维持稳定的客户端服务器会话。相比而言,在动态分配IP地址方案的情况下,计算机将可能不得不与该网络上的其它计算机共享IP地址。因此,在动态分配的IP地址上承载网站易于危及网页客户端能够访问该动态分配的地址可靠程度,以及在网页客户端和动态分配的地址之间建立的客户端服务器会话的稳定性。期望的是,提供一种方式将网页客户端路由到多种多样的支持网页的计算设备,从而允许从大量的设备对内容和特征进行远程的基于网页的访问。更具体而言,有利的是,在具有与用户可以路由到和访问静态寻址的网页服务器处的网站内容相同的简单性、稳定性和可靠性的情况下,将动态寻址的移动计算设备(例如,移动电话、PDA、平板计算机等)用作网页客户端可通过IP网络访问的网页服务器。例如,随着PDA和智能电话技术的提高,用户在这些设备上存储越来越多的信息。这种增加涉及信息的数量及其类型的范围两方面。例如,类型可以包括但不限于:历史的和当前的物理位置、视频、音乐和其它多媒体文件、文字处理文档和联系列表、以及各种交互式游戏。然而,如对用户和对移动设备应用领域的普通技术人员是已知的,希望共享其移动设备上的信息的用户具有有限的选项集。例如,用户可以将所选择的文件以电子邮件方式发送给预期的接收者。然后,可以通过该移动设备到因特网的链接中的一个或多个(例如,通过到蜂窝无线网络的蜂窝无线上行链路,并然后通过其到因特网的接口,或者到本地接入点去往因特网的Wi-Fi链路),发送具有该附件的电子邮件。该电子邮件附件是共享文件的手段,然而,其具有很多的限制。一个这种限制是需要用户必须实际地占有该移动设备,另外,通常需要由用户进行直接操作,例如选择和粘贴文件,以及填写该电子邮件消息的地址列表。替代地,用户可以将从用户的移动设备选择的文件发布到该用户的社交网络页面(例如,或)。然而,使用这些社交网络作为共享用户的移动设备上的文件的手段具有很多与电子邮件共享手段相同的要求和限制。例如,每次用户决定共享只位于他或她的移动设备上的文件时,该用户必须实际地占有该设备。此外,还需要用户手动地执行文件的上传和发布。此外,社交网络可能对可以访问的文件的种类、以及人机界面机制施加了限制。移动设备用户共享设备上存储的文件的一种常规方法是:使用例如上面针对社交网络发布所描述的相同链接,将所选择的文件上传到“云”盘(诸如MobileMe或者Apple)。然而,该方法也需要每次用户希望共享文件时,该用户实际地占有该移动设备。动态寻址方案的存在是对通过IP网络从移动计算设备(诸如移动电话和无线PDA)访问内容的明显障碍。如先前所描述的,在诸如CDMA、UMTS、GPRS、Wi-Fi等之类的网络中,移动电话和无线PDA未被分配静态的、可路由的IP地址。相反,其地址是动态分配的,并且出于主要与网络的需求和设备的移动性和无线连接有关的任意数量的原因,可能以规则的或随机的时间而改变。由于在IP和专用网络中的许多复杂和专有系统,因此期望在这些网络之中或者跨越这些网络尝试访问和获取位于动态寻址的设备处的内容将需要相当大的费用、工程工时和设计复杂度、以及对诸如DNS服务器、客户网关和复杂的隧道化配置之类的专有系统的访问和修改。除了其它特征和益处以外,本发明描述了各种示例性实施例,其提供了用于将网页客户端路由到具有能够改变的分配的地址的设备的系统和方法。此外,除了其它另外的特征和益处以外,所公开的实施例还可以通过使用商业可得的系统,并且在这些商业可得的系统中进行针对性的和相对容易实现的配置,以帮助使费用、工程工时、设计复杂度和对访问专有系统的需要最小化。

技术实现要素:
本发明的示例性实施例针对用于访问具有分配的地址的设备的系统和方法,该方法包括:将所分配的地址存储在存储器位置中;以及在客户端本地代理服务器处接收对访问所述移动计算设备的请求。该请求包括:唯一地标识所述设备的设备标识符。响应于接收到对访问所述设备的所述请求,基于所述设备标识符识别所述设备的存储的地址,其中,所述客户端本地代理服务器充当建立所述请求的发送方和所存储的地址之间的数据路径的中介。所公开的系统有助于使用移动计算设备处的移动网页服务器软件,由此,发送方可以可靠地访问该移动网页服务器软件,即使该移动计算设备地址是动态的和可以改变的。所公开的实施例使用商业可得的组件(例如,移动网页服务器软件和网页客户端),针对某些组件进行有针对性的配置类型改变(例如,增加脚本、扩展等),来实现所公开的系统。附图说明给出附图以帮助描述所公开的实施例,提供附图只是用于示出这些实施例,而不是对其进行限制。图1是所公开的实施例的图;图2是示出在图1中示出的移动计算设备28、30和客户端本地代理服务器32、34中提供的方法的流程图;以及图3是由图1中所示的实施例所执行的操作步骤的特定示例。具体实施方式在下面的描述和示出本发明的具体实施例的相关附图中公开了本发明的方面。在不背离本发明的范围的情况下可以设计处替换的实施例。另外,本发明的公知的元件将不再详细描述或者将忽略掉,以避免模糊本发明的相关细节。本申请中使用的“示例性”一词意味着“用作例子、例证或说明”。本申请中被描述为“示例性”的任何实施例不必被解释为比其它实施例更优选或更具优势。类似的,术语“本发明的实施例”不要求本发明的所有实施例包括所讨论的特性、优势或操作模式。本文中所使用的术语仅是出于描述特定实施例的目的,而非旨在限制本发明的实施例。除非上下文清楚指明,否则,如本文中所使用的单数形式“一”、“一个”和“该”旨在也包括复数形式。还应当理解的是,当在本文中使用时,术语“包含”和/或“包括”指定所陈述的特征、整数、步骤、操作、要素和/或组件的存在,但是不排除存在或者添加一个或多个其它特征、整数、步骤、操作、要素、组件和/或其组。此外,在由例如计算设备的元件来执行的动作的顺序的方面描述了许多实施例。应该认识到的是,本申请中描述的各个动作可以由专用电路(例如,专用集成电路(ASIC))、由一个或多个处理器执行的程序指令、或其的组合来执行。另外,本申请中描述的这些动作的顺序可以认为完全体现在任何形式的计算机可读存储介质中,该存储介质具有存储在其中的一组相应的计算机指令,一旦执行指令则会使相关联的处理器执行本申请中所描述的功能。因此,本发明的各个方面可以用多种不同的形式来实现,所有形式都预期处于权利要求声明的主旨范围内。另外,对于本申请中描述的每个实施例,任何这种实施例的相应形式在本文中可以被描述为例如“逻辑单元,其配置为”执行所描述的动作。现转到相关操作环境的概述,所公开的实施例在常规的通信系统中运作,该常规的通信系统包括:跨越公共因特网和专用网络以及在公共因特网和专用网络中的消息/信息传输。TCP(传输控制协议)和IP(因特网协议)(统称为TCP/IP)是因特网的基本通信协议。TCP/IP通常称为“较低层”协议,这是由于其它所谓的“较高层”应用协议通常使用TCP/IP来到达因特网。这些高层应用协议包括万维网的超文本传输协议(HTTP)http://whatis.techtarget.com/definition/0,289893,sid9_gci214004,00.html、文件传输协议(FTP)、远程登陆(Telnet)(其使用户登录到远程计算机)、以及简单邮件传输协议(SMTP)。这些和其它协议通常与TCP/IP封装在一起作为“套件”。由于TCP/IP可以用作公共因特网和专用网络中的通信协议,因此实质上具有对公共因特网直接访问的所有计算机和其它类似设备使用TCP/IP程序来传送和交换消息/信息。TCP/IP作为两层协议进行操作。上层(TCP)管理将消息或文件装配成较小的分组,其中这些较小的分组通过因特网进行发送,并由将这些分组重组成原始消息的TCP层进行接收。下层(IP)对每一个分组的地址部分进行处理,使得每个分组到达正确的虚拟目的地。网络上的每一个网关计算机检查该地址,以确定将该消息转发到何处。即使来自相同消息的一些分组可能被彼此不同地进行路由,但在虚拟目的地处对所有的这些分组进行重组。较高层应用(例如,HTTP、FTP等)在客户端/服务器通信模型下使用TCP/IP,其中在该通信模型中,计算机用户(即,客户端)进行请求,并由网络中的另一个计算机(例如,服务器)提供服务(例如,发送网页页面)。TCP/IP通信主要是点对点的,其意味着每一个通信是从网络中的一个点(或者主机计算机)到网络中的另一个点(或者主机计算机)。TCP/IP和使用TCP/IP的较高层应用(例如,HTTP、FTP等)统一地称为“无状态”,这是由于将每一个客户端请求视为与任何之前的一个请求无关的新请求(与在呼叫持续期间内需要专用连接的普通电话会话不相同)。该无状态解放了网络路径,使得客户端和服务器可以连续地使用这些网络路径。TCP层其自身相对于单个消息而言不是无状态的,这是由于连接必须至少保持足够长的时间,以便接收到消息中的所有分组。在上面所描述的操作环境中,诸如PDA和移动智能电话之类的移动计算设备通常与与公共因特网相连接,作为访问、请求以及接收来自网页服务器的内容的网页客户端。然而,随着移动计算设备技术的提高,用户在这些设备上存储越来越多的信息,并且已变得期望于提供通过IP网络将网页客户端路由到移动计算设备的方式。除了移动智能电话、PDA、膝上型计算机和平板计算机之外,还存在通常不由人员用户物理地访问的其它移动计算设备。这种移动计算设备的示例包括跟踪设备、自动地打开或者关闭家中的加热器等的自动读表器和控制单元。与这些移动/远程计算设备的通信通常称为机器到机器(M2M),这是由于用于获取数据的接口通常是另一个远程机器。由于在IP网络中操作的移动/远程计算设备通常具有动态分配的地址(这些地址由于任意数量的原因而定期地或者随机地发生改变),因此通过公共因特网来路由到以及访问来自这种计算设备的内容的任何尝试都必须克服到动态分配的地址的客户端服务器因特网连接是不稳定的和不可靠的限制。除了其它特征以外,所公开的实施例通过提供可靠地将网页客户端路由到具有能够改变的动态分配的地址的移动计算设备(例如,移动智能电话、PDA、膝上型计算机、平板计算机、跟踪设备等)的中介路由系统和方法,以简单和经济有效的方式来解决上面所描述的限制。所公开的实施例可以通过使用商业可得的系统,并且通过对现有的软件过程进行针对性和相对容易实现的配置类型修改,以帮助使费用、工程工时和设计复杂度最小化。因此,所公开的中介路由系统和方法有助于允许访问和利用动态寻址的设备的内容和功能的各种有用系统的实现。例如,所公开的中介路由系统的实现向用户提供了到该用户的动态寻址的设备的可靠远程访问(服从于用户可配置的约束)。可以在不要求其它用户具有任何特殊的硬件或软件,而相反仅至多需要传统的网页浏览器(例如,Internet或)的情况下,实现这种远程访问。根据一个示例性实施例,所公开的中介路由系统和方法可以在通信系统中实现,其中在该通信系统中,专用IP网络中的移动计算设备通过到公共因特网的防火墙网络服务器无线地连接。该防火墙网络服务器执行针对专用IP网络的传统安全功能。对于所公开的实施例,以传统方式对防火墙网络服务器进行配置,以允许本文中描述的通信在公共因特网中的组件和专用IP网络中的组件之间进行。优选地,网络服务器包括可由希望访问移动计算设备的网页客户端访问的稳定且可靠地静态寻址的URL。网页客户端(其通常是常规的计算机(例如,PC、Mac或者另一平台)连接到公共因特网,并且具有用于通过HTTP协议作为客户端参与服务器会话的网页浏览器。网页客户端还包括客户端本地代理服务器,其可以与网页客户端封装在一起或与其分离。当客户端本地代理服务器与网页客户端封装在一起的情况下,单个设备(例如,PC、MAC或另一平台)封装上面描述的网页客户端功能和上面描述的客户端本地代理服务器功能两者。在以上任一场景下,客户端本地代理服务器包括代理服务器软件并连接到公共因特网。客户端本地代理服务器软件优选地是TCP/IP代理服务器软件,其利用因特网的基本通信协议。优选地,可以通过向代理服务器软件添加扩展、脚本等来容易地且相对廉价地对代理服务器软件的功能进行配置。例如,移动计算设备可以是具有处理器、通用操作软件、指令存储器和数据存储器的或移动计算设备具有能够改变的动态分配的地址。除了之前描述的通用操作软件之外,移动计算设备还包括常规的硬件和移动网页服务器软件(例如,),其允许移动计算设备承载HTML网站,并作为服务器经由客户端本地代理服务器参与同客户端网页浏览器的客户端服务器会话(一旦建立了该会话)。优选地,移动服务器软件是基本非专有的。这里使用术语“基本非专有”来描述:可以通过向移动网页服务器的软件增加扩展、脚本等,来容易地和相对廉价地配置移动网页服务器的功能。优选的,移动网页服务器软件还包括足够的功能,以允许网页客户端访问移动计算设备内容。在先前引用的临时申请和共同未决的美国专利申请中(即,2011年3月11日提交的、题目为“REMOTEMOBILEADMINISTRATIONANDLOGGINGUSINGHTTPPROTOCOL”的临时申请No.61/452,031,该临时申请已经转让给本申请的受让人,故明确地以引用方式将其并入本文;2012年1月18日提交的、题目为“REMOTEACCESSANDADMINISTRATIONOFDEVICECONTENTANDCONFIGURATIONUSINGHTTPPROTOCOL”的临时申请No.61/588,007,该临时申请已经转让给本申请的受让人,故明确地以引用方式将其并入本文;与本申请同时提交的、代理案卷号为No.103234的、题目为“REMOTEACCESSANDADMINISTRATIONOFDEVICECONTENTANDCONFIGURATIONUSINGHTTPPROTOCOL”的共同未决的美国专利申请,该申请已经转让给本申请的受让人,故明确地以引用方式将其并入本文),公开了移动计算设备的移动网页服务器软件和移动计算设备的通用操作软件之间的接口的另外细节。根据所公开的中介路由系统和方法,在上面所描述的通信系统的移动网页服务器软件和客户端本地代理服务器软件中实现下面的配置。所公开的实施例的特征在于:本申请所描述的配置不需要创建新的移动网页服务器软件或者新的客户端本地代理服务器软件。相反,通过应用于现有的移动网页服务器软件、以及应用于现有的代理服务器软件的常规扩展、脚本等,来实现该配置。移动网页服务器软件配置为生成、存储和发送设备标识数据(DID),DID向客户端本地代理服务器唯一地标识该移动计算设备在公共因特网上的虚拟位置。在操作中,DID是一对标识符,其中使用一个标识符(“检索关键字”)来发现另一个(“检索结果”)。因此,以最低限度而言,DID包括诸如设备的IP地址之类的地址数据(即,检索结果)连同设备标识符(即,检索关键字),对于其是智能电话的移动计算设备来说,设备标识符可以是十位数字的电话号码。因此,当移动计算设备是移动智能电话时,移动设备DID可以是该智能电话的十位数字的电话号码连同该移动设备的动态地址的当前版本。设备标识符的其它示例包括:“移动ID号”(MIN)、“国际移动用户标识”(MDN)、“国际移动设备标识”(IMEI)、或者对于共享移动网络的每一个移动计算设备来说是唯一的任何其它ID。在所公开的中介路由系统和方法下,移动计算设备配置为向客户端本地代理服务器注册其DID,并且当其DID的动态地址分量改变时,或者以预定的时间间隔,向客户端本地代理服务器发送其DID的更新。此外,根据所公开的中介路由系统和方法,客户端本地代理服务器功能配置为:接收并存储从移动计算设备接收到的DID,该DID具体地包括对移动计算设备DID任何更新。客户端本地代理服务器还配置为执行中介功能,凭此中介功能,使用存储在客户端本地代理服务器的DID,通过客户端本地代理服务器,将在该客户端本地代理服务器处接收的对访问移动计算设备的请求路由到当前的移动计算设备地址。通常,客户端本地代理服务器从网页客户端接收上面所描述的请求,其中该网页客户端优选的是常规网页浏览器(未示出)或者能够在通信系统上充当客户端服务器会话的客户端侧的任何硬件/软件组件。网页客户端优选地通过配置其网页浏览器使用客户端本地代理服务器从该网页客户端发送请求来到达客户端本地代理服务器。或者,客户端本地代理服务器可以被配置为包括:可以由希望访问该移动计算设备的网页客户端访问的静态寻址的URL。代理服务器URL获得任何请求,并自动地将其转发给客户端本地代理服务器(优选地是在用户认证之后等),并且客户端本地代理服务器使用所公开的实施例的机制,进一步将该请求转发给该移动计算设备。客户端本地代理服务器还配置为经由网页客户端用于HTML通信的并行或串行总线连接监听其URL。通常,当期望通信网络允许网页客户端进行针对其它网络服务的间接网络连接时,该通信网络采用代理服务器。网页客户端连接到该代理服务器,然后请求不同的服务器上的可用的连接、文件或者其它资源,其中在所公开的实施例中,该不同的服务器是移动计算设备。本申请所公开的客户端本地代理服务器优选地是能够在无需延长的工程工时的情况下进行配置(例如,通过向现有的代理服务器软件增加脚本、扩展等)。所公开的客户端本地代理服务器配置为:通过使用存储的DID来执行其中介连接功能,从而使用客户端本地代理服务器处所存储的当前DID,将在该客户端本地代理服务器处接收的对访问移动计算设备的请求中继到当前的移动计算设备地址。客户端本地代理服务器通过连接到该移动计算设备网页服务器或者通过从高速缓存中服务所请求的资源,来提供所请求的资源。在一些情况下,客户端本地代理服务器可以由于各种原因,改变网页客户端的请求或者服务器的响应。因此,所公开的实施例的客户端本地代理服务器充当从网页客户端到移动计算设备的请求的中介。客户端本地代理服务器包括通常不改变的至少一个静态地址。因此,客户端本地代理服务器硬件还包括能够由连接到公共因特网的另一设备(例如,网页客户端)可靠地访问的传统网页服务器主机设备的功能。如先前所描述的,客户端本地代理服务器包括代理服务器软件连同数据库,其中数据库可以是单独的设备或者与代理服务器硬件封装在一起。如先前所描述的,网页客户端优选的是常规网页浏览器(未示出),或者能够在通信系统上充当客户端服务器会话的客户端侧的任何硬件/软件组件。网页客户端可以由人员用户进行操作,或者其可以由使用HTTP协议(或者其它协议)来自动地访问HTTP(或者其它)服务器的自动工具/脚本/机器进行操作。这种自动工具通常称为“HTTP代理”。在图1中,通过方向箭头44和46来示出各种数据流路径,其中方向箭头42、44和46代表移动计算设备、网络防火墙服务器、客户端本地代理服务器、数据库和网页客户端之间的通信。现在将描述根据所公开的实施例的中介路由系统和方法的整体操作。为了更好地理解该中介路由系统和方法的操作,保持对三个IP地址的追踪是有用的。一个IP地址是移动计算设备的IP地址,该IP地址是动态分配的并且能够改变。第二个IP地址是防火墙服务器的IP地址,其提供到专用IP网络和移动计算设备的接入。优选地,专用网络的防火墙服务器的IP地址是可由希望访问移动设备的网页客户端可靠地访问的静态分配的IP地址。第三个IP地址是网页客户端处的客户端本地代理服务器功能的IP地址。该客户端本地代理服务器IP地址优选地是可由希望访问移动计算设备的网页客户端可靠地访问的静态分配的IP地址。继续所公开的中介路由系统和方法的整体操作,希望访问移动计算设备的网页客户端通过客户端本地代理服务器传送对作为客户端(优选地经由HTTP协议)参与同移动计算设备的客户端服务器会话的请求。客户端本地代理服务器功能优选地位于网页客户端本地。另外,远程网页客户端可以使用该远程网页客户端的网页浏览器和本地的客户端本地代理服务器IP地址来远程地访问客户端本地代理服务器功能。网页客户端的请求包括先前所描述的“设备标识符”,其允许客户端本地代理服务器唯一地标识特定的移动计算设备。例如,当移动计算设备是移动电话时,设备标识符可以至少包括该移动计算设备的唯一的十位数字电话号码。为了满足该请求,客户端本地代理服务器必须现在识别移动计算设备的虚拟位置。由于移动计算设备IP地址是动态,使得识别移动计算设备的虚拟位置变得更复杂,所以出于主要与该移动计算设备的移动性、无线连接及其通信网络的需求有关的多种原因,该虚拟位置易于在任何时刻发生改变。因此,根据所公开的中介路由系统和方法,对移动计算设备进行配置,使得当移动计算设备IP地址改变时,该移动计算设备经由专用网络防火墙服务器或经由一些其它通信路径,向客户端本地代理服务器功能发送其当前IP地址(即,先前所描述的设备地址)的更新连同其检索关键字(即,先前所描述的设备标识符)。替代地,移动计算设备可以无论DID的IP地址分量是否实际发生改变,以选择的时间间隔来发送其当前DID。在任意一种方法下,客户端本地代理服务器都接收、存储和维持该移动计算设备的当前IP地址为DID。在接收到参与客户端服务器会话的请求之后,客户端本地代理服务器以传统的方式将该请求与该客户端本地代理服务器所存储的DID进行比较。如果在该请求和存储的DID之间存在匹配(即,该请求的“检索关键字”与存储的DID的“键值”部分相匹配),则客户端本地代理服务器从所存储的DID中提取当前移动计算设备地址,并将针对客户端服务器会话的请求和当前移动计算设备IP地址转发给专用网络防火墙服务器IP地址。专用网络防火墙服务器使用该当前移动计算设备IP地址来定位移动计算设备,并将客户端本地代理服务器和网页客户端(该网页客户端是本地的或远程的)连接到该移动计算设备地址,从而打开客户端服务器会话。一旦建立客户端服务器会话,客户端本地代理服务器便使用传统代理中介路由技术,指导网页客户端和移动计算设备之间通过该客户端本地代理服务器和专用网络防火墙服务器的间接的客户端服务器会话。在常规的网络操作情况下,网络通常不应当改变移动计算设备的动态地址,只要上面描述的客户端服务器会话是活动的。如果由于一些原因,网络在客户端服务器会话期间改变了该移动计算设备动态地址,则必须通过网页客户端发送新请求,来发起客户端服务器会话的重新连接。然而,为了促进这种重新连接,当前移动计算设备DID在客户端本地代理服务器处是可用的,并且客户端本地代理服务器可以因此快速地对后续的重新连接请求进行反应。因此,所公开的实施例的中介路由系统和方法有助于实现多种有用的系统,以提供访问和使用动态寻址的设备的内容和功能。例如,在实现所公开的中介路由系统后,可以实现更广泛的系统,在其中,用户可以向潜在的无数量限制的其它用户(服从于用户可配置的约束)提供到该用户的动态寻址的移动计算设备(例如,移动智能电话、PDA、膝上型计算机、平板计算机等)的可靠远程访问。可以在不要求其它用户具有任何特殊的硬件或软件,而相反仅至多需要传统的网页浏览器(例如,Internet或)的情况下,实现这种远程访问。在根据示例性实施例的一个示例过程中,可以以常规方式来配置移动计算设备上承载的移动网页,以使得观看该移动网页的浏览器可访问特定的内容(例如,一组在假期拍摄的图片)。例如,该移动网页可以包括点击域,该点击域具有根据常规的HTML编码的文本或图形(其呈现为“Rob的海滩假期,2010”)。连接到公共因特网、希望访问移动计算设备的该“Rob的海滩假期,2010”内容的PC或者移动计算设备处的用户或者网页客户端向他/她的网页浏览器域中键入客户端本地代理服务器URL,并点击“输入”或“发送”。客户端本地代理服务器将网页客户端带到特定的网页页面,其中在该网页处,网页客户端输入该用户所需要的任何授权数据,并在授权之后,通过提供例如与该移动计算设备相关联的十位数字电话号码,来请求访问该移动计算设备。按照上面所描述的中介路由系统和方法,客户端本地代理服务器使用十位数字电话号码来搜索和获取该客户端本地代理服务器处当前存储的该移动计算设备IP地址,然后通过客户端本地URL将该网页客户端路由到与该移动计算设备的间接或虚拟通信。现在,网页客户端可以通过移动网页“Rob的海滩假期,2010”,访问存储在该移动计算设备上的照片。从上面的概述和示例中,除了其它的特征和益处以外,可以看到的是,所公开的中介路由系统和方法的实施例可以通过使用商业可得和基本非专有的组件(例如,移动计算设备、网页客户端、网页浏览器等),并且对这些组件进行针对性和相对容易实现的配置(例如,如上所述进行配置的移动计算设备和代理服务器功能)来实现该中介路由系统和方法,以帮助使费用、工程工时、设计复杂度和访问专有系统的需求最小化。现转到所公开实施例的中介路由系统和方法的更详细描述,图1示出了通信系统20,其中通信系统20包括:通过防火墙服务器31与公共因特网24进行通信的专用IP网络22。防火墙服务器31为专用IP网络22提供传统的安全功能。对于所公开的实施例,防火墙服务器31以传统的方式进行配置,以允许本文所描述的通信在公共因特网24中的组件和专用IP网络22中的组件之间进行。防火墙服务器31优选地具有不改变的静态IP地址。移动计算设备28可以是蜂窝电话、手持式PDA、平板电脑、膝上型计算机、跟踪设备等,并且可以无线地和/或通过硬线或电缆与系统20进行通信。移动计算设备28包括足够的功能,以便一旦在网页客户端40和移动计算设备28之间建立了客户端服务器会话,允许网页客户端40远程地访问移动计算设备的内容和特征(例如,从移动计算设备28获取图像、图片和其它信息)。这种设备功能的一个示例包括向移动计算设备28提供传统主机设备和因特网网站的功能的移动计算设备网页服务器软件30。通常,在网页服务器硬件上承载网站,并且网页服务器软件位于该网页服务器硬件上。网页服务器软件提供外部客户端网页浏览器从网页服务器硬件获取图像、图片和其它信息的机制。移动计算设备28的地址可以是动态分配的。虽然图1示出了单个专用IP网络22,但所公开的实施例也可以在具有若干专用IP网络(例如,等)的通信系统中实现,其中这些专用IP网络与公共因特网24相连接。此外,虽然示出了单个的移动计算设备28,但应当理解的是,每一个专用IP网络22包括众多的移动计算设备。移动计算设备28的设备标识符(即,DID的“搜索关键字”分量)是全球唯一的,并且移动计算设备28的IP地址(即,DID的“搜索结果”分量)在专用IP网络22中是全球唯一的。还可以在所有组件(移动计算设备、客户端本地代理服务器、网页客户端等)都位于公共因特网24内的通信系统中实现所公开的实施例。通信系统20还包括可以在网页客户端服务器40本地实现的客户端本地代理服务器功能32。客户端本地代理服务器32包括代理服务器软件34和数据库36。客户端本地代理服务器32和客户端本地代理服务器软件34可以与网页客户端40封装在一起,或者可以作为具有网页客户端40和客户端本地代理服务器32、34之间的本地通信路径42的单独设备来实现。数据库36可以与客户端本地代理服务器32封装在一起,或者可以与客户端本地代理服务器32分离。优选地,客户端本地代理服务器32具有通常不改变的静态地址。远程网页客户端41可以使用其网页浏览器来访问其静态地址处的客户端本地代理服务器32,由通信路径42a所图示的。因此,客户端本地代理服务器32具有常规的服务器主机设备的功能,其可以由连接到公共因特网24的另一个设备(例如,网页客户端40或远程网页客户端41)进行可靠地接入。此外,客户端本地代理服务器32提供传统代理服务器的功能。通常,代理服务器允许客户端进行间接网络连接,以获得其它网络服务。客户端连接到代理服务器,然后请求不同的服务器上的可用的连接、文件或者其它资源。代理服务器通过连接到指定的服务器来提供资源,或者从高速缓存中服务所请求的资源。在一些情况下,代理服务器可以由于各种原因,改变客户端的请求或者服务器的响应。网页客户端40优选的是常规网页浏览器(未示出),或者能够在通信系统20上充当客户端服务器会话的客户端侧的任何硬件/软件组件。网页客户端40可以由人员用户进行操作,或者其可以由使用HTTP协议(或者其它协议)来自动地访问HTTP(或者其它)服务器的自动工具/脚本/机器进行操作。这种自动工具通常称为“HTTP代理”。在图1中,通过方向箭头42、44和46来示出各种数据流路径,其中方向箭头42、44和46代表移动计算设备28、防火墙服务器31、客户端本地代理服务器32、数据库36、网页客户端40和远程网页客户端41之间的通信。所公开的实施例的系统和方法可靠地打开网页客户端40(或远程网页客户端41)和具有动态分配的地址的移动计算设备(例如,移动计算设备28)之间的数据路径。所公开的系统和方法的一个重要方面在于:许多组件(例如,移动计算设备、移动网页服务器软件、数据库、网页客户端浏览器等)是商业可得的和基本非专有的物品。所公开的实施例需要对某些配置类型改变来选择组件,并且在图2和图3中图示了这些配置的示例(例如,方法50、70)。然而,所公开的配置改变所提供的增加的功能是针对性的,其可以通过已知的设计技术(例如,向现有的软件增加扩展、脚本等)来实现,这些都在相关领域的普通技术人员的能力范围之内。根据所公开的实施例,移动计算设备网页服务器软件30配置为包括:图2中的移动计算设备方法50所示出的功能,其中通过该功能,移动计算设备28向客户端本地代理服务器硬件32传输DID(先前所描述的“设备标识数据”),其中该DID包括该移动计算设备的当前IP地址和设备标识符。客户端本地代理服务器硬件32包括客户端本地代理服务器软件34,其配置为提供客户端本地代理服务器方法70所示出的功能(其也在图3中示出),其中通过该功能,客户端本地代理服务器硬件32定期地从移动计算设备28接收更新的DID,其包括该移动计算设备的IP地址。客户端本地代理服务器硬件32将移动计算设备28的当前DID存储在数据库36中。如先前所描述的,DID还包括设备标识符(或者“检索关键字”),其可以是容易记忆和键入的便利标识符(例如,“johndoephone”或者“555-123-4567”),其功能类似于网站域名。由于客户端本地代理服务器32在公共因特网24中的网页客户端40和专用IP网络22中的移动计算设备28(以及其它专用IP网络中的其它移动计算设备-未示出)之间交互,因此该设备标识符是全球唯一的。客户端本地代理服务器32包括可以从网页客户端40或远程网页客户端41接收对访问设备28的请求(通常经由网页客户端浏览器)的URL(未示出)。客户端本地代理服务器32可以与网页客户端40封装在一起,或者可以位于网页客户端40本地,使得客户端本地代理服务器32经由本地数据通信路径42(其可以是有线的或无线的)与网页客户端40进行通信。另外,客户端本地代理服务器32具有静态地址,其允许远程网页客户端41建立到客户端本地代理服务器的可靠因特网连接。现转到图2,该图示出了用于示出移动计算设备方法50和客户端本地代理服务器方法70的操作和交互的流程图。方法50、70可以直接用硬件、由处理器执行的软件模块(例如,在脚本解释器或者虚拟机中运行的脚本)、或者其任意组合来体现。方法50由移动计算设备28中的移动计算设备网页服务器软件30来实现,方法70由客户端本地代理服务器32中的客户端本地代理服务器软件34来实现。如图2中所示,在方法50的方框52处,移动计算设备28以常规的方式从图1中所示的通信系统20里的网络实体接收设备地址(DA)。例如,如果系统20包括CDMA网络,则该DA可以是分组数据服务节点(PDSN)(未示出)分配的设备IP地址。方法50的方框54生成DID,其包括用于该设备的设备地址(DA)和唯一设备标识符(DI)。该唯一设备标识符(先前描述成“检索关键字”)可以是容易记忆和键入的便利标识符(例如,“johndoephone”或者“555-123-4567”),其功能类似于网站域名。方框56通过通信路径58向客户端本地代理服务器32发送DID。图2中的通信路径58是从移动计算设备28、30向客户端本地代理服务器32、34传送DID的多种方式的虚拟表示。例如,可以通过图1中所示的数据流路径44所建立的通信链路,来实现通信路径58。或者,可以通过使移动计算设备运行小型“自动”网页客户端,使用该自动化网页客户端来向客户端本地代理服务器传输DID,来实现通信路径58。该自动化网页客户端可以浏览客户端本地代理服务器中的指定的网页,其中该网页包括要求该移动计算设备实现“请提交你的DID,按提交键”的形式。该自动化网页客户端“填写”该表格,并按下提交。然后,客户端本地代理服务器接收DID,并对其进行存储。方法50在判断框60,查询移动计算设备28、30是否接收到更新的设备地址。如果方法50在判断框60处确定没有接收到新的设备地址,则该方法返回到方框60的输入,重复该查询。当方法50在判断框60确定接收到新的设备地址,则该方法返回到方框54的输入,生成包括更新的设备地址的新DID,通过通信路径58向客户端本地代理服务器32、34发送该更新的DID。可以用多种方式来触发判断框60,例如,检测该DA是否实际发生改变,或者基于定期地更新DID和向客户端本地代理服务器32、34发送该DID的定时器功能(即使该DID的DA分量实际没有发生改变)。现转到客户端本地代理服务器方法70,方法70包括在标题“存储DID”和“定位和转发”下面,在图2中所标识的两个主要组成部分。在方法70的存储DID组成部分中,方框72通过通信路径58从多个移动计算设备接收当前和更新的DID(其包括来自移动计算设备28的DID)。在方框72所接收的DID包括:针对与客户端本地代理服务器32、34进行通信的各个移动计算设备中的每一个的当前和更新的地址(DA)以及唯一设备标识符(DI)。方框74将所接收的DID存储在数据库36中,然后在方框76等待接收任何DID更新。判断框78检查判断是否接收到更新的DID。如果没有接收到更新的DID,则方法70返回到方框76的输入,等待DID更新。如果在判断框78,接收到更新的DID,则方法70返回到方框74的输入,将所接收的更新的DID存储在数据库36中。现转到方法70的“定位和转发”部分,客户端本地代理服务器32、34包括“开始”或者“主页”网页(未示出),这二者实现成用于(通常通过网页客户端的浏览器)从网页客户端接收请求以访问移动计算设备的虚拟位置或者URL。客户端本地代理服务器开始页面具有静态地址,其允许网页客户端40可靠地和始终地建立去往该页面的因特网连接。方法70在判断框80处评估客户端本地代理服务器开始页面是否接收到用于访问移动计算设备的请求。如果没有接收到请求,则判断框80返回到其输入,重复该查询。如果在判断框80,接收到用于访问移动计算设备的请求,则方框82根据所公开的实施例,从该请求中提取设备标识符,搜索数据库36,将所提取的设备标识符与客户端本地代理服务器32(通过数据库36)所存储的DID进行比较。方法70在判断框84评估所提取的设备标识符是否与存储的DID条目相匹配。如果发现不匹配,则方框86生成失败报告,返回到判断框80的输入。如果在判断框84,所提取的设备标识符与存储的DID条目匹配,则方框88使用所匹配的DID的设备地址分量,来打开从请求方(例如,网页客户端40或远程网页客户端41)通过防火墙服务器31到移动计算设备网页服务器28、30的通信路径。作为中介,客户端本地代理服务器32将请求从客户端本地代理服务器URL“开始”或“主”页面的静态地址中继移动计算设备28的当前存储的地址。因此,方法50和70一起工作,以确保专用IP网络22中的移动计算设备(例如,移动计算设备28)的每一个分配的地址的当前版本可在数据库36处获得。在下面所公开的实施例,以新颖的方式应用方框88处的中介操作,并且多种方式来进行实现,其包括但不限于下面的情形:a、客户端本地代理服务器可以“照原样”传送该请求(因此其是“透明”代理)。b、客户端本地代理服务器可以根据该请求的内容来转换该请求:例如,从“my_long_url_name.html”转换成“p12.htm”。这种转换可能需要对答复内容进行进一步的编辑。c、客户端本地代理服务器可以根据请求的内容,对其进行过滤:例如,允许针对“index.html”的请求,但拒绝针对“data.txt”的请求。d、客户端本地代理服务器可以根据请求的内容,对其进行路由:例如,向不同的终端网页服务器发送这些请求,而不是必须向移动网页服务器发送。这使得该请求呈现为仅仅从移动网页服务器答复,而实际上其是从几个源答复的。使用该方法的益处包括:(i)低水平网络使用:不是特定于移动台的数据或者不频繁改变的数据,可以存储在任何网页服务器处,并且无需使用移动带宽就可获取(例如,图片和客户端侧脚本)。(ii)存储历史或离线数据:可以将一些数据从移动台存储器移动到网页服务器(例如,旧的记录)。当该数据被请求时,可以从离线服务器而不是该移动网页服务器获取该数据。此外,即使移动计算设备被关闭,或者没有位于网络覆盖范围之内,也可以获得这些记录。图3是图1中所示的实施例执行的操作步骤的更详细示例。在该示例中,客户端本地代理服务器是TCP/IP代理服务器。将图3中所示出的操作步骤编号为1到15,并进行如下描述。步骤1:向移动设备分配IP地址。这在移动设备加电之后,在根据具体的网络的需求所确定的各个时间进行执行。因此,IP地址可能随着时间发生改变。在图3中,将该IP地址表示成“1.2.3.4”。这不是实际的IP地址,其在该示例中只用于说明目的。虽然本申请所公开的示例使用IPv4地址格式,但所公开的实施例也可以应用于其它地址方案(例如,IPv6)。步骤2:移动设备实现图2中所示出的方法70,以向客户端本地TCP/IP代理服务器发送该移动设备的DID(先前所描述的“设备标识数据”)的更新。在该示例中,移动设备DID包括移动ID(先前所描述的“设备标识符”)和新IP地址。可以用多种方式来实现步骤2。例如,移动设备可以使用HTTP协议与客户端本地TCP/IP代理服务器进行通信,并因此使用HTTP“POST”或“GET”方法来提交该信息。使用网页服务器方脚本的客户端本地TCP/IP代理服务器将该信息存储在数据库(DB)中。或者,移动设备可以使用基于IP通信的专有协议,与DB进行通信。步骤3:公共因特网用户激活网页浏览器,并键入客户端本地TCP/IP代理服务器的“代理端口”的端口地址(例如,““http://www.service.com”),连同移动ID(例如,“5551231234”),并且点击“输入”。步骤4:客户端本地TCP/IP代理服务器(在网页浏览器之中、之下或相关联地运行并且监听代理端口)检测用户的输入。应当注意的是,在客户端本地TCP/IP代理服务器与网页客户端封装在一起的情况下,可以安装代理服务器的功能,使得网页浏览器自身不需要修改,并且不需要知道TCP/IP代理服务器是本地的。步骤5:建立网页浏览器和TCP/IP代理服务器之间的“连接”。步骤6:网页浏览器向TCP/IP代理服务器“发送”HTTPGET请求。客户端本地TCP/IP代理服务器从该HTTPGET请求中提取移动ID,并使用其来查询数据库,并将该移动ID转换成移动IP地址。步骤7、8、9和10:客户端本地代理服务器向移动网页服务器发送HTTPGET请求,并且所请求的内容被从移动网页服务器发送到客户端本地TCP/IP代理服务器。这可以用一些传统方式来实现:a、客户端本地代理服务器可以“照原样”传送该请求:从而作为“透明”代理进行操作。b、客户端本地代理服务器可以根据该请求的内容来转换该请求:例如,从“my_long_url_name.html”转换成“p12.htm”。这种转换可能需要对答复内容进行进一步的编辑。c、客户端本地代理服务器可以根据请求的内容,对其进行过滤:例如,允许针对“index.html”的请求,但拒绝针对“data.txt”的请求。d、客户端本地代理服务器可以根据请求的内容,对其进行路由:例如,向不同的终端网页服务器发送这些请求,而不是必须向移动网页服务器发送。这使得该请求呈现为仅仅从移动网页服务器答复,而实际上是从若干源对其进行答复的。使用这种方式的益处包括:(i)低水平网络使用:不是特定于移动台的数据或者不频繁改变的数据,可以存储在任何网页服务器处,并且无需使用移动带宽就可获取(例如,图片和客户端侧脚本)。(ii)存储历史或离线数据:可以将一些数据从移动台存储器移动到网页服务器(例如,旧的记录)。当该数据被请求时,可以从离线服务器而不是该移动网页服务器获取该数据。此外,即使移动设备被关闭,或者没有位于网络覆盖范围之内,也可以获得这些记录。步骤11:TCP/IP代理服务器将请求的内容(“照原样”或者改变的)发送回网页客户端。步骤12、13、14和15:网页客户端发出另一个HTTP请求,其中TCP/IP代理服务器将该请求传送给移动网页服务器。然后,将来自移动网页服务器的答复传送给网页客户端。应当注意,上面所描述的步骤,尤其是步骤2和步骤7到10允许用户以无缝的方式联系移动网页服务器,其中该移动网页服务器具有可动态改变的IP地址。网页客户端不需要特殊的定制(除了代理服务器功能以外),用户体验是“正常的”,这是由于用户与移动网页服务器的交互,呈现为与静态网站的典型体验没有区别。虽然前述的公开内容示出了本发明的示例性实施例,但应当注意的是,在不脱离如所附权利要求书所规定的本发明保护范围的基础上,可以对本申请做出各种改变和修改。例如,根据本申请所述的本发明的实施例的方法权利要求的功能、步骤和/或动作,不需要以任何特定的顺序执行。此外,虽然用单数形式描述或主张了本发明的组成元素,但除非明确说明限于单数,否则复数形式是可以预期的。另外,本申请所描述的“用户”包括:人工操作者和使用HTTP协议(或其它协议)来自动地访问HTTP(或其它)服务器的自动工具/脚本/机器。这些自动工具通常称为“HTTP代理”。以最广泛的意义使用术语“IP地址”,来描述公共因特网如何识别主机设备。因此,术语IP地址包括:在因特网上识别设备的当前已知方法、以及可以在未来开发和/或使用的设备识别方法。此外,虽然有益的是包括容易记住的具有DID的设备标识符,但并不需要该设备地址与设备标识符相结合。当移动计算设备28的IP地址被分配或者改变时,移动计算设备28更新客户端本地代理服务器硬件32。替代地,当分配或者改变了设备地址时,分配该地址的网络实体可以更新客户端本地代理服务器32。图3中的特定示例使用移动ID编号(例如,“555-123-1234”)作为设备标识符。可以使用具有两个(或者更多)层次结构的设备ID的更复杂方案。使用系统中的数据库(例如,数据库36),可以实现下面的方案:1、移动计算设备使用其地址和设备标识符(其可以是“移动ID号”(MIN)、“国际移动用户标识”(MDN)或者“国际移动设备标识”(IMEI);对于共享移动网络的移动设备来说唯一的任何其它ID)来更新数据库;2、当用户使用任何类型的ID(例如,“用户名”和“密码”)连接到客户端本地代理服务器或者URL时,可以将该ID转换成该移动计算设备的IP地址。此外,本领域普通技术人员应当理解,信息和信号可以使用多种不同的技术和方法中的任意一种来表示。例如,在贯穿上面的描述中提及的数据、指令、命令、信息、信号、比特、符号和码片可以用电压、电流、电磁波、磁场或粒子、光场或粒子或者其任意组合来表示。此外,相关领域的普通技术人员还应当明白,结合本申请所公开实施例描述的各种示例性的逻辑框、模块、电路、方法和算法步骤均可以实现成电子硬件、计算机软件或二者的组合。为了清楚地表示硬件和软件之间的这种可交换性,上面对各种示例性的部件、框、模块、电路和步骤均围绕其功能进行了总体描述。至于这种功能是实现成硬件还是实现成软件,取决于特定的应用和对整个系统所施加的设计约束条件。熟练的技术人员可以针对每个特定应用,以变通的方式实现所描述的功能,但是,这种实现决策不应解释为背离本发明的保护范围。结合本申请所公开实施例描述的方法、序列或者算法可直接体现为硬件、由处理器执行的软件模块或二者的组合。软件模块可以位于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域已知的任何其它形式的存储介质中。可以将一种示例性的存储介质连接至处理器,从而使该处理器能够从该存储介质读取信息,并且可向该存储介质写入信息。或者,存储介质也可以是处理器的组成部分。因此,本发明的实施例可以包括计算机可读介质,该计算机可读介质体现用于执行所公开和主张的实施例的方法。因此,本发明并不限于所示出的示例,用于执行本申请所描述的功能的任何单元也包括在本发明的实施例。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1