一:运输层
运输层向它上面的应用层提供通信服务,属于通信部分的最高层,同时也是用户功能的最底层。并且只有主机的栈才有运输层,在进行远程通信时候,经过路由器最高只到网际层。
两台主机进行通信,其实就是两台主机的应用进程进行通信,通信的终点不是主机,而是主机之中的进程。端到端的通信是应用进程之间的通信。
复用和分用的含义:
所谓复用就是指发送方不同的应用进程都可以使用同一个运输层来传输数据。
分用是运输层接收到网际层在剥去报文的首部之后可以把数据正确交付到应用进程,是谓分用。
注意:网络层为主机之间提供逻辑通信,而运输层为应用之间提供逻辑通信。
二:运输层的两个协议
1:UDP协议 用户数据报协议 无连接的,此时逻辑通信信道是一条不可靠的信道。
2:TCP协议 传输控制协议 ,面向连接的,这时候虽然下面的网络是不可靠的,但是这种逻辑信道相当于一条双工的可靠信道。
3:二者在通信时传输的数据叫做 运输协议数据单元 分别叫做 TCP数据包 UDP用户数据报
4:UDP在发送数据之前需要先建立连接,远程主机接受到报文之后不需要给定任何确认
而TCP面向连接,在传输数据之前必须建立连接,过程也就是三次握手。 会增加 许多开销,比如 确认,流量控制、计时器、连接管理等。
一般来说 电子邮件、万维网、远程终端接入、文件传输 等使用TCP,其他使用UDP
三:运输层的端口
在陨石层使用端口号,是应用层的各种协议进行与运输实体进行层间的交互的一种地址。
在TCP和UDP的首部之中都有源端口和目的端口。
熟知端口号
应用程序 | FTP | TELNET | SMTP | DNS | TFTP | HTTP | SNMP | SNMP | HTTPS |
端口号 | 21 | 23 | 25 | 53 | 69 | 80 | 161 | 162 | 443 |
另一类叫做登记端口 1024-49151之间
客户端使用的端口 49151-65535
四:UDP详解
1:UDP特性
(1):UDP是无连接的
(2):UDP使用尽最大努力交付
不保证可靠交付 主机不需要维持复杂的连接状态表
(3):UDP是面向报文的
对应用层传下来的报文,直接添加头部,不进行拆分,IP层进行分片,会降低IP层的效率
(4):UDP没有拥塞控制
网络的拥塞不会使源主机的发送数率降低。
(5):UDP支持一对一、一对多、多对多、多对一
(6):UDP的首部开销小
只有8个字节比TCP的20个字节首部端很多
2:UDP首部格式
源端口 目的端口 长度 检验和