听说你 ping 用的很 6?给我图解一下 ping 的工作原理

【Ping 网络基础知识及教程】 很多从事于通信相关行业的人可能都会听说或者接触过Ping网络通不通,Ping IP地址等等。那么这个Ping到底是什么意思呢?本文就将相关知识个人心得分享给大家,希望和大家一起共勉。以下是本篇文章正文内容,请认真记笔记了。 阅读详情

前言

在日常生活或工作中,我们在判断与对方网络是否畅通,使用的最多的莫过于 ping 命令了。

“那你知道 ping 是如何工作的吗?” —— 来自小林的灵魂拷问

可能有的小伙伴奇怪的问:“我虽然不明白它的工作,但 ping 我也用的贼 6 啊!”

你用的是 6 ,但你能面试官面前,你就 6 不起来了,毕竟他们也爱问。

所以,我们要抱有「知其然,知其所以然」的态度,这样就能避免面试过程中,出门右拐的情况了。

image

不知道的小伙伴也没关系,今天我们就来搞定它,搞懂它。消除本次的问号,让问号少一点。

正文

IP协议的助手 —— ICMP 协议

ping 是基于 ICMP 协议工作的,所以要明白 ping 的工作,首先我们先来熟悉 ICMP 协议。

ICMP 是什么?

ICMP 全称是 Internet Control Message Protocol,也就是互联网控制报文协议。

里面有个关键词 —— 控制,如何控制的呢?

网络包在复杂的网络传输环境里,常常会遇到各种问题。当遇到问题的时候,总不能死个不明不白,没头没脑的作风不是计算机网络的风格。所以需要传出消息,报告遇到了什么问题,这样才可以调整传输策略,以此来控制整个局面。

ICMP 功能都有啥?

ICMP 主要的功能包括:确认 IP 包是否成功送达目标地址、报告发送过程中 IP 包被废弃的原因和改善网络设置等。

在 IP 通信中如果某个 IP 包因为某种原因未能达到目标地址,那么这个具体的原因将由 ICMP 负责通知。

image

如上图例子,主机 A 向主机 B 发送了数据包,由于某种原因,途中的路由器 2 未能发现主机 B 的存在,这时,路由器 2 就会向主机 A 发送一个 ICMP 目标不可达数据包,说明发往主机 B 的包未能成功。

ICMP 的这种通知消息会使用 IP 进行发送 。

因此,从路由器 2 返回的 ICMP 包会按照往常的路由控制先经过路由器 1 再转发给主机 A 。

收到该 ICMP 包的主机 A 则分解 ICMP 的首部和数据域以后得知具体发生问题的原因。

ICMP 包头格式

ICMP 报文是封装在 IP 包里面,它工作在网络层,是 IP 协议的助手。

image

ICMP 包头的类型字段,大致可以分为两大类:

  • 一类是用于诊断的查询消息,也就是「查询报文类型」
  • 另一类是通知出错原因的错误消息,也就是「差错报文类型」

image

查询报文类型

回送消息 —— 类型 0 和 8

回送消息用于进行通信的主机或路由器之间,判断所发送的数据包是否已经成功到达对端的一种消息,ping 命令就是利用这个消息实现的。

image

可以向对端主机发送回送请求的消息(ICMP Echo Request Message,类型 8),也可以接收对端主机发回来的回送应答消息(ICMP Echo Reply Message,类型 0)。

image

相比原生的 ICMP,这里多了两个字段:

  • 标识符:用以区分是哪个应用程序发 ICMP 包,比如用进程 PID 作为标识符;
  • 序号:序列号从 0 开始,每发送一次新的回送请求就会加 1, 可以用来确认网络包是否有丢失。

在选项数据中,ping 还会存放发送请求的时间值,来计算往返时间,说明路程的长短。

差错报文类型

