[go: up one dir, main page]

CN1410905A - Full distribution type aggregation network servicer system - Google Patents

Full distribution type aggregation network servicer system Download PDF

Info

Publication number
CN1410905A
CN1410905A CN 02139288 CN02139288A CN1410905A CN 1410905 A CN1410905 A CN 1410905A CN 02139288 CN02139288 CN 02139288 CN 02139288 A CN02139288 A CN 02139288A CN 1410905 A CN1410905 A CN 1410905A
Authority
CN
China
Prior art keywords
module
delay
packet
bag
cluster
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
CN 02139288
Other languages
Chinese (zh)
Other versions
CN1206600C (en
Inventor
金海�
鲜丰
谭光
程斌
韩宗芬
李胜利
庞丽萍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN 02139288 priority Critical patent/CN1206600C/en
Publication of CN1410905A publication Critical patent/CN1410905A/en
Application granted granted Critical
Publication of CN1206600C publication Critical patent/CN1206600C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种全分布式的集群网络服务器系统,前端的共享介质型集线器作为集群的单一入口点,客户通过该集线器把其请求广播到后端集群内的节点上;集群内各节点均包括同构网卡、包过滤模块、延时均衡模块和TCP栈处理模块;同构网卡用于将集群内部各节点的网卡配置成相同的IP地址和MAC地址;包过滤模块用于有选择的过滤掉同构网卡传来的数据包;延时均衡模块负责截取所有的请求包,并对请求包进行延迟,延迟时间结束后,延时均衡模块将请求包提交TCP栈处理模块处理;TCP栈处理模块发回的所有数据包通过真实网卡发送到网关机送至客户端。本发明具有如下技术效果:1)无单一失效点;2)无瓶颈效应;3)适用于基于动态协议的服务;4)细粒度的负载均衡。

Figure 02139288

A fully distributed cluster network server system. The front-end shared media hub serves as the single entry point of the cluster, and the client broadcasts its request to the nodes in the back-end cluster through the hub; each node in the cluster includes a homogeneous network card , packet filtering module, delay equalization module and TCP stack processing module; the isomorphic network card is used to configure the network cards of each node in the cluster to the same IP address and MAC address; the packet filtering module is used to selectively filter out isomorphic network cards Incoming data packets; the delay balance module is responsible for intercepting all request packets and delaying the request packets. After the delay time is over, the delay balance module submits the request packets to the TCP stack processing module for processing; the TCP stack processing module sends back All data packets are sent to the gateway machine through the real network card and sent to the client. The invention has the following technical effects: 1) no single point of failure; 2) no bottleneck effect; 3) applicable to services based on dynamic protocols; 4) fine-grained load balancing.

Figure 02139288

Description

一种全分布式的集群网络服务器系统A Fully Distributed Cluster Network Server System

技术领域technical field

本发明属于计算机应用领域,具体涉及一种全分布式的集群网络服务器系统。The invention belongs to the field of computer applications, and in particular relates to a fully distributed cluster network server system.

背景技术Background technique

当今计算机技术已进入以网络为中心的计算时期,大量的应用都围绕着网络进行,对服务器的性能和可靠性提出了越来越高的要求。例如,随着Internet的飞速发展和用户的剧烈增长,比较热门的Web站点会因为被访问次数急剧增长而不能及时处理用户的请求,导致用户长时间地等待甚至遭到拒绝,大大降低了服务质量。对于CPU密集型的应用,比如说带有CGI(Common Gateway Interface,通用网关接口)和数据库操作的Web服务,服务器性能瓶颈问题则更加突出。另外,随着电子商务等关键性应用在网上的推广,任何例外的服务中断都将造成不可估量的损失,因此服务器的可靠性越来越重要。Today's computer technology has entered the network-centric computing period, and a large number of applications are carried out around the network, which puts forward higher and higher requirements for the performance and reliability of the server. For example, with the rapid development of the Internet and the rapid growth of users, the more popular Web sites will not be able to process user requests in time due to the sharp increase in the number of visits, causing users to wait for a long time or even be rejected, which greatly reduces the quality of service . For CPU-intensive applications, such as Web services with CGI (Common Gateway Interface, Common Gateway Interface) and database operations, the server performance bottleneck problem is even more prominent. In addition, with the promotion of key applications such as e-commerce on the Internet, any exceptional service interruption will cause immeasurable losses, so the reliability of the server is becoming more and more important.

为了解决服务器的性能问题,许多公司和研究机构提出了可扩展的集群系统。这些集群系统通过一个前端机将外来的网络服务请求调往一组后端的真实服务器。调度与负载均衡技术可在链路层、网络层或应用层等多处实现。例如,EDDIE,Reverse-Proxy和pWEB都使用基于应用层调度的方法来建立一个可伸缩的WEB集群服务器。它们将到达的HTTP请求转发到不同的Web服务器,取得结果后,再返回给用户。IBM的TCP Router和Network Dispatcher都是实现在网络层的调度器。Linux Virtual Server是一个基于Linux操作系统的集群调度软件。它通过扩展IP协议栈,对不同的网络服务提供了多种请求调度方案。In order to solve the performance problem of servers, many companies and research institutes have proposed scalable cluster systems. These cluster systems transfer external network service requests to a group of back-end real servers through a front-end machine. Scheduling and load balancing technology can be implemented in multiple places such as link layer, network layer or application layer. For example, EDDIE, Reverse-Proxy and pWEB all use the method based on application layer scheduling to build a scalable WEB cluster server. They forward incoming HTTP requests to different web servers, and after obtaining the results, return them to the user. IBM's TCP Router and Network Dispatcher are both schedulers implemented at the network layer. Linux Virtual Server is a cluster scheduling software based on Linux operating system. It provides a variety of request scheduling schemes for different network services by extending the IP protocol stack.

除了软件实现,一些公司也提出了硬件解决方案,比如Cisco公司的LocalDirector。它通过硬件进行集群服务器进出口包的重写,并取得了较高的性能。据称,它能同时调度数十万个TCP连接请求,但是这种专门的硬件产品价格非常昂贵,以致一般用户难以承受。In addition to software implementation, some companies have also proposed hardware solutions, such as Cisco's LocalDirector. It rewrites the import and export packages of cluster servers through hardware, and achieves high performance. It is said that it can schedule hundreds of thousands of TCP connection requests at the same time, but the price of this specialized hardware product is so expensive that ordinary users cannot afford it.

以上方案都采用了集中式调度方式,它虽然解决了集群的整体性能瓶颈问题,但都存在共同的缺点,即很少考虑这种集中式调度中前端机的可靠性。作为整个集群服务器的单一入口点,前端机一旦出现故障,整个服务器将陷入瘫痪,从而可能造成巨大的经济损失。一个简单的解决办法是为该前端机专设一台备份机,当前端机出现故障时,备份机取代其IP地址而继续工作。这种容错处理方式的一个重要不足之处在于已建立的TCP连接会全部丢失,这对用户会产生不便甚至带来损失。另外,上述各种基于集中式调度的方案都是以连接作为负载衡量单位,所以不能达到理想的负载均衡效果。尤其在各节点提供多种不同服务的异构集群中,各种服务消耗不同的网络资源,因此用连接数来权衡各节点的负载将变得极不合理。The above solutions all use centralized scheduling. Although it solves the overall performance bottleneck problem of the cluster, they all have a common disadvantage, that is, the reliability of the front-end machine in this centralized scheduling is seldom considered. As the single entry point of the entire cluster server, once the front-end machine fails, the entire server will be paralyzed, which may cause huge economic losses. A simple solution is to set up a backup machine for the front-end machine. When the front-end machine breaks down, the backup machine will continue to work instead of its IP address. An important shortcoming of this fault-tolerant processing method is that all established TCP connections will be lost, which will cause inconvenience or even loss to users. In addition, the above-mentioned centralized scheduling schemes all use connections as the load measurement unit, so they cannot achieve ideal load balancing effects. Especially in a heterogeneous cluster where each node provides multiple different services, each service consumes different network resources, so it will become extremely unreasonable to use the number of connections to weigh the load of each node.

