国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于TCP/IP協(xié)議的網(wǎng)絡(luò)負載均衡軟件的設(shè)計與實現(xiàn)

2014-07-28 00:24許子敬
電腦知識與技術(shù) 2014年16期

許子敬

摘要:隨著以太網(wǎng)技術(shù)的發(fā)展,用戶對業(yè)務(wù)的實效性和QoS的需求也越來越高。要解決這類問題,首先需要面對網(wǎng)絡(luò)上傳輸?shù)男畔?nèi)容與傳輸鏈路協(xié)調(diào)管理的問題。特別是當(dāng)網(wǎng)絡(luò)傳輸大量的不同級別、不同需求的數(shù)據(jù),一旦重要數(shù)據(jù)長時間延時或所需傳輸鏈路帶寬不足甚至被占用或突然中斷,將會造成極大的損失。針對多WAN口接入、網(wǎng)絡(luò)負載均衡的運用,首先對傳輸?shù)臄?shù)據(jù)信息分類,然后根據(jù)所獲取的每個WAN口鏈路狀態(tài)數(shù)據(jù),對傳輸?shù)臄?shù)據(jù)按比例進行分段并通過不同的計算機端口發(fā)送,最后通過不同的鏈路進行傳輸。

關(guān)鍵詞:多WAN口接入;網(wǎng)絡(luò)負載均衡;數(shù)據(jù)分類

中圖分類號:TP393 文獻標(biāo)識碼:A 文章編號:1009-3044(2014)16-3754-03

Abstract: With the development of Ethernet technology, user demand for business effectiveness and QoS are also increasing. To solve this problem, you first need to face the information content transmitted over the network and the transmission link coordinated management issues. Especially when a large number of different levels of network transmission, the different needs of the data, once the prolonged delay of important data or insufficient bandwidth required for transmission link is occupied or even sudden interruption will cause great losses. For multi-WAN port access, the use of network load balancing, the first transmission of data classification, and then based on each WAN port link state data obtained, the data transfer proportionally segmented by different computer port transmission, and finally transmitted via different links.

Key words: Multi-WAN port access, Network Load-balancing, data classification

隨著計算機網(wǎng)絡(luò)的發(fā)展,其復(fù)雜性和異構(gòu)性也隨之增加,尤其是路由技術(shù)的出現(xiàn),使得計算機網(wǎng)絡(luò)的管理更加重要和復(fù)雜[1-2]。其中網(wǎng)絡(luò)負載均衡可以提供擴展網(wǎng)絡(luò)帶寬、增加吞吐量、加強網(wǎng)絡(luò)數(shù)據(jù)處理能力、提高網(wǎng)絡(luò)的靈活性和可用性服務(wù)[1-2]。該文以Java Socket通信技術(shù)設(shè)計出一種基于TCP/IP協(xié)議的計算機網(wǎng)絡(luò)負載均衡平臺,為以后網(wǎng)絡(luò)的管理打下堅實基礎(chǔ)。

1 系統(tǒng)設(shè)計

1.1搭建硬件系統(tǒng)環(huán)境

該系統(tǒng)需要數(shù)據(jù)客戶端、數(shù)據(jù)服務(wù)端、網(wǎng)絡(luò)管理服務(wù)端、mini2440ARM開發(fā)板、多WAN口路由器。

1)數(shù)據(jù)客戶端

主要是向mini2440ARM開發(fā)板的網(wǎng)絡(luò)管理服務(wù)器發(fā)送請求及向數(shù)據(jù)服務(wù)端發(fā)送數(shù)據(jù)。

2) 數(shù)據(jù)服務(wù)端

主要是負責(zé)接收數(shù)據(jù)客戶端發(fā)送的信息。

3) mini2440 ARM開發(fā)板

基于s3c2440芯片的嵌入式開發(fā)板,并采用專業(yè)穩(wěn)定的CPU內(nèi)核電源芯片和復(fù)位芯片來保證系統(tǒng)運行時的穩(wěn)定性。mini2440的PCB采用沉金工藝的四層板設(shè)計,專業(yè)等長布線,保證關(guān)鍵信號線的信號完整性,提供Linux和WindowsCE 5.0/6.0嵌入式系統(tǒng)。信令服務(wù)器部署在mini2440 ARM開發(fā)板上,主要是負責(zé)接收數(shù)據(jù)客戶端發(fā)送的請求、反饋處理結(jié)果及管理多WAN口路由器。

