CN107508760B - 一种基于线路源ip进行负载分发的方法 - Google Patents

一种基于线路源ip进行负载分发的方法 Download PDF

Info

Publication number
CN107508760B
CN107508760B CN201710851109.XA CN201710851109A CN107508760B CN 107508760 B CN107508760 B CN 107508760B CN 201710851109 A CN201710851109 A CN 201710851109A CN 107508760 B CN107508760 B CN 107508760B
Authority
CN
China
Prior art keywords
operator
server
load balancing
line
client
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.)
Active
Application number
CN201710851109.XA
Other languages
English (en)
Other versions
CN107508760A (zh
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.)
Hangzhou Dbappsecurity Technology Co Ltd
Original Assignee
Hangzhou Dbappsecurity Technology 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 Hangzhou Dbappsecurity Technology Co Ltd filed Critical Hangzhou Dbappsecurity Technology Co Ltd
Priority to CN201710851109.XA priority Critical patent/CN107508760B/zh
Publication of CN107508760A publication Critical patent/CN107508760A/zh
Application granted granted Critical
Publication of CN107508760B publication Critical patent/CN107508760B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Abstract

本发明涉及负载均衡算法领域,旨在提供一种基于线路源IP进行负载分发的方法。该种基于线路源IP进行负载分发的方法包括步骤:客户端发起HTTP请求进行DNS查询时,自建DNS首先根据发起查询请求的客户端的IP信息来判断客户端的运营商信息,再根据运营商信息响应负载均衡设备的IP地址;HTTP请求到达返回的负载均衡设备,负载均衡设备通过自身配置的IP信息,确定运营商信息,然后对于不同服务器线路配置,基于源IP负载分发。本发明减少了跨运营商的HTTP线路请求,能减轻网络上不同运营商间的路由负载;同时由于不需要进行跨运营商的转发,可以减小请求响应时间,提升用户服务体验。

Description

一种基于线路源IP进行负载分发的方法
技术领域
本发明是关于负载均衡算法领域,特别涉及一种基于线路源IP进行负载分发的方法。
背景技术
针对现在网络环境中,客户对网络服务质量以及网站对高可靠性的要求,许多网站在对外提供服务时会提供多条不同运营商的线路。现有的负载均衡算法没有考虑HTTP服务中请求源IP与网站提供的不同运营商线路的关系,将大量不同源IP的请求负载均衡到多个线路上。在这种情况下,会出现大量的跨运营商的请求线路,加重网络负载,同时会导致网站服务质量的下降(在跨运营商的情况下,会使响应延时增加)。
发明内容
本发明的主要目的在于克服现有技术中的不足,提供一种在对HTTP请求进行负载均衡时,基于源IP判断请求的运营商,并将请求分发到服务器提供的与源IP相同运营商的线路上的方法。为解决上述技术问题,本发明的解决方案是:
提供一种基于线路源IP进行负载分发的方法,具体包括下述步骤:
步骤A:客户端发起HTTP请求进行DNS查询时,自建的DNS服务器在收到DNS查询时,首先根据发起查询请求的客户端的IP信息来判断客户端的运营商信息;然后根据客户端的运营商信息,向客户端响应负载均衡设备的IP地址:
若存在与客户端IP相同运营商的IP(负载均衡设备的IP地址),则响应和客户端IP相同运营商的IP(负载均衡设备的IP地址);
若不存在与客户端IP相同运营商的IP(负载均衡设备的IP地址),则随机返回其他的IP(负载均衡设备的IP地址);
所述负载均衡设备为多台服务器(即指WEB服务器集群,是负载均衡设备进行应用分发的对象)提供负载均衡功能时,需要进行必要的服务器信息配置(即负载均衡设备上配置WEB服务器的IP信息以及该WEB服务器所接入的线路);负载均衡设备在处理WEB服务器提供的线路时,根据配置的服务器IP信息判断服务器是哪个运营商线路,并记录此服务器提供的运营商线路;
所述自建的DNS服务器上添加有多个负载均衡设备的IP信息;
步骤B:一个HTTP请求到达步骤A中返回的负载均衡设备进行负载分发时,负载均衡设备通过自身配置的IP信息,确定运营商信息,然后对于不同服务器线路配置(优先选择与自身配置的IP所属运营商相同的服务器线路进行分发),基于源IP负载分发的具体处理方法如下:
1)如果服务器提供同一运营商的多条线路(不论该运营商是否与HTTP请求运营商相同):
对相同运营商的线路使用现有的负载均衡方法(包括轮询、加权轮询、最小连接数、源IP hash等)进行选择;
2)如果不同运营商线路各只有一条,且含有与HTTP请求运营商相同的服务器线路:
首先基于源IP选择与HTTP请求运营商相同的服务器线路,但当该服务器线路超过一定的负载之后,使用现有的负载均衡方法将HTTP请求分发到其他运营商线路上;
3)如果不同运营商线路各有多条线路,且含有与HTTP请求运营商相同的服务器线路:
首先基于源IP选择与HTTP请求运营商相同的服务器线路(如果有多台服务器,服务器之间可以进行轮询),但当该运营商的服务器线路超过一定的负载之后,使用现有的负载均衡方法将HTTP请求分发到其他运营商线路上;
4)如果服务器没有配置和客户端请求相同运营商的线路:
在负载分发时,使用现有的负载均衡方法选择服务器配置的其他运营商线路。
本发明的工作原理:通过考虑客户源IP和服务器线路的运营商信息,减少负载负载均衡分发中的跨运营商的连接线路,减轻网络负载,减小请求相应时间,提升用户体验。
与现有技术相比,本发明的有益效果是:
本发明通过基于源IP的负载分发,能将来自某一运营商的HTTP请求分发到相同运营商的服务器线路上。
本发明减少了跨运营商的HTTP线路请求,可以减轻网络上不同运营商间的路由负载;同时由于不需要进行跨运营商的转发,可以减小请求响应时间,提升用户服务体验。
附图说明
图1为实施例中带有负载均衡功能的网络服务的拓扑图。
具体实施方式
首先需要说明的是,本发明是计算机技术在网站对外提供服务领域的一种应用。在本发明的实现过程中,会涉及到多个算法的应用。申请人认为,如在仔细阅读申请文件、准确理解本发明的实现原理和发明目的以后,在结合现有公知技术的情况下,本领域技术人员完全可以运用其掌握的软件编程技能实现本发明。凡本发明申请文件提及的均属此范畴,申请人不再一一列举。
下面结合附图与具体实施方式对本发明作进一步详细描述:
下面的实施例可以使本专业的专业技术人员更全面地理解本发明,但不以任何方式限制本发明。
如图1所示的网络拓扑,如果不考虑客户端源IP以及服务器的运营商信息,原负载均衡方法分发后会出现大量USR1->LB2->SRV1、USR2->LB1->SRV2、USR1->LB1->SRV2、USR2->LB2->SRV1的连接线路。这些情况,包在网络中需要经过更多的路由器,加重路由器的负载,增加请求响应时间。
采用本发明基于线路源IP进行负载分发的方法,考虑客户端源IP、负载均衡设备、服务器集群的运营商信息,在链路负载未超过阈值时,连接线路是USR1->LB1->SRV1和USR2->LB2->SRV2。这两种连接线路,包在网络中经过的路由器最少。如果出现链路负载超过阈值的情况,比如SRV1的负载超过上限,才会出现USR1->LB1->SRV2的连接线路。在整个系统,会避免出现USR1->LB2->SRV1、USR2->LB1->SRV2这样的跨运营商、高延时的连接线路。
最后,需要注意的是,以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有很多变形。本领域的普通技术人员能从本发明公开的内容中直接导出或联想到的所有变形,均应认为是本发明的保护范围。