综上所述,传统基于集中式调度的集群服务器存在如下缺点:1、前端机成为单一失效点;2、以连接为负载权衡单位将导致负载定位不精确;3、由于同一IP定向到同一节点上,所以对动态端口处理不妥;4、在应用日益广泛的端对端的加密应用中,前端机将成为瓶颈点,从而导致集群针对加密应用的可扩展性较差。To sum up, the traditional cluster server based on centralized scheduling has the following disadvantages: 1. The front-end machine becomes a single point of failure; 2. Taking the connection as the load balancing unit will lead to inaccurate load positioning; 3. Since the same IP is directed to the same node 4. In the increasingly widely used end-to-end encryption applications, the front-end machine will become a bottleneck point, resulting in poor scalability of the cluster for encryption applications.

发明内容Contents of the invention

本发明针对集中式调度的缺点,提出了一种全分布式的集群网络服务器系统,该系统消除了集中式调度方案中“前端机”的概念,具有无单一失效点、无瓶颈效应、适用于基于动态协议的服务和细粒度的负载均衡的技术效果。Aiming at the shortcomings of centralized scheduling, the present invention proposes a fully distributed cluster network server system, which eliminates the concept of "front-end machine" in the centralized scheduling scheme, has no single point of failure, no bottleneck effect, and is suitable for Technical effects of dynamic protocol-based services and fine-grained load balancing.

为实现上述发明目的,一种全分布式的集群网络服务器系统,其特征在于:In order to achieve the above-mentioned purpose of the invention, a fully distributed cluster network server system is characterized in that:

前端的共享介质型集线器作为集群的单一入口点,客户通过该集线器把其请求广播到后端集群内的节点上;The front-end shared media hub acts as a single entry point for the cluster, through which clients broadcast their requests to the nodes in the back-end cluster;

集群内各节点均包括同构网卡、包过滤模块、延时均衡模块和TCP栈处理模块;Each node in the cluster includes isomorphic network card, packet filter module, delay balance module and TCP stack processing module;

同构网卡用于将集群内部各节点的网卡配置成相同的IP地址和MAC地址;The homogeneous network card is used to configure the network cards of each node in the cluster to the same IP address and MAC address;

包过滤模块用于有选择的过滤掉同构网卡传来的数据包;The packet filtering module is used to selectively filter out the data packets from the isomorphic network card;

延时均衡模块负责截取所有的请求包,并对请求包进行延迟,延迟时间结束后,延时均衡模块将请求包提交TCP栈处理模块处理;The delay balance module is responsible for intercepting all request packets and delaying the request packets. After the delay time is over, the delay balance module submits the request packets to the TCP stack processing module for processing;

TCP栈处理模块发回的所有数据包通过真实网卡发送到网关机送至客户端。All data packets sent back by the TCP stack processing module are sent to the gateway machine through the real network card and sent to the client.

所述包过滤模块包括包处理模块、PASS表、定时触发器和规则管理模块;The packet filtering module includes a packet processing module, a PASS table, a timing trigger and a rule management module;

所述包处理模块驻留于链路层,负责在收到同构网卡传来的数据包时,将查询PASS表的规则并对这些包的协议号、源IP地址、目标IP地址、源端口、目标端口进行匹配,并完成相应的处理动作,该相应动作分三类:丢弃此包、提交延时均衡模块中的包截取子模块和提交内核TCP/IP协议栈处理模块;The packet processing module resides in the link layer, and is responsible for inquiring about the rules of the PASS table and checking the protocol number, source IP address, target IP address, source port of these packets when receiving the data packets from the isomorphic network card. , the target port to match, and complete the corresponding processing action, the corresponding action is divided into three categories: discarding the packet, submitting the packet interception sub-module in the delay balance module and submitting the kernel TCP/IP protocol stack processing module;

所述PASS表为一个用元组描述的规则集,负责定义当前包处理模块允许通过的数据包;The PASS table is a rule set described by tuples, which is responsible for defining the data packets that the current packet processing module allows to pass;

所述定时触发器负责每隔一段时间触发规则管理模块对PASS表进行维护操作;The timing trigger is responsible for triggering the rule management module to maintain the PASS table at regular intervals;

所述规则管理模块负责更新、删除PASS表中的规则项。The rule management module is responsible for updating and deleting rule items in the PASS table.

所述延时均衡模块包括定时触发器、负载统计模块、延时计算模块、包截取模块和包队列表;The delay balance module includes a timing trigger, a load statistics module, a delay calculation module, a packet interception module and a packet queue table;

所述定时触发器负责触发负载统计模块对系统资源进行收集,同时触发包截取模块获取在包队列表中挂起的数据包;The timing trigger is responsible for triggering the load statistics module to collect system resources, and simultaneously triggering the packet interception module to obtain the data packets suspended in the packet queue table;

所述负载统计模块负责收集各种系统资源的利用情况,它与系统各设备通信并收集各设备的资源利用率,并把这些利用率作为矢量传给延时计算模块;The load statistics module is responsible for collecting the utilization of various system resources, it communicates with each device of the system and collects the resource utilization of each device, and passes these utilizations to the delay calculation module as a vector;

所述延时计算模块根据负载统计模块传来的负载矢量计算延时值;The delay calculation module calculates the delay value according to the load vector sent by the load statistics module;

所述包截取模块接收从包处理模块传来的SYN包,并根据延时计算模块传来的延时值把该SYN包挂起到包队列中;另外,当收到定时触发器发来的触发信号时,它将遍历包队列表,判断每个包的延迟时间是否完毕,如果完毕则取回该数据报并传送给TCP栈处理模块;Described packet interception module receives the SYN packet that transmits from packet processing module, and hangs this SYN packet in the packet queue according to the delay value that delay calculation module transmits; In addition, when receiving the timing trigger sent When the signal is triggered, it will traverse the packet queue table to determine whether the delay time of each packet is over, and if it is over, the datagram will be retrieved and sent to the TCP stack processing module;

所述包队列表用于存放被延迟的SYN包,每个包都携带一个延时变量,当延迟时间结束后就被包截取模块重新取回。The packet queue table is used to store delayed SYN packets, and each packet carries a delay variable, which is retrieved by the packet interception module after the delay time is over.

本发明具有以下技术特点:The present invention has the following technical characteristics:

同构网卡技术实现全局的单一MAC映像,即每个节点中接收服务请求的网卡都能绑定一个统一的虚拟IP地址和虚拟MAC地址,因此能保证每个节点都将能接收前端集线器转发的服务请求包;Isomorphic network card technology realizes a global single MAC image, that is, the network card receiving service requests in each node can be bound to a unified virtual IP address and virtual MAC address, so it can be guaranteed that each node will be able to receive the information forwarded by the front-end hub service request package;

