TCP和UDP区别
-
面向非连接的协议,传输数据之前源端和终端无建立连接
-
不维护连接状态,支持同时向多个客户端传输相同的消息
-
数据包报头只有8个字节,额外开销小
-
吞吐量只受限于数据生成速率、传输速率以及机器性能
-
尽最大努力交付,不保证可靠交付,不需要维护复制的链接状态表
-
面向报文,不对应用程序提交的报文信息进行拆分或合并(发送方的UDP对应用程序交下来的报文在添加首部后就向下交付给IP层,既不拆分也不合并,而是保留这些报文的边界,因此应用程序需要选择合适的报文大小)
区别
-
TCP面向连接,UDP无连接。TCP有三次握手的连接过程;UDP适合消息的多拨发布,从单个点向多个点传输信息。
-
可靠性。TCP是可靠的,利用握手确认和重传机制提供了可靠性保证;而UDP则可能会丢失数据包,不知道有没有被接收。
-
有序性。TCP利用序列号保证了消息报的顺序交付,到达时可能无序,但TCP最终会排序;UDP不具备有序性。
-
速度。TCP速度比较慢,因为要创建连接保证消息的可靠性和有序性,需要做额外的事情就比较慢;UDP更适合对于速度比较敏感的应用,比如在线视频媒体,电视广播,多人在线游戏等。
-
量级。TCP属于重量级,UDP属于轻量级。体现在元数据的头大小,TCP是20个字节,而UDP是8个字节。

浙公网安备 33010602011771号