首页 > 编程语言 > 详细

1_20180706_Java面试之简说TCP/IP协议三大要点

时间:2019-12-24 17:01:25      阅读:111      评论:0      收藏:0      [点我收藏+]
    1. 三大握手;
    1. 超时重试;
    1. 滑动窗口;

三次握手

技术分享图片

上线的图片来自《图解TCP/IP》一书。

三次握手的目的,主要是为了提升网络通讯的成功率。

如图所示的:

  • 第一次握手:客户端会发送【SYNC包】给服务端,这是为了问问服务端,是不是可以进行通讯。

  • 第二次握手:服务端在接受到客户端发来的包之后,向客户端发送【SYN/ACK】数据包,用来告诉客户端,我这边是OK的,
    你能够向我发起连接。

  • 第三次握手:客户端收到了服务端回传的【SYN/ACK】数据包之后,再次向服务端发送标注有【ACK】的数据包,意思就是说
    我这里已经收到了你的回信,我们开始通信吧。

超时重试

如果是发送者向接受者发送数据包之后,过了一段时间(超时时间)之后,还是没有收到回信,
那么发送者就会认为这次包丢失了,需要进行重新补发。

这里需要注意一个现象:

如果发送者是同时发送了三个数据包,只有最后一个包是确认接收到了,那么会认为前两个包也接收到了。

滑动窗口

何为滑动窗口?

我们可以理解为是发送方式的协议。

假设说发送端一次发送包的大小为3,

发送端可以边发边接受,这样就可以显著提高通信的效率。

这里说的大小为3,就是滑动窗口的大小。

1_20180706_Java面试之简说TCP/IP协议三大要点

原文:https://www.cnblogs.com/gnuzsx/p/12091448.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!