基于延时竞争的分布式均衡技术,该技术可以根据本地的负载(CPU负载、内存占用情况、磁盘I/O、网络流量等)对所有的连接请求进行一定时间的延时,负载越重,延时越长;Based on the distributed balancing technology of delay competition, this technology can delay all connection requests for a certain period of time according to the local load (CPU load, memory usage, disk I/O, network traffic, etc.). The longer the delay;

有状态的链路层包过滤技术,能记忆属于同一连接的数据流,允许那些已建立连接的数据包通过,并能阻挡连接并未建立的数据报通过,以避免一些没有意义的数据报向上层协议栈流动。Stateful link layer packet filtering technology, which can remember the data streams belonging to the same connection, allow those data packets that have been established to pass through, and block the datagrams that have not been established to pass through, so as to avoid some meaningless datagrams going up layer protocol stack flows.

基于以上技术特点,本发明具有如下技术效果:1)无单一失效点Based on the above technical characteristics, the present invention has the following technical effects: 1) there is no single point of failure

由于本发明提出的集群服务器系统采用全分布式的架构,所以当其中的一台节点出现故障时,其余几台节点将能继续接管工作,并能够自动地把服务请求重新分配到负载最轻的节点上。2)无瓶颈效应Since the cluster server system proposed by the present invention adopts a fully distributed architecture, when one of the nodes fails, the remaining nodes will continue to take over the work, and can automatically redistribute service requests to the server with the lightest load. on the node. 2) No bottleneck effect

在集中式调度方式中,当集群提供加密应用时,前端机需要频繁的对进出的包进行加解密后再调度到后端节点上,因此会造成前端机成为瓶颈点而使系统的可扩展性变差。而本发明的分布式网络调度方案采用集线器来代替集中式调度中的前端调度机,从而消除了这一瓶颈效应。3)适用于基于动态协议的服务In the centralized scheduling method, when the cluster provides encrypted applications, the front-end machine needs to frequently encrypt and decrypt the incoming and outgoing packets before scheduling to the back-end node, which will cause the front-end machine to become a bottleneck point and reduce the scalability of the system. worse. However, the distributed network scheduling scheme of the present invention uses a hub to replace the front-end scheduling machine in the centralized scheduling, thereby eliminating this bottleneck effect. 3) Suitable for services based on dynamic protocols

现在许多服务都采用动态协议(如FTP、RTSP),由于服务过程中服务节点会动态的临时开放一些新的数据端口,在基于集中式的调度中,前端机需要知道这些临时端口并开放它们,所以需要服务节点与前端机频繁通信,而本发明的分布式网络调度中服务节点临时开放端口时只需要更新本机包过滤模块的PASS表,从而减少了网络开销。4)细粒度的负载均衡Many services now use dynamic protocols (such as FTP, RTSP). Since service nodes will temporarily open some new data ports dynamically during the service process, in centralized scheduling, the front-end machine needs to know these temporary ports and open them. Therefore, frequent communication between the service node and the front-end machine is required, and when the service node temporarily opens a port in the distributed network scheduling of the present invention, only the PASS table of the local packet filtering module needs to be updated, thereby reducing network overhead. 4) Fine-grained load balancing

现有的集中式调度方案中以连接为负载权衡单位,因此会造成各服务节点的负载不均衡,而本发明采用的是基于负载的调度方式,能精确定位负载最轻的节点,达到极佳的负载均衡效果,所以能较好的应用于异构集群系统。In the existing centralized scheduling scheme, the connection is used as the load balancing unit, so the load of each service node will be unbalanced, but the present invention adopts a load-based scheduling method, which can accurately locate the node with the lightest load and achieve excellent The load balancing effect, so it can be better applied to heterogeneous cluster systems.

附图说明Description of drawings

图1为本发明一种全分布式的集群网络服务器系统结构示意图;Fig. 1 is a kind of fully distributed cluster network server system structure schematic diagram of the present invention;

图2为各节点的工作流程示意图;Fig. 2 is the workflow diagram of each node;

图3为图1中包过滤模块结构示意图;Fig. 3 is a schematic diagram of the structure of the packet filtering module in Fig. 1;

图4图1中延时均衡模块结构示意图。Figure 4 is a schematic diagram of the structure of the delay equalization module in Figure 1.

具体实施方式Detailed ways

本发明的系统结构如图1所示。前端的共享介质型集线器作为集群的单一入口点,借助于集线器的共享介质特征,使得所有访问集群的数据包都能被内部节点的同构网卡接收并传往它们各自的链路层。集群内部所有服务节点都配备一块同构网卡,这些网卡都绑定一个公共对外的IP地址,以实现集群的单一IP映像。由图1可知当客户端发连接请求时,将产生一个请求包(SYN包),SYN包的目的IP地址是集群对外的IP地址。请求包到达集群服务器前端的集线器时,集线器将把这个请求包广播到后端的服务节点上。The system structure of the present invention is shown in Figure 1. The front-end shared media hub acts as a single entry point for the cluster. With the help of the shared media feature of the hub, all data packets accessing the cluster can be received by the homogeneous network cards of internal nodes and sent to their respective link layers. All service nodes in the cluster are equipped with a homogeneous network card, and these network cards are bound to a public external IP address to realize a single IP image of the cluster. It can be seen from Figure 1 that when the client sends a connection request, a request packet (SYN packet) will be generated, and the destination IP address of the SYN packet is the external IP address of the cluster. When the request packet arrives at the hub at the front end of the cluster server, the hub will broadcast the request packet to the service nodes at the back end.

各个节点的工作流程如图2所示,所有节点的同构网卡都将接收从集线器广播的请求包,并提交给驻留在链路层的包过滤模块,该模块将允许所有的请求包和那些已建立连接的数据包通过,并拒绝掉那些还未建立连接的数据包。包过滤模块把请求包提交给上层IP协议栈,驻留在TCP层的延时均衡模块将截取所有的请求包,并根据该模块中的负载统计子模块采集的负载信息对请求包进行一定的时间延迟,延迟时间与本机的负载情况成正比(负载越重,延时越长),当延迟时间结束后,延时均衡模块将请求包提交TCP栈处理模块处理,根据TCP协议栈的处理流程发回给客户端一个请求确认包(SynAck包)。因此负载最轻的节点发出的请求确认包最早,最后所有节点的请求确认包将依次到达客户端,即负载轻的节点的请求确认包最先到达,而负载重的节点的请求确认包最后到达。TCP栈处理模块发回的所有数据包都通过真实网卡发送到网关机。The workflow of each node is shown in Figure 2. The homogeneous network cards of all nodes will receive the request packets broadcast from the hub and submit them to the packet filtering module residing in the link layer, which will allow all request packets and Those packets that have established connections are passed, and those packets that have not yet established connections are rejected. The packet filter module submits the request packet to the upper layer IP protocol stack, and the delay balance module residing in the TCP layer will intercept all request packets, and perform a certain analysis on the request packet according to the load information collected by the load statistics sub-module in this module. Time delay, the delay time is proportional to the load of the machine (the heavier the load, the longer the delay), when the delay time is over, the delay balance module will submit the request packet to the TCP stack processing module for processing, according to the processing of the TCP protocol stack The process sends back a request acknowledgment packet (SynAck packet) to the client. Therefore, the request confirmation packet sent by the node with the lightest load is the earliest, and the request confirmation packets of all nodes will arrive at the client in turn at the end, that is, the request confirmation packet of the light-loaded node arrives first, and the request confirmation packet of the heavy-loaded node arrives last . All data packets sent back by the TCP stack processing module are sent to the gateway machine through the real network card.

