博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
路由器和交换机?傻傻分不清楚
阅读量:6804 次
发布时间:2019-06-26

本文共 1165 字,大约阅读时间需要 3 分钟。

在学习计算机网络过程中,我一直不能准确区分路由器和交换机这两个概念,其实这两台设备的功能看起来似乎一样。然而,这两者之间大有不同。

一、首先,让我们来看一下这两者之间的区别吧。

1.工作地点不同

根据 OSI模型 的网络体系划分,自底向上,路由器 工作在第三层(网络层),而我们常说的 交换机 工作在第二层(链路层)(目前有更加高级的三层交换机,四层交换机,甚至还有七层交换机)

2.工作机制不同

路由器与交换机的主要工作如下:

路由器:寻址,转发(依靠 IP 地址)
交换机:过滤,转发(依靠 MAC 地址)

我们可以看出这两者的主要工作就是转发数据,但是不同之处是,依靠的地址不同,这是一个根本区别!

路由器 内有一份路由表,里面有它的寻址信息(就像是一张地图),在收到网络层的数据报后,会根据路由表和选路算法将数据报转发到下一站(可能是路由器、交换机、目的主机)

交换机 内有一张MAC表,里面存放着和它相连的所有设备的MAC地址,它会根据收到的数据帧的首部信息内的目的MAC地址在自己的表中查找,如果有就转发,如果没有就放弃

我们来看一个网络拓扑图例子:

通过拓扑图我们应该知道:

每一个 路由器 与其之下连接的设备,其实构成一个局域网
交换机 工作在 路由器 之下,就是也就是交换机工作在局域网内
交换机 用于局域网内网的数据转发,路由器 用于连接局域网和外网

举个例子加深一下理解:

我们每个人相当于主机,路由器相当于快递员,宿管相当于交换机,学校是一个局域网 快递员根据学校地址(IP)把包裹送到学校,再根据公寓号(子网IP)把快递交给这个公寓的宿管,宿管根据你的名字(MAC)交给你

二、接下来,我们来说一下这两者之间的联系吧

交换机 在局域网内工作,它根据 MAC 地址转发数据,如果没有了路由器在网络层寻址,那么我们的数据就不能发送到其他网络终端上去了

路由器 内集成了交换机的功能,主机与路由器相连也可以实现数据转发,但是不足之处是: 可扩展的接口不如交换机多 交换机通常由硬件加速转发,路由器主要靠软件寻址,速度慢

总而言之,这两者相辅相成,缺一不可!

三、学会了以上这些,我们来看一下实际网络数据转发过程

通过一个实际网络数据转发的过程,我们可以更好的理解路由器与交换机的区别所在

过程大致如下:

1.你的电脑先在应用层打包一个HTTP报文,然后在传输层在打包成TCP报文,然后再根据DNS查到的IP在网络层打包成 IP数据报,然后在通过链路层打包成以太网数据帧,发送给你的交换机:

你的交换机收到后,重新包装数据帧,再发送给你的路由器:

你的路由器利用NAT,将IP改为自己的对外的IP,再根据路由表选择一条合适的路径:

在接下来的过程中,每个节点都只改变 MAC 地址,然后在网络中一路向着目的地发送

转载地址:http://jknwl.baihongyu.com/

你可能感兴趣的文章
20165206 2017-2018-2《Java程序设计》课程总结
查看>>
【SignalR学习系列】5. SignalR WPF程序
查看>>
【2011.09.01】如何使用javaScript代码获取系统时间和日期?
查看>>
data guard switchover切换异常
查看>>
领悟javascript中的exec与match方法
查看>>
Linux内核--网络协议栈深入分析(五)--套接字的绑定、监听、连接和断开
查看>>
Mysql索引详解及优化(key和index区别)
查看>>
unittest用例的执行顺序
查看>>
随笔学习初谈
查看>>
指令与数据
查看>>
iOS Document Interaction 编程指南
查看>>
HTTP返回的状态码
查看>>
sql创建表格 转载
查看>>
请求接口的封装
查看>>
【050】World Flag Database
查看>>
MySQL server has gone away 的两个最常见的可能性
查看>>
结对编程作业——电梯调度
查看>>
MongoDB状态查询:db.serverStatus()
查看>>
网络编程
查看>>
JS 特殊字符的验证的问题
查看>>