多信道网络通信设计

2024-07-23

多信道网络通信设计(精选7篇)

多信道网络通信设计 篇1

网络的兴起极大的改变了人们的生活方式,让信息的传递变得更为简便。单一网络的范围是有限的,一般局域网的范围最大也只有数百米,即使使用光纤,范围过大的网络也会遇到广播风暴之类的问题,仍然需要网络互连设备来实现更大范围的通讯。

路由器是用来连接多个逻辑上分开的网络,逻辑网络是指一个单独的网络或一个子网。当数据从一个子网传输到另一个子网时,可通过路由器来完成。因为,路由器具有判断网络地址和选择路径的功能,能在多网络互联环境中建立灵活的连接,可用完全不同的数据分组和介质访问方法连接各种子网。路由器是属于网络层的一种互联设备,只接收源站或其他路由器的信息,不关心各子网使用的硬件设备,但要求运行与网络层协议相一致的软件。路由器分本地路由器和远程路由器,本地路由器是用来连接网络传输介质的,如光纤、同轴电缆和双绞线;远程路由器是用来与远程传输介质连接并要求有相应的传输设备,如电话线要配调制解调器,无线通信要通过无线接收机和发射机。

1 军用网络设备的特殊要求

市面上民用的路由器产品种类众多,小到几十元的家用路由器,大到几十万的电信级高端路由器,这些路由器虽然种类繁多,功能齐全,却并不完全适合于军事通信的特殊应用环境。

首先,军用网络和民用网络使用的环境不同。军用网络设备主要在野战条件下使用,自然环境恶劣,甚至敌方会使用电磁干扰等对抗性手段对通信进行破坏。因此整个网络系统必须要能够应对这些挑战。

其次,军用通信的可靠度要求高。民用通信可以接受暂时的中断,而军用通信则要求尽可能高的可靠度。军情如火,在通信上的任何延误都可能造成贻误战机甚至战争失败。

因此,军用网络设备必须能够保证军用网络在遭受打击后,仍然可以保持正常通信。通过对军用网络设备的特殊设计,同时采用多个相互独立的物理信道进行通信,可以避免单点失效。即使某条物理信道遭到毁灭性打击,如通讯电缆被切断,仍然有其他信道,如无线信道可以继续使用,保证非常紧要的信息可以及时传送到目的地。

综合使用多种有线、无线通信手段和多重线路设置是对付敌方对我军通信系统的各种软硬件杀伤的有效手段。各节点之间为保证通信的正常进行,常使用各类信道冗余传输,保证系统的安全性和可靠性。因此很多时候在两台路由设备之间会有多条通信链路存在,为保证系统信息传递的可靠性,这些信道会同时向目的路由器传递相同的数据信息,而目的端需要在接收到多条相同数据时进行取舍,实现数据在信道上的冗余传输。

2 硬件设计

在路由设备中,采用双处理器分别完成系统的主控功能和路由功能,主控单元实现对现役通信设备的兼容,路由单元实现IP数据的路由及数据传输功能。路由单元的设计中,采用基于Xscale架构的Intel425处理器,由实时嵌入式操作系统vxWorks提供系统平台,系统的路由功能完全由处理器上软件实现,二层以下的交换功能由KS8995MA芯片完成。Intel425的最高主频可达533M的XScale核心处理器(可工作在533M,400M,266M三个频率下),三个网络处理引擎(NPE,network processor engine),32位的PCI接口,8位的UTOPIA-2接口,USB1.1设备控制器,两个高速的串行接口以及SDRAM接口等等。KS8995MA是一款高度综合的具有管理功能的二层交换芯片,具有VLAN、QoS优先级管理,MIB计数器,双工的MII接口和CPU控制/数据接口,KS8995MA包含五个10/100数据收发器,五个媒体访问控制单元(MAC),一个高速非阻塞的交换结构。所有的物理单元都支持10BASE-T和100BASE-TX,此外端口4和5还支持100BASE-FX。KS8995芯片的功能如图1所示。

Intel425处理器通过GPIO口控制KS8995MA交换芯片,通过以太网接口传递数据信息,Intel425处理器与KS8995MA芯片的连接关系如图2,各信道设备直接连在KS8995MA交换芯片的网口上。

3 软件设计

处理器在通用的动态路由协议基础上还支持了多信道数据的冗余传输,为节点间互为备份的多条信道提供有效数据的提取功能。为实现多信道冗余传输时对数据的有效提取功能,设备启动时,处理器需要将KS8995MA交换芯片设置工作在VLAN模式下,且每个端口具有独立的VLAN标志,这样可以有效地防止芯片工作在交换机模式下出现广播风暴,避免单一信道传输时数据在同一VLAN内部扩散。

用户数据发送时完成上层处理后数据到达IP协议栈,IP协议栈的路由表是用户设置的静态路由和动态路由协议自动学习的路由信息的总和,在IP层完成数据包的路由功能,选择当前路由表中的系统路由后,将数据封装成以太网数据包交给以太网协议处理层。在发送以太网数据之前,根据系统的使用要求和用户设置大致可划分为,自动发送、用户指定信道发送、多信道同传三种数据发送方式。

自动发送方式适用于源路由器和目的路由器之间仅一条信道连接和多条信道连接两种方式,源和目的之间仅一条信道连接时,采用IP层查找到的路由信息,在以太网层仅将数据添加VLAN标志重新封装为802.3Q的VLAN信息,并通过KS8995MA的相应端口发送到信道上。当源和目的之间有多条信道连接时,自动发送根据以太网数据包的下一跳地址信息可以获得对应的信道参数,在用户预设的信道参数表中可以查找到用户指定的和该信道具有相同目的地的其他信道,最终获得各信道在KS8995MA芯片上的端口信息,根据这些端口设置的速率,将数据按照速率最高的端口的VLAN标志,封装成符合802.3Q格式的VLAN信息,并通过速率最高的信道发送。

用户指定发送方式用于源路由器和目的路由器之间有多条信道连接。当源和目的之间仅一条信道连接时,用户也只能指定从该信道发送,系统处理过程和自动发送方式相同。当源和目的之间有多条信道连接时,根据用户指定的信道获得该信道的VLAN标志,将数据添加重新封装为802.3Q的VLAN信息,通过KS8995MA的对应端口发送到信道上。

多信道同传发送方式用于源路由器和目的路由器之间有多条信道连接。根据以太网数据包的下一跳地址信息可以获得对应的信道参数,在信道参数表中可以查找到用户指定的和该信道具有相同目的地的其他用于冗余传输的信道,获得各个信道在KS8995MA芯片上的端口信息,将数据按照各端口的VLAN标志,将数据分别封装成符合802.3Q格式的VLAN信息,并通过KS8995MA的各个端口向连接源路由器和目的路由器的所有信道发送数据。动态路由协议路由更新信息的发送过程与此类似,都是向所有信道冗余发送。

接收端的KS8995MA芯片接收到各条信道的数据后直接发送给处理器,处理器首先去掉802.3Q的帧头,对以太网层的用户数据进行分析,并记录下每一包数据的IP层报文的帧序号,根据IP数据帧序号递增的规则,判断此包数据是否已经收到过了,收到过的数据直接丢弃,未收到过的数据重新封装成标准以太网数据交给IP协议栈进行上层的处理。并将此数据包的帧序号保存,供与下一包数据进行帧序号比较。

4 结束语

Internet的关键协议IP协议,直接用于军事网络互连,可以将互通性较差的各种战术网连成战术互联网(TI),这在以ATM为核心的B-ISDN尚未普及的今天,不失为一种既利用了现有资源又解决了互通问题的好办法。路由器作为Internet网络组网的关键设备,在军事通信过程中具有重要作用,使用多信道冗余传输方式,可以有效地防止单点失效,增强网络节点的抗毁性。本文设计的多信道冗余传输方式与网络层的动态路由相结合,使路由设备即拥有自动组网的灵活性,又具有备份信道传输的可靠性,适合于战时的恶劣环境。多信道冗余传输在链路层以下通过多信道同时发送来增强数据传输的可靠性,由于网络层IP本身提供的是一种不可靠的服务,因此数据的有效性需要由上层协议进行保证。

参考文献

[1]张公忠.现代网络技术教程[M].北京:电子工业出版社,2000-01.

[2]李晓东.IP QoS的实现[N].北京:计算机世界日报,2000-07-03.