如图1,所有节点的输出数据包都通过网关机这一单一出口点回送给客户端。由于TCP协议栈固有的先来先服务的特性,客户端将只接收最先到达的请求确认包(该请求确认包由负载最轻的节点发出)并反馈一个连接确认包(ACK包),而丢弃掉后续到达的包并反馈一个复位包(RST包)。这些客户端发回的包(一个ACK包,多个RST包)被集群内部的所有节点接收后,各节点将进行一定的处理:接收ACK包的节点将完成连接的建立,并在过滤模块中加一条规则,允许属于该连接的后续数据包通过;接收RST包的节点将释放开辟的套接字缓冲区,即该节点将不能与客户端建立连接。最后,每次客户端向集群服务器进行访问时,总能与负载最轻的节点建立起连接,以完成细粒度的动态的网络负载均衡。As shown in Figure 1, the output data packets of all nodes are returned to the client through the single exit point of the gateway machine. Due to the inherent first-come-first-served feature of the TCP protocol stack, the client will only receive the request confirmation packet that arrives first (the request confirmation packet is sent by the node with the lightest load) and feed back a connection confirmation packet (ACK packet), while Subsequent arrival packets are discarded and a reset packet (RST packet) is fed back. After the packets sent back by these clients (one ACK packet, multiple RST packets) are received by all nodes in the cluster, each node will perform certain processing: the node receiving the ACK packet will complete the establishment of the connection, and in the filtering module Add a rule to allow the subsequent data packets belonging to the connection to pass; the node receiving the RST packet will release the socket buffer opened, that is, the node will not be able to establish a connection with the client. Finally, each time the client accesses the cluster server, it can always establish a connection with the node with the lightest load to complete fine-grained dynamic network load balancing.

下面分别对各模块加以具体说明。1、同构网卡Each module is described in detail below. 1. Isomorphic NIC

同构网卡4采用同构网卡技术加以实现,它是将集群内部各节点的网卡配置成相同的IP地址(虚拟IP地址)和MAC地址(虚拟MAC地址)。这个虚拟IP地址就是集群服务器的公开访问地址。The isomorphic network card 4 is realized by the isomorphic network card technology, which configures the network cards of each node in the cluster to have the same IP address (virtual IP address) and MAC address (virtual MAC address). This virtual IP address is the public access address of the cluster server.

每个节点都有一个ARP高速缓存。它存放了最近IP地址到硬件MAC地址之间的映射记录。当一个网络数据包经过路由选择后,就可得到下一站路由器地址或目的主机的IP地址,然后在ARP高速缓存中去寻找与之对应的MAC地址,如果未找到,则在局域网内广播一个ARP询问包,该包将查询下一站路由器地址或目的主机的地址对应的MAC地址,并将这个新的IP地址与MAC地址映射关系添加到自己的ARP缓存中,然后根据这个MAC地址发送IP数据包。在本技术中,为了保证每台节点上ARP缓存中虚拟IP地址与虚拟MAC地址映射关系的一致性和避免IP地址的冲突,需要在内核屏蔽掉ARP广播询问包的响应,实现方法是修改/net/ipv4/arp.c文件中关于ARP询问包的代码。另外,因为各节点的网卡均配置同一MAC地址和同一IP地址,会导致某一节点发出的ICMP协议UDP端口不可达消息会引发网络风暴,为了抑制这种ICMP消息风暴,本技术的实现中还要修改/net/ipv4/udp.c中的udp_recv()函数。Each node has an ARP cache. It stores recent mapping records between IP addresses and hardware MAC addresses. When a network data packet is routed, it can get the address of the next router or the IP address of the destination host, and then search for the corresponding MAC address in the ARP cache. If it is not found, broadcast a message in the LAN. ARP query packet, which will query the MAC address corresponding to the address of the next router or the address of the destination host, and add the new IP address-MAC address mapping relationship to its own ARP cache, and then send an IP address based on this MAC address. data pack. In this technology, in order to ensure the consistency of the mapping relationship between the virtual IP address and the virtual MAC address in the ARP cache on each node and avoid IP address conflicts, it is necessary to shield the response of the ARP broadcast inquiry packet in the kernel. The implementation method is to modify / The code about the ARP query packet in the net/ipv4/arp.c file. In addition, because the network cards of each node are configured with the same MAC address and the same IP address, the ICMP protocol UDP port unreachable message sent by a certain node will cause a network storm. In order to suppress this ICMP message storm, the implementation of this technology also includes To modify the udp_recv() function in /net/ipv4/udp.c.

最后,用ifconfig命令配置网卡的虚拟MAC地址,比如欲配置所有节点的网卡的MAC地址为虚拟地址00:03:61:83:2a:8b,需要进行如下几个配置步骤(以节点1的网卡eth1为例):第一步:[root@node1/]#ifconfig eth1 down第二步:[root@node1/]#ifconfig eth1 ether HW 00:03:61:83:2a:8b第三步:[root@node1/]#ifconfig eth1 up2包过滤模块Finally, use the ifconfig command to configure the virtual MAC address of the network card. For example, if you want to configure the MAC address of the network card of all nodes as the virtual address 00:03:61:83:2a:8b, you need to perform the following configuration steps (take the network card of node 1 eth1 as an example): Step 1: [root@node1/]#ifconfig eth1 down Step 2: [root@node1/]#ifconfig eth1 ether HW 00:03:61:83:2a:8b Step 3: [ root@node1/]#ifconfig eth1 up2 packet filter module

