UDP
udp是无连接的,即发送数据前不需要建立连接。
udp使用最大努力交付,即不保证可靠交付。
udp是面向报文的。应用层的报文下发后既不合并,也不拆分,由应用层控制报文长度。
udp没有拥塞控制,适用于实时性高的情景。
udp支持一对一,一对多,多对一,多对多的交互通信。
upd首部开销小。
TCP
tcp是面向连接的应用层协议。
tcp连接是一对一的。
tcp提供可靠交付的服务。无差错(CRC校验),不丢失(丢包重传),不重复,按序到达。
tcp提供全双工通信。
tcp是面向字节流的。tcp把数据看做是无结构的字节流来处理。tcp不保证发送方和接收方的数据块具有对应的大小关系,但保证接收方接受到的字节流和发送方发出的字节流是完全一样的。
udp、tcp比较:
udp无连接,tcp有链接。udp尽最大努力交付,tcp保证可靠交付。udp面向报文,tcp面向字节流。udp支持一对一、一对多、多对多、多对一,tcp支持一对一。udp没有拥塞控制,适合实时性高的情景,tcp提供拥塞控制。
OSI 七层协议
1、物理层:传输比特位(0,1),可以是电缆、光缆、无线通信等。
2、数据链路层:传输帧。每一帧包括数据和必要控制信息。
3、网络层:选择合适路由,传输ip数据报
4,、运输层:为进程间通信提供的通用的数据传输服务。运输层复用:多个应用层进程同时使用下面的运输层服务。运输层分用:运输层把受到的信息分别交付上面应用层中的相应进程。
5、应用层:实现进程间的通信和交互。应用层交互的数据单元叫做报文。
原文:https://www.cnblogs.com/afraidToForget/p/10134521.html