php代理ip访问网站/谷歌搜索引擎首页
计算机网络入门 – 常用网络协议
1.分类
1.1 模型回顾
计算机网络细分可以划为七层模型,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。而上三层可以划为应用层中。
1.2 分类
1.2.1 应用层
为用户的应用进程提供网络通信服务,包括DNS协议、HTTP协议和HTTPS协议。
1.2.2 传输层
负责两台主机之间的数据传输,将数据从发送端传输到接收端,其中包括TCP和UDP协议。
1.2.3 网络层
负责传输的地址管理和路由选择,在众多复杂网络环境中确定一条合适的路径,包括IP协议。
1.2.4 数据链路层
负责设备之间数据帧的传输和识别,将网络层传递的数据报封装成帧,在处于同一个数据链路节点的两个设备之间传输,包括ARP协议和MTU协议。
1.2.5 物理层
负责光电信号传输,实现相邻计算机节点之间比特流透明传输。
1.3 意义
无论是将网络模型分为五层还是七层,都是为了简化网络设计的复杂性,通信协议采用分层结构,各层之间相互独立但又协同工作。在设计一个复杂庞大的框架时,尽可能使之间的功能解耦是一种很明智的做法。
2.应用层协议
2.1 概念
应用层网络负责各个程序之间通信。发生网络传输一个数据时,先由应用层对数据按照对应的协议封装,并交给下一层传输层,经过层层网络传输后数据到达接收端,又从下往上分用。
2.2 协议
2.2.1 DNS协议
DNS建立在TCP和UDP通信协议上,默认端口为53。正常传输通过UDP进行通信,当报文较长时切换至TCP协议。其功能是将便于人类理解的网络域名(如:www.baidu.com)转换为IP地址,而这种映射关系则保存于DNS服务器中。总体来说,域名解析可以分为两个步骤:第一步客户端向本地DNS服务器发起一个DNS请求报文,报文里携带需要查询的域名,第二步本地DNS服务器向本机回应一个DNS响应报文,报文里携带查询域名所对应的IP地址。
- 1.在本地缓存中查询,如果有则返回IP,反之请求本地DNS。
- 2.本地DNS收到请求后,先在服务器管理区域记录中查询,若无数据则在服务器本地缓存中查询,若还没有则将请求送达根域名服务器。
- 3.根域名服务器解析请求的根域部分,然后将包含下一级域名信息的DNS服务器地址返回至本地DNS服务器。
- 4.本地DNS服务器利用根域名服务器解析的地址访问下一级DNS服务器,得到再下一级的DNS服务器地址。
- 5.按照上述递归方法逐级接近查询目标,最后在有目标的DNS服务器上找到相应的IP信息。
- 6.本地DNS服务器将最终擦寻的IP返回至客户端,让客户端访问对应主机。
2.2.2 HTTP协议
HTTP本身是一个简单的请求,即响应协议,运行在TCP协议之上。该协议指定了客户端可能发送给服务器什么样的消息以及会得到什么样的响应。同其他应用层协议一样,是为了实现某一类具体应用的协议,并由某一运行在用户空间的应用程序来实现其功能。HTTP是一种协议规范,这种规范记录在文档上,为真正通过HTTP进行通信的HTTP的实现程序。
2.2.2.1 HTTP事务处理
- 1.客户端域服务器建立连接
- 2.客户端向服务端发送请求
- 3.服务器响应请求,并根据请求返回相应的数据
- 4.客户端与服务端关闭连接
2.2.2.2 HTTP报文格式
请求本身由请求行、请求头和请求体狗工程
- 请求行:包括请求方法、路径、版本号等
- 请求头:为多个键值对数据
- 请求体:包含请求数据
- 响应行:包含状态码、版本号
2.2.2.3 响应码
200:客户端请求成功;3xx;4xx;5xx
2.2.2.4 特点
- 1.支持C/S模式
- 2.传输速度快,客户端向服务器发送请求,只需要传输请求方法和路径
- 3.请求灵活,HTTP允许传输任意类型的数据对象
- 4.无连接,每次连接只能处理一个请求,服务器处理完客户端请求,客户端收到响应后就断开连接
- 5.无状态,协议本身对事务处理没有记忆能力,如果后序连接需要之前发送的信息时就需要重传
2.2.3 HTTPS协议
HTTPS同样作为应用层协议,可以说它是HTTP的升级版,增加了传输数据的安全性,HTTPS协议是在HTTP的基础上增加了一个SSL外壳,HTTPS运行在SSL上,SSL运行在TCP上,对数据的加密工作就是在SSL上完成的
3.传输层协议
3.1 概念
传输层的主要功能是为了实现“端口到端口”的通信,以确保一条数据发送到主机上后,能够正确的传递到对应的端口上。
3.2 协议
3.2.1 UDP协议
UDP是一种面向无连接的传输协议,无需连接就可以发送封装IP的数据包。但面向无连接的缺点就是不稳定,一旦在通信链路上出现网络波动或连接问题则会发生数据丢包。
3.2.1.1 UDP报文
3.2.1.2 特点
- 无连接:只需要指导目标机的IP和端口就可以发送数据,其间无连接。
- 不可靠:没有一系列机制保证数据传输的丢包问题。
- 面向数据报发送:应用层交给UDP什么样的数据,UDP就发送什么样的数据,不会拆分、合并。
- 传输限制:UDP一次传输上限为64K。
3.2.1.3 传输流程
3.2.1.4 适用范围
由于UDP不属于连接型协议,所以具有资源消耗小。处理速度优的特点,因此经常使用与视频、音频通话传输中,因为发送的数据较多,偶尔丢包一两个不会产生太大影响
3.2.2 TCP协议
因为上述讲到UDP的传输是不可靠的,经常会导致连接错误、数据丢包问题,针对这些问题规定了另一个传输层协议——TCP协议,TCP是一种面向连接、可靠的、基于字节流的传输层协议
3.2.2.1 TCP报文
3.2.2.2 特点
- 面向连接:在传输数据时,客户端与服务端要建立一个可靠的连接
- 可靠通信:TCP传输数据时,会基于内部的各种机制保证数据传输到目的端口
- 基于字节流:TCP传输数据基于字节流,方便对数据的拆分和合并发送
- 开销较大:TCP头部比UDP开销大,因为需要存放更多信息
3.2.2.3 TCP连接
TCP在连接时会进行三次握手
- 首先客户端和服务端均关闭
- 第一次握手:客户端打开并向服务端发送连接请求,这是报文首部中的同部位SYN=1,同时选择一个初始序列号 seq=x ,此时,TCP客户端进程进入了 SYN-SENT 同步已发送状态。该步骤是确定客户端能够正常发送数据
- 第二次握手:服务端向客户端发送一个确认收到的响应,确认报文中应该 ACK=1,SYN=1,确认号是ack=x+1,同时也要为自己初始化一个序列号 seq=y,此时,TCP服务器进程进入了 SYN-RCVD 同步收到状态。该步骤是确认服务端收发数据正常。
- 第三次握手:当客户端再次接收到服务端发送的数据后,将会再次向服务端发送确认连接信息,确认报文的ACK=1,ack=y+1,自己的序列号seq=x+1,此时,TCP连接建立,客户端进入ESTABLISHED已建立连接状态 触发三次握手。该步骤是确定客户端接收数据正常。
由于TCP是建立在可靠连接上的,因此三次握手的目的是为了检验客户端与服务端数据的收发功能是否正常。
3.2.2.4 TCP断连
TCP在终止连接时会进行四次挥手
- 第一次挥手:客户端发出释放连接报文,并停止发送数据,释放数据报文首部。FIN=1,其序列号为seq=u(等于前面已经传送过来的数据的最后一个字节的序号加1),此时,客户端进入FIN-WAIT-1(终止等待1)状态
- 第二次挥手:服务器端接收到连接释放报文后,发出确认报文,ACK=1,ack=u+1,并且带上自己的序列号seq=v,此时,服务端就进入了CLOSE-WAIT 关闭等待状态
- 第三次挥手:客户端接收到服务器端的确认请求后,客户端就会进入FIN-WAIT-2(终止等待2)状态,等待服务器发送连接释放报文,服务器将最后的数据发送完毕后,就向客户端发送连接释放报文,服务器就进入了LAST-ACK(最后确认)状态,等待客户端的确认。
- 第四次挥手:客户端收到服务器的连接释放报文后,必须发出确认,ACK=1,ack=w+1,而自己的序列号是seq=u+1,此时,客户端就进入了TIME-WAIT(时间等待)状态,但此时TCP连接还未终止,必须要经过2MSL后(最长报文寿命),当客户端撤销相应的TCB后,客户端才会进入CLOSED关闭状态,服务器端接收到确认报文后,会立即进入CLOSED关闭状态,到这里TCP连接就断开了,四次挥手完成
4.网络层
4.1 概念
网络层是基于数据链路层和传输层之间的第三层协议,它在数据链路层提供的两个相邻端点之间的数据帧的传送功能上,进一步管理网络中的数据通信,将数据设法从源端经过若干个中间节点传送到目的端,从而向传输层提供最基本的端到端的数据传送服务
4.2 协议
4.2.1 IP协议
IP协议是TCP/IP网络模型中的核心部分,他提供了一种分层的、无关硬件的寻址方式,可以在复杂的路由式网络中传递数据所需的服务。IP协议可以将多个交换网络连接起来,在源地址和目的地址之间传输数据包,同时它还能提供数据的组装功能,以适应不同网络对数据包大小的要求。
4.2.1.1 IP地址
IP地址是互联网协议特有的一种地址,它是IP协议提供的一种统一的地址格式,IP地址为互联网的每个网络和每台主机分配了一个逻辑地址,以此来屏蔽物理地址的差异。
4.2.1.2 IP地址格式
P地址为32位地址,被分为4个部分,如XXX.XXX.XXX.XXX,IP地址又被划分为两个部分
- 网络号:前三部分用于标识网段,保证相互连接的两个网段有不同标识
- 主机号:最后一部分用于标识主机,保证处于同一网段的不同设备都有不同标识
通过合理设置主机号和网络号, 就可以保证在相互连接的网络中, 每台主机的IP地址都不相同
4.2.1.3 MAC地址
被称为物理地址,是用来标识网络中每个设备的,MAC地址是设备出厂之后就写死的
4.2.1.4 IP协议数据报格式
4.2.1.5 IP协议工作方式
- 同网段:若源地址与主机地址位于同一网段,则目的IP地址被ARP协议解析为MAC地址后,源主机会根据目的MAC地址直接将数据包发送给目标主机。
- 不同网段:不同网段会经过多个过程发送给主机
- 网关的IP地址被ARP协议解析为MAC地址,根据MAC地址,源主机会将数据发送至网关。
- 网关根据数据数据包中网段ID找到目标网络,将数据包发送至目标网络,如果没有则重复第一步发送到更高一级网关。
- 数据包经网关发送到正确网段,目标IP被ARP协议 解析为MAC地址,在根据该MAC地址将数据包发送给目标地址的主机。
5.数据链路层
5.1 概念
数据链路层是TCP/IP网络模型的第二层,基于物理层和网络层之间,数据链路层在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源自物理层来的数据可靠地传输到相邻节点的目标机网络层。
5.2 协议
5.2.1 ARP协议
ARP协议是数据进行网络传输过程中,通过IP地址向MAC地址的转换,解决网络层和物理层衔接问题。由于 IP 地址和 MAC 地址定位方式不同,ARP 协议成为数据传输的必备协议。主机发送信息前,必须通过 ARP 协议获取目标 IP 地址对应的 MAC 地址,才能正确地发送数据包。
5.2.1.1 ARP报文
相关文章:

计算机网络入门 -- 常用网络协议
计算机网络入门 – 常用网络协议 1.分类 1.1 模型回顾 计算机网络细分可以划为七层模型,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。而上三层可以划为应用层中。 1.2 分类 1.2.1 应用层 为用户的应用进程提供网络通信服务࿰…...

【LabVIEW作业篇 - 4】:属性节点赋值和直接节点赋值的区别体现
文章目录 属性节点赋值和直接节点赋值的区别体现 属性节点赋值和直接节点赋值的区别体现 创建5个圆形指示灯,然后循环点亮,先给圆形指示灯赋值假变量,然后再进行循环。 运行结果,观察结果,发现刚开始运行时࿰…...

【数据库系列】Parquet 文件介绍
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

A Survey on Multimodal Large Language Models综述
论文题目:A Survey on Multimodal Large Language Models 论文地址:https://arxiv.org/pdf/2306.13549 话题:多模态LLMs综述 MLLMs Paper: https://github.com/BradyFU/Awesome-Multimodal-Large-Language-Models 1. 摘要 近期,以GPT-4V为代表的跨模态大型语言模型(MLLM…...

Leetcode3208. 交替组 II
Every day a Leetcode 题目来源:3208. 交替组 II 解法1:环形数组 把数组复制一份拼接起来,和 3101 题一样,遍历数组的同时,维护以 i 为右端点的交替子数组的长度 cnt。 如果 i ≥ n 且 cnt ≥ k,那么 i…...

