徐昌彪,张 坤,鲜永菊,王精华,郑湘渝
(1.重庆邮电大学通信与信息工程学院,重庆 400065;2.重庆市电力公司,重庆 400015)
随着现代通信系统的飞速发展,各种新兴的无线通信技术不断得到应用,这使得有限的频谱资源日益紧缺。基于动态频谱接入(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.