4) 多WAN口路由器

以它為橋梁,連接數(shù)據(jù)客戶端、mini2440ARM開發(fā)板和數(shù)據(jù)服務(wù)端。首先,它要接收來自數(shù)據(jù)客戶端的請求,并發(fā)送給mini2440ARM開發(fā)板上部署的網(wǎng)絡(luò)管理服務(wù)端,其次,還要接收mini2440ARM開發(fā)板的反饋數(shù)據(jù)并傳輸給數(shù)據(jù)客戶端,然后接收來自數(shù)據(jù)客戶端的傳輸?shù)臄?shù)據(jù),并發(fā)送給數(shù)據(jù)服務(wù)端。

其硬件系統(tǒng)架構(gòu)如圖1。

1.2軟件架構(gòu)

根據(jù)系統(tǒng)軟件的要求,將整個系統(tǒng)平臺框架分為兩部分。第一部分為數(shù)據(jù)管理系統(tǒng),其主要任務(wù)是采集、管理、發(fā)送數(shù)據(jù)、接受數(shù)據(jù)。另一部分為網(wǎng)絡(luò)管理系統(tǒng),ARM開發(fā)板上的網(wǎng)絡(luò)管理服務(wù)端分析數(shù)據(jù)客戶端發(fā)送的請求,得到數(shù)據(jù)客戶端發(fā)送的請求數(shù)據(jù)屬性(源地址、目的地址、數(shù)據(jù)類型、服務(wù)等級、是否分段)并保存,然后根據(jù)當(dāng)前鏈路狀態(tài),為其分配可用鏈路并反饋。

1.3數(shù)據(jù)管理系統(tǒng)設(shè)計

數(shù)據(jù)管理系統(tǒng)主要任務(wù)是負責(zé)數(shù)據(jù)采集、管理、發(fā)送和接受。其主要模塊包括:數(shù)據(jù)采集模塊;數(shù)據(jù)管理模塊;數(shù)據(jù)發(fā)送模塊;數(shù)據(jù)接受模塊以及定時刷新模塊。

數(shù)據(jù)管理系統(tǒng)工作流程如圖2所示。

例如,客戶端軟件可以根據(jù)數(shù)據(jù)的大小將其按照每條鏈路質(zhì)量比例進行分段,比如一個200M的數(shù)據(jù),2條鏈路質(zhì)量比例為2:3,那么新聞稿件可以分成80M、120M的2段,分別通過2條鏈路進行傳輸。如上圖2所示,兩段分別從不同鏈路進行傳輸,一段用鏈路1進行傳輸,一段用鏈路2進行傳輸。endprint

1) 數(shù)據(jù)采集模塊。數(shù)據(jù)管理系統(tǒng)利用Swing JfileChooser[3-4]組件獲得數(shù)據(jù)路徑,DataInputStream[3-4]輸入流通過其路徑采集數(shù)據(jù)。開始時,數(shù)據(jù)客戶端一直處于偵聽狀態(tài),當(dāng)有事件觸發(fā)時,偵聽程序便開始讀取數(shù)據(jù)。主要功能是采集數(shù)據(jù)的功能。

2) 數(shù)據(jù)管理模塊。將采集的數(shù)據(jù)緩存在字節(jié)數(shù)組里面,然后對其進行封裝,添加其他屬性,如ID號、名稱、大小、是否分段等,同時把這些屬性轉(zhuǎn)換成約定好的二進制數(shù)據(jù)命令發(fā)送給網(wǎng)絡(luò)管理服務(wù)端,以便其能夠順利完成分段、分配鏈路等工作,最后根據(jù)網(wǎng)路服務(wù)端的反饋數(shù)據(jù)內(nèi)容,進行數(shù)據(jù)的分段、分配計算機端口號等工作。

3) 數(shù)據(jù)發(fā)送模塊。經(jīng)過數(shù)據(jù)采集模塊采集到的原始數(shù)據(jù),進行封裝、分段等相應(yīng)的處理,并將處理后的數(shù)據(jù)利用Socket DataOutputStream[3-4]輸出流通過不同的計算機端口發(fā)送給多WAN口路由器,然后路由器根據(jù)端口號將這些數(shù)據(jù)通過指定的鏈路發(fā)送給數(shù)據(jù)服務(wù)端。