[3]赵慧玲及ITU-T SG13中国代表团.新一代IP网络标准的发展[J].北京:中国通信,2001(2).

多信道网络通信设计 篇2

隐蔽信道的概念最初是由Lampson于1973年提出[1],一般分为两种类型:存储隐蔽信道和时间隐蔽信道。网络时间隐蔽信道(Network Covert Timing Channel,NCTC)是在网络环境下,利用数据包的发送时刻、发送间隔等特性来构建的隐蔽信道。2004年,Cabuk提出了一种IP时间隐蔽信道[2]。在该信道中,发送者和接收者约定一定的时间段(timing interval)。在传输过程中的每个时间段内,发送者向接收者发送一个数据包,或者保持静默,这两种动作分别代表符号0和1。Berk于2005年设计了另外一种网络时间隐蔽信道,这种隐蔽信道利用网络包间的间隔时间表示要传输的数据[3]。发送端使用单位间隔时间t表示0,用2倍的单位时间间隔表示1。

Cabuk和Berk设计网络时间隐蔽信道时,均以一位二进制信息为单位传输内容,信道利用率不高,并且没有对网络延迟抖动影响进行针对性分析。本文在此基础上,提出了多进制网络时间隐蔽信道的设计,通过大量实验仿真,并结合数值分析方法给出消除网络抖动影响的方法。介绍了三种多进制网络时间隐蔽信道的实现原理,分析了网络抖动对信道的影响,得出消除抖动影响的时间限值计算方法;通过对三种信道在不同抖动下的仿真,验证多进制信道实现的可行性和限制计算方法的可靠性。

1多进制网络时间隐蔽信道设计

信道容量的概念最早来源于信息理论,指信道能够取得的最大信息传输速率,被TCSEC采用作为信道威胁评价的指标,在信道度量领域应用最为广泛[4]。

对于一个通信系统,如果把接收端的接收符号当作离散信息源,把接收数据中不同的值看作是一组随机事件,那么,就可以对它的信息熵进行分析。针对Cabuk等人开发的NCTC,假设在信道中只存在NCTC的情形下。设定发送端的符号传输集为X={ni,i=0,1},接收端的符号集为Y={ni,i=0,1},在没有任何干扰的情况下,根据互信息的基本性质,可知I(X,Y)=H(X)=H(Y)。依据最大熵理论,当时,S表示某个事件发生的总次数,H(X)取得极大值,因此,该信道的信息容量为1 bits。

依据信息熵的基本性质,在等概率情况下,H为n的单调上升函数[5],即对于等概率事件,状态越多就有更大的不确定性,在通信系统中,信道的容量就越大。

同样假设在信道中只存在NCTC的情形下。设定发送端的符号传输集为X={ni,i=0,1,2,3},接收端的符号集为Y={ni,i=0,1,2,3},依据前述计算可知,该信道的信息容量为2 bits。

据以上分析,可将NCTC的二进制编码改为多进制编码,使之能在单位时间内传输更多的信息,本文设计三种多进制NCTC:

NCTC1———细化编码所对应的时间间隔,如在0.5 s内,0 s—0.25 s间有数据包传输代表1,无数据包传输代表0,0.25 s—0.5 s间有数据包传输代表1,无数据包传输代表0,则在0.5 s的计算单位内存在00、01、10、11四种可能,NCTC1的原理(见图1)。

NCTC2——设定多级的时间间隔,时间间隔在0.1 s内代表00,时间间隔在0.1 s和0.2 s之间代表01,在0.2 s和0.3 s之间代表10,在0.3 s和0.4 s之间代表11,NCTC2的原理(见图2)。

NCTC3——1 s内的流量小于1 kb/s代表00,1 kb/s和2 kb/s之间代表01,2 kb/s和3 kb/s之间代表10,3 kB/s和4 kB/s之间代表11,NCTC3的原理(见图3)。

2 网络延迟抖动的影响

时间隐蔽信道实现要求收发双方共享统一的时钟,建立可靠的同步机制。数据包收发的间隔时间是NCTC同步机制的重要参数。如果数据包的传输延迟是固定的,那么,隐蔽信道的接收端可以简单调节数据包的接收时钟来消除影响。但是,如果延迟有变化,数据包在传输过程中存在抖动,接收端观察到的数据包到达时间或早于或迟于预期时间,这会可能导致接收到的信息中出现0插入或者0丢失的单个位出错现象,因此网络时间隐蔽信道设计必须避免延迟抖动的影响。

NCTC1实现判断条件为数据包到达时间是否在预定时间间隔之内,抖动会造成数据包到达时间偏离预期。避免的关键在于预定时间间隔的设置,可以设置数据包在发送时处于时间间隔中间点,数据包到达时间加上最大抖动时间小于预定时间间隔的一半。

NCTC2实现的判断条件为相邻数据包到达的时间间隔是否是预定时间间隔之一,抖动会造成相邻数据包到达时间间隔不是预定时间间隔之一。避免的关键在于每个预定时间间隔的设置,可以设置为相邻数据包到达的无抖动状态下预定时间间隔加上最大抖动时间。

NCTC3实现的判断条件为预定时间间隔内数据包到达的流量为预定流量之一,抖动会造成预定时间间隔内的流量不为预定流量之一。避免的关键在于预定时间间隔的设置,可以设置为无抖动状态下最后一个数据包到达的预定时间加上最大抖动时间,同时要求数据包集中发送。

综合上述分析可以看出,NCTC实现的关键在于预定时间间隔设置。预定时间间隔设置需要预先统计分析网络中最大抖动时间。

若设t1为packet1的发送时间,t2为无抖动状态下packet1的预期接收时间(这里将接收端处理报文的时间忽略未计),t3为packet1的实际接收时间。delay为传输延迟,max_jitter为最大抖动时间,interval为预定时间间隔设置。则有:

delay=t2-t1;

max_jitter=t3-t2;

预定时间间隔interval可以设置为delay与max_jitter及差值之和(见图4)。

3 NCTC在NS2上的仿真实现

本文在仿真工具NS2上,通过FTP和流量发生器CBR模拟了三种NCTC实现过程,分析了网络状况对NCTC运行的影响。

3.1 仿真实例

本文利用NS2 作为仿真平台对NCTC进行仿真。在实例中,初始设置n0、n1、n2、n3共4个节点;n0和n2,n1和n2之间各有一条双向链路带宽为2 Mb/s,延迟为10 ms;n2和n3之间有两条单向链路,链路带宽为1.7 Mb/s,延迟为20 ms;每个链路使用先进先出策略;n2和n3之间链路的最大队列长度为10。n0和n3之间有一个构建在TCP上的FTP连接;n1和n3之间有一个构建在UDP上的CBR连接。CBR用来实现隐藏数据“0101100100100111”的通信;FTP用来构建网络阻塞等状况。

一般情况下,NCTC至少受到网络状况、收发双方的处理能力、算法的复杂度、程序的可移植性四个因素的影响。除网络状况外,其余三个因素主要影响收发两端数据包的处理速度。本文在仿真时用2个节点n1和n3,分别作为收发两端,假定这三个因素确定,不改变节点处理数据包速度。

网络状况对NCTC的影响主要存在于网络阻塞和延迟抖动,比如网络堵塞可能造成数据包到达时延变长,或者到达顺序混乱,甚至于数据包丢失;抖动使得收发双方的同步出现问题。到达顺序混乱一般出现在多路径情况下,本文不作考虑。网络堵塞要求线路速度大于处理速度,并且出现多路争用资源的情形,严重情况下产生丢包。本文实例通过仿真实验,构建了较复杂网络状况、单路径下三种NCTC的实现,并比较分析三种方法的优劣。

3.2 结果分析

根据文献[6]的研究,抖动主要受到线路负载和发送速率的影响,本文设计三种不同的速率情况,利用FTP流量和CBR流量观察了仿真拓扑的运行状况,结果表明线路参数设置起作用,n2节点有排队现象。本文以不同发包速率测试时线路最大抖动,结果显示抖动不超过0.05 s(见图5)。

NCTC1实验时,以[0.25 s—0.5 s、0.75 s—1.0 s、1.0 s—1.25 s、1.75 s—2 s、…]的时间间隔序列产生CBR流量。由于传输延迟的存在,需要在结束时间点的基础上减去传输延时t,如0.25—(0.5—t)。以修正后的时间间隔序列产生CBR流量,同时产生FTP流量,网络产生阻塞,造成抖动,需要再次修正时间间隔序列,减去最大抖动延时T,即0.25—(0.5—tT),并确定结果大于0,完成时间约为4 s,结果(见图6)。

