当前位置: 首页 > news >正文

VIVO Java开发面试题及参考答案

TCP 能不能两次握手?

TCP 不能两次握手。

在 TCP 连接建立过程中,三次握手是必不可少的。第一次握手是客户端向服务器发送一个带有 SYN(同步序列号)标志的 TCP 报文段,这个报文段包含了客户端初始的序列号。这一步的主要目的是告诉服务器,客户端想要建立连接,并且让服务器知道客户端的初始序列号,用于后续数据传输的排序和确认等操作。

如果只有两次握手,当服务器收到客户端的 SYN 报文后,回复一个 SYN - ACK(同步 - 确认)报文,假设这个时候就认为连接建立成功了。会存在一个问题,因为服务器无法确认客户端是否收到了自己的 SYN - ACK 报文。如果客户端没有收到这个报文,而服务器却认为连接已经建立,那么服务器就会一直等待客户端发送数据,造成服务器资源的浪费。而且,这种情况下如果有恶意攻击者向服务器发送大量的 SYN 报文,然后不回复服务器的 SYN - ACK 报文,就会导致服务器产生大量的半连接,引发服务器的性能问题,这就是所谓的 SYN 洪水攻击。所以,两次握手是不能保证 TCP 连接可靠建立的,必须要通过三次握手来确保双方都明确知道连接已经成功建立。

TCP 三次握手,为什么要第三次ÿ

http://www.lryc.cn/news/510453.html

相关文章:

  • C# Winfrom chart图 实例练习
  • iOS从Matter的设备认证证书中获取VID和PID
  • 带着国标充电器出国怎么办? 适配器模式(Adapter Pattern)
  • 破解海外业务困局:新加坡服务器托管与跨境组网策略
  • Mybatis-Plus快速入门
  • Chrome被360导航篡改了怎么改回来?
  • Coding(Jenkinsfile)+ Docker 自动化部署 Springboot —— 图文细节和一些注意事项说明
  • docker django uwsgi 报错记录
  • 数据分析思维(五):分析方法——假设检验分析方法
  • 【ES6复习笔记】集合Set(13)
  • 基础爬虫案例实战
  • 深度学习工作:从追求 SoTA 到揭示新现象
  • 学习记录—正则表达式-基本语法
  • 智慧农业物联网传感器:开启农业新时代
  • 普通人怎么入门学习并使用AI?
  • Java中处理if-else的几种高级方法
  • 前端知识补充—CSS
  • 企业架构学习笔记-数字化转型
  • Linux网络——TCP的运用
  • Vue3之状态管理Vuex
  • DPO(Direct Preference Optimization)算法解释:中英双语
  • Hostapd2.11解析笔记
  • js控制文字溢出显示省略号
  • WPF+MVVM案例实战与特效(四十七)-实现一个路径绘图的自定义按钮控件
  • 操作002:HelloWorld
  • odoo中@api.model, @api.depends和@api.onchange 装饰器的区别
  • 有哪些精益工具可以帮助企业实现转型?
  • 以太网帧结构
  • QT调用Sqlite数据库
  • 前端