4) 數(shù)據(jù)接受模塊。數(shù)據(jù)服務(wù)端利用Socket DataInputStream[3-4]輸入流接收數(shù)據(jù)客戶端發(fā)送的數(shù)據(jù),然后根據(jù)每段數(shù)據(jù)的屬性內(nèi)容進行組合,再通過DataOutputStream[3-4]輸出流形成完整的數(shù)據(jù)。開始時,數(shù)據(jù)服務(wù)端一直處于偵聽狀態(tài),當(dāng)有事件觸發(fā)時,偵聽程序便開始讀取數(shù)據(jù)。主要是接受數(shù)據(jù)的功能。

5) 定時刷新模塊。當(dāng)系統(tǒng)運行一段時間后,設(shè)置定時刷新模塊不斷刷新數(shù)據(jù)緩存,將系統(tǒng)內(nèi)發(fā)送成功的數(shù)據(jù)從數(shù)據(jù)緩存中刪除。

1.4網(wǎng)絡(luò)管理系統(tǒng)設(shè)計

網(wǎng)絡(luò)管理系統(tǒng)的流程圖如圖3所示。

1)請求管理模塊。利用C Socket的輸入流獲得數(shù)據(jù)客戶端的請求數(shù)據(jù)。開始時,網(wǎng)絡(luò)服務(wù)端請求管理模塊一直處于偵聽狀態(tài),當(dāng)有事件觸發(fā)時,偵聽程序便開始讀取請求數(shù)據(jù),并存入緩存中。

2) 鏈路管理模塊。通過內(nèi)部軟件接口,從鏈路檢測軟件程序獲取當(dāng)前所有鏈路的質(zhì)量信息,每隔一段時間更新鏈路信息緩存。

3) 反饋管理模塊。從請求數(shù)據(jù)緩存中讀取所有請求數(shù)據(jù),從鏈路信息緩存中讀取鏈路信息,然后根據(jù)相關(guān)算法計算后生成控制命令,然后通過telnet配置多WAN口路由器,如特定端口號的tcp數(shù)據(jù)從指定鏈路傳輸。之后,將一系列結(jié)果信息反饋給數(shù)據(jù)客戶端。

2 模擬實驗與分析

實驗設(shè)備包括4臺PC機(3臺作為數(shù)據(jù)客戶端、1臺作為數(shù)據(jù)服務(wù)主機)、2臺多WAN口路由器和1塊ARM開發(fā)板。

通過系統(tǒng)實驗測試,平臺各項功能運行正常,所有設(shè)備通過路由器形成組網(wǎng),數(shù)據(jù)管理系統(tǒng)可對網(wǎng)絡(luò)數(shù)據(jù)進行采集、管理、發(fā)送和接受,網(wǎng)絡(luò)管理系統(tǒng)能夠通過客戶端的請求所攜帶的內(nèi)容得到當(dāng)前每臺主機將要傳輸?shù)臄?shù)據(jù)屬性,同時根據(jù)所獲取的鏈路狀態(tài)數(shù)據(jù),生成相關(guān)命令,通過telnet配置路由器,最后反饋給數(shù)據(jù)客戶端。

3 結(jié)束語

該平臺能夠結(jié)合計算機網(wǎng)絡(luò)的路由技術(shù),處理來自用戶的數(shù)據(jù)信息,根據(jù)信息的內(nèi)容,便于為用戶分配有效的可用鏈路,并能根據(jù)分析結(jié)果對網(wǎng)絡(luò)資源進行協(xié)調(diào)與整合,保證網(wǎng)絡(luò)的運行性能,為計算機網(wǎng)絡(luò)在未來的廣泛有效的應(yīng)用打下堅實的基礎(chǔ)。

參考文獻:

[1] 謝希仁.計算機網(wǎng)絡(luò)[M].北京:電子工業(yè)出版社, 2011.

[2] BehrouzA.Forouzan. TCP/IP PROTOCOL SUITE[M].北京:清華大學(xué)出版社,2009.

