摘? 要: 提出并實現(xiàn)了在有基礎(chǔ)設(shè)施無線網(wǎng)絡(luò)中對實時業(yè)務(wù)提供應(yīng)用級服務(wù)質(zhì)量支持的系統(tǒng)模型機制。通過實驗床實測結(jié)果與仿真結(jié)果的比較,驗證了該機制在實現(xiàn)中的可行性。
關(guān)鍵詞: 服務(wù)質(zhì)量? 延遲? 區(qū)分服務(wù)
?
近年來,無線網(wǎng)絡(luò)技術(shù)得到迅速發(fā)展。從組網(wǎng)方式上看,無線網(wǎng)絡(luò)可分為隨意組網(wǎng)(Ad-hoc)模式和有基礎(chǔ)設(shè)施(Infrastructure)網(wǎng)絡(luò)模式。隨意組網(wǎng)模式允許無線節(jié)點直接通信。有基礎(chǔ)設(shè)施網(wǎng)絡(luò)模式則禁止無線節(jié)點直接通信,所有分組都要經(jīng)過接入點(Access Point,AP)轉(zhuǎn)發(fā)。與隨意組網(wǎng)模式相比,目前,有基礎(chǔ)設(shè)施網(wǎng)絡(luò)的應(yīng)用更為廣泛。
現(xiàn)階段,無線技術(shù)被廣泛應(yīng)用于遠程教學(xué)、臨時會議等應(yīng)用場景。這就要求無線網(wǎng)絡(luò)除了支持一般數(shù)據(jù)傳輸外,還要支持對延遲等參數(shù)較為敏感的實時媒體業(yè)務(wù)的傳輸。然而,目前無線網(wǎng)絡(luò)產(chǎn)品硬件中實現(xiàn)的802.11 MAC層協(xié)議只支持基于“盡力而為”的分布式協(xié)調(diào)功能(Distributed Coordination Function,DCF),對實時業(yè)務(wù)不提供任何服務(wù)質(zhì)量(Quality of Service,QoS)保證。
本文將提出一種在有基礎(chǔ)設(shè)施無線網(wǎng)絡(luò)中對實時業(yè)務(wù)提供應(yīng)用級服務(wù)質(zhì)量支持的系統(tǒng)模型機制,并對系統(tǒng)性能進行分析。
1?系統(tǒng)模型的算法描述
系統(tǒng)模型主要由3個模塊構(gòu)成:延遲帶寬分析、準(zhǔn)入控制和速率整形。系統(tǒng)機制的實現(xiàn)流程如圖1所示。
圖中,業(yè)務(wù)分類器主要用于區(qū)分實時業(yè)務(wù)和盡力而為業(yè)務(wù)。速率整形模塊負責(zé)動態(tài)調(diào)整盡力而為業(yè)務(wù)的發(fā)送速率以適應(yīng)實時業(yè)務(wù)的低延遲要求。準(zhǔn)入控制模塊負責(zé)根據(jù)當(dāng)前系統(tǒng)實時業(yè)務(wù)流的可用帶寬決定是否滿足新的實時業(yè)務(wù)流的準(zhǔn)入請求,對已準(zhǔn)入的實時業(yè)務(wù)流直接插入網(wǎng)卡接口隊列等待MAC層處理。延遲帶寬分析模塊負責(zé)統(tǒng)計當(dāng)前系統(tǒng)實時業(yè)務(wù)所占用的網(wǎng)絡(luò)帶寬及該節(jié)點分組的實際發(fā)送速率,并測量數(shù)據(jù)幀的MAC層延遲。這里所說的MAC層延遲包括:數(shù)據(jù)幀在網(wǎng)卡接口隊列的排隊等待時間;根據(jù)CSMA/CA算法偵聽媒體信道狀態(tài)所等待和退避的時間;在取得對媒體信道的訪問權(quán)后,發(fā)送RTS(Request to Send)-CTS(Clear to Send)-DATA-ACK一系列幀交換的時間,其中也包括了可能的幀碰撞和重傳時間。對MAC層延遲時間準(zhǔn)確和及時的反饋也是整個算法的關(guān)鍵。此外,由于MAC層對廣播和組播幀的處理與單播幀不同,在測量過程中不應(yīng)包含對組播和廣播幀的延遲統(tǒng)計。
?
?
1.1 速率整形機制
在速率整形機制中,無線源節(jié)點和接入點的速率整形模塊均采用加增乘減(AIMD)控制算法。每個源節(jié)點調(diào)節(jié)自身盡力而為業(yè)務(wù)分組的發(fā)送速率。接入點則對所有轉(zhuǎn)發(fā)的盡力而為業(yè)務(wù)分組進行速率調(diào)節(jié),以使各節(jié)點實際發(fā)送速率均不高于某一動態(tài)變化的發(fā)送速率閾值rate_limit。
AIMD算法被應(yīng)用在TCP擁塞控制等網(wǎng)絡(luò)協(xié)議中。在本系統(tǒng)中,AIMD算法則用于提供各無線源節(jié)點對無線媒體帶寬的公平利用。此外,AIMD算法還可以在確保實時業(yè)務(wù)經(jīng)受較低MAC層延遲的情況下,使盡力而為業(yè)務(wù)更為充分利用剩余的媒體帶寬,使總的吞吐率在系統(tǒng)所允許到達的最大吞吐率附近上下浮動。
對速率整形算法的描述如下。
(1)rate_limit=C;/*initial rate_limit*/
(2)根據(jù)AIMD算法,每隔t秒,各無線源節(jié)點和接入點以加法增加發(fā)送速率閾值rate_limit:
rate_limit=rate_limit+rate_inc;
(3)根據(jù)延遲帶寬分析模塊每隔S秒統(tǒng)計的該節(jié)點的實際發(fā)送速率rate_actual,調(diào)整過大的發(fā)送速率閾值rate_limit,即:
If(rate_limit-rate_actual>rate_actual*g%)
????????????? ?? rate_limit=rate_actual*(1+g%);
(4)每隔t秒,各節(jié)點的延遲帶寬分析模塊用帶權(quán)重的滑動窗口來更新測得的MAC層平均延遲,并動態(tài)調(diào)節(jié)發(fā)送速率閾值rate_limit:
AP算法(上式中delay用delayAP替換):
if(delayAP>delay_limit){/*delay is greater than Delay threshold*/
???????????????????? rate_limitAP=rate_limitAP*d%;
/*Multiplicative Decrease rate_limit by AP*/
???????????????????? send_broadcast_frame(frame);
/*AP is bottleneck,construct the broadcast frame to
notify the source node AP′s delay*/
?????????????? }
無線源節(jié)點算法:
delayAP=recv_broadcast_frame(frame);/*receive AP′s?delay*/
delay=MAX(delay,delayAP)/*get the maximum of delay
between AP and Source node itself*/
if(delay>delay_limit)
???????????????????? rate_limit=rate_limit*d%;
/*Multiplicative Decrease rate_limit by source*/
這里,delay_limit是事先定義的延遲閾值。它的值應(yīng)根據(jù)上層實時應(yīng)用的需要確定。
1.2 準(zhǔn)入控制機制
現(xiàn)有的802.11標(biāo)準(zhǔn)中,有基礎(chǔ)設(shè)施無線網(wǎng)絡(luò)通過接入點對分組的轉(zhuǎn)發(fā)來實現(xiàn)節(jié)點的間接通信。利用這一性質(zhì),接入點的延遲帶寬分析模塊就可通過測量自身轉(zhuǎn)發(fā)的實時業(yè)務(wù)來獲知目前實時業(yè)務(wù)對該媒體信道帶寬(bw_current)的占用情況。這樣,如果可以得到在不破壞服務(wù)質(zhì)量前提下實時業(yè)務(wù)所能占用的最大媒體帶寬(bw_threshold),則二者的差值也就是目前系統(tǒng)中新的實時業(yè)務(wù)的可用帶寬(bw_availabe)。但是,在實現(xiàn)中,一般是選取更小的帶寬限值(bw_limit)作為實時業(yè)務(wù)所能占用的最大媒體帶寬bw_threshold的替代值(在實驗中均保守地選取bw_limit值,使系統(tǒng)中只允許5條實時媒體業(yè)務(wù)流同時存在)。這樣做的原因是:(1)雖然業(yè)務(wù)負載量輕重和MAC層的平均延遲具有一定的對應(yīng)關(guān)系,但這種對應(yīng)關(guān)系是平均意義上的對應(yīng),并不是穩(wěn)定的一一對應(yīng)關(guān)系,實際很難找到適合的bw_threshold值。(2)如果選取了bw_threshold作為實時業(yè)務(wù)最大可用媒體帶寬,則根據(jù)上述bw_threshold的定義,盡力而為業(yè)務(wù)將有可能幾乎沒有剩余帶寬可用。這樣,速率整形機制的調(diào)節(jié)功能也就失去了作用,無法通過速率調(diào)節(jié)使實時業(yè)務(wù)MAC層延遲迅速降低,也就失去了該機制對延遲變化反應(yīng)靈敏的特點。(3)即使使用了較小的帶寬限值bw_limit作為實時業(yè)務(wù)準(zhǔn)入控制的準(zhǔn)入?yún)?shù),剩余的媒體帶寬仍可由盡力而為業(yè)務(wù)充分地利用,不會影響系統(tǒng)總的吞吐率。
每個無線源節(jié)點維護著自身發(fā)送實時業(yè)務(wù)流的狀態(tài)鏈表。接入點則維護所有轉(zhuǎn)發(fā)實時業(yè)務(wù)流狀態(tài)鏈表。準(zhǔn)入控制過程描述如下:
對于無線源節(jié)點,當(dāng)有新的實時業(yè)務(wù)流到達時,該節(jié)點記錄該業(yè)務(wù)流的狀態(tài)信息(包括源目的地址、端口等),并向接入點發(fā)送帶有該流狀態(tài)信息(包含預(yù)約帶寬)的準(zhǔn)入請求。接入點收到請求分組后,進行比較:若預(yù)約帶寬小于目前系統(tǒng)實時業(yè)務(wù)的可用帶寬,則將新流插入接入點所維護的準(zhǔn)入流狀態(tài)鏈表,立即更新可用帶寬的值,并向源節(jié)點發(fā)送準(zhǔn)入應(yīng)答分組。源節(jié)點收到準(zhǔn)入應(yīng)答分組后,則將該流插入其維護的準(zhǔn)入流鏈表,即準(zhǔn)入該流。反之,若請求分組中包含的預(yù)約帶寬大于目前系統(tǒng)實時業(yè)務(wù)的可用帶寬,則接入點向源節(jié)點發(fā)送禁入應(yīng)答。源節(jié)點收到禁入應(yīng)答分組后,則禁入該流,具體說,即將禁入流插入到源節(jié)點維護的禁入流鏈表中,并啟動定時器定時清空該鏈表。這樣做的目的是在一段時間后可以再次發(fā)起該流的準(zhǔn)入請求過程,以防止在系統(tǒng)負載減輕后仍然禁入這些流。對于屬于禁入鏈表內(nèi)實時業(yè)務(wù)流的數(shù)據(jù)分組,源節(jié)點不必發(fā)起準(zhǔn)入請求過程,而是直接將其丟棄,以防止其占用媒體信道。
對于由接入點以太網(wǎng)端口(即來自有線段)到達的實時業(yè)務(wù)流,則由接入點的準(zhǔn)入控制模塊負責(zé)對其進行準(zhǔn)入。但由于接入點本身位于無線網(wǎng)絡(luò)的中心環(huán)節(jié),因此無需準(zhǔn)入請求等信令過程。
2?仿真性能評價
下面是在網(wǎng)絡(luò)仿真器NS-2上實現(xiàn)上述機制的過程。
????(1)接入點通過NOAH路由擴展提供分組轉(zhuǎn)發(fā)功能。NOAH路由禁止無線節(jié)點直接通信,任何無線節(jié)點之間的數(shù)據(jù)分組都要經(jīng)過NOAH路由的轉(zhuǎn)發(fā)。為節(jié)點配置分級地址以仿真無線節(jié)點和有線節(jié)點之間的通信。每個無線節(jié)點的傳輸范圍為250m,物理層的最大速率為2Mbps,MAC層采用802.11 MAC層協(xié)議。
(2)仿真場景取200m×200m區(qū)域,用1個無線節(jié)點配置NOAH路由充當(dāng)接入點。接入點一端與有線節(jié)點連接,10個無線節(jié)點在區(qū)域內(nèi)隨機運動,它們和接入點共享2Mbps物理帶寬。用3條常比特率(Constant Bit Rate,CBR)業(yè)務(wù)流仿真模擬實時業(yè)務(wù),用FTP業(yè)務(wù)來仿真盡力而為業(yè)務(wù)。CBR業(yè)務(wù)以60Kbps勻速率發(fā)送。系統(tǒng)吞吐率隨FTP流數(shù)變化,如圖2所示。CBR流的平均延遲隨FTP流數(shù)變化,如圖3所示。
?
?
???? 圖2和圖3中的x軸代表FTP流的數(shù)量,y軸分別代表無線子網(wǎng)中系統(tǒng)的平均吞吐率和某CBR流的平均延遲。源節(jié)點陸續(xù)增加FTP流的數(shù)量以增加系統(tǒng)中盡力而為業(yè)務(wù)負載??梢钥闯?,當(dāng)只有單個源節(jié)點產(chǎn)生FTP業(yè)務(wù)時,才能使CBR的平均延遲和系統(tǒng)的平均吞吐率均小于多FTP流的場景。隨著FTP流數(shù)的增加,系統(tǒng)的平均吞吐率和CBR流的平均延遲均趨于穩(wěn)定。
在多FTP流的場景下,改進后系統(tǒng)CBR業(yè)務(wù)的平均延遲較原系統(tǒng)下降87%~88%,而系統(tǒng)平均吞吐率僅下降7%~8%。單FTP場景下,改進后延遲下降91%,吞吐率則相應(yīng)下降了14%。
FTP流數(shù)為3時的系統(tǒng)吞吐率和CBR流端端延遲每秒均值隨仿真時間變化情況分別如圖4和圖5所示。圖中,x軸代表仿真時間,y軸分別代表系統(tǒng)吞吐率和某條CBR業(yè)務(wù)流端端延遲的每秒均值。可以看出改進后系統(tǒng)的吞吐率下降不大,而CBR業(yè)務(wù)流的端端延遲卻大幅下降。
?
?
3? 實驗床分析
為了進一步驗證仿真結(jié)果,用5臺配有D-Link DWL-650無線網(wǎng)卡的IBM筆記本搭建無線實驗床。其中一臺作為接入點存在,與有線連接。另外4臺則充當(dāng)無線源節(jié)點。D-Link DWL-650 11M IEEE 802.11b PCMCIA無線網(wǎng)卡基于Intersil Prism2芯片,支持主機接入點(Host AP)模式(當(dāng)然也支持通常的有基礎(chǔ)設(shè)施網(wǎng)絡(luò)模式和隨意組網(wǎng)模式),即用Linux主機提供接入點功能。在Host AP模式下,無線網(wǎng)卡硬件負責(zé)處理BEACON、ACK等對時間要求比較嚴格的管理幀和控制幀。而其他一些IEEE 802.11管理功能(如對數(shù)據(jù)幀的轉(zhuǎn)發(fā)等)則由上層Host AP驅(qū)動完成。實驗中,通過修改Host AP驅(qū)動程序?qū)⑶笆鰴C制在Linux實驗床實現(xiàn),Linux內(nèi)核版本為2.4.2-2。在實測實驗中,產(chǎn)生2條TCP業(yè)務(wù)流和3條UDP業(yè)務(wù)流。TCP和UDP業(yè)務(wù)均用業(yè)務(wù)產(chǎn)生器Iperf產(chǎn)生,UDP分組發(fā)送速率為250Kbps,用于模仿實時媒體業(yè)務(wù)。其中TCP流則代表盡力而為業(yè)務(wù)。原系統(tǒng)和改進后系統(tǒng)某條實時業(yè)務(wù)流分組在接入點MAC層延遲的每秒均值隨時間變化情況如圖6所示。必須說明的是:圖中接入點MAC層延遲每秒均值并不是指仿真實驗中的端端延遲,而是指單播數(shù)據(jù)幀從插入接入點網(wǎng)卡接口隊列到該幀的ACK正確返回所經(jīng)歷的時間。通過對仿真和實驗的trace分析可以認為,在實驗場景中,數(shù)據(jù)分組所經(jīng)歷的端端延遲絕大部分來自接入點的網(wǎng)卡接口隊列延遲。因此,在實測實驗中,取數(shù)據(jù)分組在接入點的MAC層延遲作為數(shù)據(jù)分組的延遲量度是可行的。
從圖中可以看出,改進后系統(tǒng)實時業(yè)務(wù)流數(shù)據(jù)分組的平均延遲大幅降低并相對穩(wěn)定。
4? 結(jié)? 論
本文討論了在基于IEEE 8012.11協(xié)議族分布式協(xié)調(diào)功能之上為實時應(yīng)用提供應(yīng)用級服務(wù)質(zhì)量支持。該機制的優(yōu)勢主要在于其完全獨立于MAC層,無需進行任何硬件的升級。此外,仿真和實驗床均顯示,在無線網(wǎng)絡(luò)負載較重的情況下,加入的機制雖然導(dǎo)致了系統(tǒng)吞吐率的小幅下降,但換來了實時業(yè)務(wù)端端延遲的大幅降低。與原系統(tǒng)相比,改進后系統(tǒng)的實時業(yè)務(wù)會有更低、更穩(wěn)定的端端延遲。
參考文獻
1?? Chiu D,Jain R.Analysis of the Increase and Decrease Algo-rithms for Congestion Avoidance in Computer Networks.Computer Networks,1989
2?? Rothermel K,Dermler G,F(xiàn)iederer W.QoS Negotiation and?Resource Reservation for Distributed Multimedia Applications.Technical Report 1996-rothermel-04.Fakultat Informatik,University of Stuttgart,1996
3?? Widmer J.Network Simulations for A Mobile Network Architecture for Vehicles.International Computer Science Institute?Technical Report TR-00-009, 2000
4?? Ahn G,Campbell A,Veres A et al.SWAN:Service Differentiation in Stateless Wireless Ad Hoc Networks.InternetDraft,work-in-progress,2002
5?? IEEE 802.11b Standard for Wireless LAN Medium Access?Control(MAC) and Physical Layer(PHY) Specifications.Institute of Electrical and Electronics Engineers,1999;(11)