1. 运输层
1.1 两种协议:TCP和UDP。
(1)TCP:提供了一种可靠的数据传输服务,TCP是面向连接的,只有链接建立起来后才能通信。
(2)UDP:是把数据直接发出去,而不管对方是不是在收信,就算是UDP无法送达,也不会产生ICMP差错报文。
1.2 上下层
(1)TCP,UDP不知道数据在信道中经过了哪些路由器,
(2)网络层(那些路由器)不知道TCP,UDP是否建立了链接
1.3 端口
端口是用来标志应用层的进程。
端口用一个 16 bit 端口号进行标志。
端口号只具有本地意义,即端口号只是为了标志本计算机应用层中的各进程。在因特网中不同计算机的相同端口号是没有联系的
2. UDP
2.1 概述
(1)UDP 只在 IP 的数据报服务之上增加了很少一点的功能,即端口的功能和差错检测的功能
(2)优点
》发送数据之前不需要建立连接
》UDP 的主机不需要维持复杂的连接状态表。
》UDP 用户数据报只有8个字节的首部开销。
》网络出现的拥塞不会使源主机的发送速率降低。这对某些实时应用是很重要的。》1 vs 1, 1 vs 1+, 1+ vs 1, 1+ vs 1+
2.2 数据包首部
3. TCP
3.1 优点
(1)面向连接
(2)可靠
(3)全双工
(4)面向字节流
3.2 格式
序号:本报文的ID号(TCP 连接中传送的数据流中的每一个字节都编上一个序号。序号字段的值则指的是本报文段所发送的数据的第一个字节的序号)
确认号:下一报文的序号
URG = 1 :紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)
ACK = 1 : 确认号字段才有效
PSK = 1 :尽快交付给接受进程
RST = 1 :严重错误,重新连接
SYN = 1 :链接请求
FIN = 1 :链接结束
选项字段:长度可变。TCP 只规定了一种选项,即最大报文段长度 MSS (Maximum Segment Size)。MSS 告诉对方 TCP:“我的缓存所能接收的报文段的数据字段的最大长度是 MSS 个字节。”