[3] 孫衛(wèi)琴.Java網(wǎng)絡(luò)編程精解[M].北京:電子工業(yè)出版社,2007.

[4] Bruce Eckel.Thinking in Java[M].北京:機械工業(yè)出版社,2007.endprint

1) 數(shù)據(jù)采集模塊。數(shù)據(jù)管理系統(tǒng)利用Swing JfileChooser[3-4]組件獲得數(shù)據(jù)路徑,DataInputStream[3-4]輸入流通過其路徑采集數(shù)據(jù)。開始時,數(shù)據(jù)客戶端一直處于偵聽狀態(tài),當(dāng)有事件觸發(fā)時,偵聽程序便開始讀取數(shù)據(jù)。主要功能是采集數(shù)據(jù)的功能。

2) 數(shù)據(jù)管理模塊。將采集的數(shù)據(jù)緩存在字節(jié)數(shù)組里面,然后對其進行封裝,添加其他屬性,如ID號、名稱、大小、是否分段等,同時把這些屬性轉(zhuǎn)換成約定好的二進制數(shù)據(jù)命令發(fā)送給網(wǎng)絡(luò)管理服務(wù)端,以便其能夠順利完成分段、分配鏈路等工作,最后根據(jù)網(wǎng)路服務(wù)端的反饋數(shù)據(jù)內(nèi)容,進行數(shù)據(jù)的分段、分配計算機端口號等工作。

3) 數(shù)據(jù)發(fā)送模塊。經(jīng)過數(shù)據(jù)采集模塊采集到的原始數(shù)據(jù),進行封裝、分段等相應(yīng)的處理,并將處理后的數(shù)據(jù)利用Socket DataOutputStream[3-4]輸出流通過不同的計算機端口發(fā)送給多WAN口路由器,然后路由器根據(jù)端口號將這些數(shù)據(jù)通過指定的鏈路發(fā)送給數(shù)據(jù)服務(wù)端。

4) 數(shù)據(jù)接受模塊。數(shù)據(jù)服務(wù)端利用Socket DataInputStream[3-4]輸入流接收數(shù)據(jù)客戶端發(fā)送的數(shù)據(jù),然后根據(jù)每段數(shù)據(jù)的屬性內(nèi)容進行組合,再通過DataOutputStream[3-4]輸出流形成完整的數(shù)據(jù)。開始時,數(shù)據(jù)服務(wù)端一直處于偵聽狀態(tài),當(dāng)有事件觸發(fā)時,偵聽程序便開始讀取數(shù)據(jù)。主要是接受數(shù)據(jù)的功能。

5) 定時刷新模塊。當(dāng)系統(tǒng)運行一段時間后,設(shè)置定時刷新模塊不斷刷新數(shù)據(jù)緩存,將系統(tǒng)內(nèi)發(fā)送成功的數(shù)據(jù)從數(shù)據(jù)緩存中刪除。

1.4網(wǎng)絡(luò)管理系統(tǒng)設(shè)計

網(wǎng)絡(luò)管理系統(tǒng)的流程圖如圖3所示。

1)請求管理模塊。利用C Socket的輸入流獲得數(shù)據(jù)客戶端的請求數(shù)據(jù)。開始時,網(wǎng)絡(luò)服務(wù)端請求管理模塊一直處于偵聽狀態(tài),當(dāng)有事件觸發(fā)時,偵聽程序便開始讀取請求數(shù)據(jù),并存入緩存中。

2) 鏈路管理模塊。通過內(nèi)部軟件接口,從鏈路檢測軟件程序獲取當(dāng)前所有鏈路的質(zhì)量信息,每隔一段時間更新鏈路信息緩存。

3) 反饋管理模塊。從請求數(shù)據(jù)緩存中讀取所有請求數(shù)據(jù),從鏈路信息緩存中讀取鏈路信息,然后根據(jù)相關(guān)算法計算后生成控制命令,然后通過telnet配置多WAN口路由器,如特定端口號的tcp數(shù)據(jù)從指定鏈路傳輸。之后,將一系列結(jié)果信息反饋給數(shù)據(jù)客戶端。

2 模擬實驗與分析