接下来,说明几个常用的 ICMP 差错报文的例子:

  • 目标不可达消息 —— 类型 为 3
  • 原点抑制消息 —— 类型 4
  • 重定向消息 —— 类型 5
  • 超时消息 —— 类型 11

目标不可达消息(Destination Unreachable Message) —— 类型为 3

IP 路由器无法将 IP 数据包发送给目标地址时,会给发送端主机返回一个目标不可达的 ICMP 消息,并在这个消息中显示不可达的具体原因,原因记录在 ICMP 包头的代码字段。

由此,根据 ICMP 不可达的具体消息,发送端主机也就可以了解此次发送不可达的具体原因。

举例 6 种常见的目标不可达类型的代码:

image

  • 网络不可达代码为 0
  • 主机不可达代码为 1
  • 协议不可达代码为 2
  • 端口不可达代码为 3
  • 需要进行分片但设置了不分片位代码为 4

为了给大家说清楚上面的目标不可达的原因,小林牺牲自己给大家送 5 次外卖。

为什么要送外卖?别问,问就是为 35 岁的老林做准备 …

a. 网络不可达代码为 0

外卖版本:

小林第一次送外卖时,小区里只有 A 和 B 区两栋楼,但送餐地址写的是 C 区楼,小林表示头上很多问号,压根就没这个地方。

正常版本:

IP 地址是分为网络号和主机号的,所以当路由器中的路由器表匹配不到接收方 IP 的网络号,就通过 ICMP 协议以网络不可达(Network Unreachable)的原因告知主机。

自从不再有网络分类以后,网络不可达也渐渐不再使用了。

b. 主机不可达代码为 1

外卖版本:

小林第二次送外卖时,这次小区有 5 层楼高的 C 区楼了,找到地方了,但送餐地址写的是 C 区楼 601 号房 ,说明找不到这个房间。

正常版本:

当路由表中没有该主机的信息,或者该主机没有连接到网络,那么会通过 ICMP 协议以主机不可达(Host Unreachable)的原因告知主机。

c. 协议不可达代码为 2

外卖版本:

小林第三次送外卖时,这次小区有 C 区楼,也有 601 号房,找到地方了,也找到房间了,但是一开门人家是外国人说的是英语,我说的是中文!语言不通,外卖送达失败~

正常版本:

当主机使用 TCP 协议访问对端主机时,能找到对端的主机了,可是对端主机的防火墙已经禁止 TCP 协议访问,那么会通过 ICMP 协议以协议不可达的原因告知主机。

d. 端口不可达代码为 3

外卖版本:

小林第四次送外卖时,这次小区有 C 区楼,也有 601 号房,找到地方了,也找到房间了,房间里的人也是说中文的人了,但是人家说他要的不是外卖,而是快递。。。

正常版本:

当主机访问对端主机 8080 端口时,这次能找到对端主机了,防火墙也没有限制,可是发现对端主机没有进程监听 8080 端口,那么会通过 ICMP 协议以端口不可达的原因告知主机。

e. 需要进行分片但设置了不分片位代码为 4

外卖版本:

小林第五次送外卖时,这次是个吃播博主了 100 份外卖,但是吃播博主要求一次性要把全部外卖送达,小林的一台电动车装不下呀,这样就没办法送达了。

正常版本:

发送端主机发送 IP 数据报时,将 IP 首部的分片禁止标志位设置为1。根据这个标志位,途中的路由器遇到超过 MTU 大小的数据包时,不会进行分片,而是直接抛弃。

随后,通过一个 ICMP 的不可达消息类型,代码为 4 的报文,告知发送端主机。

原点抑制消息(ICMP Source Quench Message) —— 类型 4

在使用低速广域线路的情况下,连接 WAN 的路由器可能会遇到网络拥堵的问题。

ICMP 原点抑制消息的目的就是为了缓和这种拥堵情况。

当路由器向低速线路发送数据时,其发送队列的缓存变为零而无法发送出去时,可以向 IP 包的源地址发送一个 ICMP 原点抑制消息。

