徐昌彪,張 坤,鮮永菊,王精華,鄭湘渝
(1.重慶郵電大學通信與信息工程學院,重慶 400065;2.重慶市電力公司,重慶 400015)
隨著現代通信系統的飛速發展,各種新興的無線通信技術不斷得到應用,這使得有限的頻譜資源日益緊缺?;趧討B頻譜接入(DSA)的認知無線電(CR)技術能有效地提高頻譜資源利用率,以緩解無線頻譜資源短缺的問題。目前,認知無線電技術研究的熱點主要集中在物理層和MAC層,如動態頻譜感知、頻譜分配、頻譜預測等,然而對上層協議研究相對較少,如傳輸控制協議(TCP)。
在認知無線網絡中端到端的傳輸控制協議性能,是衡量次用戶QoS的一個重要指標。文獻[1]中提出了一個基于跨層的方案,聯合考慮頻譜感知、接入決策、物理層的調制編碼機制以及數據鏈路層的數據幀長,以提高認知網絡中TCP吞吐量。其中,物理層將感知結果反饋到傳輸層,傳輸層根據感知結果聯合下層做出相應調整,選擇合適的數據幀長,調制編碼方案及接入決策。多信道選擇接入問題,會直接影響到次用戶應用。然而目前動態頻譜接入研究中主要采用的是隨機接入方式,在Random方式下很難保證接入信道質量。文獻[2]在文獻[1]提出的跨層優化設計方案基礎上,進一步引入一個最優多信道接入機制以增強TCP性能。文中用Restless Bandit System模擬認知網絡中信道接入過程,通過狀態轉移概率、回報率、衰減因子等因素將信道用不同的優劣指數標記,從而控制選擇最優信道接入以獲取相對最優的TCP吞吐量。文獻[3]在認知環境下提出了一種基于跨層設計的傳輸控制協議。文獻[4]中設計的適合認知Ad-hoc網絡的傳輸控制協議,通過中間結點及目的結點的信息反饋,使傳輸層準確識別鏈路變化信息,同時在源端采用經典的TCP速率控制算法與底層交互相關信息從而合理調整傳輸狀態。文獻[5]在基于跨層信息反饋的基礎上,改進TCP-Reno協議以使其適應認知網絡環境。文獻[6]中以感知接入過程中SU的漏檢與虛警行為,以及感知時間的選取為前提,分析了DSA對TCP協議的影響。文獻[7]提出了一個新的CR-Mac協議,以準確獲取可用信道信息反饋給傳輸層,并提出了基于擁塞門限預測的擁塞避免機制,只有在當前可用信道帶寬大于擁塞門限時才會觸發擁塞避免機制。文獻[8]提出了一個新的認知網絡管理框架(DSAync),它是一種邏輯上的鏈路層網絡管理協議,在不改變端到端的TCP語義條件下,網絡間的接口結點執行基于緩存管理與流量整形算法以減小動態頻譜接入對TCP流的影響。
綜上分析,目前大多數文獻從不同的角度研究了認知網絡環境下的TCP協議[9-10]。而本文首先討論分析了認知無線電環境下影響TCP性能的關鍵因素,其次緊密結合認知無線電特性,通過NS2仿真軟件搭建認知網絡環境,仿真分析了不同TCP版本協議在認知網絡環境下的性能狀況。
貫穿認知無線電技術的主線就是,通過頻譜感知掃描檢測可用頻帶,發現頻譜空洞,根據感知結果分析出未被主用戶(PU)占用的可用頻點位置、可用帶寬、信道狀況以及傳輸時對其他用戶可能產生的影響等,次用戶(SU)由此做出決策,選擇適宜的數據傳輸速率、傳輸模式、傳輸帶寬,然后綜合頻譜特征和用戶需求選擇合適的頻段。次用戶在使用頻段的過程中,同時也要監測主用戶的活動,當主用戶出現在這個頻段上時,次用戶依據頻譜移動性管理退出該頻段,在有其他空閑頻段時切換過去繼續傳輸,如果暫時沒有空閑頻譜,就將數據存儲在緩存空間內,倘若超過一定時限仍然沒有空閑頻譜可用,就中斷本次通信。次用戶的通信很大程度上取決于主用戶的活動,這也是認知網絡區別于傳統無線網絡的根源。PU的出現就會迫使相關SU做出調整,圖1描述了主次用戶共享頻譜資源的動態使用過程。