NCTC2实验时,同NCTC1一样,计入最大抖动延时后,修改CBR发送数据包的时间间隔为0.5,分别在0.5 s、0.65 s、0.8 s、1.05 s、1.20 s、1.25 s、1.5 s、1.65 s、2.0 s发送数据包,同时在0.1 s产生FTP流量,网络产生阻塞,但FTP有丢包现象,CBR无丢包,完成时间约为2 s,实验结果(见图7)。

NCTC3实验时,同NCTC1一样,计入最大抖动延时后,修改CBR发送数据包的时间间隔为0.2,数据包大小设定为800 b,依据数据包的大小确定在单位时间1 s内所发送数据包的个数,并据此计算1 s内流量,FTP流量产生后,网络出现阻塞,有FTP数据包丢失,完成时间约为8 s。实验结果(见图8)。

仿真结果表明,三种NCTC设计时均需依据延迟及抖动等网络状况,设置计算的时间单位。NCTC1计算时,要估算线路延迟和阻塞延迟,并在计算单位内减去相应的延迟时间。NCTC2需估算延迟时间,确定区分不同编码的时间间隔。NCTC3单位时间的流量大小也需要依据延迟状况来确定。同等网络状态下,从效率上来看,NCTC2完成时间短,效率比较高;从稳定性来看,NCTC1受延迟影响较大,NCTC2受包丢失影响较大,NCTC3稳定性较高。

4 结束语

在基于网络协议的隐蔽信道中,NCTC利用数据包的时间特征来传递信息,在具有突发性和随机性的网络流量中,比存储型网络隐蔽信道具有更大的随机性,对流量进行二进制编码的特征也限制了它的通道容量。

基于多进制的NCTC不仅可以显著扩大通道容量,而且能降低信息传输差错带来的影响。本文所设计NCTC可扩展为更高进制,通过仿真,实现了在单路径网络中,有延迟干扰情形下,三种多进制NCTC的可靠运行。为扩大NCTC的适用性,可在具有路由功能的多路径网络中,有延迟、抖动、包顺序混乱、包丢失等状况下,对NCTC的运行作进一步的研究。

参考文献

[1] Lampson B W.A note on the confinement problem.Communicationsof the ACM,1973;16(10):613—615

[2] Cabuk S R,Brodley C E,Shields C.IP covert timing channels:de-sign and detection.Proceeding of the 11th ACM Conference on theComputer and Communication Security.Washington,USA,2004:178—187

[3] Berk V,Giani A,Cybenko G.Detection of covert channel encodingin network packet delays.Technical Report,TR2005536,Depart-ment of Computer Science,Dartmouth College,2005;1—11

[4] U.S.Department of Dedense.Trusted computer system evaluationcriteria.DoD 5200.28-STD,1985

[5]冯尚友.信息熵与最大熵原理.水利水电科技,1995;(3):24—28

多信道网络通信设计 篇3

1 无线传感网络模型

无线传感网络在海上通信、航空通信等各个方面都有着重要的应用, 无线传感网络模型一般分为物理感知单元、数据获取单元、数据传输单元以及能量单元等四个组成部分: (1) 物理感知单元:物理感知单元的主要功能是获取目标物体的相关感知数据, 其以无线传感器为基础能够对目标物体的温度、图像等数据进行感知; (2) 数据处理单元:传感器在收集目标物体的感知数据之后会通过数据处理单元对相关感知数据进行预处理, 例如图像数据的预处理、温度数据的预处理等等; (3) 数据传输单元:目标物体的感知数据在经过处理后需要进行传输或接收, 数据传输单元的主要功能是与多信道无线通信相互配合, 从而实现目标物体感知数据的传输或接收[1]; (4) 能量单元:无线传感器网络中的无线传感器等设备是需要能量支持的, 能量单元的主要作用就是为无线传感器网络供给能量, 从而保证无线传感器网络的正常运行。

就目前来看, 当前的无线传感器网络中的节点只有部分能够实现通信移动, 其余的节点则保持静止, 因此, 无线传感器网络呈现出以下特征: (1) 资源有限:对于无线传感器网络的数据处理设备来说, 其数据处理能力通常要依赖于嵌入式芯片的开发, 因此无线传感器网络的数据存储和数据处理能力受到一定的限制, 呈现出资源有限的特征; (2) 自组织体系:无线传感器网络中各个节点之间是不可预知的, 各个节点之间是相互影响的, 一旦一个节点的通信失效, 而可能会影响其他节点的通信链路, 从而对整个无线传感器网络的结构造成影响; (3) 结构以数据为中心:传统的无线网络结构以IP地址为中心, 而无线传感器网络的结构以数据为中心, 对发送数据的节点并不重视。

2 多信道通信概述

在多信道通信技术没有被研发并应用之前, 无线传感器网络中各个节点的通信在一个信道之内, 这就使得节点在发送和接收数据的过程中容易受到其他节点的干扰, 同时还容易受到外界噪声的干扰, 从而导致整个无线传感器网络在数据传输的过程中易出现误码, 严重影响了通信质量。在应用多信道通信技术之后, 无线传感网络中的节点能够在不同的信道内进行数据的传输, 这就降低了各个节点之间的信号干扰, 此外, 由于节点分散在不同的信道内, 单一信道的容量也会增加, 这就降低了外界的干扰, 从这两个方面来看, 多信道通信技术在无线传感网络中的应用能够有效提升通信质量[2]。

多信道通信虽然能够提升无线传感器网络通信的可靠性, 但这种通信模式也会提升通信协议以及通信结构的复杂性, 相较于单通道通信来说, 多信道通信技术的无线传感器网络的多信道广播以及资源负载均衡等方面的问题还有待优化。

3 无线传感网络多信道广播问题的分析

多信道通信虽然能够提升无线传感器网络通信的可靠性, 但这种通信模式也会提升通信协议以及通信结构的复杂性, 相较于单通道通信来说, 多信道通信技术的无线传感器网络的多信道广播以及资源负载均衡等方面的问题还有待优化。

3.1 多信道广播通信的问题分析

在无线传感器网络中, 多信道广播通信是一种十分重要的通信形式, 其在同步时间、数据及路由的查询等各个方面都有着重要的应用。对于单信道通信的无线传感器网络来说, 其无线传感节点在一个通道内实现分布, 这就可以借助无线电波的广播作用来接受或传递相关的广播信息, 从而实现广播通信。但对于多信道通信的无线传感器网络来说, 由于传感器节点在多个通信通道内分布, 因此不同信道内节点的苏醒时间有着一定的差异性, 而节点的数据传输是需要能量的, 为了节省能量, 在不同信道内节点可能会处于睡眠状态, 这就使得处于睡眠状态的节点无法接受通信信号, 这就给多信道广播带来了一定的困难, 从而衍生为多信道通信的相关问题, 具体主要体现在以下三个方面: (1) 覆盖率小:为了避免能量消耗, 不同信道内的节点可能处于沉睡状态, 这就降低了多信道广播的覆盖率, 针对这个问题, 可以采取节点转接的方式来解决, 即如果一个沉睡节点接收信息, 则可以将其转接到其他节点上, 从而提升节点接收信息的效率, 扩大通信范围; (2) 广播冗余:多信道广播通信中, 节点转播会导致多信道广播通信的冗余问题[3]; (3) 通信延迟:由于多信道广播通信中, 无线传感网络的节点为了节省能量处于沉睡状态, 这就需要对广播信号进行转接和转播, 而在转接和转播的过程中势必会影响到信号的传输效率, 从而导致多信道广播通信的延迟, 严重时可能导致整个无线传感网络的瘫痪。

3.2 创建分布式树形广播协议

上文中对多信道广播通信的问题进行了分析, 针对这些问题可以建立一个分布式树形广播协议, 以此来优化多信道广播通信。通过树形广播协议可以将节点的广播包进行发送, 这就能够有效提升多信道广播通信的效率及覆盖率。分布式树形广播协议采取的是动态分配方式, 采用分布式方法, 集中式算法更加简便, 在无线传感器网络的应用中对节点要求不高, 这就有效降低了节点能量消耗, 从而实现对多信道广播通信的优化。

4 结语

