801
试说明运输层的作用。网络层提供数据报或虚电路服务对上面的运输层有何影响?
答:(1)运输层是资源子网与通信子网的界面和桥梁,它负责端到端的通信,既是七层模型中负责数据通信的最高层,又是面向网络通信的低三层和面向信息处理的最高三层之间的中间层,起承上启下的作用。
(2)若通信子网所提供的服务越多,运输协议就可以做得越简单。若网络层提供虚电路服务,那就能保证报文无差错、不丢失、不重复且按序地进行交付,因而运输协议就很简单。但若网络层提供的是不可靠的数据报服务,则就要求主机有一个复杂的运输协议。在极端情况下可以不需要运输层。
804 试用具体例子说明为什么在运输连接建立时要使用三次握手。 说明如不这样做可能 会出现什么情况。
解答:
我们知道,
3
次握手完成两个重要功能,既要双方做好发送数据的准备工作(双方都知道彼此已准备好), 也要允许双方就初始序列号进行协商, 这个序列号在握手过程中被发送与确认。
现在把三次握手改成仅需要两次握手,死锁是可能发生的。作为例子,考虑计算机
A
和 B 之间的通信。假定
B
给
A
发送一个连接请求分组,
A
收到了这个分组,并发送了确认应答分组。按照两次握手的协定,A
认为连接已经成功地建立了,可以开始发送数据分组。可是,B 在
A
的应答分组在传输中被丢失的情况下,将不知道
A
是否已准备好,不知道
A
建议什么样的序列号用于 A
到
B
的交通, 也不知道
A
是否同意
B
所建议的用于
B
到
A
交通的初始序列号,B
甚至怀疑
A
是否收到自己的连接请求分组。在这种情况下,
B
认为连接还未建立成功,将忽略 A
发来的任何数据分组,只等待接收连接确认应答分组。而
A
在发出的分组超时后,重复发送同样的分组。这样就形成了死锁。
805 一个 TCP 报文段中的数据部分最多为多少个字节?
解答:
整个
TCP
报文段必须适配
IP
分组
65535
字节的载荷段。因为
TCP
头最少
20 个字节,所以仅剩下
65515
字节用于
TCP
数据。