圖1 動態頻譜接入過程
與傳統無線網絡相比,認知無線電網絡中影響TCP協議性能的因素主要有頻譜感知、主用戶活動、頻譜切換和TCP協議自身的瓶頸。
為了獲得可用頻譜,每個SU在數據鏈路層都會定期掃描所在頻段內的所有信道,如圖2所示,在掃描階段(S),當SU找到一個合適的頻譜空洞后,接下來在信道接入階段(CA),SU就會將存儲在緩存中的業務數據發向終端。如果在掃描階段沒有空閑信道,就必須經歷完當前的To時間,在下一個周期的掃描階段重新尋求一個空閑頻譜。其中To和Ti的大小可以不一,但是在循環周期里面的值是確定的[6]。

圖2 數據鏈路層的周期掃描[6]
感知時間T0必須選取一個合適的值,如果感知時間越長,SU就會花更多的時間去檢測而不是傳送數據,同時短的感知時間會增大干擾主用戶活動的風險。在掃描階段,SU所檢測到的信道狀態不一定是準確的,可能存在誤判行為。這種誤判行為主要包括兩種:1)錯誤地將處于空閑狀態的頻點判斷為PU正在使用(虛警)。2)錯誤地將PU正在使用的頻點判為空閑頻譜(漏檢)。前者會降低SU的頻譜利用效率,后者會由于接入信道而與PU發生沖突產生干擾,從而帶來吞吐量衰減[11]。
在感知期間,底層會停止數據發送與接收通信對端回送的ACK,而現有無線TCP協議無法識別底層的行為,仍然會繼續向底層輸送TCP數據報文段,從而會引起SU發送端口緩存數據溢出。同時,已成功發送出的數據包由于得不到及時確認,也會因此而導致計時器超時,觸發傳輸層不必要的超時重傳,同時削減擁塞窗口(cwnd),促使TCP性能衰退。
認知網絡中,PU對授權頻段有絕對的優先使用權,SU在使用空閑頻譜過程中,會因為主用戶的出現而隨時退讓出頻譜。傳統無線網絡中引起丟包的主要原因有擁塞丟失、信道差錯丟失和數據沖突丟失,認知網絡中SU為避免干擾PU而動態使用頻譜空洞,會產生一種新的數據丟失原因——服務中斷丟失。這種新的丟包原因只取決與PU的活動頻率和一些外部因素(地理位置及不同的時段),那么PU活動越頻繁,則SU傳輸數據的時間越少,并且服務中斷丟失的概率也就越大,SU的TCP吞吐量也就越低[12]。當服務中斷丟失出現時,現有無線TCP協議同樣無法識別,會像對待擁塞丟失一樣,進行擁塞調控。
在CRN中,SU進行頻譜切換時會產生一定的切換延遲。當可用頻譜空洞較多時,SU切換很容易,產生的切換時延也相對較小;但在主用戶活動頻繁時,SU可獲得的頻譜空洞較少,切換時延也相對較長,而且切換時次用戶之間競爭頻譜空洞導致沖突的概率也相應增大。即使SU切換成功,所獲得的空閑頻譜也不一定與SU所傳輸的通信業務需求是最優匹配的,因為不同頻段的鏈路特性可能不同,如誤碼率、帶寬、延遲等。
大多數端到端的無線TCP解決方案,主要依靠時間相關信息,如RTT或延遲時間。在認知網絡中數據包經過帶寬變化的鏈路,會使相關時間信息在測量當前網絡狀況時不太可靠。從而無法保障TCP協議的可靠性。超時重傳機制是實現可靠TCP協議的關鍵因素,其中最重要的一個參數就是超時重傳時間RTO。RTO又是根據RTT來設置的,且RTT與用戶使用的頻段緊密相關。當SU所用信道帶寬較大時,傳輸率較快,RTT值相對較小,在完成一次數據傳輸中避開因主用戶出現而產生干擾的可能性也就越大。同理,當信道帶寬較小時,RTT值也會較大。當SU的頻譜分配情況發成變化時,根據原來的RTT來計算RTO,就會使RTO過大或者過小,從而對傳輸層協議帶來不利影響。
慢啟動:一條連接建立的時候,為了避免立即把大量數據字節注入到網絡中,進而引起網絡擁塞,TCP實體初始化cwnd=1,試探性地傳輸一個報文段,等待得到確認之后再傳輸第2個報文段。每收到一個確認,cwnd的值就被加1,一直到某個最大值為止。但是在認知網絡中,由于頻譜空穴的短暫性,還沒有等到cwnd增大到最大窗口值的一半,SU就會因為PU的出現而喪失對頻譜的使用權[4]。在認知網絡環境下,這樣的慢啟動算法極大地降低了SU對頻譜資源的利用效率。
快速恢復:當TCP實體在第3次重復收到針對某一報文段的ACK時,源端TCP立即重傳丟失的報文段,并把cwnd減半,然后繼續以線性規律增加cwnd。在認知網絡中盲目地減小cwnd值同樣會降低SU對信道可用帶寬的利用率。
本文在NS2仿真工具上搭建模擬認知無線電網絡環境,并假設系統中只有兩個主用戶(PU)和一個次用戶(SU)存在,網絡結構如圖3所示。主用戶的到達和離開分別服從參數為λ和μ的泊松分布。接下來會在不同仿真場景下分析TCP協議在認知無線電網絡環境下的性能狀況。