實驗設(shè)備包括4臺PC機(3臺作為數(shù)據(jù)客戶端、1臺作為數(shù)據(jù)服務(wù)主機)、2臺多WAN口路由器和1塊ARM開發(fā)板。

通過系統(tǒng)實驗測試,平臺各項功能運行正常,所有設(shè)備通過路由器形成組網(wǎng),數(shù)據(jù)管理系統(tǒng)可對網(wǎng)絡(luò)數(shù)據(jù)進行采集、管理、發(fā)送和接受,網(wǎng)絡(luò)管理系統(tǒng)能夠通過客戶端的請求所攜帶的內(nèi)容得到當(dāng)前每臺主機將要傳輸?shù)臄?shù)據(jù)屬性,同時根據(jù)所獲取的鏈路狀態(tài)數(shù)據(jù),生成相關(guān)命令,通過telnet配置路由器,最后反饋給數(shù)據(jù)客戶端。

3 結(jié)束語

該平臺能夠結(jié)合計算機網(wǎng)絡(luò)的路由技術(shù),處理來自用戶的數(shù)據(jù)信息,根據(jù)信息的內(nèi)容,便于為用戶分配有效的可用鏈路,并能根據(jù)分析結(jié)果對網(wǎng)絡(luò)資源進行協(xié)調(diào)與整合,保證網(wǎng)絡(luò)的運行性能,為計算機網(wǎng)絡(luò)在未來的廣泛有效的應(yīng)用打下堅實的基礎(chǔ)。

參考文獻:

[1] 謝希仁.計算機網(wǎng)絡(luò)[M].北京:電子工業(yè)出版社, 2011.

[2] BehrouzA.Forouzan. TCP/IP PROTOCOL SUITE[M].北京:清華大學(xué)出版社,2009.

[3] 孫衛(wèi)琴.Java網(wǎng)絡(luò)編程精解[M].北京:電子工業(yè)出版社,2007.

[4] Bruce Eckel.Thinking in Java[M].北京:機械工業(yè)出版社,2007.endprint

1) 數(shù)據(jù)采集模塊。數(shù)據(jù)管理系統(tǒng)利用Swing JfileChooser[3-4]組件獲得數(shù)據(jù)路徑,DataInputStream[3-4]輸入流通過其路徑采集數(shù)據(jù)。開始時,數(shù)據(jù)客戶端一直處于偵聽狀態(tài),當(dāng)有事件觸發(fā)時,偵聽程序便開始讀取數(shù)據(jù)。主要功能是采集數(shù)據(jù)的功能。

2) 數(shù)據(jù)管理模塊。將采集的數(shù)據(jù)緩存在字節(jié)數(shù)組里面,然后對其進行封裝,添加其他屬性,如ID號、名稱、大小、是否分段等,同時把這些屬性轉(zhuǎn)換成約定好的二進制數(shù)據(jù)命令發(fā)送給網(wǎng)絡(luò)管理服務(wù)端,以便其能夠順利完成分段、分配鏈路等工作,最后根據(jù)網(wǎng)路服務(wù)端的反饋數(shù)據(jù)內(nèi)容,進行數(shù)據(jù)的分段、分配計算機端口號等工作。

3) 數(shù)據(jù)發(fā)送模塊。經(jīng)過數(shù)據(jù)采集模塊采集到的原始數(shù)據(jù),進行封裝、分段等相應(yīng)的處理,并將處理后的數(shù)據(jù)利用Socket DataOutputStream[3-4]輸出流通過不同的計算機端口發(fā)送給多WAN口路由器,然后路由器根據(jù)端口號將這些數(shù)據(jù)通過指定的鏈路發(fā)送給數(shù)據(jù)服務(wù)端。

4) 數(shù)據(jù)接受模塊。數(shù)據(jù)服務(wù)端利用Socket DataInputStream[3-4]輸入流接收數(shù)據(jù)客戶端發(fā)送的數(shù)據(jù),然后根據(jù)每段數(shù)據(jù)的屬性內(nèi)容進行組合,再通過DataOutputStream[3-4]輸出流形成完整的數(shù)據(jù)。開始時,數(shù)據(jù)服務(wù)端一直處于偵聽狀態(tài),當(dāng)有事件觸發(fā)時,偵聽程序便開始讀取數(shù)據(jù)。主要是接受數(shù)據(jù)的功能。

