网桥交换机区别在叙述前,我们先一起看两幅图:

1.网桥的连接模式:(红点处为HUB)

2.交换机连接模式:

从图中可以看到,网桥只有2个输入/出端口,而交换机有8个。嗯,是的,一开始的时候(那时候只有HUB这种设备),由于硬件水平不是很发达,人们为了提高局域网效率,减少广播风暴的出现,他们生产了网桥(一个只有两个输入/出端口的链路层设备,这时的网桥已经是个比较先进的设备),然后他们把一个局域网一分为2,中间用网桥连接,这样A发给BCD的数据就不会再广播到EFGH了(网桥发现如果数据包不是转发给下面这个子网的,它会自动丢弃此包),只有从A发到EFGH的数据包才能通过网桥,到达另外一个子网(网桥发现如果数据包是转发给下面这个子网的,它才会把包转发给这个子网)。

这样一来,非必要的传输减少了,整个网络的效率也随之提高可不少!人们发现网桥真是个好东西呀,随着硬件发展,出现了4个,8个端口的链路层设备,这就是交换机,由于交换机可以使得网络更安全(数据不容易被监听,因为数据不再广播了,注意:只是不容易而已,要搞你其实还是可以的),网络效率更高(还是因为数据不再广播!),交换机渐渐替代了HUB,成为组建局域网的重要设备。

所以说,网桥和交换机,基本上是一样的,嗯,只是基本上而已,细看还是有些不一样的,但在说明他们之间有什么不一样之前,我想先简单介绍一下网桥和交换机的工作原理。

3.网桥的工作原理:

上图是用一个网桥连接的两个网络,网桥的A端口连接A子网,B端口连接B子网,为什么网桥知道哪些数据包该转发,哪些包不该转发呢?那是因为它有两个表A和B,当有数据包进入端口A时,网桥从数据包中提取出源MAC地址和目的MAC地址。

1、一开始的时候,表A和表B都是空的,没有一条记录,这时,网桥会把数据包转发给B网络,并且在表A中增加一条MAC地址(把源MAC地址记录表中),说明这个MAC地址的机器是A子网的,同理,当B子网发送数据包到B端口时,网桥也会记录源MAC地址到B表。

2、当网桥工作一段时候后,表A基本上记录了A子网所有的机器的MAC地址,表B同理,当再有一个数据包从A子网发送给网桥时,网桥会先看看数据包的目的MAC地址是属于A子网还是B子网的,如果从A表中找到对应则,抛弃该包,如果不是,则转发给B子网,然后检查源MAC地址,是否在表中已经存在,如果不存在,在表A中增加一条记录。

噢,或许你现在会问了,为什么需要两张表呢,一张表不行么??嗯~刚才把表一分为二是为了便于理解,实际上,真正的网桥里面存的应该是一张表(当然有可能为了提速,或者其他原因,它也可能把信息存为多张表,这个得看它怎么实现了~),如果是一张信息表,表里记录的应该是:MAC-PortNum。

4.交换机有些许不同,如图:

交换机也有一张MAC-PORT对应表(这张表的学名为:CAM),和网桥不一样的是,网桥的表是一对多的(一个端口号对多个MAC地址),但交换机的CAM表却是一对一的,如果一个端口有新的MAC地址,它不会新增MAC-PORT记录,而是修改原有的记录

例如:现在交换机记录表里已经有一项:MAC1-Port1,如果此刻端口1又来了一个数据包,里面的源MAC地址是MAC2,此时,交换机会刷新交换机记录表:MAC1-Port1记录被修改为MAC2-Port1,因为交换机认为是端口1的计算机MAC地址变了,如果端口1连接的一台物理机器,MAC一般是不会变的,如果连接的是另外一个交换机,那这个端口的记录会变化得比较频繁(如上图的Port12,它是对外的接口,与一个局域网连接),另外,如果CAM表中没有找到和数据包的目的MAC地址对应的记录,交换机会对此数据包进行广播,发给本交换机的每一个端口。

网桥和交换机的缓存对比

网桥和交换机除了用CAM表指导数据包转发这点和HUB不一样外,网桥和交换机还有一个特点:缓存!对,网桥和交换机都有一定量的缓存,因为网桥和交换机转发数据包需要一些额外的操作,所以可能会占用一些时间,为了避免出现因来不及转发数据,导致大量数据丢失的情况,网桥和交换机就出现了缓存。

当然,缓存不是万能的,当网桥或交换机处理不及并且缓存用完了,以后再来的数据还是会丢失的。还一个网桥需要缓存的原因是:桥接两个传输速率不同的局域网,比如:802.3的传输速率说10mb/s,但实际上并不是真的10Mb/s,而 802.4(几乎)确实为10Mb/s,但两个局域网桥接时候必须是速率一样的,否则会有包丢失,而缓存也正好可以为不同速率网络连接时所使用。

网桥的缓存量是大于交换机的缓存量,因为网桥天生是为了连接两个网络的,两个网络桥接时所要处理的数据量会比一般的交换机需要处理的数据量要多,所以网桥的缓存也一般要比交换机大一点。

转载于:https://blog.51cto.com/wushank/1305119

