5 传输层
5.1 传输层概述
-
是什么?是主机才有的层次,为上面的应用层提供服务
-
能够干什么?
-
提供进程和进程之间的逻辑通信,而网络层提供的是主机与主机之间的逻辑通信
-
分用和复用(使用同样的传输协议)
- 复用:应用层所有的应用进程都可以通过传输层再传输到网络层
- 分用:传输层从网络收到数据后交付指明的应用进程
-
对传输层收到的报文进行差错检测
-
两种协议TCP和UDP协议
-
-
传输层的寻址与端口
- 逻辑端口/软件端口
- 服务端端口号
- 熟知端口号:0~1023:给TCP/IP最重要的一些应用程序,让所有用户都知道
- 登记端口号:1024 ~ 49151:为没有熟知端口号的应用程序使用的
- 客户端端口号:49152 ~ 65535 :仅在客户进程运行时才动态选择
- 服务端端口号
- 端口是传输层的SAP,标识主机中的应用进程
- 端口号只有本地意义,在因特网中不同计算机的相同端口是没有联系的
- 端口号长度:16bit,能表示65536个不同的端口号,常见的进程端口号
- 逻辑端口/软件端口
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UCMRoidI-1651899760521)(/Users/qinjianquan/Downloads/IMG_B702EF553F25-1.jpeg)]
5.2 UDP协议
传输层有两个协议:UDP和TCP
UDP特点:
1. 无连接,无需确认
2. 不可靠、时延小,适用于小文件,由应用层保证可靠交付
3. UDP是面向报文的,应用层的报文一直会被传递下去
4. UDP无拥塞控制,适合实时应用
5. UDP首部开销比较小,8B,TCP20B
UDP首部格式:
首部字段
16位源端口号 | 16位目的端口号 |
---|---|
16位UDP长度 | 16位UDP检验和(检验整个UDP数据报是否出错,错则丢弃) |
数据(如果有) |
---|
UDP校验
-
伪首部
IP源地址 IP目的地址 0 17(协议字段) UDP长度 -
UDP用户数据报首部
源端口 | 目的端口 | 长度 | 检验和 |
---|
-
I