车载无线自组织网络的介质访问控制协议研究
2, we propose an adaptive frame-length TDMA MAC protocol, “A-ADHOC protocol”. In this protocol, node can change its frame length due to the node density, to solve the scalability problem of traditional fixed frame-length MAC protocol. NS2 simulation result shows that this protocol can well enhance the scalability in high-dynamic vehicle network environment as well as the real-time performance, and the average frame-length per node can be reduced by 50% over previous works.
Keyword: VANET, MAC protocol, Mobility Model, Real-time, Scalability
3.1.3 更长的链路建立延迟vs更长的通信延迟... 21
3.2.2 VANET节点移动性分析:对向移动的特点... 25
4.1.1 RR-ALOHA信道访问机制与ADHOC MAC协议简介... 37
第1章 引言
1.1 研究背景
自从德国工程师Karl Benz在1885年研制出第一辆现代汽车以来,汽车已经走过了一百多年的历史,在人类文明发展史上留下了不可磨灭的足迹。时至今日,在全世界的交通道路上,大约有8亿辆汽车在行驶,平均每8人就有一辆汽车,每年燃烧约10万亿升的汽油和柴油,汽车工业的发展对当今世界经济的方方面面都有着重要影响[1]。
我国在改革开放以来,社会经济快速发展,汽车工业也成为了国民经济的重要支柱产业之一,2008年全国汽车产量达934.51万辆,销量达938.05万辆,其中自主品牌占1/4以上,我国已经成为世界上规模最大的汽车市场之一,汽车在国民生活和经济生产中的重要作用日益显著。与此同时,汽车大量普及所带来的问题也日益突出,例如交通事故频繁、城市道路拥堵、环境污染加剧等,如何有效解决这些问题值得进一步研究。
1.1.1 交通领域信息化发展
在交通领域自二十世纪八十年代以来就有一个主要的发展方向,即智能交通系统(Intelligent Transport Systems, ITS),美国、日本、欧洲等发达国家和地区为之发起了许多研究项目和工程应用。智能交通系统(ITS)是为了全面有效地解决前述的交通问题而提出的,是随着现代高科技的发展以及交通需求的提高,在实际交通工程应用中不断发展的。它的基本思想是运用先进的科技成果和手段,使交通运输网络更加安全、高效、环保、舒适,建立与现代社会文明相协调的交通体系。
信息技术是二十世纪最重要的科技进步之一,智能交通系统也迅速应用了最新的信息技术以实现跨越式发展。首先,汽车本身在快速信息电子化,短短半个世纪内,汽车上的电子设备数量和复杂程度都达到了前所未有的水平,各种电气控制部件、电子部件、数据总线、专用传感器、处理器芯片等等都装备到了汽车上,在2000年,汽车上的平均CPU数量达到了35个,在一辆汽车的成本中信息电子系统已占据了15-20%左右[42]。汽车的高度信息电子化已成为汽车发展的必然趋势。其次,道路交通系统也在不断信息化,目前主要有电子收费(Electronic Toll Collection, ETC)系统和停车场辅助系统等应用,不过随着汽车本身信息化程度的不断提高,道路交通支撑信息系统也将随之快速发展,围绕着让交通系统更加安全、便捷、高效的共同目标,两者的发展是相辅相成的。
1.1.2 无线数字通信技术发展
许多成熟的信息电子技术,如处理器技术、数据总线技术、传感器技术、数据库技术等已经被不同程度地应用到交通系统之中,从而大幅提升了交通系统的效率。无线数字通信技术作为信息技术中发展较晚的技术,在20世纪90年代取得了飞速的进步和广泛的普及。无线数字通信技术的目标是为了能够随时随地与任何人和设备的高速可靠互联互通,以第二代蜂窝电话为代表的移动通信技术革命证明了无线数字通信技术的成功。当前,无线数字通信技术发展仍然迅速,各种应用纷繁复杂层出不穷,特别是允许设备互联的蓝牙(IEEE 802.15)、WiFi (IEEE 802.11a/b/g)、WiMax(IEEE 802.16)等技术,在学术界和工业界都得到了很大的投入。在可预见的将来,无线数字通信技术一定也会在交通领域得到广泛应用,特别是交通安全和运输效率方面,通过无线数字通信技术将一定范围之内的汽车组织成一个网络,快速交换必要的行驶信息和交通信息,从而让行车电脑系统或者驾驶者能够做出合理正确的判断,是一个不但可行而且很有前景的发展方向。
在无线数字通信技术的发展历程中,无线局域网的普及值得注意,它将传统的点对点无线通信扩展到由多个节点组成无线通信网络,提出了许多新的应用场景和研究范围,意义十分重大。二十世纪90年代初,曾经有两个无线局域网的标准,即欧洲电信标准协会(European Telecommunications Standards Institute, ETSI)制定的HIPERLAN无线局域网标准,以及美国电气与电子工程师协会(Institute of Electrical and Electronic Engineers, IEEE)制定的IEEE 802.11无线局域网标准。不过HIPERLAN无线局域网标准不仅没有取得像同是欧洲提出的ETSI GSM第二代全球移动通信标准那样的成功,甚至在目前的市场上已经基本销声匿迹,美国提出的IEEE 802.11标准主导了全球的局域网市场。因此,下面仅对IEEE 802.11标准及其所在的IEEE 802无线协议簇进行简单的介绍,本文在之后的章节中将对IEEE 802无线协议簇中针对汽车通信的标准进行讨论,分析其中尚未解决的一些问题,并给出改进建议。
IEEE 802协议簇是IEEE标准中关于局域网(Local Area Networks, LAN)和城域网(Metropolitan Area Networks, MAN)的一系列标准,特别指可以传输变长数据包的包交换无线网络。图1是根据OSI七层参考模型描述的无线局域网协议栈,IEEE 802协议簇主要分布在数据链路层及物理层。所有的IEEE 802协议簇共用同一个逻辑链路控制协议(Logical Link Control Layer, LLC),即IEEE 802.2标准。在逻辑链路层之上的网络层协议一般采用Internet的路由协议,如AODV或DSR等协议;而在逻辑链路层之下的介质访问控制层(Medium Access Control Layer, MAC)和物理层(Physical Layer, PHY)通常被合并为一个802协议,而在传统有线网络中,介质访问控制层一般是与逻辑链路层组成数据链路层(Data Link Layer),这是因为在无线网络中介质访问控制层与物理层的耦合程度比在传统有线网络中两者的耦合程度更高,这也是无线局域网在协议划分方面需要注意的一个特点。
图1 无线局域网协议栈[2]
图2进一步描述了在802协议簇中LLC层、MAC层与PHY的组合结构及所采用的机制,其中802.2协议是共同的逻辑链路层协议。
为了能够更全面地了解以IEEE 802协议簇为代表的无线局域网技术的发展状况,在表1中列举了IEEE 802协议簇中的所有标准及其制定任务组(Task Group)的当前状态,其中包括被广泛采用的802.11系列协议、被弃用的802.13/14协议等。不过这个列表尚未包括正在制定之中的针对交通领域无线通信应用的802.11p协议标准,在第3、4章将对此协议进行详细介绍。
表1 IEEE 802协议簇
名称 |
描述 |
状态 |
IEEE 802.1 |
Bridging (networking) and Network Management |
|
IEEE 802.2 |
Logical link control |
inactive |
IEEE 802.3 |
Ethernet |
|
IEEE 802.4 |
Token bus |
disbanded |
IEEE 802.5 |
Defines the MAC layer for a Token Ring |
inactive |
IEEE 802.6 |
Metropolitan Area Networks |
disbanded |
IEEE 802.7 |
Broadband LAN using Coaxial Cable |
disbanded |
IEEE 802.8 |
Fiber Optic TAG |
disbanded |
IEEE 802.9 |
Integrated Services LAN |
disbanded |
IEEE 802.10 |
Interoperable LAN Security |
disbanded |
IEEE 802.11 a/b/g/n |
Wireless LAN & Mesh (Wi-Fi certification) |
|
IEEE 802.12 |
demand priority |
disbanded |
IEEE 802.13 |
Not used |
|
IEEE 802.14 |
Cable modems |
disbanded |
IEEE 802.15 |
Wireless PAN |
|
IEEE 802.15.1 |
Bluetooth certification |
|
IEEE 802.15.4 |
ZigBee certification |
|
IEEE 802.16 |
Broadband Wireless Access (WiMAX certification) |
|
IEEE 802.16e |
(Mobile) Broadband Wireless Access |
|
IEEE 802.16.1 |
Local Multipoint Distribution Service |
|
IEEE 802.17 |
Resilient packet ring |
|
IEEE 802.18 |
Radio Regulatory TAG |
|
IEEE 802.19 |
Coexistence TAG |
|
IEEE 802.20 |
Mobile Broadband Wireless Access |
|
IEEE 802.21 |
Media Independent Handoff |
|
IEEE 802.22 |
Wireless Regional Area Network |
|
IEEE 802.23 |
Broadband ISDN system |
experimentalh |
图2 802协议簇组成结构[2]
1.1.3 车载无线网络技术介绍
一方面是无线通信网络技术的快速发展,另一方面是交通领域信息化的迫切需求,必然会催生无线通信网络技术在交通领域内的应用,这就是近年来学术界和产业界研究的一个交叉学科热点课题:车载无线网络技术(Vehicular Wireless Network Technology),目标是作为未来智能交通系统的基础部分,通过车与车、车与路边节点的相互通信来构成统一的无线通信网络,用于传递辅助驾驶或避免事故的实时信息,或提供娱乐信息、Internet接入等数据服务。
在广义上,只要应用了无线通信网络技术的都可以称之为车载无线网络技术。在通信对象和通信范围上,车载无线网络技术可分为车内各部件之间的无线通信(Intra-Vehicle Communication)、车与道路设施的无线通信(Road to Vehicle Communication, RVC)、车与车之间的无线通信(Inter-Vehicle Communication, IVC);而在通信方式和网络结构上,又可以分为由基站对所有汽车进行集中式控制的一跳式无线通信技术,和汽车之间构成自组织网络(Ad Hoc)的无线通信技术。由基站进行集中式网络控制无疑是比较简单的方案,可以直接借助于成熟的2G/3G移动通信网络技术,但是这种方案存在两个难点:1,无法提供行车安全应用的实时支持,实际上,通过基站在车辆之间转发信息存在较大的时延和较低的可靠性;2,基站的信道资源十分有限并且相对昂贵,向所有行驶车辆提供在线通信支持是不现实且不经济的。因此,车载无线网络的网络结构必然是自组织的,至多可能会在某个特定情况下结合现有的集中式移动通信网络来支持特定的业务。
在狭义上,当前车载无线网络技术的研究焦点聚集在基于车载自组织网络的车—车与车—路的通讯技术,即车载无线自组织网络(Vehicular Ad Hoc Network, VANET)。确切的说,VANET是指在交通道路上车辆之间、车辆与固定接入点之间相互通信组成的开放移动Ad hoc网络,其目标是为了在道路上构建一个自组织的、部署方便、费用低廉、结构开放的车辆间通信网络,以实现事故预警、辅助驾驶、道路交通信息查询、车间通信和Internet接入服务等应用[3]。许多人将VANET视为无线自组织网络(Ad Hoc Network)的一种特殊的实际应用,不过,由于VANET本身所具有的网络特点,例如拓扑高动态、时延要求严格、节点移动速度高、轨迹可预测、能量无限、定位准确等,还有其应用前景明朗且广阔,研究范围横跨智能交通系统领域、计算机网络领域以及无线通信领域三大传统研究领域,使得对VANET的研究吸引了许多学术界和工业界的注意。
早在1992年,美国材料试验协会(ASTM)就已经开始制定专用近程车间通信技术(Dedicated Short Range Communication,DSRC)标准,以用于高速公路电子收费系统。当时确定的DSRC标准采用915MHz频段,基于TDMA的信道多路访问方式。随着交通领域信息化的不断发展,915MHz频段宽度仅能支持0.5Mbps的传输速率,且传输距离仅有30米,无法满足新提出的各种车载无线网络应用的要求。于是在1999年底,美国联邦通信委员会(FCC)分配了5.9Ghz附近的无线频段作为VANET网络专用通信频段,最高可支持27Mbps的传输速率,最远可支持1000米的传输距离。2002年底,美国材料试验协会制定了基于5.9GHz频段的DSRC新标准ASTM E2213-02,并且采用了IEEE 802.11a作为底层传输技术。次年,美国联邦通信委员会将此标准的下一版本E2213-03规定为北美的DSRC标准。而后,美国材料试验协会将DSRC标准的制定工作转到IEEE下面进行,即现在正在制定中的IEEE 802.11p标准。这是目前唯一正在制定之中的VANET通信协议标准,其中包含MAC层和PHY层协议。与此同时,VANET上层协议的制定也在同步进行,即IEEE 1609协议簇,其中包含了1609.0(体系结构描述)、1609.1(资源管理)、1609.2(安全服务)、1609.3(网络服务及通信服务)、1609.4(服务信道管理)等,与802.11p构成完整的VANET协议栈。
除了美国之外,欧洲和日本也分别制定了自己的VANET发展计划以及研究项目,包括欧洲的“SafeSpot”[4]、“FleetNet”[5]、“Network on Wheels”[6]、“CIVIC”、“PReVENT”[16]、“CarTALK 2000”[7]等(并且成立了车载通信联盟(Car2Car Communication Consortium)[8]),以及日本汽车行驶电子技术协会(JSK)领导的“Association of Electronic Technology for Automobile Traffic and Driving”[9]和“Group Cooperative Driving”[10]以及“InternetITS”[17]等VANET相关的工程和研究项目[3]。
在学术研究领域,在二十世纪八十年代初,日本汽车行驶电子技术协会(JSK)最早发起了车间通信(IVC)的研究。随后,在美国的“California PATH”项目[11]和欧洲的“Chauffeur”[12]项目实现和展示了当时关于汽车列队行驶自动控制的研究成果,证明了应用无线通信技术在交通安全和效率方面可以取得较大程度的提高。日本在90年代末进行的协作驾驶系统(Coorperative Driving)项目(如 “DEMO 2000”[13])展现了车间通信技术的另一种应用,即通过无线通信技术交换各自的行车和道路信息,在互相协作以实现安全高效的自动驾驶,这在功能上类似于基于雷达扫描和自动控制技术的自适应自动巡航系统(Adaptive Cruise Control, ACC),可以互为补充。在欧洲新发起的CarTALK 2000[7]研究项目中所提出的协作行车辅助系统(Coorperative Driver Assistance Systems)试图涵盖所有安全和舒适驾驶应用所面临的问题,建立一个包括车—车(IVC)和车—路(RVC)的完整交通无线网络体系,并与传统网络如Internet和移动通信网络互联互通融为一体。2004年~2009年间,MobiCom专门召开了5次专题研讨会讨论VANET,计算机网络与通信领域的许多会议也增加了VANET相关的专题,促进了对VANET的进一步深入研究和产业应用的快速前进。
目前的研究成果表明,VANET具有许多其他移动自组织网络所不具备的特点和问题。首先,VANET是传统的移动自组织网络(Mobile Ad Hoc Network, MANET)在交通道路上的应用,构成网络的节点是在道路上行驶的汽车,具有高速移动而轨迹规则的特点,并且对于VANET提供的网络服务时延、可靠性以及可扩展性的要求十分严格,而且需要VANET网络能够同时支持各种差异较大的服务,如大数据量的实时导航、车载娱乐等系统,以及高实时性的行车辅助、紧急避险等系统。当然,VANET也具有移动自组织网络本身的各种特点,如自组织性、无固定结构、网络拓扑动态变化、网络容量有限等,但在一些特殊苛刻的应用环境下,如狭窄的道路、高密度节点分布、节点高速移动等,直接影响VANET网络的信息传输能力,处理不好将会导致丢包增加、延迟增大[3]。实验表明[14],在VANET中使用传统的传输层协议(如TCP和UDP)和路由协议(如AODV,DSR,OLSR等),数据包的成功传输率不会超过50%,延迟大且延迟抖动剧烈。基于802.11p协议的一项研究实验表明,VANET节点的周期性广播数据包,在最坏情况下节点丢包率达到80%以上[15]。可以看出,VANET领域有着广阔的研究空间和应用前景,在我国自主汽车产业处于初步阶段正在快速成长的时期,我国的研究机构和院校率先开展针对VANET基础技术的深入研究具有重大意义。在政策层面,这不仅仅是交通部一个部门的任务,而需要各个切实相关的部门联合起来,在战略层面上制定合理的发展计划,以推动和保证我国自主汽车产业在未来的VANET标准制定和技术应用中能够占据有利的地位。
1.2 研究内容
本文主要研究了车载无线自组网的MAC协议,从VANET交通安全方面的应用出发,分析了对车载无线自组网MAC协议提出的实时性和可扩展性两个重要需求,并详细考察了当前IEEE正在制定的802.11p标准的MAC层协议,指出其中采用CSMA信道访问机制所存在的问题,即无法保证实时性。本文认为采用动态分配的TDMA信道访问机制可以提供这种实时性,并在前人工作的基础上(如RR-ALOHA信道访问预约机制[22]和ADHOC协议[23])结合车载无线自组网存在的节点对向移动特性进行了改进,进一步提高了车载自组网的MAC协议实时性。Matlab数值分析结果显示,在VANET中的节点对向移动特性十分显著,采取适当的策略可以得到较高的实时性能提升。NS2仿真实验的结果也验证了这个推断,最多可以减少80%的节点时隙冲突次数。本文还分析了动态TDMA信道访问机制存在的可扩展性问题,并提出一种自适应帧长度MAC协议,即A-ADHOC协议,来解决可扩展性问题。通过Matlab数值分析显示,这个协议在提高MAC协议可扩展性的同时取得了较好的实时性能。
1.2.1 研究目的
本文的研究目的在于探讨如何能够实现一种全面满足未来车载自组织网络各种应用要求的MAC协议。众所周知,VANET的重要应用有两部分,首先是改善交通安全的应用,这需要网络能够快速及时地在节点之间传递信息,其次是提高交通效率和舒适性的应用,这需要网络能够支持在节点之间进行大数据量的传输。对于这样二元化的网络需求,最大的挑战就在于MAC协议,如何构建有效支持两种应用的统一的MAC协议,如何合理分配和利用无线信道资源,如何在分布式环境下进行网络构建和管理等,都是十分值得研究的课题。
1.2.2 主要贡献
本文对适用于VANET的分布式实时性MAC协议进行了较为深入的研究工作,并取得了一定的成果,特别是改善了分布式实时MAC协议在高动态车载网络环境下的可扩展性,并且提高了普遍情况下分布式实时MAC协议的实时性。在研究工作中,重点分析了VANET网络节点所具有的对向移动特点,在一定程度上降低了节点的高移动性给网络带来的不稳定性,进而将其转化为一个可以利用的特点。此外,本文还提出了一种基于可靠的自适应帧长度机制的分布式实时MAC协议,改善了原有协议的可扩展性和工作效率。文中给出的许多Matlab数值分析结果与NS2模拟结果对于当前VANET网络MAC协议的研究具有较为重要的意义。
1.2.3 本文结构
本文的结构安排如下:
第一章介绍了研究目的、研究背景、研究内容以及本文的主要贡献,着重介绍了交通领域信息化和无线通信技术的发展状况,最后列举了近些年的相关研究工作和工程项目。
第二章介绍了车载自组网的体系结构和车载自组网的MAC协议研究工作。
第三章指出了正在制定中的802.11p协议的不足,随后深入分析了车载自组网节点的对向移动特性,并基于此特性提出基于方向的时隙调度策略,改进了分布式实时MAC的实时性。
第四章首先介绍了RR-ALOHA信道访问机制,分析了所存在的可扩展性问题,然后提出了基于自适应帧长度的A-ADHOC协议,较好的解决了可扩展性问题。
第五章给出了本文的总结和展望。
1.3 本章小结
本章介绍了本文的研究目的、研究背景、研究内容、本文的主要贡献以及本文结构,着重介绍了无线通信技术的发展状况及其在交通领域信息化过程中的重要作用,最后简要介绍了VANET研究的发展历史,并列举了近些年的相关研究工作和工程项目,总结了对我国当前VANET研究和智能交通系统发展的指导意义。
第2章 车载无线自组织网络概述
2.1 VANET网络体系结构概述
近年来,VANET的研究已成为横跨智能交通系统领域、计算机网络领域以及无线通信领域的一个交叉学科研究热点。本节调研了网络体系结构设计领域的各种设计思想,介绍了VANET网络体系结构的集模块化、层次化及跨层设计于一体的特点。
2.1.1 体系结构设计思想
网络协议体系结构中广泛采用了层次化设计思想,其中最为著名的就是Internet协议栈[28]及OSI七层参考模型[29],它们证明了将网络的管理、控制和服务功能分散到各个协议层次中去,各层之间保持一定的耦合度,能够在降低系统复杂度的同时达到极高的效率。因此,VANET也被认为应该采用层次化设计,体系结构应该是自上而下包括应用层、传输层、网络层、逻辑链路层、MAC层和物理层,相邻层次之间保持信息交互和适度耦合。
然而,这种严格的层次化设计思想并非正确到没有任何争议。文献[30]认为现在越来越多的跨层设计和中间件就是对层次化结构缺陷的体现,而且只是些效率低下的补救措施,例如系统防火墙就需要横跨多个协议层次,再例如在路由层就可以监测到网络拥塞情况,但却因为Internet网络的拥塞功能设置在传输层而不得不进行跨层设计。文献[31]质疑了在无线传感器网络(Wireless Sensor Network,WSN)中采用类似Internet协议栈的网络体系结构的可行性和必要性,并提出了专门针对WSN网络的耦合程度和能量效率更高的协议体系结构。文献[32]则提出了动态协议栈的概念,指出应用程序可以对协议栈进行裁剪重构,以取得最高的效率。可以认为,与其在VANET网络体系结构确定之后再进行跨层设计,不如在确定之前就根据应用和功能对协议设计进行一些修改,因此,对VANET网络体系结构仍然需要进行研究,而不仅仅是完全套用比较完善的层次化设计。
由于VANET网络的网络体系结构仍在发展中,本章后续章节将列举各种不同的提法并进行分析比较,并试图给出一个更为合理的针对VANET网络的体系结构设计。
2.1.2 两种思想:层次化设计与一体化设计
本节描述一个类似于Internet网络结构的标准层次化VANET网络体系结构,众所周知,Internet网络体系结构采用层次化设计,其特点是层次明晰、扩展方便、功能分解、实现简单。首先,需要按照传统网络的划分标准,逐步分解VANET的网络功能,并将分解出来的小功能添加到各层协议之中,每层协议仅需要处理属于自己这一层的较小的任务,各相邻层之间通过协商好的接口进行交互,原则上不允许进行跨层间通信,如图3所示[27]。如上节所述,这种层次化结构在自组织网络中并没有太大的优势,首先,许多VANET中的特殊应用如网络稳定性(Stability)管理和网络控制管理,很难被归入某一层的功能之中。其次,如图3所示,每个协议都设置了对外部信息的访问接口,这是复杂且不可靠的,相对而言设置一个通用访问接口的方法更加合理,但在VANET分层结构中每个层次都有可能需要访问外部信息,在这种严格层次化结构下,信息必须自上而下或自下而上地依次传递,会导致许多不必要的层间信息传递,降低网络整体的工作效率和增大系统的响应时间。
图3 层次化设计[27]
再如图4所示,是作为一个专门为VANET量身设计的网络结构示意图,其中的各个功能模块能够相互密切配合、任意交流信息,围绕着提供某种高效应用服务的目标,其特点是耦合紧密、交互便捷、灵活高效、实现复杂,这种结构在某些情况下比较适合于VANET网络。举例来说,当VANET主动安全应用需要在不可靠的无线信道基础上搭建高可靠性系统,并用于传输实时数据时,就会导致网络体系结构中的各功能部分耦合程度大大提升,而这种一体化模块结构对于实时性的主动安全应用能够达到十分高的工作效率,所有模块都平等地建构在物理层之上,可直接获得传感器或无线接收器等物理层数据并进行快速响应,每个模块都可以专门针对某一种应用进行定制,从而达到较高的工作效率。显而易见的是,随着应用种类的增多,这种网络结构的设计复杂度也会随之迅速上升,导致最终难以对系统功能进行扩展或缩减,牵一发而动全身,还可能导致控制循环(Control Loop)的出现,像哲学家用筷子就餐问题一样陷入循环依赖,而在层次化设计中这是很容易避免的问题。
图4 一体化设计[27]
2.1.3 合理的VANET网络体系结构
前述展示的两种设计思想都有其优点,同时也有其缺点。VANET网络体系结构应该结合两种思想,在协议栈设计阶段就充分考虑各种VANET应用程序的不同需求,以避免在协议栈完成之后,需要添加一些新应用导致对协议栈进行过多的跨层设计,降低整个网络的运行效率和设计简洁性。如图5所示,既考虑了采用层次化设计带来的模块化结构,也考虑了在层次化结构基础之上提供一定的功能灵活性。相对于严格层次化的模型,在图5的模型中,应用层程序不仅能够访问相邻的协议层,也能直接访问与之不相邻的协议层,因而可以提供差异化服务。在VANET中,各种实际应用对网络的要求差别较大,例如交通安全应用需要极高的实时性,对网络吞吐率要求不高,且很多情况下都是广播数据,在设计中就可以让这类应用能够直接访问较底层的协议层,最快地获取实时数据并作出响应;而实时导航应用需要很多的数据传输,对实时性要求不高,则可以处于较高的协议层次,自上而下地依次传递数据,并在各个层次上对数据进行一些较为复杂的处理,如路由分析、多跳传输、数据融合、组播分发等。实际上,当前IEEE正在制定的VANET网络体系结构正是采用了这样的设计思想,但由于协议仍然在制定之中而并未定稿,所以此节中仅介绍一个相对合理的VANET体系结构设计思想。
、
图5 合理的VANET网络体系结构[27]
2.2 VANET网络MAC协议研究概述
在车载无线自组织网络(VANET)中,如何让所有节点能够公平、高效、可靠地共享无线信道是极其重要的,因此MAC协议的设计与实现是VANET研究的关键。由于VANET网络具有节点高速运动、移动轨迹规则、能量供应充足、支持GPS/北斗定位、时间精确同步、网络拓扑快速变化、节点密度不均、信道质量波动较大、上层业务种类繁多、主动安全应用实时性要求高、数据型应用数据量大等特点,与传统MANET所定义的网络生存环境相差甚远,因此MANET中的绝大多数MAC协议都不能够满足VANET的需求。本节总结了多年来的相关研究工作,并分析了适用于VANET网络的MAC协议。
2.2.1 基础的无线信道访问机制
本小节首先简要介绍几种较为典型的无线信道访问机制:
(1) ALOHA[18]:这是最先提出的基于无线技术的包交换网络协议。节点有数据包就发送,同时监听信道是否冲突,若冲突,则等待一段随机时间后重新发送。Slotted-ALOHA(S-ALOHA)将信道划分为等长的时隙(Slot),降低了冲突率,但引入了时间同步问题。
(2) Carrier Sense Multiple Access / Collision Avoidance(CSMA/CD)[19]:节点在发送数据包之前,先监听一段时间,如果发现信道空闲,则开始发送数据,同时监听是否有冲突发生,若冲突,则随机退避一段时间,然后重复前述的发送过程。
(3) Multiple Access with Collision Avoidance(MACA)[20]:相对于CSMA/CD机制,增加了RTS/CTS握手过程,即节点发送数据包之前首先发送RTS包,当收到目的节点返回的CTS包之后再发送数据包,避免了隐藏终端问题[21]。随后的MACA Wireless(MACAW)[20]机制在数据传输过程的开始和结尾增加了DS/ACK确认过程,避免了暴露终端问题。
(4) Busy Tone Multiple Access (BTMA)[20]:相较于前面三种单信道机制,BTMA将无线信道划分为控制信道和数据信道,节点发送数据前需要监听控制信道是否忙,若忙,说明有邻居节点正在传输,则需要等到空闲时才能发送。若空闲,则节点开始发送数据,同时在控制信道广播忙信息,以告知其他节点。Dual BTMA(DBTMA)进一步划分出两条控制信道,一条用于广播“正在发送”信息,一条用于广播“正在接收”信息,同时避免了隐藏终端和暴露终端问题。
(5) TDMA /FDMA /CDMA:在时间上、频段上或正交码上将信道划分为许多个子信道,节点发送数据之前需要预约并获得至少一个子信道,因此如何管理和分配子信道很重要,特别是在无线自组织网络中,分布式调度更加复杂。但这种机制的一大优势是只要保证节点能够及时获得信道(至少在工作时间里拥有信道),就可以向节点提供实时通信保证,这对车载无线网络的主动安全应用尤其重要。
2.2.2 现有MAC协议介绍
在无线网络中,节点通过发送和接收特定频率的无线电磁信号来互相传输信息,可以将无线频段视为一种节点公用的信道,在每一个特定时刻,处于同一个竞争域之内的节点只能有一个在发送。如果有两个或更多节点同时在发送信号,就会发生信号冲突,结果是两者的传输都不成功,只能等下次再传,造成了时间延迟的增加和信道资源的浪费。为了能够公平、有效地共享这个公用信道,就需要有一种MAC协议来协调各个节点对信道的访问。而VANET网络的节点高速移动、拓扑快速变化的特点,使这种协调管理变得更加困难,同时,VANET主动安全应用对于传输时延的严格要求,也在很大程度上增加了协议设计的难度。本节接下来的内容对被认为适用于VANET网络的MAC协议进行介绍,并对其进行分析和评价。
(1) IEEE 802.11p协议
IEEE 802.11p协议[26]是IEEE 802协议簇中的新成员,专门用于支持VANET环境下的应用。IEEE 802.11p协议又称为WAVE(Wireless Access in Vehicular Environment),截止目前为止,协议制定工作组仍处于活动状态。从已发布的信息可知,802.11p协议的物理层采用成熟的802.11a传输技术,而MAC层将采用CSMA/CA机制作为其介质访问控制机制,且有可能会使用一条控制信道来辅助建立链路。如3.1节所述,节点在发送数据包之前,需要先监听到一段特定长度的空闲时间(DCF InterFrame Space, DIFS),如果发现信道一直空闲,则开始发送数据,同时监听是否有冲突发生,若发生冲突,则在退避窗口范围内随机选择一个长度,等待一段时间,然后重复前述的发送过程。若发生多次冲突,则增加退避窗口的大小,以增加退避时间。这样的机制很大程度上降低了冲突率,并提高了无线网络吞吐量,但牺牲了一定的实时性。在第4章将对802.11p协议进行详细的介绍和讨论。
(2) ADHOC协议
ADHOC协议[23]是在欧洲研究项目CarTALK 2000[7]中提出的车载无线自组网MAC协议,采用了TDMA方式划分无线信道,以及RR-ALOHA信道访问机制,节点需要在帧信息FI(Frame Information)中记录自己所观察到的邻居节点占用时隙的情况,并在自己占用的时隙中周期性广播FI信息,如图6所示。除此之外,RR-ALOHA与预约ALOHA(Reservation ALOHA)没有差异。周期性广播的FI帧信息使得每个节点能够了解两跳之内的时隙占用情况,从而使得相邻节点之间以及拥有共同邻居节点的不相邻节点之间都不会发生冲突。相比较而言,ADHOC协议比较适合于VANET网络环境,并且周期性的广播也可以与主动安全应用相结合,只要广播信息中加上速率、位置、方向等行驶数据即可。关于ADHOC协议的详细介绍请参考第5章的内容。
图6 ADHOC协议示意图[23]
(3) 基于位置的MAC协议:SDMA协议
SDMA协议[24, 25]利用VANET节点自身能够通过GPS或伽利略定位系统精确定位的优点,按照确定的经纬度划分标准将交通道路划分成单元格,如图7所示,从1到96顺序给单元格编号,并给每个单元格分配对应编号的时隙。
图7 SDMA协议时隙分配[25]
当汽车节点驶入某个单元格时,它就自动获取了此时隙的使用权,而无须进行任何时隙竞争或分配的过程。不过,SDMA协议存在的缺点是信道利用率低,而且为了保证足够的冲突防止缓冲区,节点的传输距离不能太长,如图7,假设单元格的长度为5米,则最大传输距离只能为40米,大大少于DSRC标准规定的1000米,对主动安全应用的要求来说显然不够。若要增加传输距离,则总时隙数也将快速增加,从而造成信道资源的浪费以及传输时延的增加。
(4) 基于定向天线的MAC协议:Directional-MAC协议
由于汽车节点的移动具有相对固定和规则的运动轨迹,前后左右的节点行为和分布都具有一定的可预测性,因此定向天线(能够控制在一定角度内发送或接收无线信号)在VANET中的应用前景比较看好。若能适当地控制信号发射角度和方向,则可以降低传输过程中的冲突概率,同时提高无线信道的复用率。
在文献[43, 44]中,都提出了基于方向的MANET网络MAC协议,文献[35]进一步将其扩展到了VANET网络,如图8所示,协议中应用了定向天线作为物理发送器件,而MAC协议机制仍然采用802.11协议,传输数据之前需要先建立链接,即RTS/CTS握手过程,以避免由隐藏终端引起的传输冲突。图8中,当A需要向B传输数据时,首先向所有方向发出RTS数据包,B和C节点同时收到,B回复CTS数据包,而C则阻塞方向朝后的定向天线以避免冲突,保证A可以与B顺利地完成传输过程。不过,定向天线在VANET中的实际应用仍然存在过于复杂、难以管理的问题,尚需进一步的研究。
图8 基于定向天线的MAC协议[19]
(5) 基于位置和方向的MAC协议:RPB-MACn协议
在文献[45]中,作者提出了基于方向和位置两个信息的VANET网络MAC协议:RPB-MACn协议。如图9所示,虚线表示的是定向天线的泄露效应,对于汽车节点A而言,它装备了8个定向天线,每个天线覆盖水平面的45度范围,并且无线信道也以TDMA或FDMA等方式分割为8条。如A与C节点之间,A使用5号信道发送数据给C,使用1号信道接收C发送的数据,从而达到了提高信道利用率和降低冲突率的目的。不过这种协议的缺点也显而易见,实际应用中有许多特殊情况需要处理,因此协议设计的复杂度比较大。
图9 RPB-MACn协议的节点信道分配[45]
2.3 本章小结
本章首先介绍了网络体系结构设计领域存在的两种设计思想,即层次化设计思想与一体化设计思想,分析了各自的优缺点,并总结出合理的VANET网络体系结构应当结合两者的优点,融合层次化和一体化两种设计思想,既能使结构保持简洁,又可以提供差异化服务,以更好地支持VANET网络所面临的各种应用服务。本章还讨论了VANET网络MAC协议的相关研究工作,依次介绍了包括ALOHA、CSMA/CD、MACA、BTMA以及TDMA等基础的无线信道访问机制,并详细描述了典型的五个VANET网络MAC协议,即呼声最高的IEEE 802.11p协议、欧洲CarTALK 2000项目采用的ADHOC协议以及优缺点都十分明显的SDMA协议、D-MAC协议、RPB-MACn协议。还有其他一些可能用于替代MAC协议并完成类似功能的技术,如蓝牙技术、3G技术等,不过由于在VANET领域的影响并不大,本章不作详细介绍。
第3章 基于方向的MAC协议时隙调度策略研究
3.1 研究背景
自从美国通信委员会(FCC)于1999年底分配5.9GHZ附近的频段供车载无线通信专用以来,美国电气与电子工程师协会(IEEE)就开始积极推进车载无线通信网络协议标准的制定,也就是ASTM E2213-3标准的后续版本—802.11p标准(又称WAVE:Wireless Access in the Vehicular Environment)。然而,学术界对于制定中的802.11p协议标准是否真正适用于车载无线通信网络仍有诸多争议,特别是对其采用的CSMA机制所能提供的实时性保证存有疑问,原本预期在2009年4月公布的802.11p协议标准草案已被推迟发布。
3.1.1 802.11p标准简述
802.11p标准是目前唯一的专门针对车载无线自组织网络的通信协议标准,它主要由两部分协议规范组成:物理层(PHY Layer)协议和介质访问控制层(MAC Layer)协议。其中,802.11p的物理层采用针对高速移动动态环境进行了改进的802.11a协议,而MAC层仍然采用了802.11协议传统的载波监听多路访问机制(CSMA)来共享无线信道,即节点在发送数据包之前,需要监听信道是否正在被其他使用,只有当信道空闲时方能发送。802.11p并非单独提出的协议标准,与传统网络一样,IEEE制定了它之上的网络层、传输层及应用层协议,统称为IEEE 1609协议簇。整个VANET协议栈的结构如图10所示:
图10 VANET协议栈
3.1.2 802.11p的实时性问题
本论文着重讨论802.11p的MAC层协议,针对CSMA机制的分析与改进的研究已有很多,需要指出的是,虽然CSMA机制不需要通信双方在MAC层有握手建立链接的过程,且在大部分情况下传输时效率比较高,然而这种机制本质上是无法提供实时性保证给上层协议的。文献[34]的作者经过详细的分析与模拟,指出802.11p的MAC协议并不能在数据流量较大的情况下保证实时数据在规定时间范围内完成传输,随着传输数据量的增大,时间延迟的增长十分迅速,作者最后给出的解决方法是减少不必要的数据传输量,但这样的结果显然不能让人满意。文献[15]的作者设定了一个更加真实的车载无线网络环境:为了让每个汽车都能感知其他车的位置、速度等信息以支持行车安全应用,所有的车都必须周期性的广播包含自己位置、速度等信息的数据包,并接收来自周围汽车的数据,周期为平均每秒5次或10次,需要成功监听到34微秒的信道空闲期(AIFS)才可发送。考察路段为一条长为10000米的双向十车道高速公路,每个车道内汽车的到达概率服从数学期望为 (1/3) 辆/秒的泊松分布,汽车的速度概率则服从均值为30米/秒的高斯分布(正态分布)。实验结果表明,在最差的情况下,一个特定节点所发出的数据包中超过80%被丢弃(当下一个数据包产生时,上一个数据包仍未发出,则上一个数据包被丢弃),平均情况下也有50%左右的数据包被丢弃,如图11。
图11 CSMA机制在VANET中的丢包率[15]
3.1.3 更长的链路建立延迟vs更长的通信延迟
前面的小节阐述了802.11p标准中MAC协议所存在的问题,即无法保证实时性,这对于车载无线自组织网络最强调的交通安全应用来说是致命的缺点。美国电气与电子工程师协会(IEEE)不是没有意识到这个问题,但他们之所以仍倾向于采用CSMA机制,据我们猜测,一方面是因为受到一直以来传统计算机网络的尽力而为(best-effort)思想的影响,另一方面是为了与802.11协议簇的已有协议在一定程度上保持兼容一致,第三个原因是,相对于欧洲学院派的精益求精而言,美国更偏向于注重实用性,只要最坏情况出现的概率足够小就可以忽略不计。
在文献[26]中,作者开门见山地提出交通安全相关的VANET应用不可以容忍太长的链接建立延迟,而802.11p标准可以很好的避免这个问题,实际上,当CSMA机制用于数据包广播时根本不需要有建立MAC层链接的过程。在这点上,因为其他所有的分布式实时MAC协议都需要一定的链接建立过程,而且这个过程导致的延迟经常会比较长,所以看起来都具有先天的劣势。然而,从上一小节所指出的问题来看,802.11p标准也存在着较大概率并且较长时间的通信延迟。文献[36]给出了CSMA机制中虚拟传输时间(Virtual Transmission Time)的概念,即每两个数据包成功传输的间隔时间(VT),它等于空闲时间(Tidle)、碰撞退避时间(Tcolli)及成功传输时间(Tsuc)三者之和,取数学期望可得:
(1)
在公式(1)中,虽然不存在链路建立时间的成分,但是每次数据包成功传输所需的时间应为Tcolli+ Tsuc,而其中的碰撞退避时间(Tcolli)是不可控的,这意味着在较坏情况下,某个关键数据包可能会经历过长的传输等待时间,以至于让这个数据包由于超时或失去传输价值而被丢弃。毋庸多说,这是不符合交通安全应用的要求的。
而分布式实时MAC协议能够有效地避免这个问题,所谓分布式实时MAC协议,其主要思想是利用时分复用(TDMA)、频分复用(FDMA)或码分复用(CDMA)等方式对无线信道进行多路划分以支持多个节点并发传输,并且将信道分配控制功能分散在所有参与网络的节点中,即实现分布式控制。在分布式实时MAC协议中,存在两种传输情况:(1)当两个节点需要互相传输数据时,则需要建立一条点对点链路,在这个基础之上进而支持多跳传输链路;(2)当一个节点仅需要广播数据包时,它也必须事先和周围节点共同协商好如何共享无线信道的问题,本文讨论的绝大部分情况属于后者,即单点广播,这在交通安全类应用中十分常见,如网络中的每个节点需要周期性地广播自己的位置、速度等信息。当无线网络采用时分复用(TDMA)方式共享无线信道时,则通信节点在加入此个无线网络之时,必须通过某种方式获得至少一个属于自己、与其他节点不冲突的时隙(slot)。具体的获取方式不限,可以是SDMA协议中的按地理位置事先分配,也可以是ADHOC协议中的自由随机竞争。现在我们可以得到另一个公式,用以描述在分布式实时MAC协议中,一个节点发送第一个数据包所需的时间(VT),它等于竞争信道的时间(Tcontd)与传输时间(Ttrans)之和,取数学期望可得:
(2)
需要指出的是,后续数据包的发送不需要竞争信道,除非网络移动重叠导致时隙占用出现冲突,从而需要重新竞争信道。这说明,一旦节点被分配了时隙,那么之后的数据包传输时间就可以确定为(Ttrans),这是完全可以预知的。这与802.11p标准中MAC协议采用的CSMA机制相比,通信刚开始时多了竞争信道建立链路的时间,但在获得时隙之后,每次传输都少了碰撞避免的时间,从而能够向上层协议提供实时性保证。
最后分析一下竞争信道时间的容忍度,根据专用近程通信标准(DSRC)的规定,车载无线通信技术的有效范围在1千米以内,我们假设恰好为1千米,现有两辆汽车对向行驶,速度均为120公里/小时,则两车感知到对方的时刻到两车交汇的时刻的时间间隔约为30秒。如此长的时间,对于建立点到点的通信链路或者给节点分配时隙来说,应该是绰绰有余的,由此可知,车载网络环境对竞争信道延迟的容忍度要远大于对传输数据延迟的容忍度(当然,在某些情况下竞争信道延迟也会导致传输数据延迟,在3.2.1小节讨论)。
经过本节的比较,我们的结论是CSMA机制由于存在内在本质上的缺陷,并不适合VANET网络的交通安全应用,相对而言,分布式实时MAC协议更能满足实时性的要求,只需要作一些适当的改进即可。因此,我们认为未来的车载无线自组织网络应该会采用实时MAC协议作为安全类应用的基础(或者至少将802.11p中的CSMA机制替换为分布式实时访问机制),当前面临的主要问题有:(1)如何进一步减少竞争信道的时间(Tcontd),加快自组织网络的信道分配速度,特别是在高度动态的车载环境下,节点会频繁地进入和离开无线网络,各个无线网络之间也会频繁地重叠或融合,这对于信道分配都是一个极大的考验,一旦处理不好,不仅将会导致竞争信道时延的大大增加,甚至会影响到节点在关键时刻由于没有及时取得信道而无法发送关键的数据包,导致交通安全方面的风险。(2)如何保证可扩展性,实时性MAC协议如时分复用(TDMA)等存在的一个问题是可容纳的节点最大数量在设计时就被确定,如果运行时节点数量超出允许的范围,那么就一定会有节点无法获得信道,对于车载无线自组织网络而言,这种风险是十分严重的(出现无法通信的“哑巴”汽车节点),因此,实时MAC协议需要有一定的可扩展性。在本章后续的小节中,将主要围绕如何解决或改善第一个问题展开,第二个关于可扩展性问题的改进方法将在第五章讨论。
3.2 基于方向的时隙调度策略
3.2.1 ALOHA协议与随机信道竞争
最简单的无线信道分布式竞争协议是ALOHA协议,这是由美国夏威夷大学Norman Abramson教授等在20世纪70年代提出的第一种基于无线广播技术的分组交换计算机网络协议,时至今日,ALOHA协议已经发展出了许多版本,其中最基本的有三种:纯ALOHA协议、时隙ALOHA协议和预约ALOHA协议。(1)纯ALOHA协议:这个协议的思想十分简单,每个节点需要发送数据的时候就立即访问信道,在发送过程中进行冲突检测,通过将接收到的数据与发送缓冲区的数据进行比较从而判断是否冲突(当然,由于存在隐藏终端的问题,上层协议本身也需要进行冲突判断)。这个协议实现简单,可传输可变长度数据包,特别是用于具有大量间歇性数据传输的发射机网络,但其缺点也很明显,即信道利用率很低,最高也只能达到18%[37]。(2)时隙ALOHA协议:为了降低节点在任意时刻随机访问信道造成居高不下的冲突率,学者Lawrence G. Roberts在此基础上提出了时隙ALOHA协议,将连续的时间分隔为相等长度的时间片,规定每个节点只能在一个时间片的起始点发送数据,经过分析,最大信道利用率提升到了37%[37]。(3)预约ALOHA协议:这是针对时隙ALOHA协议的进一步改进,其中引入了信道共享和信道竞争的概念。预约ALOHA协议按照时分复用的原理,将连续的时间分隔为等长度的帧,再将每个帧分隔为等长度的时隙,如图12所示,节点如果占用了某个时隙,那么接下来每个帧的这个时隙都属于此节点,直到节点主动放弃这个时隙,其他节点才可竞争。
图12 预约ALOHA协议
在预约ALOHA协议中,如果一个节点竞争到了一个时隙,那么只要它不主动放弃,就可以一直占用此时隙传输数据,从而达到一定的实时性数据传输保证(时延取决于帧长度,这是可以预测的)。因此,可以很容易的将预约ALOHA协议应用到车载无线自组织网络中,作为能够向上层协议提供实时性保证的MAC协议,而在车载环境下,节点所需的能量可以得到保证,时分复用(TDMA)所需的精确同步也可以由车载GPS/北斗时钟同步系统提供。ADHOC协议就是基于ALOHA信道访问机制的改进版本RR-ALOHA信道访问机制[22]的一种车载无线自组织网络MAC协议,在第五章将进行详细的介绍。如前所述,当前面临的一个主要问题是在一个分布式竞争环境下,如何进一步减少节点竞争信道所需的时间(Tcontd),从而加快自组织网络的信道分配速度。经过分析,现有的各种ALOHA机制(纯ALOHA、时隙ALOHA、预约ALOHA、RR-ALOHA等)在节点竞争信道过程中都采用了简单的无差别随机竞争,即所有竞争节点随机竞争自己选中的时隙,如果发生冲突则在下一轮重新选择目标时隙进行竞争,如果未发生冲突则竞争成功,占用时隙直至传输结束释放时隙。文献[22, 23]给出了k个节点同时竞争同一个时隙的成功率S,如公式3:
(3)
其中p是每个节点竞争此个时隙的概率,当k的数值较大时,取kp=1,成功率S的最大值约为e-1≈0.376。这个成功概率是比较低的,以此估算,大概需要6轮竞争才能使94%的节点竞争到时隙,以每帧100ms估算,则需要0.6秒,以车速100千米/小时估算,在这段时间内汽车将行驶16.7米,对向则是33.3米。虽然专用近程通信标准(DSRC)规定的通信距离是1千米,这个竞争时延似乎可以接受,两辆汽车在相距很远的地方就可以完成时隙竞争分配,但这也只在这种两个节点相互靠近的理想情况下有效,而实际中更为普遍的情况是:一个所有节点都已分配好时隙并且正常运行的车载无线网络,突然遇到有多个新节点加入,并且新加入的节点与原网络的节点发生时隙冲突,同时放弃各自占用的时隙,从而导致许多无时隙节点的出现,需要重新进行竞争时隙的过程。在这种情况下,0.6秒的时间已经足以导致交通危险的发生,因此,采取方法来尽可能减少竞争信道的时间对实时MAC协议具有重大意义。
一种有效的方法是以差异化竞争时隙来取代随机竞争时隙,理想的最优情况是,每个节点都只竞争唯一属于自己的时隙,任意两个节点都不会互相冲突,时隙分配一次完成。这个方法的关键在于如何发掘节点之间内在的差异性,而在大多数无线自组织网络(Ad Hoc网络)里,节点之间存在的内在差异性只能在ID编码、地理位置、能量消耗等里面发掘,已经有一些路由方面的相关研究成果[38,39]和信道访问方面的研究成果[40]。而在车载无线自组织网络中,由于其节点就是交通道路上的汽车,这种节点差异性相对更易于发掘,下面一节就着重考察了节点的移动性特点。
3.2.2 VANET节点移动性分析:对向移动的特点
高速移动性是车载无线自组织网络(VANET)的重要特性之一,也是研究难点之一,节点的高速移动性带来了网络拓扑的高动态性,以至于难以建立稳定的路由,信道分配也面临网络快速分裂和融合带来的冲突失效问题。许多研究者从各个方面提出了解决方案,而本文从分析节点的移动性本身出发,提出这种移动性可以用于发掘一定程度的节点差异性。
高速移动性对网络拓扑的影响主要是:构成网络的节点集合快速变化,节点加入和脱离频繁,相对位置也不断变化。而在应用于VANET的预约ALOHA协议中,每个节点通过随机竞争获得时隙,并一直占用这个时隙直到与新加入的节点发生冲突,双方同时放弃此时隙并重新开始竞争时隙。可以看出,高速移动性与预约ALOHA协议之间存在着矛盾,不断加入的新节点会使得时隙冲突更加频繁,从而导致更多的竞争时隙过程,破坏协议的实时性。如果能够采取措施减少新节点的数量,那么就可以随之降低时隙冲突的概率,提高协议实时性。
经过分析,可以发现在车载网络环境下,大多数的车载无线自组织网络都有一个共同特点,即“节点对向移动”的特点:具体来说,构成网络的所有节点可以根据方向分为两个集合,例如在一条东西向的高速公路上,那么节点就可以分为朝东行驶和朝西行驶两大部分。如果我们假定这个车载无线自组织网络主要由朝东行驶的节点组成,可将它看作一个朝东移动的网络,那么可以发现,相对于朝东方向行驶的节点,朝相反方向行驶的节点(即朝西行驶的汽车)在这个网络里停留的时间都不长。因此,从直觉上可以判定,这个网络里的稳定节点的移动方向与整个网络的移动方向一致,而新加入这个网络的大部分节点都是来自反方向的,并且在网络中的时间不长。如果这个判断是正确的,那么就可以采取简单措施来区分相反方向的节点,例如,在一条东西向高速路段上,规定朝东移动的节点只能竞争奇数时隙,朝西移动的节点只能竞争偶数时隙,这样就可以避免由于不断加入的新节点导致过多的时隙冲突。事实上,这类似于双向公路靠右行驶的思想,相反方向的汽车各行其道,互不干扰。下面的小节中将给出对向移动特点及此特点可用性的证明过程。
3.2.3 节点对向移动特性的建模与分析
新加入网络的节点带来的主要问题是,它有可能与现有节点发生时隙冲突导致双方同时放弃时隙。因此,可以通过考察一个节点在移动过程中所遇到的新节点,统计其中与之同向和与之反向的新节点数量,如果反向新节点的数量远远大于同向新节点的数量,那么上一节所采取的根据方向区分节点可竞争的时隙的方法就能够避免大部分的冲突,具有一定的现实意义。
首先,假设一个相对简单的场景,如图13,在一段长度为L米的双向高速公路上,两个方向上的汽车密度均为p辆/米,因此这段公路上的总车数为2pL,并且假设红色汽车的起始位置在公路右端,其速率为V0,其他所有车的平均速率为V1。当红车自右向左行驶过这段公路时,可以计算出它所遇到的不同方向的车辆数量:
图13 双向多车道高速公路示意图
(1) 遇到的同向车辆的数量
(4)
(2) 遇到的反向车辆的数目
(5)
(3) 与 的比值R
(6)
如公式6所示,当红车的速率V0接近于其他车的平均速率V1时,所遇到的反向汽车数量与同向汽车数量的比值将会迅速增长,甚至接近于正无穷。当然,这只是一个理想化的情况,实际中不可能所有汽车都以相同的速度行驶,因此 基本不可能会为零,行驶的汽车总会遇到一些同向的汽车的。不过由此可以看出,汽车正常行驶时所遇到的反向车辆数量一般会远大于遇到的同向车辆数量。
下面改进一下前述的场景,以使其更加接近于实际情况。同样假设有一段长度为L米的双向高速公路,两个方向上的汽车密度均为p辆/米,现在增加如下条件:(1)除红车之外的所有汽车的速率服从正态分布 。(2),所有汽车都匀速沿高速公路行驶,方向不变。(3)除红车之外的所有汽车在高速公路上服从均匀分布。下面分别计算红车自左向右驶过这段长度为L的高速公路时所遇到的同向车辆 和反向车辆 :
(1) 遇到的同向车辆的数量
为了便于计算,可将同向车辆进一步划分为两部分:被红车追上的汽车和追上红车的汽车。
(1.1) 被红车追上的汽车数量
如图14所示,被红车追上的汽车必须满足两个条件:首先,其速度(设为Vx)必须低于红车的速度V0;其次,其初始位置必须满足条件t7,其中D为初始位置与红车的距离:
(7)
由于前面假设在这段高速公路上的汽车服从均匀分布,因此此段公路上的一辆速度为Vx的汽车被红车追上的概率Px为:
(8)
最后,根据车辆速度服从正态分布 ,可以计算出在此段公路上的所有车中被红车追上的概率为:
(9)
图14
(1.2) 追上红车的汽车数量
如图15所示,设有初始时一辆速度为Vx’的白色汽车起始位置位于红车之后,距离为D’,在红车行驶完L米公路的时间内白车能够追上红车的必要条件是白车速度Vx’一定大于红车的速度V0。由于除红车之外的其他汽车的速率服从正态分布 ,为了方便计算,可以将白车的速度Vx’限定在[V0, 3V0]之间(速度在区间之外的概率非常小,可以忽略)。因此,要使白车能够追上红车,它的起始位置不能离红车太远,D’必须满足:
(10)
根据均匀分布,可得这辆白追上红车的概率为
(11)
再根据正态分布,可得能够追上红车的白车在红车之后2L米路段上的所有汽车中所占的概率为:
(12)
图15
最后,将(1.1)和(1.2)两部分的结果相加,就可以得到当红车行驶过此段公路时所遇到的所有同向汽车的数量 :
(13)
(2) 遇到的反向车辆的数量
类似的,还是限定除红车之外的所有车的速率服从正态分布 ,并且忽略在区间[V0, 3V0]的概率,可以得到此路段前方3L米的路段中所有车辆会与红车相遇的概率为:
(14)
由此可得红车在行驶完此路段后遇到的反向车辆数量:
(3) 与 的比值R
(15)
图16
为了更加直观地显示VANET节点在移动中遇到双向节点数量的不对称特性,将所有汽车速度服从的正态分布 代入实际值,如平均速率(数学期望) 设为100公里每小时,标准差 分别设为10,20,30公里每小时,可以得到如图17的数值解:
80 |
85 |
90 |
95 |
100 |
105 |
110 |
115 |
120 |
0 |
2 |
4 |
6 |
8 |
10 |
12 |
14 |
16 |
18 |
20 |
22 |
24 |
26 |
Vo (the speed of the red car) [kph] |
σ = 10 |
σ = 20 |
σ = 30 |
图17 反向与同向节点数量的比值
从图17可以看出,当所有车的速度越趋于一致,所遇到的反向汽车与同向汽车的数量比值就越大;同时,所考察汽车的速度越接近所有车的平均速度,这个比值也越大。但不管在何种情况下,在行驶过程中所遇到的反向汽车数量都是同向汽车数量的6倍以上,这充分证明了前面的直觉推断的正确性。
3.2.4 对向移动特性的NS2仿真
为了从另一方面证明对向移动特性的存在性,模拟真实道路环境下的NS2仿真必不可少,首先给定一些设定参数:
(1)模拟道路是由四条首尾相接的公路组成的矩形道路,整个场景的面积为2400m x 2400m。所有节点的产生和移动都使用文献[41]中提出的VANET移动模型产生器来生成。
(2)仿真时间为10000秒,节点数目分别为100,150和200。
(3)限于地图场景的面积,特别设定节点的传输范围为20米。
(4)所有节点的移动速度介于25m/s和35m/s之间。
(5)每个节点在每次遇到新节点时都记录下新节点的方向,然后根据其方向加1到同向或反向节点的全局计数器。
(6)每个节点维护一个最大长度为所有节点数目的1/3的列表,用于记录近期遇到的节点,以避免重复计算。
(7)每当有两个节点相遇,NS2模拟器就计算一次反向节点与同向节点的全局计数器数值的比值,并输出到记录文件中。
(8)TCL仿真文件部分代码
# ============================================================== # 定义各种仿真选项 # ============================================================== set num 0 set val(chan) Channel/WirelessChannel ;# 信道类型 set val(prop) Propagation/TwoRayGround ;# 传播方式 set val(netif) Phy/WirelessPhy ;# 网络接口类型 set val(mac) Mac/Tdma ;# MAC类型 set val(ifq) Queue/DropTail/PriQueue ;# 接口序列类型 set val(ll) LL ;# 链路层 set val(ant) Antenna/OmniAntenna ;# 天线类型 set val(ifqlen) 150 ;# 最多包数目 set val(nn) 13 ;# 仿真节点数 set val(rp) DSDV ;# 路由协议 set opt(cp) "cbr-150-10-4-512" ;# 节点间数据流文件 set opt(sc) "scene-150-1000x1000" ;# 节点场景文件"scene$num" |
(9)将NS2自带的一个采用全局数据结构进行时隙分配调度的集中控制式时分复用(TDMA)MAC协议(mac-tdma.h/mac-tdma.cc)修改为能够仿真分布式VANET网络的MAC协议,下表仅列出在mac-tdma.cc文件中修改或者添加的函数:
# ============================================================== # 修改的函数 MacTdma::MacTdma(PHY_MIB* p) Mac(), mhSlot_(this), mhTxPkt_(this), mhRxPkt_(this){…}; //协议类的构造函数 void MacTdma::re_schedule(){…}; //协议初始化时进行时隙调度安排,被禁用 void MacTdma::recv(Packet* p, Handler* h){…}; //recv()是此协议接收数据包的入口,可以被上、下层协议调用, 在recv()中判断包的方向,根据方向转发给sendUp()或sendDown(), 具体方法为:若是从下层协议传上来的包,则将包放pktRX中,启动计时器mhRxPkt_.start(),等时间结束接收完成,ns2会调用处理函数recvHandler(Event *e),其中再调用recvDATA(Packet *p),将其送往上层协议。 void MacTdma::sendUp(Packet* p){…}; void MacTdma::recvDATA(Packet *p){…}; //找出分布式TDMA控制数据包并处理 void MacTdma::sendDown(Packet* p) {…}; //将数据包传送给PHY层 void MacTdma::send(){…}; //真正的发送函数,包括sendDown()也在这里发送 void MacTdma::makePreamble(){…}; //帧循环之初进行本轮数据传输预约,被禁用 void MacTdma::slotHandler(Event *e){…} //修改代码以进行时隙的分布式分配控制 void MacTdma::recvHandler(Event *e){…} //修改代码以获得关于信道冲突的信息 # ============================================================== # 添加的函数 void MacTdma::initia_schedule(){…}; //初始化时隙分配 void MacTdma::makePacket(){…} //生成可用的MAC层广播数据包 bool MacTdma::makeCompetePacket(){…} //生成分布式竞争时隙的广播数据包 void MacTdma::competeForSlot(){…} //在空闲时隙中根据概率选择要竞争的时隙 int MacTdma::slotAssigned(int node){…} //判断本节点是否获得时隙 |
仿真结果如图18(a)所示,可以看出,反向节点与同向节点的比值稳定在4.5左右。注意,横坐标虽然与时间有一定关联,但并不是时间,而是节点相遇的次数。显然,在仿真开始的时候节点相遇十分频繁,之后由于有近期相遇节点列表的存在,节点相遇越来越少。图18(b)统计的是某个节点观察到的比值。总而言之,不管是理论分析还是实验仿真,都说明了VANET网络中存在节点对向移动的特点,即节点移动过程中遇到的反向节点数量远多于遇到的同向节点。
(a)
(b)
图18 ns2仿真实验结果
3.2.5 基于方向的时隙调度策略
在观察到VANET网络存在前述的特点之后,即可以用一种简单的办法来利用这个特点,以达到减少新节点相遇次数从而降低时隙冲突的概率。如图19所示,在时分复用(TDMA)基础上,规定相反方向的节点分别竞争相反的奇偶时隙,如图19(a)中自右向左的红车只能竞争奇数时隙,自左向右的黄车只能竞争偶数时隙,从而在两个网络交汇时,如图19(b)所示,没有时隙冲突会发生,直到图19(c)里两个网络重新分开。
(a)
(b)
(c)
图19 基于方向的时隙分配示意图
根据前面的分析和仿真,这种基于节点移动方向的时隙调度策略至少可以减少80%的新节点相遇从而降低80%的时隙冲突概率。而这种策略的缺点在于:(1)需要节点感知自己的行驶方向,或者有道路交通设施来指定某个方向节点所能竞争的时隙;(2)对于单个节点而言,它只能使用所有时隙中的一半,可能会造成无线带宽的浪费。不过这两个问题都可以通过允许节点在特殊情况下可以竞争所有时隙来解决,特殊情况包括:(1)没有道路交通设施来告知节点能够竞争什么时隙,并且节点本身也无法判断;(2)公路两个方向的汽车数量严重不平衡,相对密集的一边可以放开竞争所有的时隙。
3.2.6 NS2仿真及性能评价
首先给定NS2仿真参数:
(1) 需要在原有基础上修改分布式TDMA的C代码以及TCL仿真文件。
(2) 节点总数设为100个。
(3) 每个节点都持有与已知的邻居节点不同的时隙ID。
(4) 每当两个陌生节点相遇时,如果两者持有的时隙ID相同,则报告一次时隙冲突,记录到全局计数器C中。
(5) 第一次仿真,时隙总数设为60。
(6) 第二次仿真,时隙总数设为30,并且当相遇的两个节点方向相反时,即使两者持有的时隙ID相同,也不记录到全局计数器C中(即不存在冲突)。。
仿真结果如图20所示,基于节点移动方向的时隙调度策略要比未改进的策略减少大约80%的时隙冲突,从概率上大大降低了平均竞争时隙时间,从而较好地改进了实时性MAC协议的性能,使其能够达到车载无线自组织网络的实际应用要求。当然,这种仿真场景更类似于高速公路,而不是市区公路,因此在高速公路或交叉路口比较少的城市道路上应用这种基于方向的时隙调度策略的效果会更好一些。而在某些市区公路上,汽车的行驶方向并不是经常能够简单地划分为两个简单相反的方向,并且交通车辆、道路岔口越密集的地方,车速也相对越慢,因此此时的网络更能够容纳相对长一些的竞争时隙时间,使用自由随机竞争的实时MAC协议即可。
图20 ns2模拟结果
3.2.7 进一步改进:同向节点的差异性
回到3.2.1小节中所讨论的问题:减少实时性MAC协议的竞争时隙时间的一种有效方法是以差异化竞争时隙来取代随机竞争时隙,而实现差异化竞争时隙就需要发掘节点之间的差异性。这种节点差异性应该是与应用相关的,在车载无线自组织网络中,节点差异性可以是位置、ID标识、移动速率、移动方向等,前面几节中,主要根据不同的移动方向将VANET节点分为了两部分,规定了各自能够竞争的时隙以避免过多的时隙冲突,在提高实时性方面取得了较好的效果。而在进一步分析之后,发现在划分出来的同向节点之间,也可以根据相对位置来进行区分。本文写作时,定量的工作尚未完成,下面简要描述一下。
首先,同向节点可以通过相对位置来区分“前”和“后”,这在实际交通环境下面是十分自然的,每个汽车都能知道自己是在周围车辆的前面还是后面。其次,将时分复用(TDMA)机制中的帧视为一个Round-Robin循环结构(即没有起止时隙),并指定一个循环方向为“前”,在理想情况下,一个同向网络中的所有节点应该按照实际位置的前后顺序依次占用时隙。实际情况下,时隙的安排也可以有所不同,例如空闲某些时隙,或者由于车辆行驶速度不同而导致时隙顺序与实际位置不同,但对于一个新加入网络的节点来说,它只要监听一下广播信息,找到离自己最近的前方节点,就能够唯一确定自己应该竞争的时隙。对于多个节点同时加入,则根据节点间最近一次的广播信息确认相互的位置,从而唯一确定各自在新网络中所竞争的时隙。退一步讲,如果竞争“唯一确定”的时隙时发生了冲突,那么在下一轮就可以采用随机竞争,在竞争机制设计时需要尽量完善,从概率上尽量减少这种情况的发生可能性,保证唯一时隙竞争能够一次成功,从而使时隙分配过程从随机竞争完全变为确定分配,极大提高VANET的实时性MAC协议的收敛性能。
3.3 本章小结
本章首先简要介绍了当前正在制定之中的用于车载无线自组织网络的IEEE 802.11p协议标准,指出了802.11p标准中的MAC层协议无法提供实时数据传输保证,在遇到高负荷网络流量或者突发网络流量的情况下有可能会导致大量数据包被丢弃,存在着潜在的风险。随后介绍了分布式实时MAC协议,尤其是采用时分复用(TDMA)信道划分方式的预约ALOHA协议,相对更适于车载无线网络环境。不过,预约ALOHA协议存在的主要问题之一是需要节点随机竞争信道,而且高度动态的车载网络环境会导致节点不断与遇到的新节点发生冲突而重复竞争信道,从而增加了竞争信道延迟和数据传输延迟的风险。本章后面的小节详细分析了车载无线网络节点的对向移动特性,证明了这个特性可以用于大幅降低节点信道的冲突率,从而改善了分布式实时MAC协议的性能。下一章将讨论分布式实时MAC协议存在的可扩展性问题,并提出解决方案。
第4章 分布式实时MAC协议的可扩展性研究
除了需要分布式竞争信道以外,分布式实时MAC协议还存在另一个重要问题,即可扩展性问题。对于现有的分布式实时MAC协议来说,它可以容纳的节点最大数量一般在设计时就已确定,例如TDMA机制中每帧所包含的时隙数是确定的,假如在协议运行时节点数量超出这个最大值,那么根据鸽巢原理就一定会有无法获得信道的节点。对于车载无线自组织网络而言,这种潜在风险是十分严重的,这类似于雷达扫描出现了盲区,某些汽车节点无法与周围节点进行通信,那么基于车载无线网络的安全应用功能反而可能会导致安全事故的发生。因此,应用于车载无线网络的分布式实时MAC协议必须具备一定的可扩展性。本章首先介绍ADHOC协议,这是最近提出的采用TDMA方式共享无线信道的车载无线自组织网络实时MAC协议,然后分析其中存在的可扩展性问题,并提出支持动态帧长度的自适应A-ADHOC协议,部分解决了分布式实时MAC协议的可扩展性问题,提出此协议的论文已经被Chinacom 2009会议接收。
4.1 RR-ALOHA信道访问机制概述
4.1.1 RR-ALOHA信道访问机制与ADHOC MAC协议简介
二十一世纪初,欧盟信息社会技术(IST)计划发起了一个致力于改进汽车驾驶的安全性(Safe)与便捷性(Comfortable)的车载无线通信网络研究项目,名为CarTALK 2000。在这个研究项目中,物理层采用了通用陆基无线时分双工UTRA-TDD系统,在底层以时分复用(TDMA)来划分信道;而MAC层则是由文献[21, 22, 23]提出的基于可靠预约ALOHA(Reliable Reservation ALOHA, RR-ALOHA)信道访问机制的ADHOC MAC协议,由于预约ALOHA协议的设计原本既是基于时分复用方式,因此物理层与MAC层能够很好地相互适应。
RR-ALOHA信道访问机制是一种动态的TDMA信道分配机制,每个节点在需要信道的时候动态申请时隙。区别于向特定管理节点提出申请的集中控制方式,RR-ALOHA支持分布式申请方式,具体方法是每个节点都周期性地在自己占用的时隙中广播自身所观察到的时隙占用信息(Frame Information, FI),以供周围节点参考,如图21所示。
图21 ADHOC协议机制
在图21中,7个节点构成三个互相交叠的子网络,节点3、5、1、2、4、7、6依次在自己占用的时隙中广播自身的FI数据包。此时如果有新节点加入,它需要监听一个帧周期来了解时隙占用情况,并在下一帧的某个选定空闲时隙里发送竞争时隙数据包,之后继续监听一个帧周期。若未监听到冲突,并且此新节点接收到的所有周围节点发出的FI中都记录了它已经占用所竞争的时隙,那么新节点可以认为此次竞争时隙成功,在后面的帧中可以使用此时隙进行数据传输。若发生冲突,则新节点需要继续重新选定一个空闲时隙,开始下一轮竞争,直到竞争成功为止。这种机制有两个额外的优点:(1)由于每个节点都可以通过所接收的FI数据包来了解所有邻居节点所处的状况,因此能够很方便地避免隐藏终端和暴露终端问题;(2)所有节点周期性的广播数据包十分适于车载网络的行车安全应用,只需要在周期性广播的数据包中添加自身的行驶参数内容即可。而ADHOC协议是基于RR-ALOHA信道访问机制之上的MAC协议,可以看出,这是一种适用于车载无线网络的比较可靠的分布式实时MAC协议。
需要指出的是,在RR-ALOHA信道访问机制中,新节点选定某个竞争时隙的过程依然是随机的,因此存在一定的冲突概率和延迟风险,特别是当参与竞争的节点数量比较多的时候,冲突概率上升较快。上一章着重分析了这个问题,并且结合车载无线网络的具体实际对这种随机竞争时隙的过程进行了改进。
4.1.2 RR-ALOHA机制存在的问题
分布式实时MAC存在的主要问题有两个:(1)信道竞争时延问题,(2)可扩展性问题。RR-ALOHA机制作为一种分布式实时MAC协议的基础,同样也存在这两个问题,为了使之能够更适合于车载无线网络,需要针对这两个问题进行改进。实际上,这两个问题之间也有着一定程度的相互联系:因为帧长度(即时隙数)固定不变,在机制设计时就已确定,那么在协议工作时,如果节点分布过于稀疏,则信道利用率会比较低;如果节点分布过于密集,甚至超过最大时隙数量时,则会导致竞争冲突加大、时延上升甚至某些节点无法获得时隙来与周围节点进行通信,可能会导致安全事故的发生,这就是前面提及的可扩展性问题。同时,随着节点密度的增大,参与竞争的节点数量增多,竞争冲突概率增大,此时如果出现数个网络相遇并融合的情况,许多节点因为占用的时隙发生冲突而需要重新竞争,那么所需的收敛时间会大大增加,因而可能导致潜在的风险,这又涉及了前述的第一个问题,即信道竞争时延的问题。采用动态可变帧长度的机制可以解决这些问题,不过在具体描述这种新机制之前,先对节点随机竞争时隙的过程进行一个相对详细的定量分析。
4.1.3 随机竞争时隙过程:抢椅子问题
可以将RR-ALOHA机制中的节点随机竞争时隙问题定义为一个等价但更加直观的问题,即“同学们抢椅子问题”,如下描述:
在一个教室中有N个椅子,同时在教室外面有M个同学,墙上有个每分钟响一次的铃。在每次铃响之前,每个同学都必须想好两个问题:(1),下一次铃响时是否要进教室抢一个空闲的椅子;(2)如果要抢,则需要决定抢哪一个空闲的椅子。当铃响时,在教室外面的同学中选择参与这一轮竞争的全都跑进教室,然后找到自己事先选定的椅子坐下,不过,若有两位或两位以上同学恰好选择了同一个椅子,那么他们都算失败,走出教室准备下一轮竞争。用S表示在此轮竞争中成功的同学数量,用p表示每个同学在此轮竞争中选择参与的概率,当然,决定抢哪个椅子时,每个选择的概率都是1/N。
需要回答的问题是:
(1)如何能使成功的同学数量S最大?
(2)最少需要多少轮竞争才能够使所有同学都抢到椅子?
从问题的描述中可以知道,一个同学竞争椅子成功当且仅当其他所有的同学都没有参与此轮竞争,或者参与了此轮竞争但没有选择竞争这个椅子,设某个特定的同学竞争椅子成功的概率设为S1,则由全概率公式可得:
(16)
通过二项式展开公式逆转换,可得:
(17)
p是节点参与此轮竞争的概率,取值一定在[0, 1]区间之内,为了最大化竞争成功概率S1,p的取值为:
(18)
则相应的S1值为:
(19)
即当N<M时,p取N/M时S1取最大值;当N>M时,p取1时S1取最大值(因为p不可能大于1,无法取N/M值)。为了更加直观的描述,如图22给出了当同学数量M分别取32和64时,随着椅子数量N变化而变化的竞争成功概率曲线:
图22 竞争成功概率曲线图
图22中的竞争成功概率曲线可以说明两点:(1),在相同的同学数量M前提下,随着椅子数量N的增长,竞争成功概率也随之增长,特别的,当椅子数量N的值从M增长到2M时,竞争成功概率增加的速度最快(曲线斜率较大);(2),不论同学数量M的值取多少,只要椅子数量N是M的固定倍数,则竞争成功概率也基本一样。例如当M取32时,N取2M即64,竞争成功概率为0.6137;当M取64时,N取2M即128,竞争成功概率为0.6101,两者相差无几。综上两点,可以得出这样一个结论:要使竞争成功概率维持在一定的值以上,则需要将椅子数量维持在特定倍数于同学的数量,理想的情况是能够随着同学数量增加而增加,随之减少而减少。
图23则给出了当椅子数量N固定为32和64时,竞争成功概率随着同学数量M增长而降低的曲线,从另一个角度说明了上述的结论:
图23 节点随机竞争时隙的成功率(Matlab数值曲线)
在进入下一节之前,先给出前面提出的两个问题的答案。
(1)在第一轮竞争中,竞争成功的同学数量S能够取得的最大值为M*S1(参考公式t19);
(2)至于需要多少轮能够使所有同学都抢到椅子,只能给出一个概率上的答案。第一轮竞争之后,在概率上将有M* (1-S1)个同学未能抢到椅子,而椅子将剩下(N-S1*M)个,在此基础上进行下一轮竞争的计算。例如,当M=32,N=32,五轮竞争之后有90.63%的同学能够坐下;当M=32,N=64时,则三轮竞争之后有99.47%的同学能够坐下。
回到现实问题中,即RR-ALOHA机制中的节点随机竞争时隙问题,从上面的结论可以看出,除了第四章中通过发掘节点差异性来降低冲突概率从而缩小信道竞争时延,采用动态的帧长度也可以达到相似的目标,使竞争时隙的成功概率维持在一个较高的水平,并且可以解决固定帧长度机制所面对的可扩展性问题,以应对各种不同分布密度的节点情况。
4.2 自适应分布式实时MAC协议:A-ADHOC协议
4.2.1 设计目标
A-ADHOC协议是一个基于RR-ALOHA信道访问机制的车载无线通信网络分布式实时MAC协议,这个协议主要的设计目标是改变固定帧长度为动态自适应帧长度,并提供每个节点一种简单可靠的动态帧长度自适应方法。这个改进基于固定帧长度存在的两个缺点:
(1)当节点密度较小时,浪费了信道资源,对于时分复用机制来说,还维持了不必要的通信延迟时间(两次数据发送至少间隔一个帧周期的时间);而当节点密度较大时,有可能超出固定帧长度所能容纳的最大容量,导致发生潜在的风险。在实际交通环境下,汽车节点的密度越小,一般来说汽车的速度也越快,从而对实时性的要求也越高,采用固定帧长度的机制无法降低数据两次传输之间的固定延迟。
(2)根据上一节的分析可知,为了维持节点竞争时隙的较高成功率而不降低效率,时隙数与节点数最好能够保持一定的比例,而固定帧长度不可能兼顾两点,它只能是要么竞争成功率很低,要么信道利用效率很低。
4.2.2 A-ADHOC协议详细设计
首先阐述一下A-ADHOC协议的基本思想:在一个网络中的每个节点都随时监测网络中的节点数量,一旦有节点发现其观察到的节点数超过一个阈值(如时隙总数N的3/4),就在自己占用的时隙中广播一个加倍帧长度的建议(包含在FI数据包中)。如果在之后一个周期中接收的所有节点广播数据包都表示接受了这个建议(即所有周围节点都加倍自己的帧长度),那么此节点建议成功,在以后的无线通信就采用加倍的帧长度。同样,当某个节点发现其观察到的节点数低于一个阈值(如时隙总数N的1/5),并且观察到全部的邻居节点都有这个情况,则广播一个减半帧长度的建议,如果在之后一个周期中没有接收到周围节点的反对意见,那么此节点即可减半自身所采用的帧长度,但其他节点并不随之一起减半。为了便于协议实现,协议规定帧长度必须以倍数增长,且必须取[16, 32, 64, 128, 256]中的某一个。从本质上讲,加倍帧长度的节点其实是降低了自己的广播频率,而减半帧长度的节点则是提高了自己的广播频率,只要避免引起时隙冲突,广播频率互为倍数的相邻节点也可以实现和谐共处。
为了避免一些节点加倍或减半帧长度而引起其他节点的连锁反应,在每个FI数据包中需要添加两个额外的域:(1),实际帧长度(Actual Frame Length, AFL),即此节点当前采用的实际帧长度;(2),推荐帧长度(Recommend Shorter Frame length, RSFL),即此节点根据自身当前所记录的邻居节点数量确定的较短帧长度,这个域用于减半帧长度时参考,具体步骤为,当一个节点发现自己的邻居节点数低于一个阈值,并且周围所有邻居节点的推荐帧长度(RSFL)域的值都为当前实际帧长度(AFL)值的一半,那么此节点即可减半自身的帧长度。
下面再给出A-ADHOC协议的一个定义和两条规则:
【定义4.1】在一个节点(设为a)中,一个时隙可以被标识的状态有三种:
(1)“被节点x占用(BUSY by node x)”,
说明节点a的邻居节点x占用了这个时隙。
(2)“被节点x预约(RESERVED by node x)”:
注意,这个状态说明节点x不是节点a的直接邻居节点,而是节点a的邻居节点的邻居节点,节点a只是从邻居节点那里间接地知道了节点x的存在,而且节点x占用了这个时隙。为了保证节点a和节点x不在两者共同的邻居节点处发生冲突(即隐藏终端问题),这个时隙被视为非空闲时隙。
(3)“可用(AVAILABLE)”
不属于任意一种以上的情况,即为空闲时隙。
【规则4.1】相邻节点的帧长度不能相差超过2倍。
【规则4.2】两个不同帧长度的相邻节点中,帧长度较短的节点需要在两个帧周期内保留帧长度较长的节点的FI信息。
为了更加直观的描述这个协议,图24给出了A-ADHOC协议的运行示意图,类似于图19,图中上半部分网络拓扑图中的数字表示节点,A、B、C、D分别表示四个互相交叠的无线通信子网络。节点在各个网络的分布密度相差较大,这样安排是为了在不失一般性的前提下,能够引起动态帧长度的变化,在实际道路交通中,在不同的路段上汽车的密度也不一样,并且一定有若干个交界点,这个场景便可以视为这样的一个交界点。
图24 A-ADHOC协议机制
在图24中,每个节点发出的FI中都标识了所有时隙的状态:数字表示该时隙被相应节点占用(BUSY by node x),加删除线的数字表示该时隙被相应节点预约(RESERVED by node x),空白则表示该时隙仍然空闲(AVAILABLE)。需要注意的是,图中加删除线的数字其实并不会被写到节点所发送的FI数据信息中,这只是节点自身维护节点信息时的记录,以保证自己不会去竞争这些已被邻居节点的邻居节点占用的时隙。第一行方框表示时隙占用情况(Slot Occupation),可以看到,节点1和节点4共同占用一个时隙而没有冲突,两者的距离足够远以至于没有共同的邻居节点。在这个网络中,节点1采用的帧长度为8,其他所有节点采用的帧长度都为16。不同帧长度网络能够共存的关键在于节点3,它本身的帧长度为16,而其左边的邻居节点1的帧长度为8,节点3在自己广播的FI信息中为节点1保留了两个时隙,因此节点3的其他邻居节点如节点2和8都不会去竞争节点1所在的时隙,从而避免了在节点3处发生冲突。根据定义,节点1不是节点2和8的直接邻居节点,在节点2和8广播的FI信息中不会记录节点1的占用情况,因此最右端的节点4才能够与节点1共用同一个时隙而没有冲突发生。
4.2.3 自适应帧长度的判定标准
节点如何准确判断是否需要加倍或减半现有的帧长度,这个判断标准必须基于节点本身观察到的信息以及它周围邻居节点广播的FI信息。构造一个简单化并且不失一般性的线性网络拓扑,如图25,类似于实际道路交通中由沿着一条公路分布的汽车节点所组成的网络,多个子网络依次前后重叠地分布,其中1、2、3、4等表示子网,a1、a2、a3、a4等表示子网内部的未重叠区域,b1、b2、b3、b4等表示子网之间重叠区域。当然,a类子网部分与b类子网区域并没有在本质上的什么不同,只不过a类子网区域里的节点密度相对要更高一些,而b类子网区域只有子网的边缘几个节点,因此将a类子网视为一个子网的主要部分,这也是为了便于分析的目的。
图25 多个线性重叠分布的网络示意图
以Supper和 Slower来表示非空闲的时隙数量与当前的帧长度N的比值的上下阈值,即当非空闲的时隙数量超过N*Supper时,此节点满足帧长度加倍的条件;当非空闲的时隙数量少于N*Slower时,则此节点满足帧长度减半的条件。非空闲的时隙包括所有处于“被节点x占用(BUSY by node x)”和“被节点x预约(RESERVED by node x)”两种状态的时隙。举例来说,在图25的重叠区域b5里面的节点所记录的非空闲时隙包括所有b3、a4、b4、a5、b5、a6、b6、a7、b7等区域内的节点所占用的时隙。b5中的节点可以通过邻居节点广播的FI信息得到这些信息。由于a类子网区域内的节点数远多于b类重叠区域内的节点数,因此在一般情况下,非空闲时隙数量的最大上限阈值N*Supper时更易于在重叠区被突破。
以图25为例,节点根据时隙占用情况来加倍帧长度的步骤如下:
【步骤一】
起初,子网4、5、6都保持稳定,因此至少应满足以下三个条件:
(20)
(21)
(22)
【步骤二】
现在假设有节点从右边快速转入子网6,并到达子网5,造成上面的条件(21)不满足,即有下面这个不等式成立:
(23)
【步骤三】
于是,子网区域b5中的节点发现满足加倍帧长度的条件,于是将其实际帧长度(AFL)和推荐帧长度(RSFL)均设为2N,并在自己的时隙中广播包含已加倍过了的FI信息。此时,应有下面这个条件成立:
(24)
每一个接收到以上FI信息的节点都将自身的帧长度加倍为2N,同时修改实际帧长度(AFL)的值为2N。不过,如果节点本身的均衡不等式并未被突破,即非空闲的时隙数所占比例未超过最大阈值,那么其推荐帧长度(RSFL)仍然为N,为以后可能出现的帧长度减半做准备。
同样的,对于网络节点密度由密变疏的情况,节点需要减半帧长度,必须满足的条件是:
(25)
除了满足上面的条件,更重要的一点是,此节点的所有邻居节点广播的FI中,推荐帧长度(RSFL)都必须是实际帧长度(AFL)的一半,此节点才可以采取行动来减半实际帧长度,并且还必须保证减半之后满足下述条件:
(26)
(27)
(28)
若不满足这些条件,那意味着减半之后立即又会违反公式(20)、(21)和(22)中的某一条或多条,于是重新进行帧长度加倍。因此,为了防止出现振荡现象,上述条件的约束是必要的。
【规则4.3】通常情况下,线性重叠分布的网络中的节点可以根据以下不等式来判断是否需要倍增自身的帧长度,若符合,则将帧长度增加一倍:
事实上,这条规则适用的不仅仅是线性重叠分布的网络,它的思想就是:一个节点若探测到非空闲的时隙数占全部时隙数的比例超过一定的阈值,就应该发出帧长度加倍的建议。
4.2.4 性能评价与分析
针对图25线性重叠分布的网络拓扑,在Matlab中使用伪随机数产生器得到一系列一定范围之内的随机数据序列,用以表示每个子网区域的节点数,并以此计算A-ADHOC协议在这种节点随机分布情况下的自适应帧长度效率。每个节点都计算出自己所在位置的邻居节点和邻居节点的邻居节点的总数(根据规则4.3),然后根据非空闲时隙数占全部时隙数的比例阈值确定自身的帧长度,设定的比例最高和最低阈值分别为3/4和1/5。数值分析的结果如图26所示(图27为取自图26的片段),底层的蓝色折线表示节点实际分布数量,处于中间的绿色折线表示节点观察到的非空闲时隙数(即周围可能与之发生干扰的节点总数),最上面的红色折线则表示节点采用的帧长度。
经过统计,在A-ADHOC协议中,所有节点的帧长度平均值为104.4(若以子网为最小单位进行统计,则所有子网的帧长度平均值为87.3),最大帧长度为256,最小帧长度为32,而原先的ADHOC协议采用了200的固定帧长度,A-ADHOC协议减少了约50%的平均帧长度,从而大幅度减少了节点每两次传输之间的平均等待时间。实际应用中,A-ADHOC协议能够在汽车密度比较小的地方节省帧循环时间,提高无线信道利用率;在汽车密度比较大的地方,又能随之增加时隙数以容纳更多的汽车节点,保证一定水平的竞争成功概率,而不会像原有的ADHOC协议那样无法有效处理这种情况。
图26 A-ADHOC协议数值分析结果:自适应帧长度
2000 |
2010 |
2020 |
2030 |
2040 |
2050 |
2060 |
2070 |
2080 |
2090 |
0 |
50 |
100 |
150 |
200 |
250 |
a chain of networks randomly generated |
actual node number |
perceived node number |
frame length |
图27 A-ADHOC协议数值分析结果(片段)
4.3 本章小结
本章重点讨论了分布式实时MAC协议的可扩展性问题,分析并指出采用RR-ALOHA信道访问机制的ADHOC协议存在内在的可扩展性问题。由于帧长度在设计时就已被确定,无法有效处理节点密度过大或过小的情况。随后,分析了随机竞争时隙的过程,得出结论是,要维持较高的竞争成功概率,则需将空闲时隙的数量维持在数倍于参与竞争节点数量的水平。基于该结论,本章提出了支持动态帧长度的A-ADHOC 实时MAC协议,详细描述了节点动态改变帧长度的步骤和规则,并给出了协议性能评价。数值结果显示,本章提出的A-ADHOC协议在节点平均帧长度、可扩展性等方面要优于原来的ADHOC协议,在控制复杂性方面稍差一些,但在接受范围之内。
第5章 总结与展望
5.1 工作总结
本文主要研究了车载无线自组织网络的MAC协议,由于车载无线自组织网络的特殊性,对MAC协议的设计目标提出了更多更高的要求,既要保证实时性又要兼顾吞吐率,而现有已研究多年的MANET中的MAC协议基本上都不能满足或同时满足这些要求,因此车载自组网的MAC协议仍需研究人员做大量广泛的研究工作。
本文对适用于VANET的分布式实时性MAC协议进行了较为深入的分析研究,指出了现有MAC协议尚未解决或尚有欠缺的两个问题:实时性和可扩展性。本文主要的研究成果是在前人工作的基础上提出了一个改进的自适应A-ADHOC协议,显著改善了分布式实时MAC协议在高动态车载网络环境下的可扩展性,并且提高了在一般情况下分布式实时MAC协议的实时性能。在后续的研究工作中,还重点分析了VANET网络节点所具有的对向移动特点,提出了基于方向的时隙调度策略,这个策略可以应用到大部分现有的实时MAC协议中,作为有效改善协议实时性的补充。
在本文的研究过程中,有大量代码编程的工作,其中,将NS2中自带的TDMA-MAC协议从集中式控制修改为分布式控制,每个节点不是在初始化就分配到唯一一个时隙,而是执行RR-ALOHA协议来随机地竞争预约TDMA时隙,从而达到分布式分配时隙的目标。在完成时隙分配之后,节点在自己占用的时隙内发送周期性的广播,接收来自邻居节点的广播,记录统计节点移动方向、时隙冲突状况等数据用于协议或策略的性能分析。同时,在所建立的数学模型基础上,使用Matlab工具对模型进行数值分析,并给出了随机竞争时隙情况下节点的最优化竞争策略以及车载无线网络中节点相遇情况的理论值,这些成果对于当前学术界的车载无线自组网MAC协议研究具有一定程度的重要意义。
5.2 展望
后续的研究工作仍然会围绕车载无线自组网的实时性MAC协议为重点展开,着重于提高协议的实时性和可靠性两个方面,研究目标应该集中在如何减少时隙冲突发生的概率、时隙竞争所需的时间,研究思路仍然是如何降低分布式TDMA协议应用在VANET网络中的不确定性,发掘节点之间的不同之处用于差异化竞争时隙。本文提出的基于方向的TDMA时隙调度策略已经显著改善了时隙冲突率,一定程度上证明了这个思路的可行性,在此基础之上,进一步研究如何发掘同方向节点之间存在的差异性(如位置差异等),尽量消除竞争时隙阶段的随机性是下一步研究的方向。除此之外,VANET网络也有许多其他方面的研究问题,如网络体系结构、物理信道模型、节点移动模型、多跳路由选择、安全机制、匿名机制、数据融合、分布式控制、VANET应用服务等,都是尚未解决的课题,有许多研究工作可以做。
参考文献
[1] Wikipidia lemma for “Automobile”. http://en.wikipedia.org/wiki/Automobile#cite_note-2
[2] Rainer Baumann,”Vehicular Ad hoc Networks (VANET)”, Master thesis in Computer Science, 2004, ETH Zurich, Switzerland.
[3] 陈立家, 江昊, 吴静, 郭成城, 徐武平, 晏蒲柳. “车用自组织网络传输控制研究”, Journal of Software, Vol.18, No.6, June 2007, pp. 1477-1490.
[4] SAFESPOT Integrated Project. http://www.safespot-eu.org
[5] Franz W, Eberhardt R, Luckenbach T. “Fleetnet—Internet on the road.” Proceedings of the 8th World Congress on Intelligent Transportation Systems (ITS 2001), Sydney, Australia, October 2001, TRIS Online.
[6] Network on wheels (NoW). 2006. http://www.network-on-wheels.de
[7] Reichardt, D. Miglietta, M. Moretti, L. Morsink, P. Schulz, W. "CarTALK 2000: safe and comfortable driving based upon inter-vehicle-communication," IEEE Intelligent Vehicle Symposium, 2002. pp. 545-550.
[8] Car2Car Communication Consortium. http://www.car-2-car.org/
[9] Shiraki Y, Ohyama T, Nakabayashi S, Tokuda K. “Development of an Inter-vehicle communications system,” Special Edition on ITS (Intelligent Transportation Systems), 2001, pp. 68:11-13.
[10] Seki K. “Applications of DSRC in Japan”. ITS Center, Japan Automobile Research Institute, 2002.
[11] J.K. Hedrick, M. Tomizuka, and P. “Varaiya. Control issues in automated highway systems,” IEEE Control Systems Magazine, 1994. pp. 14(6):21–32,
[12] O. Gehring and H. Fritz. “Practical results of a longitudinal control concept for truck platooning with vehicle to vehicle communication,” In Proc. of the 1st IEEE Conference on Intelligent Transportation System (ITSC’97), 1997. pp. 117–122.
[13] S. Tsugawa, K. Tokuda S. Kato, T. Matsui, and H. Fujii. “An overview on DEMO 2000 cooperative driving,” In Proc. of the IEEE Intelligent Vehicle Symposium (IV’01), 2001. pp. 327–332,
[14] Hao J, Hou KM, LI JJ, Chanet JP, Vaulx CD, Zhou HY, Sousa GD. “The capacity and packets delivery of MANET on road: MANETOR,” Proc. of the Global Mobil Congress 2005 (GMC 2005). Las Vegas: CSREA Press, 2005. pp. 553-558.
[15] K. Bilstrup, E. Uhlemann, E. G. Ström, and U. Bilstrup, “Evaluation of the IEEE 802.11p MAC method for vehicle-to-cehicle communication,” in Proceedings of the 68th IEEE Vehicular Technology Conference (VTC '08), Calgary, Canada, September 2008. pp. 1–5.
[16] The PReVENT Project. http://www.prevent-ip.org.
[17] Internet ITS Project. http://www.internetits.org.
[37] 康辉主编,《计算机网络基础教程》,清华大学出版社,2005年11月, ISBN:7302118663
[42] 陈绍双,《基于CAN总线的车载网络信息平台的设计和研究》,硕士论文,浙江大学机械与能源工程学院,2007年5月
车载无线自组织网络的介质访问控制协议研究相关推荐
- 第二章无线自组织网络、传感器网络和Mesh网络——《无线自组织网络和传感器网络安全》
图书分享 <无线自组织网络和传感器网络安全.pdf> 基本概念 无线自组织网络: 无线自组织网络的定义需要跟蜂窝网络相对比,两者的区别为是否在固定的基础设施上构建.蜂窝网络需要固定的基础设 ...
- 【计算机网络-数据链路层】介质访问控制协议(MAC协议)
文章目录 1 静态划分信道--信道划分 MAC 协议 1.1 频分多路复用(FDM)--"并行" 1.2 时分多路复用(TDM)--"并发" 1.2.1 同步时 ...
- 数据链路层的介质访问控制协议
这个名称每次听着都很陌生,但是实际的协议,其实是很熟悉的东西.为什么会有这种感觉,我想应该是总结的层次不够抽象. 这里再次加以总结: 介质控制访问指代的是:广播信道中信道分配的协议属于数据链路的一个子 ...
- 无线传感网络的发展现状及研究中的关键技术
随着无线通信.集成电路.传感器.微机电系统等技术的飞速发展,低成本.低功耗.小体积.多功能的微型传感器的大量生产成为可能.之所以称为微型传感器,是因为传感器小到可以像灰尘一样在空气中浮动,所以又可称之 ...
- linux设置为adhoc模式,Linux下两台笔记本电脑adhoc模式搭建局域网跟adhoc无线自组织网络...
1,准备工作 两台电脑无线网卡均配置成adhoc模式,选择信道6,ESSID为long. (信道6是我电脑旁边无线路由器所在的信道,不清楚它是否会对无线路由信号产生干扰,当然目前我把无线路由器电源拔了 ...
- 愿一切都那么简单 频分,时分,波分,码分以及四个随机访问介质访问控制协议【计网】
- 计算机网络:随机访问介质访问控制之令牌传递协议
在轮询访问中,用户不能随机地发送信息,而要通过一个集中控制的监控站,以循环方式轮询每个结点,再决定信道的分配.当某结点使用信道时,其他结点都不能使用信道.典型的轮询访问介质访问控制协议是令牌传递协议, ...
- 计算机网络——数据链路层介质访问控制
文章目录 前言 一.介质访问控制概述 二.信道划分介质访问控制 1.频分多路复用(FDM) 2.时分多路复用(TDM) 3.波分多路复用(WDM) 4.码分多路复用(CDM) 三.随机访问介质访问控制 ...
- 【计算机网络】数据链路层 : 总结 ( 封装成帧 | 流量控制与可靠传输 | 差错控制 | 介质访问控制 | 局域网 | 广域网 | 数据链路层设备 ) ★★★
文章目录 一.数据链路层 功能 二.封装成帧 ★ 三.流量控制 和 可靠传输 ★★ 1.停止等待协议 ★ 2.后退 N 帧 ( GBN ) 协议 ★ 3.选择重传 ( SR ) 协议 ★ 四.差错控制 ...
最新文章
- 线性代数-矩阵-【5】矩阵化简 C和C++实现
- WSL系列操作:安装,卸载
- Vue010_ 过滤器
- 电子工程系庆贺电贺信_创造下一代光电子集成电路
- 手机网页里的模态对话框
- HttpResponse对象
- 怎样把照片中的头像扶正_微信头像用对了,2020运气差不了
- shell读取用户输入
- 马科维茨投资组合理论总结
- MATLAB textscan之模式匹配用法
- 请求服务器显示非法请求,请求被服务器识别为非法请求, 但使用 postman/curl 可以正常通过...
- 那些年啊,那些事——一个程序员的奋斗史 ——83
- 《计算机网络》以太网
- 关于Spring框架(官方文档)
- JAVA基础Day01
- Mixly16:震动报警器
- 利用discord创建一个自己的discord bot机器人
- 网规第二版:第8章 网络规划与设计论文学习笔记(含历年真题)(完结)
- 拉钩参数加密过程:data
- 计算机考试中粗实线,国开电大 计算机绘图(终结性考试)大作业答案
热门文章
- 程序员为何找不到女票的原因
- 比有钱更重要的,是拥有“选择权”(深度好文)
- 使用 zk-SNARK 的可编程零知识证明:第 1 部分
- 电脑b站html加速播放,b站视频怎么加速播放-将B站视频调速播放的方法 - 河东软件园...
- Android中65536问题剖析
- Windows Azure 解决方案系列: Real World Windows Azure: 与微软杰出工程师, Sean Nolan的访谈...
- android打电话的intent,如何在Android中使用intent打电话?
- Vue插件element-ui安装时报错error An unexpected error occurred: “https://registry.npmjs.org/element-ui: conn
- linux-- input子系统分析
- ElasticSearch之搜索词提示Sug