第3章 传输层协议udp和tcp

第3章 传输层协议udp和tcp

ID:5333236

大小:522.50 KB

页数:46页

时间:2017-11-15

第3章 传输层协议udp和tcp_第1页
第3章 传输层协议udp和tcp_第2页
第3章 传输层协议udp和tcp_第3页
第3章 传输层协议udp和tcp_第4页
第3章 传输层协议udp和tcp_第5页
资源描述:

《第3章 传输层协议udp和tcp》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第3章传输层协议UDP和TCP3.1端到端通信和端口号3.2用户数据报协议UDP3.3传输控制协议TCP3.4TCP与UDP的比较习题3.1端到端通信和端口号3.1.1端到端通信在互联网中,任何两台通信的主机之间,从源端到目标端的信道都是由一段一段的点到点通信线路组成的(一个局域网中两台主机通信时只有一段点到点的线路)。如图3-1所示。图3-1传输层端到端通信由第2章的知识可知,点到点通信是由网络互联层来实现的,网络互联层只屏蔽了不同网络之间的差异,构建了一个逻辑上的通信网络,因此它只解决了数据通信问题。端到端通信是建立在点到点通信基础之上的,它是比网络互联层通信更

2、高一级的通信方式,完成应用程序(进程)之间的通信。端到端的通信是由传输层来实现的。3.1.2传输层端口的概念为了识别传输层之上不同的网络通信程序(进程),传输层引入了端口的概念。在一台主机上,要进行网络通信的进程首先要向系统提出动态申请,由系统(操作系统内核)返回一个本地惟一的端口号,进程再通过系统调用把自己和这个特定的端口联系在一起,这个过程叫绑定(Binding)。这样,每个要通信的进程都与一个端口号对应,传输层就可以使用其报文头中的端口号,把收到的数据送到不同的应用程序,如图3-2所示。图3-2传输层端到端通信在TCP/IP协议中,传输层使用的端口号用一个16

3、位的二进制数表示。因此,在传输层如果使用TCP协议进行进程通信,则可用的端口号共有216个。由于UDP也是传输层一个独立于TCP的协议,因此使用UDP协议时也有216个不同的端口。一些常用服务的TCP和UDP的众所周知端口号见表3-1和表3-2。表3-1常用的众所周知的TCP端口号表3-2常用的众所周知的UDP端口号256~1023之间的端口号通常都是由Unix系统占用的,以提供一些特定的Unix服务。现在IANA管理1~1023之间所有的端口号。任何TCP/IP实现所提供的服务都使用1~1023之间的端口号。客户端口号又称为临时端口号(即存在时间很短暂)。这是因为

4、客户端口号是在客户程序要进行通信之前,动态地从系统申请的一个端口号,然后以该端口号为源端口,使用某个众所周知的端口号为目标端口号(如在TCP协议上要进行文件传输时使用21)进行客户端到服务器端的通信。综上所述,我们知道两台要通信的主机,每一端要使用一个二元地址(IP地址,端口号)才可以完成它们之间的通信。3.2用户数据报协议UDP3.2.1UDP数据报的封装及其格式UDP协议在工作时是建立在IP协议之上的,UDP从进程的缓冲区接收进程每一次产生的输出,对每次输出都生成一个UDP数据报,然后把生成的UDP数据报直接封装在IP数据报中进行传输,因此在传输层使用UDP协议

5、时,发送端不需要发送缓冲区,如图3-3所示。图3-3UDP数据报的封装被封装在IP中的UDP数据报通过网络传输到目标主机的IP层后,由目标主机的UDP层根据目标端口号送到接收该数据的相应进程。UDP数据报的格式如图3-4所示。图3-4UDP数据报格式3.2.2UDP校验和的计算方法顾名思义,这个伪头部并不是UDP的真正组成部分,它只是为了UDP在进行差错检查时可以把更多的信息包含进去而人为加上的。伪头部的格式如图3-5所示。图3-5UDP伪头部格式伪头部包含IP头部的一些字段,填充域全填0,目的是使伪头部为16位二进制数的整数倍,这是计算校验和时所需要的。协议字段的

6、值为17(表示为UDP协议,见表2-4),UDP长度为UDP数据报的总长(当然不能包括虚构的伪头部)。源端在发送UDP数据报时,使用构造的UDP伪头部和UDP数据报计算出校验和(校验和计算方法与IP头部校验和的计算方法相同),然后填入UDP头部。3.2.3UDP协议的特点从UDP协议的数据报格式可以看出,UDP对数据的封装非常简单,主要是增加了端口号与校验和,然后就可以直接通过IP层进行传输了,因此它具有以下特点:(1)UDP是一种无连接、不可靠的数据报传输服务协议。(2)UDP对数据传输过程中惟一的可靠保证措施是进行差错校验,如果发生差错,则只是简单地抛弃该数据报

7、。(3)如果目标端收到的UDP数据报中的目标端口号不能与当前已使用的某端口号匹配,则将该数据报抛弃,并发送目标端口不可达的ICMP差错报文。(4)UDP协议在设计时的简单性,是为了保证UDP在工作时的高效性和低延时性。因此,在服务质量较高的网络中(如局域网),UDP可以高效地工作。(5)UDP常用于传输延时小,对可靠性要求不高,有少量数据要进行传输的情况,如DNS(域名服务)、TFTP(简单文件传输)等。3.3传输控制协议TCP3.3.1TCP报文段格式TCP报文段(常称为段)与UDP数据报一样也是封装在IP中进行传输的,只是IP报文的数据区为TCP报文段。TC

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。