第三,TCP、UDP啥区别
1.可不可靠,TCP是可靠的,UDP是提供不可靠的服务,说了老半天,啥是可靠?TCP的可靠是双方三次握手建立连接?,开启一条连接进行传递数据,传送的数据能够无误差、不丢失、不重复,怎么做到的呢?通过滑动窗口协议。
2.有无连接,人家UDP没有建立连接,可不管你死活,把数据发出去就完事儿了,也不要你回复。
3.拥塞控制,都说了没有连接,当然也不会进行计算网络状况的啦。很多实时应用(视频通话)都是要求恒定速率发送。
第四,三次握手
*****文字版
1.A发请求给B:我要建立连接
2.B回复A:收到,同意
3.A发给B?:收到,开启连接
*****以上就是三次握手,下面是字段版本
1.SYN=1,seq=x
2.SYN=1,ACK=1,ack=x+1,seq=y
3.ACK=1,ack=y+1,seq=x+1
*****啥意思的?
第一次握手时,A发SYN=1(同步字段)表示我是要发起连接请求的。第二次,B回复ACK=1表示收到你的消息,SYN=1表示这个连接请求同意啦。第三次A再次回复B,表示收到你的消息。这样双方都同意了连接,可靠!
*****这里提出个问题,为啥子人家B都发送了同意,A还要再发一次收到呢?
在没有第三次握手时,很久很久以前A发送了请求,但是由于网络问题,过了老半天才到B,都这么久了B没回复,A肯定觉得B鸽了它。但是B认为这是一个新请求,便发送了同意给A,此时由于没有第三次,所以就这样建立起了连接。A早忘记,都不发消息,这个连接就一直保持着,老浪费资源了。
在有三次握手时,A不发第三次收到消息,那么B就认为是个很久之前的请求,便丢弃。