TCP(Transmission Control Protocol,传输控制协议)
-
面向连接的协议:正式发送数据前,必须与对方建立连接,采用三次握手来完成连接的建立,比如主机A向主机B拷贝文件
1.主机A向主机B发送【连接请求】的数据包:“我想给你发文件,可以吗?”
2.主机B向主机A发送【同意和要求同步】的数据包:“可以,你什么时候发?”
3.主机A向主机B发送【确认同步】的数据包:“现在就发,你接着吧?”
-
保证数据传输可靠性:采用“重新发送”和“ACK”来保证数据传输的可靠性
1.发送者等待一段时间,如果没有收到当前发送数据包的ACK确认信息,发送方会重新发送数据包
2.若网络拥塞,重新发送将导致发送的数据包重复,接收方可以使用数据包的序号判定是否重复并丢弃
-
网络流量:TCP协议采用三次握手的方式,实际上主机A发送数据包给主机B,到主机B完全收到数据包后,消耗的网络流量=数据包大小+三次握手的开销
UDP(User Data Protocol,用户数据报协议)
- 面向非连接的协议:不与对方建立连接,直接把数据包发送过去
- 特性:通信效率高,可靠性不如TCP