目录
1、软件方面——CSMA/CD(载波侦听多路访问/冲突检测)
好家伙,好东西,我TM直接收藏点赞评论三连。
好了,仔细听课,进入我们的主题。
一、集线器
在我们最初的网络环境,网络拓扑十分简单,可能最初我们只需要两台机器之间进行通信,此时我们只需要连接这两台机器就达到我们的目的。
但是随着我们的科技不断发展,网络环境越来越复杂,需求变大,我们渐渐的不满足于两台机器之间进行通信,可能我们想要进行多台机器之间进行通信。
那这个时候,随着我们的需求,就产生了——集线器。
可能这样说,还有些不够通俗易懂,我就简单的举个例子。
小A是一名冰封王座大神级玩家,一个人打通关了所有的单机战役。
小A想拉小B一块玩这款游戏,所以他们两用网线相连,实现了两台电脑的互联。
此时小C看见了这款游戏,也想和他们一起玩,但是此时出现了一个问题,那就是一台电脑只有一个网口,小C没法和他们的电脑相连。
此时我们的集线器出现了,它具有多个网口,小A、小B、小C三人通过集线器进行了多台电脑之间的互联。
说到这里,那集线器到底是什么呢?
集线器:我们又叫做Hub。属于1层设备,也就是我们物理层设备。集线器内部是一个导体片,它可以识别bit流,只传递电流信号。
工作原理:
集线器的工作原理很简单。它是以广播的形式传递信息,基于这种方式,所以它具有“一人发包,全员收到”的特性,所以集线器全都在同一个冲突域。
缺点:
1、不能一对一
2、不能无限远距离传输(信号衰减/失帧)
3、存在冲突域
这里举一个例子。
在一个网络环境中有A、B、C、D四台主机,它们使用集线器进行连接。
此时A发送一个信号,集线器会直接广播转发给同一个冲突域内的所有人,即B、C、D。
这里出现了一个名词——冲突域。那什么是冲突域呢?这里我再举一个例子去理解冲突域这个概念。
冲突域: A、B两台主机之间进行通信,A向B发电流信号,B同时也给A发送电流信号,电流发生碰撞,信号抵消,产生冲突,A和B在同一个冲突域。
既然集线器存在冲突域这个问题,那么该如何解决冲突域呢?
我们这里有两种方法,一种软件方面,一种硬件方面。
1、软件方面——CSMA/CD(载波侦听多路访问/冲突检测)
CSMA/CD,也就是我们说的载波侦听多路访问/冲突检查。它的一个工作原理是在我们的主机发送信号前,它会先检测通信通道是是否空闲,空闲它才会发包。
16字箴言——“先听后发、边发边听、冲突停止、延迟重发”
但是这样既需要检测,还要等待,延时很高,于是我们就产生了——交换机。
2、硬件方面——交换机
二、交换机
说交换机之前,我还是延续之间的例子,通俗的去理解交换机这个设备。
说集线器时我们提到小A、小B在玩蝴蝶流星剑这款游戏,慢慢越来越多的人开始玩这款游戏。
大家依旧使用集线器连接主机,然而我们的集线器前面说到,它传送信息时是广播传送,它无法分辨信息要传送给谁。
本来小A和小B结盟要打其他玩家,小A对小B说:“我们今晚偷袭其他人”,结果连接在集线器上的所有玩家都收到了这条消息。
故事的结局就是小A和小B被打的很惨很惨!!!!!!!
所以此时我们的交换机闪亮登场了!
我们的集线器无法定向发送信息,所以我们便开始想如何去定向的发送信息呢?
聪明的我们想到了,如果我们给每台主机的网口都分别命名,如A主机的网口是macA,B的网口是macB,此时我们再要发送信息时,就是macA发送,macB接收,这样就达到了我们定向发送信息的目的。
macA、macB分别指的是主机的mac地址
相当于我们使用的身份证一样,每个人的身份证都是独一无二的。
而我们每台主机的mac地址同样也都是独一无二的。
此时我们就需要一台设备,需要什么设备呢?需要一台可以解决我们信息传递冲突、实现我们任意两台主机的互联,提升我们网络间传输速度的设备。这就是我们的交换机!
交换机:属于2层设备,也就是我们数据链路层设备。为什么说它是2层设备呢?
因为交换机在接收到数据后,它会通过查找自身系统MAC地址表中的MAC地与端口的对应关系,将数据传送到目的端口,它比我们网线传输多了一个步骤。
工作原理:
用专业术语来说就是:数据帧(源目mac、源目IP)进入交换机,交换机会基于数据帧中的目标mac地址来查询本地的mac地址表,之后基于表中的记录单播转发到对应的接口。
我们可以看作是四步:1、基于mac地址学习(自学习) 2、基于目标mac地址转发(转发) 3、数据过滤 4、防环
自学习:交换机会记录数据包中的mac地址,结合自己收到此数据包的接口编号生产mac地址表。 转发:基于数据包中的目标mac地址转发,查看学习到的mac地址表,进行转发。 若表中有记录,直接一对一转发;若表中无记录,则将数据包复制n份进行洪泛。 洪泛:交换机收到一个需要被洪泛的数据帧,会将该数据通过除了接受数据接口之外的其他所有接口转发出去,这个过程叫做洪泛。
用通俗的话来说就是:我们可以把“数据”看作“信件”、把“mac地址表”表看作“常住居民户口簿”、把"数据帧"看作“地址信息”
交换机在收到某个网卡发过来的“信件”时,会根据上面的“地址信息”,以及自己掌握的的“常用居民户口簿”快速将信息送到收件人手中。
万一收件人不在“常住居民户口簿”上,交换机会像集线器一样将信发送给所有的人,然后从中找到收件人。
而找到收件人之后,交换机会立刻将这个人的信息登记到“户口簿”上,这样以后再为顾客服务时,就可以迅速的将“信件”送达。
优点:
1、可以隔离冲突域
2、可以一对一
3、实现单播
4、可以无限远距离传输
交换机就到此告一段落,接着我们上边的例子继续说。
突然有一天,由于小B父母工作的原因,我们的小B要从现在的A村搬家到B村,搬家后的小B仍想和小A继续玩游戏,于是就找了一根超级长的网线,将A村与B村的交换机连接起来。
但是奇怪的是两个村庄之间无法进行通信!!!!原来是A村与B村所使用的操作系统不同,导致信息的传送方式不匹配,这可急坏了小B,要是以后一直搬家,每个村庄的操作系统都不一样,这可怎么和以前的好友继续游戏呢?
此时我们的路由器闪亮登场!!!
三、路由器
既然我们每个村庄由于操作系统的不一致导致我们的信息的传送方式不匹配,导致村庄之间无法通信,那我们为什么采用同样的信息传送方式?
那如何实现同样的信息传送方式呢?
我们可以在每个村庄的操作系统加上一套相同的协议。不同村庄通信时,信息经过协议加工成统一形式,再经由一个特殊的设备转发出去。这个设备就是我们的路由器。
在这套协议中,每台机器都被赋予了一个IP,相当于一个门牌号。路由器通过IP地址寻址。我们说它工作在网络层。
路由器:属于3层设备,也就是网络层设备。
路由器不同接口之间处于不同的网段(广播域)
作用:
1、为经过路由器的每个数据帧寻找一条最佳传输路径,并将数据有效地传送到目的站点。
2、分割广播域
3、路由功能
那我们关于流星蝴蝶剑的这个故事到这里就结束了。
这个故事我们说到了集线器(1层物理层设备)、交换机(2层数据链路层设备)、路由器(3层网络层设备)
现在这些设备,你应该大致可能也许懂了吧?
那我们下个故事见。