设计思路:忽略链路层(以太网、无线局域网、ADSL、FTTH)差异,将ip报文由源设备发送到目的ip设备。
接收处理流程:路由器端口收到网络报文后,PHY模块和MAC模块将信号转换为数字信息,并通过包末尾的FCS进行错误校验。校验无误后,首先剥离出报文的MAC头部,将MAC头部中目的MAC地址与端口的MAC地址进行比对,如果相同,则将报文(丢弃MAC头部后的报文,当报文到达路由器后,MAC头部的使命就完成了,于是丢弃MAC头部)放入缓冲区,否则,丢弃此报文。
转发处理流程:剥离出IP头部,取出IP头部中的目的IP地址。查找目的IP地址的网络号(路由器的转发规则是核对网络号,不核对主机号)是否在是否在路由表中,是则转发到对应的端口,否,则直接丢弃,并通过ICMP消息告知对方。
发送处理流程:报文在发送之前需要重新加上MAC头部,旧的MAC头部在报文到达路由器时已经被丢弃了。因此现在要加上一个新的MAC头部,新的MAC头部的源MAC地址就是路由器接收到此报文端口的MAC地址。目的MAC地址的MAC地址为下一跳路由器端口的MAC地址。