CN107948088A - A kind of method of network application layer load balancing - Google Patents

A kind of method of network application layer load balancing Download PDF

Info

Publication number
CN107948088A
CN107948088A CN201810012507.7A CN201810012507A CN107948088A CN 107948088 A CN107948088 A CN 107948088A CN 201810012507 A CN201810012507 A CN 201810012507A CN 107948088 A CN107948088 A CN 107948088A
Authority
CN
China
Prior art keywords
load
load balancing
packet
application layer
flow
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
CN201810012507.7A
Other languages
Chinese (zh)
Other versions
CN107948088B (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.)
Bao Mu Science And Technology (tianjin) Co Ltd
Original Assignee
Bao Mu Science And Technology (tianjin) Co 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
Application filed by Bao Mu Science And Technology (tianjin) Co Ltd filed Critical Bao Mu Science And Technology (tianjin) Co Ltd
Priority to CN201810012507.7A priority Critical patent/CN107948088B/en
Publication of CN107948088A publication Critical patent/CN107948088A/en
Application granted granted Critical
Publication of CN107948088B publication Critical patent/CN107948088B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention provides a kind of method of network application layer load balancing, with the use of flows such as flow acquisition, conversation analysis, application service packet, rule match, priority packet and load dispatch, the granularity and efficiency of load balancing can be effectively improved, reasonable employment server hardware performance, it can realize that automatic load balancing algorithm is combined with the configuration of artificial rule match at the same time, the customization requirement of load balancing is met, improves the scope of application of load balancing and various environmental requirement.

Description

