CN103491019A - Mixed algorithm for network load balancing - Google Patents
Mixed algorithm for network load balancing Download PDFInfo
- Publication number
- CN103491019A CN103491019A CN201310429836.9A CN201310429836A CN103491019A CN 103491019 A CN103491019 A CN 103491019A CN 201310429836 A CN201310429836 A CN 201310429836A CN 103491019 A CN103491019 A CN 103491019A
- Authority
- CN
- China
- Prior art keywords
- algorithm
- network
- flow
- load balancing
- network load
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Network load balancing plays an important role in a computer network, and is built on the basis of an existing network structure. A cheap, effective and transparent method is provided for expanding the bandwidth of network equipment and a server, increasing throughput capacity, enhancing network data processing capacity and improving the flexibility and usability of a network. An existing load balancing algorithm comprises round-robin, Hash dispatching based on streams and FS dispatching based on stream fragmentations. The invention provides a mixed and dispatching algorithm for the network load balancing. Mixed objects are a Hash algorithm and an FS algorithm. According to the core concept, on the basis of the FS algorithm, an FS table with a configurable size is introduced and used for storing five tuples of flow already appearing and the time of the last data package.
Description
Technical field
The present invention relates to computer network, be specially load-balancing algorithm.
Background technology
Network Load Balance tool in computer network plays a very important role, load balancing is based upon on existing network infrastructure, it provide the effectively transparent method extended network equipment of a kind of cheapness and server bandwidth, increase throughput, Strengthens network data-handling capacity, improve flexibility and the availability of network.Load balancing comprises scheduling and forwarding two parts, as shown in Figure 1.Scheduling is the key of load balancing, and forwarding engine is responsible for according to purpose IP Packet Generation to next stage equipment.
Initial dispatching algorithm is simple Round-robin, presses the order of packet, issues successively the forwarding engine of different numberings.Because Round-robin is operated in the aspect of packet, while causing packet to arrive purpose equipment, there will be out of order phenomenon, also destroyed the locality of network flow simultaneously.Afterwards, a kind of based on the flow(data flow) hash algorithm of aspect becomes main flow.Flow refers to have the packet of identical 5 tuples, and 5 tuples refer to source IP, purpose IP, source port, destination interface and protocol type.Key using 5 tuples as the Hash function, the result obtained is exactly the forwarding engine that will send.The drawback of this method is, when the data packet number in a flow is very large, will cause certain forwarding engine load overweight.Tsing-Hua University the time of heap of stone (transliteration), the people such as Liu Bin (transliteration) find by research, in network packet, even if the packet in same flow neither continuously send.If the time interval between two packets in flow has surpassed certain critical value, just think that they belong to different flow slice, at this moment just they should be assigned on different forwarding engines, Here it is based on flow-slice(FS) load-balancing algorithm, as shown in Figure 2.
Summary of the invention
The present invention proposes a kind of load balance scheduling algorithm of mixing, mix here to as if hash algorithm and flow-slice algorithm.Core concept is on the basis of flow-slice algorithm, to introduce a configurable flow-slice table of size (FS table), 5 tuples of the flow occurred in order to storage and the time of a upper packet.
The difference of the present invention and FS is:
1.FS, in scheduling, by the corresponding flow information of hash table storage, for guaranteeing save data as much as possible, this table is very large.FS table in the present invention is an adjustable table of size, and size is generally 500-1000.
2.FS in scheduling, the definite of new flow-slice forwarding engine ID is with overall round-robin, uses the hash algorithm in the present invention.
3.FS in scheduling, the overall round-robin of definite use of the forwarding engine ID of the different flow slice of same flow, the present invention uses round-robin to each flow.
Idiographic flow of the present invention as shown in Figure 3.
The accompanying drawing explanation
Fig. 1 is responsible for the balance dispatching model;
Fig. 2 FS dispatching algorithm flow process;
Fig. 3 mixed scheduling algorithm flow process.
Embodiment
The first step, obtain 5 tuples and time
Read source IP and purpose IP from the IP header of network packet network layer, then read the transport layer protocol type, according to transport layer protocol (tcp or udp) type, read source port and destination interface.So just obtain 5 complete tuples.The time of advent of record data bag.
Second step, the forwarding engine that the specified data bag mails to
This process can be described as:
2.1 judge that 5 tuples whether in FS table, if so, turn 2.2 steps, otherwise turn 2.5 steps.
2.2 the time of recording in calculating current data packet and FS table is poor, whether surpasses the time interval of agreement, if fruit is to turn 2.3, otherwise turn 2.4.
2.3 determine new forwarding engine by round-robin, revise forwarding engine and time.
2.4 send out packet to the forwarding engine recorded in FS table.
2.5 judge that whether FS table is full, if do not have, turn 2.6 steps, otherwise turn 2.7 steps.
2.6 5 tuples are used to Hash, determine the forwarding engine that it initially mails to.By 5 tuples, time and forwarding engine insert in FS table.
There is no at most 2.7 find out the data item a used, calculate time poor of current data packet and a, if, over the designated time interval, turn 2.8, otherwise turn 2.9
2.8 5 tuples are used to Hash, determine the forwarding engine that it initially mails to.Use 5 tuples, time and forwarding engine are inserted and are replaced a data item.
2.9 5 tuples are used to Hash, determine the forwarding engine that it mails to.
Claims (4)
1. the hybrid algorithm of a Network Load Balance, is characterized in that, in conjunction with existing Hash scheduling and FS scheduling.Be specially, on the basis of flow-slice algorithm, introduce a configurable flow-slice table of size (FS table), 5 tuples of the flow occurred in order to storage and the time of a upper packet.
2. the hybrid algorithm of a kind of Network Load Balance according to claim 1, is characterized in that, FS table is an adjustable table of size, and size is generally 500-1000.
3. the hybrid algorithm of a kind of Network Load Balance according to claim 1, is characterized in that, the definite of new flow-slice forwarding engine ID is to use the hash algorithm.
4. the hybrid algorithm of a kind of Network Load Balance according to claim 1, is characterized in that, each flow that determines of the forwarding engine ID of the different flow slice of same flow is used round-robin.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310429836.9A CN103491019A (en) | 2013-09-18 | 2013-09-18 | Mixed algorithm for network load balancing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310429836.9A CN103491019A (en) | 2013-09-18 | 2013-09-18 | Mixed algorithm for network load balancing |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103491019A true CN103491019A (en) | 2014-01-01 |
Family
ID=49830988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310429836.9A Pending CN103491019A (en) | 2013-09-18 | 2013-09-18 | Mixed algorithm for network load balancing |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103491019A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957167A (en) * | 2014-03-14 | 2014-07-30 | 李志敏 | Mixing algorithm for network load balancing |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101394362A (en) * | 2008-11-12 | 2009-03-25 | 清华大学 | Method for load balance to multi-core network processor based on flow fragmentation |
-
2013
- 2013-09-18 CN CN201310429836.9A patent/CN103491019A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101394362A (en) * | 2008-11-12 | 2009-03-25 | 清华大学 | Method for load balance to multi-core network processor based on flow fragmentation |
Non-Patent Citations (2)
Title |
---|
石磊,刘斌(音译)等: "Load-Balancing Multipath Switching System with Flow Slice", 《IEEE TRANSACTIONS ON COMPUTERS》, vol. 61, no. 32012, 31 March 2012 (2012-03-31), pages 2 - 6 * |
罗拥军,李晓乐等: "负载均衡算法综述", 《科技情报开发与经济》, vol. 18, no. 232008, 15 August 2008 (2008-08-15), pages 134 - 136 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957167A (en) * | 2014-03-14 | 2014-07-30 | 李志敏 | Mixing algorithm for network load balancing |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101656677B (en) | Message diversion processing method and device | |
CN104283806B (en) | Business chain processing method and equipment | |
WO2016161857A1 (en) | Multi-tenant high-concurrency instant messaging cloud platform | |
Xu et al. | Real-time update with joint optimization of route selection and update scheduling for SDNs | |
CN104468353A (en) | SDN based data center network flow management method | |
CN105975433B (en) | A kind of message processing method and device | |
CN102801635B (en) | Packet ordering method used in multi-core processor system | |
CN104780115A (en) | Load balancing method and load balancing system in cloud computing environment | |
CN106357726B (en) | Load-balancing method and device | |
CN104052679B (en) | The load-balancing method of network traffics and device | |
Lockwood et al. | Implementing ultra low latency data center services with programmable logic | |
CN102209019A (en) | Load balancing method and load balancing equipment based on message payload | |
EP3560148B1 (en) | Database functions-defined network switch | |
CN106161633A (en) | A kind of based on the transmission method of packaging file under cloud computing environment and system | |
CN104579970B (en) | A kind of strategy matching device of IPv6 messages | |
CN104301246A (en) | Large-flow load balanced forwarding method and device based on SDN | |
CN102624889A (en) | Mass data concurrency processing method based on receiving and processing separation | |
CN105379210A (en) | Data flow processing method and apparatus | |
CN103957167A (en) | Mixing algorithm for network load balancing | |
CN103491019A (en) | Mixed algorithm for network load balancing | |
CN102355422A (en) | Multicore, parallel and lock-free quality of service (QOS) flow control method | |
CN104394075B (en) | A kind of method and apparatus of message transmissions | |
CN103916316A (en) | Linear speed capturing method of network data packages | |
Langlet et al. | Direct Telemetry Access | |
WO2016145737A1 (en) | Load sharing method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140101 |
|
WD01 | Invention patent application deemed withdrawn after publication |