7-01(1)试说明运输层的作用网络层提供数据报或虚电路服... 下载本文

内容发布更新时间 : 2024/5/20 4:26:16星期一 下面是文章的全部内容请认真阅读。

第七章 运输层

7-01(1)试说明运输层的作用。网络层提供数据报或虚电路服务对上面的运输层有何影响?

(2)当应用程序使用面向连接的TCP和无连接的IP时,这种传输是面向连接的还是面向连接的?

(3)接收端收到有差错的UDP用户数据报时应如何处理? 答:(1)从通信和信息处理的角度来看,运输层向它上面的应用层提供通信服务。运输层为

应用进程之间提供端到端的逻辑通信。

(2)都是。这要从不同层次来看。在运输层是面向连接的,在网络层则是无连接的。 (3)丢弃。

7-05 试用具体例子说明为什么在运输连接建立时要使用三次握手。说明如不这样做可能会

出现什么情况。

答:3次握手完成两个重要的功能,既要双方做好发送数据的准备工作(双方都知道彼此已

准备好),也要允许双方就初始序列号进行协商,这个序列号在握手过程中被发送和确认。

现在把三次握手改成仅需要两次握手,死锁是可能发生的。作为例子,考虑计算机A和B之间的通信,假定B给A发送一个连接请求分组,A收到了这个分组,并发送了确认应答分组。按照两次握手的协定,A认为连接已经成功地建立了,可以开始发送数据分组。可是,B在A的应答分组在传输中被丢失的情况下,将不知道A是否已准备好,不知道A建议什么样的序列号,B甚至怀疑A是否收到自己的连接请求分组。在这种情况下,B认为连接还未建立成功,将忽略A发来的任何数据分组,只等待连接确认应答分组。而A在发出的分组超时后,重复发送同样的分组。这样就形成了死锁。

7-10 设TCP使用的最大窗口为64KB,即64*1024字节。而传输信道貌岸然的带宽可认为 是

不受限制的。若报文段的平均时延为20ms,问所能得到的最大的吞吐量是多少?

答:可见在报文段平均往返时延20ms内,发送方最多能发送64×1024×8比特,所以最大的

吞吐量为=64×1024×8÷(20×10-3)=26214400bit/s=26.21Mbit/s

7-13 用TCP传送512字节的数据,设窗口为100字节,而TCP报文段每次也是传送100字

节的数据。再设发送端和接收端的起始序号分别选为100和200。试画出类似于图7-15的工作示意图,从连接建立阶段到连接释放都要画上。 答:

主机ASYN,SEQ=100,WIN=100SYN,ACK,SEQ=200,ACK=101ACK,SEQ=101,ACK=201SEQ=101SEQ=101ACK=301SEQ=301SEQ=401ACK=501SEQ=501ACK=513FIN,SEQ=513ACK,SEQ=201,ACK=514FIN,ACK,SEQ=201,ACK=514ACK,SEQ=514,ACK=202主机B

7-17 若一个应用进程使用运输层的用户数据包UDP。但继续向下交给IP层后,又封装成IP

数据报。既然都是数据报,是否可以跳过UDP而直接交给IP层?那些功能UDP提供了IP没有提供? 答:(见课后题解)

7-21 为什么在TCP首部中的最开始的4个直接是TCP的端口号? 答:(见课后题解)