交换机的工作转发原理

交换机通常是运行在网络OSI七层模型的第二层数据链路层,如图中,第三层网络层通常是路由器运行在该层
在这里插入图片描述
今天我们来看看,交换机的工作转发原理是什么样的。

交换机既然是利用端口进行网络数据传输,那么它是如何识别数据是谁给谁的呢?

其实交换机通电后会自动建立一个端口地址表,也叫MAC地址表它会记录每个设备的MAC地址机和哪个端口连接的,它会有自动学习功能,一开始如果没有地址,每次经过交换机的信息,它都会读取并记录下送信息过来的设备端口MAC地址,如果下次有其他设备送信息给该设备,就直接送达了。

最普遍的情况下,转发原则是这样的:交换机收到一个以太帧数据,它自己会比对交换机已经学习到的端口地址表,如果表里存在端口地址,直接在对应的端口转发出去。如果表里不存在,则会向剩下的每个端口(除送信息过来的端口)广播发送一条相同的信息。

这是我能用自己的话把我所理解的交换机转发原理尽力展示给大家了,中间已经省掉一些没必要纠缠的专业术语了。

为了方便大家理解,手动图:

在这里插入图片描述
交换机A和交换机B,现在如果从主机01发一个数据到主机03,设定的前提是,交换机A和B的地址表都是空白。

那么首先,从主机01发数据到交换机A,交换机A在收到数据以后,先识别出主机的MAC地址是01(假设是01因为每台设备都是16进制的唯一地址),端口号是1。

交换机A查找自己MAC地址表,发现没有(如果有就直接转发),交换机A向其他的所有端口广播。

交换机B收到数据信息后,识别并学习源地址和过来的端口号。

交换机B查看地址表,发现没有,记录并向除了端口3以外的两个端口发送广播包。

最后的情况是,主机02会收到数据一次,不是自己的,丢弃数据;主机03收到数据一次,正好是自己的,接收数据;主机04也收到一次,丢弃。

整个转发过程就是这样了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/452348.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

八个最好的轻量级Linux发行版

如果你在苦恼老旧的硬件无法利用,如果你想要一个能够在不是很大的记忆棒上运行的系统,如果你想要在桌面端上运行200个虚拟机,那么你可以考虑一些“迷你”的Linux发行版。 曾经在08年介绍过当时的十大轻量级Linux,现在已经是2010年…

面向对象——三层架构(表现层、业务层、持久层)

① 持久层:采用DAO模式,建立实体类和数据库表映射(ORM映射)。也就是哪个类对应哪个表,哪个属性对应哪个列。持久层 的目的就是,完成对象数据和关系数据的转换。 ② 业务层:采用事务脚本模式。将…

VMware安装Centos7后有线线缆被拔出

背景:在win10 系统中的虚机软件VMware Workstation中安装CentOS7桌面版,安装过程中没有设置网络 1.确认你win10系统打开了这两个服务:VMware DHCP Service和VMware NAT Service 方法:电脑——右键——管理——服务和应用程序——服…

SpringCloud |第二篇: 服务消费者(Ribbon)

2019独角兽企业重金招聘Python工程师标准>>> 一、Ribbon简介 Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试…

万维网www

WWW是环球信息网的缩写,(亦作“Web”、“WWW”、“W3”,英文全称为“World Wide Web”),中文名字为“万维网”,"环球网"等,常简称为Web。 分为Web客户端和Web服务器程序。 WWW可以让W…

Mysql导入excel数据,解决某些特殊字符乱码问题

问题 做项目需要从excel表格导入到mysql的数据库表中,excel表格中的“规格”字段的“”符号导入数据库表中,会出现部分数据的“”这个符号会乱码,成“?”的形式。 解决方法 打开excel表格,另存为csv文件;用…

u盘安装成功计算机里找不到文件夹,u盘里的文件不见了,详细教您U盘内容不显示怎么办...

在工作、学习中,我们需要把资料携带外出的时候,首选的存储工具基本上都是U盘。不过有用户在使用U盘时却遇到了U盘的所有的文件夹不见了的情况,但内存的明明文件还在,这到底是为什么呢?难道U盘的文件真的不见了吗&#…