包过滤模块5采用有状态的链路层包过滤技术加以实现,它用于有选择的过滤掉同构网卡传来的数据包。因为每次流入集群的数据包都要经过集线器广播到各个节点上,所以各节点的同构网卡将接收所有这些包并提交给上层的内核协议栈,这样将导致大部分节点的内核协议栈会消耗大量的资源来处理一些无关的数据包,特别是在服务请求密集的情况下,这种广播的负面效应将更明显。因此,本发明采用有状态的包过滤技术在链路层丢弃那些无关的数据包。该模块的结构示意图如图4所示,具体包括:1)包处理模块(10):该模块驻留于链路层,当收到同构网卡传来的数据包时,它将查询PASS表的规则对这些包的协议号、源IP地址、目标IP地址、源端口、目标端口进行匹配,并完成相应的处理动作,该相应动作分三类:丢弃此包、提交延时均衡模块中的包截取子模块(17)和提交内核TCP/IP协议栈处理模块(7)。2)PASS表(11):PASS表是一个用元组描述的规则集,它定义了当前包处理模块允许通过的数据包。在该表中,所有关于控制连接的数据包都允许通过,如:SYN包、SynAck包、ACK包、RST包等;所有已建立连接的数据包都将允许通过;其他的数据包除非系统管理员指定,否则都将默认丢弃掉。3)定时触发器(12):负责每隔一段时间触发规则管理模块对PASS表进行维护操作。4)规则管理模块(13):负责更新、删除PASS表中的规则项。当一个TCP连接建立或撤销时,TCP栈处理模块都将通知该模块,然后该模块将把进行适当的处理:当一条连接建立时,它把连接信息(如:源IP、源端口、  目标IP、目标端口)转化为规则添加到PASS表中;当一条连接撤销时,它将删除PASS表中对应的规则。3延时均衡模块The packet filtering module 5 is realized by using stateful link layer packet filtering technology, which is used to selectively filter out the data packets transmitted from the homogeneous network card. Because each data packet flowing into the cluster must be broadcast to each node through the hub, the homogeneous network card of each node will receive all these packets and submit them to the upper kernel protocol stack, which will cause the kernel protocol stack of most nodes to lose It consumes a lot of resources to process some irrelevant data packets, especially in the case of intensive service requests, the negative effect of this broadcast will be more obvious. Therefore, the present invention discards irrelevant data packets at the link layer by using stateful packet filtering technology. The structural representation of this module is as shown in Figure 4, specifically comprises: 1) packet processing module (10): this module resides in the link layer, when receiving the data packet that isomorphic network card transmits, it will query the PASS table The rules match the protocol number, source IP address, destination IP address, source port, and destination port of these packets, and complete the corresponding processing actions. The corresponding actions are divided into three categories: discarding this packet, submitting the delay balance module Packet intercepting submodule (17) and submitting kernel TCP/IP protocol stack processing module (7). 2) PASS table (11): The PASS table is a rule set described by tuples, which defines the data packets allowed by the current packet processing module. In this table, all data packets related to control connections are allowed to pass through, such as: SYN packets, SynAck packets, ACK packets, RST packets, etc.; all established connection data packets will be allowed to pass; specified by the member, otherwise it will be discarded by default. 3) Timing trigger (12): responsible for triggering the rule management module to maintain the PASS table at regular intervals. 4) Rule management module (13): responsible for updating and deleting rule items in the PASS table. When a TCP connection is established or withdrawn, the TCP stack processing module will notify the module, and then the module will perform appropriate processing: when a connection is established, it sends the connection information (such as: source IP, source port, destination IP , target port) is converted into a rule and added to the PASS table; when a connection is withdrawn, it will delete the corresponding rule in the PASS table. 3 delay equalization module

延时均衡模块6采用延时竞争的均衡技术加以实现,它利用TCP协议的三次握手机制完成客户端与负载最轻的节点的连接建立。当客户端,因为协议栈的自然响应延时不能反映系统所有的性能情况,所以为产生一个适当的延时值,需要收集所有设备的负载情况。本模块的结构示意图如图3所示,具体包括:1)定时触发器(14):负责触发负载统计模块对系统资源进行收集,同时触发包截取模块获取在包队列表中挂起的数据包。2)负载统计模块(15):负责收集各种系统资源的利用情况,它与各系统设备如CPU、磁盘、内存和网卡通信并收集各设备的资源利用率,并把这些利用率作为矢量(LOADCPU,LOADDisk,LOADMem,LOADNIC)传给延时计算模块。3)延时计算模块(16):根据负载统计模块传来的负载矢量计算适当的延时值,具体计算公式由如下函数提供。The delay balance module 6 is realized by the delay competition balance technology, which uses the three-way handshake mechanism of the TCP protocol to complete the connection establishment between the client and the node with the lightest load. As the client, because the natural response delay of the protocol stack cannot reflect all the performance conditions of the system, in order to generate an appropriate delay value, it is necessary to collect the load conditions of all devices. The structural diagram of this module is shown in Figure 3, specifically includes: 1) timing trigger (14): responsible for triggering the load statistics module to collect system resources, and simultaneously triggering the packet interception module to obtain the data packets suspended in the packet queue table . 2) load statistics module (15): responsible for collecting the utilization of various system resources, it communicates with each system equipment such as CPU, disk, memory and network card and collects the resource utilization of each equipment, and uses these utilization as vector ( LOAD CPU , LOAD Disk , LOAD Mem , LOAD NIC ) are passed to the delay calculation module. 3) Delay calculation module (16): calculate an appropriate delay value according to the load vector transmitted from the load statistics module, and the specific calculation formula is provided by the following function.

Delay=f(Load)=RTTMAX×(Load/LoadMAX);Delay=f(Load)=RTT MAX ×(Load/Load MAX );

Load=LOADCPU×WeightCPU+LoadDisk×WeightDisk+LOADMem×WeightMem+Load=LOAD CPU × Weight CPU + Load Disk × Weight Disk + LOAD Mem × Weight Mem +

         LoadNIC×WeightNICLoad NIC × Weight NIC ;

其中,RTTMAX表示集群与最远的客户端通信时(即中间的Hop数最多)能达到的Round-Trip Time值;LoadMAX是负载峰值,该值与提供的具体服务有关;WeightCPU、WeightDisk、WeightMem和WeightNIC均采取归一化值,并且对不同应用或内容采用有不同的权值,并能和内容调度结合起来动态使用不同的定义,比如:Among them, RTT MAX represents the Round-Trip Time value that can be achieved when the cluster communicates with the farthest client (that is, the number of Hops in the middle is the largest); Load MAX is the peak load value, which is related to the specific service provided; Weight CPU , Weight Disk , Weight Mem , and Weight NIC all adopt normalized values, and have different weights for different applications or content, and can be combined with content scheduling to dynamically use different definitions, such as:

对静态网页,WeightCPU=WeightMem=WeightNIC=0,而WeightDisk=1;For static web pages, Weight CPU = Weight Mem = Weight NIC = 0, and Weight Disk = 1;

对动态网页,WeightCPU=0.5,而WeightDisk=0.5,WeightMem=WeightNIC=0;For dynamic web pages, Weight CPU = 0.5, and Weight Disk = 0.5, Weight Mem = Weight NIC = 0;

对视频服务,WeightCPU=WeightMem=WeightNIC=WeightDisk=0.25。4)包截取模块(17):包截取模块接收从包处理模块(8)传来的SYN包,并根据延时计算模块传来的延时值把该SYN包挂起到包队列中;另外,当收到定时触发器发来的触发信号时,它将遍历包队列表,判断每个包的延迟时间是否完毕,如果完毕则取回该数据报并传送给TCP栈处理模块(7)。5)包队列表(18):该表存放被延迟的SYN包,每个包都携带一个延时变量,当延迟时间结束后就被包截取模块重新取回。4TCP栈处理模块To video service, Weight CPU =Weight Mem =Weight NIC =Weight Disk =0.25. 4) packet interception module (17): packet interception module receives the SYN bag that transmits from packet processing module (8), and calculates module according to delay The transmitted delay value hangs the SYN packet into the packet queue; in addition, when receiving the trigger signal from the timing trigger, it will traverse the packet queue list to determine whether the delay time of each packet is over, if After finishing, the datagram is retrieved and sent to the TCP stack processing module (7). 5) Packet queue table (18): This table stores delayed SYN packets, and each packet carries a delay variable, which is retrieved by the packet interception module after the delay time ends. 4TCP stack processing module

TCP栈处理模块7采用安全增强型的TCP协议栈处理技术加以实现,它是经过修改的协议模块,加入了一些简单的安全机制。因为潜在的广播开销容易造成那些“落选”节点为响应三次握手而开辟过多的socket内存空间,所以集群系统容易遭受DoS攻击。在该模块中只需要在proc文件系统中打开syn-cookie技术。The TCP stack processing module 7 is realized by adopting security-enhanced TCP protocol stack processing technology, which is a modified protocol module with some simple security mechanisms added. The cluster system is vulnerable to DoS attacks because the potential broadcast overhead will easily cause those "lost" nodes to open up too much socket memory space in response to the three-way handshake. In this module, it is only necessary to enable the syn-cookie technology in the proc file system.