本文简要研究了无线传感网络模型和多信道通信在无线传感网络中的作用, 并分析了无线传感网络多信道广播问题, 并提出了具体的优化方法, 旨在提升多信道通信技术在无线传感器网络中的应用水平。

参考文献

[1]秦绍华.无线传感器网络多信道通信技术的研究[D].山东大学, 2014.

[2]王明飞, 慈林林, 詹平, 徐勇军.多信道无线传感器网络容量分析模型研究[J].通信学报, 2008, 11:50-61.

多信道网络通信设计 篇4

在Ad Hoc网络中,无论是移动IP[2]整合方案,还是AODVPlus[3]互联方案都需要进行定期的消息广播以维护路由链接,这都将消耗掉大量网络资源。通过修改移动节点结构模型,可以为移动Ad Hoc网络的多信道模拟研究提供了一种灵活简便的方法,从而改善网络互通的性能。

1 协议概述

1.1 多信道多接口模型

修改的移动节点(Mobile Node)都有许多原始实体链的副本。只有传播模型(Propagation Model)没有重复,节点可以使用多个信道,但是使用单一传播模型。所有的信道都在链路层(Link Layer)汇合。对于输入数据流,跟原来的模拟模型操作区别不大,对于输出数据流,选择合适的接口是文中的讨论的重点,其对应着不同的信道分配策略。

由于NS2[4]采用的是Tcl/C++分裂模型,所以对模型的修改涉及到Tcl和C++应用实例的修改两个部分。

在构建多信道多接口的移动节点结构时,要为每个新增的信道构建一套链路层到传播模型的副本,包括地址转换协议(ARP)、排队接口(Interface Queue),MAC层协议(MAC protocol)。地址转换协议、排队接口不是信道或接口的衔接点,所以只要通过修改ns-mobile.tcl中的增加接口函数(add-interface procedure)实现。

通过Tcl文件的修改就可以为每个节点添加信道副本,ns-mobilenode.tcl负责节点信道的配置、修改该文件中函数、增加链路层(Link Layer)、地址转换协议(ARP),排队接口(Interface Queue)如下所示:

接口部分,由路由代理(Routing Agent)与链路层(Link Layer)进行链接。由于不同的路由代理对应不同的路由算法实现,故对路由实现文件的修改,要根据不同的信道分配策略来进行具体的修改。

信道部分,MAC层协议与传播模型(Propagation Model)进行链接,需要修改本文中使用的IEEE802.11协议的实现的文件mac-802_11.cc,信道实现文件channel.cc,mobilenode.h也需要进行修改。

通过对Tcl文件的修改,可以通过Tcl文件的修改就可以为移动节点配置多个链路层与传播模型之间的传输信道。模拟器通过两个指针控制节点的单个信道使用情况。Mobilenode.h原始的指针值为两个简单的变量如下所示:

MobileNode* nextX_;MobileNode* prevX_;

因为一个节点只有一个信道。由于引入了多信道,节点需要为每个信道分配一个信道管理器,本文通过初始化了两个数组,为信道分配了一定数量(MAX_CHANNELS)的信道管理器。如下所示:

节点的信道管理器需要对分配的多信道进行管理,因此需要修改channel.cc文件,当分配信道时,信道指针需要放入移动节点的信道管理器以便于信道管理。如下所示:

xListHead_->nextX_[this->index()] = NULL;xListHead_->prevX_[this->index()] = NULL;

这边的this->index()表示当前信道的索引值。原始的实现只需要nextX_ = NULL,因为只有一个信道和一个对应的信道管理器,不需要为每个信道进行设定。

1.2 AODVPlus中的信道分配策略

在修改的按需路由协议AODVPlus中,被利用多信道的特性和AODVPlus与Internet互联实现机制将数据传播,网络状态检测更新消息,广播消息分别放到不同的信道中进行处理,以此来提高移动Ad Hoc网络的整体性能。本文中通过修改AODVPlus路由协议的实现文件aodv.h和aodv.cc文件,为不同的数据包分配不同的信道。如下所示:

当包类型为网关广告信息(AODVTYPE_ADVERTISEMENT)时为其分配信道0,如果信息为Hello消息(AODVTYPE_HELLO)时分配信道1,其它消息为数据包分配剩余信道,如图1所示。

2 仿真

2.1 仿真环境设置

表1中给出了一些环境配置信息。

图2是对传输率、丢包率和传输延时比较。

2.2 仿真结果分析

多信道的情况下面传输率虽然抖动比较多,但是总体性能要比单信道好些。多信道的抖动比较多,与多信道情况下各信道之间的协调策略的不完善有关,需要做进一步研究。

丢包率值越大网络性能越差。通过分析,可以判定在300.0 s的时候存在网关切换,故无论是否应用了多信道,都出现明显的丢包情况。由于缺少信道协调机制,导致应用多信道的AODVPlus协议在网关切换的时候更严重。

端到端的时延参数是路由重建时延和网关切换的总体反映。文中的多信道是通过增加信道传输副本的方式实现的。在传输数据率不变的前提下,相对单信道协议多了数据处理服务源,减少单个独立信道的负载,所以数据的处理速度得到提高,传输时延相对平稳。

3 结束语

文中主要介绍了多信道多接口模型的设计与实现。通过网络仿真发现,多信道的引入能够提高网络的性能,但是多信道之间的协调也即多信道分配策略将成为移动Ad Hoc网络多信道节点接入Internet网的关键问题。下一步可以研究多信道对于网络能量损耗的影响,以进一步提高这些路由协议和策略的实际应用价值。

参考文献

[1]王金龙,王呈贵,吴启晖,等.Ad Hoc移动无线网络[M].北京:国防工业出版社,2004.

[2]Charles E Perkins.IP Mobility Support for IPv4.RFC3220,Internet Engineering Taskforce[S/OL].http://www.faqs.org/rfcs/rfc3220.html,(2002-11-6)[2008-04-14].

[3]Perkins C E.Ad Hoc On-demand Distance Vector(aodv)Routing[EB/OL].IETF:Internet-Draft,draft-ietf-manet-aodv-04.txt,(1999-08-28)[2008-04-11].

[4]NSNAM.The University of Southern California′s Informa-tion Sciences Institute(ISI)[EB/OL].http://nsnam.isi.edu/nsnam/index.php/Main_Page,(2006-11-10)[2008-04-02].

[5]Raman B.The Enhanced Network Simulator(Release Ver-sion1·2)[EB/OL].http://www.ecsl.cs.sunysb.edu/multichannel,(2006-05-08)[2008-03-12].

多信道网络通信设计 篇5

煤矿应急救援通信系统在煤矿安全生产中起到了关键的作用。当事故发生后,救护人员必须携带救护装备深入井下。为了减轻救护队员的负担,无线Mesh网络的通信方式已经逐步普及[1,2],但是目前井下无线Mesh网络的信道分配中,存在不同设备之间传输干扰等问题。无线Mesh网络信道分配就是在合理的频率复用条件下,通过给网络站点分配频率,使网络干扰最小化的过程[3]。无线Mesh网络中的多信道分配是网络处理器难题。目前,常用的多信道分配算法有静态、动态和混合3种算法, IEEE 802.11就是多个正交信道在同一区域内工作的标准,近期有学者研究表明,IEEE 802.11协议在实时的多跳数据流处理以及网络超载等方面效果不佳,上述算法均不能很好地解决信道分配抖动问题, 也就是说在局部信道变化时,需要反复分配,分配效率低,导致全局 网络的效 率降低。 考虑到无 线Mesh网络连通性以及煤矿井下环境,本文提出一种基于拓扑分层和干扰避免的煤矿应急救援无线Mesh网络多信道分配算法。

1多信道分配算法的提出

多信道分配需要处理好连接和干扰之间的关系,通过信道 分配策略 找到满足 二者的最 优算法[4,5]。拓扑分层可以保证网络的连通性,是目前信道分配主要的研究方向。本文中煤矿应急救援无线Mesh网络多信道分配算法的拓扑分层在已有的连接图上进行处理,形成以干扰权重为度量标准的结构。信道干扰主要包括对信道影响较大的纵向干扰和影响较小的横向干扰,抗干扰的目标是避免纵向干扰和横向干扰。利用拓扑分层算法生成的拓扑结构,进行干扰避免的信道分配,使网络避免信道分配抖动。

