6.1传输层概述
传输层提供高效、可靠的数据传输服务。
完成传输层任务的硬件或软件叫传输实体
传输实体
- 传输实体可以在操作系统的内核
- 可以以一个链接库的形式绑定到网络应用中
- 可以以一个独立的用户进程运行
- 甚至可以实现在网络接口卡(网卡)上
传输层利用网络层的服务,为它的上层应用层提供服务
与网络层提供的服务相似,传输层提供的服务也分为 面向连接的服务和无连接的服务
网络层运行在由承运商操作的路由器上,因此用户无法真正控制到网络层
把另一层放在网络层之.上,可以让用户能够控制到服务质量(some control)
传输层原语独立于网络层原语,而网络层原语会因为网络的不同而不同
传输层服务和网络层服务的作用范围不同:
网络层负责把数据从源机送达到目的机(主机到主机),而传输层负责把数据送达到具体的应用进程(端到端)
传输层协议数据单元
数据段(TPDU):是从传输实体发到对端传输实体的信息。
TPDUs 作为数据(载荷)被封装在分组(packet)中,由网络层传输交换。
分组作为数据(载荷)被封装在帧(frames)中,由数据链路层传输交换。
传输层的两个常用协议
- 用户数据报协议UDP
- 传输控制协议TCP
6.2用户数据报协议UDP
UDP是一个无连接的传输层协议。
UDP数据段头:
- UDP数据段包括4个字段共8字节的头部和数据两个部分
- 其中第3个字段,长度字段(域)表示:包括头部和数据总共有多少字节
- 第4个是校验和(checksum)是可选的,如果不计算校验和,则该字段/域置为0
- UDP数据段中最独特、最重要的字段是第1、2个字段,分别表示源端口和目的端口,都是用16比特表示的
校验和计算方法:
2^16=65536 端口范围0-65536
端口(port)被分成了三段:
定义一个自由端口&