A kind of method of network application layer load balancing
Technical field
The invention belongs to network communication field, more particularly, to a kind of method of network application layer load balancing.
Background technology
Load balancing (Load Balance) is one of factor that must take into consideration in distributed system architecture design, it is usual Refer to please summed data uniformly share on multiple operating units and perform.In a data network, multiple servers are symmetrically square Formula forms a server set, and every server all has status of equal value, service individually can be externally provided and need not The auxiliary of other servers.By certain load balancing technology, the request that outside is sent is evenly distributed in symmetrical structure A certain server on, and the server for receiving request independently responds the request of client.Equally loaded being capable of average mark With client's request to server array, take this to provide quick obtaining significant data, solution largely concurrently accesses service problem.
In the application layer of network layer, client sends the requests to the load-balancing device of server zone front end, load Virtual Service on balancing equipment receives client request, by dispatching algorithm, selects real server, then pass through network address Change, after the destination address with real server address overwrite request message, send the requests to selected real server.Very When the response message of real server passes through load-balancing device, the source address of message is reduced to the VSIP of Virtual Service, then returns Back to client, whole load dispatch process is completed.This prior art uses the VSIP of Virtual Service, and user passes through access VSIP is come each server after accessing.When VSIP is abnormal, it is impossible to carry out load balancing, risk is big.This load at the same time Realizing for equalization scheme will realize that effect depends on the quality of algorithm, it is impossible to manually by dispatching algorithm built-in in equipment Intervened, the rule of load balancing is voluntarily set.
The content of the invention
In view of this, the present invention is directed to propose a kind of method of network application layer load balancing, obtained with the use of flow, The flows such as conversation analysis, application service packet, rule match, priority packet and load dispatch, it is equal can to effectively improve load The granularity and efficiency of weighing apparatus, reasonable employment server hardware performance, while can realize automatic load balancing algorithm and manually rule Matching configuration combines, and meets the customization requirement of load balancing.
To reach above-mentioned purpose, the technical proposal of the invention is realized in this way:
A kind of method of network application layer load balancing, including:
Step 1:Flow obtains:By to the packet header information extraction in data flow, obtain data message source IP, The five-tuple of destination IP, source port and destination interface and agreement;
Step 2:Conversation analysis:To the five of the source IP of the data packet of acquisition, destination IP, source port and destination interface and agreement Tuple, carries out division classification;
Step 3:Application service is grouped:According in step 2 conversation analysis as a result, to flow carry out service packet, it is same The packet of the flow separate marking of service or close service;
Also separate marking packet can be carried out to conversation type, a certain parameter of flow;
Step 4:Rule match:Manually pass through order line configuration load scheduling rule;It is saved in configuration file, and can be with Import and export preservation;
Step 5:Priority packet:Ensure that the scheduling of high performance server priority uses by priority packet, and can be with Flow load is accepted to greatest extent under the specification of permission;
Because the server performance and hardware parameter positioned at Intranet might have difference.It can be ensured by priority scheduling High performance server priority scheduling uses, and can accept flow load to greatest extent under the specification of permission, ensure that The performance requirement of service and stability requirement.
Step 6:Load dispatch:Using load-balancing algorithm, advised in combination with human configuration load dispatch in step 4 Then, and the priority packet strategy in step 5, the flow load balance that is grouped in step 3 is made to different servers.
Further, configuration file is stored using json forms in step 4.
Further, configuration file is stored using xml forms in step 4.
Further, used load-balancing algorithm can be source address hash algorithm, weighted polling method in step 6 And one or more of combinations in Smallest connection method.
Combined using the one or more in mainstream algorithm, realize load-balancing efficiency height, the switching between server It hurry up.
Further, visualization is carried out to load dispatch in step 6 to show.
Relative to the prior art, a kind of method of network application layer load balancing of the present invention, has the advantage that:
A kind of method of network application layer load balancing of the present invention, with the use of flow acquisition, conversation analysis, is answered With flows such as service packet, rule match, priority packet and load dispatch, the granularity and effect of load balancing can be effectively improved Rate, reasonable employment server hardware performance, while can realize that automatic load balancing algorithm is combined with the configuration of artificial rule match, The customization requirement of load balancing is met, improves the scope of application of load balancing and various environmental requirement.
Brief description of the drawings
The attached drawing for forming the part of the present invention is used for providing a further understanding of the present invention, schematic reality of the invention Apply example and its explanation is used to explain the present invention, do not form inappropriate limitation of the present invention.
In the accompanying drawings:
Fig. 1 is a kind of method flow schematic diagram of network application layer load balancing described in the embodiment of the present invention.
Embodiment
It should be noted that in the case where there is no conflict, the feature in embodiment and embodiment in the present invention can phase Mutually combination.
In the description of the present invention, it is to be understood that term " " center ", " longitudinal direction ", " transverse direction ", " on ", " under ", The orientation or position relationship of the instruction such as "front", "rear", "left", "right", " vertical ", " level ", " top ", " bottom ", " interior ", " outer " are Based on orientation shown in the drawings or position relationship, it is for only for ease of the description present invention and simplifies description, rather than instruction or dark Show that the device of meaning or element there must be specific orientation, with specific azimuth configuration and operation, thus it is it is not intended that right The limitation of the present invention.In addition, term " first ", " second " etc. are only used for description purpose, and it is not intended that instruction or hint phase To importance or the implicit quantity for indicating indicated technical characteristic.Thus, the feature for defining " first ", " second " etc. can To express or implicitly include one or more this feature.In the description of the present invention, unless otherwise indicated, " multiple " It is meant that two or more.
In the description of the present invention, it is necessary to illustrate, unless otherwise clearly defined and limited, term " installation ", " phase Even ", " connection " should be interpreted broadly, for example, it may be being fixedly connected or being detachably connected, or be integrally connected;Can To be mechanical connection or be electrically connected;It can be directly connected, can also be indirectly connected by intermediary, Ke Yishi Connection inside two elements.For the ordinary skill in the art, above-mentioned term can be understood by concrete condition Concrete meaning in the present invention.
Below with reference to the accompanying drawings and the present invention will be described in detail in conjunction with the embodiments.
As shown in Figure 1, a kind of method of network application layer load balancing, including:
Step 1:Flow obtains:By to the packet header information extraction in data flow, obtain data message source IP, The five-tuple of destination IP, source port and destination interface and agreement;
Step 2:Conversation analysis:To the five of the source IP of the data packet of acquisition, destination IP, source port and destination interface and agreement Tuple, carries out division classification;
Step 3:Application service is grouped:According in step 2 conversation analysis as a result, to flow carry out service packet, it is same The packet of the flow separate marking of service or close service;
Also separate marking packet can be carried out to conversation type, a certain parameter of flow;
Step 4:Rule match:Manually pass through order line configuration load scheduling rule;It is saved in configuration file, and can be with Import and export preservation;
Step 5:Priority packet:Ensure that the scheduling of high performance server priority uses by priority packet, and can be with Flow load is accepted to greatest extent under the specification of permission;
Because the server group performance and hardware parameter positioned at Intranet might have different differences.Pass through priority scheduling It can ensure that high performance server priority scheduling uses, and flow can be accepted to greatest extent under the specification of permission and born Carry, ensure that performance requirement and the stability requirement of service.
Step 6:Load dispatch:Using load-balancing algorithm, advised in combination with human configuration load dispatch in step 4 Then, and the priority packet strategy in step 5, the flow load balance that step 3 is grouped is made to different servers.
As shown in Figure 1, configuration file is stored using json forms in step 4.
As shown in Figure 1, configuration file is stored using xml forms in step 4.
As shown in Figure 1, used load-balancing algorithm can be source address hash algorithm, weighted polling in step 6 One or more of combinations in method and Smallest connection method.
Combined using the one or more in mainstream algorithm, realize load-balancing efficiency height, the switching between server It hurry up.
Shown as shown in Figure 1, carrying out visualization to load dispatch in step 6.
A kind of specific embodiment of the present invention:It is various ticket data services by taking the ticket sale system of certain ticketing service company as an example Load balancing is realized in the access link of device, certificate server.After client is logged in by webpage or ticketing client, pass through Step 1 obtains transmitted data traffic, further step 2 conversation analysis is carried out to data traffic, to the access session of access Parsed, extract the five-tuple of infomational message, determine it is new session by five-tuple content, or already present meeting Words.The application service packet of step 3 is further carried out, which can determine whether that message session is associated with which service, Setting mark, determines the species and protocol type of data traffic.After the completion of by step 4 carry out rule match, checked whether The loading rule that ticketing work personnel specify, is configured if not according to built-in rule of distributing rationally.It is then fed into step Rapid 5 carry out priority packet, determine the priority of accessed different resource, and priority is divided into two kinds, customized priority With automatic priority.Self-defined priority can manually be set, and automatic priority can be automatically generated by core algorithm.Finally lead to That crosses step 6 realizes load dispatch, and the ticket purchasing request of client is transferred to specific service database.
The foregoing is merely illustrative of the preferred embodiments of the present invention, is not intended to limit the invention, all essences in the present invention With within principle, any modification, equivalent replacement, improvement and so on, should all be included in the protection scope of the present invention god.