5) 定時刷新模塊。當(dāng)系統(tǒng)運行一段時間后,設(shè)置定時刷新模塊不斷刷新數(shù)據(jù)緩存,將系統(tǒng)內(nèi)發(fā)送成功的數(shù)據(jù)從數(shù)據(jù)緩存中刪除。

1.4網(wǎng)絡(luò)管理系統(tǒng)設(shè)計

網(wǎng)絡(luò)管理系統(tǒng)的流程圖如圖3所示。

1)請求管理模塊。利用C Socket的輸入流獲得數(shù)據(jù)客戶端的請求數(shù)據(jù)。開始時,網(wǎng)絡(luò)服務(wù)端請求管理模塊一直處于偵聽狀態(tài),當(dāng)有事件觸發(fā)時,偵聽程序便開始讀取請求數(shù)據(jù),并存入緩存中。

2) 鏈路管理模塊。通過內(nèi)部軟件接口,從鏈路檢測軟件程序獲取當(dāng)前所有鏈路的質(zhì)量信息,每隔一段時間更新鏈路信息緩存。

3) 反饋管理模塊。從請求數(shù)據(jù)緩存中讀取所有請求數(shù)據(jù),從鏈路信息緩存中讀取鏈路信息,然后根據(jù)相關(guān)算法計算后生成控制命令,然后通過telnet配置多WAN口路由器,如特定端口號的tcp數(shù)據(jù)從指定鏈路傳輸。之后,將一系列結(jié)果信息反饋給數(shù)據(jù)客戶端。

2 模擬實驗與分析

實驗設(shè)備包括4臺PC機(3臺作為數(shù)據(jù)客戶端、1臺作為數(shù)據(jù)服務(wù)主機)、2臺多WAN口路由器和1塊ARM開發(fā)板。

通過系統(tǒng)實驗測試,平臺各項功能運行正常,所有設(shè)備通過路由器形成組網(wǎng),數(shù)據(jù)管理系統(tǒng)可對網(wǎng)絡(luò)數(shù)據(jù)進行采集、管理、發(fā)送和接受,網(wǎng)絡(luò)管理系統(tǒng)能夠通過客戶端的請求所攜帶的內(nèi)容得到當(dāng)前每臺主機將要傳輸?shù)臄?shù)據(jù)屬性,同時根據(jù)所獲取的鏈路狀態(tài)數(shù)據(jù),生成相關(guān)命令,通過telnet配置路由器,最后反饋給數(shù)據(jù)客戶端。

3 結(jié)束語

該平臺能夠結(jié)合計算機網(wǎng)絡(luò)的路由技術(shù),處理來自用戶的數(shù)據(jù)信息,根據(jù)信息的內(nèi)容,便于為用戶分配有效的可用鏈路,并能根據(jù)分析結(jié)果對網(wǎng)絡(luò)資源進行協(xié)調(diào)與整合,保證網(wǎng)絡(luò)的運行性能,為計算機網(wǎng)絡(luò)在未來的廣泛有效的應(yīng)用打下堅實的基礎(chǔ)。

參考文獻:

[1] 謝希仁.計算機網(wǎng)絡(luò)[M].北京:電子工業(yè)出版社, 2011.

[2] BehrouzA.Forouzan. TCP/IP PROTOCOL SUITE[M].北京:清華大學(xué)出版社,2009.

[3] 孫衛(wèi)琴.Java網(wǎng)絡(luò)編程精解[M].北京:電子工業(yè)出版社,2007.

[4] Bruce Eckel.Thinking in Java[M].北京:機械工業(yè)出版社,2007.endprint

建平县| 巩留县| 福鼎市| 保康县| 阿克苏市| 海口市| 广德县| 察隅县| 漳浦县| 迭部县| 健康| 河曲县| 同江市| 秭归县| 中江县| 柳江县| 原阳县| 全椒县| 天镇县| 平山县| 育儿| 外汇| 佛冈县| 龙口市| 襄汾县| 盈江县| 湖州市| 玛曲县| 金阳县| 太湖县| 乌苏市| 如东县| 南丹县| 洪泽县| 鹿邑县| 年辖:市辖区| 仙桃市| 陕西省| 张掖市| 清苑县| 皋兰县|