多信道分配算法步骤:首先对网络拓扑分层,在确定第1层节点与边的基础上,继续对其他层进行拓扑分配;然后对各层根据干扰情况进行信道分配。

2多信道分配算法

2.1拓扑分层的分配策略

定义:首先给各个信道设置优先级P,分配信道后该信道的优先级改变值用V表示[6,7,8]。则信道分配后,优先级变化公式为

假设网络拓扑结构如图1所示。

节点分层时,为避免纵 向干扰,先将与网 关 (Gateway)相邻的节点分到第1层,即A,B为第1层。然后对第1层各个节点进行深度优先扩展,依次分层,对第1层中的节点A进行分层,则A的下一层为C和D,先对C进行深度优化扩展,则第2层为C,F;对D进行深度优化扩展,则第3层为D, G。同理,对第1层中的B进行分层,得到第4层为E。分层后的拓扑结构如图2所示。

在节点拓扑分层时,2个节点之间的边也需要进行分 层。 第1层中的边 包括Gateway- A, Gateway-B,第2层中的边包括AC,CF等,还有一些边划分界限不明显,例如DF,EG等,划分时将其放到所属的层中。

拓扑分层时,大部分流量汇集到网关,因此网关的优化直接影响到网络的性能。网关优化从减少网关数、平均跳数、负载均衡指数3个方面进行优化。

网关节点I={Ii}(i=1,2,…,n,n为网络节点数)需要满足用户的需求量为Yi,Yi与节点数Ji呈正比关系,即

式中:C为常量。

则用户需求量均值Y珚和方差Var分别为

网络负载均衡指数

对于任意vi∈V,用δi表示是否被选为网关:

用hi,j表示vi与vj(j=1,2,…,n)间最小跳数。 定义0,1变量μi,j,如果AP经过该网 关入网,则 μi,j=1,否则经过其他网关入网,μi,j=0。则最小化网关节点数 为, 最小化平 均跳数, 最小化负载均衡指数为

2.2抗干扰的信道分配

通过拓扑分层后,获得了一个网络近似最大流量集合。利用流量集合,首先根据带宽利用率为每条链路分配一个组,然后根据干扰情况对每个组进行信道分配[9,10,11,12,13]。

2.2.1链路分组

链路a1的流量用f(a1)表示,链路a1的容量用c(a1)表示,链路每个传输周期T内所传输的数据包为f ( a1) T , 传输时间因此 , 对于分配相同信道的链路,在其冲突 域中的传 输数据时 间t≤T。由此得出可调度的流量集合为

式中:f(a),c(a)分别为链路a的流量和容量;A′为链路集合。

信道分配中通过访问每层链路集合,按照流量从大到小的顺序分配组。链路带宽利用率为潜在的冲突域内所有的链路容量比的总和,表示为

R(a)的最大值为组链路带宽利用率,同时,选择最小链路带宽利用率的组与链路a绑定。

2.2.2信道分配

完成链路分组后,需要给链路中的每个组进行信道分配,原则是使组链路带宽利用率达到最小。

首先对组集合中组链路带宽利用率按从大到小的顺序排列,再访问各个边。例如为组b进行信道分配,如果节点的距离在干扰范围内,则将该条链路视为干扰链路。排除所有的干扰链路后,在备选的分配信道链路中就没有与组b链路相互干扰的链路,此时把链路数最多的信道分配给组b。如果不存在这样的信道,则选择干扰量最小的信道。

通过缩放因子进行缩放后的网络流量为

则可调度的流量集满足条件:

2.3干扰模型

对于本文中的多信道分配算法,结合煤矿井下灾后应 急救援的 现场环境,选用的干 扰模型为TRCA(Transmitter-Receiver Conflict Avoidance) 模型。该模型要求3跳内不得采用同一个信道,如图3所示,AB,BC,CD这3条信道均不可重复。

信息发送者x(a)与信息接收者y(a)之间的信息传输表示为a:x(a)→y(a),如果a为活跃的,表示有信息传输,传输速率为w(a)。(s(k),d(k))表示1对源点、目标点,数据流速 为v(k),v(k)∈ (s(k),d(k)),点到点的数据流表示为yk(a)。干扰约束条件:

3仿真分析

采用NS2网络仿真器[14,15]对本文算法与目前常用的拓扑结构算法进行仿真分析。本文涉及的仿真算法属于C++和Tcl编程仿真。

实验一:信道变化对吞吐量的影响。

在仿真模型 中,无线Mesh节点发射 距离为200m,干扰距离为500 m,拓扑范围为1 000 m× 1 000m。随机选取20个节点,每个节点 有20 Mbit/s的流量需求。分别采用4个和8个信道对比2种算法的吞吐量,仿真结果如图4所示。

从图4可看出,在流量小于4Mbit/s时,2种算法的网络吞吐量基本相同,随着流量增加,本文算法的吞吐量大于拓扑结构算法的吞吐量;对于本文算法,当信道个数为8时,吞吐量较信道个数为4时大,说明8个信道得到了充分利用,也说明了信道分配过程中的传输干扰降低,吞吐量得到提升。

实验二:网关变化对吞吐量的影响。

本实验采用8个信道,射频接口分别选取2个和4个,当网关变化时,对比2种算法的吞吐量,仿真结果如图5所示。

从图5可看出,随着网关数的增加,本文算法和拓扑结构算法的吞吐量都随之增加;存在2个接口的情况下,当网关数为2和14时,2种算法的吞吐量基本相同,其他情况下,本文算法的吞吐量大于拓扑结构算法的吞吐量;同等网关数量情况下,存在4个接口时的吞吐量大于2个接口时的吞吐量。

4结语

结合煤矿井下应用环境,考虑无线Mesh网络连通性以及干扰模型,提出了一种基于拓扑分层和干扰避免的多信道分配算法。该算法利用拓扑分层算法生成拓扑结构,然后根据干扰情况对各层进行抗干扰信道分配。在可用信道变化和网关变化2种情况下进行仿真分析,结果表明该算法能够提高网络的吞吐量,降低了信道分配中的传输干扰,可有效保障煤矿应急救援中通信链路的可靠性和稳定性。

摘要:针对现有的无线Mesh网络多信道分配算法无法解决煤矿应急救援中无线Mesh网络因传输干扰导致的信道分配抖动问题,结合无线Mesh网络连通性以及干扰模型,提出了一种基于拓扑分层和干扰避免的多信道分配算法,即对网络拓扑分层,在确定第1层节点与边的基础上,继续对其他层进行拓扑分配,然后根据干扰情况对各层进行信道分配。设计了仿真模型:无线Mesh节点发射距离为200m,干扰距离为500m,拓扑范围为1 000m×1 000m。随机选取20个节点,在可用信道变化和网关变化2种情况下对该算法进行仿真分析,结果表明该算法较常用的拓扑结构算法提高了网络的吞吐量,降低了信道分配中的传输干扰。

多信道网络通信设计 篇6

近年来,在Ad hoc网络MAC协议领域,多信道技术成为研究热点,与单信道技术相比,其具有提高系统吞吐量、降低时延、容易实现Qos支持等优点[1,2]。多信道MAC协议需要解决两个问题,即信道分配和媒体接入。前者解决哪个信道被哪个节点使用,后者解决在一个确定信道上的竞争和冲突问题。在信道分配方面,信道的负载均衡问题会影响系统的性能,高负载信道上容易发生冲突和分组丢失,而低负载信道上便造成资源浪费,目前只有少数多信道MAC层协议考虑了信道的负载均衡问题,传统的方法是基于物理载波侦听技术,每个数据信道配有一个侦听模块,随时感测数据信道上的负载情况,以便节点选择一个负载最低的空闲数据信道作为通信信道[3,4]。在传统方法中,过多侦听模块的加入增加了设备复杂度,也不符合Ad hoc网络中节点降低能耗的思想,并且信道的负载量是在进行信道选择时计算的,不能准确地反映信道使用时的负载情况。本文结合多信道DCA协议,有效利用控制信道分组中的NAV信息,提出一种新的解决负载均衡问题的多信道MAC协议,该协议不需侦听模块便能预测数据信道的负载量,有效地克服了传统方法的缺点。

1 协议基本思想

1.1 多信道DCA协议原理