五分钟实现SpringBoot快速入门

文章目录一、创建Maven工程二、添加SpringBoot的起步依赖三、编写SpringBoot引导类四、编写Controller五、测试六、SpringBoot工程热部署一、创建Maven工程 二、添加SpringBoot的起步依赖 文件位置:pom.xml SpringBoot要求,项目要继承SpringBoot的起步…

代码编辑器Sublime Text 可以跨平台(linux,window,os x)

说到代码编辑器,大部分人首先会想到UltraEdit,EmEditor和notepad。但今天要介绍的是另一款功能非常强大的代码编辑器——Sublime Text。Sublime Text还是一款跨 OS X、Linux 和 Windows 三大平台的文字/代码编辑器。除了Sublime Text出色的功能&#xff…

计算机画图怎样更改文字,如何在图片上改字|超简单的修改图片里文字方法

这篇文章将要给大家介绍的是,不用联网,不用下载专业的图像处理软件,单纯用画图工具,就能修改表情包、图片上文字的方法,只适合简单的图片处理,复杂的还是交给专业的图像处理工具吧。下面系统吧就给大家带来…

javascript高级程序设计学习之数值转换 |Number(),parseInt(),parseFloat()

2019独角兽企业重金招聘Python工程师标准>>> 将非数值转换成数值的函数有三个:Number(),parseInt(),parseFloat(); 小记tip:Number()可以用于任何数据类型;parseInt(),parseFloat()针对的是将字符串; Number()的转换规…

Git学习的最佳教程

身为网页设计师或者网页开发者的你,可能已经听说过Git这个正快速成长的版本控制系统。它由GitHub维护;GitHub是一个开放性的、存储众人代码的网站。如果你想学习如何使用Git,请参考本文。在文章最后,我们罗列了其他Git学习资源。 …

如何使用idea快速创建SpringBoot项目

文章目录一、二、三、四、五、一、 二、 三、 四、 五、

闪光css,CSS实现的一闪而过的图片闪光效果

只需要两个html元素和一个css变换,我就能创造出我自己的闪光效果。让我们来实现它!呈现光泽图片下面就是这张addy在他博客上使用的图片:比我需要的要大一些,但你可以把它裁剪一些。注意:左边的那张是纯白色的&#xff…

循序渐进学好编程,不要太急!!!

软件开发人员是一个日新月异的领域—–IT中的大师,今天的编程方式与明天的编程或许截然不同,技术在不断地革新,新语言、新平台的如雨后春笋般出现、更好的解决方案的冒出,因此我们需要跟得上节奏,我们别无选择&#xf…

x230无线网卡驱动服务器版,ThinkPad X230网卡驱动

ThinkPad X230网卡驱动是一款专为ThinkPad X230打造的无线网卡驱动程序,当然,这款驱动也支持其他机型,包括ThinkPad X220,X220i,X220 Tablet,X220i Tablet等等,如果您的笔记本电脑属于下列所列机型中的一款,欢迎您来欧…

学成在线--0.项目概述

文章目录0.前言1.功能架构2.技术架构3.技术栈4.开发步骤0.前言 当前市场的在线教育模式多种多样,包括:B2C、C2C、B2B2C等业务模式,学成在线采用B2B2C业务模式,即向 企业或个人提供在线教育平台提供教学服务,老师和学生…

【Java学习】JDBC可以再深一点理解

JDBC驱动程序 JDBC驱动程序是JDBC API中实现定义的接口。JDBC是java语言中的与数据库连接的接口。也就是说JDBC是Java API,使得Java可以与数据库进行连接,而JDBC驱动程序是JDBC API,驱动JDBC进一步与数据库进行交互。 例如:使用JD…

wordpress 评论ajax,WordPress教程 WordPress实现提交评论ajax翻页效果教程

WordPress提交评论ajax翻页的效果会很大的提高用户体验度,虽然我们一般的个人WordPress博客评论也不会有很多,但是用户体验至上嘛,所以WordPress主题站小编为大家分享WordPress实现提交评论ajax翻页效果教程,希望能给大家能用得上…