本发明中各节点的硬件和操作系统配置可选用选用如表1所示配置来加以具体实现,但并不局限于这种配置。The hardware and operating system configurations of each node in the present invention can be selected from the configuration shown in Table 1 for specific implementation, but is not limited to this configuration.

具体实施时,外部公共网络联入集群服务器外端的共享介质集线器,同时用一根网线联入内部的交换机。然后对各节点进行相应的配置以启动同构网卡。 CPU   内存 主板 操作系统  网络 PIII866 256M 内嵌两个100Mbps网络接口卡 Linux内核2.4.5  100M交换机 During specific implementation, the external public network is connected to the shared media hub at the outer end of the cluster server, and at the same time connected to the internal switch with a network cable. Then configure each node accordingly to start the homogeneous network card. CPU Memory motherboard operating system network PIII866 256M Embedded with two 100Mbps network interface cards Linux kernel 2.4.5 100M switch

          表1分布式自适应调度集群系统的软硬件配置Table 1 The hardware and software configuration of the distributed adaptive scheduling cluster system

具体实施时,外部公共网络联入集群服务器外端的共享介质集线器,同时用一根网线联入内部的交换机。然后对各节点进行相应的配置以启动同构网卡。During specific implementation, the external public network is connected to the shared media hub at the outer end of the cluster server, and at the same time connected to the internal switch with a network cable. Then configure each node accordingly to start the homogeneous network card.

结合附图,对整个系统的配置说明如下:1)PASS表In conjunction with the accompanying drawings, the configuration of the entire system is described as follows: 1) PASS table

PASS表用来指定哪些包可以被本节点接收,初始化配置如表2所示,该表的含义是:接收所有标志位为SYN、SynAck、RST的数据包,接收所有从本节点发出去的包,并默认丢弃掉其他所有的包。The PASS table is used to specify which packets can be received by this node. The initial configuration is shown in Table 2. The meaning of this table is: receive all data packets whose flags are SYN, SynAck, and RST, and receive all packets sent from this node , and discard all other packets by default.

各字段解释如下:The fields are explained as follows:

协议号:分为TCP、UDP、ICMP、ANY,ANY指代任何协议;Protocol number: divided into TCP, UDP, ICMP, ANY, ANY refers to any protocol;

标志位:分为SYN、SynAck、RST、ANY;Flag bit: divided into SYN, SynAck, RST, ANY;

源IP/源端口:数据包的源IP地址/源端口;Source IP/Source Port: the source IP address/source port of the packet;

目的IP/目的端口:数据包的目的IP地址/目的端口;Destination IP/destination port: the destination IP address/destination port of the data packet;

措施:指对匹配的数据包将存取何种措施,分为PASS(接收)和DROP(拒绝)两种。 协议号 标志位   源IP   源端口   目的IP   目的端口   措施 TCP  SYN   ANY   ANY   17.0.0.2     21   PASS TCP  SynAck   ANY   ANY   17.0.0.2     21   PASS TCP  RST   ANY   ANY   17.0.0.2     21   PASS ANY  ANY   17.0.0.2   ANY    ANY     ANY   PASS ANY  ANY   ANY   ANY    ANY     ANY   DROP Measures: Refers to the measures to be accessed for the matched data packets, divided into two types: PASS (receive) and DROP (reject). agreement number flag bit source IP source port Destination IP destination port measure TCP SYN ANY ANY 17.0.0.2 twenty one PASS TCP SynAck ANY ANY 17.0.0.2 twenty one PASS TCP RST ANY ANY 17.0.0.2 twenty one PASS ANY ANY 17.0.0.2 ANY ANY ANY PASS ANY ANY ANY ANY ANY ANY DROP

表2提供FTP服务的节点配置示例(设该节点IP为17.0.0.2)2)延时计算模块Table 2 provides a node configuration example of FTP service (assuming that the node IP is 17.0.0.2) 2) delay calculation module

延时计算模块需要根据服务类型及CPU、内存、网卡和磁盘的负载权值来计算相应的延时大小,对应关系如表3所示。   服务类型   WeightCPU   WeightMem   WeightNIC   WeightDisk   HTTP   0.5    0.5    0     1   FTP   0    0.5    0     0.5   RSTP   0.25    0.25    0.25     0.25 The delay calculation module needs to calculate the corresponding delay according to the service type and the load weights of CPU, memory, network card and disk. The corresponding relationship is shown in Table 3. Service type WeightCPU Weight Mem Weight NIC Weight Disk HTTP 0.5 0.5 0 1 FTP 0 0.5 0 0.5 RSTP 0.25 0.25 0.25 0.25

            表3服务类型和负载权值的对应关系表Table 3 Correspondence between service types and load weights

Claims (3)

1, a kind of full distributed cluster network service device system is characterized in that:
The shared medium type hub of front end is as the single entrance of cluster, and the client is broadcast to its request on the node in the cluster of rear end by this hub;
Each node includes isomorphism network interface card, packet filtering module, delay balance module and TCP stack processing module in the cluster;
The isomorphism network interface card is used for the network interface card of inner each node of cluster is configured to identical IP address and MAC Address;
The packet filtering module is used for selectively filtering out the packet that the isomorphism network interface card transmits;
The delay balance module is responsible for intercepting all request package, and request package is postponed, and after finishing time delay, the delay balance module submits to TCP stack processing module to handle request package;
All packets that TCP stack processing module is beamed back send to gateway machine by true network interface card and deliver to client.
2, system according to claim 1 is characterized in that:
Described packet filtering module comprises packet handing module, PASS table, clocked flip-flop and rules administration module;
Described packet handing module resides at link layer, be responsible for when receiving the packet that the isomorphism network interface card transmits, mate with the rule of inquiry PASS table and to protocol number, source IP address, target ip address, source port, the target port of these bags, and finish corresponding processing action, this corresponding actions is divided three classes: abandon this bag, submit the bag intercepting submodule in the delay balance module to and submit kernel ICP/IP protocol stack processing module to;
Described PASS table is a rule set of describing with tuple, is responsible for the current packet handing module of definition and allows the packet that passes through;
Described clocked flip-flop is responsible at set intervals, and the triggering rule administration module carries out attended operation to the PASS table;
Described rules administration module is responsible for upgrading, delete the regularization term in the PASS table.
3, system according to claim 1 and 2 is characterized in that:
Described delay balance module comprises clocked flip-flop, load statistics module, time-delay computing module, bag interception module and bag queue table;
Described clocked flip-flop is responsible for triggering the load statistics module system resource is collected, and triggers the bag interception module simultaneously and obtain the packet of hanging up in the bag queue table;
Described load statistics module is responsible for collecting the situation of utilizing of various system resources, it and each devices communicating of system and the resource utilization of collecting each equipment, and these utilization factors are passed to the time-delay computing module as vector;
Described time-delay computing module calculates delay value according to the load vector that the load statistics module transmits;
Described bag interception module receives the SYN bag that transmits from packet handing module, and according to the delay value that the time-delay computing module transmits this SYN bag is suspended in the bag formation; In addition, when receiving the trigger pip that clocked flip-flop is sent, it will travel through the bag queue table, judge whether finish the time delay of each bag, if finish then fetch this datagram and send TCP stack processing module to;
Described bag queue table is used to deposit the SYN bag that is delayed, and each bag all carries a time-delay variable, is just fetched again by the bag interception module after finishing time delay.
CN 02139288 2002-11-14 2002-11-14 Full distribution type aggregation network servicer system Expired - Fee Related CN1206600C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 02139288 CN1206600C (en) 2002-11-14 2002-11-14 Full distribution type aggregation network servicer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 02139288 CN1206600C (en) 2002-11-14 2002-11-14 Full distribution type aggregation network servicer system

