### 计算机网络自顶向下方法:第三章重点知识点详解
#### 一、运输层概览
**3.1 概述和运输层服务**
##### 3.1.1 运输层与网络层的关系
- **网络层**:负责提供主机之间的逻辑通信,即在互联网中不同主机之间的数据传输。
- **运输层**:为运行在不同主机上的进程提供逻辑通信,主要在端系统中工作。
- **服务依赖性**:运输层协议的服务模型受到底层网络协议的影响。例如,由于IP协议采用的是“尽力而为”交付服务模式,因此运输层协议也必须基于这一基础构建其服务模型。
- **经典比喻**:通过家庭成员间的通信来比喻运输层和网络层的工作机制,其中主机相当于家庭,进程类似于家庭成员,运输层协议扮演着家中收发信件的角色,而网络层则代表邮政服务。
##### 3.1.2 因特网运输层概述
- **UDP (User Datagram Protocol)**:提供一种不可靠、无连接的服务。UDP支持最基本的进程间数据传输和差错检测,但不保证数据的可靠传输。
- **TCP (Transmission Control Protocol)**:提供一种可靠的、面向连接的服务。相比于UDP,TCP能够保证数据传输的可靠性,并支持流量控制和拥塞控制等高级特性。
#### 二、多路复用与多路分解
**3.2 多路复用与多路分解**
##### 3.2.1 无连接的多路复用与多路分解
- **UDP的多路复用**:在源主机中,从多个套接字收集数据,并为每一块数据封装上必要的首部信息形成报文段,然后将其传递到网络层。
- **UDP的多路分解**:在目标主机中,根据报文段中的目的端口号将数据交付给正确的套接字。
- **标识符**:UDP套接字由目的IP地址和目的端口号标识。此外,还包括源端口号和源IP地址等字段。需要注意的是,这些字段在发送和接收过程中会根据方向进行反转。
- **端口号**:16比特的数字,范围从0到65535。其中0到1023是周知端口号,用于常用的服务。
##### 3.2.2 面向连接的多路复用与多路分解
- **TCP的多路复用**:与UDP类似,但在TCP中,每个报文段由一个四元组标识,即源IP地址、源端口号、目的IP地址和目的端口号。
- **TCP的多路分解**:根据报文段中的四元组信息将数据交付给相应的套接字。
#### 三、无连接运输:UDP
**3.3 无连接运输:UDP**
##### 3.3.1 UDP报文结构
- **UDP报文首部**:包括四个字段,每个字段占用2字节(16位),分别是源端口号、目的端口号、长度以及校验和。
- **长度字段**:指示了整个UDP报文段的长度,即首部加上数据部分的总字节数。
##### 3.3.2 UDP校验和
- **UDP校验和**:用于检测UDP报文传输过程中的差错。计算方法为将UDP报文按16比特分组后进行加法运算,并将最终结果按位取反得到校验和值。如果传输没有出现错误,接收方计算的校验和应为全1的值。
#### 四、可靠数据传输原理
**3.4 可靠数据传输原理**
##### 3.4.1 构造可靠数据传输协议
- **rdt1.0**:在完全可靠信道的基础上,发送方无需等待接收方的确认即可发送下一数据。
- **rdt2.0**:自动重传请求协议(ARQ),通过差错检测机制和确认反馈机制实现可靠传输。
- **差错检测**:利用额外的比特位,如海明码或奇偶校验位来检测数据错误。
- **接收方反馈**:发送方在接收到接收方的确认后才能发送下一数据,如果接收到否定确认则需要重传数据。
- **重传**:接收方收到有误的数据时,发送方需要重传该数据。
- **rdt3.0**:比特交替协议,进一步增强了差错检测机制,增加了序列号管理以提高数据传输的可靠性。
通过以上总结,我们可以看出,《计算机网络》第三章的重点在于深入理解运输层的工作原理及其提供的服务类型,特别是UDP和TCP的特点及应用场合,以及如何通过多路复用和多路分解技术实现在复杂网络环境下的高效数据传输。此外,可靠数据传输原理及其协议的设计也是本章的重要内容之一。这些知识点对于深入理解计算机网络的运作机制至关重要,对于参加吉林大学计算机网络课程的学生来说,熟练掌握这些知识点将有助于更好地准备期末考试。