圖3 網絡結構圖
假定模擬的認知網絡中只有兩條信道,每條信道的帶寬(5 Mbit/s和3 Mbit/s)和延遲(10 ms和12 ms)不同,構成垂直切換環境。由泊松分布特性易知,主用戶到達的時間間隔和服務時間分別服從參數為1/λ和1/μ的指數分布,平均到達時間間隔和服務時間分別為E[T1]=1/λ,E[T2]=1/μ。由此可得主用戶對授權頻段的占用率為P=E[T2]/E[T1]=λ/μ,而且不同的 λ 和 μ 值決定著不同的占用率。在本仿真場景中,以SU的TCP平均吞吐量為指標,對比不同P值條件下TCP各版本協議的性能狀況。SU在通信傳輸時只建立一條TCP連接,數據源為FTP,仿真時間300 s。仿真中,每隔10 s記錄一次TCP窗口值(cwnd)和吞吐量。
仿真結果解析:仿真結果如圖4所示,隨著主用戶對授權信道占用率的增大,SU獲得的頻譜空穴越少,同時也會增加SU通信時被迫切換次數,這就使得SU的TCP平均吞吐量隨之減少。并且在相同P值條件下:Westwood對應的平均吞吐量最高;Vegas最低;Reno,Newreno和Sack對應的平均吞吐量比較接近。這就說明,具有對信道帶寬估計功能的Westwood協議對認知網絡環境的適應力最好,基于回路響應延時RTT估計的Vegas適應能力最差。

圖4 不同P值條件下TCP各版本的平均吞吐量
圖5、圖6分別為λ=1/4,μ=1/2時5個TCP版本的窗口和吞吐量變化情況。cwnd和吞吐量曲線的總體波動變化是相同的,曲線中各個波動最低點對應著SU因PU出現而退讓出信道被迫進行切換時的性能狀況。成功切換后,SU將重新開始慢啟動過程,這就導致cwnd和吞吐量在一段時間內處于相對較低的水平。兩個圖中Vegas對應的曲線與其他4個協議版本有明顯差距,而其他4個協議版本中Westwood以微弱優勢突出。
以場景一中網絡環境為基礎條件,取λ=1/4,μ=1/2,仿真時間300 s,采樣間隔1 s。SU通信時建立兩條TCP連接(采用相同TCP版本,用tcp0和tcp1標記區分),以公平指數為標準來衡量兩條TCP連接對資源的競爭狀況。其中公平指數定義為[13]

圖5 λ=1/4,μ=1/2時5個TCP版本的窗口變化

圖6 λ=1/4,μ=1/2時5個TCP版本的吞吐量變化

T0和T1分別表示tcp0與tcp1的平均吞吐量。當T0和T1的差距變小時,公平指數也就越接近于1,那么tcp0和tcp1對信道資源利用的公平性越好。
仿真結果解析:仿真結果如表1所示,在相同網絡環境下tcp0與tcp1對網絡資源競爭的公平性westwood最高,reno其次,vegas最差。接下來將以sack為例分析兩條TCP連接的競爭狀況。

表1 兩條TCP連接下各TCP版本的公平性
圖7、圖8中tcp0和tcp1的cwnd和吞吐量曲線反映出,在競爭時tcp0對網絡資源的利用處于優勢狀態。當SU穩定使用空閑信道時,tcp0與tcp1的cwnd值交替變化,前者的cwnd值增大時后者必然減小,這種波動變化同時對應著吞吐量變化。在切換時,tcp0和tcp1的cwnd和吞吐量都處于遞減狀態。成功切換后又都處于遞增狀態。

圖7 sack下兩條TCP連接的cwnd變化