把整个信道分为1个控制信道和n个数据信道,这些子信道互不重叠且带宽相等,每个节点配置2部半双工收发机,一个专用于控制信道,一个可在n个数据信道间切换使用。通信双方通过在控制信道上交换RTS/CTS/RES帧来预约数据信道,然后在数据信道上交换DATA/ACK帧来完成数据交换。

每个节点(如A节点)保存信道使用列表CUL[]和空闲信道表FCL。每个CUL[]表项有3个元素,CUL[i].host是A的一个邻居地址,CUL[i].ch是被邻居CUL[i].host占用的数据信道,CUL[i].reltime指CUL[i].ch信道的释放时间,FCL表可由CUL[]计算得出。多信道DCA协议的主要思想是:① 当节点A与B通信时,A先向B发送携带FCL表和数据长度信息的请求帧RTS;② B接收到A的RTS后,利用其中的FCL表和本节点的CUL[]表得到一些匹配的空闲数据信道,选择一个数据信道(如Dj)和网络分配向量信息NAVcts一起放入CTS帧中,发回给A,再把数据信道收发机切换到信道Dj,准备接收数据;③ 节点A接收到B的CTS帧后,把数据信道收发机切换到信道Dj上发送数据,同时向外发送广播帧RES,告知邻居节点信道Dj的使用情况;④ 周围节点收到A的RES帧或者B的CTS后,根据里面携带的信息更新CUL[]表。更详细的DCA协议过程参考文献[1]。

1.2 本文负载均衡方法的基本思想

多信道DCA协议中,邻居节点通过接收到的CTS(Dj,NAVcts)或RES(Dj,NAVres)帧了解信道的使用情况。经分析,NAVcts、NAVres提供了数据信道上何时会有何种帧传输的详细信息,节点记录下这些信息,便可以在需要的时候计算出数据信道的当前负载量,协议中用到的标识符含义如表1所示。

每个节点增加1个表:数据信道负载表DCL[],每个表项有3个元素,DCL[i].ch是数据信道号,DCL[i].starttime表示信道DCL[i].ch上一个帧的传输时段的起始时刻,DCL[i].endtime表示这个帧的传输时段的结束时刻,因此,一个表项可以描述某个帧在一个数据信道上的传输情况。图1是节点A、B通信时的分组交换时序图,当收到A的RTS帧后,B返回CTS(Dj,NAVcts)帧,其中NAVcts=Ld/datarate + Tack+2*Tprop。当CTS(Dj,NAVcts)帧传输完毕时,可知:从Tcurr到Tcurr+Ld/datarate+Tprop时刻是DATA帧在信道Dj上传输时段,如图1的datatime所示;从Tcurr+Ld/datarate+Tprop到Tcurr+NAVcts时刻是ACK帧在信道Dj上传输时段,如图1的acktime所示。B是数据的接收方,所以收到CTS(Dj,NAVcts)帧后,B的邻居节点增加一个DCL[]表项,以记录B将要发送的ACK帧的传输时段信息。A收到CTS(Dj,NAVcts)后再向邻居节点发送广播帧RES(Dj,NAVres),其中NAVres=NAVcts-Tsifs-Tres,同样,A的邻居节点也会增加一个DCL[]表项以记录DATA帧的传输时段信息。由此,每个节点都会把数据信道上的数据传输情况记录下来,为计算信道负载量提供依据。

设置一个负载计算间隔值:Lt。把在某一时刻前的Lt时间里数据信道Dj上的总负载量称为这一时刻Dj的当前负载量(CurrLoad),可由DCL[]表中的帧传输时段记录计算而得。若发送DATA帧的时间是:datatxtime,那么计算该时刻Dj的当前负载量算法如下:

所以,目的节点在选择数据信道前,通过这种方法,计算出每个匹配空闲数据信道在发送DATA帧时刻的当前负载量,再选择一个最小负载量的作为指定的数据信道。

2 本文协议的描述过程

以下是本文协议的描述过程如下:

① 节点A有数据发送给B时,在发送RTS帧前做3项检查:

第一,保证目的节点B的数据信道收发机空闲。在CUL表中不能有:CUL[i].host=B且CUL[i].reltime>Tcurr+(Trts+Tsifs+Tcts);

第二,保证本节点的数据信道收发机空闲。在CUL表中不能有:CUL[i].host=A且

CUL[i].reltime>Tcurr+(Trts+Tsifs+Tcts);

第三,保证本节点A有空闲的数据信道。至少一数据信道Dj满足:CUL[i].ch=Dj且

CUL[i].reltime≤Tcurr+(Trts+Tsifs+Tcts),再把满足条件的信道记入FCL表,放进RTS帧中。

② 收到A的RTS(FCL,NAVrts)帧时,B检查是否有信道满足:对Dj属于FCL,有CUL[i].ch=Dj且

CUL[i].reltime≤Tcurr+Tcts。成立。

第一,若有,通过本文的负载均衡算法计算每个匹配空闲信道上在发送DATA帧时刻的当前负载量,选择一个最低负载的信道(如Dj)放入CTS帧中,向A返回CTS(Dj,NAVcts),其中NAVcts=Ld/rate+Tack+2*Tprop。发送完后,向DCL[]表中增加一项,记录ACK帧的传输时段信息:

DCL[i].ch=Dj;

DCL[i].starttime=Tcurr+Tprop;

DCL[i].endtime=Tcurr+NAVcts+Tprop;

然后把数据信道收发机切换到Dj,准备接收DATA帧。

第二,若没有,返回CTS(Test)帧,其中Test是B节点有空闲信道的最小估计时间,Test=min{Vi,CUL[i].reltime-Tcurr-Tcts-Tprop}。

③ 当非目的节点C收到RTS(FCL,NAVrts),控制信道上执行退避,退避时间为:

NAVrts=Tcts+Tres+2*Tsifs+2*Tprop。

④ 收到B的CTS(Dj,NAVcts)后,节点A执行:

第一,向CUL表中增加一表项:

CUL[i].host=B,

CUL[i].ch=Dj,

CUL[i].reltime=Tcurr+NAVcts;

第二,向DCL表中增加一表项:

DCL[i].ch=Dj,

DCL[i].starttime=Tcurr;

DCL[i].endtime=Tcurr+NAVcts;

第三,把数据信道收发机切换到Dj上发送DATA帧;

第四,发送广播帧RES(Dj,NAVres),其中:

NAVres=NAVcts-Tsifs-Tres-Tprop,

若收到的是CTS(Test)帧,则A退避Test

时间重新发送RTS帧。

⑤ 非源节点C收到B返回的CTS(Dj,NAVcts)帧时:

第一,向CUL表中增加一表项:

CUL[i].host=B,

CUL[i].ch=Dj,

CUL[i].reltime=Tcurr+NAVcts;

第二,向DCL表中增加一表项:

DCL[i].ch=Dj,

DCL[i].starttime=Tcurr+NAVcts-

Tack-Tprop;

DCL[i].endtime=Tcurr+NAVcts;

若收到的是CTS(Test),不做任何处理。

⑥ 非目的节点收到来自A的广播帧RES(Dj,NAVres)时:

第一,向CUL表中增加一项:

CUL[i].host=B,

CUL[i].ch=Dj,

CUL[i].reltime=Tcurr+NAVres;

第二,向DCL表中增加一项:

DCL[i].ch=Dj,

DCL[i].starttime=Tcurr-Tres-Tprop,

DCL[i].endtime=Tcurr+NAVres-

Tack-Tprop;

⑦ 当B在数据信道上收到来自A的DATA帧,返回一个ACK帧,以示确认。

概括来说,本文的协议是在多信道DCA协议基础上加了一个记录数据信道负载的信息表,由它计算在某一时刻数据信道上的负载量大小。

3 仿真结果分析

在3×3 km的范围内放置50个节点,最大通信距离为300 m,仿真时间为400 s,分组长度Ld=1 024 bits,分组产生间隔时间符合指数随机分布函数规律,负载计算间隔Lt=1 s,Tdifs=50 μs。在相同条件下,数据信道数分别为8和16时,运行本文的MAC协议和原始DCA-MAC协议所产生的系统吞吐量如图2、图3所示。

由仿真结果可以看出,本文的MAC协议比原始DCA-MAC协议具有更高的吞吐量,特别当信道数目增加时,性能提高得稍明显。

4 结束语

多信道负载均衡可以提高信道的信噪比、减小误码率、有效地避免多信道MAC协议中数据信道上的分组冲突,符合公平地利用有限信道带宽的思想。本文提出的多信道MAC协议避免了传统方法的缺点,完全用“软方法”预测了数据信道的当前负载量,减少了系统代价,提高了系统性能。