Claims (5)

  1. A kind of 1. method of network application layer load balancing, it is characterised in that:Including:
    Step 1:Flow obtains:By the source IP, the purpose that to the packet header information extraction in data flow, obtain data message The five-tuple of IP, source port and destination interface and agreement;
    Step 2:Conversation analysis:To five yuan of the source IP of the data packet of acquisition, destination IP, source port and destination interface and agreement Group, carries out division classification;
    Step 3:Application service is grouped:According in step 2 conversation analysis as a result, to flow carry out service packet, same service Or the flow separate marking packet of close service;
    Step 4:Rule match:Manually pass through order line configuration load scheduling rule;It is saved in configuration file, and can imports Export preserves;
    Step 5:Priority packet:Ensure that high performance server priority scheduling uses by priority packet, and can permit Perhaps flow load is accepted to greatest extent under specification;
    Step 6:Load dispatch:It is regular in combination with human configuration load dispatch in step 4 using load-balancing algorithm, with And the priority packet strategy in step 5, make the flow load balance that step 3 is grouped to different corresponding servers.
  2. A kind of 2. method of network application layer load balancing according to claim 1, it is characterised in that:Match somebody with somebody in step 4 File is put to store using json forms.
  3. A kind of 3. method of network application layer load balancing according to claim 1, it is characterised in that:Match somebody with somebody in step 4 File is put to store using xml forms.
  4. 4. according to a kind of method of any network application layer load balancing of claim 1 or 2, it is characterised in that:In step Load-balancing algorithm used in rapid 6 can be one kind in source address hash algorithm, weighted polling method and Smallest connection method Or several combinations.
  5. A kind of 5. method of network application layer load balancing according to claim 4, it is characterised in that:To in step 6 Load dispatch carries out visualization and shows.
CN201810012507.7A 2018-01-05 2018-01-05 Method for balancing network application layer load Active CN107948088B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810012507.7A CN107948088B (en) 2018-01-05 2018-01-05 Method for balancing network application layer load

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810012507.7A CN107948088B (en) 2018-01-05 2018-01-05 Method for balancing network application layer load

Publications (2)

Publication Number Publication Date
CN107948088A true CN107948088A (en) 2018-04-20
CN107948088B CN107948088B (en) 2021-10-01

Family

ID=61938530

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810012507.7A Active CN107948088B (en) 2018-01-05 2018-01-05 Method for balancing network application layer load

Country Status (1)

Country Link
CN (1) CN107948088B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111459664A (en) * 2020-03-19 2020-07-28 北京美住美宿科技有限公司 Hotel management system capable of balancing load

