交换机与HUB的区别
由于经常需要在数台设备间交换数据,前段时间把hub(10M)换成了交换机(100M),今天抓包的时候发现电脑接着交换机的时候不能像以前接着hub一样可以抓所有的包了,结果一查才知道交换机有学习功能,看来工作时间一长,一些基本概念都忘记了。又查了一下,温故而知新,还是孔子说得对啊!
A:交换机
一、交换机数据转发原理
基于MAC地址表
1. 学习,当S收到一个数据帧时,先查看帧中的源MAC地址,然后对比MAC地址表,如果没有就添加这个条目。
2. 转发,S根据MAC地址表单播转发数据帧,转发时先查看帧中目标MAC地址,然后对比MAC地址表,根据表中对应的端口号将数据转发到相应的端口。
3. 如果目标MAC地址不在MAC地址表中,S就向除源端口外所有的端口广播该帧。
4. 老化时间是300s,超时后删除。
二、交换机的交换方式:
1. 快速转发,不进行帧的存储和校验,建立通信信道直接转发数据。优点:由于不需要存储,延迟非常小、交换非常快。缺点:不保存数据包,无法检查数据包是否有误。没有缓存,不能将不同速率的输入/输出端口直接接通,容易丢包。
2. 存储转发,完整存储收到的帧,进行校验后转发。优点:对数据包进行错误检测,有效地改善网络性能。支持不同速度端口间的转换,保持高低速端口间的协同工作。缺点:数据处理延时大。
3. 分段过滤,介于以上两者之间,检查数据包的长度是否够64B,如果小于,说明是假包,则丢弃该包;如果大于,则发送该包。优点:比存储转发快,比快速转发慢。缺点:没有校验。
B、HUB
集线器属于纯硬件网络底层设备,基本上不具有类似于交换机的"智能记忆"能力和"学习"能力。没有具备交换机所具有的MAC地址表,所以它发送数据时都是没有针对性的,而是采用广播方式发送。也就是说当它要向某节点发送数据时,不是直接把数据发送到目的节点,而是把数据包发送到与集线器相连的所有节点。