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

计算机网络知识普及之四元组

在涉及到TCP/UDP等IP类通信协议时,存在四元组概念

这里只是普及使用

先来一些前置知识,什么是IP协议?

IP协议全称为互联网协议,处于网络层中,主要作用是标识网络中的设备,每个设备的IP地址是唯一的。

在网络传输中,IP地址主要用于数据包的寻址。

目前IP协议主要有两个版本,IPv4和IPv6,这两个版本目前都在使用,他们的区别为前者只能代表2的32次方个IP,后者能代表2的128次方个IP。

IPv4示例:223.5.5.5

IPv6示例:2001:0db8:85a3:0000:0000:8a2e:0370:7334

什么是TCP协议

TCP协议全称为传输控制协议,它是面向连接的,处于传输层中,主要作用是规定网络传输过程中的一些传输规范、控制规范等。

什么是HTTP协议?HTTPS协议?

HTTP协议称之为超文本传输协议,处于应用层中,主要作用是规定网络传输中特定的一些数据规范,并且优化TCP的部分性能。

HTTPS可以简单理解为安全版本的HTTP。

这些协议之间的关系是什么

简单来说,IP协议负责找到数据传输的路径,TCP协议确保数据传输的可靠性,而HTTP和HTTPS协议则定义了数据的格式和如何在网络上请求和传输数据。HTTPS在HTTP的基础上增加了SSL/TLS层,提供了数据传输的安全性保护。

额外补充:什么是TCP三次握手

三次握手指的是TCP协议在与对方服务器建立连接时保障其连接可靠的手段,因为其建立连接时有三个动作,所以被称为三次握手。

在客户端与服务器建立连接时,只有当三次握手成功后,才会将连接设置为可以交换数据的状态。

这里要注意,三次握手的过程中本质上从网络层面来讲已经建立了连接,只是TCP协议为了确保可靠,在经过三个网络之间的动作后,才允许客户端与服务器之间进行数据的交互。

那么三次握手具体怎么操作的呢?

第一次握手:客户端向服务端发送一个报文,表示希望建立连接

第二次握手:服务端向客户端发送一个报文,表示确认建立连接

第三次握手:客户端向服务端发送一个报文,表示收到服务端的确认报文,此时连接正式建立。

这个过程不仅确保了双方的接收和发送能力都得到确认,还在握手过程中的报文里确认了双方的信息,所以在三次握手完成时,TCP协议里就认为该连接属于正常可交互数据的。在Linux中可以使用tcpdump来直观的查看三次握手过程。

四元组是什么?

进入正题,四元组的概念存在于所有使用IP协议并是面向连接的通信协议都有的特点。

假设目前有一个客户端访问服务端,我们都知道服务端需要监听一个端口,客户端需要通过服务端的IP和端口来找到提供服务的程序。

而四元组在TCP/UDP连接中,是用于对连接的标识,其标识了客户端、服务端的信息。

这些信息包括:

客户端IP、客户端Port、服务端IP、服务端Port。

用这些信息来标识当前连接,要注意,每一个连接都是唯一不会重复的。

使用工具类直观的感受到四元组的存在:打开Windows性能监视器

例如选中的向日葵客户端,它现在建立的一条连接中,标识了客户端IP为192.168.31.96,客户端端口为:49565,服务端IP为:122.246.12.46,服务端端口为443。

可能又有疑问?

为什么系统中客户端请求服务端也需要有端口号的存在?

这是因为在IP类通信协议中,网络传输时需要根据IP和端口号来定位相对应接收网络数据的程序,所以在我们要知道,在一个四元组中,可以很精确的确认来源程序和目的程序,且在整个网络环境中不会重复。

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

相关文章:

  • 深度探讨网络安全:挑战、防御策略与实战案例
  • “穿越时空的机械奇观:记里鼓车的历史与科技探秘“
  • DevOps CMDB平台整合Jira工单
  • Vue-路由
  • 【Rust入门教程】安装Rust
  • Character.ai因内容审查流失大量用户、马斯克:Grok-3用了10万块英伟达H100芯片
  • Spring源码九:BeanFactoryPostProcessor
  • 大模型笔记1: Longformer环境配置
  • 类和对象(提高)
  • 免费最好用的证件照制作软件,一键换底+老照片修复+图片动漫化,吊打付费!
  • antfu/ni 在 Windows 下的安装
  • Linux 生产消费者模型
  • 深入浅出:MongoDB中的背景创建索引
  • Spring事务十种失效场景
  • JELR-630HS漏电继电器 30-500mA 导轨安装 约瑟JOSEF
  • 如何实现一个简单的链表或栈结构
  • 抖音外卖服务商入驻流程及费用分别是什么?入驻官方平台的难度大吗?
  • “小红书、B站崩了”,背后的阿里云怎么了?
  • nginx的配置文件
  • 艾滋病隐球菌病的病原学诊断方法包括?
  • jQuery Tooltip 插件使用教程
  • 访问者模式在金融业务中的应用及其框架实现
  • .npy格式图像如何进行深度学习模型训练处理,亲测可行
  • XFeat快速图像特征匹配算法
  • 普元EOS学习笔记-低开实现图书的增删改查
  • 动态住宅代理IP详细解析
  • 等保2.0 实施方案之信息软件验证要求
  • 【LeetCode的使用方法】
  • 【SGX系列教程】(二)第一个 SGX 程序: HelloWorld,linux下运行
  • 网页报错dns_probe_possible 怎么办?——错误代码有效修复