




已阅读5页,还剩71页未读, 继续免费阅读
(计算机系统结构专业论文)传输协议rudp的分析研究及改进.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 自上世纪7 0 年代i n t e r a c t 诞生以来,因特网迅速发展。随着t c p i p 技术的 发展和人们需求的增加,i n t e m e t 的应用逐渐由最初仅限于军事应用普及到民用。 这使得i n t e m e t 的规模越来越大,需求也越来越繁多,整个互联网络承载的业务 量也成爆炸式增长。目前为止,可以说i n t e m e t 还是很成功的,这与t c p i p 协议 技术的成功支撑是分不开的。 目前,可靠的数据传输主要采用t c p 和s c t p 两种协议。但是,这两种协议 在当前数据的高性能传输和带宽适应方面不能很好的满足需求。因为t c p 和 s c t p 都是基于流的传输层协议,无边界的传输协议,即是说用户必须自己处理 数据包的完整性和边界,这将不可避免的增加系统开销。在网络时延乘积( b d p ) 较大的网络中,由于t c p 的自身局限性严重限制了t c p 在广域网分布式计算中 的效率,并且基于r t t 的算法会导致不同t c p 流对带宽占用不同的带宽,出现 不公平现象。 在传输层另外一个广泛应用的传输协议是u d p 。u d p 是一个基于消息传输的 协议。不需要事先连接,具有传输效率高,开销小,速度快占用资源小的特点。 在基于消息的即时传输流媒体方面具有明显的优势。u d p 也有自身的不足。u d p 的数据传输是不可靠的,对于传输中丢失的数据不采取任何措施。针对以上问题为 了将t c p 协议的优点和t c p 的优点结合起来满足应用需求,在u d p 协议上进行 了一些改进。本文所分析研究的r u d p 协议便是在这样的背景下诞生的。 本文详细分析了r u d p 协议原理的基础上提出目前r u d p 在应用中所面临的 问题和对这些问题的解决措施。包括对r u d p 滑动窗口机制进行改进,采用了自 适应窗口机制实现了高效的并包发送机制,引入“窗口颜色一概念解决了窗口通 告引起的冗余负载问题,提高r u d p 协议在传输过程中的性能;利用自适应的网 络带宽延时测量方法提供了网络延时测量功能,并在这个基础上改进r u d p 原有 的定时器机制实现了对网络剩余带宽测量功能,利用基于发送频率的吞吐率模型 和基于带宽的拥塞窗口机制实现了r u d p 的拥塞控制功能,解决了r u d p 对拥塞 不敏感,对t c p 流不够友好的问题,文章最后利用n s 2 网络模拟器对改进措施 进行了仿真验证。 关键词:r u d p , t c p , 拥塞控制,可靠传输,流量控制; a b s t r a c t i n t e r n e th a sd e v e l o p e dr a p i d l yf r o m7 0 sl a s tc e n t u r y w i t ht h ed e v e l o p m e n to ft h e t c p i pt e c h n o l o g ya n dt h er e q u i r e m e n t so fa p p l i c a t i o n s ,i n t e r n e tt o d a yi sb e c o m i n g m o r ep o p u l a rt h a nb e f o r ew h e nj u s tu s e df o rm i l i t a r yd e m a n d n o w a d a y s , m o r ea n d m o r et r a n s a c t i o n st h r o u g hi n t e r n 吒t h i sm a k e st h es c a l e so fi n t e m e tg r o w sm o r e r a p i d l yt h a ne v e rb e f o r e t i l ln o w , h a t e r n e th a sa c q u i r e ds u c c e s s w i n lt les u p p o r to ft h e t c p i p t h e r ea l et w om a i nt r a n s p o r tp r o t o c o l si nt c p i pp r o t o c o lf a m i l y , t h e ya l es c t p a n dt c et h e yb o lc a n # r et h eh i g hr e l i a b i l i t yo fd a t at r a n s m i s s i o n , b u tt h e yc a nn o t m e e tt h ed e m a n do fh i g hp e r f o r m a n c ea n db a n d w i d t ha d a p t a b i l i t yo fa p p l i c a t i o n s t c p a n ds c t pa l eb o n ls t r e a m b a s e dt r a n s p o r tp r o t o c o l s i fu s e di nm e s s a g et r a n s m i s s i o n , i t m a ya d de x t r ao v e r h e a df o rv a l i d a t i n gt h em e s s a g e s t h i se x t r ao v e r h e a dm a y d e c r e a s et h ee f f i c i e n c yo fs y s t e m a st h en e t w o r kb a n d w i d t h - d e l a yp r o d u c ti n c r e a s e , t h er t tb i a si n h e r e n ti nt c pc o n g e s t i o nc o n t r o lm a yr e s u l ti nu n f a i r n e s sa n db e c o m e m o r es e r i o u si nd i s t r i b u t e dd a t ai n t e n s i v ea p p l i c a t i o n si nw a n a n o t h e rw e l lk n o w n t r a n s p o r tp r o t o c o li su d p u d pp r o t o c o l sc a np r o v i d eh i g h p e r f o r m a n c ei nd a t at r a n s m i s s i o na n dh a sl o w e ro v e r h e a dt h a nt c et h ed r a w b a c k s i n h e r e n ti nu d pa l ei ne v i d e n c e i td o e s n tp r o v i d er e l i a b i l i t yf o rd a t at r a n s m i s s i o na n d c a n tb ec o n s i d e ra st c pf r i e n d l y r u d pb a s e do nu d pa n dr d p t h i sa r t i c l ef i r s ti l l u m i n a t e st h et h e o r yo fr e l i a b l et r a n s m i s s i o nb a s e do nr u d p a f t e r w a r d si tb r i n g so u tan e wa d a p t i v ew i n d o wa l g o r i t h mt oi m p r o v es l i d i n gw i n d o w m o d e la n dp r o p o s e c o l o rw i n d o w t oc u td o w nt h el o a do ft h en e t w o r kc a u s e db y w i n d o wn o t i f i c a t i o n i tg i v e st h ei m p l e m e n t a t i o no fa d a p t i v ee s t i m a t i o no fr o u n dt r i p d e l a ya n db a n d w i d t h t h i sp a p e ra l s og i v e st h ed e s i g nd e t a i l so fr u d pc o n g e s t i o n c o n t r o lm e c h a n i s mw h i c hb a s em a i n l yo ns e n d i n gr a t ea n dc o n g e s t i o nw i n d o wa n d p r o v e dt h ee n h a n c e m e n tu s e dn s ( n e t w o r k i n gs i m u l a t o r ) i ns i m u l a t i o nc o m p a r e dt h e r u d pf l o ww i t ht c pf l o wt op r o v er u d pi st c p f r i e n d l y k e y w o r d s :r u d p , t c p , c o n g e s t i o nc o n t r o l ,f l o wc o n t r o l ,r e l i a b l ed a t a t r a n s m i s s i o n ; 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明 确的说明并表示谢意。 签名: 茁:遮宜 日期:年月 日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名: 酸。蛔 导师签 日期: 第一章绪论 1 1 课题研究的背景 第一章绪论 互联网( i n t e r a c t ) 产生于上世纪6 0 年代末期。最早起源于美国国防部高级研究 计划署d a r p a ( d e f e n c ea d v a n c e dr e s e a r c hp r o j e c t sa g e n c y ) 的前身a r p a n e t ,该 网于1 9 6 9 年投入使用。由此,a r p a n e t 成为现代计算机网络诞生的标志。最初作 为美国军方应用存在。随着t c p i p 技术的诞生和发展需求的增加,其规模越来越 大。当i n t e m e t 商业化后,其规模和需求呈现爆炸性的增长。今天的互联网也呈现 出了一些新的特点【l : ( 1 ) 网络用户不断增长,网络应用趋于多元化。早期i n t e r n e t 主要用于e m a i l , f t p t e l n e t 等等。随着用户的增多,需求也不断增多。现在网络应用繁多,远程教 育,电子商务,流媒体,网络游戏以及其他流媒体业务等等。 ( 2 ) 网络带宽不断增大的同时,多媒体业务也带来了严峻的挑战。带宽的增大 伴随着的是带宽需求较大的业务,如实时视频、音频等等,需要较高的带宽。同 时这些业务数据流往往是通过u d p 协议承载,这给网络的的数据流带来了一些新 的问题,比如u d p 流和t c p 的公平性问题,由于u d p 是没有拥塞控制,所以容 易抢占t c p 流的带宽,导致t c p 流获得的网络资源越来越少最终被饿死。 就目前的网络业务流来看,t c p 还是占了较大的比重。t c p 的特点是面向链 接,可靠性,安全性好但是传输效率不高,占用资源较多。在无线网络应用中, 这使得通信的效率降低。另一方面,利用u d p 传输效率高,开销小,但是u d p 自身没有流量控制和可靠措施,它没有重传,确认机制。 面对实际挑战,很自然的想到将u d p 和t c p 协议的优点相结合。本文所研究 的r u d p ( r e l i a b l eu d p ) 协议便是在这样背景下提出来的。本文在详细分析阐述了 该协议的原理基础上,对r u d p 协议作出改进。 1 2 国内外现状 目前,基于t c p i p 模型的传输层协议主要有u d p , t c p 和s c t p 。三种协议都 屯子科技大学硕士论文 各有其特点和缺陷。在不同业务需求中有自己的用武之地。 1 2 1t c p 协议 t c p 传输协议【2 】是目前运用最为广泛的传输层协议,它提供面向连接的,可靠 数据流传输服务,并且具有拥塞控制服务和流量控制。通过发送端和接收端的相 互协作和重传机制在不可靠的网络上提供可靠的数据流传输服务。 t c p 的“面向连接 是指基于t c p 的两个应用程序在交互数据之前必须先建 立连接,在一条连接上只有连接的两端才可以在该连接上进行数据通信。t c p 连 接的接收端通过对数据确认和超时重传来实现可靠的数据传输,要求接收端每接 收到合法报文都应发送a c k 响应发送端。在t c p 发送端发出一个数据后,会启 动定时器如果定时器超时都没收到数据的确认或者收到三个重复的a c k ,则t c p 此时会认为网络发生拥塞,会重发数据并相应的进入拥塞控制流程。通过t c p 的 滑动窗口机制来控制发送数据,以维护网络的稳定性。t c p 也有其局限性【2 儿3 】【4 】: 首先,t c p 的确认机制要求数据必须是严格按序到达才提交用户。但某些应 用不需要严格的按序甚至允许部分报文丢失,比如实时流媒体业务等。如果采用 t c p 可能会导致不必要的延时。 其次,t c p 是面向比特流的传输,将数据看作是没有结构的比特流,靠应用 层来处理消息的边界。应用层必须标记出消息边界,通知t c p ,利用“p u s h ”机 制来实现时限内的消息收发。 t c p 在高可靠性的业务方面发挥重要作用,但是在高实时要求的业务中,由 于起自身缺陷,限制了它的应用。 1 2 2s c t p 协议 流控制传输协议( s t r e a mc o n t r o lt r a n s m i s s i o np r o t o c 0 1 ) 【4 】是一种相对较新的传 输层控制协议。与u d p s l 相比,它增强了u d p 的可靠传输;与t c p 相比,它克服 了t c p 的严格按序的消息提交机制,避免了t c p 队头阻塞引起延时的问题,同时, 它还增加了新特性和安全性。正如文献【4 】中所描述那样,s c t p 除了提供与t c p 一样的无差错,有序的可靠服务,同时也提供了与t c p 相似但是有所增强的流量 控制和拥塞控制。此外,它还提高了安全性,引入了四次握手机制和协议安全的 c o o k i e 机制,增加了多宿( m u l t i - h o m i n g ) 和多流( m u l t i s t r e a n f i n g ) 特性。四次握手避 免了s c t p 遭遇到t c p 所容易遇到的s y n 攻击。利用多流特性发送端将数据分割 2 第一章绪论 成多个流,数据在各个流中独立传输,如果某个流数据传输失败则其他流仍然可 以继续接收数据并提交给用户层,这样就避免了t c p 所存在的队头阻塞时延问题。 多宿机制允许通信的主机具有多个地址,即使某一个地址失失效后,s c t p 仍然能 够利用主机上的其他地址进行两主机间的通信。 1 2 3u d p 协议 用户数据报协议s c rd a t a g r a mp r o t o c 0 1 ) 【4 】为应用层提供不可靠的传输服务。 u d p 是基于消息的,可以用来提供快速的无连接的大数据量的传输,例如电话视 频会议等应用。由于u d p 自身的特点,使得它比较适合用于时延敏感的业务。u d p 报头具有校验码,接收方接到数据后,重新计算校验码,这样以保证接收端不会 接收在传输过程中损坏或被第三方篡改的数据。但是u d p 本身不提供可靠数据服 务,也没有流量控制,差错控制和分组顺序控制。 u d p 与t c p 、s c t p 传输机制的最大不同在于后两者提供了较完备的数据通 信机制。t c p 能重发丢失的报文,并且利用滑动窗口模型进行拥塞控制和流量控 制。s c t p 的功能在t c p 上有所增强。而u d p 只是将数据发送出去,无法通知用 户消息是否按序是否丢失,这些都需要用户自己来判定。 1 2 4r u d p 协议 t c p 和s c t p 都是面向连接的协议,具有完备的可靠传输机制。但是他们都 是基于流的传输,使得用户程序必须自己处理消息的边界问题。所以他们的系统 开销较大。而u d p 提供的是无连接的服务,尽管不可靠传输,但是其开销小,传 输的速度快,尤其适合大数据量延时敏感的服务。而且u d p 传输是基于消息的, 所以用户不用考虑消息的边界问题这样减少系统的开销。特别是在分布式系统中 利用u d p 的优点能得到不错的满意度。为了实现这个目标,在这样的背景下诞生 的可靠用户报传输协议r u d p ( r e l i a b l eu d p ) 1 6 1 是一种基于r f c 9 0 8 和r f c l l 5 1 ( 第二版) 的包传输协议。r u d p 协议看作是位于传输层的u d p 协议和r d p 协议 的有机结合。作为可靠的传输协议r u d p 可弥补u d p 的不足,并在一定程度上吸 取了t c p 的优点如r u d p 提供了流量控制,差错控制等,并且淡化了服务器运算 法则。r u d p 设计灵活便于多种传输层使用。 目前已经有r u d p 成功运用于分布式实时消息传输的案例。本文在基于案例 的基础上对r u d p 协议进行分析研究,并着重在r u d p 拥塞控制t c p 公平性上作 3 电子科技大学硕士论文 出一定的改进。 1 3 课题主要研究的内容 本文首先基于r d u p 协议阐述了可靠传输技术的原理,介绍了可靠传输技术 的发展研究方向及存在的问题;其次分析r u d p 协议的核心设计,结构,以及存 在的问题。提出自适应窗口和并包机制提高发送性能,提出了“窗口颜色 概念 减少窗口通告引起的不必要的网络负载。利用自适应延时测量方法实现了r u d p 对网络延时的测量和带宽估计,改进了定时器时长的选取机制,最后利用基于速 率控制模型和窗口机制相结合的r u d p 拥塞控制策略解决了r u d p 对拥塞不敏感, t c p 友好性不强的问题,根据m c i 统计,目前i n t e m o t 上9 5 都是t c p 流1 7 j ,所 以必须解决r u d p 的t c p 友好性问题。最后通过n s 2 工具进行仿真实验,通过建 立仿真实验环境进行仿真实验验证正确性。 1 4 本文的结构安排 本主要研究基于r u d p 的可靠实时消息传输技术及t c p 友好的拥塞控制策 略。全文共分为6 章。 第一章绪论。介绍了本课题的研究背景及国内外现状,简单介绍了对比了三 个主要传输层协议,介绍了本文的研究目标及主要内容。 第二章阐述了可靠传输技术的原理及特点,分析了现在可靠传输技术的不足。 本章是第三章分析r u d p 可靠传输的理论基础。 第三章详细介绍了r u d p 协议,包括协议的设计,核心算法并根据目前r u d p 的发展情况和实践时的情况提出了其面临的问题。 第四章是本文重点章节。在第三章的基础上提出了本文对r u d p 协议的改进 措施。 第五章通过n s 2 工具进行仿真实验,通过建立仿真实验环境进行仿真实验验 证正确性。 第六章对本文的工作进行总结,并展望未来的发展方向。 4 第二章可靠数据传输理论概述 第二章r u d p 协议可靠传输理论基础 可靠数据传输技术r d t ( r e l i a b l ed a t at r a n s f e r ) 用来在不可靠的传输信道上提 供可靠的数据传输服务f 3 】。 应 用 层 传 输 层 一可靠信道传输模型一 不可靠信道上的可靠数 据传输模型 图2 1 可靠数据传输模型 图2 1 阐述了可靠数据传输技术r d t 的主体框架。图中右侧图示表示在不可 靠信道上向上层用户程序提供可靠传输技术的框架模型。由于传输是建立在不可 靠的信道上的,这使得相对上层的可靠传输任务相当困难。例如t c p 传输协议便 是建立在不可靠的m 之上,利用一套复杂的可靠性机制保证可靠传输。 2 1 可靠数据传输 目前的可靠传输都是假设基于在不可靠信道的基础上的,实际中也正如假设 一样,例如传输层协议工作在不可靠的p 层之上。对于一个可靠的传输协议来说, 不得不考虑下层传输信道的比特错误和分组丢失。解决这个两个关键的问题是可 靠传输协议的首要任务。 5 电子科技大学硕士论文 2 1 1 比特错误信道上的可靠传输协议 在实际网络传输中,物理信道发生比特错误是经常可能发生的事情。例如, 当对数据进行缓冲,对数据进行内存操作,传播时都可能发生比特错误。为了在 不可靠信道上解决比特错误的情况,为此,提出了a g q ( a u t o m a t i cr e l ) e a tq u e s t ) 协议。 a r q 采用三种措施来避免比特错误向上层提供可靠的数据传输服务。 首先,当发生了比特错误的数据分组被接收端收到时,接受端必须能检测出 比特错误,并执行相应的措施。例如,t c p 协议,u d p 协议等都采用了校验和机 制来防止将包含错误比特的分组交给用户程序。作为可靠的传输协议,必须有错 误检测机制或错误检测并纠错的功能。 其次,当接收端收到正确的数据,或错误的数据后,应该通知发送端收到了 数据或告诉发送端再次发送错误分组。 第三,发送端必须有数据重发功能。 以上三点是最基本的处理分组错误的措施,但是实际中这样做并不能满足。 它有一个致命的缺陷就是没考虑到应答a c k 数据报错误的情况。假如,a c k 发 送错误则接收端无法知道发送的数据是否被正确的接收了。处理这种问题的方法 大致有三种。 第一,定义一种新的数据类型,当收到了分组错误的a c k 或n a k 时,发送 此类型询问接收端。但是当该询问类型的数据再次发生错误时,接收端会陷入两 难境地。 第二,利用纠错技术,恢复错误报文。这增加了系统开销。 第三,当收到一个含糊不清的a c k 或n a k 时,发送端再次发送该数据。这 样会引起发送方重复发送分组。接收方对于接收到的数据不能判定是新接收到的 数据还是重复数据。解决这个问题的简单方法也是现在通行的方法是发送端给每 个数据分组都编上序号。例如t c p 协议就是将每个数据按字节编上序号,当收到 顺序的正确分组时,向发送端发送a c k 给出响应序号,告诉发送端已经成功接收 到的数据分组。这样发送端可以决定发送新的分组还是重新发送当前分组。 以上的讨论提出了可以解决比特错误报文的机制,但是在实际网络中经常还 会出现分组丢失的情况。即是说发送端发送的数据并不是都能到达接收端,有可 能在传输的途中丢失掉。这种情况在互联网络中并不少见。如何检测出分组丢失 并且在分组丢失时采取相应的措施,也是可靠传输不得不考虑的问题。 6 第二章可靠数据传输理论概述 就目前大多数可靠协议而言,解决这类问题的方法都是利用定时器机制。这 样可以实现基于时间的重发。这样在发送端发送报文后,设置一个定时器,如果 分组丢失或者该分组的应答丢失,在这两种情况下都会导致定时器超时,发送端 继续重发报文。定时器的机制主要包括:1 ,发送报文后设置定时器;2 ,收到a c k 后停止定时器;3 ,定时器超时后采取相应的措施。 由于发送方产生重复分组,所以可能会收到重复的a c k ,但是发送方必须辨 别这些a c k 是重发分组的还是之前的a c k 。为了解决这个问题,可以给a c k 报 文标记顺序号,将a c k 确认的分组序号作为另外一个字段。当接收端收到了a c k 报文判断a c k 的序号就知道是新的a c k 还是重复a c k ,拷贝确认字段就可以知 道哪些分组被对方收到并确认了。对于丢失的分组使用n a k 即否定应答进行通告。 到目前为止,讨论了错误检测机制,序列号,定时器重传机制,肯定确认a c k 和否定确认n a k ,这些元素几结合起来已经足够形成一个功能完善的可靠传输协 议。 2 1 2 基于滑动窗口的可靠传输协议 一个成功的可靠传输协议既要保证可靠性还应该有较高的数据传输率。考虑 一条信道假设其容量为c ,用户每次发送数据大小为u l d 卜 用 接 p发送) l 发送请求l 1 机 议 口 驱 ? 发送请求 层 处 动 y 阪送请求l理 接 - 任 口 _ ,接收请剩 | 连接发送器l 阵接发送器洲发j 务 - 恤收尊求 连壤j ;i。 卜 萎接字 酬,u d p 驱动任斟 一 1 接收l 请求i 消 l i l 一一 _ | 接收请求 接收j息 分发消鸯应 y 接 用 虮 口从硼启:纽胜 兰i 定匿挫i i l r 璃l 曲消自 盼议上作队列 f wr r 工i - - i t 川l i ,蚺,“ 7 n 一,h 1 “*r 收 y 处 层 理 图3 1 0 r u d p 软件模块 : 消息出队列分发到应用层 i l i 二:= = := i 。 i k鍪塑堂 l i 蒸型垄型骘 i l i k 叫l 图3 - 1 1r u d p 协议软件任务间消息交互 包一据一 瞰一 第三章r u d p 协议分析 如图3 1 0 描述了协议软件的模块划分,3 1 l 描述了任务间的消息交互。当应 用层有消息需要发生的时候,调用发送接口函数将数据加入到协议的工作栈中, 此时如果两台通信主机问还未建立起r u d p 通信连接则由协议任务自动发起建立 连接。如果通信主机间已经有了r u d p 连接则由r u d p 协议处理任务将用户数据 进行打包发送。当接数据到达接收端后,通过接收端的r u d p 驱动任务接收数据 包,并且由数据驱动任务完成协议处理部分,之后将合法的数据包交由应用层。 3 3 2 真实环境下性能测试 性能测试及稳定性测试,测试平台为p p c 8 2 7 0 和p p c 8 5 2 ,n e 2 0 0 0 网卡, v x w o r k s 5 4 。四条数据流。测试结果见下表: 表3 - 1r u d p 性能测试 连接i d 传输率( k b s ) 7 7 8 3 7 2 5 2 1 5 5 3 9 3 1 1 1 5 5 1 3 4 6 6 7 7 8 4 4 9 7 2 上表中,连接2 和连接3 适合采用p p c 8 5 2 的通信单元之间的数据传输,连接 1 和4 是使用p p c 8 2 7 0 通信单元之间的数据传输。不同c p u 对于数据传输速率是 有影响的。同类型的c p u 传输速率基本相等。实验中还发现,数据发送繁忙时会 导致c p u 占用率升高,正常情况下,即应用层开启语音业务,r u d p 任务占用c p u 率仅为隅左右,当在业务加重但在正常情况下测试记录的c p u 最高占用率 p p c 8 2 7 0 为1 3 ,p p c 8 5 2 为2 1 。稳定性测试是主要在高负载情况下进行拷机测 试,各单元c p u 利用率到达8 0 以上的情况下测试时间为7 2 小时,没有发生连 接断开情况。 文献【8 】对r u d p 协议的性能作出了比较详细的分析测试,并和t c p 比较。最 后得出r u d p 在传输性能上较t c p 优越,说明了r u d p 很好弥补了u d p 的缺陷, 使用了较t c p 小的系统开销提供较高的数据传输效率。 电子科技大学硕士论文 3 4r u d p 协议面临的问题 随着网络的发展,特别是移动网络的发展,i n t e m e t 呈现出多元化趋势,这给 传统传输控制机制的实现及其有效性带来了新的挑战。通过以上对r u d p 协议的 学习和第二章对可靠传输理论的学习,我们发现r u d p 符合可靠传输协议的特点, 在实际应用种r u d p 也表现出了其可靠的传输特性。但是r u d p 协议在实际应用 中仍然有值得改进和在应用中必须考虑的地方。 1 ) 当前,t c p 作为最为广泛应用的传输层协议出现在i n t e r n e t 网络中,据统计 网络中有9 5 的数据为t c p 数据流。若新协议与t c p 冲突太大,则很难进行实质 行的推广使用,所以r u d p 在使用时必须要考虑到与t c p 流共存的情况。特别是 当拥塞发生时,r u d p 应该是t c p 友好的。不应该过快过多的抢占带宽资源导致 t c p 数据流饿死的情况发生。协议中的公平性问题还未完全解决,这是因为r u d p 只有流量控制没有明确的拥塞控制机制,所以在网络中不同r 1 盯、不同协议的数 据流间的公平性仍然是一个问题。解决r u d p 协议的友好性问题也是我们所必须 面对的课题。 2 ) 正确区分数据报丢失的原因,实现差错控制与拥塞控制的分离,减少假超 时的情况出现。差错控制属于个体行为,而拥塞控制属集体行为,它们反映的是 不同的网络形态,应区别对待。这需要提高系统的智能反馈能力,使协议层在发 生数据丢失时能够网络进行区分并采用不同的控制策略。此问题也是可靠数据传 输性能研究的热点问题之一,目前还没有公认的成熟的解决方案。另外r u d p 的 定时器算法过于简单,推荐值都是常数,这不利用在r 1 1 变化的网络中的应用。 例如在r 1 【1 较小的网络如果一直超时未设定合适必将影响工作性能,在r t r 较大 的网络如发送拥塞时,如果此时重发定时器不随着网络状况改变则拥塞可能会加 重遗憾的是r u d p 并没有提供明确的拥塞方案,所以这也是接下来将要进行的工 作之一。 3 1r u d p 单纯的利用滑动窗e l 来控制流量有时候并不能起到很好的效果。多个 报文丢失的恢复,超时时长的估计等等,都是r u d p 在应用时所面临的问题。 4 ) 数据的突发问题。对于发送窗口的大小的设定常常会影响到数据发送的效 率。过大的窗口会导致数据突发超过链路瓶颈的容量引起拥塞问题。其实质是由 于瓶颈链路路由器的内存资源不足引起。过小的发送窗口不能有效的利用带宽资 源造成资源浪费。在下面工作中对r u d p 的滑动窗口模型的改进也是我们主要的 第三章r u d p 协议分析 工作之一。 3 5 本章小结 本章具体分析阐述了r u d p 协议的框架工作机制,及r u d p 所面i 临的问题, 分析并提出了需要改进的工作。 电子科技大学硕士论文 第四章r u d p 协议的改进 通过前面几章的论述,对r u d p 协议有了深刻的认识。作为一个可靠的传输协 议r u d p 仍然面临着许多问题。本章将阐述对r u d p 协议的改进。 4 1r u d p 协议滑窗策略改进 4 1 1 窗口颜色机制 r u d p 协议的滑动窗口提供了流量控制,发送窗口和接收窗口都采用滑动窗口 机制,并且发送端的发送窗口的扩张依赖于接收端的窗口通告。当网络上数据量 较大,主机处理比较繁忙时可能存在发送窗口和接收窗口大小长期为0 的情况。 如果此时接收端每处理一条消息便向对方发送一窗口通告必将更加加重处理任务 和网络负载,为了解决这一问题引入了“窗口颜色”的概念。 当接收端收到消息后向对端响应a c k 或e a c k ,同时本端接收窗口减小,当 消息提交给用户任务后,接收窗口增大。窗口颜色机制采用以下方法来减少处理 机和网络上的窗口通告流量: 1 1 接收方窗口颜色初始化为白色窗口,当窗口减小到0 的时候,标记窗口为 灰色; 2 ) 白色窗口扩大,不单独发送窗口扩大通知; 3 ) 当灰色窗口扩大的时候,如果灰色窗口大小小于给定值x ,不发送窗口扩 大通知; 4 ) 当灰色窗i :1 扩大到窗1 3 大于给定值x 时,将窗1 :3 颜色置为白色窗口,发送 窗口扩大通知;在上述机制中,如果窗口扩大通知未能成功到达对端则会 导致对端发送窗口一直为零,使得数据传输出现阻滞,为了避免这种情况 出现在对端即发送端采取了辅助措施。在发送端设置窗口探测定时器,当 发送窗口为零时启动定时器,当定时器超时还未收到窗口扩大通知则发送 窗口探测消息; 5 ) 在窗口为灰色窗1 :3 的时候,对接收方接收到对端的每一次窗1 3 探测消息计 数; 第四章r u d p 协议的改进 6 ) 当窗口探测消息累积到一定数目y 的时候,发送窗口扩大通知到对端 接收端窗口通告发送流程如下: 4 1 2 影子窗口 接收端收到新合 法消息 r 丽p 消息序号落 在连接的已提交 连接的接收窗口 模加l i 忘榘簇念 接收窗口大于陶 发送窗口扩大通 知,窗口变为白 色 否 图4 _ l 接收端窗口扩大通知流程 r u d p 的可靠性通过重传和应答机制来保证的,为了减少单独发送应答消息的 数目,发送的任何消息都捎带对于对端消息的应答。对于两端互发消息的情况, 应答可通过业务消息捎带,从而减少单独发送应答的数目。 影子窗口主要用来跟踪对端发送窗口的大小,影子窗口初始置为接收窗口大 小,每接收一条消息,影子窗口减一。为进一步减少单独发送应答消息的数目, 在下列条件下,采取延时应答措施( 延时l o o m s ) 。 影子窗口大于0 ,说明对方发送窗口大于0 ,无需立即a c k ; 发送队列不为空并且发送窗口大于0 时,a c k 可捎带发送,无需单独 a c k : 电子科技大学硕士论文 接收窗口为0 ,即使立即a c k 也不会导致对方发送窗口的扩大,无需立 即a c k 。 影子窗口可以看做是本端对对端发送窗口的记录跟踪,每次发送窗口通告时更 新影子窗口初始大小,收到一条消息时减一,使用影子窗口技术进一步确保了尽 量少的单独a c k 发送降低网络流量。 4 1 3 自适应的窗口偏移 为了减少小数据包单独发送,采用将小数据包合并为大数据包的方法这样可 以提高发送效率。但是,虽然这提高了发送效率但是由于并包过程会产生一些延 迟,导致小数据的延迟发送。对于并包后,数据包的大小为多大才比较合适发送 这对于减小并包延迟具有重要的意义。因为如果产生的消息都较小,则合并成一 个大数据包的延迟必然会增大。这时,可以通过窗口采样自适应的方式来实现对 小数据包合并后成大数据包的限制,通过调整窗口大小来增加并包机会加快并包 过程。当流量大时,窗口增大,当流量减小时窗口自动减小。因为窗口本质上是 控制的协议缓冲区,所以自适应的窗口偏移实际上是控制占存在缓冲中的消息的 门限大小,当到达门限值时即到达窗口大小时强制性发送。 用m a xm s gs i z e 表示大数据报的门限大小,凡是消息大小超过改门限值的就 作为大数据;用m i n u st h r e s h o l d 表示统计周期内收到的大数据包数低门限 当统计大数据报数低于该值时减小最大窗口尺度,用a d dt h r e s h o l d 表示统 计周期内大数据包收到的高门限,当大于该门限值时扩大窗口。p k sn u m 表示一 个统计周期内当时统计的包数;b i gp k s 表示周期内统计的大数据包数, p k st h r e s h o l d 表示一个周期数据包数门限,具体算法如下: 每收到一个r u d p 数据包p k sn u m + + ; i f ( 包长度 m a x m s g s i z e ) b i gp k s + + ; ) i i f ( p k s _ n u m p k st h r e s h o l d ) i f ( b i g _ p k s a d d _ t h r e s h o l d ) 扩大窗口; 第四章r u d p 协议的改进 e l s e ( b i gp i g s 时,强行将周期取为乙。 情形2 :与情形l 相反,当网络延迟变化很大时,导致1 4 一q l i 值很小,这样 导致估计的下次测量周期瓦耐很小,使得测量包注入网络的频率过高,系统开销增 大。避免该情况采用硬性规定一个最小的下边界。当周期k s s t h r e s h ,就执行拥塞避免算法,此时,在每次 收到一个时a c k 时只增加西而百个数据包,这样,在一个r 1 盯内,c w n d 将增 加,所以在拥塞避免阶段,不是呈指数增长,而是线性增长。 快速重传:快速重传是指发送端如果接收到重复的a c k ,则不需要等待超时 立即重发报文。因为导致重复a c k 的原因有两个:第一,是因为报文从不同的路 由到达接收端,引起了乱序;第二则是由于报文在传输途中丢失或损坏。快速重 传允许接收端在收到一定数量的重复a c k 后即对报文进行重传,这就避免了等待 超时时才进行重传。 2 t c pr e n o 。该算法主要是在t c p t a h o e 上提出了快速恢复算法【3 i 】以提高在 拥塞发送之后t c p 迅速恢复吞吐量。定义恢复阶段为发送端进入快速重传阶段重 发报文开始,到重发报文的a c k 到达本端为止的这个过程。t c pr e n o 的快速恢 复算法流程如下: 3 7 电子科技人学硕士论文 图4 4 快速恢复算法流程图 快速恢复算法增加了报文丢失后t c p 的发送能力,使得t c p 终端的发送速率保持 在拥塞前一半的水平。这样在适度减少发送速率同时,有效的利用了带宽,保证 了t c p 的传输效率。 3 t c pn e w 黜抛f 3 2 1 。t c pr c n o 提出来快速重传算法提高了t c p 在拥塞发生后 第四章r u d p 协议的改进 的吞吐量但是它只是考虑了发送窗口中只有一个报文丢失的情况。但是在实际应 用中,发送拥塞时路由器可能会丢弃批量的报文,这样在t c p 一次发送中,丢弃 掉多个报文的情况非常普遍。在这种情况下,采用t c pr e n o 算法会多次将拥塞窗 口减半,这样导致了t c p 的吞吐量严重下降。当极端的情况下,如果发送窗口小 于3 时无法触发快速重传,只有利用超时来重发报文。t c pr e n o 出现这一情况的 原因是因为一次拥塞后可能丢弃多个报文,而t c pr 锄认为这是发生多次拥塞, 从而进行导致窗口过度减小。t c pn e w r e n o 在t c pr c n o 的基础上对快速恢复算 法进行了修改,添加了恢复应答( r e c o v e r ya c k ) 功能。定义了恢复应答r a c k ( r e c o v e r y a c k ) 和部分应答p a c k ( p a r t i a la c k ) 用以区分一次拥塞发送多反而 报文丢失情形。记t c p 发端恢复阶段中接收到的a c k 报文( 非d u p a c k ) 为a c k x , 并记在接收到a c k x 时t c p 终端己发出的序列号( s 最大的报文为p k t y ,如果 a c k x 不是p k t y 的应答报文则称报文a c k x 为部分应答( p a r t i a l a c k ,简称p a c k ) ; 反之若a c k x 恰好是p k t y 的应答报文则称报文a c k x 被称为恢复应答( r e c o v e r y a c k ,简称r a c k ) 。t c p 发端接收到恢复应答表明:经过重传,t c p 终端发送的所 有报文都己经被接收端正确接收,网络已经从拥塞中恢复。经过t c pn e w r e n o 改 进的快速恢复算法可以描述为以下几个步骤: 重新定义“恢复阶段:把从快速重传算法发现丢失报文到t c p 发端接收到 恢复应答报文的时段称为恢复阶段。 进入恢复阶段后,t c p 发端重传被认定为丢失的报文,并重新设置慢启动 门限,将拥塞窗口设置为慢启动门限加上3 倍s m s s 。记飘k 诎为触发快速重传 的a c k 序号。 当接收到d u pa c k 后,t c p 发端按照与t c p 凡猢相似的设定方式设定拥 塞窗口。 当接收到p a c k 时,t c p 重传p a c k 所确认的下一个报文,并按照式( 4 - 3 4 ) 设置拥塞窗口。 n p x t s2s np l c k s ndupacx s n d u p c k2s np c x cw n d 一ma x ci v n d 一,盯s s m s s ,( 4 - 3 _ 4 ) 其中p r 孺表示p a c k 确认的报文数量,c w n d 表示拥塞窗口大小。 当接收到r a c k 后,t c p 发端认为拥塞中所有被丢弃的报文均已被重传,拥塞 结束。 3 9 电子科技大学硕士论文 c w n d 卜l i l i n k g + s m s s ,鼹砀 ( 4 3 - 5 ) 快速恢复是基于“数据包守恒”的原贝t j ( c o n s e r v a t i o no f p a c k e t sp d n c i p l c ) , 即同一时刻在网络中传输的数据包数量是恒定的,只有当“旧”
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 兼职业务员合同范文5篇
- 同安区2025福建厦门市同安区卫生事业单位招聘20人笔试历年参考题库附带答案详解
- 南昌市2025年江西九江经济技术开发区第二批次招聘雇员4人笔试历年参考题库附带答案详解
- 内蒙古2025内蒙古大学教辅岗位招聘10人笔试历年参考题库附带答案详解
- 三明市2025福建三明市交通运输局直属事业单位选聘1人笔试历年参考题库附带答案详解
- 2025重庆市退出消防员首次安置市级双向选择选岗18人笔试参考题库附带答案详解
- 2025盛威安全设备(浙江)有限公司招聘14人笔试参考题库附带答案详解
- 2025浙江省安全生产科学研究有限公司招聘19人(杭州市)笔试参考题库附带答案详解
- 2025江苏苏州市苏惠优达供应链管理有限公司紧急招聘4人笔试参考题库附带答案详解
- 2025年锡林郭勒阿巴嘎旗城乡建设投资集团有限公司面向社会招聘12名工作人员笔试参考题库附带答案详解
- 甘肃省建设工程计价规则(DBJD25-98-2022)
- IDC机房机架装机管理作业指导书
- 2024年内蒙古人力资源和社会保障厅事业单位笔试真题
- 中医治未病健康宣教
- 食堂员工服务培训
- 提升心理抗压能力的技巧
- 中医医术确有专长人员(多年实践人员)医师资格考核申请表
- 低空飞行器设计
- 《穴位埋线疗法》课件
- 【大型集装箱船舶港口断缆事故预防应急处理及案例探析7500字(论文)】
- 三对三篮球赛记录表
评论
0/150
提交评论