互联网是一个庞大的分层网状结构,亿万的设备分布在其大大小小的子网中。这里我们展示了一个简化的办公网络,包括 3 个子网,子网间通过路由器相连,子网内部使用二层交换机或无线热点连接了一些电脑和办公设备。
图中的二层交换机是工作在数据链路层的,它维护了一个通过 ARP(Address Resolution Protocol,地址解析协议)学习到的、IP 地址到物理地址的映射,以此来决定发往某个目标主机的数据包,从交换机哪个端口转发出去。从而实现同网段内设备的通信。
路由器是工作在网络层的,它的端口连接了另一个路由器或交换机,每个端口配置了(到达)不同子网的地址。路由器间使用 OSPF(Open Shortest Path First,开放式最短路径优先)协议,相互学习形成一个路由表,用于掌握类似 “可以通过哪一个路由器的、哪个端口、到达指定的子网、距离有多远” 等信息。
网络里的每个主机(网卡),手工配置或从 DHCP 获得了一个 IP 地址,包括主机地址、子网掩码和默认网关。当子网 3 中的主机 192.168.0.100/24 希望向子网 1 中的 Web 服务器 172.16.1.10/24 发送请求时,数据包首先会被发往默认网关 - 这里是无线路由器连接子网 3 的那个端口的地址 192.168.0.1;无线路由器检查路由表,获取通往子网 1 的最优路径,通过指定的端口,将数据包转发给下一站路由器;如此继续完成跨网段间的通讯。
本篇文章,目的是简单了解交换网络和路由网络不同的工作方式,以巩固前面所学的知识。有兴趣的朋友,可以阅读思科 CCNA 认证相关的资料,获取更多信息。