TCP(传输控制协议)和UDP(用户数据报协议)是传输层最重要的两种协议,它们有以下区别:
- 连接方式
- TCP:面向连接,就像打电话,在正式通信前必须与对方建立连接,通过“三次握手”来实现,数据传输完毕后还要通过“四次挥手”关闭连接。例如,在使用TCP协议进行数据传输时,客户端和服务端先建立一个“通道”,且这个通道只能够被客户端和服务端使用,所以TCP传输协议只能面向一对一的连接。
- UDP:无连接,类似发短信,不管对方状态如何,直接发送数据,无需建立和关闭连接的过程。
- 数据传输可靠性
- TCP:可靠的传输协议。它通过校验和、确认和重传等机制保证数据无差错、不丢失、不重复且按序到达。比如发送方发送数据后会等待接收方的确认,没收到确认就会重传。
- UDP:不可靠的传输协议,不保证数据按序完整到达,可能会出现数据丢失、重复或乱序的情况,发送方发送数据后不会管数据是否正确到达。
- 传输效率
- TCP:由于要进行连接管理、数据确认、重传等操作,相对耗费资源,传输效率较低。
- UDP:无需连接建立和复杂的控制机制,传输速度快、延迟低,效率高。
- 传输方式
- TCP:使用流式传输,数据以连续的数据流形式发送。
- UDP:使用报文传输,数据被封装成独立的报文,每个报文独立进行传输。
- 拥塞控制与流量控制
- TCP:具有拥塞控制和流量控制机制,能根据网络状况调整发送速率,避免网络拥塞,确保接收方有足够空间接收数据。
- UDP:没有拥塞控制和流量控制机制,不管网络状况如何,都以恒定速率发送数据,可能导致网络拥塞或数据丢失。
- 头部开销
- TCP:头部固定为20字节,包含更多控制信息,如序列号、确认号、窗口大小等,开销较大。
- UDP:头部固定为8字节,只包含源端口、目的端口、长度、校验和等基本信息,开销小。
- 通信模式
- TCP:通常用于一对一的通信。
- UDP:支持一对一、一对多、多对一和多对多的通信模式。
- 适用场景
- TCP:适用于对可靠性要求高的场景,如文件传输、电子邮件、网页浏览等,这些场景中数据的完整性和顺序性很重要。
- UDP:适用于实时性要求高、能容忍一定数据丢失的场景,如视频流、音频流、在线游戏、实时监控等。
从 一般 的概念来 讲, 将网络 互相连接 起来要使 用 一些 中 间设备。 根据 中间设 备 所在的
层 次, 可以 有以下四种 不同的 中间设 备:
(1)物理 层使 用的 中间设备 叫 作转发器(repeater)。
(2) 数据链路 层使 用的中间设备 叫作网桥或 桥接器(bridge),以 及交换机(switch)。
(3)网络层使用的中间设备 叫 作路由器(router 气
(4)在网 络层以 上使用的中 间设 备 叫作网关(gateway)。 用 网关连接两个不 兼容 的系统 需
要 在高层进行协议的转换。