二层和三层转发

二层转发的机制是什么?学习线程和报文转发线程。二层只跟MAC地址有关 与IP无关

所以在二层做IP-MAC绑定是无效的。

 

三层以太网交换机的转发机制主要分为两个部分:

二层转发和三层交换。
  
  先讲二层转发流程。
  
  1、 MAC地址介绍
  MAC地址是48 bit二进制的地址,如:00-e0-fc-00-00-06。
  可以分为单播地址、多播地址和广播地址。
  
  单播地址:第一字节最低位为0,如:00-e0-fc-00-00-06
  
  多播地址:第一字节最低位为1,如:01-e0-fc-00-00-06
  
  广播地址:48位全1,如:ff-ff-ff-ff-ff-ff
  
  注意:
  1)普通设备网卡或者路由器设备路由接口的MAC地址一定是单播的MAC地址才能保证其与其它设备的互通。
  
  2) MAC地址是一个以太网络设备在网络上运行的基础,也是链路层功能实现的立足点。
----------------------------------------------------------------------------------

2、 二层转发 介绍
  交换机二层的转发特性,符合802.1D网桥协议标准。
  
  交换机的二层转发 涉及到两个关键的线程:地址学习线程和报文转发线程。
  
  学习线程如下:
  1)交换机接收网段上的所有数据帧,利用接收数据帧中的源MAC地址来建立MAC地址表;
  
  2)端口移动机制 :交换机如果发现一个包文的入端口和报文中源MAC地址的所在端口不同,就产生端口移动,将MAC地址重新学习到新的端口;
  
  3)地址老化机制 : 如果交换机在很长一段时间之内没有收到某台主机发出的报文,在该主机对应的MAC地址就会被删除,等下次报文来的时候会重新学习。
  
  注意: 老化也是根据源MAC地址 进行老化。
  
  报文转发线程:
  1)交换机在MAC地址表中查找数据帧中的目的MAC地址,如果找到,就将该数据帧发送到相应的端口,如果找不到,就向所有的端口发送;
  
  2)如果交换机收到的报文中源MAC地址和目的MAC地址所在的端口相同,则丢弃该报文;
  
  3)交换机向入端口以外的其它所有端口转发广播报文。
  
  3、 VLAN二层转发 介绍
  报文转发线程:
  引入了VLAN以后对二层交换机的报文转发线程产生了如下的影响:
  
  1)交换机在MAC地址表中查找数据帧中的目的MAC地址,如果找到(同时还要确保报文的入VLAN和出VLAN是一致的),就将该数据帧发送到相应的端口,如果找不到,就向(VLAN内)所有的端口发送;
  
  2)如果交换机收到的报文中源MAC地址和目的MAC地址所在的端口相同,则丢弃该报文;
  
  3)交换机向(VLAN内)入端口以外的其它所有端口转发广播报文。
  
  以太网交换机上通过引入VLAN,带来了如下的好处:
  
  1)限制了局部的网络流量, 在一定程度上可以提高整个网络的处理能力。
  
  2)虚拟的工作组,通过灵活的VLAN设置,把不同的用户划分到工作组内;
  
  3)安全 性,一个VLAN内的用户和其它VLAN内的用户不能互访,提高了安全性。
  
  另外,还有常见的两个概念VLAN的终结和透传, 从字面意思上就可以很好的了解这两个概念。所谓VLAN的透传就是某个VLAN不仅在一台交换机上有效,它还要通过某种方法延伸到别的以太网交换机上,在 别的设备上照样有效;终结的意思及相对,某个VLAN的有效域不能再延伸到别的设备,或者不能通过某条链路延伸到别的设备。
  
  VLAN透传可以使用802.1Q技术,VLAN终结可以使用PVLAN技术。
  
  IEEE802.1Q协议是VLAN的技术标准,主要是修改了标准的帧头,添加了一个tag字段,其中包含了VLAN ID等VLAN信息,具体实现这里不谈,如果有兴趣可以看相关的标准和资料。
  
  注意:在Trunk端口转发报文的时候,如果报文的VLAN Tag等于端口上配置的默认VLAN ID,则该报文的Tag应该去掉,对端收到这个不带Tag信息的报文后, 从端口的PVID获得报文的所属VLAN信息,因此配置的时候必须保证连接两台交换机之间的一条Trunk链路两端的PVID设置相同。
  
  为什么要去Tag呢?
  这样做是为了保证一般的用户插到Trunk上以后,仍旧可以正常通信 ,因为普通用户无法识别带有802.1Q Vlan信息的报文。
  
  使用802.1Q技术可以很好的实现VLAN的透传,可是有的时候需要把VLAN终结掉,也就是说这个VLAN的边界在哪里终止,PVLAN技术可以 很好的实现这个功能,同时达到节省VLAN 的目的。cisco的PVLAN意思是private vlan,而我们的PVLAN意思是primary vlan。
  
  这里的VLAN有两类:Primary vlan和secondary vlan(子VLAN)。
  
  实现了接入用户二层报文的隔离,同时上层交换机下发的报文可以被每一个用户接收到,简化了配置,节省了VLAN资源。具体实现这里不谈,如果有兴趣可以相关资料。
  
  下面谈谈三层交换流程。
  
  用VLAN分段,隔离了VLAN间的通信,用支持VLAN的路由器(三层设备)可以建立VLAN间通信。但使用路由器来互联企业园区网中不同的VLAN显然不合时代的潮流。因为我们可以使用三层交换来实现。
  
  差别1(性能):传统的路由器基于微处理器转发报文,靠软件 处理,而三层交换机通过ASIC硬件来进行报文转发,性能差别很大;
  
  差别2(接口类型):三层交换机的接口基本都是以太网接口,没有路由器接口类型丰富;差别3:三层交换机,还可以工作在二层模式,对某些不需路由的包文直接交换,而路由器不具有二层的功能。
  
  首先让我们看一下设备互通的过程:

  如图所示:交换机上划分了两个VLAN,在VLAN1,VLAN 2上配置了路由接口用来实现vlan1 和 vlan 2之间的互通。
  
  A和B之间的互通(以A向B发起ping请求为例):
  
  1) A检查报文的目的IP地址,发现和自己在同一个网段;
  
  2) A---->B ARP请求报文,该报文在VLAN1 内广播;
  
  3) B---->A ARP回应报文;
  
  4) A---->B  icmp request;
  
  5) B---->A  icmp reply;
  
  A和C之间的互通(以A向C发起ping请求为例):
  1) A检查报文的目的IP地址,发现和自己不在同一个网段;
  
  2) A---->switch(int vlan 1) ARP请求报文,该报文在VLAN1 内广播;
  
  3) 网关---->A ARP回应报文;
  
  4) A---->switch  icmp request(目的MAC是 int vlan 1的MAC,源MAC是A的MAC,目的IP是C,源IP是A);
  
  5) switch收到报文后判断出是三层的报文。检查报文的目的IP地址,发现是在自己的直连网段;
  
  6) switch(int vlan 2)---->C  ARP请求报文,该报文在VLAN2 内广播;
  
  7) C--->switch(int vlan 2) ARP回应报文;
  
  8) switch(int vlan 2)---->C icmp request (目的MAC是 C 的MAC,源MAC是 int vlan 2的MAC,目的IP是C,源IP是A)同步骤4)相比报文的MAC头进行了重新的封装, 而IP层以上的字段基本上不变;
  
  9) C---->A  icmp reply,这以后的处理同前面icmp request的过程基本相同。
  
  以上的各步处理中,如果ARP表中已经有了相应的表项,则不会给对方发ARP请求报文。
  
  怎么样来区分二和三层的数据流?
  3526产品是三层以太网交换机,在其处理流程中既包括了二层的处理功能,又包括了三层的处理功能。
  
  区别二三 层转发的 基本模型:

 


  如图所示:
  
  三层交换机划分了2个VLAN, A和B之间的通信是在一个VLAN内完成,对与交换机而言是二层数据流,A和C之间的通信需要跨越VLAN,是三层的数据流。
  
  上面提到的是宏观的方法,具体到微观的角度,一个报文从端口进入后,Swtich设备是怎么来区分二层包文,还是三层报文的呢?
  
  从A到B的报文由于在同一个VLAN内部,报文的目的MAC地址将是主机B的MAC地址,而从A到C的报文,要跨越VLAN,报文的目的MAC地址是设备虚接口VLAN1上的MAC地址。
  
  因此交换机区分二三层报文的标准就是看报文的目的MAC地址是否等于交换机虚接口上的MAC地址。
  
  以华为 3ComS3526交换机为例,三层交换机整个处理流程中分成了三个大的部分:
  
  1)平台软件协议栈部分
  
  这部分中关键功能有:
  
  运行路由协议,维护路由信息表;

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

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