Publications (2)

Publication Number Publication Date
CN1410905A true CN1410905A (en) 2003-04-16
CN1206600C CN1206600C (en) 2005-06-15

Family

ID=4750007

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 02139288 Expired - Fee Related CN1206600C (en) 2002-11-14 2002-11-14 Full distribution type aggregation network servicer system

Country Status (1)

Country Link
CN (1) CN1206600C (en)

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1315298C (en) * 2003-07-01 2007-05-09 智邦科技股份有限公司 Synchronous packet processing system and method
CN100430917C (en) * 2005-04-22 2008-11-05 天津曙光计算机产业有限公司 Method for self-constructing group operating system core and intelligent constructor
CN100502271C (en) * 2003-09-17 2009-06-17 华为技术有限公司 Wideband code division multiple access (WCDMA) system call admission control method
CN101924698A (en) * 2010-07-22 2010-12-22 福建星网锐捷网络有限公司 Method, system and equipment for balancing two-layer domain load based on IP unicast route
US7978714B2 (en) 2004-07-23 2011-07-12 Citrix Systems, Inc. Methods and systems for securing access to private networks using encryption and authentication technology built in to peripheral devices
US7978716B2 (en) 2003-11-24 2011-07-12 Citrix Systems, Inc. Systems and methods for providing a VPN solution
CN102143031A (en) * 2011-04-02 2011-08-03 中兴通讯股份有限公司 Network access seamless switching method and terminal
US8014421B2 (en) 2004-07-23 2011-09-06 Citrix Systems, Inc. Systems and methods for adjusting the maximum transmission unit by an intermediary device
CN102238140A (en) * 2010-04-27 2011-11-09 鸿富锦精密工业(深圳)有限公司 System and method for sharing server by clients
CN102316539A (en) * 2006-09-28 2012-01-11 高通股份有限公司 Be used for the predictive qos resource allocation that fast session is set up
US8255456B2 (en) 2005-12-30 2012-08-28 Citrix Systems, Inc. System and method for performing flash caching of dynamically generated objects in a data communication network
US8261057B2 (en) 2004-06-30 2012-09-04 Citrix Systems, Inc. System and method for establishing a virtual private network
US8301839B2 (en) 2005-12-30 2012-10-30 Citrix Systems, Inc. System and method for performing granular invalidation of cached dynamically generated objects in a data communication network
WO2013020459A1 (en) * 2011-08-10 2013-02-14 华为技术有限公司 Distributed cluster processing system and message processing method thereof
CN103139247A (en) * 2011-11-28 2013-06-05 百度在线网络技术(北京)有限公司 Keep-alive method, system and device for rear-end server in load balancing system
CN101394400B (en) * 2007-05-18 2013-07-10 辉达公司 Method for establishing network connection for avoiding damage of ARP cache
US8495305B2 (en) 2004-06-30 2013-07-23 Citrix Systems, Inc. Method and device for performing caching of dynamically generated objects in a data communication network
US8499057B2 (en) 2005-12-30 2013-07-30 Citrix Systems, Inc System and method for performing flash crowd caching of dynamically generated objects in a data communication network
US8549149B2 (en) 2004-12-30 2013-10-01 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP multiplexing
US8700695B2 (en) 2004-12-30 2014-04-15 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP pooling
US8706877B2 (en) 2004-12-30 2014-04-22 Citrix Systems, Inc. Systems and methods for providing client-side dynamic redirection to bypass an intermediary
US8739274B2 (en) 2004-06-30 2014-05-27 Citrix Systems, Inc. Method and device for performing integrated caching in a data communication network
CN103929365A (en) * 2014-03-25 2014-07-16 上海格尔软件股份有限公司 A load balancing system and method suitable for UDP services
US8856777B2 (en) 2004-12-30 2014-10-07 Citrix Systems, Inc. Systems and methods for automatic installation and execution of a client-side acceleration program
CN104283943A (en) * 2014-09-22 2015-01-14 珠海许继芝电网自动化有限公司 A communication optimization method for cluster servers
US8954595B2 (en) 2004-12-30 2015-02-10 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP buffering
CN105812425A (en) * 2014-12-30 2016-07-27 Tcl集团股份有限公司 Method for establishing cross-room server cluster and node servers
CN107087014A (en) * 2017-01-24 2017-08-22 无锡英威腾电梯控制技术有限公司 A load balancing method and its controller
CN109376123A (en) * 2014-08-12 2019-02-22 华为技术有限公司 Method for managing files, distributed storage system and management node
CN115002041A (en) * 2022-05-31 2022-09-02 济南浪潮数据技术有限公司 Node balance scheduling method, device, equipment and storage medium

