它们在哪里工作?
根据 OSI模型的网络体系划分,自底向上,路由器 工作在第三层(网络层),而我们常说的交换机 工作在第二层(链路层)(目前有更加高级的三层交换机,四层交换机,甚至还有七层交换机)
它们怎么工作
路由器:寻址,转发(依靠 IP 地址)
交换机:过滤,转发(依靠 MAC 地址)
我们可以看出这两者的主要工作就是转发数据,但是不同之处是,依靠的地址不同,这是一个根本区别!
- 路由器内有一份路由表,里面有它的寻址信息(就像是一张地图),它收到网络层的数据报后,会根据路由表和选路算法将数据报转发到下一站(可能是路由器、交换机、目的主机)
- 交换机内有一张MAC表,里面存放着和它相连的所有设备的MAC地址,它会根据收到的数据帧的首部信息内的目的MAC地址在自己的表中查找,如果有就转发,如果没有就放弃
通过拓扑图我们应该知道:
交换机工作在路由器之下,就是也就是交换机工作在局域网内
每一个路由器与其之下连接的设备,其实构成一个局域网
交换机用于局域网内网的数据转发
路由器用于连接局域网和外网
举个生动形象的例子:
我们每个人相当于主机,路由器相当于快递员,宿管大爷相当于交换机,学校是一个局域网
快递员根据学校地址(IP)把包裹送到学校,再根据公寓号(子网IP)把快递交给这个公寓的宿管大爷,宿管大爷根据你的名字(MAC)交给你
实际网络数据转发过程
假设你使用电脑访问www.baidu.com
过程大致如下:
你的电脑先在应用层打包一个 HTTP报文,然后在传输层在打包成 TCP报文,然后再根据 DNS 查到的 IP 在网络层打包成 IP数据报,然后在通过链路层打包成以太网数据帧,发送给你的交换机:
你的交换机收到后,重新包装数据帧,再发送给你的路由器:
你的路由器利用 NAT(Network Address Translation),将你的主机IP(局域网IP)转换为外网IP,还会修改端口号,对外完全隐藏你的主机,再根据路由表选择一条合适的路径进行转发:
在接下来的过程中,每个节点都只改变 MAC 地址,然后在网络中一路向着目的地发送
链接出处:路由器与交换机的区别与联系_WhataNerd的博客-CSDN博客_路由器和交换机