tcp/udp协议的理解
TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来。
在我的理解上就是在发送数据前先对你的小伙伴进行请求,说:“我想给你发个数据包,可以吗?”然后你的小伙伴说:”可以呀,你什么时候发?“,然后你得再说一下确认给他说你发的时间:“我现在发过来了呦。”
而我们在进行着三次对话时,我们之间的通信连接是相对可靠的,不会掉线,但是呢?我们在对话过程中也会消耗额外的流量也就是说:面向连接的TCP会产生额外的通信量。
这种情况适合传输大量的数据,速度慢。
UDP(User Data Protocol,用户数据报协议)是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去!
在你向小伙伴发送数据包时,如果他的网络是通的,就会有对方主机已收到数据包的消息反馈回来。
在这个过程中,非常方便,通信效率高,但是呢?它的可靠性不高,QQ就是用UDP发送消息,因此有时就收不到消息。
这种情况适合传输少量的数据,速度快。