当了8年网工,你该怎么和别人形容「网络究竟是什么」?

- 这是老杨写的127篇文章 | 预计阅读7min -

当了8年网工,你该怎么和别人形容「网络究竟是什么」?

要是讲起互联网,很多人会和网络混淆在一起。

老杨身为八年的网工,想告诉你的是“在搞IT的这群人眼里,网络到底是个什么东西。”

01

你第一印象里的“网络”是什么?

其实大部分人理解的“网络”就是“互联网”,但互联网和网络是有本质区别的。

应用到现实场景,网络对每个人来说,到底是啥样的?

是可以上网的设备,你花了巨资购买的手机、电脑、平板、手表,通过这些设备,你可以更好的完成你工作和生活的沟通交流。对吧?

原本找一本书,你要去书店去问老板有没有,现在只要搜索一下,电子档都能到全部到你手里;

原本找到一个好老师,你要问遍亲朋好友还搞不明白,但现在,你只要网上搜一搜,全国最好的各科目讲师排名都在你眼前;

原本问诊治疗,你都不知道哪个医生好,但现在,只要你想,全国最好的医生都可以在线给你问诊了。

网络对于普通人来说,是便利和偌大的希望。但上述的这些便利,并不是网络本身 ,而是互联网产品。

互联网起源于信息,它基于网络(也就是计算机网络),并开创了整个互联网的产业,才有了我们现在用的这些便利的东西。

那,网络是怎么诞生的?我们还得先谈谈计算机。

计算机刚诞生的时候,人们发现,如果对一个文件进行操作,需要小明操作结束后,再手动拷贝给小红,让她继续查看操作,不能像现在这样,通过对话框发送给小红,等小红回你“收到”然后慢慢打开你的文件看。

为了高效和便利,于是,人们才发明了“网络”。

一开始的网络,也就是个很简单的线性结构:多台主机连接同一个服务器,然后对同一个服务器上的文件进行操作,在操作完成后,服务器的数据会更新,保证下一个访问文件的人,看到的已经是更新过后的新数据,不需要再进行人工的拷贝。

你可能还有一个概念,就是“网络”就是把每个人连在一起,最近大火的“万物互联”也是这个道理。

但这种连接,只是简单的“你拉着我,我拉着你”的网状物吗?就像很多技术贴和网络文章里附上的这种图:

我见过不少大佬比喻过网络,什么自来水网、高速公路、思维导图等等,不管是啥,其实在他们的眼里,网络就是一个有主干、有分支、由表及里、逻辑分明的东西。

所以,网络并不是横向发展的同级类比,而是纵向和横向并行的复杂结构。

02

网工在谈网络时

他们到底在谈什么?

虽然网络在普通人眼里高效便利,简单又强大,但在折腾网络的我们眼里,网络并不是表面上看上去的那样而已。

我们从一个常规场景切入,来看看网工眼里“使用网络的日常”,到底是个啥模样:

现在是晚上22:35,小杨的女朋友突然打电话给他,小杨连忙放下手里的王者荣耀局,速度接起了电话……

女友表示:希望他能在5分钟之内买好最好吃的烧烤送到她家门口。

小杨被当成人机举报了一圈,想着也没法打游戏了,就顺手打开电脑的浏览器,准备登录某团官网去搜索一下“烧烤”关键词,来满足女友夜宵的要求。

在网工眼里,这个画面则变成了:

小杨需要访问一个某团的网址,电脑(客户端)察觉到了小杨的意图。

电脑(客户端)打开浏览器输入网址后,浏览器首先要找到某团网站的IP地址,把小杨想要立刻马上“打开某团”的需求告诉对方,让对方展示它页面的全部信息。

这个时候,浏览器就会生成http请求消息,委托电脑发送消息,电脑就会调用网络组件和socket查地址,再把请求发出去。

这个画面大概率会被小杨的女友认为是直男本直现场,毫无浪漫可言,但在老杨眼里的确如此。

所以,在网络工程师的眼里,网络首先是通信的“基础设施”,是将信息从一个端系统传送到另外一个端系统的基础。

除此之外,在网络工程师眼里,网络还有一种解读,那就是硬件部分和软件部分,这两个部分共同构成了网络。

硬件部分是构建网络的重要基础,软件部分是实现网路运行的重要手段。

很多行外的小伙伴就是始终分不清网络工程师和程序员的区别,这个软硬件就是区分的最好方式——

写代码的程序员就是软件部分的代言人,折腾硬件设备调试网络的网络工程师就是硬件部分的霸主。

