文章图片
那么,ping究竟是怎么诞生的,又是如何被普及开来的?
ping是如何被普及的?
【互联网|屡次让腾讯上热搜的ping 发明人英年早逝:留下千行源码改变世界】最初编写这份代码的时候,Muuss完全没想过它后来会这么火 。
毕竟最初的ping,只是一个用来排查实验室网络异常的测试工具 。
事情源于1983年12月的一天,Muuss在阿伯丁试验场的弹道研究实验室(BRL)中做实验时,突然发现实验室的IP网络出现了异常情况 。
这时候,他回忆起几个月前,自己曾参与过一次DARPA在挪威举办的研讨会,会上一位名叫Dave Mills的博士,提到过用ICMP数据包测试延迟的方法 。
Muuss认为,这个工具的原理,就像是发射声波并接收它的回波以计算往返时间一样 。
刚好Muuss在大学的时候学过不少声呐和雷达系统的建模,他很快写了一个程序,并将之命名为ping,在声呐中指代声音脉冲、也就是信号的意思 。
随后,Muuss只用了一晚上,就将ping的程序写了出来 。
虽然写出来的时候,他所在的实验室已经将网络问题解决了,但Muuss还是将它作为一个公有领域软件(public domain software,使用时无需许可证)发布了出去 。
很快加州大学伯克利分校的Erick Engelke发现了这份软件,将它改写了一版(遵循GPL开源协议),放入伯克利自己开发的Unix操作系统BSD4.3版本中 。
随后,计算机工程师Tim Crawford又基于MIT开源协议,写了一个ReactOS版本的ping代码 。
再之后,ping被各个计算机大牛写入各种操作系统如macOS、Linux和Windows中,又加入了更多的功能 。
如今我们看到的各个系统中自带的ping工具,早已经不是最初那个ping.shar程序了,其功能和用法都要丰富得多 。
那么,如今的ping放到计算机上来说,究竟是一个怎样的工具呢?
ping的基本原理
许多计算机发烧友可能会说,自己ping用得贼6 。
不过,大伙儿知道ping是如何工作的吗?
知其然,不妨也了解一下背后的所以然:
ping,是网络结构里应用层的一个网络管理命令,是判断两台主机或路由节点之间网络是否畅通的重要手段 。
简单来说:如果两台主机“ping”得通,说明它们之间可以建立连接 。
文章图片
一个小知识:公网(因特网)IP地址具有唯一性 。
这就像你在世界范围(公网)内的一栋楼(主机or路由节点等)里工作,这栋楼的地址(IP地址)相对世界来说是唯一的,不过楼里面的其他门牌号(内网IP地址)则不一定是唯一的 。
利用这一特性,我们就能用ping测试两台主机或路由节点中的网络连通性 。
具体来说,就是使用ping命令,先给目标IP地址发送一个遵循ICMP协议的数据包(echo request) 。
然后可以根据返回数据包的情况(丢包、速度等),检查主机或路由节点之间的网络状态 。
Emm…ICMP协议又是什么?
它的全称是:Internet Control Message Protocol,即因特网控制报文协议,ICMP报文封装在IP包里 。
所谓“控制”,即在IP主机、路由节点之间传递控制消息,来反映数据包是否成功到达目标端,以及反映网络状况等 。
在IP通信中,当IP包成功到达目标地址并返回时,会收到ping应答;而当IP包因为某原因,未能成功到达目标地址、或未能成功从目标地址返回时,ICMP返回的数据包中将含有具体原因,如:网络不可达、端口不可达等 。
- 让人类好好说话,比登陆火星更难
- 小米科技|国产品牌电视旗下的互联网品牌都有哪些,是否值得购买?
- 自新冠肺炎疫情爆发后|互联网优势不断得到认可,互联网医院建设发展迅速
- |居家办公更累?这7款远程在线办公软件让你在家也能高效工作
- 大疆|让年轻用户心动的全能机型来了!vivo S15系列迎来影像大提升
- 阿里巴巴|普通人怎么在互联网上赚钱?其实很简单,是你整复杂了
- 移动互联网|用好“宅流量”警惕“宅陷阱”
- 亚马逊|如何让关键词获得更多收录?这篇文章,让你看懂亚马逊的算法机制
- 小红书|215: 氢能外卖车落地;华尔街抄底互联网;罗永浩退出直播;Uber送餐
- 京东|今年的6.18,京东让国人很不是滋味