首先呢 TCP是面向连接的,有序的可靠的协议,然后UDP是与TCP相对的,即面向无连接的无序的不可靠的协议。
首先为什么说TCP是面向连接的呢,通过TCP传输的话是需要进行三次握手的,即客户端要向服务端发送数据,客户端要向服务端发送一个发送数据请求(SYN),进入发送状态SYN_SEND,服务端接收到SYN数据会以SYN-ACK应答表示接受到了这个消息,最后客户端再以ACK消息响应,通过这样,客户端与服务端就建立起了TCP连接。
然后TCP在传输数据的时候会给包编号,接收端如果漏收一个包,接受端会发送请求要发送端把漏收的包发送过来,而当漏收一个包却收不到那个包了的时候,排序在后面的包虽然接收到了但是不会显示出来,这也保证了tcp下的有序性(其实是显示的有序性),然后UDP是直接把包丢过去,而没有排序也不管对方有没有收到,所以说udp是不可靠 无序性的
而且UDP和TCP比较,UDP的速度会快于TCP,因为TCP里面有更多的机制去保证了有序性,可靠性等,需要通过重重判断,所以会比较慢,但是其实也不会很慢。
时间: 2024-10-28 21:05:19