网桥和交换机的工作原理及区别相关推荐

  1. 路由器与交换机的工作原理

    路由器与交换机的工作原理 计算机网络往往由许多种不同类型的网络互连连接而成.如果几个计算机网络只是在物理上连接在一起,它们之间并不能进行通信,那么这种"互连"并没有什么实际意义.因 ...

  2. 交换机开发(一)—— 交换机的工作原理

    一.交换机的工作原理 当交换机收到数据时,它会检查它的目的MAC地址,然后把数据从目的主机所在的接口转发出去.交换机之所以能实现这一功能,是因为交换机内部有一个MAC地址表,MAC地址表记录了网络中所 ...

  3. 路由器与交换机的工作原理(转)

    计算机网络往往由许多种不同类型的网络互连连接而成.如果几个计算机网络只是在物理上连接在一起,它们之间并不能进行通信,那么这种"互连"并没有什么实际意义.因此通常在谈到"互 ...

  4. 【转】交换机开发(一)—— 交换机的工作原理

    一.交换机的工作原理 当交换机收到数据时,它会检查它的目的MAC地址,然后把数据从目的主机所在的接口转发出去.交换机之所以能实现这一功能,是因为交换机内部有一个MAC地址表,MAC地址表记录了网络中所 ...

  5. 什么是交换机?交换机的工作原理是什么?

    交换机是一种用于电(光)信号转发的网络设备.它可以为接入交换机的任意两个网络节点提供独享的电信号通路.最常见的交换机是以太网交换机.交换机工作于OSI参考模型的第二层,即数据链路层.交换机拥有一条高带 ...

  6. 什么是交换机,交换机的工作原理

    什么是交换机,交换机的工作原理 1,什么是交换机 交换机(英文叫switch 简称SW )是一种网络硬件设备,是用一种(光)电信号转发交换数据的设备,可以为接入交换机的任意两个网络节点提供(光)电信号 ...

  7. 交换机的工作原理及作用

    交换机概述 交换机是一种多端口的网桥,在数据链路层使用MAC地址转发数据.通过引入路由功能,一些交换机也可以在网络层转发数据,这种交换机一般被称为三层交换机或者多层交换机. 交换机的工作原理 当数据来 ...

  8. 网络工程师基础-交换机基本工作原理

    网络中最常见的网络设备莫属于交换机了,因此对于交换技术的学习是在整个计算机网络学习中十分重要的.万丈高楼平地起,一砖一瓦靠根基,要学习交换技术我们首先就要了解交换机是如何工作的,了解了交换机的工作方式 ...

  9. 路由器和交换机的工作原理---笔面试

    路由器的工作原理 路由器的作用 1.路由,转发 2.不同网络类型的互联 路由器是一个工作在tcp/ip协议栈中的三层设备,同样具有二层的功能. 1.路由器的路由转发功能 对于一个进入路由器的数据包,先 ...

  10. DHCP和交换机的工作原理

    1.交换机 的工作原理? 当数据帧发送到交换机时,交换机会拆帧查看CAM表(又叫MAC地址表).有则转发,无则泛洪! client 客户 access访问 management管理 Switch#sh ...

最新文章

  1. Windows下Redis如何永久更改密码
  2. mysql分区字段创建索引_MySQL分区字段列有必要再单独建索引吗?
  3. 常见linux命令使用方法(二)
  4. Docker Swarm 用compose部署WordPress
  5. 挖洞技巧:任意账号密码重置
  6. linux删除文件退出,在Linux中用于在移动或删除文件时使`tail -f`退出的bash脚本
  7. java file构造方法_Java中FileOutputStream类的常用方法
  8. SAP Commerce Cloud 项目 Spartacus 入门
  9. 【CentOS 7笔记11】,目录权限,所有者与所有组,隐藏权限#171022
  10. bat产品经理能力模型_浅析产品经理能力模型
  11. 震惊!程序员一夜赚1W,没想到他就做了这个..........
  12. struts2 上传文件 HTTP Status 404 - No result defined for action.....and result input
  13. springboot事务管理
  14. mysql var目录很快_mysql数据库实现亿级数据快速清理的方法
  15. 【Esri联邦大会】看点13: “NOAA National Hurricane Center”:应急应用
  16. mysql统计分组求和
  17. 00023 自考高等数学
  18. opencv接受树莓派usb摄像头rtsp视频流
  19. 转 最强烈推荐-内有国内最好的java论坛
  20. sp3 文件格式说明

热门文章

  1. mysql身份证校验码_通过SQL校验身份证号码是否正确
  2. FR获取当前控件位置值并转换(或赋值可参考)
  3. win10平板模式_电脑也能当平板用?并可以轻松实现分屏
  4. 基于京东家电商品知识图谱的自动问答系统(二) -- IDEA搭建开发环境
  5. CS224N刷题——Assignment2.3_RNN:Language Modeling
  6. Python数据可视化库——Matplotlib
  7. 正则表达式收集(转)
  8. python笔记2-冒泡排序
  9. 使用docker compose 测试集群网络连接性
  10. 图片滚动js 实现图片无缝滚动