TCP和UDP的区别
概念不同
TCP:传输控制协议(TCP,Transmission Control Protocol)。
UDP:用户数据报协议(UDP,User Datagram Protocol)。
- TCP面向连接, 传输数据时,需先进行三次握手,建立连接。UDP无连接,传输数据时无需建立连接,即无需三次握手直接发送数据,挺野的……;
- TCP通过确认和重传机制,提供可靠的服务。即通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达,而UDP不保证可靠传输,只是尽可能得交付;//所以当信道环境较差的情况下,尽量使用TCP传输,UDP丢包率很高。
- TCP面向字节流,即将数据看成一连串无结构的字节流,像水一样没有界限。UDP是面向报文的,有结构性。UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等);//之前同事做过测试,当带宽降低的时候,TCP传送速率明显降低了,UDP基本没有变化。这也是可靠UDP传输存在的意义。
- 每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信(组播使