网络的软硬件部分,相信很多小白也是一脸懵逼,这是什么说法?

网络的硬件部分分为三类:

第一类主要就是指由大量互联的计算设备构成的端系统。啥服务器,主机,手机,智能手表和音箱……只要能联网的设备,都是端系统。

从这个层面里面,网络就是千百万个互连的设备集合。

网络的第二类硬件部分就是通信链路。负责把设备们连在一起。这个连接又分为两类,一种是有线,一种是无线。

有线介质包括光纤、铜线,而无线网络(wifi这种)属于无线介质。

网络的第三类硬件部分就是分组交换机(即通过交换网络互连主机)。

当它的一条入通信链路接受到达的信息包(分组),并从通信链路中转发出该分组,一个区域内的所有主机都会链接到一个分组交换机,分组交换机之间相互连接构成网络。所以,在硬件这个层面上,网络等于端系统+通信链路+分组交换机(即通过交换网络互连主机)。

而网络的软件部分主要包括系统软件(协议不可更改)和网络应用(协议可更改)。这里就涉及到了大量的网络协议,比如最重要的TCP/IP协议。

网络协议又是啥?

简单来说,网络协议就是指计算机网络中数据交换必须遵守的规则。

就像你过马路,必须红灯停,绿灯行,这是交通规则。

而报文的发送和接收,以及当这些报文发送和接收时所采取的一些列约定俗成的动作,就是网络协议的核心。

网络协议定义了在两个或多个通信实体之间交换的报文格式和次序,以及在报文传输和接收时其他时间方卖弄所采取的动作,它们规范了网络中所有信息发送和接收过程。

03

想了解网工的网络世界

先要了解什么?

看到这里,肯定很多人会好奇,原来“网络”和“网络”的差距可以这么大。

那如果想要深入了解IT世界里的网络,我最先需要了解什么?老杨罗列了几点,你瞅瞅。

节点 (node):节点主要是具有网络地址 (IP) 的设备之称,因此上面图示中的一般PC、Linux服务器、ADSL调制解调器与网络打印机等,个别都可以称为一个 node!那中间那个集线器 (hub) 是不是节点呢?因为他不具有 IP,因此 hub不是节点。

服务器主机(server):就网络联机的方向来说,提供数据以『响应』给用户的主机, 都可以被称为是一部服务器。

工作站 (workstation) 或客户端 (client):任何可以在计算机网络输入的设备都可以是工作站, 若以联机发起的方向来说,主动发起联机去『要求』数据的,就可以称为是客户端 (client)。

网络卡 (Network Interface Card, NIC):内建或者是外插在主机上面的一个设备, 主要提供网络联机的卡片,一般 node 上都具有一个以上的网络卡, 以达成网络联机的功能。

网络接口:利用软件设计出来的网络接口,主要在提供网络地址 (IP) 的任务。一张网卡至少可以搭配一个以上的网络接口;而每部主机内部其实也都拥有一个内部的网络接口,那就是 loopback (lo) 这个循环测试接口。

网络形态或拓朴 (topology):各个节点在网络上面的链接方式,一般讲的是物理连接方式,例如:星形等。

网关 (route) 或通讯闸 (gateway):具有两个以上的网络接口, 可以连接两个以上不同的网段的设备,例如 IP 分享器就是一个常见的网关设备。

OSI七层协定:

将整个网络连接过程分成数个阶层,每个阶层都有特别独立的功能,而且每个阶层的程序代码可以独立编写,因此每个阶层之间的功能并不会互相干扰,这样做,当某一个环节出问题的时候,只要将该阶层的程度代码重写即可,这样做使整个网络概念更加清晰。

仔细看上图中每个数据报的部分,上层的包裹是放入下层的数据中,而数据前面则是这个数据的表头。

其中,比较特殊的是第二层, 因为第二层 (数据链结层) 主要是位于软件封包 (packet) 以及硬件讯框 (frame) 中间的一个阶层, 他必须要将软件包装的包裹放入到硬件能够处理的包裹中,因此这个阶层又分为两个子层在处理相对应的数据。

OSI 七层协议只是一个参考的模型 (model),目前的网络社会并没有什么很知名的操作系统在使用 OSI 七层协定的联网程序代码。

这是因为 OSI 所定义出来的七层协议在解释网络传输的情况来说,可以解释的非常棒,因此大家都拿 OSI 七层协议来做为网络的教学与概念的理解。

至于实际的联网程序代码,则TCP/IP来完成。

(0)

相关推荐