【计算机网络 - 基础问题】每日 3 题(二十五)

✍个人博客:Pandaconda-CSDN博客

📣专栏地址:http://t.csdnimg.cn/fYaBd

📚专栏简介:在这个专栏中,我将会分享 C++ 面试中常见的面试题给大家~

❤️如果有收获的话,欢迎点赞👍收藏📁,您的支持就是我创作的最大动力💪

📝推荐参考地址:https://www.xiaolincoding.com/(这个大佬的专栏非常有用!)

73. TCP 三次握手过程是怎样的?

TCP 是面向连接的协议,所以使用 TCP 前必须先建立连接,而建立连接是通过三次握手来进行的。三次握手的过程如下图:

74. 如何在 Linux 系统中查看 TCP 状态?

TCP 的连接状态查看,在 Linux 可以通过 netstat -napt 命令查看。

75. 为什么是三次握手?不是两次、四次?

TCP 建立连接时,通过三次握手能防止历史连接的建立,能减少双方不必要的资源开销,能帮助双方同步初始化序列号。序列号能够保证数据包不重复、不丢弃和按序传输。

不使用「两次握手」和「四次握手」的原因:

  • 「两次握手」:无法防止历史连接的建立,会造成双方资源的浪费,也无法可靠的同步双方序列号;
  • 「四次握手」:三次握手就已经理论上最少可靠连接建立,所以不需要使用更多的通信次数。
相关推荐
prinrf('千寻)1 小时前
MyBatis-Plus 的 updateById 方法不更新 null 值属性的问题
java·开发语言·mybatis
m0_555762901 小时前
Qt缓动曲线详解
开发语言·qt
FakeOccupational1 小时前
计算机科技笔记: 容错计算机设计05 n模冗余系统 TMR 三模冗余系统
笔记·科技
计算机小手1 小时前
零基础搭建!基于PP-ShiTuV2的轻量级图像识别系统(Docker+API部署指南)
图像处理·经验分享·开源软件
my_styles2 小时前
docker-compose部署项目(springboot服务)以及基础环境(mysql、redis等)ruoyi-ry
spring boot·redis·后端·mysql·spring cloud·docker·容器
亦世凡华、2 小时前
静态网站部署:如何通过GitHub免费部署一个静态网站
经验分享·github·github pages·站点部署
揽你·入怀2 小时前
数据结构:ArrayList简单实现与常见操作实例详解
java·开发语言
冬瓜的编程笔记2 小时前
【八股战神篇】MySQL高频面试题
数据库·mysql·面试
AA-代码批发V哥2 小时前
Math工具类全面指南
java·开发语言·数学建模
python算法(魔法师版)2 小时前
网络编程入门(一)
大数据·网络·网络协议·计算机网络