CN1420663A - 用于在网络上传送数据的方法和装置 - Google Patents
用于在网络上传送数据的方法和装置 Download PDFInfo
- Publication number
- CN1420663A CN1420663A CN02143179A CN02143179A CN1420663A CN 1420663 A CN1420663 A CN 1420663A CN 02143179 A CN02143179 A CN 02143179A CN 02143179 A CN02143179 A CN 02143179A CN 1420663 A CN1420663 A CN 1420663A
- Authority
- CN
- China
- Prior art keywords
- data
- static
- file
- request
- asked
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/561—Adding application-functional data or data for application control, e.g. adding metadata
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/564—Enhancement of application control based on intercepted application data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Library & Information Science (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
在网络上从一源节点向一请求的客户机传送一文件的方法,包括:在中间节点接收对该文件的请求;从该中间节点向该客户机提供该文件的时间不敏感部分;以及从该源节点向该客户机提供该文件的时间敏感部分。
Description
发明的简单说明相关申请的交叉参考
本申请是Kgo在2001年12月19日申请的美国专利申请No.10/035,140和2001年12月14申请的的美国临时专利申请No.60/322,595的部分继续申请并要求它们的优先权,在此合并作为参考。
发明领域
本发明涉及网络数据传送系统以及更准确地说涉及网络上文件传送的方法。
发明背景
自从1990年以来互联网已经有很大的扩展并且由于更多用户和更新用途每天添加到该全世界的系统中,互联网通信量呈指数增长。简单的文本已经由包括音乐、图片、动画以及视频剪辑的复杂的网页代替。网络诸如互联网上增长的通信量连同较大的文件导致日益增长的更大的通信量拥挤以及更长的访问和下载时间。
图1的现有技术说明传统的互联网系统。参考图1,许多用户“用户1”12至“用户N”14通过互联网业务提供商(ISP)均连接到互联网。典型的私人用户如“用户1“可通过IPS服务器16或14连接到互联网。商业用户或通过他们的内部网连接到互联网并经过防火墙和/或代理服务器。换句话说,属于专用ISPs如美国在线或Prodigy的用户通过网关或可能地通过将他们的内部网连接到互联网的代理服务器而直接从他们的用户请求。在每种情况中用户请求一网页。请求13在到达它的最终目的地之前经过各种中间的服务器/路由器24和28以及诸如由32和36表示的各种链接(卫星链路)。通常,最终目的地是网络服务器40或换句话说是主机请求的网页的网络服务器场,在这里网络服务器或网络服务器场通过向用户发送请求的网页和/或相应的信息来响应用户的请求。
互联网最初是基于包交换技术。在包交换技术中,大文件被分解成较小的信息包。每个信息包包括包含信息,如信息包的目的地,的报头、源以及标识号。每个信息包经不同路由被传送,不受其他信息包的支配。一旦所有信息包到达目的地,基于报头内的有序信息重新组装它们。
网络服务器40的应答将基于系统中拥挤的程度和各种路由的参数值经不同路径被路由。使用开放式最短路径优先(OSPF)协议较新的路由器能检验多种参数如路程段的数量、延迟、容量、吞吐量以及连接路由器的电路的可靠性,以便选择发送数据的路径。来自网络服务器40的应答必须通过互联网经服务器/路由器26和30以及可能的链接34和38被导向到用于每个用户12和14的ISP服务器18和22中。
在某些情况下,当专用网络通过代理服务器被连接到互联网时,代理服务器18和22至少临时地存储大多数请求的网页以便避免使用互联网来从网络服务器40获得这些网页。
图2所示的现有技术是在互联网上传送一个文件的过程的流程图。在块44,用户(客户)可通过ISP或其他中间服务器向网络服务器传送对数据的请求。接收用户请求的现有技术的网络服务器通过打包并经互联网向请求的客户传送请求的数据来处理数据要求。在互联网上发生的大多数数据传送是基于TCP/IP协议。驻留数据的网络服务器通过打包数据并经各种路径向请求的客户传送信息包来处理该请求。在块46,客户机接收与请求的数据对应的打包的数据。在块48,客户机执行序列检验以查看信息包按顺序被接收。在块50,如果信息包是按顺序的,接收机传送对每一个接收的信息包的确认。在块49中,如果信息包没有顺序,抛弃它们并对从第一个失序信息包开始的信息包不传送确认。一段时间后,未从接收服务器收到任何确认,传送请求数据的网络服务器重新发送从未收到确认的第一个信息包开始的许多信息包的重新传送。在块51中,客户机检验是否有更多的数据包传送。如果要接收另外的数据,重复块46-51的过程。在块52中,如果没有另外的数据要接收,客户机重组这些信息包以重构请求的数据。
现有技术图3是在TCP/IP协议下信息包的表示法。在互联网上传送的数据58在传送前根据IP协议被封装。报头和报尾被添加到提供有关信息包的内容的信息的每一个数据包。在报头和报尾中的数据58的封装形成一帧并与在邮寄前在信封中写一字母相似。然而,就帧来说,信息包58与用于路由该信息包必不可少的信息如起始IP地址以及目的地IP地址一起被封装。另外,其他的数据被包含在与各种参数如包长度、用于验证在传送过程中发生的错误的检验和以及一旦信息包到达它们的目的地,对重组来说必不可少的信息包的顺序有关的报头或报尾中。
再参考图3,报头54基于网络层互联网协议(IP)层被添加到提供信息必不可少的数据包中。同样,传输控制层协议TCP要求在传输前向信息包增加报头和/或报尾。IP层仅处理信息包58的路由选择但它不保证任何信息包的传送并且当出现问题时简单地删除所有数据包。传输控制层协议(TCP)提供大量服务给TCP层上的那些层。更重要的是,TCP层提供允许一个应用程序了解在互联网上传送的信息包在目的地被全部接收的面向连接和可靠的协议。TCP接收来自目的地确认信息包的接收的消息。另外,TCP与上层应用程序和它下面的网络系统如IP层进行通信。在现有技术图3中,在传输前,另外的报头和报尾数据56通过TCP层被添加到信息包中。
现有技术图4是表示客户和服务器间的网页层交互。客户计算机60可运行网络浏览器62如Microsoft互联网Explorer或NetscapeNavigator。通常,网络浏览器集合和显示从服务器66传送给客户60的有关由客户计算机60发布的请求的数据。客户计算机60连接到需要的使用通用资源定位器(URL)的充当在定位服务器66中有用的地址的服务器66。所使用的最通用的一个协议是在万维网(WWW)上使用的超文本传送协议(HTTP)。其他诸如文件传送协议(FTP)的URL协议被用来在网络如互联网上检索文件。在图4的例子中,使用HTTP URL,客户计算机60向服务器66发送对超文本链接标示语言(HTML0文件的请求,即HTML网页64。一旦网络浏览器62开始接收用于包含HTML网页64的文件的信息包,便开始组合该网页并在客户计算机的显示器上显示它。另外的插件程序65可与网络浏览器62一起操作来执行基本网络浏览器不能执行的操作。
服务器66可使用诸如MicrosoftTM IIS网络服务器68作为在Windows NT服务器68操作系统上运行的网络服务器。客户所请求的HTML文件64可包括可下载到客户机并使用特殊插件程序65运行的用户计算机上的静态HTML页72和诸如动画74的特殊程序或电影。
用于降低网络拥挤问题的一个方法是强力方法。更快的通信设备和更好的传输介质如同轴光缆和光线路已经被用来增加网络系统的带宽和效率。然而,用更高带宽和效率更高的系统代替现有的电缆和网络设备是很昂贵的。另外,网络通信量的增加率超过技术改进所带来的效率。
标准网络通信模式的另一局限是每个客户要求自已的带宽。因此,所要求的带宽总量直接与用户数量成正比。在一些本地服务器如代理服务器中的高速缓冲存储器被用来提高带宽限制但使用高速缓冲存储器并不能解决问题因为高速缓冲存储器也是有限的。另外,高速缓存服务器和客户间的带宽限制以及服务器容量带来影响通信网络的性能的另一限制。
因此,需要提高能提高网络效率并释放可用带宽的一系统,而没有昂贵的硬件改进。
发明概述
简单地说,本发明的一个方面包含对在网络中传送和接收数据的一个系统的操作方法,包括:通过将与每个部分对应的至少一个期满参数与一组设置阀值进行比较来将一个文件分为它的动态数据部分和静态数据部分,从智能客户机发送对数据的请求,通过智能服务器接收请求的数据,将请求的数据的至少该动态数据部分发送给智能客户机,以及通过智能客户机经重组请求的数据的静态部分和动态部分来重建请求的数据。
本发明的另一方面包含将数据分解成静态和动态部分的方法,包括为分开静态和动态数据部分设置一个阀值,获得用于数据的每个部分的期满参数,将每个期满参数与阀值比较,将具有低于阀值的期满值的数据识别为动态部分以及将具有高于阀值的期满值的数据识别为静态部分。
本发明的另一方面包含从智能文件服务器向客户发送请求的数据的一种方法,包括:接收来自客户的数据请求,该数据包括静态数据部分和动态数据部分,确定客户机是否智能的,创建包含静态数据部分的静态数据包和包含动态数据部分的分开的动态数据包以及向智能客户机发送静态数据部分和动态数据。
本发明的另一方面包含用于处理从智能服务器接收的数据的方法,包括:在网络上从智能客户机向智能服务器发送数据请求,分别接收静态数据包和动态数据包,由其静态数据包和动态数据包重构请求的数据。
本发明的另一方面包含创建智能协议数据包的方法,包括识别该智能数据协议的识别信息。
本发明的另一方面包含用于在网络上传送数据的方法,包括:由经网络连接提供商系统连接到网络上的客户机自连接到网络上的服务器请求数据,由提供网络连接的服务器获取数据请求,为出现的与请求的数据相关的第一保存数据检验与网络连接提供者相关的高速缓冲存储器,发送在高速缓冲存储器上存储的静态数据,对未在高速缓冲存储器上存储的所有数据向服务器上发送一个请求,向网络连接提供商传送未在高速缓冲存储器上存储的所有数据,向客户机传送所有未在高速缓冲存储器上存储的数据以及由静态数据和动态数据重构所请求的数据。
附图的简单说明
现有技术图1描述传统的网络互联网系统;
现有技术图2是用于在互联网上传送一个文件的过程的流程图;
现有技术图3表示在TCP/IP协议下的一个信息包;
现有技术图4表示客户和服务器间网页层交互;
图5是根据本发明的实施例的数据传送系统的示意图;
图6是新的数据传送系统的实施例的操作的流程图;
图7是根据本发明的实施例的一个智能服务器;
图8是智能服务器的一个实施例的操作的流程图;
图9是智能ISP服务器的一个实施例的示意图;
图10是智能ISP服务器的一个实施例的操作的流程图;
图11是智能客户机的一个实施例的示意图;
图12是智能客户机的一个实施例的操作的流程图;
图13说明典型文件的静态和动态数据内容;
图14是根据本发明的一个实施例的用于将数据文件划分为它的静态和动态部分的过程的流程图;
图15说明根据本发明的一个实施例的一个数据包;
图16是基于本发明的一个实施例的系统的操作的流程图;以及
图17描述本发明的一个实施例的简化的框图。
本发明的详细说明
图5是根据本发明的一个实施例的数据传送系统79的说明。数据传送系统79包括传统客户机A80、一改进的客户机B78、一ISP服务器82、一公众网络84、一服务器86、一网关94、一服务器92以及一改进的客户机90。客户机A78和客户机B80通过互联网服务提供服务器82和网络84向具有所请求的数据88的服务器86发送数据请求。客户机N90可是专用网络92的一部分。客户机N90可使用专用网络92和公众网络84来向服务器86发送其文件请求。专用网络92可连接到公众网络84并通过防火墙和/或代理服务器94来保护它。
客户A78可包括一种新的技术增强的浏览器也称为智能浏览器。智能浏览器客户机A78能接收和处理基于新的协议被分解的信息包。客户机B80可具有旧技术的浏览器。客户机B80必须接收基于旧协议的信息包以便处理和重组所接收的数据。智能ISP服务器82也可是一种新的技术增强的服务器也称为一种智能ISP服务器,能接收、处理和传送基于新协议的信息包。另外,智能ISP服务器82也包括可被用来存储大多数请求的数据文件的静态数据部分的高速缓冲存储器83。在本发明的一个实施例中,当智能ISP服务器82接收由客户B80产生的数据请求时,它将该请求向下传到可驻留在同样的物理机或换句话说驻留在一个不同的机器上的旧技术ISP服务器。
这里所使用的术语“智能”机如智能服务器或智能ISP或智能客户机指能处理被划分成它的动态和静态数据部分的数据文件的机器。如在此所定义的,“动态”内容是时间敏感&/或客户特定的数据。“静态”内容是既不时间敏感也不是客户特定的数据,在下面将进一步描述。处理可包括将数据文件分解成它的部分,传送、接收和重组该数据文件。相反,在本文献中所使用的术语“非智能”是指基于当前的技术并且不将数据分解成它的静态和动态部分的一个客户机、文件服务器或中间网点服务器如ISP服务器。
公众网络84可仍是基于现有协议操作。在一个实施例中,公众网络84可是互联网以及控制协议可是TCP/IP协议。然而,对本领域的技术人员来说本发明的教导并不局限于一个特定的协议和/或特定的网络类型是很显而易见的。
智能服务器86也可基于tpi原理从而能分类、分解和处理划分为它们的动态和静态部分的数据文件。驻留在服务器86中的文件88根据动态和静态数据的一些定义而由服务器软件划分成动态数据和静态数据部分。
在一个实施例中,动态数据和静态数据的区别特征是基于动态数据可是客户特定(specific)或时间相关而静态数据可被看作是不是客户特定或相对时间无关的事实。静态数据内容改变很慢以致服务器能将其作为静态的或恒定的。相反,动态数据内容改变很快以致服务器必须将其作为变量数据处理。
对本领域的技术人员来说静态和动态数据的定义就时间敏感来说是相对的。阀值可被设置以区分动态数据和静态动态。变化率大于设定阀值的数据被认为是动态的,而变化率低于一定速率的数据被认为是静态数据。
在网页文件的例子中,网络设计者可将用于比较网页的不同部分的数据包括在它的设计有效期内。诸如标题、标识符、背景和一些文本的事件可具有从天到月设置的有效期。另一方面,如果网页包括证券交易所的有价证券额表,不断改变的证券额可具有仅几秒的有效期。在该实施例中,如果网络服务器阀值被设置成一分钟,在该网页文件中具有大于一分钟的有效期的任何数据可被划分成静态数据。同时,具有低于一分钟的有效期的诸如证券值的任何数据将被作为动态数据。
在一个实施例中,服务器86的阀值基于服务器请求的服务等级被调整。阀值越低,具有大于该阀值的有效期的文件数越大,因此,动态数据数越小,导致服务器的工作越少。
客户机C90和ISP服务器94也可具有智能浏览器并能接收和处理基于新协议的信息包。
图6是新数据传送系统的一个实施例的操作的流程图。在块96,智能客户机(如客户机A78,图5)向智能服务器(如智能服务器86,图5)传送一个数据请求。在块98,ISP服务器接收客户数据请求。如果ISP服务器是一智能服务器(如ISP服务器82,图5),ISP服务器处理该请求。在一个实施例中,在块100,智能ISP服务器82检验高速缓冲存储器/服务器83(图5)以查看它是否存在存储请求的数据的静态数据部分。如果高速缓冲存储器83的确存储有客户请求的数据的静态数据部分,在块102,智能ISP服务器多点播送(multicast)该静态数据。同时,数据的动态部分的请求被传送到网络服务器86。
换句话说,如果在高速缓冲存储器83中的请求的数据的静态数据部分不可用,在块104,智能ISP服务器将向相应的网络服务器请求客户请求的数据的静态和动态部分。
在一个实施例中,每个存储器/高速缓存服务器能处理许多URLs。高速缓存服务器组中的每个高速缓存服务器可服务位于不同URL地址的特定服务器组。
如果静态数据在存储器/高速缓存服务器不可用,将产生一个请求并发送到存储所请求的数据的网络服务器。如上所述,一旦存储器/高速缓存服务器接收到对于特定静态数据的第一请求,它将获得该数据并使其有效以便于在其相应的网络上多点播送。由客户请求触发的中间路由器将特定用户请求数据连接到存储该数据的特定存储器/高速缓存服务器。
在另一实施例中,驻留在特定存储器/高速缓存服务器中的静态数据被定期更新和刷新,而不受输入的客户请求支配。然而,存储的静态数据部分不会被路由或传送到该网络直到至少一个客户从其相应的ISP请求该数据,且该ISP将该请求送到存储器/高速缓冲存储器。如果接收到第一请求,存储器/高速缓存服务器将在该网络上多点播送其数据。
在一个示范性实施例中,在智能文件服务器86端(图5),多点播送静态数据部分的方法包括一种多点播送请求的数据的方法,包括步骤:接收一数据文件,指定一时间间隔,基于该时间间隔将该数据文件分解成多个数据块以便在该时间间隔期间能显示每个数据块,确定多个所要求的时隙以便发送该数据文件,至少将多个数据块中的第一个和任意一个或多个另外的数据块分配到每一时隙以便对在任何时隙访问该数据文件的用户来说多个数据块可按顺序使用,以及基于分配步骤发送多个数据块。
在一个实施例中,分解步骤包括步骤:确定估算的数据块大小,确定存储器的群大小,以及基于估算的数据块大小和群大小分解该数据。在另一实施例中,确定步骤进一步包括估计资源分配和带宽有效性的步骤。
在块106,智能服务器86接收数据请求。如上所述,该请求可包括静态和动态部分数据或仅包括数据的动态部分。在块108,服务器86传送请求的数据的静态和/或动态数据部分给请求客户。在块110,一旦智能ISP服务器82(图5)接收来自智能服务器86的包括静态和动态数据部分的请求数据,它开始在服务于其客户的带宽上多点播送数据的静态部分,并使其可用于请求相同数据的后来的客户。智能ISP服务器82也向请求智能客户机78转发更新的动态数据。在块112,请求智能客户机78组合静态和动态数据以重建其请求的文件。
图7是根据本发明的一个实施例的智能服务器。在智能服务器86的一个实施例中,服从现有协议的服务器软件114能包括服务器的基本操作软件。附加智能服务器软件116可提供另外的能力以分类静态和动态数据,将一个文件分解成它的静态和动态部分,基于现有的网络协议打包适当大小的信息包,同时包括允许识别包括静态和动态数据的新的信息包的报头或报尾信息。用在本发明中的信息包的格式在图10中进一步描述。在另一实施例中,智能服务器软件116可驻留在至少一个物理上不同的机器中以及服从现有协议的该服务器软件也可驻留在一不同的机器中。
图8是用于智能服务器的一个实施例的操作的流程图。在块120,智能服务器86基于所做的动态和静态数据分类可设置一阀值。
在此所使用的术语“智能服务器”是指通过设置一阀值,以及将每个数据文件部分的期满参数值与该阀值进行比较,并基于文件部分期满参数值是否大于或小于该阀值将该文件分成它的动态和静态数据的能将一数据文件分解成它的静态和动态部分的数据、文件或网络服务器至少之一。
在一个实施例中,基于智能服务器的性能要求可调整该阀值。通过重新定义每个文件的较大部分为由静态数据组成,较小阀值可被用来降低智能服务器86的操作负担,要求较低的频繁重新传送。
在块122,智能服务器86基于所设定的阀值,将驻留在其数据库存储器中的数据分解成它们的动态和静态数据部分。在一个实施例中,指定数据的分解可按所接收的对指定数据的请求实时执行。在另一实施例中,驻留在智能服务器上的数据在接收到任何请求前被脱机分解,以及分开的数据部分也按此存储。在块124,智能服务器86接收来自客户机的请求。
一旦智能服务器86接收到一请求,在块126,它可确定该请求是否来自一智能客户机。在一个实施例中,在块128,如果该请求来自一传统的客户机,智能服务器将该请求下传到一传统的服务器,基于现有的协议来服务于该传统客户机。在此所使用的术语“传统”是指一服务器或客户机不是智能的且基于现有技术。在另一实施例中,智能服务器86能重新组合该动态和静态部分并在旧的网络协议的基础上处理该请求。对本领域的技术人员来说智能服务器和传统服务器可驻留在不同的机器或共同存在于一单机上。在一个实施例中,智能服务器86是一智能网络服务器,该网络是互联网以及适用的协议可是TCP/IP协议。
在块130中,如果请求客户机是一智能设备,该智能服务器分别传送静态数据和动态数据。
图9是智能ISP服务器的一个实施例的说明。在一个实施例中,智能ISP服务器82(图5)包括与现有技术完全兼容的ISP操作软件140。另外,附加或插件软件部分142可被添加到ISP服务器82以允许它接收、处理和传送基于不同的动态和静态数据部分的新协议的数据包。另外,智能ISP服务器82包括可用来存储大多数请求数据文件的静态数据部分的高速缓冲存储器83(图5)。
高速缓冲存储器83可存储至少一部分第一客户机请求的静态数据。这允许所接收的对特定数据、网页或文件的多个请求可至少部分地由存在于该高速缓冲存储器中的数据来实现。在一个实施例中,在接收来自智能客户机的第一请求后,智能ISP服务器开始在其网络覆盖区域多点播送所请求的数据的静态数据部分。例如,如果客户请求的数据文件包括100%的静态数据,来自任何后来的客户对相同数据文件的请求可由本地智能ISP服务器82全部处理。在第一请求后,来自第一客户机请求的请求数据的静态数据部分的拷贝被存储,ISP服务器将能提供该请求并实现响应而不需要再重新与主网络服务器通信。对本领域的技术人员来说本发明教导的实现将导致大大降低至少一部分网络上通信量是显而易见的。该方案在请求是来自传统客户机的情况下也可实现。
另外,如果请求的数据包括静态和动态数据部分,智能ISP服务器也能发送一请求给提供该数据的网络服务器,仅请求动态数据,在第一客户数据请求后检索所请求的数据的静态数据部分。如果最初请求来自一智能客户机,智能数据服务器分别发送数据的动态和静态部分。在一个实施例中,如果接收对特定数据的第一请求后,智能ISP确定在其本地存储器中是否有所请求的数据的静态数据部分。如果在本地存储器/高速缓存服务器中的静态数据有效,智能ISP服务器检索该静态数据并开始多点播送。另外,智能ISP服务器获得所请求的数据的动态部分并将其转发到请求的智能客户机。
另外,如果静态数据未存储在ISP的本地存储器/存储服务器上,请求并从数据服务器接收动态和静态数据部分。静态数据被多点播送到所有的本地用户并且动态数据被转发到每个请求的智能客户机。在任一方案中,发送的数据越小导致互联网上较小的通信量拥挤。
在一个实施例中,如果请求的客户机不是一个智能客户机,智能ISP服务器可下传该数据请求到旧协议的ISP服务器以便服务。
对本领域的技术人员来说由于较少的请求和更小的数据文件传送导致网络通信量方面降低的效果将随该网络上出现的智能机的日益增加的数量而增加是显而易见的。
上述方案可在请求的智能客户机和智能数据服务器间的每个路程段被重复。每个路程段的每个结点间的通信量通过应用本发明的教导将大大降低并节约成本。因此,在整个系统中的网络通信量将大大降低。
图10是智能ISP服务器的一个实施例的操作的流程图。在块146,智能ISP服务器82(图5)接收客户的数据请求。在块148,ISP服务器82确定该请求是否来自智能客户机如客户机78(图5)或旧技术的客户机如客户机80(图5)。在块150,如果请求由智能客户机78启动,ISP服务器为将被发送给智能客户机的静态数据的可用性检验其高速缓冲存储器。在此所使用的术语“智能客户机”是指能接收被分成静态和动态数据部分的数据文件包并能通过重组静态和动态数据文件来重建整个数据文件的客户机。在块150,如果所请求的数据的静态部分存储在本地高速缓冲存储器中,智能ISP服务器将在其所覆盖的网络上多点播送该静态数据。在块154,ISP服务器传送动态数据请求给智能文件服务器86。如果在本地高速缓冲存储器中没有该静态数据,在块154传送的请求也包括静态数据部分请求。在块156,ISP服务器82接收可包括静态和动态数据的数据。在块158,ISP服务器传送该动态和静态数据给请求的智能客户机78。
在一个实施例中,在块160,如果接收来自旧技术的客户机也称为非智能客户机的数据请求,该数据被传递到旧技术的服务器以根据现有协议处理该文件请求。术语“非智能客户机或服务器”指基于旧技术和协议操作并且不能处理单独的静态和动态部分的机器。
图11是智能客户机78(图5)的实施例的说明。在一个实施例中,智能客户机78可包括基于现有的(旧的)网络协议操作的客户软件168,并允许该客户机使用该软件来访问该网络。在一个实施例中,操作的客户软件可是允许客户机访问互联网的网络浏览器。
智能客户机78可包括允许智能客户机接收、删除、处理和使用基于动态和静态数据定义的新协议的附加或插件型软件170。该实施允许智能客户机向后兼容现有网络及其操作协议。另外,插件更新允许通过安装更新的软件来将旧型号的客户机转换成智能客户机。
图12是智能客户机的一个实施例的操作的流程图。在块172,智能客户机78(图5)向智能服务器发送一文件请求。如上所述该请求在ISP服务器可部分得到满足。在块174智能客户机接收该文件的动态和静态部分。客户机78将静态和动态数据包重组成请求的文件。
在一个实施例中,静态数据可被传送到智能客户机78。基于复合的信息包表,插件软件170能获取和重组由智能ISP服务器82(图5)提交的静态数据包。
图13说明典型文件的静态和动态数据内容。典型的请求文件88(图5)如本文中所描述的一个可被划分其动态数据部分180和静态数据部分178。如上所述,基于其时间相关或其内容以及随时间其内容改变率可定义该静态数据。静态数据178被定义为非客户专用,因为其内容基于客户提出该数据请求的时间不会改变。相反,动态数据180可具有以比静态数据更高的速度改变的内容并且后来,每次用户请求时,该数据内容已经改变。该数据被划分为客户专用数据。动态数据与静态数据的比率可随基于用来划分动态和静态数据的阀值而改变。
图14是在本发明的一个实施例中,用于将一数据文件划分为动态和静态数据的过程的流程图。在块182,为区别静态数据部分和动态数据部分设置一阀值。该阀值将被用来比较文件的每个部分的期满参数。在块184,文件服务器86可获得对特定文件中数据每个部分的期满参数。在块186,文件服务器86对数据文件的每个部分的期满参数与该阀值比较。在块190,动态数据部分可被识别为相应的期满参数低于文件服务器86(见图5)的阀值的数据文件部分。另外,在块188,如果所测量的数据的那个部分的期满参数高于该阀值,那么该数据的那个部分被认为是静态数据。在一实施例中,将一文件划分成动态和静态部分的操作可在接收那个特定文件的请求前脱机完成。
图15说明根据本发明的一个实施例的数据包192。在一个实施例中,辨识报头198被添加到提供对基于网际协议(IP)196的网络层的操作在识别和传送该数据包时必不可少的信息的数据包192中。另外,在传输前,传输控制层协议TCP194可包括另外的报头和/或报尾200。通过在(TCP)报头194中插入辨识信息200,新数据包与旧类型的数据包区别开来。添加的数据的另外的位被添加到目前在TCP协议中未使用的报头194的位置。这使得可向后兼容现有技术和硬件。新技术路由器、ISP和客户能使用在TCP报头194或数据内容192中插入的198或200的信息以便识别新技术数据包和旧型数据包。
图16是基于本发明的实施例的系统的操作的流程图。在块202,通过将与每个数据部分对应的至少一个期满参数与阀值比较,一文件被划分成动态和静态数据部分。该阀值可在文件服务器根据当前服务器的负载的分析被设置。在本发明的一个实施例中,该阀值可根据变化的文件服务器通信量被调整。较高的阀值将导致将较大部分文件归类为静态数据,这将导致较低的文件服务器通信量。
在块204,从一智能客户机传送一文件请求给一智能服务器。在块206,智能文件服务器接收来自智能客户机的请求。在块208,智能文件服务器传送、多点播送或传送所请求的文件的静态数据和/或动态数据部分给请求的客户机。在本发明的一个实施例中,智能文件服务器在接收到那个文件的第一请求后可多点播送静态数据部分。在另一实施例中,智能服务器接收到大量对于超过指定数据的特定文件的请求就开始多点播送所请求的数据的静态数据部分。在块210,智能客户机可接收请求的文件并通过重组其静态和动态部分来重建该文件。
图17描述用于本发明的一个网络实施例的简化的框图。智能网络服务器212通过网络连接如互联网216被连接到客户机。
由智能服务器212产生的数据流必须经过防火墙/网关218,保护服务于指定URLs的一组智能客户机222的本地ISP网络#1 220。本地ISP#1 220可包括用于不能采用新的智能浏览器的非智能客户机、根据本发明的教导操作的旧技术的高速缓存服务器224。本地ISP网络#1 220可进一步包括许多智能高速缓冲存储器1.1-1.n至m.1-m.n(226-228)。每个智能高速缓存服务器支持多个URL地址1-m。另外,多个高速缓存服务器(1-m)224-228可用于相同的本地ISP网络232。
高速缓存服务器228可通过向包括在URL客户1至m(222)的一组URLs多点播送请求的静态数据提供服务。每个高速缓存服务器如高速缓存服务器#1 228可通过路由器230在本地ISP网络#2,232多点播送多个数据流1.1至1.n。
在一个实施例中,一旦第一用户发送具有驻留在高速缓存服务器#1 228上的静态数据部分的指定数据的请求,高速缓存服务器开始静态数据的多点播送。另外,高速缓存服务器向网络服务器转发对于所请求的数据的生成的客户请求并检索与客户请求的数据对应的动态数据。由于该数据相对来说比静态数据更有时间敏感,在一个实施例中,高速缓冲存储器#1 228仅根据接收的客户请求检索该动态数据。
在一个例子中,如果接收到来自位于指定URL地址的智能客户机1的生成的第一客户数据请求,相应的路由器230充当建立客户机1和存储所请求的数据的高速缓存服务器#1 228间的一连接。如果高速缓存服务器#1 228接收到用于特定数据文件的第一请求,高速缓存服务器#1 228通过路由器230在本地ISP网络#2 232上开始数据的静态部分的多点播送并且可用于请求相同数据文件的后来的智能客户机。在一个实施例中,高速缓存服务器#1 228仅在接收到客户数据请求后才转发对于所请求的数据文件的动态部分的请求。另外,高速缓存服务器#1 228如果在存储器中具有静态部分则多点该数据。一旦高速缓存服务器#1 228传送该数据,路由器230在本地ISP网络#2 232上多点播送该静态数据流。任何请求相同数据的后来的客户可从本地ISP网络#2 232获得该数据。
在一个实施例中,来自网络服务器212对特定数据文件的任何请求触发对动态数据的请求,该请求被转发到每个请求的客户。
上述实施例说明本发明的某些示范性的实施例,对本领域的技术人员来说变形和更改是显而易见的。因此本发明并不局限于上述特定的实施例,而是由下述的权利要求来限定。
Claims (107)
1、一种将一数据分解成其静态和动态数据部分的方法,包括:
设置用于区分静态数据部分和动态数据部分的一阀值;
获得该数据文件的每个数据部分的期满参数;
将每个期满参数与该阀值进行比较;
将期满值低于该阀值的数据部分识别为动态数据部分;以及
将期满值高于该阀值的数据部分识别为静态数据部分。
2、如权利要求1所述的方法,其中该阀值根据存储该数据文件的文件服务器的负载值的测量值来设置。
3、如权利要求1所述的方法,每个文件服务器的阀值能被独立地设置。
4、一种从智能服务器发送数据的方法,包括:
从一客户机接收数据请求;
确定该客户机是否是智能的;
将该数据分解成静态和动态部分,其中根据所选择的阀值来区分静态和动态部分;以及
将该数据的静态部分和动态部分传送给一智能客户机。
5、如权利要求4所述的方法,其中接收到一请求后,该智能服务器将所请求的数据分解成其静态和动态部分。
6、如权利要求4所述的方法,其中在接收到任何请求前,该智能服务器将所请求的数据分解成静态和动态部分。
7、如权利要求4所述的方法,其中该智能文件服务器多点播送所请求的数据的静态部分,并转发所请求的数据的动态部分。
8、如权利要求4所述的方法,其中该智能文件服务器广播所请求的数据的静态部分并转发所请求的数据的动态部分。
9、如权利要求4所述的方法,其中该智能文件服务器转发所请求的数据的静态部分和动态部分。
10、如权利要求4所述的方法,进一步包括:
计算来自智能客户机对一特定数据文件的请求数;
一旦对特定文件的请求数超过设定值,向每个智能客户机广播所述数据文件的静态数据部分。
11、如权利要求10所述的方法,其中该静态数据部分广播进一步包括:
(a)接收包括静态数据部分和动态数据部分的一数据文件;
(b)指定一时间间隔;
(c)将静态数据分解成多个静态数据块;
(d)确定所要求数量的时隙以发送该数据文件,其中每个所述时隙具有实质上等于所述时间间隔的持续时间;
(e)至少分配给每个时隙:
(1)所述多个数据块的第一个;
(2)任意的一个或多个另外的数据块,以便所述多个数据块对在任何时隙访问所述数据文件的客户是可用的;以及
(f)根据所述分配步骤(e)发送所述多个数据块。
12、一种用于处理从一智能服务器接收的数据的方法,包括:
从一智能客户机向该智能服务器发送一数据请求,其中该智能服务器存储所请求的数据的静态部分和动态部分,并且其中该智能服务器打包和传送所请求的数据的静态和动态部分;
接收静态数据包和动态数据包;
由所接收的静态数据包和动态数据包重建所请求的数据。
13、如权利要求12所述的方法,包括从一广播接收静态数据的步骤进一步包括:
(a)在第一时隙期间接收一数据文件的选择;
(b)在第二时隙期间接收所述数据文件的至少一个数据块;
(c)在下一时隙期间:
(1)接收还未接收到的任何数据块;
(2)重组所接收的数据块以形成该数据文件;以及
(3)重复步骤(c)直到所述数据文件的所有数据块被接收和重组为止。
14、如权利要求13所述的方法,其中进一步包括:
执行一差错检验;以及
发送一请求来重发送生成该差错检验的数据块。
15、如权利要求13所述的方法,其中重组数据块的步骤直到所有数据文件被接收后才会开始。
16、如权利要求12所述的方法,进一步包括从一多点播送接收静态数据包的步骤。
17、一种根据一智能协议创建一数据包的方法,包括:
包括用于识别该智能数据协议的辩识信息。
18、如权利要求17所述的方法,其中所述辩识信息包括在该数据包的报头部分中。
19、如权利要求18所述的方法,其中该数据包是基于TCP/IP协议被创建的。
20、如权利要求19所述的方法,其中该报头部分是TCP信息部分。
21、如权利要求17所述的方法,其中所述辩识信息被包括在该数据包的数据部分。
22、如权利要求21所述的方法,其中该数据包基于TCP/IP协议被创建。
23、一种处理来自通过一网络业务提供商服务器连接到一网络的一智能客户机的数据请求的方法,所述方法包括:
接收来自该智能客户机的数据请求;
为所请求的数据的静态部分查询一高速缓存服务器;
执行以下步骤之一:
如果所请求的数据的静态部分未存储在该高速缓存服务器中,向一智能网络服务器发送所请求的数据的静态部分和动态部分的请求,以及在接收到所请求的数据的静态部分后存储其拷贝,以及
如果所请求的数据的静态部分存储在该高速缓存服务器中,向一智能网络服务器发送所请求的数据的动态部分的请求;
向该智能客户机转发从该智能服务器接收的所请求的数据的动态部分;以及
多点播送所请求和所接收的数据的静态部分。
24、一种通过一智能网络连接提供服务器响应来自一客户机的数据请求的方法,包括:
接收来自一客户机的文件请求;
确定该客户机是否是智能的;
向该客户机发送所请求的数据的静态部分;
转发对所请求的数据的至少一动态部分的请求;
接收所请求的数据的至少该动态部分;以及
向该客户机传送至少该动态数据。
25、如权利要求24所述的方法,其中该数据请求是来自非智能的客户机。
26、如权利要求25所述的方法,进一步包括:
将该数据请求传送到一非智能服务器。
27、如权利要求24所述的方法,其中静态部分的多点播送进一步包括:
(a)指定一时间间隔;
(b)将该静态部分分解成多个静态数据块;
(c)确定所请求的若干时隙以发送该静态部分,其中每个所述时隙具有实际上等于所述时间间隔的持续时间;
(d)至少分配给每个时隙:
(1)多个静态数据块中的第一个;以及
(2)任意的一个或多个另外的静态数据块;以及
(e)基于所述分配步骤(d)发送多个静态数据块。
28、一种用于在一网络中传送和接收数据的系统的操作方法,包括:
通过将与每一数据部分对应的至少一个期满参数与一设定的阀值进行比较,将一文件划分成动态数据和静态数据;
传送来自一智能客户机的对一文件的请求;
由一智能服务器接收该文件请求;
将所请求的文件的至少动态数据部分传送给该智能客户机;以及
重组所请求的文件的静态部分和动态部分。
29、如权利要求28所述的方法,其中静态数据部分的传送是以多点播送的方式。
30、如权利要求29所述的方法,其中静态数据广播步骤进一步包括:
(a)接收一数据文件的静态数据块;
(b)指定一时间间隔;
(c)基于所述时间间隔将所述数据文件分解成多个数据块以便每一数据块在所述时间间隔期间可显示;
(d)确定所要求数量的时隙以发送所述数据文件,其中每个所述时隙具有实际上等于所述时间间隔的持续时间;
(e)至少分配给每个时隙:
(1)所述多个数据块中的第一个;以及
(2)任何一个或多个另外的数据块以便所述多个数据块对在任何时隙期间访问所述数据文件的一客户机来说可按顺序使用;以及
(f)基于所述分配步骤(e)发送所述多个数据块。
31、如权利要求28所述的方法,其中将所请求的文件分解成其静态和动态数据部分是实时执行的。
32、如权利要求28所述的方法,其中在接收任何数据请求前执行将所请求的文件分解成其静态和动态数据部分。
33、一种在一网络上从源节点向请求的客户机发送一文件的方法,包括:
在中间节点接收对该文件的请求;
从该中间节点向该客户机提供该文件的时间不敏感部分;以及
从该源节点向该客户机提供该文件的时间敏感部分。
34、如权利要求33所述的方法,进一步包括:
基于一阀值和为每个部分定义的时间值间的比较,确定一文件部分是时间敏感还是时间不敏感。
35、如权利要求34所述的方法,其中该阀值是依据于源服务器的负载而定。
36、如权利要求33所述的方法,进一步包括步骤:
在中间节点确定该客户机是否适合接收时间不敏感和时间敏感部分;以及
如果该客户机不适合,
传送该文件请求给一非智能服务器。
37、包含在计算机可读介质中的一种计算机程序产品,用于将一数据分解成其静态和动态数据部分,包括:
代码装置,用于设置区分静态数据部分和动态数据部分的阀值;
代码装置,用于获得该数据文件的每个数据部分的期满参数;
代码装置,用于将每个期满参数与该阀值比较;
代码装置,用于将期满值低于该阀值的数据的数据部分识别为动态数据部分;以及
代码装置,用于将期满值高于该阀值的数据的数据部分识别为静态数据部分。
38、如权利要求37所述的计算机程序产品,其中该阀值根据存储该数据文件的文件服务器的负载值的测量值被设置。
39、如权利要求37所述的计算机程序产品,其中每一文件服务器的阀值可独立地设置。
40、包含在一计算机可读介质中用于从一智能服务器发送数据的一种计算机程序产品,包括:
接收来自一客户的数据请求;
确定该客户机是否是智能的;
将该数据分解成静态和动态部分,其中基于所选择的阀值区分动态和静态部分;以及
向一智能客户机发送该数据的静态部分和动态部分。
41、如权利要求40所述的计算机程序产品,其中该智能服务器在接收一请求后将所请求的数据分解成其静态和动态部分。
42、如权利要求40所述的计算机程序产品,其中该智能服务器在接收任何请求前,将所请求的数据分解成其静态和动态部分。
43、如权利要求40所述的计算机程序产品,其中该智能文件服务器多点播送所请求的数据的静态部分,以及转发所请求的数据的动态部分。
44、如权利要求40所述的计算机程序产品,其中该智能文件服务器广播所请求的数据的静态部分,以及转发所请求的数据的动态部分。
45、如权利要求40所述的计算机程序产品,其中该智能文件服务器转发所请求的数据的静态部分和动态部分。
46、如权利要求40所述的计算机程序产品,进一步包括:
计算来自智能客户机的对一特定数据文件的请求数;
一旦对一特定文件的请求数超过设定值,向每个智能客户机广播所述数据文件的静态数据部分。
47、如权利要求46所述的计算机程序产品,其中该静态数据部分广播进一步包括:
(a)接收包括静态数据部分和动态数据部分的一数据文件;
(b)指定一时间间隔;
(c)将静态数据部分分解成多个静态数据块;
(d)确定所要求数量的时隙以发送该数据文件,其中每个所述时隙具有实际上等于所述时间间隔的持续时间;
(e)至少分配给每个时隙:
(1)所述多个数据块中的第一个;以及
(2)任意一个或多个另外的数据块以便所述多个数据块对在任
何时隙期间访问所述数据文件的一客户机来说是可用的;以及
(f)基于所述分配步骤(e)发送所述多个数据块。
48、包含在一计算机可读介质中用于处理从一智能服务器接收的数据的计算机程序产品,包括:
从一智能客户机向该智能服务器发送一数据请求,其中该智能服务器存储所请求的数据的静态部分和动态部分,以及其中该智能服务器打包和传送所请求的数据的静态和动态部分;
接收静态数据包和动态数据包;
由所接收的静态数据包和动态数据包重建所请求的数据。
49、如权利要求48所述的计算机程序产品,包括从一广播接收静态数据的步骤,进一步包括:
(a)在第一时隙期间接收数据文件的选择;
(b)在第二时隙期间接收所述数据文件的至少一个数据块;以及
(c)在下一时隙期间:
(1)接收还未接收到的任何数据块;
(2)重组所接收的数据块以形成该数据文件;以及
(3)重复步骤(c)直到所述数据文件的全部数据块被接收和重组为止。
50、如权利要求49所述的计算机程序产品,其中进一步包括:
执行一差错检验;以及
发送一请求来重发送生成该差错检验的数据块。
51、如权利要求49所述的计算机程序产品,其中重组数据块的步骤直到所有数据文件被接收后才会开始。
52、如权利要求48所述的计算机程序产品,进一步包括从一多点播送接收静态数据包的步骤。
53、包含在一计算机可读介质中用于基于一智能协议创建一数据包的计算机程序产品,包括:
包括用于识别该智能数据协议的辩识信息。
54、如权利要求49所述的计算机程序产品,其中所述辩识信息被包括在该数据包的报头部分中。
55、如权利要求54所述的计算机程序产品,其中该数据包基于TCP/IP协议被创建。
56、如权利要求55所述的计算机程序产品,其中该报头部分是TCP信息部分。
57、如权利要求53所述的计算机程序产品,其中所述辩识信息被包括在该数据包的数据部分中。
58、如权利要求57所述的计算机程序产品,其中该数据包基于TCP/IP协议被创建。
59、包含在一计算机可读介质中用于处理来自通过一网络业务提供商服务器连接到一网络的一智能客户机的数据请求的计算机程序产品,所述计算机程序产品包括:
接收来自该智能客户机的数据请求;
对所请求的数据的静态部分查询一高速缓存服务器;
执行以下步骤之一:
如果在该高速缓存服务器中未存储所请求的数据的静态部分,向一智能网络服务器发送对于所请求的数据的静态部分和动态部分的请求并在接收到所请求的数据的静态部分后存储其拷贝,以及
如果在该高速缓存服务器中存储有所请求的数据的静态部分,向一智能网络服务器发送对所请求的数据的动态部分的请求;
从该智能服务器向该智能客户机转发所接收的请求数据的动态部分;以及
多点播送所请求和接收的数据的静态部分。
60、包含在一计算机可读介质中用于通过一智能网络连接提供商服务器响应来自一客户机的数据请求的计算机程序产品,包括:
接收来自一客户机的文件请求;
确定该客户机是否是智能的;
向该客户机发送所请求的数据的静态部分;
转发对所请求的数据的至少一动态部分的请求;
接收所请求的数据的至少该动态部分;以及
向该客户机传送至少该动态数据。
61、如权利要求60所述的计算机程序产品,其中该数据请求来自一非智能客户机。
62、如权利要求61所述的计算机程序产品,进一步包括:
将数据请求传递到一非智能服务器。
63、如权利要求60所述的计算机程序产品,其中静态部分的多点播送进一步包括:
(a)指定一时间间隔;
(b)将该静态部分分解成多个静态数据块;
(c)确定所请求数量的时隙以发送该静态部分,其中每个所述时隙具有实际上等于所述时间间隔的持续时间;
(d)至少分配给每个时隙:
(1)多个静态数据块中的第一个;以及
(2)任意的一个或多个另外的静态数据块;以及
(e)基于所述分配步骤(d)发送多个静态数据块。
64、包含在一计算机可读介质中用于在一网络中传送和接收数据的计算机程序产品,包括:
通过将与每一数据部分对应的至少一个期满参数与一设定的阀值进行比较,将一文件划分成动态数据和静态数据;
传送来自一智能客户机的对一文件的请求;
由一智能服务器接收该文件请求;
将所请求的文件的动态数据部分传送给该智能客户机;以及
重组所请求的文件的静态部分和动态部分。
65、如权利要求64所述的计算机程序产品,其中静态数据部分的传送是以多点播送的方式。
66、如权利要求65所述的计算机程序产品,其中静态数据广播步骤进一步包括:
(a)接收一数据文件的静态数据块;
(b)指定一时间间隔;
(c)基于所述时间间隔将所述数据文件分解成多个数据块以便每一数据块在所述时间间隔期间可显示;
(d)确定所要求数量的时隙以发送所述数据文件,其中每个所述时隙具有实际上等于所述时间间隔的持续时间;
(e)至少分配给每个时隙:
(1)所述多个数据块中的第一个;以及
(2)任选的一个或多个另外的数据块以便所述多个数据块对在
任何时隙期间访问所述数据文件的一客户机来说可按顺序使
用;以及
(f)基于所述分配步骤(e)发送所述多个数据块。
67、如权利要求64所述的计算机程序产品,其中将所请求的文件被分解成其静态和动态数据部分是实时执行的。
68、如权利要求64所述的计算机程序产品,其中在接收任何数据请求前执行将所请求的文件分解成其静态和动态数据部分。
69、包含在一计算机可读介质中在一网络上从源节点向请求的客户机发送一文件的计算机程序产品,包括:
在中间节点接收对该文件的一请求;
从该中间节点向该客户机提供该文件的时间不敏感部分;以及
从源节点向该客户机提供该文件的时间敏感部分。
70、如权利要求69所述的计算机程序产品,进一步包括:
基于一阀值和用于每个部分定义的时间值间的比较,确定一文件部分是时间敏感还是时间不敏感。
71、如权利要求70所述的计算机程序产品,其中该阀值是依据于源服务器的负载而定。
72、用于将一数据分解成其静态和动态数据部分的装置,包括:
用于为区分静态数据部分和动态数据部分而设定一阀值的装置;
用于获得该数据文件的每一数据部分的期满参数的装置;
用于将每一期满参数与该阀值进行比较的装置;
用于将具有低于该阀值的期满参数的数据的数据部分识别为动态数据部分的装置;
用于将具有高于该阀值的期满参数的数据的数据部分识别为静态数据部分的装置。
73、如权利要求72所述的装置,其中该阀值根据存储该数据文件的文件服务器的负载值的测量值来设置。
74、如权利要求72所述的装置,其中每个文件服务器的阀值能被独立地设置。
75、用于从一智能服务器发送数据的装置,包括:
用于从一客户机接收数据请求的装置;
用于确定该客户机是否是智能的装置;
用于将该数据分解成静态和动态部分的装置,其中根据所选择的阀值来区分静态和动态部分;以及
用于将该数据的静态部分和动态部分发送给一智能客户机的装置。
76、如权利要求75所述的装置,其中接收到一请求后,该智能服务器将所请求的数据分解成其静态和动态部分。
77、如权利要求75所述的装置,其中在接收到任何请求前,该智能服务器将所请求的数据分解成静态和动态部分。
78、如权利要求75所述的装置,其中该智能文件服务器多点播送所请求的数据的静态部分,并发送所请求的数据的动态部分。
79、如权利要求75所述的装置,其中该智能文件服务器广播所请求的数据的静态部分,并转发所请求的数据的动态部分。
80、如权利要求75所述的装置,其中该智能文件服务器转发所请求的数据的静态部分和动态部分。
81、如权利要求75所述的装置,进一步包括:
用于计算来自智能客户机对一特定数据文件的请求数的装置;
用于一旦对特定文件的请求数超过设定值,向每个智能客户机广播所述数据文件的静态数据部分的装置。
82、如权利要求81所述的装置,其中该静态数据部分广播进一步包括:
(a)用于接收包括静态数据部分和动态数据部分的一数据文件的装置;
(b)用于指定一时间间隔的装置;
(c)用于将静态数据部分分解成多个静态数据块的装置;
(d)用于确定所要求数量的时隙以发送该数据文件的装置,其中每个所述时隙具有实质上等于所述时间间隔的持续时间;
(e)用于至少分配给每个时隙以下部分的装置:
(1)所述多个数据块的第一个;
(2)任意的一个或多个另外的数据块,以便所述多个数据块对在任何时隙访问所述数据文件的客户是可用的;以及
(f)用于根据所述分配步骤(e)发送所述多个数据块的装置。
83、用于处理从一智能服务器接收的数据的装置,包括:
用于从一智能客户机向该智能服务器发送一数据请求的装置,其中该智能服务器存储所请求的数据的静态部分和动态部分,并且其中该智能服务器打包和传送所请求的数据的静态和动态部分;
用于接收静态数据包和动态数据包的装置;
用于由所接收的静态数据包和动态数据包重建所请求的数据的装置。
84、如权利要求83所述的装置,包括从一广播接收静态数据的步骤,该装置进一步包括:
(a)用于在第一时隙期间接收一数据文件的选择的装置;
(b)用于在第二时隙期间接收所述数据文件的至少一个数据块的装置;及
(c)用于在下一时隙期间执行以下操作的装置:
(1)用于接收还未接收到的任何数据块的装置;
(2)用于重组所接收的数据块以形成该数据文件的装置;以及
(3)用于重复步骤(c)直到所述数据文件的所有数据块被接收和重组为止的装置。
85、如权利要求84所述的装置,其中进一步包括:
用于执行一差错检验的装置;以及
用于发送一请求来重发送生成该差错检验的数据块的装置。
86、如权利要求84所述的装置,其中重组数据块的步骤直到所有数据文件被接收后才会开始。
87、如权利要求86所述的装置,进一步包括从一多点播送接收该静态数据包的步骤。
88、用于基于一智能协议创建一数据包的装置,包括:
用于包括用于识别该智能数据协议的辩识信息的装置。
89、如权利要求88所述的装置,其中所述辩识信息包括在该数据包的报头部分中。
90、如权利要求89所述的装置,其中该数据包基于TCP/IP协议被创建。
91、如权利要求90所述的装置,其中该报头部分是TCP信息部分。
92、如权利要求88所述的装置,其中所述辩识信息被包括在该数据包的数据部分中。
93、如权利要求92所述的装置,其中该数据包基于TCP/IP协议被创建。
94、用于处理来自通过一网络业务提供商服务器连接到一网络的一智能客户机的数据请求的装置,所述装置包括:
用于接收来自该智能客户机的数据请求的装置;
用于为所请求的数据的静态部分查询一高速缓存服务器的装置;用于执行以下之一的装置:
用于如果所请求的数据的静态部分未存储在该高速缓存服务器中,向一智能网络服务器发送所请求的数据的静态部分和动态部分的请求,以及在接收到所请求的数据的静态部分后存储其拷贝的装置,以及
用于如果所请求的数据的静态部分存储在该高速缓存服务器中,向一智能网络服务器发送所请求的数据的动态部分的请求的装置;
用于向该智能客户机转发从该智能服务器接收的所请求的数据的动态部分的装置;以及
用于多点播送所请求和所接收的数据的静态部分的装置。
95、用于通过一智能网络连接提供服务器响应来自一客户机的数据请求的装置,包括:
用于接收来自一客户机的文件请求的装置;
用于确定该客户机是否是智能的装置;
用于向该客户机发送所请求的数据的静态部分的装置;
用于转发对所请求的数据的至少一动态部分的请求的装置;
用于接收所请求的数据的至少该动态部分的装置;以及
用于向该客户机传送至少该动态数据的装置。
96、如权利要求95所述的装置,其中该数据请求是来自非智能的客户机。
97、如权利要求96所述的装置,进一步包括:
用于将该数据请求传递到非智能服务器的装置。
98、如权利要求95所述的装置,其中静态部分的多点播送进一步包括:
(a)用于指定一时间间隔的装置;
(b)用于将该静态部分分解成多个静态数据块的装置;
(c)用于确定所请求数量的时隙以发送该静态部分的装置,其中每个所述时隙具有实际上等于所述时间间隔的持续时间;
(d)用于至少分配给每个时隙以下部分的装置:
(1)多个静态数据块中的第一个;以及
(2)任意的一个或多个另外的静态数据块;以及
(e)用于基于所述分配步骤(d)发送多个静态数据块的装置。
99、用于在一网络中传送和接收数据的系统的操作的装置,包括:
用于通过将与每一数据部分对应的至少一个期满参数与一设定的阀值进行比较,将一文件划分成动态数据和静态数据的装置;
用于传送来自一智能客户机的对一文件的请求的装置;
用于由一智能服务器接收该文件请求的装置;
用于将所请求的文件的至少动态数据部分传送给该智能客户机的装置;以及
用于重组所请求的文件的静态部分和动态部分的装置。
100、如权利要求99所述的装置,其中静态数据部分的传送是以多点播送的方式。
101、如权利要求100所述的装置,其中该静态数据广播步骤进一步包括:
(a)用于接收一数据文件的静态数据块的装置;
(b)用于指定一时间间隔的装置;
(c)用于根据所述时间间隔将所述数据文件分解成多个数据块以便每一数据块在所述时间间隔期间可显示的装置;
(d)用于确定所要求数量的时隙以发送所述数据文件的装置,其中每个所述时隙具有实际上等于所述时间间隔的持续时间;
(e)用于至少分配给每个时隙以下部分的装置:
(1)所述多个数据块中的第一个;以及
(2)任选的一个或多个另外的数据块,以便所述多个数据块对
在任何时隙期间访问所述数据文件的一客户机来说可按顺序使用;以及
(f)用于根据所述分配步骤(e)发送所述多个数据块的装置。
102、如权利要求99所述的装置,其中将所请求的文件分解成其静态和动态数据部分是实时执行的。
103、如权利要求99所述的装置,其中在接收任何数据请求前执行将所请求的文件分解成其静态和动态数据部分。
104、用于在一网络上从源节点向请求的客户机发送一文件的装置,包括:
用于在中间节点接收对该文件的一请求的装置;
用于从该中间节点向该客户机提供该文件的时间不敏感部分的装置;以及
用于从该源节点向该客户机提供该文件的时间敏感部分的装置。
105、如权利要求104所述的装置,进一步包括:
根据一阀值和用于每个部分的一定义的时间值之间的比较,用于确定一文件部分是时间敏感还是时间不敏感的装置。
106、如权利要求105所述的装置,其中该阀值是依据于源服务器的负载而定。
107、如权利要求104所述的装置,进一步包括步骤:
用于在中间节点确定该客户机是否适合来接收时间不敏感和时间敏感部分的装置;以及
如果该客户机不适合,
用于将该文件的请求传送给一非智能服务器的装置。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US32259501P | 2001-09-14 | 2001-09-14 | |
US60/322,595 | 2001-09-14 | ||
US10/035,140 US20030055881A1 (en) | 2001-09-14 | 2001-12-19 | Method and apparatus for transmitting data over a network |
US10/035,140 | 2001-12-19 | ||
US10/107,117 US20030055915A1 (en) | 2001-09-14 | 2002-03-25 | Method and apparatus for transmitting data over a network |
US10/107,117 | 2002-03-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1420663A true CN1420663A (zh) | 2003-05-28 |
Family
ID=27364797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN02143179A Pending CN1420663A (zh) | 2001-09-14 | 2002-09-16 | 用于在网络上传送数据的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20030055915A1 (zh) |
CN (1) | CN1420663A (zh) |
TW (1) | TWI256795B (zh) |
WO (1) | WO2003025764A2 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102081650A (zh) * | 2010-12-29 | 2011-06-01 | 上海网达软件有限公司 | 嵌入式平台用户界面加速显示的方法 |
CN102360317A (zh) * | 2010-05-14 | 2012-02-22 | 洛克威尔自动控制技术股份有限公司 | 分离和存留控制应用的静态和动态部分的方法 |
CN104429040A (zh) * | 2012-05-08 | 2015-03-18 | 阿尔卡特朗讯 | 用于在云网络中加速连接的方法和装置 |
CN105138384A (zh) * | 2015-10-15 | 2015-12-09 | 珠海格力电器股份有限公司 | 空调及其程序升级方法和装置 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040199600A1 (en) * | 2001-10-16 | 2004-10-07 | Dorundo Alan D. | Method and apparatus for program installation in a modular network |
US8655755B2 (en) * | 2003-10-22 | 2014-02-18 | Scottrade, Inc. | System and method for the automated brokerage of financial instruments |
US7711799B2 (en) * | 2004-11-22 | 2010-05-04 | Alcatel-Lucent Usa Inc. | Method and apparatus for pre-packetized caching for network servers |
US8001456B2 (en) | 2005-02-28 | 2011-08-16 | International Business Machines Corporation | Methods for maintaining separation between markup and data at a client |
US8339955B2 (en) * | 2006-02-14 | 2012-12-25 | Jds Uniphase Corporation | Out-of-band control of communication protocol in an in-line device |
US8966000B2 (en) * | 2007-06-22 | 2015-02-24 | Microsoft Corporation | Aggregation and re-ordering of input/output requests for better performance in remote file systems |
US8825752B1 (en) * | 2012-05-18 | 2014-09-02 | Netapp, Inc. | Systems and methods for providing intelligent automated support capable of self rejuvenation with respect to storage systems |
US10313468B2 (en) * | 2015-06-16 | 2019-06-04 | Comcast Cable Communications, Llc | Caching of metadata objects |
TWI628929B (zh) * | 2017-06-27 | 2018-07-01 | 關隆股份有限公司 | RF signal extension method for wireless control system |
US10530463B2 (en) | 2017-11-16 | 2020-01-07 | Grand Mate Co., Ltd. | Method of extending RF signals in a wireless control system |
Family Cites Families (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4963995A (en) * | 1988-12-27 | 1990-10-16 | Explore Technology, Inc. | Audio/video transceiver apparatus including compression means |
US5557316A (en) * | 1990-09-28 | 1996-09-17 | Ictv, Inc. | System for distributing broadcast television services identically on a first bandwidth portion of a plurality of express trunks and interactive services over a second bandwidth portion of each express trunk on a subscriber demand basis |
JP3617089B2 (ja) * | 1993-12-27 | 2005-02-02 | 株式会社日立製作所 | 映像蓄積配送装置及び映像蓄積配送システム |
US5606359A (en) * | 1994-06-30 | 1997-02-25 | Hewlett-Packard Company | Video on demand system with multiple data sources configured to provide vcr-like services |
WO1996017306A2 (en) * | 1994-11-21 | 1996-06-06 | Oracle Corporation | Media server |
EP0716370A3 (en) * | 1994-12-06 | 2005-02-16 | International Business Machines Corporation | A disk access method for delivering multimedia and video information on demand over wide area networks |
KR960036641A (ko) * | 1995-03-21 | 1996-10-28 | 김광호 | 저속의 비디오비트열을 복호하는 고속용 복호화장치 |
JP3372004B2 (ja) * | 1995-03-31 | 2003-01-27 | ソニー株式会社 | 電子番組ガイド装置、電子番組ガイドシステム、および電子番組ガイド方法 |
US5751282A (en) * | 1995-06-13 | 1998-05-12 | Microsoft Corporation | System and method for calling video on demand using an electronic programming guide |
US5812786A (en) * | 1995-06-21 | 1998-09-22 | Bell Atlantic Network Services, Inc. | Variable rate and variable mode transmission system |
US5781228A (en) * | 1995-09-07 | 1998-07-14 | Microsoft Corporation | Method and system for displaying an interactive program with intervening informational segments |
US5949948A (en) * | 1995-11-20 | 1999-09-07 | Imedia Corporation | Method and apparatus for implementing playback features for compressed video data |
DE69631755T2 (de) * | 1995-12-01 | 2004-07-29 | Matsushita Electric Industrial Co., Ltd., Kadoma | Informationsverarbeitungsgerät, -system und verfahren für ein datenübertragungsnetzwerk |
WO1997021310A2 (en) * | 1995-12-07 | 1997-06-12 | Philips Electronics N.V. | A method and device for encoding, transferring and decoding a non-pcm bitstream between a digital versatile disc device and a multi-channel reproduction apparatus |
US5751709A (en) * | 1995-12-28 | 1998-05-12 | Lucent Technologies Inc. | Adaptive time slot scheduling apparatus and method for end-points in an ATM network |
US6018765A (en) * | 1996-01-23 | 2000-01-25 | Storage Concepts, Inc. | Multi-channel multimedia data server |
US6128467A (en) * | 1996-03-21 | 2000-10-03 | Compaq Computer Corporation | Crosspoint switched multimedia system |
US6012080A (en) * | 1996-03-27 | 2000-01-04 | Lucent Technologies Inc. | Method and apparatus for providing enhanced pay per view in a video server |
US5828847A (en) * | 1996-04-19 | 1998-10-27 | Storage Technology Corporation | Dynamic server switching for maximum server availability and load balancing |
US5892535A (en) * | 1996-05-08 | 1999-04-06 | Digital Video Systems, Inc. | Flexible, configurable, hierarchical system for distributing programming |
US5859972A (en) * | 1996-05-10 | 1999-01-12 | The Board Of Trustees Of The University Of Illinois | Multiple server repository and multiple server remote application virtual client computer |
US6018748A (en) * | 1996-05-28 | 2000-01-25 | Sun Microsystems, Inc. | Dynamic linkable labels in a network browser page |
ATE536588T1 (de) * | 1996-07-25 | 2011-12-15 | Xcelera Inc | Web-server system mit primären und sekundären servern |
US5856973A (en) * | 1996-09-10 | 1999-01-05 | Thompson; Kenneth M. | Data multiplexing in MPEG server to decoder systems |
US6199076B1 (en) * | 1996-10-02 | 2001-03-06 | James Logan | Audio program player including a dynamic program selection controller |
US5963925A (en) * | 1996-10-09 | 1999-10-05 | Visa International Service Association | Electronic statement presentment system |
US6055560A (en) * | 1996-11-08 | 2000-04-25 | International Business Machines Corporation | System and method to provide interactivity for a networked video server |
US6169767B1 (en) * | 1997-03-10 | 2001-01-02 | Sarnoff Corporation | Universal network interface module |
US5796952A (en) * | 1997-03-21 | 1998-08-18 | Dot Com Development, Inc. | Method and apparatus for tracking client interaction with a network resource and creating client profiles and resource database |
US5946458A (en) * | 1997-03-24 | 1999-08-31 | Xerox Corporation | Network printing system for responding to remote print-related requests |
TW395142B (en) * | 1997-05-15 | 2000-06-21 | Matsushita Electric Ind Co Ltd | Compressed code decoding device and audio decoding device |
US6028847A (en) * | 1997-07-31 | 2000-02-22 | Hewlett-Packard Company | Multiple stream traffic emulator |
US6026413A (en) * | 1997-08-01 | 2000-02-15 | International Business Machines Corporation | Determining how changes to underlying data affect cached objects |
KR100248427B1 (ko) * | 1997-08-12 | 2000-03-15 | 이계철 | 압축 영역에서의 엠펙 부호 영상의 화면 분할 장치 및 그 방법 |
US6011798A (en) * | 1997-08-15 | 2000-01-04 | Intel Corporation | Adaptive transmit rate control scheduler |
US6172980B1 (en) * | 1997-09-11 | 2001-01-09 | 3Com Corporation | Multiple protocol support |
US6009429A (en) * | 1997-11-13 | 1999-12-28 | International Business Machines Corporation | HTML guided web tour |
US6055571A (en) * | 1997-11-20 | 2000-04-25 | Nec Usa, Inc. | Computer network with microeconomic flow control |
US6167358A (en) * | 1997-12-19 | 2000-12-26 | Nowonder, Inc. | System and method for remotely monitoring a plurality of computer-based systems |
US6178426B1 (en) * | 1998-01-15 | 2001-01-23 | Symbol Technologies, Inc. | Apparatus with extended markup language data capture capability |
US6198723B1 (en) * | 1998-04-14 | 2001-03-06 | Paxonet Communications, Inc. | Asynchronous transfer mode traffic shapers |
US6160546A (en) * | 1998-05-01 | 2000-12-12 | United Video Properties, Inc. | Program guide systems and methods |
US6253326B1 (en) * | 1998-05-29 | 2001-06-26 | Palm, Inc. | Method and system for secure communications |
JP3225924B2 (ja) * | 1998-07-09 | 2001-11-05 | 日本電気株式会社 | 通信品質制御装置 |
US6233389B1 (en) * | 1998-07-30 | 2001-05-15 | Tivo, Inc. | Multimedia time warping system |
US6307487B1 (en) * | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US6320520B1 (en) * | 1998-09-23 | 2001-11-20 | Digital Fountain | Information additive group code generator and decoder for communications systems |
US6263019B1 (en) * | 1998-10-09 | 2001-07-17 | Matsushita Electric Industrial Co., Ltd. | Variable rate MPEG-2 video syntax processor |
US6215526B1 (en) * | 1998-11-06 | 2001-04-10 | Tivo, Inc. | Analog video tagging and encoding system |
US6219355B1 (en) * | 1998-11-30 | 2001-04-17 | Qwest Communications International Inc. | Video and data communication system |
US6606525B1 (en) * | 1999-12-27 | 2003-08-12 | Motorola, Inc. | System and method of merging static data in web pages |
US7171443B2 (en) * | 2001-04-04 | 2007-01-30 | Prodigy Communications, Lp | Method, system, and software for transmission of information |
-
2002
- 2002-03-25 US US10/107,117 patent/US20030055915A1/en not_active Abandoned
- 2002-09-11 WO PCT/US2002/028979 patent/WO2003025764A2/en not_active Application Discontinuation
- 2002-09-13 TW TW091120954A patent/TWI256795B/zh not_active IP Right Cessation
- 2002-09-16 CN CN02143179A patent/CN1420663A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102360317A (zh) * | 2010-05-14 | 2012-02-22 | 洛克威尔自动控制技术股份有限公司 | 分离和存留控制应用的静态和动态部分的方法 |
CN102360317B (zh) * | 2010-05-14 | 2014-07-09 | 洛克威尔自动控制技术股份有限公司 | 分离和存留控制应用的静态和动态部分的方法 |
CN102081650A (zh) * | 2010-12-29 | 2011-06-01 | 上海网达软件有限公司 | 嵌入式平台用户界面加速显示的方法 |
CN104429040A (zh) * | 2012-05-08 | 2015-03-18 | 阿尔卡特朗讯 | 用于在云网络中加速连接的方法和装置 |
CN104429040B (zh) * | 2012-05-08 | 2018-12-07 | 阿尔卡特朗讯 | 用于在云网络中加速连接的方法和装置 |
CN105138384A (zh) * | 2015-10-15 | 2015-12-09 | 珠海格力电器股份有限公司 | 空调及其程序升级方法和装置 |
CN105138384B (zh) * | 2015-10-15 | 2018-09-18 | 珠海格力电器股份有限公司 | 空调及其程序升级方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US20030055915A1 (en) | 2003-03-20 |
TWI256795B (en) | 2006-06-11 |
WO2003025764A2 (en) | 2003-03-27 |
WO2003025764A3 (en) | 2003-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9438938B2 (en) | Layered multicast and fair bandwidth allocation and packet prioritization | |
US7143195B2 (en) | HTTP redirector | |
US6981032B2 (en) | Enhanced multicast-based web server | |
EP1497932B1 (en) | System and method for internet page acceleration including multicast transmissions | |
CN102075445B (zh) | 负载均衡方法及装置 | |
US7461128B2 (en) | Method, apparatus and system for processing message bundles on a network | |
US7509435B2 (en) | Network Address Translation and Port Mapping | |
US20160269300A1 (en) | Method and system for dynamic interleaving | |
US20050229243A1 (en) | Method and system for providing Web browsing through a firewall in a peer to peer network | |
CN1802638B (zh) | 用于路由提示的方法和设备 | |
CN1420663A (zh) | 用于在网络上传送数据的方法和装置 | |
CN1921430A (zh) | 多点通信方法和装置 | |
US11115498B2 (en) | Multi-path management | |
US20030225873A1 (en) | Optimization of network performance through uni-directional encapsulation | |
US20030055881A1 (en) | Method and apparatus for transmitting data over a network | |
CN1557085A (zh) | 客户机服务器网络中作为分配数据包的中继服务器的终端 | |
CN1498488A (zh) | 选择诱骗器和执行选择诱骗的方法 | |
CN101662479A (zh) | 基于ipv6协议的响应并发请求和携多地址流水线数据广播方法 | |
CN107124482A (zh) | 一种dns数据包转发方法、系统及路由器 | |
KR101151615B1 (ko) | Udp기반의 p2p 데이터 전송 방법 및 시스템 | |
CN117729258B (zh) | 基于云边协同的边缘服务网关系统及方法 | |
Schmidbauer et al. | Utilizing layered multicast for Web caching | |
KR100827493B1 (ko) | 애니캐스트 서비스 지원 방법 및 그 시스템 | |
KR20140002040A (ko) | 라우터에서의 통신들을 관리하는 기술 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |