ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:131.67KB ,
资源ID:3551793      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3551793.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(兰州交通大学 现代交换技术课程设计.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

兰州交通大学 现代交换技术课程设计.docx

1、兰州交通大学 现代交换技术课程设计兰州交通大学本科生课程设计中文题目: TCP,UDP和OSPF协议的分析与比较 英文题目: Analysis and comparison of TCP,UDP & OSPF protocol 学 院:电子与信息工程学院 课 程: 现 代 交 换 技 术 专 业: 通信工程 班 级: 通信12 班 姓 名: 学 号: 指导教师: 徐岩 二零一五年七月摘要 本文对TCP协议、UDP协议与OSPF协议进行了分析与比较,分析了三种协议的必要性,对TCP协议、UDP协议与OSPF协议的定义、协议的组成要素以及协议的发展历程进行了回顾。并对TCP协议、UDP协议与OSP

2、F协议的消息类型进行了分析。同时分析了TCP协议、UDP协议与OSPF协议的消息结构、头格式以及消息体格式;并分析了TCP协议、UDP协议与OSPF协议常用的消息体格式。最后分析了TCP协议、UDP协议与OSPF协议的操作过程。通过这些分析,加强了对TCP协议、UDP协议与OSPF协议三个协议的理解,并锻炼了自己理论联合实际的能力。关键词:TCP;UDP;OSPFAbstractIn this paper, TCP protocol , UDP protocol and the OSPF protocol analysis and comparative analysis of the nec

3、essity of three protocols for TCP protocol , UDP protocol and the OSPF protocol is defined , the constituent elements of the agreement and protocol development process were reviewed . And TCP protocol , UDP protocol and the OSPF protocol message types were analyzed. Simultaneous analysis of the TCP

4、protocol , UDP protocol message structure and OSPF protocol header format and message body format ; and analyzes TCP protocol , UDP protocol and the OSPF protocol commonly used message body format . Finally the TCP protocol , UDP protocol and procedure OSPF protocol. Through these analyzes , strengt

5、hen the TCP protocol , UDP protocol OSPF protocol and the three protocols to understand and exercise their joint real ability theory .Key words:TCP;UDP;OSPF目录摘要 Abstract 1 概述 11.1 协议必要性分析 11.2 协议简介 11.2.1 TCP协议简介 11.2.2 UDP协议简介 21.2.3 OSPF协议简介 22 消息类型 32.1 TCP协议消息类型 32.2 UDP协议消息类型 32.3 OSPF协议消息类型 43

6、 协议详细分析 43.1 TCP协议详细分析 43.2 UDP协议详细分析 63.3 OSPF协议详细分析 74 常用消息体格式 84.1 TCP协议常用消息体格式 84.2 UDP协议常用消息体格式 104.3 OSPF协议常用消息体格式 115 协议操作过程 125.1 TCP协议操作过程 125.2 UDP协议操作过程 155.3 OSPF协议操作过程 15参考文献 171 概述1.1 协议必要性分析1.1.1 TCP协议必要性分析 TCP协议(Transmission Control Protocol),即传输控制协议是一种面向连接的、可靠的、基于字节流的传输层通信协议。在计算机网络T

7、CP/IP模型中,它完成第四层传输层所指定的功能。TCP层是位于IP层之上,应用层之下的中间层。应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分区成适当长度的报文段(通常受该计算机连接的网络的数据链路层的最大传输单元(MTU)的限制)。之后TCP把结果包传给IP层,由它来通过网络将包传送给接收端实体的TCP层。TCP为了保证不发生丢包,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的包发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据包就被假设为已丢失将会被进行重传。

8、TCP用一个校验和函数来检验数据是否有错误;在发送和接收时都要计算校验和。1.1.2 UDP协议必要性分析 UDP协议(User Datagram Protocol),即用户数据报协议,是一个简单的面向数据报的传输层协议,正式规范为 RFC 768。在TCP/IP模型中,UDP为网络层以上和应用层以下提供了一个简单的接口。UDP只提供数据的不可靠传递,它一旦把应用程序发给网络层的数据发送出去,就不保留数据备份。UDP在IP数据报的头部加入了复用和数据校验字段。1.1.3 OSPF协议必要性分析 OSPF协议(Open Shortest Path First),即开放式最短路径优先,是对链路状态

9、路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。使用Dijkstra算法被用来计算最短路径树。它使用“代价(Cost)”作为路由度量。链路状态数据库(LSDB)用来保存当前网络拓扑结构,它在同一区域中的所有路由器上是相同的。OSPF协议是大中型网络上使用最为广泛的IGP(Interior Gateway Protocol)协议。节点在建立邻接,接受链路状态通告(Link-state Advertisement,LSA)时,可以通过MD5或者明文进行安全验证。与RIP和BGP不同的是,OSPF协议不使用TCP或者UDP协议而是承载在IP协议之上,IP协议号为89,工作在OS

10、I模型的传输层。1.2 协议简介1.2.1 TCP协议简介1.2.1.1 TCP协议定义 TCP协议(传输控制协议)由IETF的RFC 793定义,是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP提供面向连接的服务。在传输数据之前必须先建立连接,数据传输完成后释放连接。1.2.1.2 TCP协议组成要素 TCP是面向连接的传输层协议。每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点。TCP提供可靠的交付服务,保证传输的数据无差错、不丢失、不重复且有序。TCP是面向字节流的。TCP提供全双工通信,TCP允许通信双方的应用进程在任何时候都能发送数据。1.2.1.3 TCP协

11、议发展经历 TCP协议由发表于1981年的RFC793定义,并在以后不断完善发展。RFC1122阐明了许多TCP协议的实现要求。RFC2581描述了更新后的避免过度拥塞的算法。2001年的RFC3168描述了对明显拥塞的报告,这是一种拥塞避免的信号量机制。在21世纪早期,在所有因特网的数据包中,通常有大约95%的包使用了TCP协议。常见的使用TCP的应用层有HTTP/HTTPS(万维网协议),SMTP/POP3/IMAP(电子邮件协议)以及FTP(文件传输协议),这些协议在今天被广泛地使用。1.2.2 UDP协议简介1.2.2.1 UDP协议定义 UDP协议(用户数据报协议)由IETF的RFC

12、 768定义,是一个简单的面向数据报的传输层协议。UDP在传输数据之前不需要先建立连接。远地主机的运输层在收到UDP报文后,不需要给出任何确认。虽然UDP不提供可靠交付,但在某些情况下UDP确实一种最有效的工作方式。1.2.2.2 UDP协议组成要素 UDP无需建立连接,因此UDP不会引入建立连接的时延。UDP无连接状态。UDP分组首部开销小,仅有8字节开销。UDP在应用层能更好的控制要发送的数据和发送时间,UDP没有拥塞控制,因此网络中的拥塞也不会影响主机的发送效率。1.2.2.3 UDP协议发展经历 UDP协议在1980年由David P. Reed设计,并最终由RFC 768定义。1.2

13、.3 OSPF协议简介1.2.3.1 OSPF协议定义 OSPF协议(开放最短路径优先)由RFC 2328所定义,是对链路状态路由协议的一种实现,隶属内部网关协议(IGP)1.2.3.2 OSPF协议组成要素 OSPF使用洪泛法向本自治系统中的所有路由器发送信息。OFPS发送的信息就是与本路由器相邻的所有路由器的链路状态。在OSPF协议中,只有当链路状态发生变化时,路由器才向所有路由器用洪泛法发送此信息。1.2.3.3 OSPF协议发展经历 OSPF分为OSPFv2和OSPFv3两个版本,其中OSPFv2用在IPv4网络,OSPFv3用在IPv6网络。OSPFv2是由RFC 2328定义,OS

14、PFv3是由RFC 5340定义。2 消息类型2.1 TCP协议消息类型 当应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,TCP则把数据流分割成适当长度的报文段,最大传输段大小(MSS)通常受该计算机连接的网络的数据链路层的最大传送单元(MTU)限制。之后TCP把数据包传给IP层,由它来通过网络将包传送给接收端实体的TCP层。 TCP为了保证报文传输的可靠,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的字节发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据(假设丢失了)将会被重传。

15、在数据正确性与合法性上,TCP用一个校验和函数来检验数据是否有错误,在发送和接收时都要计算校验和;同时可以使用md5认证对数据进行加密。在保证可靠性上,采用超时重传和捎带确认机制。在流量控制上,采用滑动窗口协议,协议中规定,对于窗口内未经确认的分组需要重传。在拥塞控制上,采用广受好评的TCP拥塞控制算法(也称AIMD算法)。该算法主要包括三个主要部分:1)加性增、乘性减;2)慢启动;3)对超时事件做出反应。2.2 UDP协议消息类型 UDP是OSI参考模型中一种无连接的传输层协议,它主要用于不要求分组顺序到达的传输中,分组传输顺序的检查与排序由应用层完成,提供面向事务的简单不可靠信息传送服务。

16、UDP 协议基本上是IP协议与上层协议的接口。UDP协议适用端口分别运行在同一台设备上的多个应用程序。UDP提供了无连接通信,且不对传送数据包进行可靠性保证,适合于一次传输少量数据,UDP传输的可靠性由应用层负责。 UDP报文没有可靠性保证、顺序保证和流量控制字段等,可靠性较差。但是正因为UDP协议的控制选项较少,在数据传输过程中延迟小、数据传输效率高,适合对可靠性要求不高的应用程序,或者可以保障可靠性的应用程序,如DNS、TFTP、SNMP等。2.3 OSPF协议消息类型 链路是路由器接口的另一种说法,因此OSPF也称为接口状态路由协议。OSPF通过路由器之间通告网络接口的状态来建立链路状态

17、数据库,生成最短路径树,每个OSPF路由器使用这些最短路径构造路由表。 OSPF路由协议是一种典型的链路状态(Link-state)的路由协议,一般用于同一个路由域内。在这里,路由域是指一个自治系统(Autonomous System),即AS,它是指一组通过统一的路由政策或路由协议互相交换路由信息的网络。在这个AS中,所有的OSPF路由器都维护一个相同的描述这个AS结构的数据库,该数据库中存放的是路由域中相应链路的状态信息,OSPF路由器正是通过这个数据库计算出其OSPF路由表的。 作为一种链路状态的路由协议,OSPF将链路状态组播数据LSA(Link State Advertisement

18、)传送给在某一区域内的所有路由器,这一点与距离矢量路由协议不同。运行距离矢量路由协议的路由器是将部分或全部的路由表传递给与其相邻的路由器。3 协议详细分析3.1 TCP协议详细分析3.1.1 TCP协议消息结构 TCP传送的数据单元称为报文段。一个TCP报文段分为TCP首部和TCP数据两部分,整个TCP段作为IP数据报的数据部分封装在IP数据包中。其首部前20字节是固定的。TCP报文段的首部最短为20字节,后面有4N字节是根据需要而增加的选项,通常长度为4字节的整数倍。3.1.2 TCP协议头格式 TCP协议的数据头格式如图3-1所示: 数据头中各部分的含义如下:1) Source Port源

19、端口(16位),发起连接的计算机源端口号2) Destination Port目的端口(16位),要登录的目的端口号3) Initial Sequence Number序列号(32位),初始连接的请求号,即SEQ4) Next Expected SEQ Number确认号(32位),对方返回的ACK值5) DataOffset数据偏移(4位),数据偏移的大小6) Reserved Bites保留位(6位)7) FlagsURG紧急数据标志,1有效,表示应立即进行传递012345678910111213141516171819202122232425262728293031源端口目的端口序号确认

20、号头长度保留URGACKPSHRSTSYNFIN窗口校验和紧急指针选项填充数据图 3-18) ACK确认标志位,1表示此数据包为应答数据包9) PSHPUSH标志位,为表示此数据包应立即传递10) RST复位标志位,如果收到不属于本机的数据包,则返回一个RST11) SYN连接请求标志位,为1表示为发起连接的请求数据包。12) FIN结束连接请求标志位,为1表示是结束连接的请求数据包13) Window窗口大小(16位)14) Check Sum校验和(16位)15) Urgent Pointer紧急指针(16位)3.1.3 TCP协议消息体格式 TCP协议消息体格式如图3-2所示:图 3-2

21、 TCP报文段既可以用来运载数据,也可以用来建立连接、释放连接和应答。3.2 UDP协议详细分析3.2.1 UDP协议消息结构 UDP数据报包含两个部分:UDP首部和用户数据,整个UDP数据报作为IP数据报的数据部分封装在IP数据报中。UDP首部有8个字节,由4个字段组成,每个字段的长度都是两个字节。3.2.2 UDP协议头格式 UDP协议头格式如图3-3所示:0781516232431UDP源端口UDP目的端口长度UDP校验和数据数据图 3-3 各部分的含义如下:1) 源端口:源端口号。在需对方回信时选用。不需要时可用全0。2) 目的端口:目的端口号。这在终点交付报文时必须要使用到。3) 长

22、度:UDP数据报的长度(包括首部和数据),其最小值是8(仅有首部)。4) 校验和:检测UDP数据报在传输中是否有错。有错就丢弃。该字段是可选的,当源主机不想计算校验和,则直接令该字段全为0。3.2.3 UDP协议消息体格式图 3-4 UDP协议的数据报格式如图3-4所示: UDP数据报包含两个部分:UDP首部和用户数据,整个UDP数据报作为IP数据报的数据部分封装在IP数据报中。3.3 OSPF协议详细分析3.3.1 OSPF协议消息结构 OSPF分组使用24字节的固定长度首部。OSPF不用UDP而是直接用IP数据报传送(其IP数据报首部的协议字段值为89)。OSPF构成的数据报很短,这样做可

23、减少路由信息的通信量。数据报很短的另一好处是可以不必将长的数据报分片传送。3.3.2 OSPF协议头格式 OSPF协议头格式如图3-5所示:0 8 16 31版本类型分组长度路由器标识符区域标识符检验和鉴别类型鉴别鉴别图 3-5 各部分的含义如下:1) 版本:当前的版本号是2。2) 类型:可以是五种类型分组中的一种。3) 分组长度:包括OSPF首部在内的分组长度,以字节为单位。4) 路由器标识符:标志发送该分组的路由器的接口的IP地址。5) 区域标识符:分组属于的区域的标识符。6) 检验和:用来检测分组中的差错。7) 鉴别类型:目前只有两种。0(不用)和1(口令)。8) 鉴别:鉴别类型为0时就

24、填入0。鉴别类型为1则填入8字符的口令。3.3.3 OSPF协议消息体格式 OSPF协议的消息体格式如图3-6所示: OSPF分组使用24字节的固定长度的OSPF分组首部。分组的数据部分可以是五种类型分组中的一种。图 3-64 常用消息体格式4.1 TCP协议常用消息体格式 TUP协议的数据报格式如图4-1所示:012345678910111213141516171819202122232425262728293031源端口目的端口序号确认号头长度保留URGACKPSHRSTSYNFIN窗口校验和紧急指针选项填充数据图 4-1 各部分的含义如下:1) 源目标端口号字段:占16比特。TCP协议通

25、过使用端口来标识源端和目标端的应用进程。端口号可以使用0到65535之间的任何数字。在收到服务请求时,操作系统动态地为客户端的应用程序分配端口号。在服务器端,每种服务在众所周知的端口(Well-KnowPort)为用户提供服务。2) 顺序号字段:占32比特。用来标识从TCP源端向TCP目标端发送的数据字节流,它表示在这个报文段中的第一个数据字节。3) 确认号字段:占32比特。只有ACK标志为1时,确认号字段才有效。它包含目标端所期望收到源端的下一个数据字节。4) 头部长度字段:占4比特。给出头部占32比特的数目。没有任何选项字段的TCP头部长度为20字节;最多可以有60字节的TCP头部。5)

26、标志位字段(U、A、P、R、S、F):占6比特。各比特的含义如下:a) URG:紧急指针(urgentpointer)有效。b) ACK:确认序号有效。c) PSH:接收方应该尽快将这个报文段交给应用层。d) RST:重建连接。e) SYN:发起一个连接。f) FIN:释放一个连接。6) 窗口大小字段:占16比特。此字段用来进行流量控制。单位为字节数,这个值是本机期望一次接收的字节数。7) TCP校验和字段:占16比特。对整个TCP报文段,即TCP头部和TCP数据进行校验和计算,并由目标端进行验证。8) 紧急指针字段:占16比特。它是一个偏移量,和序号字段中的值相加表示紧急数据最后一个字节的序

27、号。9) 选项字段:占32比特。可能包括窗口扩大因子、时间戳等选项。 TCP 协议为终端设备提供了面向连接的、可靠的网络服务。TCP 协议为了保证数据传输的可靠性,相对于UDP 报文,TCP 报文头部有更多的字段选项。 每个 TCP 报文头部都包含源端口号(source port)和目的端口号(destination port),用于标识和区分源端设备和目的端设备的应用进程。在TCP/IP 协议栈中,源端口号和目的端口号分别与源IP 地址和目的IP 地址组成套接字(socket),唯一的确定一条TCP 连接。 序列号(Sequence number)字段用来标识TCP 源端设备向目的端设备发送

28、的字节流,它表示在这个报文段中的第一个数据字节。如果将字节流看作在两个应用程序间的单向流动,则TCP 用序列号对每个字节进行计数。序列号是一个32bits 的数。 既然每个传输的字节都被计数,确认序号(Acknowledgement number,32bits)包含发送确认的一端所期望接收到的下一个序号。因此,确认序号应该是上次已成功收到的数据字节序列号加1。 TCP 的流量控制由连接的每一端通过声明的窗口大小(windows size)来提供。窗口大小用数据包来表示,例如Windows size=3, 表示一次可以发送三个数据包。窗口大小起始于确认字段指明的值,是一个16bits 字段。窗口

29、大小可以调节。 校验和(checksum)字段用于校验TCP 报头部分和数据部分的正确性。最常见的可选字段是 MSS(Maximum Segment Size,最大报文大小)。MSS指明本端所能够接收的最大长度的报文段。当一个TCP 连接建立时,连接的双方都要通告各自的MSS 协商可以传输的最大报文长度。我们常见的MSS有1024(以太网可达1460 字节)字节。4.2 UDP协议常用消息体格式 UDP协议数据报格式如图4-2所示:0781516232431UDP源端口UDP目的端口长度UDP校验和数据数据图 4-2 各部分的含义如下:a) 源目标端口号字段:占16比特。作用与TCP数据段中的

30、端口号字段相同,用来标识源端和目标端的应用进程。b) 长度字段:占16比特。标明UDP头部和UDP数据的总长度字节。c) 校验和字段:占16比特。用来对UDP头部和UDP数据进行校验。和TCP不同的是,对UDP来说,此字段是可选项,而TCP数据段中的校验和字段是必须有的。 UDP是一种不可靠的、无连接的数据报服务。源主机在传送数据前不需要和目标主机建立连接。数据被冠以源、目标端口号等UDP报头字段后直接发往目的主机。这时,每个数据段的可靠性依靠上层协议来保证。在传送数据较少、较小的情况下,UDP比TCP更加高效。相对于 TCP 报文,UDP 报文只有少量的字段:源端口号、目的端口号、长度、校验和等,各个字段功能和TCP 报文相应字段一样。 UDP 报文没有可靠性保证和顺序保证字段,流量控制字段等,可靠性较差。当然,使用传输层UDP 服务的应用程序也有优势。正因为UDP 协议较少的控制选项,在数据传输过程中,延迟较小,数据传输效率较高,适合于对可

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1