收到这个消息的主机借此了解在整个线路的某一处发生了拥堵的情况,从而增大 IP 包的传输间隔,减少网络拥堵的情况。

然而,由于这种 ICMP 可能会引起不公平的网络通信,一般不被使用。

重定向消息(ICMP Redirect Message) —— 类型 5

如果路由器发现发送端主机使用了「不是最优」的路径发送数据,那么它会返回一个 ICMP 重定向消息给这个主机。

在这个消息中包含了最合适的路由信息和源数据。这主要发生在路由器持有更好的路由信息的情况下。路由器会通过这样的 ICMP 消息告知发送端,让它下次发给另外一个路由器。

好比,小林本可以过条马路就能到的地方,但小林不知道,所以绕了一圈才到,后面小林知道后,下次小林就不会那么傻再绕一圈了。

超时消息(ICMP Time Exceeded Message) —— 类型 11

IP 包中有一个字段叫做 TTL (Time To Live,生存周期),它的值随着每经过一次路由器就会减 1,直到减到 0 时该 IP 包会被丢弃。

此时,IP 路由器将会发送一个 ICMP 超时消息给发送端主机,并通知该包已被丢弃。

设置 IP 包生存周期的主要目的,是为了在路由控制遇到问题发生循环状况时,避免 IP 包无休止地在网络上被转发。

image

此外,有时可以用 TTL 控制包的到达范围,例如设置一个较小的 TTL 值。

ping —— 查询报文类型的使用

接下来,我们重点来看 ping 的发送和接收过程。

同个子网下的主机 A 和 主机 B,主机 A 执行ping 主机 B 后,我们来看看其间发送了什么?

image

ping 命令执行的时候,源主机首先会构建一个 ICMP 回送请求消息数据包。

ICMP 数据包内包含多个字段,最重要的是两个:

  • 第一个是类型,对于回送请求消息而言该字段为 8;
  • 另外一个是序号,主要用于区分连续 ping 的时候发出的多个数据包。

每发出一个请求数据包,序号会自动加 1。为了能够计算往返时间 RTT,它会在报文的数据部分插入发送时间。

image

然后,由 ICMP 协议将这个数据包连同地址 192.168.1.2 一起交给 IP 层。IP 层将以 192.168.1.2 作为目的地址,本机 IP 地址作为源地址,协议字段设置为 1 表示是 ICMP 协议,在加上一些其他控制信息,构建一个 IP 数据包。

image

接下来,需要加入 MAC 头。如果在本地 ARP 映射表中查找出 IP 地址 192.168.1.2 所对应的 MAC 地址,则可以直接使用;如果没有,则需要发送 ARP 协议查询 MAC 地址,获得 MAC 地址后,由数据链路层构建一个数据帧,目的地址是 IP 层传过来的 MAC 地址,源地址则是本机的 MAC 地址;还要附加上一些控制信息,依据以太网的介质访问规则,将它们传送出去。

image

主机 B 收到这个数据帧后,先检查它的目的 MAC 地址,并和本机的 MAC 地址对比,如符合,则接收,否则就丢弃。

接收后检查该数据帧,将 IP 数据包从帧中提取出来,交给本机的 IP 层。同样,IP 层检查后,将有用的信息提取后交给 ICMP 协议。

主机 B 会构建一个 ICMP 回送响应消息数据包,回送响应数据包的类型字段为 0,序号为接收到的请求数据包中的序号,然后再发送出去给主机 A。

image

在规定的时候间内,源主机如果没有接到 ICMP 的应答包,则说明目标主机不可达;如果接收到了 ICMP 回送响应消息,则说明目标主机可达。

此时,源主机会检查,用当前时刻减去该数据包最初从源主机上发出的时刻,就是 ICMP 数据包的时间延迟。

针对上面发生的事情,总结成了如下图:

image