Citations (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020032727A1 (en) * 2000-09-08 2002-03-14 International Business Machines Corporation System and method for enhancing load controlling in a clustered Web site
US20030074467A1 (en) * 2001-10-11 2003-04-17 Oblak Sasha Peter Load balancing system and method for data communication network
CN101207550A (en) * 2007-03-16 2008-06-25 中国科学技术大学 Load balancing system and method for multi business to implement load balancing
US7469295B1 (en) * 2001-06-25 2008-12-23 Network Appliance, Inc. Modified round robin load balancing technique based on IP identifier
US20090010163A1 (en) * 2007-07-03 2009-01-08 Kddi R&D Laboratories Inc. Load balance server and method for balancing load of presence information
CN101562534A (en) * 2009-05-26 2009-10-21 中山大学 Network behavior analytic system
CN101945407A (en) * 2010-10-22 2011-01-12 东南大学 Load balancing method for content monitoring of mobile service
CN102571782A (en) * 2011-12-29 2012-07-11 浙江大学 Novel load balancing server cluster system
CN102932271A (en) * 2012-11-27 2013-02-13 无锡城市云计算中心有限公司 Method and device for realizing load balancing
CN103201989A (en) * 2012-08-09 2013-07-10 华为技术有限公司 Method, apparatus and system for controlling data transmission
CN103746931A (en) * 2012-09-28 2014-04-23 瞻博网络公司 Maintaining load balancing after service application with a netwok device
CN103905324A (en) * 2014-03-21 2014-07-02 汉柏科技有限公司 Dispatching and distributing method and system based on message five-element set
CN103929368A (en) * 2014-05-05 2014-07-16 华为技术有限公司 Load balance method and device for multiple service units
CN104852934A (en) * 2014-02-13 2015-08-19 阿里巴巴集团控股有限公司 Method for realizing flow distribution based on front-end scheduling, device and system thereof
CN105208133A (en) * 2015-10-20 2015-12-30 上海斐讯数据通信技术有限公司 Server, load balancer as well as server load balancing method and system
CN105357142A (en) * 2015-12-02 2016-02-24 浙江工商大学 Method for designing network load balancer system based on ForCES
CN105430027A (en) * 2014-09-04 2016-03-23 中国石油化工股份有限公司 Load balance dynamic pre-allocating method based on a plurality of resource scales
CN105763617A (en) * 2016-03-31 2016-07-13 北京百卓网络技术有限公司 Load balancing method and system
CN106034089A (en) * 2015-03-20 2016-10-19 中兴通讯股份有限公司 Message scheduling method and device based on scheduling flow identification
CN106302225A (en) * 2016-10-18 2017-01-04 上海优刻得信息科技有限公司 A kind of method and apparatus of server load balancing
CN106850599A (en) * 2017-01-18 2017-06-13 中国科学院信息工程研究所 A kind of NAT detection methods based on fusion user behavior and sudden peal of thunder ID
CN107196869A (en) * 2017-07-14 2017-09-22 北京知道创宇信息技术有限公司 The adaptive load balancing method, apparatus and system of Intrusion Detection based on host actual loading
CN107197035A (en) * 2017-06-21 2017-09-22 中国民航大学 A kind of compatibility dynamic load balancing method based on uniformity hash algorithm
CN107342926A (en) * 2017-06-13 2017-11-10 国家计算机网络与信息安全管理中心 A kind of method of multi-service Rapid matching distribution

Patent Citations (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020032727A1 (en) * 2000-09-08 2002-03-14 International Business Machines Corporation System and method for enhancing load controlling in a clustered Web site
US7469295B1 (en) * 2001-06-25 2008-12-23 Network Appliance, Inc. Modified round robin load balancing technique based on IP identifier
US20030074467A1 (en) * 2001-10-11 2003-04-17 Oblak Sasha Peter Load balancing system and method for data communication network
CN101207550A (en) * 2007-03-16 2008-06-25 中国科学技术大学 Load balancing system and method for multi business to implement load balancing
US20090010163A1 (en) * 2007-07-03 2009-01-08 Kddi R&D Laboratories Inc. Load balance server and method for balancing load of presence information
CN101562534A (en) * 2009-05-26 2009-10-21 中山大学 Network behavior analytic system
CN101945407A (en) * 2010-10-22 2011-01-12 东南大学 Load balancing method for content monitoring of mobile service
CN102571782A (en) * 2011-12-29 2012-07-11 浙江大学 Novel load balancing server cluster system
CN103201989A (en) * 2012-08-09 2013-07-10 华为技术有限公司 Method, apparatus and system for controlling data transmission
CN103746931A (en) * 2012-09-28 2014-04-23 瞻博网络公司 Maintaining load balancing after service application with a netwok device
CN102932271A (en) * 2012-11-27 2013-02-13 无锡城市云计算中心有限公司 Method and device for realizing load balancing
CN104852934A (en) * 2014-02-13 2015-08-19 阿里巴巴集团控股有限公司 Method for realizing flow distribution based on front-end scheduling, device and system thereof
CN103905324A (en) * 2014-03-21 2014-07-02 汉柏科技有限公司 Dispatching and distributing method and system based on message five-element set
CN103929368A (en) * 2014-05-05 2014-07-16 华为技术有限公司 Load balance method and device for multiple service units
CN105430027A (en) * 2014-09-04 2016-03-23 中国石油化工股份有限公司 Load balance dynamic pre-allocating method based on a plurality of resource scales
CN106034089A (en) * 2015-03-20 2016-10-19 中兴通讯股份有限公司 Message scheduling method and device based on scheduling flow identification
CN105208133A (en) * 2015-10-20 2015-12-30 上海斐讯数据通信技术有限公司 Server, load balancer as well as server load balancing method and system
CN105357142A (en) * 2015-12-02 2016-02-24 浙江工商大学 Method for designing network load balancer system based on ForCES
CN105763617A (en) * 2016-03-31 2016-07-13 北京百卓网络技术有限公司 Load balancing method and system
CN106302225A (en) * 2016-10-18 2017-01-04 上海优刻得信息科技有限公司 A kind of method and apparatus of server load balancing
CN106850599A (en) * 2017-01-18 2017-06-13 中国科学院信息工程研究所 A kind of NAT detection methods based on fusion user behavior and sudden peal of thunder ID
CN107342926A (en) * 2017-06-13 2017-11-10 国家计算机网络与信息安全管理中心 A kind of method of multi-service Rapid matching distribution
CN107197035A (en) * 2017-06-21 2017-09-22 中国民航大学 A kind of compatibility dynamic load balancing method based on uniformity hash algorithm
CN107196869A (en) * 2017-07-14 2017-09-22 北京知道创宇信息技术有限公司 The adaptive load balancing method, apparatus and system of Intrusion Detection based on host actual loading

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
梅琨,余慧: "应用负载均衡技术原理与实现", 《电脑与电信》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111459664A (en) * 2020-03-19 2020-07-28 北京美住美宿科技有限公司 Hotel management system capable of balancing load

Also Published As

Publication number Publication date
CN107948088B (en) 2021-10-01

Similar Documents

Publication Publication Date Title
US7222088B2 (en) Service system
CN106034330B (en) Mobile terminal flow processing method, apparatus and system based on content distributing network
CN109981789A (en) A kind of micro services engine based on proxy mode
CN103442030B (en) Send and process method and system and the client terminal device of service requesting information
CN104023092B (en) A kind of method and system for realizing orientation flow bag
CN104169901B (en) Content delivery method, system and equipment for optimizing network
CN105765921B (en) For carrying out method, system and the equipment of DIAMETER routing using software defined network function
CN109756450A (en) A kind of methods, devices and systems of Internet of Things Network Communication
CN103997725B (en) System and method for the mobile data network in abstract and layout network environment
CN110352604A (en) For providing method, system and computer-readable medium of service ability exposure function (SCEF) as cloud service
CN109819061A (en) A kind of method, apparatus and equipment handling cloud service in cloud system
CN105872079B (en) A kind of link equalization method based on domain name system DNS
CN103493442B (en) terminal, control device and communication method
CN103747274B (en) A kind of video data center setting up cache cluster and cache resources dispatching method thereof
CN106161399A (en) A kind of security service delivery method and system
CN108366021A (en) A kind of method and system of the concurrent web page access business of processing
CN109257293A (en) A kind of method for limiting speed, device and gateway server for network congestion
CN109803226A (en) A kind of communication means and device
CN108540973A (en) Data service handling method, device and system under roaming scence
CN107360202A (en) The access scheduling method and device of a kind of terminal
CN103959715A (en) Methods, systems, and computer readable media for testing a diameter routing node
CN104683252B (en) A kind of gateway applied to gaming network is connected into method and system
CN107948088A (en) A kind of method of network application layer load balancing
US7168043B2 (en) Apparatus and system for communication
CN110958306A (en) Data request unified exchange mechanism based on micro-service

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant