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

大厂面试题-网络四元组

四元组,简单理解就是在TCP协议中,去确定一个客户端连接的组成要素,它包括源

IP址、目标IP地址、源端口号、目标端口号。

正常情况下,我们对于网络通信的认识可能是这样(如图)。

服务端通过Server Socket建立一个对指定端口号的监听,比如8080。客户端通过目ip和端口就可以和服务端建立一个连接,然后进行数据传输。

但是我们知道的是,一个Server端可以接收多个客户端的连接,比如像这种情况(如图)。

当多个客户端连接到服务端的时候,服务端需要去识别每一个连接

并且(如图),TCP是全双工协议,也就是说数据允许在连接的两个方向上同时传输,这里的客户端,如果是反向通信,它又变成了服务端。

所以基于这两个原因,就引入了四元组的设计,也就是说,当一个客户端和服务端建立一个TCP连接的时候,通过源IP地址、目标IP地址、源端口号、目标端口号来确定一个唯一的TCP接。因为服务器的IP和端口是不变的,只要客户端的IP和端口彼此不OK了。

比如像这种情况(如图),同一个客户端主机上有三个连接连到Server端,那么这个时候源IP相同,源端口号不同。此时建立的四元组就是(10.23.15.3,59461,192.168.8.135,8080)

其中,源端口号每次建立连接的时候系统自动分配的。

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

相关文章:

  • 【通义千问“助力用户运营,无代码开发实现API连接广告推广和CRM】
  • 数据结构第一课-----------数据结构的介绍
  • Python武器库开发-常用模块之OS模块(十一)
  • Vectrosity 插件使用
  • 数据结构详细笔记——并查集
  • transformers-Generation with LLMs
  • maven之父子工程版本控制案例实战,及拓展groupId和artifactId的含义
  • 100量子比特启动实用化算力标准!玻色量子重磅发布相干光量子计算机
  • JAVA基础(JAVA SE)学习笔记(十)多线程
  • ChatGPT参数只有200亿?扩散代码模型,意外泄露
  • VR虚拟仿真教学在建筑学课堂中的应用
  • 竞赛 深度学习实现行人重识别 - python opencv yolo Reid
  • 当代都市的时尚先锋:气膜建筑的魅力
  • 品牌加盟商做信息展示预约小程序的效果如何
  • delphi 11.3 FastReport 多设备跨平台 打印之解决方法
  • 配置vue 环境
  • Visio文件编辑查看工具Visio Viewer for Mac
  • 现在软文发布平台都有哪些?如何在正规媒体发稿?
  • 【卷积神经网络】YOLO 算法原理
  • 云计算与ai人工智能对高防cdn的发展
  • Web3时代:探索DAO的未来之路
  • odbcinst文件
  • (CQUPT 的某数据结构homework)
  • Android页面周期、页面跳转
  • 腾讯云轻量应用镜像、系统镜像、Docker基础镜像、自定义镜像和共享镜像介绍
  • YOLOv8芒果独家首发 | 改进新主干:改进版目标检测新范式骨干PPHGNetv2,百度出品,提升YOLOv8检测能力
  • 工作测试点
  • 智慧医院—互联网医院系统带你体验数字化时代
  • eclipse Occurrence
  • 浏览器自动化脚本 Selenium WebDriver(Java)常用 API 汇总