UDP与TCP
TCP/IP运输层有两个主要协议:用户数据报协议UDP与传输控制协议TCP。
UDP在传送数据之前不需要先建立连接。(也就是说:随时进行数据更新,随时发送信息。)
TCP则提供面向连接的服务。(即数据传送前必须先建立连接,数据传送结束后必须释放连接。)
UDP的主要特点:
1.UDP是无连接的,即发送数据之前不需要建立连接。
2.UDP使用尽最大努力交付,即不保证可靠交付。
3.UDP是面向报文的,所以应用程序必须选择合适大小的报文。
4.UDP没有拥塞控制。
5.UDP支持一对一,一对多,多对一,多对多的交互通信。
6.UDP首部开销小,只有8个字节。
(注意:UDP计算检验和的方法和计算IP数据报首部检验和的方法相似,但不同的是,IP数据报的检验和只检验IP数据报的首部,但UDP的检验和是把首部和数据部分一起都检验。——包括伪首部、首部和数据。)
TCP的主要特点:
1.TCP是面向连接的运输层协议。
2.每一条TCP连接只能有两个端点,即一对一。
3.TCP提供可靠交付的服务。
4.TCP提供全双工通信。
5.面向字节流。
(注意:TCP连接时,数据发送与数据接受时,数据大小都由接收方控制。)
要点:
当运输层采用面向连接的TCP协议时,尽管下面的网络是不可靠的,但这种逻辑通信信道就相当于一条全双工的可靠通信。但运输层采用无连接的UDP协议时,这种逻辑通信信道仍然是一条不可靠信道。
(注意:并不是不可靠就不能应用,TCP、UDP同等重要。)