鄒鵬飛,張持健,鄭奎昂,馬曉璐
(安徽師范大學 物理與電子信息學院,安徽 蕪湖241000)
基于OPNET的網絡服務器跨層建模設計與應用
鄒鵬飛,張持健,鄭奎昂,馬曉璐
(安徽師范大學 物理與電子信息學院,安徽 蕪湖241000)
由于當前網絡規模以及網絡數據復雜度的逐步增大,給網絡服務器性能帶來了嚴峻的挑戰,網絡擁塞以及服務器超載等問題亟待解決。為解決上述問題,本文在傳統網絡層次架構的基礎上,提出了適用于網絡服務器的跨層網絡設計,并通過權威的網絡仿真工具(OPNET)實現了跨層網絡服務器模型的構建。實驗結果表明,本文設計的跨層網絡模型能夠很好地實現網絡服務器在性能上的優化,具有可行性。
網絡服務器;網絡層次架構;跨層設計;OPNET
隨著信息技術的不斷發展和網絡用戶數量的不斷增加,網絡信息量呈現幾何式增長,網絡擁塞以及服務器超載成為網絡服務器當前面臨的嚴峻問題[1],因此,我們要求網絡服務器能夠在處理速率以及傳輸效率方面得到提升。
網絡服務器是一類能在網絡環境下為用戶提供集中運算、信息收發及大數據管理等服務的專用計算機,然而在復雜的網絡情況下,網絡服務器仍然存在較多問題,例如:負載均衡調度、服務器性能和高額的服務器成本等。所以,在綜合考慮上述問題的基礎上,怎樣盡可能地發揮服務器的作用,從而更好地提升服務器性能來滿足網絡用戶的需求已成為服務器性能研究的重難點[2]。
國內外目前對于網絡服務器性能上的優化主要集中于研究調度算法上,當前常用的調度算法主要有:1998年由Colajamni M和Catdellini V.提出的最少連接法[3],2004年由Katz E D提出的輪轉法、散列法[4],還有2011年游小明提出的加權輪轉法[5]等,盡管算法的改進在一定程度上提升了網絡服務器的性能,但是隨著網絡飛速發展,網絡環境日益復雜,使得服務器對數據的要求以及處理邏輯也大相徑庭,因此上述調度算法不具備適應性,仍然存在一定缺陷。
為解決上述問題,文中在資源有限的網絡服務器上進行設計優化,首先對網絡協議棧各層進行精簡與改進,并通過跨層設計使層與層之間互聯更為密切,層間信息能夠及時共享,其次,還設計了適合在網絡服務器使用的傳輸協議,以達到快速調配,降低網絡擁塞,控制服務器超載等目的。
傳統網絡模型主要包括我們所熟知的OSI/RM模型和TCP/IP模型,其對應的層次關系如圖1所示。
OSI/RM(Open Systems Interconnection/Reference Model)模型是國際標準化組織(ISO)制定的一個用于計算機或通信系統間互聯的標準體系,它將網絡劃為以下7層:應用層、表示層、會話層、傳輸層、網絡層、數據鏈路層、物理層。OSI/RM模型自制定后作為一套全面的標準,被廣泛應用于眾多協議中,但因為該模型過于細致且復雜,很多協議均對其進行優化裁剪[6]。

圖1 傳統網絡的OSI/RM模型和TCP/IP模型
TCP/IP模型則簡化了復雜的七層網絡模型,提出了更為高效的4層網絡架構,即網絡接口層、網絡互聯層、傳輸層和應用層。TCP/IP模型集合了OSI/RM七層模型的優點并進行了合理的優化與精簡,取消了原有模型中會話層與表示層,為現有模型提供了極大的操作性與靈活性,使其得到更為廣泛的普及與應用。
傳統網絡層次架構規定相鄰層之間的信息只能通過相鄰層之間的靜態接口進行交互,非相鄰層之間禁止直接交互[7],這就導致層間信息交互過程復雜且信息難以及時共享,增加了信息的冗余以及設備開銷成本。
為了使網絡性能(如擁塞大小、延遲率等)得到進一步優化,在參照傳統網絡模型協議結構的基礎上,本文設計的跨層網絡模型結構,如圖2所示。設計打破嚴格的層間界限,允許協議棧各層之間相互傳遞、共享特定的訊息,來管理、統籌各層的工作過程,以達到提升網絡整體性能的最終目的。
模型設計主要包括以下方面:
1)添加抽象實體(AE)及層間系統

