首先来看什么是计算机网络,关于计算机网络的定义并没有一个统一的标准,不同的教材有
不同的说法(这是王道书对于计算机网络的定义),我们可以结合自己的生活经验去体会这个
定义。
可以用不同类型的设备去连接计算机网络比如手机,笔记本电脑或者台式机,现在还有智能手表、智能电视这些都可以连接计算机网络。无论是智能手表、智能电视还是手机,它们都属于计算机系统,不同的设备连接计算机网络的方式也各不相同,笔记本电脑可以通过 wifi 连接这个路由器从而接入计算机网络,台式机可以通过网线连接这个路由器从而接入网络,另外平时在外面使用手机都是通过5G通信的技术去连接5G基站,从而接入计算机网络。在这些电脑和手机当中我们会安装一些方便易用的软件,比如说百度网盘或者微信,我们可以用百度网盘去共享一些资源以及可以用微信这样的软件去聊天去传文件等等。
计算机网络是一个将众多分散的资源,自治的计算机系统通过通信设备和线路连接起来由功能完善的软件,实现资源共享和信息传递的系统。首先连接计算机网络的手机、笔记本电脑、台式机这些计算机系统都是分散的,同时也是自治的。自治是什么意思?就是说如果其中一台设备坏掉,并不会影响另外一台设备的运行,所以这些计算机系统是相互独立的,是自治的。这些计算机系统和通信设备进行连接。家用路由器是一种通信设备,5G基站也是一种通信设备,并且连接的方式有很多,可能是通过 wifi 、5G这种无线的线路进行连接也有可能是通过网线这种有线的线路进行连接,这样的话就构成了一个计算机网络,通过计算机网络我们可以实现资源共享和信息传递,
那这就是王道书对计算机网络的定义。
接下来我们要区分几个术语:计算机网络、互连网和互联网。接下会展开探讨。首先先让大家猜几个问题,下面这几句话当中提到的网指的是计算机网络还是互连网还是互联网。
首先我们来看计算机网络描述的范畴是什么?
计算机网络由若干个节点和连接这些节点的链路组成。不知道大家有没有玩过一些局域网联机对战的游戏,比如说红警帝国时代、极品飞车还有我的世界等等,很多游戏都支持局域网联机。以前大学的时候我和我的舍友想要联机打帝国时代这个游戏,我和他分别有一台电脑当时我们用一根网线,分别接到他的电脑和我的电脑上,通过这根网线我和我的舍友两台计算机就组成了一个最简单的计算机网络,在我和他搭建的这个计算机网络当中只有两个节点分别就是两台计算机,这两个结点当中也只有一条链路是用网线构建的。
当时我们宿舍每天晚上十点断网但是断网之后我和他还可以快乐的打游戏,这让其他的舍友非常羡慕,于是,其他的舍友也想要加入我们呃在断网之后和我们一起联机打游戏,但此时问题发生了,每一台笔记本电脑只有一个网线的插口,如果多台电脑想要联机怎么办呢?我们可以买一个集线器。
集线器长这个样子。可以看到它有很多网线的插口,我们可以用四条网线把四台电脑连接到同一个集线器上,这样我们就把多个节点连接了起来,从而组成了一个计算机网络,在这个小型的计算机网络当中总共有五个节点,分别是四台电脑以及一个集线器,有四条有线链路都是用网线来搭建的。有了集线器我们四个舍友就可以一起联机打游戏了,后来我们发现用集线器组建的这个网络在打游戏的时候经常容易出现卡顿的情况,原因是集线器不能避免数据冲突的情况。什么意思呢?如果说这两台电脑同时在往集线器这边发送数据,那么他俩的数据发送就会出现数据冲突的情况,最后就导致这台电脑的数据也发不出去,另一台电脑的数据也发不出去。所以集线器这种网络设备通常不太好用,现在大家在网上搜集线器基本上已经买不到了。集线器这种网络设备的具体原理我们会在第二章展开学习,现在我们只需要知道通过集线器可以组建一个简单的计算机网络,但是集线器这种设备现在用的很少,它的效率不高。现在如果要搭建一个计算机网络的话通常不用集线器而是会采用交换机这种网络设备。
交换机的长相和集线器很像。这是一个交换机,它的背面也有几个网口,于是几台电脑都可以通过网线接入这个交换机,和集线器类似,交换机这种设备也可以把多个节点连接起来组成一个计算机网络,并且交换机这种设备并不会发生数据冲突。也就是说两台电脑同时发送数据,他们的这个数据不会打架都可以成功的发出去。关于交换机的具体原理我们还会在第三章详细学习。
通常来说现在一个家庭、一个公司或者一个学校要组建内部网络都会用到交换机,一个交换机还可以连接另一个交换机,如果要构建一个比较大的内部网络,比如说要构建一个校园网,那么在这个校园网的内部,可能就会使用到很多很多台交换机。并且会需要一些高性能的交换机。这儿先不展开,总之无论是集线器还是交换机都可以用于构建一个计算机网络。计算机网络我们通常会用一个云朵来表示。通过集线器交换机这些设备可以构建一个计算机网络,不同的计算机网络之间又怎么实现互联互通呢?这就需要使用到另一个设备叫做路由器,通过路由器可以把两个或者多个计算机网络互相连接起来,这样就形成了更大规模的计算机网络。我们可以把这样的一个大型的计算机网络称为互连网。因为它是通过路由器把多个计算机网络互相连接起来而形成的一个更大的网络,当然路由器还可以连接别的路由器,从而再连接更多的计算机网络这样就可以让这个互连网的规模不断的扩大,关于路由器的具体原理我们会在第四章进行学习。
通过路由器可以把多个计算机网络互相连接起来,给大家举个例子有一些银行的内部网络就是典型的互联网。比如说某个大型银行的内部网络它可能长这个样子。
假设这个银行它有一个总行和四个分行每一个分行都是一个相互独立的计算机网络,另外这个银行的总部,也就是总行那儿会有一个数据中心,这些分行通过路由器和总部的这个数据中心都可以互联互通。假设一位客户在A分行存了一千块钱,那么存钱的这个信息就可以通过路由器逐层的传到总行的数据中心,这样他的账户余额就增加了一千。下一次即便客户在D这个分行去取钱的话,他的账户余额也可以从总行的数据中心进行查询。可以看到这个银行的内部网络是通过路由器把它们相互连接起来的。
这就是一个典型的互联网,像银行这种机构它的内部数据都是非常敏感的都是直接和钱挂钩,所以为了保证银行内部数据的安全性,通常来说他们会构建一个专属于自己的内部网络。你从你的家里是无法去访问他们的内部网络的,因为你家连接的那个网络和银行内部的这个网络并没有实现互联互通。
跟大家说明一下在计算机网络这门课程当中我们提到的路由器,和你的家用路由器是有一些区别的。
你的家用路由器其实是路由器和交换机以及其他功能的一个集合,为了简化理解我们可以把家用路由器看作是交换机和路由器这两种设备的结合,交换机的作用刚才我们已经说过了它可以构建一个内部的网络,比如你的智能电视还有你的电脑可以通过网线去连接你的家用路由器。逻辑上我们可以把它理解为是连接到了这个交换机上面。另外你的手机也可以通过 wifi 这种无线连接的方式把它连到交换机上,这些设备连接了同一个交换机所以这些设备就组成了一个最简单的计算机网络。也就是你家庭内部的网络。现在你的家用路由器它还有一个路由器的功能,刚刚我们说过路由器可以把你家庭内部的网络和其他的网络进行连接,那把你家的网络和外面的网络连接起来之后你家的这些设备就可以上网了,路由器的后面,你的家庭里这些设备它们共处于一个网络。而路由器的外面又是另一个网络,如果大家用过电视投屏的功能你应该知道,使用这个功能的前提条件是手机和电视要连接到同一个网络当中,现在我们知道了当我们把手机和电视同时连上家里的路由器之后,这就相当于他们俩连接了同一个交换机,也就是说它们俩就处于同一个网络之下。这样我们就可以使用电视投屏的功能,现在大家可以结合家用路由器的这个例子再来感受路由器和交换机它们的一个作用。
交换机可以把多个节点连接起来组成一个计算机网络,这是交换机的功能。路由器的功能是可以把两个或者多个计算机网络互相连接起来。既然路由器这种设备可以把多个计算机网络互相连接起来,那为什么我们不能把全世界范围内的计算机网络,用路由器全部把它们连接起来呢?
事实上有一些公司和组织就是在干这件事情这一类的公司通常就是互联网服务提供商,英文缩写叫 ISP,Internet Service Provider,比如说中国电信、中国移动中国联通。在全球范围内有很多这样的企业。以及还有一些国际机构他们共同构建了可以覆盖全球范围的互联网,这个覆盖全球范围的互联网就是所谓的英特网,现在在中文的语境当中,我们一般用互联网联合国的联去特指这个因特网。这个互联网的世界是对每一个公众开放的,只要你交钱交网费就可以接入这个互联网。不知道大家有没有办过宽带业务,在开通宽带的那天会看到那个师傅会把一根网线接到你家的这个路由器上,这根网线的一头接的是你家的路由器,这根网线的另一头最终肯定会接到这个公司的某一个商用路由器上,这样就把你们家的内部网络和整个互联网连接起来了,只要你按时交网费你就可以在家里上网,所以平时我们说的上网这个动作,其实这个网指的是互联网也就是因特网。
这地方有必要和大家解释一下。你家的这个路由器,它接出去的这根线通常来说并不会直接连上网络运营商的这个路由器这条线路它中间还会经过更复杂的一些连接,这么画是为了让大家理解起来更简单一些。
在世界范围的这个互联网上,各个设备之间必须使用TCP/IP协议去进行通信,而一个自主构建的互联网内部可以使用别的协议去进行网络通信,怎么理解通信协议这个东西呢?
用一个例子来解释一下,我们知道秦始皇他统一六国之后,提出了车同轨、书同文统一度量衡这样的要求,书同文是什么意思啊,就是说在我统一之前,秦国有秦国的文字,楚国有楚国的文字,韩国有韩国的文字,这会导致一个问题,秦国的人只能给秦国的人写信,而楚国的人也只能给楚国的人去写信、通信。因为两个地方的文字不一样或者也可以说各国的这种通信协议各不相同,秦王统一天下之后他要求全天下的人都使用大秦的文字,也就是说统一了通信协议。这样就可以保证咸阳的人和邯郸的人都可以用统一的规则,统一的文字去相互通信。
覆盖全世界范围的互联网为了确保各个节点之间可以畅通无阻的通信,它就需要规定一个所有的节点都必须遵守的一种通信协议,相比之下第二个互联网它有可能是一个小范围的内部网络,比如刚才我们提到某个银行它也许会构建一个专门供内部使用的互联网,由于它的这个内部网络和外面的互联网不需要互联互通因此它内部要怎么通信使用什么样的通信协议这是他自己可以决定的一个事情。