一、交换机识别二层转发还是三层转发
依据DMAC是不是自己vlanif对应的MAC,是就三层转发,不是就二层 交换机是依据数据帧中DMAC查找设备表项进行转发的。 那么此时就会涉及对于未知单播,未知组播,未知广播的处理方式 1.收到未知单播数据帧, 泛洪并接口记录下MAC,生成MAC表项。 2.收到未知组播数据帧, 对于组播有以下几种情况 如MAC地址为0180-c200-0000 为STP协议就交给STP协议处理 如MAC地址为0180-C200-0014 或者15 就交个ISIS协议处理 如果收到组播数据,如果运行了PIM协议,就会依据(S,G)表项下游接口转发。 如果没有运行PIM协议,收到组播数据帧就泛洪。 如果运行了IGMP snooping,则依据IGMP snooping中成员端口转发数据。 如果运行了IGMP proxy 则依据IGMP proxy表项来进行转发组播数据 3. 收到广播包,三层协议会依据type字段上交相应协议处理。 二、路由器收到未知表项数据包如何处理
路由器是依据报文目的IP进行查表转发的,如果没有目的路由直接丢弃。 1.如果收到的是单播帧,检查目的MAC为自己就接收,并根据type字段进行相应协议处理。
如果IP头的目的IP是自己,再依据IP头中的protocol字段交给本地协议处理。
如果DIP不是自己,则进行路由转发,没得路由则丢弃。 2. 如果收到的是广播数据帧,则依据type字段进行相应协议处理如DHCP,ARP等
3. 如果收到IP的是组播的,则上交协议(如OSPF,PIM) 如果收到组播数据帧,同时也运行了组播路由协议。 则按照以下处理 3.1不存在(S,G)则进行RPF检查,通过则创建(S,G)表项将通过RPF检查的设置为入接口。检查失败则丢弃. 3.2如果存在(S,G)并且报文接收接口与转发表项一致,则向所有下游接口转发报文。
如果存在(S,G)但收到数据接口与RPF检查接口不一致。则对该接口进行RPF检查 若检查的结果与(S,G)入接口一致,则来源错误,丢弃。
若不一致,则说明(S,G)已经过时,更新入接口,向所有下游接口转发。 最后
太阁老师的个人微信
添加太阁老师个人微信领取:太阁免费视频资料、NA综合实验配置文件拓扑图及模拟器、太阁独家实验手册、网工必读书籍等
|