CN1557085A - 客户机服务器网络中作为分配数据包的中继服务器的终端 - Google Patents

客户机服务器网络中作为分配数据包的中继服务器的终端 Download PDF

Info

Publication number
CN1557085A
CN1557085A CNA028186109A CN02818610A CN1557085A CN 1557085 A CN1557085 A CN 1557085A CN A028186109 A CNA028186109 A CN A028186109A CN 02818610 A CN02818610 A CN 02818610A CN 1557085 A CN1557085 A CN 1557085A
Authority
CN
China
Prior art keywords
server
terminal
data
target terminal
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA028186109A
Other languages
English (en)
Other versions
CN100446513C (zh
Inventor
��������ǿ�
劳里·瓦利亚卡
利罗·卡雷斯涅米
Original Assignee
E-3 SOLUTIONS Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=8183631&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN1557085(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by E-3 SOLUTIONS Ltd filed Critical E-3 SOLUTIONS Ltd
Publication of CN1557085A publication Critical patent/CN1557085A/zh
Application granted granted Critical
Publication of CN100446513C publication Critical patent/CN100446513C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1031Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Abstract

一种数据通信网络包括:多个终端和一个主服务器,该主服务器通过至少一个目标终端管理来自第一服务器的数据的选择性检索。一些或所有的终端被作为中继服务器,用于将从所述第一服务器检索的数据提供给至少一个目标终端。该网络包括一个网络信息数据库,并且根据存储在网络信息数据库中的终端性能信息,主服务器选择至少一个目标终端作为中继服务器,该中继服务器用于将数据提供给其他目标终端。作为中继服务器的终端根据进一步目标终端的相关性能,选择其他的下行目标终端作为进一步的中继服务器。这样,主服务器上的负载就被分配到了所有中继服务器中,以提供改进的网络性能。

Description

客户机服务器网络中作为 分配数据包的中继服务器的终端
发明领域
本发明涉及数据通信网络的改进以及这种网络中所采用的系统、方法和装置。
背景技术
在传统的客户机/服务器数据网络中,如TCP/IP或其他路由网络中,主服务器通过单一的服务器端口(socket)为所有的终端提供服务。这种网络将导致极端的网络负载尖峰,特别是当数据需要被同时传送到大量的客户机时,会引起数据传输的延时。
本发明试图提供改进的网络系统、方法和装置从而增强网络的性能。
发明内容
本发明提供了由所附权利要求书限定的改进的数据通信网络、操作数据通信网络的方法、网络服务器、网络终端和计算机程序。
附图简要说明
以下将参考附图,示例性地描述本发明的实施例,其中:
图1所示为实施本发明的数据通信网络的操作模型;
图2A、2B和2C所示为图1中的网络所采用的主服务器和终端的操作结构;
图3A和3B是图1中的网络所采用的路由和数据传输过程的事物处理简图;
图4所示为根据本发明,从主服务器向大量目标终端分配数据的一个方案的例子。
优选实施例的详细描述
参见附图,图1所示为根据本发明的数据通信网络的简化的示例性实施例的操作模型。该网络包括一个数据存储系统10,在该实施例中其包括介质存储系统18和跟踪数据库20,介质存储系统18用于存储有选择地被分配到网络中的数据(即“介质”或“内容”),跟踪数据库20用于管理以下将更详细描述的网络的操作。为了便于描述,在此将从介质存储系统18中被分配的数据称为“内容”,其可以理解为包括最终用户感兴趣的任何类型的数据,包括但不仅限于文本、图形、视频数据、音频数据、可执行代码等。内容通常包括某种类型的一个数据文件。
在本发明中,“内容”是指文件、部分文件或其等价物,其存储在服务器上,可由客户机从服务器上下载并由该客户机存储以便于随后应用,“内容”完全不同于数字广播介质,在数字广播介质中,数据流由广播服务器发送并由客户机,在某些情况下由介入的中继单元临时缓冲。
该网络还包括一个主服务器12,其可与介质存储系统18和跟踪数据库20通信并可控制来自介质存储系统18的内容的分配。该网络还包括多个终端14和16,内容被分配到这些终端。根据本发明,当相同的内容将要被分配给大量终端时,至少一些终端14还作为“中继服务器”将内容分配给剩余的终端16(即,一些或所有的终端还可以作为中继服务器)。
介质存储系统18和终端14、16之间的所有事物处理都是由主服务器12控制的。具体而言,所有从介质存储系统18下载到终端的数据都由主服务器12管理。通常,由主服务器从存储系统中检索内容并将之传递到终端14和16。但是在某些情况下,主服务器本身不检索和传递内容,而是管理其他服务器对内容的检索和传递。
这里所用的术语“目标终端”是指作为预期接收者的终端,其接收来自介质存储系统18的内容(数据文件)。每个终端14和16都可以是数据文件的目标终端。在该实施例中,第一组终端中的每个终端14还作为中继服务器将数据传递到第二组终端中的一个或多个终端16,这一点将在以下描述。终端16也可以作为中继服务器将数据中继到其下行的其他终端(未示出)。可以理解,并不是包括在网络中的所有终端都需要作为中继服务器,该网络可包括不适于作为中继服务器的终端设备。
跟踪数据库20保存主服务器12和各种终端14、16之间事物处理的记录。具体而言,跟踪数据库监视网络中还作为中继服务器的所有终端的性能(通信速度和/或其他参数,如可靠性)。这个信息可供主服务器使用。具体而言,跟踪数据库12能将按照终端的相对性能排序的终端地址的列表提供给主服务器。
在该网络的操作过程中,当内容数据文件被分配到特定的目标终端时,主服务器12通过向第一组终端14发送一个传输请求来初始化数据传输操作,第一组终端14是根据当前的性能数据,从目标终端的列表中选出的最佳的终端。传输请求包括:
--将要传输的文件的详细资料。通常包括,例如,文件类型和大小、内容激活和释放的时间戳、加密和压缩的详细资料等。
--文件分配过程中所涉及的中继服务器和终端的地址
从主服务器12向第一组终端14发送的传输请求指示这些终端从主服务器12(或从包括在传输请求中的其他服务器地址)中检索数据。在第一终端14之间分派剩余目标终端地址的列表。这样,每个第一终端14都可作为中继服务器将数据分配到剩余目标终端的子集。
响应于来自主服务器12的传输请求,各第一终端14开始从主服务器12下载文件。当第一终端14中的一个已经接收到预定数量字节的文件时,该终端14就会向其目标终端16的子集发送一个原传输请求的修订版本。该修订的传输请求将相应的第一终端14确定为中继服务器地址,其目标服务器16的子集应该从这个地址中检索数据。根据目标终端的数量,目标终端的列表可以再细分多次。即,各第二组终端16可收到进一步(further)目标终端的列表,第二组终端16将作为这些进一步目标终端的中继服务器。在每个阶段,优选为将从其余目标终端的列表中选择的“最佳的”终端作为剩余终端的中继服务器。
当各终端14或16已经下载完整个文件时,直接向主服务器12发送一个通知消息,如图1中的符号22所示。
主服务器12服务于来自第一组终端14的数据请求。如果第二组终端16中的终端不能连接到第一组终端14内的终端,那么它将向主服务器12发送数据请求。
通常,主服务器和作为中继服务器的各下行的终端只服务于少量的(如2到5个)下行终端。如果目标终端的数目少于或等于这个数量,则目标终端都可以直接从主服务器检索数据,或者主服务器可以请求最佳的目标终端作为其他终端的中继服务器。
可以理解,该网络可包括比图1中所示以树状结构排列的更多的终端,其中每个终端或者是一个节点(既作为中继服务器又作为目标终端),或者只是一个叶(只作为目标终端);即,在主服务器和各目标终端之间的下行数据传输路径中可能有许多节点终端。优选为,从各终端14、16直接到主服务器12也有一个上行通信路径22。上行通信路径22由目标终端使用以确认数据的接收。这些确认直接从目标终端发送到主服务器12,如图所示。为了清楚地进行说明,在图1中省略了终端14和主服务器12之间的上行路径22。
可以理解,图1中所示的操作模型可以应用一个现有的传统网络架构(如因特网或其同等物)来实现,而不需要新的物理网络。服务器和终端可以通过同步的固定连接如ISDN、HSDL、T1或T3被连接到网络主干上,且该网络可包括拨号连接、无线连接等。即,图1中所示的是服务器和多个终端之间的逻辑连接而非物理连接。此外,主服务器和多个终端之间的逻辑连接可在网络的使用过程中进行动态地调整,这一点将在下文中进一步描述。
本发明特别适用于所有终端都可作为上述的中继服务器并假定永久在线的情况。但是,可以理解,本发明也适用于不可作为中继服务器的终端(这种终端是处于目标终端列表的末尾一直是“叶”的终端)。
目标终端请求单独地传输每个数据包。被传输的数据包包括的信息有:被传输数据的类型、被传输数据包的大小、压缩和确认所需的校验信息。
图2A所示为主服务器12的操作结构,包括网络数据库23、数据库接口模块24、26以及终端模块28,网络数据库23用于存储包括网络终端的地址等的网络信息(该数据库可实现图1中的跟踪数据库20的全部或部分功能;这些数据库功能可以由在一个或多个计算机/服务器上的一个或多个数据库系统来完成)。包括在主服务器12中的终端模块28也可应用于各网络终端/中继服务器14、16,并且包括路由网络协议模块30(优选为一个TCP/IP模块,但也可应用其他的路由协议)和一个主应用程序模块32。如图2B所示,数据库接口模块24和26提供I/O(输入/输出)控制函数34和数据库接口函数36,I/O控制函数34向主应用程序模块32的内核提供所需的服务器级功能以用于数据传送控制和记录数据集合(data aggregation),数据库接口函数36提供对网络数据库23的访问。例如,可以经ODBC(开放式数据库互连)接口或网络数据库系统23自带的数据库接口进行访问。
如图2C所示,在主服务器和那些也可以作为中继服务器的终端中采用的主应用程序模块32包括以下的功能模块:
一个内核模块38,用于解释接收的数据包并存储数据。
一个数据接收模块40,用于接收单独的数据包。
一个数据准备模块42,用于准备将要被中继的数据。
一个数据发送模块44,用于发送由准备模块42准备的数据并向相应的客户机发送确认。
一个路由控制模块46,用于保持最佳数据传输速率。
一个端口控制模块48,用于管理端口对象。
一个服务器端口50,用于监视经TCP/IP模块(或其他路由网络协议模块)30接收的数据。
客户机端口52经模块30发送数据。客户机端口的数量可根据任何特定的时间所需的服务器连接的数量而进行动态调整。
在传统的系统中,服务器具有一个面向服务器的客户机连接,服务器包括一个服务器端口,其用于连接到客户机的服务器端口。在本发明中,主服务器12和作为中继服务器的各终端中的主应用程序模块包括一个用于从其客户机接收数据的标准服务器端口50。此外,该主应用程序模块还具有客户机端口52,用于与下行终端进行下行通信。将被传输到目标终端的实际数据经这些客户机端口发送并经服务器端口接收来自这些终端的确认。当所需数据已由服务器发送时,就可取消该为发送数据所创建的客户机端口,从而不会浪费不必要的网络资源。应用这种方法,接收的确认在传出的数据流中将不会引起任何中断。每个终端/服务器具有两个“硬编码的”端口,一个是为其他终端/服务器提供服务的客户机端口52,一个是只用于主服务器连接的服务器端口50。根据需要可动态地创建和使用其他的端口。每个端口都有一个用于控制该端口的独立的处理器线程,从而可在不出现中断和延迟的情况下对这些端口进行管理和控制。
端口的打开和操作是应用C++类应用程序进行动态处理的,当需要一个该类的新实例时,该应用程序产生一个新端口。用这种方式,端口可被动态地管理且其数量可根据需要改变。每个线程拥有并控制自己的端口。当不再需要一个端口时,控制线程会取消该线程然后取消自己。
现在描述该网络的操作。
图3A所示为路由过程。
主服务器选择第一组的几个(2个或3个)终端,并向这些终端中的每一个终端发送传输请求(包括相应目标终端的地址)。每个第一组的终端通过直接向主服务器发送一个消息来确认其在动态路由中的连接。该确认的速度可被用于更新监视终端性能的终端数据。根据在网络操作过程中预先获得的并存储在网络数据库中的性能数据,将“最佳的”(“最快的”)终端选为第一组终端,该第一组终端用于将数据传送到特定的目标终端。
在进行数据传输时,数据会被传送到已注册为网络的一部分的已知终端。如果在传输过程中,有一个新终端注册到主服务器上,则该终端将被包括在下一个数据传输中。
如上所述,主服务器选择具有最短响应时间的终端。这个信息是用以下的方式获得的:来自特定终端的路由确认的最初接收者是向这些特定终端发送传输请求的“担任服务器角色”(serverrole)的应用程序。当该传送链完成时,信息被自动地中继到主服务器。通过测量不同终端之间的响应时间简单地测量不同终端(网络地址)的性能,并选择具有最短响应时间的终端。
由于目标终端的地址被包括在传输请求中,因此这些终端不需要知道网络中总的网络地址空间。
作为传输请求的一部分,主服务器将其他目标终端的地址发送到第一组终端/中继服务器。每个终端选择自己的下行终端/中继服务器并向这些终端/中继服务器发送作为修订的传输请求的一部分的其余目标终端的网络地址。即,每个第一组终端从主服务器传递给它的地址中选择进一步的两个或三个“最佳的”终端/中继服务器,并将修订的传输请求传送到这些终端,修订的传输请求中包括其他剩余的目标终端的详细资料。由于是动态路由,主服务器不需要清楚地知道哪个终端传送数据,哪个终端接收数据。只要保证路由中的每个终端都是可访问的就足够了。如果由于某种原因一个终端的传送失败,则在数据库中登记该情况,并在下一个传输过程中重复该失败的传送。
当已经建立起一个到特定终端的路由时,数据文件的数据包就会沿确定的路由被传输,该传输是根据每个数据包的句柄/报头中的目标终端地址经选定的中继服务器而进行的。
自动路由可在大型网络区域中均匀地分配负载,减少任何特定的数据传输操作所需的时间窗。
图3B示出了数据传送的过程。
如图3B所示,响应于传输请求,各目标终端请求来自主服务器或作为服务器(参见关于传输请求的描述)的上行终端的打包的数据,重组文件,如果需要还要将这些数据包中继到下行的目标终端。当目标终端接收到文件的最后一个数据包时,向主服务器发送确认。
优选为所有数据都以加密和压缩的二进制格式传送。这种方式与纯文本的传送相比提高了数据的安全性,且需要较少的数据传输时间。由于不需要解释接收的数据,二进制格式的数据需要相应的应用程序较少的“智能”。这种数据可以直接被重构以形成适当的数据结构。所有接收的数据首先被重构为基本类型(可在数据包头中识别),然后包含在该基本类型内的信息指示确定的数据类型。这种结构也提供了数据确认:每个数据类型的大小都是预定的,且所接收数据的总量必须与该数据类型的大小相对应。
由于传送的数据只是二进制的,数据包又相当小,且数据包的数量可能很大,因此,若出现在传送过程中某些数据包被未经授权的第三方所访问的情况,也不会有确定所传送数据的目的的风险。由于在不知道数据的结构时很难推断二进制数据的内容,因此,当应用公共网络时,提高了数据的安全性。
为了更好地理解本发明,以下将参照根据本发明的网络的优选实施例描述数据传输的例子。如上所述,主服务器包括网络数据库并可访问该网络数据库,该网络数据库列出了网络中按其性能(速度)排序的当前所有激活的/注册的终端/中继服务器。假定将要从主服务器到一个或多个目标终端传送的数据包括单个的数据文件。
如上所述,传输请求包括该/各目标终端的地址和其他关于被传送数据的信息,这些信息包括数据包的数量等。
在第一个例子中,假定数据将要被传输到单个目标终端。主服务器直接向该目标终端发送传输请求。目标终端确认该请求,然后请求主服务器依次发送各数据包。每个数据包都被单独地压缩并加密。目标终端确认每个数据包。如果一个特定数据包丢失,只需要重发该数据包,而不是从起点重新开始整个的下载。在某些情况下,应用本发明的方法将数据传送到单个目标终端与传统的下载方法相比可能不会快很多。但是,数据包的压缩以及丢失的数据包不需要重新开始下载意味着单个目标终端的下载通常会比传统方法快而且更可靠,特别是对于非常大的文件来说更是如此。
在第二个例子中,参照图4,假定数据将要被传送到39个按性能排序的目标终端T1-T39。假定主服务器M.S.和每个作为服务器的终端将只与预定数量的N个下行终端直接进行下行通信,N=3。主服务器向终端T1发送第一传输请求,向终端T2发送第二传输请求,向终端T3发送第三传输请求,每个传输请求中包括全部目标地址列表的三分之一的地址。由于终端地址是按性能排序的,为了在网络中均匀地分配负载,发送到T1的请求包括每第1+N个地址(T1,4,7,10,13,16,19,22,25,28,31,34,37),发送到T2的请求包括每第2+N个地址(T2,5,8,11,14,17,20,23,26,29,32,35,38),发送到T3的请求包括每第3+N个地址(T3,6,9,12,15,18,21,24,27,30,33,36,39)。由此我们知道这种方法可以应用于N为任何值和任何数量的终端的情况。
参考T1以及与其相关的下行地址,当从主服务器接收到请求时,T1确认该请求并立即开始从主服务器下载数据包。T1还将修订的请求中继到发送给T1的目标地址列表中的下一组N个最快的终端(T4、T7和T10)。中继到各终端T4、T7和T10的请求包括最初发送给T1的剩余地址的N分之一(1/3),分配方式与最初在T1、T2和T3之间分配全部目标地址列表的方式类似(即,T4接收T13、T22和T31的地址,T7接收T16、T25和T34的地址,T10接收T19、T28和T37的地址)。每个终端T4、T7和T10向主服务器确认该请求,开始从T1下载数据包(该过程可以在从主服务器到T1的下载完成之前就开始),并向其自己的地址列表中的剩余终端传递进一步的修订请求,各剩余终端向主服务器确认该请求并开始从其各自的中继终端下载数据包。在该例中,这些剩余终端是最后的“叶”终端,但是我们知道这种方法可以通过任何数量的中继阶段扩展到任何数量的终端。另外,我们还知道相同的方案可以应用于T2和T3的目标地址列表中。
可以理解,具体的分配方案可以不同于图4中所示的方案。重要的是将相对较快的终端应用于路由的开始,将相对较慢的终端应用于路由的末尾。
如果到一个特定终端的传输失败,该终端就会在目标列表中向下移,从而使相应分配列表子集中的下一个最快的终端在树结构中被“提升”。例如,在图4中,如果从T2到T8的连接失败,T8就会与T17互相交换。如果新的连接仍然失败,则会尝试其他的选择。如果所有可用的选择都失败,则向主服务器报告这种情况。
可以理解,根据本发明的分配方案可以应用不同的网络结构来实现。网络数据库不需要在作为分配管理系统(产生传输请求)的相同的服务器/计算机上,但是该网络数据库必须是可以访问的。被传送的数据不需要驻留在或接入到作为分配管理系统的相同的服务器/计算机上。发送到第一组终端(图4中的T1、T2、T3)的传输请求可能包括另一服务器(“分配服务器”)的进一步的地址,从该另一服务器可以获得数据。该分配服务器可以具有与上述主服务器和中继服务器基本相同的功能。
下载数据的终端向服务器确认数据包,该服务器是终端正在从其上下载数据的服务器。当下载完成时,下载数据的终端向主服务器发送确认。
本发明提供了具有改进性能的数据通信系统、方法和装置,其中根据需要,一些或所有的终端也充当中继服务器,动态路由和分配的数据传输可确保整个终端网络内的每个终端的最佳或接近最佳的数据传输速率,且即使部分网络损坏,动态路由也可确保数据的发送。
在不脱离由所附权利要求书限定的本发明的范围的情况下,可以对其进行其他的改进和修改。

Claims (37)

1、一种数据通信网络,包括:
多个终端;和
主服务器,其通过至少一个目标终端管理来自第一服务器的数据的选择性检索,该目标终端选自所述的多个终端;
其中,至少一些所述的终端被作为中继服务器,用于将从所述第一服务器检索的数据提供给至少一个目标终端。
2.根据权利要求1所述的网络,其中该主服务器直接向至少一个第一目标终端发送传输请求,所述传输请求包括将要被检索的数据的详细资料以及第一服务器的地址,第一目标终端从该第一服务器中请求数据。
3.根据权利要求2所述的网络,其中第一目标终端被作为中继服务器,且该传输请求包括至少一个第二目标终端的地址,从第一服务器检索的数据将要被该第一目标终端中继到该至少一个第二目标终端。
4.根据权利要求3所述的网络,其中作为中继服务器的多个终端修订从主服务器或从其他中继服务器接收的传输请求,并将该修订的传输请求发送到从传输请求中标识的一组目标终端中选定的目标终端,其中,该修订的传输请求将发送该修订的传输请求的终端确定为服务器,该修订的传输请求的接收者应当从该确定的服务器中请求数据。
5.根据权利要求4所述的网络,其中该修订的传输请求还包括进一步目标终端的地址,该修订的传输请求的接收者作为这些进一步目标终端的中继服务器。
6.根据权利要求1所述的网络,还包括网络信息数据库,其中主服务器根据存储在所述网络信息数据库中的终端性能信息,选择至少一个第一目标终端作为中继服务器,该中继服务器用于将从所述第一服务器检索的数据提供给至少一个第二目标终端。
7.根据权利要求6所述的网络,其中主服务器直接向至少一个第一目标终端发送传输请求,所述传输请求包括:
将要被检索的数据的详细资料以及第一服务器的地址,该第一目标终端从该第一服务器中请求数据;和
多个进一步目标终端的地址,从第一服务器检索的数据将要被该第一目标终端中继到该多个进一步目标终端;
基于存储在所述网络信息数据库中的终端性能信息,该传输请求还指示该进一步目标终端的相关性能。
8.根据权利要求7所述的网络,其中作为中继服务器的多个终端根据所述传输请求中指示的该进一步目标终端的相关性能,选择进一步的下行目标终端作为进一步的中继服务器。
9.根据权利要求7或8所述的网络,其中在所述的传输请求中,通过在一个有序的列表中对这些进一步目标终端的地址排序来指示所述进一步的中继服务器的相关性能。
10.根据以上任一权利要求所述的网络,其中第一服务器是主服务器。
11.根据权利要求1到9中任一权利要求所述的网络,其中第一服务器是一个被作为中继服务器的终端。
12.根据以上任一权利要求所述的网络,其中每个所述的终端在上行方向直接与所述的主服务器通信。
13.根据权利要求2所述的网络,其中由所述目标终端检索的数据被分为一系列数据包以发送到所述的目标终端,且每个所述的终端直接与所述的主服务器通信以确认一系列路由到这些终端的最后一个数据包的接收。
14.根据以上任一权利要求所述的网络,其中按照路由网络业务协议(routed network protocol traffic)如TCP/IP业务协议将数据路由到所述的终端。
15.根据以上任一权利要求所述的网络,其中所述的主服务器和每个所述的终端包括服务器端口和至少一个动态控制和管理的客户机端口,该服务器端口用于在所述终端和所述主服务器之间直接进行上行通信,该客户机端口用于在主服务器和所述的终端之间或在作为中继服务器的多个终端和其他下行终端之间进行下行数据传送。
16.根据以上任一权利要求所述的网络,其中数据以二进制格式传送。
17.根据以上任一权利要求所述的网络,其中主服务器监视网络中终端的响应时间,其中根据这些终端相应的响应时间选择作为用于特定数据传输的中继服务器的终端。
18.一种操作数据通信网络的方法,这种网络包括多个终端和一个主服务器,该主服务器通过至少一个目标终端管理来自第一服务器的数据的选择性检索,该目标终端选自所述的多个终端;该方法包括:将至少一些所述的终端作为中继服务器,用于将从所述第一服务器检索的数据提供给至少一个目标终端。
19.根据权利要求18所述的方法,包括直接向至少一个第一目标终端发送来自该主服务器的传输请求,所述传输请求包括将要被检索的数据的详细资料以及第一服务器的地址,第一目标终端从该第一服务器中请求数据。
20.根据权利要求19所述的方法,包括将第一目标终端作为中继服务器,并且在传输请求中包括至少一个第二目标终端的地址,从第一服务器检索的数据将要被该第一目标终端中继到该至少一个第二目标终端。
21.根据权利要求20所述的方法,包括使作为中继服务器的多个终端修订从主服务器或从其他中继服务器接收的传输请求,并将该修订的传输请求发送到从该传输请求中确定的一组目标终端中选定的目标终端,在该修订的传输请求中,将发送该修订的传输请求的终端确定为服务器,该修订的传输请求的接收者应当从该服务器请求数据。
22.根据权利要求21所述的方法,其中该修订的传输请求还包括进一步目标终端的地址,该修订的传输请求的接收者作为这些进一步目标终端的中继服务器。
23.根据权利要求18所述的方法,其中该网络还包括网络信息数据库,该方法包括使主服务器根据存储在所述网络信息数据库中的终端性能信息,选择至少一个第一目标终端作为中继服务器,该中继服务器用于将从所述第一服务器检索的数据提供给至少一个第二目标终端。
24.根据权利要求23所述的方法,包括使主服务器直接向至少一个第一目标终端发送传输请求,所述传输请求包括:
将要被检索的数据的详细资料以及第一服务器的地址,该第一目标终端从该第一服务器中请求数据;和
多个进一步目标终端的地址,从第一服务器检索的数据将要被该第一目标终端中继到该多个进一步目标终端;
基于存储在所述网络信息数据库中的终端性能信息,该传输请求还指示该进一步目标终端的相关性能。
25.根据权利要求24所述的方法,包括使作为中继服务器的多个终端根据所述传输请求中指示的该进一步目标终端的相关性能,选择进一步的下行目标终端作为进一步的中继服务器。
26.根据权利要求24或25所述的方法,包括在所述的传输请求中,通过在一个有序的列表中对这些进一步目标终端的地址排序来指示所述进一步的中继服务器的相关性能。
27.根据以上18到26中任一权利要求所述的方法,其中第一服务器是主服务器。
28.根据权利要求18到26中任一权利要求所述的方法,其中第一服务器是一个被作为中继服务器的终端。
29.根据以上任一权利要求所述的方法,其中每个所述的终端在上行方向直接与所述的主服务器通信。
30.根据权利要求29所述的方法,包括将由所述目标终端检索的数据分为一系列数据包以发送到所述的目标终端,其中每个所述的终端直接与所述的主服务器通信以确认一系列路由到这些终端的最后一个数据包的接收。
31.根据权利要求18到30中任一权利要求所述的方法,包括按照路由网络业务协议如TCP/IP业务协议将数据路由到所述的终端。
32.根据权利要求18到31中任一权利要求所述的方法,包括以二进制格式传送数据。
33.根据权利要求18到32中任一权利要求所述的方法,包括使主服务器监视网络中终端的响应时间,并根据相应的响应时间选择作为用于特定数据传输的中继服务器的终端。
34.一种在根据权利要求1到33中任一权利要求所述的网络或方法中的作为主服务器的网络服务器。
35.一种在根据权利要求1到33中任一权利要求所述的网络或方法中作为中继服务器的网络终端。
36.一种应用于根据权利要求34所述的网络服务器中的编码在数据载体上的计算机程序,该程序用于实现根据权利要求18到33中任一权利要求所述的方法。
37.一种应用于根据权利要求35所述的网络终端中的编码在数据载体上的计算机程序,该程序用于实现根据权利要求18到33中任一权利要求所述的方法。
CNB028186109A 2001-08-02 2002-07-31 由作为中继服务器的终端分配数据包的网络和方法 Expired - Fee Related CN100446513C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP01660145 2001-08-02
EP01660145.2 2001-08-02

Publications (2)

Publication Number Publication Date
CN1557085A true CN1557085A (zh) 2004-12-22
CN100446513C CN100446513C (zh) 2008-12-24

Family

ID=8183631

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028186109A Expired - Fee Related CN100446513C (zh) 2001-08-02 2002-07-31 由作为中继服务器的终端分配数据包的网络和方法

Country Status (12)

Country Link
US (2) US8495167B2 (zh)
EP (1) EP1421759B1 (zh)
CN (1) CN100446513C (zh)
AT (1) ATE338417T1 (zh)
CY (1) CY1107316T1 (zh)
DE (1) DE60214399T2 (zh)
DK (1) DK1421759T3 (zh)
ES (1) ES2272746T3 (zh)
HU (1) HUP0401180A2 (zh)
PT (1) PT1421759E (zh)
RU (1) RU2004106546A (zh)
WO (1) WO2003013099A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101159676B (zh) * 2007-11-06 2010-09-08 深圳市迅雷网络技术有限公司 一种数据传输的方法及系统
CN105656794A (zh) * 2014-11-14 2016-06-08 腾讯科技(深圳)有限公司 数据分发方法及装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030204602A1 (en) * 2002-04-26 2003-10-30 Hudson Michael D. Mediated multi-source peer content delivery network architecture
KR100470993B1 (ko) * 2002-07-10 2005-03-10 삼성전자주식회사 디에스피 프로그램 다운로드 장치 및 그 방법
EP1659488A1 (en) * 2004-11-17 2006-05-24 Alcatel Method of providing software components to nodes in a telecommunication network
DE602005005820T2 (de) * 2005-09-26 2009-05-20 Alcatel Lucent Datenverteilung zu Knoten eines Telekommunikationsnetzwerkes
JP5004813B2 (ja) * 2008-01-11 2012-08-22 キヤノン株式会社 データ共有システム、データ共有方法、情報処理装置、プログラムおよび記憶媒体
EP2096537B1 (de) * 2008-02-28 2018-06-06 Unify GmbH & Co. KG Verfahren, Anordnung und Datenverarbeitungsgerät zur Bereitstellung und Verteilung von Software
JP5644343B2 (ja) * 2010-10-05 2014-12-24 富士通株式会社 データ送信方法,送信元情報処理装置,データ送信システムおよびデータ送信プログラム
US9258380B2 (en) 2012-03-02 2016-02-09 Realtek Semiconductor Corp. Cross-platform multimedia interaction system with multiple displays and dynamically-configured hierarchical servers and related method, electronic device and computer program product
CN103905526A (zh) * 2014-03-05 2014-07-02 深圳市同洲电子股份有限公司 一种调度方法及服务器
CN107908560B (zh) * 2017-11-16 2019-04-16 山东金视野教育科技股份有限公司 一种基于软件开发平台中多目标交叉调试系统

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0072663B1 (en) * 1981-08-17 1986-07-30 Kemtron International (Holdings) Limited Multi-purpose fan
US5396503A (en) * 1993-02-19 1995-03-07 Hewlett-Packard Company Method and system for communicating data
JP3361663B2 (ja) 1994-10-03 2003-01-07 インターナショナル・ビジネス・マシーンズ・コーポレーション 通信管理方法
US6873627B1 (en) * 1995-01-19 2005-03-29 The Fantastic Corporation System and method for sending packets over a computer network
JP3121221B2 (ja) 1995-02-07 2000-12-25 株式会社日立製作所 情報処理システムの通信方法および情報処理システム
US20010002851A1 (en) * 1995-04-14 2001-06-07 Takao Shimada Multimedia data processing system in network
US5905952A (en) 1996-11-18 1999-05-18 Ericsson Inc. Dynamically created A-interface within a mobile network
US6748446B2 (en) * 1996-11-29 2004-06-08 Canon Kabushiki Kaisha Communication method and apparatus with modification of routing path by intermediate relay apparatus
US6226673B1 (en) * 1996-11-29 2001-05-01 Canon Kabushiki Kaisha Data distribution method and apparatus and computer program
US6591303B1 (en) 1997-03-07 2003-07-08 Sun Microsystems, Inc. Method and apparatus for parallel trunking of interfaces to increase transfer bandwidth
US6038296A (en) * 1997-10-07 2000-03-14 Lucent Technologies Inc. Internet/intranet user interface to a multimedia messaging system
US6157965A (en) * 1998-02-27 2000-12-05 Intel Corporation System and method for binding a virtual device driver to a network driver interface
US6901604B1 (en) * 1999-02-19 2005-05-31 Chaincast, Inc. Method and system for ensuring continuous data flow between re-transmitters within a chaincast communication system
US6249810B1 (en) * 1999-02-19 2001-06-19 Chaincast, Inc. Method and system for implementing an internet radio device for receiving and/or transmitting media information
AU4022501A (en) 1999-09-21 2001-04-24 Streaming21, Inc. Method and system for providing streaming media services
JP3812239B2 (ja) * 1999-10-04 2006-08-23 株式会社日立製作所 ネットワーク中継装置
JP4357699B2 (ja) * 1999-10-20 2009-11-04 富士通株式会社 通信手段の通知方法及び通知システム
WO2001041023A1 (en) * 1999-12-03 2001-06-07 Matsushita Electric Industrial Company, Limited A content distribution system and a reference server
CA2365253C (en) * 2000-01-17 2007-10-23 Dae-Hoon Zee System and method for providing internet broadcasting data based on hierarchical structure
EP1148743A3 (en) * 2000-04-20 2005-05-11 Matsushita Electric Industrial Co., Ltd. Vehicle-mounted communication system and device
JP2002073651A (ja) * 2000-06-13 2002-03-12 Canon Inc データ管理システム、サーバ、データ管理方法
JP2002032216A (ja) * 2000-07-19 2002-01-31 Fujitsu Ltd アプリケーションのホスティング装置
JP3674471B2 (ja) * 2000-07-25 2005-07-20 日本電気株式会社 コンテンツ転送方法及びネットワークシステム並びにプログラムを記録した機械読み取り可能な記録媒体
US6970939B2 (en) * 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
US7228416B2 (en) * 2001-01-26 2007-06-05 Hitachi, Ltd. Database access method and system capable of concealing the contents of query
JP2002297478A (ja) * 2001-03-29 2002-10-11 Toshiba Corp マルチメディアデータ中継システム、マルチメディアデータ中継装置及びマルチメディアデータ中継方法
US20030009539A1 (en) * 2001-06-15 2003-01-09 Ntt Software Corporation Distributed object middleware connection method
KR100424722B1 (ko) * 2001-07-27 2004-03-27 김면식 단말기의 위치정보에 기초한 통신방법 및 그 장치
US7373103B2 (en) * 2001-10-03 2008-05-13 Ntt Docomo, Inc. Relay terminal, base station, charging server, communication system, charging method, program computer data signal, and storage medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101159676B (zh) * 2007-11-06 2010-09-08 深圳市迅雷网络技术有限公司 一种数据传输的方法及系统
CN105656794A (zh) * 2014-11-14 2016-06-08 腾讯科技(深圳)有限公司 数据分发方法及装置
CN105656794B (zh) * 2014-11-14 2019-03-08 腾讯科技(深圳)有限公司 数据分发方法、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN100446513C (zh) 2008-12-24
WO2003013099A1 (en) 2003-02-13
HUP0401180A2 (en) 2004-09-28
DE60214399D1 (de) 2006-10-12
PT1421759E (pt) 2007-01-31
RU2004106546A (ru) 2005-08-10
US8495167B2 (en) 2013-07-23
EP1421759B1 (en) 2006-08-30
US20030093491A1 (en) 2003-05-15
CY1107316T1 (el) 2012-11-21
EP1421759A1 (en) 2004-05-26
ATE338417T1 (de) 2006-09-15
DE60214399T2 (de) 2007-09-20
WO2003013099A8 (en) 2004-05-27
DK1421759T3 (da) 2007-01-08
ES2272746T3 (es) 2007-05-01
US20130138780A1 (en) 2013-05-30

Similar Documents

Publication Publication Date Title
JP3981596B2 (ja) 通信システムでデータを送信するための方法及び装置
US6888807B2 (en) Applying session services based on packet flows
US8233471B2 (en) Wireless network system and method for providing same
US6816458B1 (en) System and method prioritizing message packets for transmission
US7162535B2 (en) Methods and arrangements for providing efficient information transfer over a limited-speed communications link
RU2310283C2 (ru) Система и способ двунаправленной пакетной передачи данных
DE60305378T2 (de) Verfahren zum Weitergeben von einem Netzwerkstapel
US6377808B1 (en) Method and apparatus for routing data in a communication system
US20130138780A1 (en) Data communications networks, systems, methods and apparatus
CN1878180A (zh) 同步方法
CN113596191A (zh) 一种数据处理方法、网元设备以及可读存储介质
WO2023000936A1 (zh) 一种数据处理方法、网元设备以及可读存储介质
CN113572835A (zh) 一种数据处理方法、网元设备以及可读存储介质
CN1420663A (zh) 用于在网络上传送数据的方法和装置
US6826152B1 (en) System and method of conserving bandwidth in the transmission of message packets
CN1157909C (zh) 一种网关和用于控制网关中连接的方法
EP3672189B1 (en) Data transmission method, device and system
CN111669364B (zh) 一种数据传输的方法、装置、电子设备及介质
CN100563266C (zh) 隧道分离的应用服务穿越网络地址转换器的方法、系统和装置
WO2002060152A2 (en) Improvements in or relating to wireless communication systems
US20090052446A1 (en) Communications Interface
CN115834722A (zh) 一种数据处理方法、装置、网元设备以及可读存储介质
KR20020020515A (ko) 프로세스 계층에서의 데이터그램을 전송하기 위한멀티캐스트 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20081128

Address after: Helsinki

Patentee after: Finland ideal Co.,Ltd.

Address before: Espoo, Finland

Patentee before: E-3 Systems Ltd.

Effective date of registration: 20081128

Address after: Espoo, Finland

Patentee after: E-3 Systems Ltd.

Address before: Espoo, Finland

Patentee before: E-3 Solutions Ltd.

ASS Succession or assignment of patent right

Owner name: FINLAND BAISI CO., LTD.

Free format text: FORMER OWNER: E-3 SYSTEM CO., LTD.

Effective date: 20081128

Owner name: E-3 SYSTEM CO., LTD.

Free format text: FORMER OWNER: E-3 SOLUTION CO., LTD.

Effective date: 20081128

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081224

Termination date: 20140731

EXPY Termination of patent right or utility model