圖2 跨層網絡服務器模型結構
如圖2所示,本文提出的網絡服務器的跨層網絡模型結構中,協議實體(PE)模塊,是由OSI/RM參考模型所定義用于處理各層中的協議,相鄰層的協議實體通過服務接入點(SAP)進行數據交換。為了實現網絡跨層設計,本文提出了抽象實體(AE)及層間系統,抽象實體附著每一層的協議實體,用于把特定協議的控制信息抽象成獨立于協議的信息,以便于在層間交換,而層間系統則垂直穿透模型中所有層,負責整個跨層通信的控制與調度。
2)對原有傳輸層的優化
網絡服務器系統,具有網絡通信、均衡調度以及邏輯處理的功能,當面臨用戶數量大、用戶數據種類多的情況,服務器在處理過程中會導致數據處理的效率降低,必然會對服務器性能造成影響,因此需要針對應用設計適合在網絡服務器中使用的傳輸層協議。
當n+1層與n-1層進行跨層合作,首先,n+1層通過抽象實體將請求發送給層間系統,經由層間系統傳遞至目標層(即n-1層)的抽象實體,其次,抽象實體對請求進行解釋處理并寄存至請求表中,目標層通過反向路徑向請求層回復確認,最后,當目標層請求事件發生以后,目標層根據指令在請求表中搜尋事件條目,找到以后通過抽象信息告知請求層,至此,整個流程結束。
OPNET是網絡通信領域權威的仿真工具,擁有豐富的模型數據資源,其層次化的建模機制以及面向對象的建模方式,更加符合設計人員對于網絡模型構建的需求,此外,OPNET Modeler采用有限狀態機和C++以及其自身提供的400多個核心函數可實現自定義設備、添加和修改源代碼等,這為我們設計提供了極大的便利[8]。
根據網絡服務器的特性,以及之前所述的跨層網絡模型結構,我們基于OPNET設計的網絡服務器模型如圖3所示。

圖3 OPNET下的網絡服務器模型設計
其中物理層為模型最底層,模塊1_0、2_0是針對以太網和令牌環網情況下設計的收發模塊,采用全雙工收發,模塊3_0、4_0則適用于點到點連接,采用單雙工收發;網絡通信層的目的主要在于數據打包、接收和發送,本文參考了OSI/RM模型層次協議,并在設計模型中增加了隨機退避機制,以減少任務等待時間;網絡通信層的上層為均衡調度層,該層負責對接收到的用戶訊息進行相應處置;最上層包括應用層節點模型以及跨層處理模塊(SYSTEM)。
為了驗證跨層模型的可靠性,本文設計了一個終端對終端的傳輸網絡,實驗模型節點部分配置如

表1 模型主要配置
基于OPNET的網絡實驗場景如圖4所示,根據實驗需要,文中通過應用定義(Application definition)及業務規格定義 (Profile definition)為網絡配置業務,由于設置業務涉及的內容較多,本文不做詳細描述。在實驗場景中,我們在圖中放置了兩個通信子網,子網中包含了名為ethernet4_slip8_gtwy的網絡路由和我們所設計的跨層網絡服務器,除此之外,在圖中我們還放置了一個IP云(ip32_cloud)模型,它具有可選的數據傳輸速率,支持高達32個串行線路接口,到達任意接口的IP數據包根據其目的地址被發送到相應的輸出接口。

圖4 OPNET下的實驗場景
OPNET下的實驗網絡拓撲搭建好以后,我們考慮到設計模型的目的性,即在面對多用戶,大數據情況下,跨層網絡服務器能夠在性能方面有所優化,因此首先我們設置了數據包請求間隔、包大小和丟包率等參數,其次我們選擇兩個對象統計量:Congestion Window Size(擁塞窗口大小)和Sent Segment Sequence Number(發送段序列號),以此來驗證本設計的有效性及可靠性。
在試驗場景中,我們人為設置了3種情景進行比較:NO_Drop(無丟包率的理想情況);Drop_NoSystem(有丟包率無跨層模型);Drop_System (有丟包率有跨層模型),并設定仿真時間為10分鐘,參數設定如圖5所示。

圖5 情景設定及參數設置
仿真過后,我們可以在OPNET中得到節點擁塞窗口大小統計及發送段序列號曲線對比,分別如圖6、圖7所示。

圖6 節點的擁塞窗口大小
我們知道,擁塞窗口的大小取決于網絡的擁塞程度,當擁塞程度增大,擁塞窗口應當減小以控制流量從而避免發生網絡擁塞,在本文中我們通過在試驗中設置丟包率來制造網絡擁塞。從圖6可以看出,傳統網絡由于層間信息傳遞較慢,造成控制信息傳輸延遲,在幾次控制以后就顯得力不從心,最終失去了對擁塞窗口大小的控制,最終造成信息的急劇擁塞,相反,跨層設計在應對這種情況時就發揮了較大的優勢,能夠快速對擁塞窗口大小進行調節,降低發生擁塞的可能性。