Cited By (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1315298C (en) * 2003-07-01 2007-05-09 智邦科技股份有限公司 Synchronous packet processing system and method
CN100502271C (en) * 2003-09-17 2009-06-17 华为技术有限公司 Wideband code division multiple access (WCDMA) system call admission control method
US8559449B2 (en) 2003-11-11 2013-10-15 Citrix Systems, Inc. Systems and methods for providing a VPN solution
US7978716B2 (en) 2003-11-24 2011-07-12 Citrix Systems, Inc. Systems and methods for providing a VPN solution
US8495305B2 (en) 2004-06-30 2013-07-23 Citrix Systems, Inc. Method and device for performing caching of dynamically generated objects in a data communication network
US8726006B2 (en) 2004-06-30 2014-05-13 Citrix Systems, Inc. System and method for establishing a virtual private network
US8261057B2 (en) 2004-06-30 2012-09-04 Citrix Systems, Inc. System and method for establishing a virtual private network
US8739274B2 (en) 2004-06-30 2014-05-27 Citrix Systems, Inc. Method and device for performing integrated caching in a data communication network
US8897299B2 (en) 2004-07-23 2014-11-25 Citrix Systems, Inc. Method and systems for routing packets from a gateway to an endpoint
US8046830B2 (en) 2004-07-23 2011-10-25 Citrix Systems, Inc. Systems and methods for network disruption shielding techniques
US8019868B2 (en) 2004-07-23 2011-09-13 Citrix Systems, Inc. Method and systems for routing packets from an endpoint to a gateway
US8892778B2 (en) 2004-07-23 2014-11-18 Citrix Systems, Inc. Method and systems for securing remote access to private networks
US8014421B2 (en) 2004-07-23 2011-09-06 Citrix Systems, Inc. Systems and methods for adjusting the maximum transmission unit by an intermediary device
US8914522B2 (en) 2004-07-23 2014-12-16 Citrix Systems, Inc. Systems and methods for facilitating a peer to peer route via a gateway
US7978714B2 (en) 2004-07-23 2011-07-12 Citrix Systems, Inc. Methods and systems for securing access to private networks using encryption and authentication technology built in to peripheral devices
US8291119B2 (en) 2004-07-23 2012-10-16 Citrix Systems, Inc. Method and systems for securing remote access to private networks
US8634420B2 (en) 2004-07-23 2014-01-21 Citrix Systems, Inc. Systems and methods for communicating a lossy protocol via a lossless protocol
US9219579B2 (en) 2004-07-23 2015-12-22 Citrix Systems, Inc. Systems and methods for client-side application-aware prioritization of network communications
US8351333B2 (en) 2004-07-23 2013-01-08 Citrix Systems, Inc. Systems and methods for communicating a lossy protocol via a lossless protocol using false acknowledgements
US8363650B2 (en) 2004-07-23 2013-01-29 Citrix Systems, Inc. Method and systems for routing packets from a gateway to an endpoint
US8954595B2 (en) 2004-12-30 2015-02-10 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP buffering
US8700695B2 (en) 2004-12-30 2014-04-15 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP pooling
US8856777B2 (en) 2004-12-30 2014-10-07 Citrix Systems, Inc. Systems and methods for automatic installation and execution of a client-side acceleration program
US8706877B2 (en) 2004-12-30 2014-04-22 Citrix Systems, Inc. Systems and methods for providing client-side dynamic redirection to bypass an intermediary
US8549149B2 (en) 2004-12-30 2013-10-01 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP multiplexing
US8788581B2 (en) 2005-01-24 2014-07-22 Citrix Systems, Inc. Method and device for performing caching of dynamically generated objects in a data communication network
US8848710B2 (en) 2005-01-24 2014-09-30 Citrix Systems, Inc. System and method for performing flash caching of dynamically generated objects in a data communication network
CN100430917C (en) * 2005-04-22 2008-11-05 天津曙光计算机产业有限公司 Method for self-constructing group operating system core and intelligent constructor
US8301839B2 (en) 2005-12-30 2012-10-30 Citrix Systems, Inc. System and method for performing granular invalidation of cached dynamically generated objects in a data communication network
US8499057B2 (en) 2005-12-30 2013-07-30 Citrix Systems, Inc System and method for performing flash crowd caching of dynamically generated objects in a data communication network
US8255456B2 (en) 2005-12-30 2012-08-28 Citrix Systems, Inc. System and method for performing flash caching of dynamically generated objects in a data communication network
CN102316539A (en) * 2006-09-28 2012-01-11 高通股份有限公司 Be used for the predictive qos resource allocation that fast session is set up
US9253092B2 (en) 2006-09-28 2016-02-02 Qualcomm Incorporated Predictive QoS resource allocation for rapid session establishment
CN101394400B (en) * 2007-05-18 2013-07-10 辉达公司 Method for establishing network connection for avoiding damage of ARP cache
CN102238140A (en) * 2010-04-27 2011-11-09 鸿富锦精密工业(深圳)有限公司 System and method for sharing server by clients
CN101924698A (en) * 2010-07-22 2010-12-22 福建星网锐捷网络有限公司 Method, system and equipment for balancing two-layer domain load based on IP unicast route
CN101924698B (en) * 2010-07-22 2012-12-12 福建星网锐捷网络有限公司 Method, system and equipment for balancing two-layer domain load based on IP unicast route
WO2012136053A1 (en) * 2011-04-02 2012-10-11 中兴通讯股份有限公司 Method and system for network access seamless switching
CN102143031A (en) * 2011-04-02 2011-08-03 中兴通讯股份有限公司 Network access seamless switching method and terminal
CN102143031B (en) * 2011-04-02 2016-03-02 中兴通讯股份有限公司 A kind of network access seamless switching method and terminal
US10404773B2 (en) 2011-08-10 2019-09-03 Huawei Technologies Co., Ltd. Distributed cluster processing system and packet processing method thereof
WO2013020459A1 (en) * 2011-08-10 2013-02-14 华为技术有限公司 Distributed cluster processing system and message processing method thereof
CN103139247A (en) * 2011-11-28 2013-06-05 百度在线网络技术(北京)有限公司 Keep-alive method, system and device for rear-end server in load balancing system
CN103139247B (en) * 2011-11-28 2015-11-25 百度在线网络技术(北京)有限公司 The keepalive method of back-end server, system and device in SiteServer LBS
CN103929365A (en) * 2014-03-25 2014-07-16 上海格尔软件股份有限公司 A load balancing system and method suitable for UDP services
CN103929365B (en) * 2014-03-25 2019-05-14 格尔软件股份有限公司 A kind of SiteServer LBS and method suitable for UDP service
CN109376123A (en) * 2014-08-12 2019-02-22 华为技术有限公司 Method for managing files, distributed storage system and management node
US11656763B2 (en) 2014-08-12 2023-05-23 Huawei Technologies Co., Ltd. File management method, distributed storage system, and management node
CN104283943A (en) * 2014-09-22 2015-01-14 珠海许继芝电网自动化有限公司 A communication optimization method for cluster servers
CN105812425B (en) * 2014-12-30 2019-04-19 Tcl集团股份有限公司 A method and node server for forming a cross-machine room server cluster
CN105812425A (en) * 2014-12-30 2016-07-27 Tcl集团股份有限公司 Method for establishing cross-room server cluster and node servers
CN107087014A (en) * 2017-01-24 2017-08-22 无锡英威腾电梯控制技术有限公司 A load balancing method and its controller
CN107087014B (en) * 2017-01-24 2020-12-15 无锡英威腾电梯控制技术有限公司 A load balancing method and controller thereof
CN115002041A (en) * 2022-05-31 2022-09-02 济南浪潮数据技术有限公司 Node balance scheduling method, device, equipment and storage medium

Also Published As

Publication number Publication date
CN1206600C (en) 2005-06-15

Similar Documents

Publication Publication Date Title
CN1206600C (en) Full distribution type aggregation network servicer system
CN1146186C (en) Recoverable Virtual Closed Cluster
CN1158615C (en) Method and device for implementing load balancing on streaming media server
US11750699B2 (en) Small message aggregation
CN101217493B (en) TCP data package transmission method
CN1875585A (en) Dynamic unknown L2 flooding control with MAC limits
CN101217464A (en) A transmission method of UDP data packets
CN103609071A (en) Systems and methods for tracking application layer flow via a multi-connection intermediary device
CN104904160A (en) Systems and methods for appflow for datastream
JP2001053789A (en) System for multi-layer broadband preparation in computer networks
CN104365067A (en) Systems and methods for reassembly of packets distributed across a cluster
WO2020177246A1 (en) Nat-based method for load balancing in dpdk environment
CN110768994A (en) A method of improving SIP gateway performance based on DPDK technology
CN102970242B (en) Method for achieving load balancing
CN107135268B (en) Distributed task computing method based on information center network
CN108200199B (en) Load balancing system and method in IPV4 over IPV6 tunnel scenario
CN106973053A (en) The acceleration method and system of BAS Broadband Access Server
US10298494B2 (en) Reducing short-packet overhead in computer clusters
CN111371804B (en) DNS (Domain name Server) back-end forwarding method and system
Yang et al. Heels: A host-enabled ebpf-based load balancing scheme
Ke et al. Load balancing using P4 in software-defined networks
Raumer et al. Performance exploration of software-based packet processing systems
CN102158406A (en) Intelligent routing method for computer network links
CN1633110A (en) Flow Analysis Method Based on Linux Kernel
CN101409669B (en) Hardware-based four-layer load balancing switch and its switching method

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
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee