基于軟件定義網(wǎng)絡(luò)的服務(wù)器集群負(fù)載均衡技術(shù)研究
doi: 10.11999/JEIT180207 cstr: 32379.14.JEIT180207
-
北京郵電大學(xué) 網(wǎng)絡(luò)與交換技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室 ??北京 ??100876
Research on SDN-based Load Balancing Technology of Server Cluster
-
State Key Laboratory of Networking and Switching Technology, Beijing University of Posts and Telecommunications, Beijing 100876, China
-
摘要: 在當(dāng)前的網(wǎng)絡(luò)體系結(jié)構(gòu)下,采用硬件系統(tǒng)實(shí)現(xiàn)服務(wù)器集群負(fù)載均衡存在著獲取負(fù)載節(jié)點(diǎn)狀態(tài)困難、流量導(dǎo)向方式復(fù)雜等制約因素,不利于提升服務(wù)器集群的伸縮性和服務(wù)性能。針對(duì)此問(wèn)題,該文提出一種基于軟件定義網(wǎng)絡(luò)(SDN)的負(fù)載均衡機(jī)制(SDNLB)。該機(jī)制借助SDN具有的集中式控制和流量靈活調(diào)度優(yōu)勢(shì),利用SNMP協(xié)議和OpenFlow協(xié)議對(duì)服務(wù)器的運(yùn)行狀態(tài)和全局網(wǎng)絡(luò)負(fù)載信息進(jìn)行實(shí)時(shí)監(jiān)測(cè),并通過(guò)權(quán)值計(jì)算的方式選擇出權(quán)重最高的服務(wù)器作為流處理的目標(biāo)服務(wù)器,在此基礎(chǔ)上,采用最優(yōu)轉(zhuǎn)發(fā)路徑算法進(jìn)行流量調(diào)度,從而達(dá)到提高服務(wù)器集群的利用率與處理性能的目的。搭建了實(shí)驗(yàn)平臺(tái)對(duì)SDNLB的性能進(jìn)行仿真測(cè)試,實(shí)驗(yàn)結(jié)果表明:在相同的網(wǎng)絡(luò)負(fù)載條件下,SDNLB與其他負(fù)載均衡算法相比,能夠有效地降低服務(wù)器集群的負(fù)載,并能夠顯著提高網(wǎng)絡(luò)吞吐量和帶寬利用率,縮短流的完成時(shí)間和平均時(shí)延。
-
關(guān)鍵詞:
- 軟件定義網(wǎng)絡(luò) /
- OpenFlow /
- 服務(wù)器集群 /
- 負(fù)載均衡 /
- 流量工程
Abstract: Under the present network architecture, it is disadvantageous for scalability and service performance of server cluster to adopt hardware systems to realize load balancing of server cluster, because there are some restriction factors in such a method, including the difficulty of acquiring load nodes status and the complexity of redirecting traffic, etc. To solve the problem, a Load Balancing mechanism based on Software-Defined Networking (SDNLB) is proposed. With superiorities of SDN such as centralized control and flexible traffic scheduling, SDNLB monitors run states of servers and overall network load information by means of SNMP protocol and OpenFlow protocol in real time, and chooses the highest weight server as target server aiming for processing coming flows through the way of weight value calculation. On this basis, SDNLB takes full advantage of the optimal forwarding path algorithm to carry on traffic scheduling, and achieves the goal that raises utilization rate and processing performance of server cluster. An experiment platform is built to carry out simulation tests for overall performance of SDNLB, and the experiment results show that under the same network load conditions, SDNLB lowers effectively loads of server cluster, noticeably raises network throughput and bandwidth utilization, and reduces finish time and average latency of flows, compared with other load balancing algorithms.-
Key words:
- Software-Defined Networking (SDN) /
- OpenFlow /
- Server cluster /
- Load balancing /
- Traffic engineering
-
表 1 服務(wù)器主要性能指標(biāo)
指標(biāo)類(lèi)型 指標(biāo)值 狀態(tài) CPU利用率 非空閑任務(wù)占用比小于70% 良好 70%~85% 過(guò)高 90%以上 很差 內(nèi)存訪問(wèn) 沒(méi)有頁(yè)交換 良好 每個(gè)CPU每秒10個(gè)頁(yè)交換 過(guò)高 更多的頁(yè)交換 很差 磁盤(pán)I/O 活動(dòng)時(shí)間百分比小于30% 良好 30%~45% 過(guò)高 50%以上 很差 下載: 導(dǎo)出CSV
表 2 流轉(zhuǎn)發(fā)過(guò)程
算法1 SDNLB最優(yōu)轉(zhuǎn)發(fā)路徑算法 輸入:Topology_View /*當(dāng)前網(wǎng)絡(luò)拓?fù)湟晥D*/ Link_Load /*網(wǎng)絡(luò)鏈路負(fù)載信息*/ Target-Server /*目標(biāo)服務(wù)器*/ Flow /*新到達(dá)的流*/ 輸出:R /*最優(yōu)轉(zhuǎn)發(fā)路徑*/ (1) implement logical loopless processing (2) destination=target-server (3) create a graph that meets bandwidth demand of flow (4) A=[ ] (5) A[0]= Dijkstra(graph, source, destination) (6) B=[ ] (7) for i: 1 to K do (8) for j: 0 to size(A[i –1])–1 do (9) spur=A[i –1].node( j) (10) root=A[i –1].nodes(0, j) (11) for path in A do (12) if root==path.nodes(0, j) do (13) remove path.nodes(j, j+1) (14) end if (15) end for (16) spurpath=Dijkstra(graph, spur, destination) (17) entirepath=root+spurpath (18) if entirepath not in B do (19) B.add(entirepath) (20) end if (21) recover those removed edges (22) end for (23) if B.length==0 do (24) break (25) else do (26) B.sort() (27) A[i]=B[0] (28) B.delete(B[0]) (29) end if (30) end for (31) if A.length==1 do (32) R=A[0] (33) else do (34) determine R by choosing a path from list A.Bandwidth utilization of the path should be minimum (35) end if (36) return R 下載: 導(dǎo)出CSV
表 4 服務(wù)器平均負(fù)載
服務(wù)器編號(hào) 2 4 6 8 10 12 14 16 SDNLB 0.71 0.71 0.70 0.71 0.68 0.69 0.73 0.72 E-Dijkstra 0.75 0.74 0.75 0.76 0.74 0.74 0.76 0.77 GFF 0.74 0.75 0.78 0.78 0.77 0.74 0.77 0.78 ECMP 0.86 0.86 0.87 0.89 0.87 0.87 0.85 0.87 下載: 導(dǎo)出CSV
表 3 CPU平均利用率(%)
服務(wù)器編號(hào) 2 4 6 8 10 12 14 16 SDNLB 22.65 22.53 22.43 22.31 22.20 22.58 22.48 22.11 E-Dijkstra 23.39 23.34 23.32 23.29 23.26 23.50 23.36 23.29 GFF 23.40 23.46 23.45 23.48 23.46 23.37 23.34 23.54 ECMP 23.79 23.70 23.66 23.60 23.59 23.75 23.68 23.56 下載: 導(dǎo)出CSV
-
GHOMI E, RAHMANI A, and QADER N. Load-balancing algorithms in cloud computing: A survey[J]. Journal of Network and Computer Applications, 2017, 88(12): 50–71 doi: 10.1016/j.jnca.2017.04.007 SHARMA G and BUSCH C. A load balanced directory for distributed shared memory objects[J]. Journal of Parallel and Distributed Computing, 2015, 78(4): 6–24 doi: 10.1016/j.jpdc.2015.02.002 ILCHOL P, QIAO Baiyou, SHEN Muchuan, et al. An efficient load balancing approach for N-hierarchical web server cluster[J]. Wuhan University Journal of Natural Sciences, 2015, 20(6): 537–542 doi: 10.1007/s11859-015-1130-9 YANG Juipin. Elastic load balancing using self-adaptive replication management[J]. IEEE Access, 2017, 5(99): 7495–7504 doi: 10.1109/ACCESS.2016.2631490 SHEIKHI S and BABAMIR S. A predictive framework for load balancing clustered web servers[J]. The Journal of Supercomputing, 2016, 72(2): 588–611 doi: 10.1007/s11227-015-1584-8 MAO Qilin and SHEN Weikang. A load balancing method based on SDN[C]. The 7th International Conference on Measuring Technology and Mechatronics Automation, Nanchang, China, 2015: 18–21. TRESTIAN R, KATRINIS K, and MUNTEAN G. OFLoad: An OpenFlow-based dynamic load balancing strategy for datacenter networks[J]. IEEE Transactions on Network and Service Management, 2017, 14(4): 792–803 doi: 10.1109/TNSM.2017.2758402 李龍, 付斌章, 陳明宇, 等. Nimble: 一種適用于OpenFlow網(wǎng)絡(luò)的快速流調(diào)度策略[J]. 計(jì)算機(jī)學(xué)報(bào), 2015, 38(5): 1056–1068 doi: 10.3724/SP.J.1016.2015.01056LI Long, FU Binzhang, CHEN Mingyu, et al. Nimble: A fast flow scheduling strategy for OpenFlow networks[J]. Chinese Journal of Computers, 2015, 38(5): 1056–1068 doi: 10.3724/SP.J.1016.2015.01056 AL-FARES M, RADHAKRISHNAN S, RAGHAVAN B, et al. Hedera: Dynamic flow scheduling for data center networks[C]. NSDI’10 Proceedings of the 7th USENIX conference on networked systems design and implementation, San Jose, USA, 2010: 281–296. 蔡岳平, 王昌平. 軟件定義數(shù)據(jù)中心網(wǎng)絡(luò)混合路由機(jī)制[J]. 通信學(xué)報(bào), 2016, 37(4): 44–52 doi: 10.11959/j.issn.1000-436x.2016071CAI Yueping and WANG Changping. Software defined data center network with hybrid routing[J]. Journal on Communications, 2016, 37(4): 44–52 doi: 10.11959/j.issn.1000-436x.2016071 覃匡宇, 黃傳河, 劉柯威, 等. 基于多路廣播樹(shù)的SDN多路徑路由算法[J]. 計(jì)算機(jī)科學(xué), 2018, 45(1): 211–215 doi: 10.11896/j.issn.1002-137X.2018.01.037TAN Kuangyu, HUANG Chuanhe, LIU Kewei, et al. Multipath routing algorithm in software defined networking based on multipath broadcast tree[J]. Computer Science, 2018, 45(1): 211–215 doi: 10.11896/j.issn.1002-137X.2018.01.037 LIAO Lingxia and LEUNG VC. LLDP based link latency monitoring in software defined networks[C]. The 12th International Conference on Network and Service Management, Montreal, Canada, 2016: 330–335. RUBIN I and ZHANG Runhe. Max-min utility fair flow management for networks with route diversity[J]. International Journal of Network Management, 2010, 20(6): 361–381 doi: 10.1002/nem.740 YEN J Y. Finding the K shortest loopless paths in a network[J]. Management Science, 1971, 17(11): 712–716 doi: 10.1287/mnsc.17.11.712 JIANG J R, HUANG H W, LIAO J H, et al. Extending Dijkstra’s shortest path algorithm for software defined networking[C]. The 16th Asia-Pacific Network Operations and Management Symposium, Hsinchu, China, 2014: 1–4. ZHANG Zhe, BOCKELMAN B, CARDER D, et al. Lark: An effective approach for software-defined networking in high throughput computing clusters[J]. Future Generation Computer Systems, 2017, 72(7): 105–117 doi: 10.1016/j.future.2016.03.010 CHEN Yingying, JAIN S, ADHIKARI V, et al. A first look at inter-data center traffic characteristics via Yahoo! datasets[C]. IEEE INFOCOM, Shanghai, China, 2011: 1620–1628. -