Claims (1)

1.一种基于线路源IP进行负载分发的方法,其特征在于,具体包括下述步骤:
步骤A:客户端发起HTTP请求进行DNS查询时,自建的DNS服务器在收到DNS查询时,首先根据发起查询请求的客户端的IP信息来判断客户端的运营商信息;然后根据客户端的运营商信息,向客户端响应负载均衡设备的IP地址:
若存在与客户端IP相同运营商的IP,则响应和客户端IP相同运营商的IP;
若不存在与客户端IP相同运营商的IP,则随机返回其他的IP;
所述负载均衡设备为多台服务器提供负载均衡功能时,需要进行必要的服务器信息配置;负载均衡设备在处理WEB服务器提供的线路时,根据配置的服务器IP信息判断服务器是哪个运营商线路,并记录此服务器提供的运营商线路;
所述自建的DNS服务器上添加有多个负载均衡设备的IP信息;
步骤B:一个HTTP请求到达步骤A中返回的负载均衡设备进行负载分发时,负载均衡设备通过自身配置的IP信息,确定运营商信息,然后对于不同服务器线路配置,基于源IP负载分发的具体处理方法如下:
1)如果服务器提供同一运营商的多条线路:
对相同运营商的线路使用现有的负载均衡方法进行选择;
2)如果不同运营商线路各只有一条,且含有与HTTP请求运营商相同的服务器线路:
首先基于源IP选择与HTTP请求运营商相同的服务器线路,但当该服务器线路超过一定的负载之后,使用现有的负载均衡方法将HTTP请求分发到其他运营商线路上;
3)如果不同运营商线路各有多条线路,且含有与HTTP请求运营商相同的服务器线路:
首先基于源IP选择与HTTP请求运营商相同的服务器线路,但当该运营商的服务器线路超过一定的负载之后,使用现有的负载均衡方法将HTTP请求分发到其他运营商线路上;
4)如果服务器没有配置和客户端请求相同运营商的线路:
在负载分发时,使用现有的负载均衡方法选择服务器配置的其他运营商线路。
CN201710851109.XA 2017-09-20 2017-09-20 一种基于线路源ip进行负载分发的方法 Active CN107508760B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710851109.XA CN107508760B (zh) 2017-09-20 2017-09-20 一种基于线路源ip进行负载分发的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710851109.XA CN107508760B (zh) 2017-09-20 2017-09-20 一种基于线路源ip进行负载分发的方法