汇编教程2
本教程主要教大家如何安装32位Linux虚拟机,为后续实验拆炸弹做准备 下载系统映像文件 以Ubuntu14.04.6系统为例 官方网站:下载地址 点击下载图中32位系统 如果官网进不去可以使用镜像网站 清华镜像网站:下载地址 进入之后找到下图中链接…...

使用 git 和 GitHub 互动
本文根据《GitHub入门与实践》整理 创建账户 要想使用GitHub那就必须先有GitHub账号,账号自行注册,不作介绍。 本地生成 SSH Key SSH 提供了一种安全的方式来通过不安全的网络进行通信。当你使用SSH key连接到GitHub时,你的身份是通过密钥对(一个公钥和一个私钥)来验…...

【Spring Boot 中的 `banner.txt` 和 `logback-spring.xml` 配置】
文章目录 一、banner.txt1. 创建自定义 banner.txt2. 配置 banner.txt 的内容 二、logback-spring.xml1. 创建 logback-spring.xml2. 配置 logback-spring.xml 一、banner.txt banner.txt 是 Spring Boot 项目启动时显示的自定义横幅内容。用来展示项目名称、版本信息或者其他…...

Python Linux环境(Centos8)安装minicoda3+jupyterlab
文章目录 安装miniconda安装python环境启动 最近服务器检查,我下面的服务器有漏洞,不得已重装了,正好记录下怎么从零到python写代码。 安装miniconda miniconda是anconda的精简版,就是管理python环境的得力助手。 # 创建一个名…...