圖8 sack下兩條TCP連接的吞吐量變化
以場景一的網絡條件為基礎,取λ=1/7,μ=1/4,仿真時間300 s,采樣周期1 s。同時設定每條信道的帶寬都為5 Mbit/s,延遲10 s,僅以信道數為變化條件,觀察不同TCP版本的性能狀況。SU在通信時只建立1條TCP連接。
仿真結果解析:隨著信道數的增加,SU分別使用5個TCP版本所獲得的平均吞吐量都有所提高。直觀上來講,SU所獲得的平均吞吐量會一直隨著可接入信道數的增加而增大。但仿真結果顯示,當信道數為3時,5個協議版本的平均吞吐量達到最大值,之后吞吐量反而隨著可接入信道數的增加而減小。這是因為當可用信道增多之后,SU會獲得相對較多的時間在空閑頻譜上傳輸,從而提高TCP吞吐量,但與此同時,也增大了因PU出現而迫使SU進行退避切換的概率。由于現有TCP協議無法正確區分切換過程中丟失數據包的原因,就會像對待擁塞丟失一樣將cwnd減半,并進入不必要的擁塞避免階段,在短時間內一旦出現多次切換就會促使cwnd多次減半,并使cwnd維持在一個較低水平,從而影響TCP性能。不同信道下SU的TCP平均吞吐量變化如圖9所示。

圖9 不同信道下SU的TCP平均吞吐量變化
緊密結合認知無線電技術特點,從頻譜感知、切換、主用戶活動、TCP協議自身的瓶頸4個方面詳細分析討論了在認知網絡環境下影響TCP協議的關鍵因素。并設置了不同的仿真場景,比較分析不同TCP版本協議在認知網絡中的性能表現。結果顯示,據有帶寬估計能力的Westwood對認知網絡的適應能力最好,而基于回路響應延時RTT估計的Vegas適應能力最差。本文仿真過程中雖然只設定了2個PU和1個SU,但是很容易擴展到多個PU和SU。接下來的工作中,會以本文分析結果為基礎,改進現有TCP協議的慢啟動算法,以使TCP協議更好地適應認知網絡環境。
[1]LUO Changqing,YU F R,HONG J,et al.Cross-layer design for TCP performance improvement in cognitive radio networks[J].IEEE Vehicular Technology Society,2010,59(5):2485-2495.
[2]LUO Changqing,YU F R,HONG J,et al.Optimal channel access for TCP performance improvement in cognitive radio networks:a cross-layer design approach[C]//Proc.IEEE Conferences Globecom.[S.l.]:IEEE Press,2009:1-6.
[3]SARKAR D,NARAYAN H.Transport layer protocols for cognitive networks[C]//Proc.INFOCOM IEEE Conference on Computer Communications Workshops.[S.l.]:IEEE Press,2010:15-19.
[4]CHOWDHURY K R,FELICE M D,AKYILDIZ I F.TP-CRAHN:a transport protocol for cognitive radio ad - hoc networks[C]//Proc.INFOCOM 2009.[S.l.]:IEEE Press,2009:2482-2490.
[5]WANG Xiaowei,SUN Xuebin,ZHAO Chenglin,et al.TCP-CRENO- -TCP enhancement using cross-layer for cognitive radio networks[C]//Proc.AIAI 2010.[S.l.]:IEEE Press,2010:23-25.
[6]SLINGERLAND A M R,PAWELCZAK P,PRASAD R V,et al,Performance of transport control protocol over dynamic spectrum access links[C]//Proc.2nd IEEE International Symposium on DySPAN.[S.l.]:IEEE Press,2007:17-20.
[7]CHENG Yuchun,WU E H,CHEN Genhuey.A new wireless TCP issue in cognitive radio networks[C]//Proc.2010 First International Conference on Networking and Computing(ICNC).[S.l.]:IEEE Press,2010:17-19.
[8]KUMAR A,SHIN K.G.Managing TCP connections in dynamic spectrum access based wireless LANs[C]//Proc.7th Annual IEEE Communications Society Conference on Sensor Mesh and Ad Hoc Communications and Networks(SECON).[S.l.]:IEEE Press,2010:21-25.
[9]徐昌彪,隆克平,楊士中.無線網絡中基于無碼丟包的TCP速率調節策略[J].計算機學報,2002(4):438-444.
[10]董楠,陸元亮,董燦.一種WLAN中認知無線電MAC協議的改進[J].電視技術,2011,35(7):85-87.
[11]D'UTRA DA C,PAULO C.Collision probabilities for dynamic spectrum access with cognitive radios[C]//Proc.IMOC 2009.[S.l.]:IEEE Press,2009:272-276.
[12]ISSARIYAKUL T,PILLUTLA L S,KRISHNAMURTHY V.Tuning radio resource in an overlay cognitive radio network for TCP:greed isn’t good[J].IEEE Communications Magazine,2009,47(7):57-63.
[13]YAO Yanjun,FENG Zhiyong,MIAO Dan.Markov-based optimal access probability for dynamic spectrum access in cognitive radio networks[C]//Proc.Vehicular Technology Conference.[S.l.]:IEEE Press,2010:79-83.