圖7 發送段序列號
在本文中,由于我們設置了0.05%的傳輸丟包率,根據節點的傳輸協議,發送端需要對丟失的數據包進行重新傳送,因此這就需要網絡服務器能夠實現數據的快速重傳,避免數據包發送的延遲或中斷,發送段序列號就能夠反映系統的傳輸質量。從圖7可以看出,相對于傳統設計,跨層設計更趨向于理想情況,這也就說明了跨層設計在數據重傳方面的速度優于傳統設計。
文中在對傳統網絡服務器模型進行總結分析的基礎上,提出了網絡服務器的跨層模型設計理念,并結合網絡服務器本身相關特性,以傳統網絡模型作為參考,設計了適用于網絡服務器的跨層網絡模型。為了驗證網絡服務器模型設計的可靠性和有效性,本文采用OPNET網絡仿真工具,為設計的網絡服務器模型搭建實驗平臺,對模型進行權威的驗證。實驗表明,在面對大數據,多用戶的復雜網絡環境下,跨層網絡服務器模型相較于傳統網絡模型,在處理網絡擁塞、服務超載等方面具有明顯的優勢,實現了網絡服務器性能上的優化。
[1]林闖.Web服務器集群請求分配和選擇的性能分析[J].計算機學報,2000(5):500-508.
[2]張正,王鴻鵬,劉景泰,等.基于節點緩存的網絡服務器性能分析與優化[J].計算機工程,2012(1):5-9.
[3]Colajanni M,Catdellini V.Dynamic load balancing in geographically distributed heterogeneous Web servers[C]//Proceedings of the 18th International Conference on Distributed Computing Systems.Washington D.C.,USA:IEEE Computer Society,1998:295-302.
[4]Katz E D,Butler M,McGrath R.A scalable HTTP Server:The NCSA prototype[C]//Proceedings of the 1st International Conference on the World Wide Web.Geneva,Switzerland:[s.n.],2004:155-164.
[5]游小明.新型云計算服務器的設計與實現 [J].計算機工程,2011,37(11):40-42.
[6]周玨嘉,林小竹,慕春棣.基于OPNET的無線傳感器網絡節點跨層設計 [J].計算機工程,2007,15:130-133.
[7]盧先領,孫亞民,周靈,等.Ad Hoc無線網絡跨層設計綜述[J].計算機科學,2007,10:24-26,32.
[8]周慧.OPNET網絡仿真及其應用研究[D].武漢:武漢科技大學,2009.
[9]Burbank J L,Kasch W T.Cross-layer design for military networks[J].MILCOM 2005-2005 IEEEMilitary Communications Conference,Atlantic City,NJ,2005(3):1912-1918.
[10]張正,劉景泰,王鴻鵬.基于排隊網絡的網絡服務器性能分析與優化 [J].計算機應用,2010,12:3148-3150,3154.
[11]匡為君,張靜,陳迎春,等.認知無線Mesh網絡跨層設計研究[J].電信科學,2011(2):62-67.
[12]Yonemura K,Kaneko K,Teraoka F.CLINEX:An inter-node cross-layer cooperation architecture to adapt to dynamically changing network situation[J].Computer Software and Applications Conferen-ce(COMPSAC),2013 IEEE 37th Annual,Kyoto,2013:33-42.
[13]劉斌.跨層優化技術在傳感器網絡中的研究與應用[D].太原:太原理工大學,2011.
[14]董思妤.基于OPNET的校園網評估與優化[J].軟件導刊,2016(1):22-25.
[15]孫立新.基于跨層的無線傳感器網絡資源調度與路由算法研究[D].哈爾濱:哈爾濱理工大學,2008.
[16]E H Putra,E Supriyanto,J bin Din,et al.Cross layer design of wireless LAN based on H.264/SVC and IEEE 802.11e[J].Electrical Engineering and Informatics(ICEEI),2011 International Conference on,Bandung,2011:1-6.
Cross-layer modeling and application in network server based on OPNET
ZOU Peng-fei,ZHANG Chi-jian,ZHENG Kui-ang,MA Xiao-lu
(College of Physics and Electronic Information,Anhui Normal University,Wuhu 241000,China)
Because of the gradual increase in the current network size and complexity of the network data,it brings network congestion and server overload issues.To solve these problems,we put forward cross-layer design for web server based on the traditional network architecture,and by the authoritative network simulation tool(OPNET) to achieve the construction of cross-layer network server model.Result show that cross-layer network model in this paper can achieve a obviously optimization in performance.
network server; network hierarchy; cross-layer design; OPNET
TN915
A
1674-6236(2017)17-0168-04
2016-08-30稿件編號:201608228
鄒鵬飛(1991—),男,安徽六安人,碩士。研究方向:智能計算與測控技術。