当然这只是最简单的,同一个局域网里面的情况。如果跨网段的话,还会涉及网关的转发、路由器的转发等等。

但是对于 ICMP 的头来讲,是没什么影响的。会影响的是根据目标 IP 地址,选择路由的下一跳,还有每经过一个路由器到达一个新的局域网,需要换 MAC 头里面的 MAC 地址。

说了这么多,可以看出 ping 这个程序是使用了 ICMP 里面的 ECHO REQUEST(类型为 8 ) 和 ECHO REPLY (类型为 0)。

traceroute —— 差错报文类型的使用

有一款充分利用 ICMP 差错报文类型的应用叫做 traceroute(在UNIX、MacOS中是这个命令,而在Windows中对等的命令叫做 tracert )。

1. traceroute 作用一

traceroute 的第一个作用就是故意设置特殊的 TTL,来追踪去往目的地时沿途经过的路由器。

traceroute 的参数指向某个目的 IP 地址:

这个作用是如何工作的呢?

它的原理就是利用 IP 包的生存期限 从 1 开始按照顺序递增的同时发送 UDP 包,强制接收 ICMP 超时消息的一种方法。

比如,将 TTL 设置 为 1,则遇到第一个路由器,就牺牲了,接着返回 ICMP 差错报文网络包,类型是时间超时。

接下来将 TTL 设置为 2,第一个路由器过了,遇到第二个路由器也牺牲了,也同意返回了 ICMP 差错报文数据包,如此往复,直到到达目的主机。

这样的过程,traceroute 就可以拿到了所有的路由器 IP。

当然有的路由器根本就不会返回这个 ICMP,所以对于有的公网地址,是看不到中间经过的路由的。

发送方如何知道发出的 UDP 包是否到达了目的主机呢?

traceroute 在发送 UDP 包时,会填入一个不可能的端口号值作为 UDP 目标端口号(大于 3000 )。当目的主机,收到 UDP 包后,会返回 ICMP 差错报文消息,但这个差错报文消息的类型「端口不可达」。

所以,当差错报文类型是端口不可达时,说明发送方发出的 UDP 包到达了目的主机。

2. traceroute 作用二

traceroute 还有一个作用是故意设置不分片,从而确定路径的 MTU。

这么做是为了什么?

这样做的目的是为了路径MTU发现。

因为有的时候我们并不知道路由器的 MTU 大小,以太网的数据链路上的 MTU 通常是 1500 字节,但是非以太网的 MTU 值就不一样了,所以我们要知道 MTU 的大小,从而控制发送的包大小。

image

它的工作原理如下:

首先在发送端主机发送 IP 数据报时,将 IP 包首部的分片禁止标志位设置为 1。根据这个标志位,途中的路由器不会对大数据包进行分片,而是将包丢弃。

随后,通过一个 ICMP 的不可达消息将数据链路上 MTU 的值一起给发送主机,不可达消息的类型为「需要进行分片但设置了不分片位」。

发送主机端每次收到 ICMP 差错报文时就减少包的大小,以此来定位一个合适的 MTU 值,以便能到达目标主机。

计算机网络----Ping的原理加底层详细解释 1.ICMP是什么? ICMP全程是Internet Control Message Protocol,也就是互联网控制报文协议。网络包在复杂的网络传输环境里,常常会遇到各种的问题,没有头脑的作风不是计算机的风格。所以需要传出的消息,报告遇到什么问题,这样才可以调整传输策略,以此来控制整个局面。 2.ICMP功能都有啥? ICMP主要功能包括:确认IP包是否成功送达目标地址,报告发送过程中IP包被废弃的原因和改善网络设置等。 在IP通信中如果某个IP包因为某种原因未能达到目标地址,那么这个具体的原因将由IC 阅读详情

相关推荐

网络基础之网络层协议介绍(ping命令和ARP协议)