相关文章

【转】胶片曝光时的排版!!!!!!!

这个本来没啥 不是什么算法 绝技。 都不值得一提。 其实这个是医学影像胶片曝光时排版的一个逻辑。 dicom标准第三部分 主要是讲IOD定义 在第166页有这样的描述: 表C.13.5-1图象盒象素描述组件 属性名称 标记       说明 图象位置 (2020,0010)  …

计算机课数学,这4个专业,对数学要求很高,数学不好的慎选!

建筑学专业这个专业就是典型数学课程比较多的专业,如果数学成绩不好,真心建议千万不要选择这个专业,因为学习的课程与大多与数学有关,而且难度较大。像代数,微积分,线性规划,统计学等课程都是在…

架构师之路(5)---IoC框架

1 IoC理论的背景 我们都知道在面向对象的应用中,软件系统都是由N个对象组成的,它们通过彼此的合作,最终实现业务逻辑。 图1:耦合在一起的对象 如果我们打开机械式手表的后盖,就会看到与上面类似的情形,各…

【转】数据库软考笔记(一)第一章 计算机硬件基础知识笔记总结

转自:https://blog.csdn.net/qq_36411874/article/details/115057569 目录 运算器:ALU、AC、DR、PSW 控制器:IR、PC、AR、ID 寄存器组(了解即可) 存储器 存储器与总线(了解,考分类&#xf…

