TCP和UDP基本原理
TCP/IP协议族的传输层协议主要包括tcp协议和udp协议。而两者的主要区别与用途在于,TCP是面向连接的可靠的传输层协议。它支持在并不可靠的网络上实现面向连接的可靠的数据传输UDP是无连接的传输协议,主要用于支持在较可靠的链路上的数据传输,或用于对延迟较敏感的应用.下面将详细介绍两种协议的原理。
由于他们都是传输层的协议,所以我们首先要考虑到传输层的做用。传输层主要提供面向连接或无连接的服务、可靠地传输数据、维护连接状态、对应用层数据进行分段和封装、实现多路复用,执行流量控制。
首先介绍TCP,tcp的特点是:三次握手,确认机制,端口号(多路复用),***(丢失检测、乱序重排),完整性校验,以及窗口机制。下面是tcp封装数据报
其中红色显示的上文我们已经介绍过其主要作用。TCP协议提供的是可靠地、面向连接的传输控制协议,即在传输数据前要先建立逻辑连接3个过程。TCP提供端到端、全双工通信;采用字节流方式,如果字节流太长,将其分段,提供紧急数据传送功能。
相对于TCP来说,UDP协议要更为简单一些。UDP不提供数据包分组组装和不能对数据包进行排序的缺点,也就是说当报文发送之后,是无法得知其是否安全完整到达的。下面是UDP报文的结构
下面我们将介绍两者的一些区别
转载于:https://blog.51cto.com/chenyuqi/1302318