摘要:在Ad hoc网络多信道MAC层协议中,信道的负载均衡问题会影响系统的性能,已有的负载均衡方法大多基于载波侦听技术,给每个数据信道配置一个物理载波侦听模块,这增加了设备复杂度和系统能耗。为此,提出了一种新的基于虚拟载波侦听的负载均衡方法,系统设置负载信息表记录每个数据信道的负载信息,使节点不需要侦听模块就可以获取数据信道上的负载量。仿真结果表明该方法提高了系统的性能。

关键词:Ad hoc,负载均衡,MAC,多信道,能量节省

参考文献

[1]WUS L,TSENG Y C,LIN C Y,et al.Anew Multi-Channel MAC Protocol with On-Demand Channel Assignment for Mobile Ad Hoc Networks[C]//Dallas:in Proc.of the International Symposiumon Parallel Architectures,Algorithms and Networks(I-SPAN),2000:232-237.

[2]TSENG YC,WUS I,LIN C Y,et al.A multi-Channel MAC Protoool with Power Control for Multi-Hop Mobile Ad Hoc Networks[J].The Computer Journal,2002,45(1):101-110.

[3]彭艺,周正中,查光明.一种基于负载均衡的动多信道自组网MAC协议[J].计算机科学,2005,2(10):44-46.

多信道网络通信设计 篇7

无线Mesh 网络(WMN,Wireless Mesh Network),又称无线网状网、无线网格网,随着无线宽带接入因特网业务需求的急速增长,由于其所具有的高速率、易组网、成本低、性能稳定等优势,已经引起人们的日益关注[1]。有一位美国经济学家声言:Mesh网络和智能天线、Adhoc网络以及超宽带技术一起,正在成为无线通信领域中压倒一切的技术,它们将很可能使所谓3G网络技术落伍,甚至可能会影响4G 的发展。这句评价毫无疑问将无线Mesh网络放在了一个很高的层次上。

作为一种全新、灵活的广域WLAN解决方案,无线Mesh网络能够在某一城市地区或大型园区的整个范围内,实现无线局域网的轻松扩展与延伸。将多个接入点通过无线方式连接在一起,无需进行布线,就可形成一个无线网络或"热区",从而在室内和室外提供非常宽广的无线覆盖——这就是无线Mesh网络的最大优势所在。此外,无线Mesh网络的接入点可以安装在街道灯柱、大楼侧墙或任何能够提供电源的位置上,这使它的安装部署具有极大的灵活性。而且由于采用了与Wi-Fi相同的IEEE 802.11b/g标准,所有原来设置用于Wi-Fi的笔记本电脑、PDA、手机等终端设备都不需要再安装新的硬件或软件,就可以接入无线网状网,这一点 也从终端方面为无线网状网的推广扫除了障碍。

与有线网络相比,无线网状网的安装不需要进行大量的布线或基础设施,其成本低得多,更重要的是能够大大节省租用专线的数量,从而节省专线(E1/E3)租费。而且一旦投入运行,Mesh网络具有强大的自修复和自适应能力,维护费用也非常低。

IEEE802.11标准是现有移动网络中应用最广泛的MAC层协议之一。无线Mesh网是融合了WLAN和移动Ad hoc网络的新型网络结构,因此,802.11 MAC协议也可以提供对无线Mesh网MAC层的支持。但无线Mesh网络具有多跳性、分布性、自组织性和移动性等特点,需要对现有MAC协议进行改进,才能使其更好地在无线Mesh网络中工作。目前无线Mesh网MAC层协议的研究主要集中在对单信道MAC协议和多信道MAC协议的研究上。

IEEE802.11的DCF(分布式协调功能)是无线Mesh网现阶段使用的MAC协议,它是一种单信道MAC协议,采用带冲突避免的载波侦听多址访问(CSMA/CA)。对于单信道方式,每个节点只有一个无线收发器,任一时刻它只能有一个业务流,如何安排业务流,从而避免业务冲突,提高网络资源利用率以及保证QoS,就成为单信道策略必须解决的问题。因此,在无线Mesh网中,单信道MAC协议除了解决隐藏暴露终端问题,还要考虑解决多种业务和多优先级业务公平接入问题,以及对于实时性要求较高的业务端到端QoS保障问题。

现有的WMN基本上都是采用单信道MAC协议。这种技术限制了整个网络的数据传输速率和网络容量,因为无线信道特点,当一个节点向另一个节点传输数据的时候,为了避免冲突,两个节点的所有邻节点都不能进行数据传送,这就极大地限制了整个网络的容量(如图 1所示)。尽管现有的802.11a/b/g与802.16协议在物理层上有很大的进步,如采取了一些有效的功率控制方法,但仍然不能从根本上满足今天人们对网络带宽日益增大的需求。802.11a/b/g标准标称的带宽为54Mbit/s, 但这只是在峰值速率,而在真正应用过程中,由于用户接入时会发生多用户冲突、丢包错误等,因此真正的可达带宽几乎只有标称值的一半。

另外,随着接收双方通信距离的增大,数据传输速率会显著下降。而在多跳WMN中,由于多跳的原因,数据在收发过程中面临节点冲突的可能性会增加;由于隐藏终端和暴露终端的问题,网络吞吐量也会大幅度下降。然而802.11a/b/g标准和802.11a标准分别提供了3个和12个没有交迭的信道,使相邻的节点能够同时使用多个信道,如果网络中的节点能同时使用多个信道(如图 2所示),就可以提高网络吞吐量。因此,可以用多信道的设计思想,采用多信道MAC机制,来设计WMN的多信道协议[2]。

2 无线Mesh网络多信道的研究现状

多信道MAC协议成果主要有以下几种:

(1) 多信道单收发器MAC协议

如果考虑成本和兼容性问题,单收发器用在单频上是最优选的硬件平台。因为提供单个收发器,任一时刻一个网络节点上只能有一个活跃的信道,但是不同的节点可以同时在不同的节点上运行,这样的话就能增加网络的系统容量。在单收发器节点构造的无线Mesh网络中,每个节点要承担两种业务,及自身信号覆盖内的接入业务和其他节点的转发业务。如果使用单一信道,那么相邻节点间的业务会因为使用相同频率的信道而产生干扰,从而降低了系统的容量。因此如何利用多个信道协调Mesh节点之间的通信,是多信道收发器的MAC协议的关键所在。并且节点通信时需要来回切换信道,信道切换必然会带来时延,从而会使系统性能降低。

多信道单收发器的MAC协议主要有SSCH协议和MMAC协议。

SSCH协议主要是将一组无线信道分配给网络节点,并假设这些信道是正交的,每个设备只具备一个收发器,收发器在不同的信道之间来回切换,任一时刻只能在一条信道上收发数据包,但是在一个通信区域内可以同时有多个节点进行通信。这在网络负荷比较大时比单信道协议有更高的网络吞吐率。在该协议中,每个设备只需要配置一块网卡及维护一个调度信息表,不需要改变802.11已有的信道就可以避免同道干扰,并且在正交信道上同时传输多个数据流而不产生干扰,增加了系统的容量。

MMAC是没有专用控制信道,1个射频,每个节点都配置一个半双工收发器,并且每个节点需要保持同步,每个节点的所有信道上都定义了一种数据结构PCL(可选信道表),表中的数据记录了这个节点可以使用的最优信道。在此基础上把信道分为三类状态:

高优先(HIGH):这个信道在当前的信标内正在被节点使用。如果信道在这个状态,那么节点下一次传输的时候,优先选取这个信道作为数据信道。因为这样,发送端就不用调节射频到新的频率,延迟就会减小。

中优先(MID):这种信道在节点传输范围内还没有被使用。如果没有前一种状态的信道,这种状态的信道就是最好的。

低优先(LOW):这种信道已被至少一个邻节点选取。

在节点初始化的时候,PCL表中所有的信道都置为MID状态;如果在源端和目的端协商了一个信道,在双方的PCL表中将相应的信道记录为HIGH状态。通过动态改变信道的状态,可以实现信道的选择。由于没有专用控制信道,每个节点在每个信标周期的开始,都在公共信道上监听,通过发送或者接收控制信息,实现控制信道的信息传输。该协议将时间划分为多个同步信标区,每区包含1个ATIM(信道协商窗口)和一个数据发送区。在ATIM中预定信道,在数据发送区发送数据,这样节点之间就可以相互选择信道,避免发生数据碰撞。另外,ATIM协议在选取信道上采用源到目的节点对数目最少的信道以及临时同步,来避免多信道的隐藏终端问题[5]。