【转】DICOM医学图像处理:开源库mDCM与DCMTK的比較分析(一),JPEG无损压缩DCM图像

转自:https://www.cnblogs.com/mfrbuaa/p/4004114.html 有修订 背景介绍: 近期项目需求,需要使用C#进行最新的UI和相关DICOM3.0医学图像模块的开发。在C语言下,我使用的是应用最广泛的DCMTK开源库,在本专栏的起初阶段…

xfire客户端对返回list很挑剔,所以需要使用泛型。

casldap异常分析 | xfirewebservice(服务器配置篇) 2008-12-31xfirewebservice(客户端调用篇) 服务接口,就是用来调用的,所以客户端显得尤为重要,xfire客户端对返回list很挑剔,所以需要使用泛型。 如何建立webservice client 步骤…

在虚拟机上运行vxWorks

Vxworks是一个嵌入式系统,主要运行在arm、ppc、mips等嵌入式处理器上,它同样可以运行在X86处理器上。风河公司开发的tornado开发环境就 包括了pentium版本,并且发布了相应的bsp。因此我们可在vmware虚拟机上运行vxworks,利用虚拟机…

使用SDL打造游戏世界之入门篇 - 7

打开和显示图片在这个例子里我们将学习如何使用SDL程序中打开和显示图片。示例程序将绘制一个漂亮的背景,上面显示一个正方形图案,并可以使用键盘的方向键移动它。如果比较熟悉“推箱子”这个游戏,可以看出这个程序实际就是推箱子游戏的基础。…

【转】GPS从入门到放弃(一) --- GPS基础原理

转自:https://blog.csdn.net/tyst08/article/details/100529424 GPS从入门到放弃(一) — GPS基础原理 GPS,全称Global Positioning System,已经广泛应用于我们的日常生活中了,现在的智能手机 里都会自带G…

【转】10个推荐的 PACS/DICOM Server开源项目