Python PDF Magic:合并和拆分随心所欲
大家好!小编今天要为大家带来一篇关于Python操作PDF的秘籍——无论是要将PDF合并成一份整体,还是将一个庞大的PDF文件拆分成多个小伙伴,都轻松hold住!你准备好了吗?让我们开始这场奇妙的PDF操作之旅吧! 准…...

Gmsh应用程序编程接口
Gmsh应用程序编程接口(API)允许将Gmsh库集成到使用C、C、Python、Julia或Fortran编写的外部应用程序中。从设计上讲,Gmsh API是纯粹功能性的,并且仅使用目标语言的基本类型。 API的结构反映了底层的Gmsh数据模型(也请参…...

DP 203 学习笔记
考试内容总览 Learning Objects: 工具 Designing and implementing data storage 1. Storage Azure Synapse Analytics Azure Databricks Azure Data Lake Storage Gen2(ADLS2,可代替Hadoop Distributed File System也就是HDFS) 2. Shard Partition data store …...

SQLite 事务
SQLite 事务 SQLite 是一种轻量级的数据库管理系统,广泛用于各种应用程序中,特别是在移动设备和嵌入式系统中。它支持标准的 SQL 语法,包括事务处理。事务是数据库管理系统中的一个重要概念,它允许将一系列操作作为一个单独的工作单元来处理,以确保数据库的一致性和可靠性…...

LabVIEW和Alicat Scientific质量流量计实现精确流量控制
在现代工业自动化和科研实验中,精确的气体流量控制至关重要。这里将介绍一个使用LabVIEW与Alicat Scientific公司的质量流量计实现流量控制的项目。项目采用Alicat Scientific的质量流量计(型号:M-200SCCM-D),通过LabV…...

2024-07-19 Unity插件 Odin Inspector10 —— Misc Attributes
文章目录 1 说明2 其他特性2.1 CustomContextMenu2.2 DisableContextMenu2.3 DrawWithUnity2.4 HideDuplicateReferenceBox2.5 Indent2.6 InfoBox2.7 InlineProperty2.8 LabelText2.9 LabelWidth2.10 OnCollectionChanged2.11 OnInspectorDispose2.12 OnInspectorGUI2.13 OnIns…...

Go操作Redis详解
文章目录 Go操作Redis详解来源介绍Redis支持的数据结构Redis应用场景Redis与Memcached比较准备Redis环境go-redis库 安装连接普通连接连接Redis哨兵模式连接Redis集群基本使用set/get示例zset示例Pipeline事务WatchGo操作Redis详解 来源 https://www.liwenzhou.com/posts/Go/…...

钡铼Modbus TCP耦合器BL200实现现场设备与SCADA无缝对接
前言 深圳钡铼技术推出的Modbus TCP耦合器为SCADA系统与现场设备之间的连接提供了强大而灵活的解决方案,它不仅简化了设备接入的过程,还提升了数据传输的效率和可靠性,是工业自动化项目中不可或缺的关键设备。本文将从Modbus TC、SCADA的简要…...

数据分析入门:用Python和Numpy探索音乐流行趋势
一、引言 音乐是文化的重要组成部分,而音乐流行趋势则反映了社会文化的变迁和人们审美的变化。通过分析音乐榜单,我们可以了解哪些歌曲或歌手正在受到大众的欢迎,甚至预测未来的流行趋势。Python作为一种强大的编程语言,结合其丰…...

数仓工具—Hive语法之替换函数和示例
Hive 替换函数和示例 默认情况下,并没有可用的 Hive 替换函数。如果在处理字符串时需要替换特定值,例如垃圾值,字符串操作函数替换是非常需要的。在本文中,我们将检查 Hive 替换函数 的替代方法,以便在需要时使用。 如前所述,Apache Hive 不提供替换函数的支持。但是,…...

[SUCTF 2019]EasySQL1
这是一个简单的SQL注入题,但是因为我的SQL基础约等于0,所以做起来很难。 首先试试引号是否被过滤 可以看到单引号、双引号都被过滤了,试试其他的盲注都不行,基本上可以确定不能用这种方法。 在测试的过程中发现,输入…...

elasticsearch, kibana, 6.8.18 版本下的创建索引,指定timestamp,java CRUD,maven版本等
ELK 这一套的版本更迭很快, 而且es常有不兼容的东西出现, 经常是搜一篇文章,看似能用,拿到我这边就不能用了。 很是烦恼。 我这边的ELK版本目前是 6.8.18,这次的操作记录一下。 (涉密内容略有删改…...

无人机侦察:二维机扫雷达探测设备技术详解
二维机扫雷达探测设备采用机械扫描方式,通过天线在水平方向和垂直方向上的转动,实现对目标空域的全方位扫描。雷达发射机发射电磁波信号,遇到目标后产生反射,反射信号被雷达接收机接收并处理,进而得到目标的位置、速度…...

未来互联网的新篇章:深度解析Web3技术
随着技术的飞速发展,Web3作为新一代互联网技术范式,正在重新定义我们对互联网的认知和使用方式。本文将深入探讨Web3技术的核心概念、关键特征以及其在未来互联网发展中的潜力和影响,为读者打开Web3时代的大门。 Web3技术的核心概念和特征 1…...

vst 算法R语言手工实现 | Seurat4 筛选高变基因的算法
1. vst算法描述 (1)为什么需要矫正 image source: https://ouyanglab.com/singlecell/basic.html In this panel, we observe that there is a very strong positive relationship between a gene’s average expression and its observed variance. I…...

阿里通义千问大模型Qwen2-72B-Instruct通用能力登顶国内第一!
前言: 中国互联网协会副秘书长裴玮近日在2024中国互联网大会上发布《中国互联网发展报告(2024)》。《报告》指出, 在人工智能领域,2023年我国人工智能产业应用进程持续推进,核心产业规模达到5784亿元。 截至2024年3月ÿ…...

CH04_依赖项属性
第4章:依赖项属性 本章目标 理解依赖项属性理解属性验证 依赖项属性 属性与事件是.NET抽象模型的核心部分。WPF使用了更高级的依赖项属性(Dependency Property)功能来替换原来.NET的属性,实现了更高效率的保存机制…...

CentOS 7开启SSH连接
1. 安装openssh-server 1.1 检查是否安装openssh-server服务 yum list installed | grep openssh-server如果有显示内容,则已安装跳过安装步骤,否则进行第2步 1.2 安装openssh-server yum install openssh-server2. 开启SSH 22监听端口 2.1 打开ssh…...

代理伺服器分類詳解
代理伺服器的主要分類 代理伺服器可以根據不同的標準進行分類。以下是幾種常見的分類方式: 按協議分類按匿名性分類按使用場景分類 1. 按協議分類 根據支持的協議類型,代理伺服器可以分為以下幾類: HTTP代理:專門用於處理HTT…...

计数,桶与基数排序
目录 一. 计数排序 概念 步骤思路如下 实现代码如下 时间复杂度与空间复杂度 1. 时间复杂度 2. 空间复杂度 计数排序的特点 二. 桶排序 概念 步骤思路如下 实现代码如下 时间复杂度与空间复杂度 1. 时间复杂度 2. 空间复杂度 桶排序的特点 三. 基数排序 概念 步…...

unity渲染人物模型透明度问题
问题1:有独立的手和衣服的模型,但最终只渲染出来半透明衣服 问题2:透明度贴图是正确的但显示却不正确 这上面两个模型的问题都是因为人物模型是一个完整的,为啥有些地方可以正常显示,有些地方透明度却有问题。 其中…...