【选择题】
- 网络核心部分中的路由器在转发分组时,不需使用()协议。
A.网络层 B.传输层
C.数据链路层 D.物理层 - 传输层可以通过()标识不同的应用进程。
A.物理地址 B.端口号
C.IP 地址 D.逻辑地址 - 以下不属于许多应用更适合用 UDP 的原因的是()
A.应用进程更容易控制发送什么数据以及何时发送 B.无需建立连接
C.保持连接状态 D.首部开销小 - 在 TCP 连接管理中,TCP 连接建立和断开连接,分别采用的是()机制。
A.三次握手和三次挥手 B.三次握手和四次挥手
C.四次握手和三次挥手 D.四次握手和四次挥手 - 拥塞控制可以在不同层实现,ATM 网络是在()进行拥塞控制。
A.应用层 B.传输层
C.网络层 D.数据链路层
【填空题】
- Internet 传输层提供面向连接服务的是_____________。
- 在典型的滑动窗口协议中,关于超时重发,__________协议采用累计确认,__________协议采用每个分组逐个确认。
- TCP 的拥塞控制的基本思想是_____________。
【应用题】
- 假设此前发送的数据报已正确接收,主机 A 向主机 B 连续发送了两个 TCP 报文段,其序号分别是 70和 100。试问:
(1) 第一个报文段携带了多少字节的数据?
(2) 主机 B 收到第一个报文段后发回的确认中的确认号应当是多少?
(3) 主机 B 收到第二个报文段后发回的确认中的确认号是 180,试问 A 发送的第二个报文段中的数据有多少个字节?
(4) 如果 A 发送的第一个报文段丢失了,但第二个报文到达了 B。B 在第二个报文段到达后向 A 发送确认。试问这个确认号应为多少? - 设 TCP 的拥塞窗口阈值 Threshhold 的初始值为 8(单位为报文段)。当拥塞窗口上升到 12 时网络发生了超时,TCP 使用慢启动和拥塞避免。试分别求出第 1 次到第 15 次传输的各拥塞窗口大小。你能说明拥塞窗口每一次变化的原因吗?
【选择题】
- B
解析:作为向上层应用提供端到端逻辑通信服务的传输层协议,只需在端系统中实现,而在路由器等网络设备中理论上无需实现传输层协议。即网络核心部分中的路由器在转发分组时都只用到下三层的功能(网络层,数据链路层,物理层),不需使用传输层协议。 - B
解析:传输层为了支持运行在不同主机、不同操作系统上的应用进程之间的通信,必须用统一的寻址方法对应用进程进行标识。TCP/IP 体系结构网络的解决方法就是在传输层使用协议端口号,通常简称为端口,在全网范围内利用“IP 地址+端口号”唯一标识一个通信端点。IP 地址唯一标识进程运行在哪个主机上,同一主机上传输层协议端口号则可以唯一对应一个应用进程。 - C
解析:有许多应用更适合用 UDP,原因主要有以下几点。1) 应用进程更容易控制发送什么数据以及何时发
送。2) 无需建立连接。3) 无连接状态。4) 首部开销小。 - B
解析:TCP 连接建立通过“三次握手”过程。TCP 释放连接过程为“四次挥手过程”(对称断连)。 - C
解析:拥塞控制可以在不同层实现,比较典型的是在网络层和传输层进行拥塞控制,例如,ATM 网络是在网络层进行拥塞控制,Internet 是在传输层进行拥塞控制(通过 TCP 实现)。
【填空题】
- TCP
解析:Internet 传输层提供面向连接服务的是 TCP,Internet 传输层提供无连接服务的传输层协议是 UDP。 - GBN;SR
解析:典型的滑动窗口协议有 GBN 协议和 SR 协议。GBN 协议的发送窗口大于等于 1,接收窗口等于 1;GBN 协议的发送方如果超时,则重发所有已经发送但未收到确认的分组;GBN 协议采用累计确认。SR 协议采用每个分组逐个确认;每个已发送分组需要独立计时,如果某个分组超时,只需重发该分组;SR 协议的发送窗口和接收窗口都大于 1。 - AIMD
解析:TCP 的拥塞控制采用的也是窗口机制, 通过调节窗口的大小实现对发送数据速率的调整。窗口调整的基本策略是网络未发生拥塞时,逐渐“加性”增大窗口大小,当网络拥塞时“乘性”快速减小窗口大小,即 AIMD。
【应用题】
- 答案及解析:
(1) TCP 的序号是对每个应用层数据的每个字节进行编号,因此每个 TCP 报文段的序号是该段所封装的应用层数据的第一个字节的序号。 所以第一个报文段的第一个字节的序号是 70,第二个报文段的第一个字节的序号是 100。故第一个报文段的数据序号是 70 到 99,共 30 个字节。
(2) 确认序号是期望从对方接收数据的字节序号,即该序号对应的字节尚未收到,该序号之前的字节已全部正确接收,也就是说,TCP 采用累积确认机制。将已连续接收到的应用层数据的最后一个字节的序号加 1,作为确认序号,向发送方发送确认段。故已接收的数据的最后一个字节是 99,加 1 作为确认序号。故主机 B 收到第一个报文段后发回的确认中的确认号为 99+1=100。
(3) TCP 的序号是对每个应用层数据的每个字节进行编号,因此每个 TCP 报文段的序号是该段所封装的应用层数据的第一个字节的序号。确认序号是期望从对方接收数据的字节序号,即该序号对应的字节尚未收到,该序号之前的字节已全部正确接收,也就是说,TCP 采用累积确认机制。将已连续接收到的应用层数据的最后一个字节的序号加 1,作为确认序号,向发送方发送确认段。第二个报文段最后一个字节是确认序号减 1 为 179,已知第二个报文段的第一个字节的序号是 100,故长度是 179-100+1=80个字节。
(4) TCP 的序号是对每个应用层数据的每个字节进行编号,因此每个 TCP 报文段的序号是该段所封装的应用层数据的第一个字节的序号。确认序号是期望从对方接收数据的字节序号,即该序号对应的字节尚未收到,该序号之前的字节已全部正确接收,也就是说,TCP 采用累积确认机制。将已连续接收到的应用层数据的最后一个字节的序号加 1,作为确认序号,向发送方发送确认段。第一个报文段的第一个字节的序号是 70,即已连续接收的应用层数据的最后一个字节的序号是 69,所以当报文段到达后发送的确认序号是 69+1=70。 - 答案及解析:拥塞窗口大小依次为 1、2、4、8、9、10、11、12、1、2、4、6、7、8、9。如图所示。
1、2、4、8 执行的是慢启动算法,所以是按着指数规律递增,当拥塞窗口是 8 时,达到了拥塞窗口阈值Threshhold 的初始值,所以开始执行拥塞避免算法“加法增大”,当拥塞窗口达到 12 时发生了超时,将新的阈值设置为 Threshhold=12/2=6,新的拥塞窗口设置为 1,重新执行慢启动的算法。当传输次数达到 11 次的时候,拥塞窗口达到了新的拥塞窗口阈值 Threshhold=6,所以又开始执行“加法增大”。