一、IP数据包格式 IP字段: 版本(Version):该字段包含的是IP 的版本号,4bit。目前IP 的版本为4(即IPv4) 首部长度(Header Length):该字段用于表示TP数据包头长度,4bit。IP数据包头最短为20字节,但是其长度是可变的,具体长度取决于可选项字段的长度。优先级与服务类型(Priority i Type of Service):该字段用于表示数据包的优先级和服务类型,8bit。通过在数据包中划分一定的优先级,用于实现 Qos(服务质量)的要求。 总长度(Total L

ljj的学习笔记 1779

常用网络命令:ping命令的使用

Ping命令的使用 一、Ping命令的基本概念 ping是一个十分基本但又十分重要的TCP/IP网络工具。它的作用主要为: (1)通常用来检测网络的连通情况和测试网络速度; (2)也可以根据域名得到相应主机的IP地址; (3)根据ping返回的TTL值来判断对方所使用的操作系统及数据包经过路由器数量。 (4)因为具备以上功能,ping命令常常被黑客用来进行网络扫描和攻击。 对于网络管理员和普通用户来说,我们通常用它来测试网络的连通情况,如果无法正常上网,ping命令是检测网络故障的基本工具。 ping命令的

山中问答的博客 10万+

GitHub发布三小时瞬间霸榜的TCP/IP图解网络文档,居然能讲解的这么清楚!

发布三小时,标星11K!这份霸榜GitHub的图解网络笔记到底有多强? 互联网世界中,网络协议的重要性不言而喻。很多人都知道,网络协议中的五层模型或者七层模型,这些在操作系统中,那都是“必考题”。上学的时候,无论是死记硬背,还是各种小抄,总得把下面这个图记下来。踏入工作,走进 web 开发“不归路”,发现还是不能落下它。 网络协议是每个程序员入门的必修课,但是完全掌握网络协议知识并进行实际应用却并非易事。 今天给大家分享一份我珍藏已久的图解网络笔记,它在GitHub发布三小时,就已经标星11K,内容全

qq_46388795的博客 651

Linux ping命令教程:如何检查网络连接状况(附案例详解和注意事项)

Ping(Packet Internet Groper)命令用于检测主机。通过发送Internet控制消息协议(ICMP)Echo数据包到目标主机,检测目标主机是否可达。如果互联网上两个主机之间可以通信,并且没有防火墙阻止这种通信,那么ping命令在一个主机上可以成功地ping另一个主机。因此,你可以使用ping命令检查网络是否已连接,一台远程主机的IP地址是否已经改变,或你的Internet服务提供商(ISP)的网络是否正在运行。我们可以使用-p选项指定一个十六进制的模式来填充发送的数据包。

u012964600的博客 2万+

手把手教你设计2bit反射型超表面:从单patch扫参到pin管配置全流程

本文提供了一份2bit反射型超表面设计的完整工程实践指南。从单贴片谐振器的参数化扫描与“270度法则”应用,到PIN二极管等效电路模型的获取与集成,再到利用参数化扫描高效仿真四种工作状态,手把手指导读者完成从单元设计到阵列布局、偏置线集成及加工考量的全流程,旨在帮助射频工程师将概念转化为可加工测试的实体模型。

java5的博客 1023

Python3 ACM模式输入输出全攻略:从牛客网到华为机试的实战技巧

本文详细解析了Python3在ACM模式下的输入输出处理技巧,针对牛客网、华为机试等在线评测系统。文章从input()函数本质出发,总结了六种高频输入模式的处理模板,并提供了链表、二叉树等数据结构的I/O实战方案,最后给出性能优化与常见避坑指南,帮助开发者高效应对算法笔试。

zero1的博客 1000

听说你 ping 用的很 6 ?那你给我图解一下 ping 的工作原理

听说你 ping 用的很 6 ?给我图解一下 ping 的工作原理

青春木鱼的博客 818

手机也能跑大模型?QNN框架实战:从模型量化到Android部署全流程

本文详细介绍了如何利用QNN框架将大模型部署到Android手机端进行端侧推理。通过实战演示了从模型量化(如INT4/INT8混合精度)到Android应用集成的全流程,包括内存优化、性能调优及常见问题排查,帮助开发者实现大模型在资源受限设备上的高效本地运行。

joy55的博客 501

听说你 ping 用的很 6 ?给我图解一下 ping 的工作原理!

前言在日常生活或工作中,我们在判断与对方网络是否畅通,使用的最多的莫过于 ping 命令了。“那你知道 ping 是如何工作的吗?” —— 来自小林的灵...

HollisChuang's Blog 776

surfer10与Arcgis10.3 完美生成等值线和等值面方法

surfer10 与Arcgis10.3生成等值线和等值面的步骤如下: 1.准备surfer用的Book1.dat文件,格式如下: "x" "y" "z" 116.471992 40.809975 232 116.335556 40.700542 1235 116.541626 40.713333 214 116.73349 40.798607 566 2.在surfer中,选择Gr

哈里·雪利博客 1万+

深入解析iDP3的Learning模块:从数据集构建到3D动作预测的代码实现

本文深入解析iDP3框架的Learning模块,从数据集构建到3D动作预测的完整代码实现。通过扩散模型实现视觉输入到动作序列的端到端预测,详细介绍数据采集、增强策略、模型架构及训练技巧,帮助开发者掌握3D动作预测策略的核心技术。

k0l1m2n3o的博客 311

ospf cost 引起路由可以ping通但应用无法连接_听说你 ping 用的很 6?给我图解一下 ping 的工作原理

前言在日常生活或工作中,我们在判断与对方网络是否畅通,使用的最多的莫过于 ping 命令了。“那你知道 ping 是如何工作的吗?” —— 来自小林的灵魂拷问可能有的小伙伴奇怪的问:“我虽然不明白它的工作,但 ping 我也用的贼 6 啊!”你用的是 6 ,但你能面试官面前,你就 6 不起来了,毕竟他们也爱问。所以,我们要抱有「知其然,知其所以然」的态度,这样就能避免面试过程中,出门右拐的情况了。...

weixin_39549936的博客 171

【Python 实战基础】如何绘制热力图来模拟绘制北京景区热度图

Python如何绘制热力图来模拟绘制北京景区热度图 文件读写 基础语法 字符串处理 文件生成 数据构建

菜鸟实战的博客 3403

6显示wan口未插线_听说你 ping 用的很 6 ?给我图解一下 ping 的工作原理!

(给算法爱好者加星标,修炼编程内功)来源:小林coding前言在日常生活或工作中,我们在判断与对方网络是否畅通,使用的最多的莫过于 ping 命令了。“那你知道 ping 是如何工作的吗?” —— 来自小林的灵魂拷问可能有的小伙伴奇怪的问:“我虽然不明白它的工作,但 ping 我也用的贼 6 啊!”你用的是 6 ,但你能面试官面前,你就 6 不起来了,毕竟他们也爱问。所以,我们要抱有「知...

weixin_33787865的博客 216

软考高级-系统架构设计师 知识点整理 (一篇就够了 建议收藏)

软考高级-系统架构设计师知识点整理---十万字总结,助你通过高级

片言可决讼,半纸能缚龙 7356

国债期货的日线趋势跟踪策略实现(基于backtrader框架)

通过backtrader框架,我们可以轻松地实现国债期货的日线趋势跟踪策略,并进行回测和验证。通过这种策略,我们可以尝试捕捉国债期货价格的短期趋势,并根据趋势的方向进行交易决策。backtrader提供了许多内置的指标、订单类型和其他功能,可以帮助你进一步优化和改进你的策略。它提供了丰富的工具和功能,使我们能够快速实现和验证我们的交易想法。方法中,我们根据当前价格和前一天的价格判断趋势的方向,并根据趋势的变化进行买入或卖出操作。然后,我们设置了初始资金和交易手续费,并将我们定义的策略。来跟踪每日的收盘价。

NisyPhilosophy的博客 404

6显示wan口未插线_听说你 ping 用的很 6 ?给我图解一下它的工作原理!

(给程序员的那些事加星标)转自:小林Coding前言在日常生活或工作中,我们在判断与对方网络是否畅通,使用的最多的莫过于 ping 命令了。“那你知道 ping 是如何工作的吗?” —— 来自小林的灵魂拷问可能有的小伙伴奇怪的问:“我虽然不明白它的工作,但 ping 我也用的贼 6 啊!”你用的是 6 ,但你能面试官面前,你就 6 不起来了,毕竟他们也爱问。所以,我们要抱有「知其然,知其...

weixin_42566451的博客 139

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

ospf cost 引起路由可以ping通但应用无法连接_听说你 ping 用的很 6 ?给我图解一下它的工作原理!...

(给程序员的那些事加星标)转自:小林Coding前言在日常生活或工作中,我们在判断与对方网络是否畅通,使用的最多的莫过于 ping 命令了。“那你知道 ping 是如何工作的吗?” —— 来自小林的灵魂拷问可能有的小伙伴奇怪的问:“我虽然不明白它的工作,但 ping 我也用的贼 6 啊!”你用的是 6 ,但你能面试官面前,你就 6 不起来了,毕竟他们也爱问。所以,我们要抱有「知其然,知其...

weixin_39682673的博客 147

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

TCP/IP详解 第十二章(11) 图解网络

推荐一个公众号:图解网络专题小林coding虽然作者有一些笔误,但是写的真心不错 硬核!30 张图解 HTTP 常见的面试题https://mp.weixin.qq.com/s/bUy220-ect00N4gnO0697A 探究!一个数据包在网络中的心路历程https://mp.weixin.qq.com/s/iSZp41SRmh5b2bXIvzemIw 听说你 ping 用的很 6 ?给我图解一下 ping 的工作原理!https://mp.weixin.qq.com/s/leE2DgDOl5z..

caofengtao1314的专栏 310

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Github上爆火的网络协议图解文档,访问已破百万

硬核! 30张图解HT TP常见面试题 前言 在面试过程中,HTTP 被提问的概率还是比较高的。小林我搜集了5大类HTTP面试常问的题目,同时这5大类题跟HtTP的发展和演变关联性是比较大的,通过问答+图解的形式由浅入深的方式帮助大家进步的学习和理解 HTTP。 01 HTTP基本概念 02 GET与POST 03 HTTP特性 04 HTTP与HTTPS 05 HTTP/1.1. HTTP/2、HTTP/3 滴变 需要获取这份《图解网络协议》文档的...

Java有胜 488

发布三小时,标星11K!这份霸榜GitHub的图解网络笔记到底有多强?

互联网世界中,网络协议的重要性不言而喻。很多人都知道,网络协议中的五层模型或者七层模型,这些在操作系统中,那都是“必考题”。上学的时候,无论是死记硬背,还是各种小抄,总得把下面这个图记下来。踏入工作,走进 web 开发“不归路”,发现还是不能落下它。 网络协议是每个程序员入门的必修课,但是完全掌握网络协议知识并进行实际应用却并非易事。 今天给大家分享一份我珍藏已久的图解网络笔记,它在GitHub发布三小时,就已经标星11K,内容全面丰富,从HTTP、IP基础、Ping、TCP、滑动窗口到功能实现原理、以

m0_50180963的博客 305
上一篇: JVM埋下的坑没那么简单,大厂面试官不只是按在地上摩擦,雷霆嘎巴
下一篇: 手把手教你2022面试通关BAT:面试经验复盘+现场Java1000+题合集
Javaesandyou
博客等级 码龄5年 742粉丝 563原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值