计算机网络基础1

网上关于网络基础的文章有不少,并且有不少都是很优秀的文章.这系列的文章只是做为本身梳理计算机网络知识点之用.文章从计算机网络起源开始,逐步分析计算机网络为什么发展成今天的样子.segmentfault

网络模型.

咱们知道,两台计算机想要互相通讯,必定须要某种介质链接这两台主机.而链接主机的介质有不少,能够是蓝牙,光纤,双绞线.可是无论使用什么介质链接,最后到达另外一台主机的时候,这些信号都要被转换成电磁信号.把其余信号转换成电磁信号的设备被称为调剂调节器,也就是咱们俗称的猫.因此若是你家使用光纤,那么就有一台调制调解器把光学信号转换成电磁信号才能被计算机识别.网络

电磁信号到达主机的时候,最早经过网卡.平时说得百兆网卡,千兆网卡是指网卡一次性能够处理100M(百兆网卡),1000M(千兆网卡)bit的数据.学习

两台计算机经过一条线(注:这里包括下文的线都指某种链接介质)链接就能够通讯,可是须要通讯的主机多了以后,就须要管理如何链接这些主机,因而就演化出了三种网络模型spa

总线型网络

图片描述

如上图,能够很容易理解什么是总线型网络:即全部通讯主机都链接在同一条线上,信号借由这条总线传递到对方主机.那么如今如下几个问题 :计算机网络

  1. A要跟B通讯,如何保证B能够收到A发送的数据,而不是被其余人收到?server

  2. A给B发送信号的时候,C跟D可不能够通讯?blog

要解决这些问题,要引入一个MAC地址的概念,在MAC地址是一串用十六进制表示的数字,MAC地址被写死在网卡上.每一个网卡上的MAC地址都是独一无二的,因此MAC地址能够用做标识整个互联网上惟一的一个网络设备.假设一台主机只有一张网卡,那么一个MAC就能够用来标识惟一一台主机.接口

知道了MAC地址以后,咱们来看在总线型网络模型中主机是如何通讯的 :图片

有了MAC地址以后,A要发送给B数据,只要在数据包前面加上本身和主机B的MAC地址以后把数据发送出去,这个时候这个总线上瞬间都会充斥着这些数据,以后B, C, D都会接收到这些信号,可是每台主机会查找数据包前面接收方的MAC地址,只有接受方的MAC地址跟本身的MAC地址匹配才会接受数据,其余主机会忽略这些信号.ip

这样子,第一个问题就解决了.上面说了,A发送数据给B的时候整个总线上都充斥着电信号,那么C跟D必然就不能通讯了,否则就乱了.其中一台主机发送信号,其余主机都可以收到信号,这种现象称为广播

上面说了,A发送数据给B的时候,其余主机就不能发送数据, 那么就得有一个机制保证的确只能有一个主机发送信号.这种机制称做载波侦听多路访问,冲突检测(CSMA/CD).其工做原理相似 :

A在发送信号以前先检测是否有主机在发送信号,若是没有.立刻开始发送信号.并且在发送的同时还要继续监听总线上是否有其余主机发送信号,一旦有,立刻中止发送.等待一段时间再发送.

载波侦听多路访问,冲突检测(CSMA/CD)的这个机制.正是以太网的标准.

环状网络

图片描述

环状网络模型亦如其名,全部的主机用通讯设备链接成一个环状.这种网络模型最开始由IBM研发,环状网络保证冲突的方式相似 :

在环状网络的通道上有一个令牌,没有主机发送信号的时候就在通道上游荡,只要有主机想要发送信号,就要立刻抓住令牌,一旦持有令牌就能够发送信号.

可是这种网络模型为IBM的商业项目,因此并无流行开,而是总线模型做为以太网技术被如今的互联网接受.咱们如今的互联网世界都是基于以太网.

除了这两种模型以外,还有一种称为星形网络,其本质是总线网络的一种变形,因此这里略过.

网桥&&交换机

回顾一下最开始的通讯过程,一旦一个总线模型上链接的主机多了以后,会出现两个问题 :

  • 链接的主机越多,总线就会越长.总线越长就会致使信号衰弱,信号衰弱就会致使数据丢失.

  • 主机越多,一台主机发送数据就会致使其余主机不能发送数据,并且信号之间冲突的可能性就越大,这个时候这个网络就处于冲突域状态.

.因此当一个网络模型上的主机愈来愈多,就要把一个网络分红两个网络.

图片描述

如上图,把一个网络分红两个网络,可是出现一个问题:分红两个模型以后两个模型之间如何通讯?这就要靠途中S1这个设备了,这个设备被称为网桥或者桥接器

如今,咱们来看一下主机之间是如何通讯的 :

  • A主机要给B发送信号,信号发送出去,网络1的主机包括桥接器S1的R1接口都能收到数据,而后S1经过数据中的接收方的MAC地址判断接收方在网络1中,因而不把数据经过R2发送到网络2.这样子,网络1中的主机互相通讯就不会干扰到网络2中的设备.

  • A主机要发送数据给C1,信号发送出去一样S1的R1接口会收到数据.判断数据是发往网络2的C1主机.因而就把数据经过R2接口广播到网络2.这样子C1就能够收到来自A发来的数据.

经过上面的分析知道,桥接器可以智能的判断当前通讯是一个网络中的主机互相通讯仍是跨网络通讯.桥接器可以作到这一点的缘由是:桥接器内部维护了一张表,这张表记录了每一个网络中有哪些主机.这张表的数据能够人工填写,或者桥接器也能够本身智能学习生成数据.

如今有了桥接器以后,咱们就能够有效避免冲突,隔绝了冲突域.A和B之间的通讯就不会影响到A1跟B1之间的通讯,主机之间通讯的效率就变得更高了.那咱们极端一点,一个桥接器上有多个R1接口, 每一个接口只链接一台主机.这样子桥接器就演化成了交换机.

注意:交换机跟桥接器的关系并非像上面讲得那么简单.交换机跟桥接器在定义上仍是有区别的,网上有不少说交换机就是多个接口的桥接器,这个说法不能说错,可是不严谨.不过咱们这里能够没必要纠结于此,由于交换机跟桥接器在做用是相似的,这里你能够把交换机当作是多个接口的网桥.

图片描述

如今,网络模型已经演变成上图的样子,看起来好像又回到最开始的总线网络模型.可是不一样的是,使用交换机以后,A跟B通讯的同时,C跟D也能通讯.并且A给B发送数据的时候,B也能够给A发送数据.由于每台主机可使用两条线跟交换机相连.一条负责对外发送数据,一条负责接收数据.像上图这种,若是要主机A发送了一个广播,那么B,C,D,E均可以收到这个广播,称为A,B,C,D,E在同一个广播域.

可是,当多个交换机互相链接,某个交换机上的一台主机发送了一个广播数据,那么交换机收到这个广播数据的时候,也会把这个广播数据转发给另外一个交换机,而这个交换机也会发送这个广播.以此下去,整个网络内都会收到这个广播,当这些主机都向外发送广播,就会形成广播风暴.咱们使用桥接器/交换机隔绝了冲突域,提升了计算机通讯的效率,可是广播风暴的存在仍然会形成计算机通讯的效率低下,所以咱们还须要解决广播风暴.

然而,不幸的是,广播风暴在使用MAC地址标识主机的状况下是没有办法解决的,因此在MAC地址的基础上,引入了逻辑地址,即IP地址.而且使用路由器来链接交换机.这样子就能够解决广播风暴的问题.更多关于IP&&路由,以及接下来的计算机网络基础,请移步文章计算机网络2.

相关文章
相关标签/搜索