如图 3所示,假设节点A向节点B发送分组,节点A首先在ATIM窗口中发送一个ATIM分组,该分组中包含节点A的PCL,当节点B收到节点A的ATIM要求后,基于自身的PCL以及节点A的PCL,选择一个可用的信道(如信道1),并将该信息通过ATIM-ACK返回节点A。当节点A收到ATIM-ACK后,它会查看是否可选择B指定的信道,如果可以选择,节点A就会发送ATIM-RES给信道B,该分组包含节点A已选择制定的信息;如果节点A不能选择指定信道,则不会向节点B发送ATIM-RES分组信息。

当节点B向节点A发送ATIM-ACK(选择信道1)分组时,节点C监听到该ATIM_ACK,就把自己的PCL中信道1置为LOW状态。当节点D向C发送ATIM分组时,C选择信道2。在ATIM窗口过后,A和B,C和D的通信就同时可以在各自选择的信道上进行通信。

MMAC协议在一定程度上解决了多信道MAC协议的一些问题,提高了网络吞吐量,一定程度上解决了隐藏终端问题,但是却存在暴露终端问题等其他问题。

(2) 多信道多收发器MAC协议

多信道多收发器MAC协议中,一个射频包含多个平行的射频头和基带处理模块,用于支持多个同步信道,但在物理层之上,只有一个MAC层来协调多信道的功能,如何在这种物理平台上设计一个高效的MAC协议,是研究的关键问题。目前的研究还不尽成熟。

(3) 多射频MAC协议

多信道MAC协议中,每个网络节点配置多个网卡,每个网卡都带有独立的MAC层和物理层,可使用不同的频段,如802.11a,802.11g,802.11b,节点在这些频段上的通信是完全独立的,可以同时进行。实际上,一个频段可以同时容纳多个信道,但为了简化设计和应用,每个频段上都只使用了一个信道。其典型的代表有动态信道分配协议(DCA:Dynamic Channel Assignment),基于主信道分配的多信道MAC协议(PCAM:Primary Channel Assignment based MAC)。

动态信道分配多信道MAC协议(DCA)是有专用控制信道、两个RF的多信道MAC协议。在DCA多信道MAC协议中,假设有1个控制信道,N个数据信道,每个信道具有相同的带宽。控制信道用来解决信道的冲突和为每个终端分配信道的问题,数据信道用来传输数据。每个终端有两个半双工的收发器,即控制收发器和数据收发器。控制收发器在控制信道和其它终端交换控制信息,得到接入数据信道的权利;数据收发器动态地切换到一个数据信道来传输数据[3]。

PCAM多信道MAC协议是有专用控制信道、3个射频的多信道MAC协议。在PCAM协议中,每个节点配置3个半双工收发器。其中主收发器和第二收发器主要来传输数据,第三收发器用来传输和接收广播信息。在特殊情况下,第三收发器也用来传输数据。第二个收发器主要用来发送数据,它的信道分配是不固定的。

这种协议能够避免隐藏终端的发生,减少网络时延,为信道性能最差的情况和最低要求进行保守设计。但是每个节点的网络接口比较多,成本高,信道利用率低。

3 现有的多信道MAC协议性能比较

单收发器多信道MAC协议MMAC使用ATIM窗口、SSCH通过信道单跳变表协调多信道的使用,带来较大的网络性能提升。如果用积累吞吐量和平均分组延迟来衡量,与DCF相比,MMAC和SSCH的性能提高超过了70%。但是这两个协议需要经常切换信道,带来时间延迟,而且他们要求网络整体同步,这在Mesh网中很难实现。

多收发器多信道MAC协议是具有多个平行射频芯片(multiple parallel RF front-end chips)和基带处理模块(baseband processing modules)的无线电装置能够同时支持多个信道。在物理层的上层,只有MAC层来调整多信道传输的功能。然而怎样设计一个MAC协议来对这种物理平台实现高效,仍旧是一个具有挑战性的研究课题。

多射频MAC协议DCA、PCAM使用多个网卡支持多个射频信道,不需要频繁切换信道,也不要求网络整体同步。而且性能优于MMAC,因此与DCF相比,获得了更大的性能提升。但是多射频MAC协议的节点需要配置多个网卡,成本高;DCA、PCAM协议中有专用控制信道,控制信道饱和会成为带宽利用率的瓶颈[4]。

4 多信道无线Mesh网络MAC协议设计面临的问题

多信道的MAC协议与单信道的MAC协议相比,设计上更加复杂。由于WMN的多跳性,缺乏集中式控制、网络拓扑时变等特点,使多信道MAC协议的设计面临诸多问题,主要有以下问题。

(1) 多信道的隐藏终端问题

在802.11标准中,物理层上可以支持多个信道,但在MAC层上只有一个信道,在多个信道的环境下存在隐藏终端问题,单信道的方案并不适用。当两个相反的站点利用一个中心接入点进行连接时,这两个站点都能够"听"到中心接入点的存在,而相互之间则可能由于障碍或者距离原因无法感知到对方的存在,从而出现隐藏终端问题。

(2) 接收端忙问题

在设计多信道MAC协议时的另一个需要考虑的问题是当一个发送者将它的信道切换到接收者的信道时,这时接收者是否还停留在原来的信道。如果此时接收者正好切换到别的信道,而发送者还是用以前的信道的切换,则接收者不能侦听到广播信号或者RTS,从而导致了接收端忙的问题。

(3) 广播消息问题

无线Mesh网络大多数是依靠广播信号来实现网络的操作,包括路由发现、地址解析等信息的传送。由于终端的移动性、网络拥塞以及无线信道的不可预知性,一个节点可能失去它的连通性,因此必须频繁更新路由信息。在设计多信道MAC协议的过程中,我们必须考虑必要的广播信息,从而保证这些信息准确及时的传送。对于一个节点来说,如果使用切换的方式,有可能丢失一些广播信息。因此,在设计的过程中,如何有效地保证广播信息的接收也是一个重要的问题[2]。

5 多信道MAC协议设计的研究展望

WMN多信道MAC协议是WMN的关键技术之一。现有的多信道MAC协议的设计还只是简单的考虑了MAC层。如何综合考虑其他因素,跨层设计出高效的多信道MAC协议,是未来多信道MAC协议研究的焦点。在设计多信道MAC协议的同时,考虑对路由协议的支持,也是MAC协议设计的一个重点。因此,在设计MAC协议的同时,要综合考虑各个方面的因素。

此外,多信道MAC协议还要考虑与其他技术的结合,如功率控制等。这样,就能更好的更有效的利用网络资源,使资源更合理的配置。随着网络技术的发展,应用需求的提高,如何为不同用户提供不同的QoS保障,更有效的支持流媒体传输,也是技术研究的重点。现在多收发器制定的多信道MAC协议还没有被完全的研究,可能是由于这样的装置的高成本性。然而,随着成本的降低,多信道多收发装置的MAC可能会是一个理想的mesh网络的解决方案。为了真正的获得频谱功效,多信道MAC协议也许能从根本上解决这一问题[5]。

现在大多数的在MAC层的研究成果都是关注于性能、吞吐量和清晰透明性的。然而,Mesh网络中的许多的应用需要支持宽带的多媒体通信,因此,开发一个具有多服务质量,例如,延迟,丢包率等的MAC协议仍旧是一个很重要的课题。

参考文献

[1]朱德权.走进无线Mesh网络[M].中国电子杂志出版社.

[2]方旭明等.下一代无线因特网技术:无线Mesh网络[M].人民邮电出版社,2006.

[3]Nakjung Choi;Yongho Seok;Yanghee Choi.Multi-channel MAC protocol for mobile ad hoc networks[J].2003 IEEE 58th Volume 2,6-9 Oct.2003 Page(s):1379-1382 Vol.2.

[4]Jeonghoon Mo;So,H.-S.W.;Walrand,J..Compari-son of Multichannel MAC Protocols[J].IEEE Transac-tion on Volume 7,Issue 1,Jan.2008 Page(s):50-65.

上一篇:开放法下一篇:聚类准则研究