10个推荐的 PACS/DICOM Server开源项目 转自:https://zhuanlan.zhihu.com/p/65437040 soolaugust 喜欢我的分享可以关注公众号:雨夜随笔 35 人赞同了该文章 本文仅授权给公众号:雨夜随笔, 欢迎关注 本文翻译自:To…

字节序、位序

字节序 字节序,又称端序、尾序,英文单词为Endian,该单词来源于于乔纳森斯威夫特的小说《格列佛游记》,小说中的小人国因为吃鸡蛋的问题而内战,战争开始是由于以下的原因:我们大家都认为,吃鸡蛋前…

怎么抓取屏幕截图计算机考试时间,定时抓屏快照(电脑截屏工具)V4.8 最新版

定时抓屏快照(电脑截屏工具)是一款非常实用的电脑屏幕定时抓拍软件。想定时截取电脑屏幕?定时抓屏快照(电脑截屏工具)轻松帮助用户。马上要放假了,家长一定很担心小孩最新的上网情况,看是在电脑上玩什么,用户通过该软件可以及时了…

【转】matlab函数编译成dll供Cpp调用的方法

转自:https://www.cnblogs.com/vincenzo/archive/2009/09/09/1563467.html 以前做过matlab7与c的混合编程:将m函数编译成dll给C调用,从而加快开发的进度。但是今天在matlab2008b下面又做了一遍,发现matlab又改了很多东西&#xf…

可以测试流放之路伤害的软件,测试平台及细节一览 - 《流放之路》国服硬件需求测试:低配也能续写ARPG传奇 - 超能网...

测试平台、场景说明测试平台测试平台配置主要分为两套,第一套配置为Skylake平台基础搭建的ASUS MAXIMUS VIIIGEN(Z170)主板,处理器为Intel Core i7-6700K,内存是G.Skill Ripjaws V 4GB DDR43200x2组成的双通道;第二套配置为Kaveri…

关于增强(五)-Class Enhancement

Class/Interface增强允许增加, 对已有的方法增加可选参数 添加方法,事件,事件处理 参考接口 对存在的方法添加出口,其中包括方法开始前的出口(Pre-Exit),方法结束快结束的出口(Post-Exit)&#…

【转】彻底理解cookie,session,token

转自:https://zhuanlan.zhihu.com/p/63061864 彻底理解cookie,session,token 发展史 1、很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏…

【转】c#数字图像处理(一)Bitmap类、 Bitmapdata类和 Graphics类

转自:https://www.cnblogs.com/dearzhoubi/p/8553763.html Bitmap类、 Bitmapdata类和 Graphics类是C#图像处理中最重要的3个类,如果要用C# 进行图像处理,就一定要掌握它们。 1.1 Bitmap类 Bitmap对象封装了GDI中的一个位图,此位图由图形图像及其属性的像素数据组成…

【转】c#数字图像处理(二)彩色图像灰度化,灰度图像二值化

转自:https://www.cnblogs.com/dearzhoubi/p/8571652.html 为加快处理速度,在图像处理算法中,往往需要把彩色图像转换为灰度图像,在灰度图像上得到验证的算法,很容易移 植到彩色图像上。 24位彩色图像每个像素用3个字节表示,每个字节对应着R、G、B分量的亮度(红、绿…

【转】c#数字图像处理(三)灰度直方图

转自:https://www.cnblogs.com/dearzhoubi/p/8621804.html 灰度直方图是灰度的函数,描述的是图像中具有该灰度级的像素的个数。如果用直角坐标系来表示,则它的横坐标是灰度级,纵坐标是该灰度出现的概率(像素的个数)。 using System; using System.Collections.Gener…

电梯门禁系统服务器一般在哪,别被吓住了,电梯门禁(梯控)安装其实并不难...

电梯门禁又称梯控,主要用于对电梯的出入权限进入控制,只有授权卡在读卡器刷过后,才能到达指定楼层。梯控的使用越来越普遍了,很多人觉得梯控很神秘,很高不可攀,其实说到底它不过是门禁的一种,只…