Publications (2)

Publication Number Publication Date
CN107508760A CN107508760A (zh) 2017-12-22
CN107508760B true CN107508760B (zh) 2020-01-03

Family

ID=60697068

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710851109.XA Active CN107508760B (zh) 2017-09-20 2017-09-20 一种基于线路源ip进行负载分发的方法

Country Status (1)

Country Link
CN (1) CN107508760B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110995890B (zh) * 2020-03-03 2020-10-16 北京安博通科技股份有限公司 域名请求的调度方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101340327A (zh) * 2008-08-21 2009-01-07 腾讯科技(深圳)有限公司 实现网络服务器负载均衡的方法、系统和域名解析服务器
CN101873358A (zh) * 2010-06-11 2010-10-27 杭州华三通信技术有限公司 一种基于域名解析的链路负载均衡方法和设备
CN102299969A (zh) * 2011-09-16 2011-12-28 北京新媒传信科技有限公司 一种Web访问方法、七层交换设备和服务网络
CN104092751A (zh) * 2014-07-01 2014-10-08 杭州华三通信技术有限公司 一种业务访问方法和设备
CN203942551U (zh) * 2014-06-17 2014-11-12 深圳市高德信通信有限公司 一种网络运营商智能dns设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6665702B1 (en) * 1998-07-15 2003-12-16 Radware Ltd. Load balancing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101340327A (zh) * 2008-08-21 2009-01-07 腾讯科技(深圳)有限公司 实现网络服务器负载均衡的方法、系统和域名解析服务器
CN101873358A (zh) * 2010-06-11 2010-10-27 杭州华三通信技术有限公司 一种基于域名解析的链路负载均衡方法和设备
CN102299969A (zh) * 2011-09-16 2011-12-28 北京新媒传信科技有限公司 一种Web访问方法、七层交换设备和服务网络
CN203942551U (zh) * 2014-06-17 2014-11-12 深圳市高德信通信有限公司 一种网络运营商智能dns设备
CN104092751A (zh) * 2014-07-01 2014-10-08 杭州华三通信技术有限公司 一种业务访问方法和设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
多出口网络链路负载均衡系统的研究;苏开宇;《中国计量学院学报》;20090331;第65-70页 *

Also Published As

Publication number Publication date
CN107508760A (zh) 2017-12-22

Similar Documents

Publication Publication Date Title
US11165879B2 (en) Proxy server failover protection in a content delivery network
WO2020253266A1 (zh) 一种提供边缘服务的方法、装置和设备
US10735553B2 (en) Micro-services in a telecommunications network
US9923959B2 (en) Load balancing with layered edge servers
EP2695358B1 (en) Selection of service nodes for provision of services
US8738700B2 (en) Method and system for providing network services
US10715479B2 (en) Connection redistribution in load-balanced systems
US10129152B2 (en) Setting method, server device and service chain system
WO2014098556A1 (en) System and method for dynamically allocating an application session manager at runtime
CN109672711B (zh) 一种基于反向代理服务器Nginx的http请求处理方法及系统
CN111049901B (zh) 一种负载均衡方法、负载均衡系统及注册服务器
CN110086886B (zh) 动态会话保持方法及装置
CN107689878A (zh) 基于命名调度的tcp长连接负载均衡系统
US9729652B2 (en) Dynamically affinitizing users to a version of a website
US20190037044A1 (en) Content distribution and delivery optimization in a content delivery network (cdn)
CN107508760B (zh) 一种基于线路源ip进行负载分发的方法
CN105681266A (zh) 一种多媒体电话MMTel的通讯集群方法及装置
CN112825524B (zh) 网络服务节点的确定方法、装置和系统
CN113535402A (zh) 基于5g mec的负载均衡处理方法、装置及电子设备
CN109451074B (zh) 一种基于portal协议的服务器负载均衡处理办法
KR101382177B1 (ko) 동적 메시지 라우팅 시스템 및 방법
KR101648568B1 (ko) 분산된 객체를 클러스터링하여 하나의 객체처럼 활용하는 방법 및 이를 사용한 분산 시스템
JP7249820B2 (ja) ゲートウェイ装置、ネットワークシステム、制御方法、及びプログラム
US20230156071A1 (en) Dynamic scaling of a distributed computing system
CN112968975B (zh) 服务请求的处理方法和装置

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 310051 No. 188 Lianhui Street, Xixing Street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant after: Hangzhou Annan information technology Limited by Share Ltd

Address before: Zhejiang Zhongcai Building No. 68 Binjiang District road Hangzhou City, Zhejiang Province, the 310051 and 15 layer

Applicant before: Dbappsecurity Co.,ltd.

GR01 Patent grant
GR01 Patent grant