基于网络编码的机会网络数据分发研究与仿真毕业设计说明书.docx
- 文档编号:6178154
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:54
- 大小:850.71KB
基于网络编码的机会网络数据分发研究与仿真毕业设计说明书.docx
《基于网络编码的机会网络数据分发研究与仿真毕业设计说明书.docx》由会员分享,可在线阅读,更多相关《基于网络编码的机会网络数据分发研究与仿真毕业设计说明书.docx(54页珍藏版)》请在冰豆网上搜索。
基于网络编码的机会网络数据分发研究与仿真毕业设计说明书
1引言
1.1研究问题现状
近年来,无线通信技术得到了飞速的发展,新技术不断出现,其中移动通信系统的3G技术已经进入应用普及阶段,并朝第四代通信系统方向演进。
《国家中长期科学和技术发展规划纲要》(2006一2020)中已经明确提出了未来通信领域的竞争将集中反映在特殊环境和新兴应用领域中的通信网络能力及通信技术的竞争上[1]。
其中新兴应用领域涉及到的移动网络技术更是被作为前沿技术中的重点。
目前,移动通信的快速发展使得移动网络带宽逐渐增大,移动应用不断丰富,移动终端的处理能力越来越强。
为了适应不同的应用需求,各具特色的网络结构和无线网络技术不断涌现,包括无线个域网(如IEEE802.15)、无线局域网(如IEEE802.lla/b/g/i/n)、无线城域网(如802.16、802.20)、无线移动广域网(如2G、3G)、卫星网络,以及无线自组织(AdHoc)网络、无线传感器网络(WirelessSensorNetwork,WSN)等等。
而WIFi、WIMax、UWB等无线接入网络和GPRS、B3G、UMTS等蜂窝移动网络等基础设施与技术的完善为移动应用提供了在任何时间、任何地点访问所有网络服务的可能性。
在上述的各种网络发展后,一种节点移动范围更大,网络大多数都是不连通的新型网络出现了,这种类型的网络被称为机会网络,机会网络是一种不需要源节点和目的节点之间存在完整路径,利用节点移动带来的相遇机会实现网络通信的自组织网络。
经过近几年的发展,机会网络技术研究与应用已经取得了一定的进展,但是,总体而言目前相关研究还处于一个刚起步的初级阶段。
随着移动应用业务的增加以及机会网络商业化,机会网络技术的全面应用与深入仍然要解决很多极具挑战性的问题,如复杂环境下的路由、数据时延与网络开销均衡问题、移动状态下网络可靠性以及安全问题等等。
同时在一些领域,机会网络的相关技术标准尚未形成,尤其在国内对于这类高延迟的特殊通信网络的研究才刚刚起步。
规划信息化发展战略中不仅强调了信息产业以及信息技术的发展,同时也提出了将宽带无线移动通信、新兴及特殊应用领域的网络通信等核心关键技术研究作为我国信息技术的主要发展方向之一。
因此,对机会网络数据分发展开研究将为正确理解机会网络拓扑与数据传输特点提供可行性依据,有助于推进现有关键技术的可扩展性,并对提高机会网络数据传输可靠性,探索节点移动模型对机会网络服务性能保障的影响,推动相关技术的深入研究有重要现实的意义。
2000年,R.Ahlswede等人基于网络信息流的概念提出了网络编码的思想,通过允许中间节点既实现路由功能又实现编码功能,达到组播的最大流量[2]。
为使得网络编码具有实际可用性,Li等人提出了线性网络编码的概念,证实节点进行线性网络编码运算,具有可行性,能够达到最大流传输理论极限[3]。
Ho等人推广了这一概念,提出了有限域下随机线性网络编码的思想,并证实其有效性[4]。
之后,随机线性网络编码被应用于各个方面的研究,用于提高网络吞吐量、能量利用效率。
网络编码彻底改变了通信网络中信息处理和信息传输的方式,被认为是进入21世纪后信息处理和信息传输研究领域上最重要的理论成果之一。
网络编码的核心思想是允许通信网络中的节点对传输的信息进行操作和处理(如有限域中的运算等),而不再局限于存储与转发。
与传统的基于存储和转发的路由传输机制相比,网络编码能显著改善数据分发系统性能,如提升网络吞吐量,节约传输带宽和均衡网络负载等。
网络编码具有重要的理论价值和广泛的应用前景,其研究已经引起了学术界和产业界的广泛关注和高度重视。
国际知名大学、科研机构和公司,如普林斯顿大学、麻省理工学院(MIT)、贝尔实验室(BellLab)、AT&T的香农信息实验室和微软公司(Microsoft)等都积极投入对网络编码的研究,并取得了一些重要的研究成果。
我国的香港中文大学(CUHK)、清华大学、中国科学技术大学、西安电子科技大学和南京大学等也对网络编码展开了研究,并取得一定的进展。
机会网络经常出现链路断裂,网络不连通的状况,在这种情况下,节点一般并不丢弃数据包,相反节点传输数据一般采用“存储一携带一转发”的模式,传统的机会网络中,中间节点只进行数据的存储与转发操作,但是运用网络编码的机会网络中,中间节点可以对接收到的数据块进行随机线性组合编码,可以增大单次传输的数据量。
随着网络规模的日趋庞大、各种网络方案和协议日趋复杂,分析、实验和仿真等方法成为了当前进行网络技术研究的有效手段。
研究网络仿真技术成为了现代通信网络设计的重要环节,在通信网络性能研究中起关键性作用。
在众多网络仿真软件中NS2具有免费、源代码开放、易扩展等等优点而备受研究人员的青睐。
NS2是一个开源的网络仿真软件,可以再windows/unix上运行,且所有源代码公开,对于进行网络的研究和扩展非常方便。
本课题研究的内容就是在仿真平台NS2下设计并建立机会网络模型,理解网络编码的原理,在NS2中编程实现基于分簇的随机线性网络编码数据分发的仿真并与一般的网络编码比较其网络吞吐量和时延性能。
1.2本文的内容组织
本文内容组织如下:
先分别介绍了机会网络、网络编码原理及仿真平台NS2的各种知识,然后使用NS2构建机会网络拓扑,编出各个代码脚本,在NS2上仿真实验,得出数据并画图进行说明验证。
2机会网络及网络编码相关知识
2.1机会网络的概念
机会网络是一种特殊的自组织网络,它不需要存在端到端的完整路径,充分利用了节点移动带来的相遇机会(contact),实现数据逐跳转发,并最终传送到目的节点[5]。
从本质上来看,机会网络否定了传统网络中数据传输的一个根本前提——在路由期间或者数据传递期间,存在一条或者多条源端到目的端的路径。
机会网络中的相遇(contact)概念是指节点之间发生的一次联系。
当节点(如:
车辆、移动用户)进入彼此的通信范围之内时,则发生通信,当两者离开彼此通信范围时,则链路断开,停止通信。
在机会网络中,contact是机会性的,而非确定性的。
图2.1是一个机会网络示意图,t1时刻源节点S希望将数据传输给目标节点D,但S和D位于不同的连通域而没有通信路径,因此,S首先将数据打包成消息发送给邻居节点3,由于3并没有合适的机会转发下一跳节点,它将消息在本地存储并等待传输机会,经过一段时间到达t2时刻,节点3运动到节点4的通信范围并转发给节点4,在t3时刻,节点4将消息传输给目标节点D,完成数据传输。
图2.1机会网络示意图
机会网络的部分概念来源于早期的延迟容忍网络DTN(delaytolerantnetwork)[6]研究。
DTN最初是容迟网络研究组(DTNRG)为星际网络IPN(interplanetarynetwork)[7]通信而提出来的,其主要目标是支持具有间歇性连通、延迟大、错误率高等通信特征的不同网络的互联和互操作,如互联Internet和传感器网络、移动自组织网络等。
DTN网络体系由多个底层运行独立通信协议的DTN域组成。
域间网关利用“存储-转发”的模式工作,当去往目标DTN域的链路存在时转发消息,否则,将消息存储在本地持久存储器中等待可用链路。
机会网络可以看成是具有一般DTN网络特征的无线自组网。
2.2机会网络的构架
机会网络的体系结构与传统Internet传输结构的最大区别在于束层(BundleLayer),它位于传输层和应用层之间,它跟底层协议相互配合,使得应用程序可以跨过多个区域实现通信。
机会网络节点使用束层来发送和接受数据,并保证逐跳转发的可靠性以及端到端的确认。
该架构非常灵活,既保证了各层的共性,又避免非法使用其他层。
1、束层
为了实现“存储-携带-转发”的消息交换机制,机会网络在节点的应用层和传输层之间插入了一个新的协议层——束层。
使用束层的一个主要原因是在机会网络中,传输延时差异很大,当一个数据包丢失时,整个传输的数据成为无用数据。
因此为了避免这样的事情发生,将数据打包成一个较大的消息,称之为束,并使之不能轻易分割成更小的片段。
机会网络中一般不存在从源节点到目的节点的端到端的连接,因此束会存储在中继节点上并等待合适机会进行传输。
一个束必须包含的信息有:
源端地址、目的端地址、起始时间、束的生存时间、数据长度及服务类型等。
此外,对于具体的应用,可能还需要一些状态域和认证消息,例如,监管传送请求等。
2、监管传送
束层提供了一种简单的并且不需要应答的投递机制,但框架本身提供了两种可能的方法来提高可靠性:
端到端的应答和监管传送。
通过监管传送,可以保证端到端的可靠性。
在特定的环境下,这种机制可以更好地利用资源,例如源节点可以将已经投递成功的束在缓存中释放掉。
3、机会网络中的节点
一个束的源端和目的端是由端点号EID(Endpoint-Identifier)来标识的。
EID中包含一个或多个机会网络节点。
当目的地收到该束时,认为该束传递成功。
EID可以类比于DNS(DomainNameSystem)中的统一资源标识(URI,UniformResourceIdentifier),并且与路由或拓扑组织结构没有必然联系。
区域名是早先提出的一个概念,一个完整的地址由区域号和节点号组成。
基于这种区域的概念,束首先投递到目的节点所在的区域,然后再投递到目的节点。
4、服务分类
按重要性不同,束层引入了三类服务:
1、大块束(bulkbundles),只需要较小的投入,当有资源可用时就可以提供这种服务;2、正常束(normalclassbundles),比大块束优先级要高,但比“加快束”(expeditedbundles)优先级要低;3、加快束,这类服务只是针对来自同一个端点的束而言,例如:
当大块束与加快束来自不同的端点时,即使加快束比大块束优先级高,但大块束仍有可能比加快束先传递。
5、安全
机会网络框架提供了一个可选的安全构架,使用逐跳、端到端的授权和诚信机制,主要的困难是如何对网络进行控制和如何转发控制消息。
没有进行认证的节点不能够通过机会网络发送数据,并且不能利用该网络以外的节点进行数据转发。
2.3机会网络拓扑特点
1、多跳网
由于无线通信的距离受限制,机会网络中节点之间的通信通常需要借助其他节点的中继转发才能实现,便形成了多跳通信路径。
2、动态的网络拓扑
机会网络中节点间的相互连通性构成了网络的拓扑结构。
由于机会网络中的节点可以以随机的速度和方式移动,加上发射功率的变化,以及无线信道的干扰大小不断变化等因素,节点间通过无线通信形成的网络拓扑结构可能随时发生变化,而且变化的方式和速度都是难以预料的。
3、分布式控制
在机会网络中,为了实现网内节点之间的通信,需要解决无线资源使用、路由发现等控制问题。
由于机会网络没有预设的基础设施,也就没有预设的中心控制节点,所以只能采用分布式控制的方式来完成。
4、对等性
机会网络中节点与节点可以直接互通,每个节点都相同,无主从之分,每个节点都能够支持逻辑上的自发自收,即节点直接的来去双向链路都相同。
因此,无机会网络节点的无线通信装置一般采用时分双工方式(TDD)。
5、临时自组织性
若干个无线节点聚集到一起时,他们便临时自组织性地形成了一个无线通信网络,该临时性包括:
网络成员的临时性,网络组织的临时性,网络拓扑的临时性,网络路由的临时性,网络无线资源分配采用按需临时分配等。
6、链路带宽受限
机会网络采用无线传输技术作为其基本通信手段,与有线传输技术相比,它具有较低的传输带宽。
并且由于各个节点分布式竞争使用信道,使得每个移动节点实际使用的带宽远小于物理层所提供的最大传输速率。
7、能量受限
机会网络内的移动节点一般需要依靠电池来提供能量,因此,节省功率将使自组网技术中一个需要高度重视的问题。
8、有限的安全性
机会网络由于采用分布式控制、无中心、临时组织等原因,它比一般的无线网络更易受到安全方面的威胁。
2.4机会网络节点移动模型
节点移动模型描述了节点的移动模式,包括位置、速度等特征的变化,广泛应用于自组网协议性能的分析和评价,是自组织网络的基础研究之一。
传统的MANET假设网络是全连通的,节点的移动对路由层以上的协议是“屏蔽”的。
因此一般从网络拓扑角度去分析移动模型对协议性能的影响,如拓扑连通率、节点连通度等,而机会网络中的移动模型研究是以刻画节点相遇特征为核心的。
这是因为在机会网络中的数据传输依赖于节点移动带来的相遇机会,而节点的相遇概率和相遇时间分布是由节点的移动模型决定的。
因此,相比于传统的MANET,移动模型对机会网络研究更加重要。
2.4.1独立同分布的理论移动模型
许多学者研究了3个经典的独立同分布移动模:
RandomWayPoint[8](RWP)RandomWalk(RW)和RandomDirection[9](RD)。
这些模型下的节点相遇特征可用两个参数来刻画:
相遇时间(meetingtime,简称MT)和相遇间隔时间(intermeetingtime,简称IMT)。
MT是指两个节点从静止开始到第一次相遇(进入通信范围)经过的时间间隔,而IMT是指两个节点前后两次相遇的时间间隔。
文献[9]都分别从不同的角度证明了上述3个移动模型的节点期望相遇时间(expectedmeetingtime)服从指数分布或其尾部服从指数分布,并基于此分析了多种路由协议的延时性能。
文献[10]推导出RW模型下期望相遇间隔时间的分布也服从指数分布,而文献[11]推导了RD模型和RWP模型下的期望相遇间隔时间分布,并证明了RWP和RD模型下相遇时间和相遇间隔时间的尾部分布是无记忆的。
2.4.2基于统计的实际移动模型
除了从理论来推导以外,一些研究人员还利用统计方法,通过收集实际环境中节点的运动轨迹来研究节点的移动特征。
MIT的RealityMining项目[12]记录了MIT校园中100个携带蓝牙智能手机的学生和职工为期9个月的移动轨迹和相遇数据;UCSD的WirelessTopologyDiscovery[13]收集了11周内300个无线PDA与Wi-Fi接入点的相遇数据;剑桥大学的Haggle项目[14]则记录了若干个带有蓝牙接口的iMote设备在校园的相遇情况。
此外,他们还在INFOCOM参会期间进行了类似的实验;UMass研究小组[15]收集并分析了由公交车上的Wi-Fi节点组成的机会网络DieselNet实际运行中的相遇规律。
文献[2]通过分析文献[13]中的数据集发现,实际节点的移动具有社区特性,节点相遇时间服从近似的幂律分布,而不是根据经典移动模型推导出的指数分布,这些成果证实了传统的移动模型并不一定适用于实际节点的移动特征,但研究人员在对于使用何种分布的移动模型问题上一直存在争议。
文献[16]试图统一这两种类型的移动模型,作者从理论上推导出在一个有限边界的移动空间中,节点相遇间隔时间服从指数分布,如果去掉有限边界的条件,按照RW模型移动的节点相遇间隔就与统计观察到的结果相一致,服从近似幂律分布。
2.4.3基于社区的移动模型
人所携带设备组成的网络是机会网络的一个主要应用,探索适用于这类场景且便于数学分析的移动模型机会网络研究的一个重点。
基于由人组成的机会网络节点移动实际表现出的社区特性,一些研究人员提出了基于社区的移动模型(communitybasedmodel)。
该模型下的节点并不是随机选取移动位置,而是考虑了3种情况来决策下一步移动位置:
1)节点偏好,节点比其他节点更倾向于去往某个特定位置或遇到特定节点;;2)节点异构性:
某些节点能够到达所有位置,遇到所有其他节点;3)行为时变性:
节点移动随着时间变化。
Musolesi等人[17]结合社会网络理论提出了一种基于社区的移动模型。
该模型根据节点之间联系的紧密程度,将节点分布在多个在不同区域的社区,然后计算不同社区对每个节点的吸引力,并以此确定节点是否移动以及朝哪个目标区域移动。
Spyropoulos等人[18,19]提出了时变的社区移动模型,每个节点的工作周期由正常移动周期和集中移动周期组成,每个周期内,节点随机选择一个社区作为它的本地社区。
节点在每个周期都有两种移动状态,Localepoch和Roamingepoch。
前者是选择在本地社区内移动,后者是在其他地方漫游。
节点在两个状态之间以一定的概率来切换,形成一个马尔可夫链,概率大小由所处的移动周期来确定。
例如,在集中移动周期内,节点访问本地社区的概率较高。
2.5网络编码的概念思想
在传统网络中,结点仅对接收的数据进行存储和转发,难以达到网络传输的最大吞吐量和带宽利用率,若数据传输路径出现瓶颈链路,则网络数据传输性能将受限于瓶颈链路。
对此,在网络中引入网络编码技术,增加结点对数据的编码运算功能,节约网络链路的带宽资源,减小网络数据传输中瓶颈链路的影响。
网络编码(networkcoding)是一种融合编码和路由的信息交换技术,在传统存储转发的路由方法基础上,通过允许对接收的多个数据包进行编码信息融合,增加单次传输的信息量,提高网络整体性能。
Ahlswede等人于2000年提出了网络编码概念,指出对组播网络中的某些节点附加额外的编码操作能使源与组播成员间达到最大流最小割心的组播速率。
网络编码一经提出便引起了国际学术界的广泛关注,其理论和应用已成为通信领域研究的新热点.网络编码在提高网络吞吐量、改善负载均衡、减小传输延迟、节省节点能耗、增强网络鲁棒性等方面均显示出其优越性,可广泛应用于AdHoe网络,传感器网络、P2P内容分发、分布式文件存储和网络安全等领域。
经过几年的发展,网络编码的理论研究已取得重要进展,在应用基础和工程实践方面的研究正在全方位展开。
网络编码已成为一项融合信息论、代数学、图论、网络流理论和优化理论等多学科的交叉技术,且日益引起更多研究者的关注,其对现有的网络体系结构、协议设计方法、信息交换方式和网络管理模式带来了革命性的变化。
网络编码的基本思想是使网络中的节点不仅具有存储转发的功能,他们还能够打若干个待转发的数据包进行编码压缩成一个数据包,然后转发给相应的接收节点,并且以足够大的概率保证它的接收节点能够顺利地解码恢复出原始的数据包,从而减少传输次数,提高网络吞吐量,降低网络延迟。
以一个简单的具代表性的蝴蝶网络来描述网络编码的思想,一下均假设每条链路单位时间只能传输单位bit的数据数据信息量。
图2.3和图2.4中分别是利用网络编码前后的网络传输状态,该网络有一个源节点S,两个端节点Y,Z以及其余4个T,W,U,X是四个中转节点。
在图2.2中,b1和b2都是源s向端节点y和x发出的两个单位bit的信息,当b1和b2到达w节点时,由于一次只能处理一个单位的信息,所以W只能选择发送其中之一,而另一个则必须送入等待队列,因此,要使Y和Z这两个目的节点都要收到这两个信息,则W必须至少传送两次;图2.3表示的是网络编码方法,节点W对输入的信息进行网络编码操作(“+”表示模二加),然后将操作结果b1+b2(称为编码信息)发送至输出链路(W,X),然后又通过链路(X,Y)和(X,Z),最终传送给信宿Y和Z。
当信宿Y收到b1和b1+b2后,通过逆过程的译码操作b1+(b1+b2)就能恢复出信源S发出的b2,这样使得信宿Y同时收到了b1和b2。
按照同样的方式,信宿Z也可恢复出信源发出的b1(通过译码操作b2+(b1+b2))而同时收到b1和b2。
也就是说,基于网络编码的数据分发模式实现了该组播的理论传输容量。
可见,与传统的路由传输方式相比,网络编码提升了网络的吞吐量。
图2.2网络结构图2.3普通的存储转发图2.4运用网络编码
从上述实例可以看出,基于网络编码的数据分发的具体实施过程是:
具备编码条件的中间节点(比如该节点的入度至少为2,如图2.4中的节点W就具备编码条件,节点T,U和X等则不具备编码条件,只能执行存储和转发操作)对接收到的数据信息按照一定方式的处理(编码),然后传输给下一级的网络节点,收到信息的下一级节点如果具备编码条件,又对其接收的信息按照同样的方式进行处理和传输,如此反复,直到所有经过处理后的信息都汇聚到信宿节点为止。
最后,在信宿节点,通过逆过程的操作(译码),即可译出信源发出的原始信息。
节点对传输的信息进行如何处理和操作,属于网络编码的码构造问题。
如果节点对传输的信息进行线性操作,则称为线性网络编码;否则称为非线性网络编码(Non-linearNetworkCoding)。
如果网络节点对信息进行操作的系数是随机选取的,则称为随机网络编码;如果是通过算法确定出来的,则称为确定性网络编码。
因此,线性网络编码是一种有效的网络编码码构造方式,当前具体的基于网络编码的数据分发系统中均采用线性网络编码作为其码构造方式。
图2.4所示的节点W对输入的信息b1和b2进行的模二加操作,就是一种最简单的线性网络编码操作方式。
2.6网络编码的应用
虽然网络编码提出的初衷是为改善组播传输网络中数据分发系统的传输性能,但随着研究的不断深入,网络编码表现出了越来越广泛的应用前景。
目前,网络编码与覆盖网络(OverlayNetwork)和无线网络(WirelessNetwork)等相结合的研究取得了重要的进展,被认为是网络编码最有可能被首先应用的领域。
1、数据分发
网络编码最直接的应用就是数据分发,尤其是大范围的数据分发。
前面讨论的基于组播网络的数据分发,均是网络编码最典型的应用。
Chou等最早将随机网络编码付诸实施,构建了一个可实用化的网络编码数据分发系统,并在Washington大学的Rocketfuel项目所获得的几个ISP骨干网络拓扑上进行了仿真,取得了较好的传输性能。
CodedStream也是在网络中较早进行了基于网络编码的数据分发的尝试[71],CodedStream是一个基于P2P模式的,面向高带宽流媒体的数据分发系统。
它按照编码网络分发数据的特性,在覆盖网络上构建一个K-redundant路径图作为网络拓扑,网络编码被用于图中“瓶颈”处的数据分发。
最初的CodedStream在自己的仿真平台上进行了测试,其后续研究将整个思想进一步扩展,并利用PlanetLab平台进行了更广泛的测试。
网络编码与应用层组播(ApplicationLayerMulticast,ALM)相结合也取得一定进展。
应用层组播中的数据分发由客户端主机实现的,端主机具有一定的计算能力,这为网络编码提供了良好的应用环境。
而且,应用层组播利用的覆盖网络拓扑可以按需变化,这也恰好可以利用网络编码对动态网络适应性强的优势。
Y.Zhu给出了一个基于网络编码的应用层组播的完整实现。
通过对比测试,证明了基于网络编码的应用层组播在网络吞吐量、资源利用率等方面的性能要优于网络层组播和普通的应用层组播。
但是在传输迟延和信息冗余等方面不够理想。
而且,大多数情况下,网络编码能将应用层组播的吞吐量提升一倍以上。
但是,T.Nad等通过进一步的实验证实,由于在执行编码和译码操作时需要一定的I/O和CPU消耗,基于网络编码的应用层组播的传输容量往往无法达到预期。
2、无线网络
由于无线链路的不可靠性和物理层广播特性,应用网络编码,可以解决传统路由、跨层设计等技术无法解决的问题。
具体来说,网络编码除了提升无线网络的网络吞吐量,还可以减少数据包的传播次数,降低无线发送能耗。
采用随机网络编码,即使部分网络节点或链路失效,最终在目的节点仍然能恢复原始数据,从而增强网络的容错性和鲁棒性。
此外,无需复杂的加密算法,采用网络编码就可以提高无线网络的安全性等。
文献[20]对网络编码在无线自组织网络(WirelessAdHocNetworks)、无线传感器网络(Wire
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 网络 编码 机会 数据 分发 研究 仿真 毕业设计 说明书
![提示](https://static.bdocx.com/images/bang_tan.gif)