Access、Hybrid和Trunk三种模式的理解

以太网端口的三种链路类型:Access、Hybrid和Trunk:

<1> Access类型的端口只能属于1个VLAN,一般用于连接计算机的端口;

<2> Trunk类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,一般用于交换机之间连接的端口;

<3> Hybrid类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,可以用于交换机之间连接,也可以用于连接用户的计算机。

  Hybrid端口和Trunk端口在接收数据时,处理方法是一样的,唯一不同之处在于发送数据时:Hybrid端口可以允许多个VLAN的报文发送时不打标签,而Trunk端口只允许缺省VLAN的报文发送时不打标签。
  
在这里大家要理解端口的缺省VLAN这个概念:
<1> Access端口只属于1个VLAN,所以它的缺省VLAN就是它所在的VLAN,不用设置;

<2> Hybrid端口和Trunk端口属于多个VLAN,所以需要设置缺省VLAN ID。缺省情况下,Hybrid端口和Trunk端口的缺省VLAN为VLAN 1;

<3> 如果设置了端口的缺省VLAN ID,当端口接收到不带VLAN Tag的报文后,则将报文转发到属于缺省VLAN的端口;当端口发送带有VLAN Tag的报文时,如果该报文的VLAN ID与端口缺省的VLAN ID相同,则系统将去掉报文的VLAN Tag,然后再发送该报文。

注:对于华为交换机缺省VLAN被称为“Pvid Vlan”, 对于思科交换机缺省VLAN被称为“Native Vlan”。

交换机接口出入数据处理过程:
<1> Acess端口收报文:
收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有则直接丢弃(缺省);

<2> Acess端口发报文:
将报文的VLAN信息剥离,直接发送出去;

<3> trunk端口收报文:
收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有判断该trunk端口是否允许该 VLAN的数据进入:如果可以则转发,否则丢弃;

<4> trunk端口发报文:
比较端口的PVID和将要发送报文的VLAN信息,如果两者相等则剥离VLAN信息,再发送,如果不相等则直接发送;

<5> hybrid端口收报文:
收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有则判断该hybrid端口是否允许该VLAN的数据进入:如果可以则转发,否则丢弃(此时端口上的untag配置是不用考虑的,untag配置只对发送报文时起作用);

<6> hybrid端口发报文:
1、判断该VLAN在本端口的属性(disp interface 即可看到该端口对哪些VLAN是untag, 哪些VLAN是tag);
2、如果是untag则剥离VLAN信息,再发送,如果是tag则直接发送;

以下案例可以帮助大家深入理解华为交换机的hybrid端口模式

[Switch-Ethernet0/1]int e0/1
[Switch-Ethernet0/1]port link-type hybrid
[Switch-Ethernet0/1]port hybrid pvid vlan 10
[Switch-Ethernet0/1]port hybrid vlan 10 20 untagged
[Switch-Ethernet0/1] int e0/2
[Switch-Ethernet0/2]port link-type hybrid
[Switch-Ethernet0/2]port hybrid pvid vlan 20
[Switch-Ethernet0/2]port hybrid vlan 10 20 untagged

  此时inter e0/1和inter e0/2下的所接的PC是可以互通的,但互通时数据所走的往返vlan是不同的。
  以下以inter e0/1下的所接的pc1访问inter e0/2下的所接的pc2为例进行说明:
  pc1所发出的数据,由inter0/1所在的pvid vlan10封装vlan10的标记后送入交换机,交换机发现inter e0/2允许vlan 10的数据通过,于是数据被转发到inter e0/2上,由于inter e0/2上vlan 10是untagged的,于是交换机此时去除数据包上vlan10的标记,以普通包的形式发给pc2,此时pc1->p2走的是vlan10;
  再来分析pc2给pc1回包的过程,pc2所发出的数据,由inter0/2所在的pvid vlan20封装vlan20的标记后送入交换机,交换机发现inter e0/1允许vlan 20的数据通过,于是数据被转发到inter e0/1上,由于inter e0/1上vlan 20是untagged的,于是交换机此时去除数据包上vlan20的标记,以普通包的形式发给pc1,此时pc2->pc1走的是vlan20;

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

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

相关文章

yum install nginx

From: http://www.cnblogs.com/ShepherdIsland/p/yum_install_nginx.html 先安装nginx的yum源 http://nginx.org/en/linux_packages.html#stable 找到链接&#xff0c;安装&#xff1a; rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.e…

11g下如何查询trace文件名

eygle的书中有讲到查看数据库的内容&#xff0c;利用转储文件来查看 aler system dump datafile 3 block 9&#xff1b; roger提点说先oradebug setmypid&#xff0c;再dump&#xff0c;然后直接oradebug tracefile_name&#xff0c;就能够得到trace文件的完整路径了。 如图 转…

el-table表格格式化某一列数据;统一处理el-table表格某一列数据

以下代码可以直接复制使用 场景&#xff1a;table的原数据就是 姓名1234&#xff0c;但是现在想要改成统一的格式。可以使用formatter属性&#xff0c;它用于格式化指定列的值&#xff0c;接受一个Function&#xff0c;会传入两个参数&#xff1a;row和column&#xff0c;可以…

OpenWrt交换机手册(Switch Documentation)

如果你的设备含有不少于1个的LAN接口&#xff0c;那这个设备在不同的接口之间可能有一个被称为交换(switch)的特殊连接。大多数的内部构造如下图所示: 如果你想要更改这些端口如何互相连接的&#xff0c;你需要配置你的switch设备。 (see also network.interfaces) UCI config…

Log4j快速使用精简版

Log4j快速使用精简版 1、导入log4j-1.2.17.jar包 2、在src根目录下创建log4j.properties文件 log4j.rootLoggerINFO, CONSOLE, FILE ## console 配置文件输出的目的地 &#xff08;控制台&#xff09;log4j.appender.CONSOLEorg.apache.log4j.ConsoleAppenderlog4j.appender.CO…

mac下安装nginx和php

From: http://www.jb51.net/article/42715.htm mac下使用homebrew安装安装、配置nginx、mysql、php-fpm的方法。一、前话&#xff1a;1.1、环境选择&#xff1a;重新在mac上配置php&#xff0c;原本mac上就自带有apach、php以及pgsql&#xff0c;如果图简单的话&#xff0c;直…

【交换机】MAC-VLAN的功能作用是什么,如何设置

MAC VLAN就是基于MAC地址划分的VLAN&#xff0c;MAC VLAN的最大优点就是用户不需要固定在某些端口下&#xff0c;可以随意移动&#xff0c;比如当用户物理位置移动时&#xff0c;即从一台交换机换到其它的交换机时&#xff0c;VLAN不用重新配置&#xff0c;所以&#xff0c;可以…

/deep/使用方式方式;/deep/无效; ::v-deep和>>>使用;

vue-loader官方文档的 /deep/ >>> ::v-deep 使用方法 场景&#xff1a;一般我们使用vue和element-ui&#xff0c;在修改第三方组件库的样式时候&#xff0c;会修改到页面不存在的html的标签样式&#xff0c;此时就需要使用深度作用选择器。 注意&#xff1a; 1.脚手…

ipsec NAT-T与穿透

拓扑&#xff1a; 一 NAT-T R1配置&#xff1a; R2配置&#xff1a; 默认开启NAT-T R3配置&#xff1a; 分析&#xff1a; 端口由UDP500变为UDP4500&#xff1b;隧道封装为&#xff1a;tunnel UDP-encaps。 二 穿透 R1配置&#xff1a; R2配置&#xff1a; R3配置&#xff1a; …

struts2 国际化

概述 Struts2 国际化是建立在 Java 国际化基础上的&#xff1a; - 为不同国家/语言提供对应的消息资源文件 - Struts2 框架会根据请求中包含的 Locale 加载对应的资源文件 - 通过程序代码取得该资源文件中指定 key 对应的消息 配置国际化资源文件 I. Action 范围资源文件: 在…

我的Mac os x中的nginx配置文件nginx.conf

环境: Mac os x 10.10.3 xcode6.3 在mac下用brew install nginx安装好了nginx&#xff0c;增加对php的支持&#xff0c;完整的nginx.conf文件内容如下: #user nobody; worker_processes 1;#error_log logs/error.log; #error_log logs/error.log notice; #error_log lo…

C程序中如何获取shell命令执行结果和返回值

如果在C程序中调用了shell命令&#xff0c;那么往往希望得到输出结果以及命令执行的返回布尔值。在这里分为两步来处理&#xff1a; 1.使用 popen 与 pclose 来执行shell命令&#xff1b; 2.使用‘echo $?’来获取上一条指令执行状态&#xff0c;如果为0那么标识成功执行&am…

去除le-table表格的hover效果

css代码&#xff1a; 如果不生效&#xff0c;就单独的放在一个style标签内&#xff0c;但是单独放会影响全局 <style>/* 首先去除默认的hover效果 *//deep/.el-table--enable-row-hover .el-table__body tr:hover > td {background-color: rgba(0, 0, 0, 0) !importa…

使用 Chrome Timeline 来优化页面性能

使用 Chrome Timeline 来优化页面性能有时候&#xff0c;我们就是会不由自主地写出一些低效的代码&#xff0c;严重影响页面运行的效率。或者我们接手的项目中&#xff0c;前人写出来的代码千奇百怪&#xff0c;比如为了一个 Canvas 特效需要同时绘制 600 个三角形&#xff0c;…

bash shell函数的定义及变量的简单说明

From: http://blog.sina.com.cn/s/blog_4ce3a68a0100i77a.html 函数&#xff1a; “函数是一种脚本内脚本”&#xff0c;程序员很难想像没有函数的日子&#xff0c;至少我会比较痛恨。 所以了解函数的定义也就是学习bash的一大要点了。 函数大大增强了shell的编程能力&…

脚本中判断Shell命令执行结果

与C程序中判断同理&#xff0c;只是语法差异&#xff0c;提一点&#xff0c;在这里尤其需要注意 Shell 的语法规则:-D。 Code&#xff1a; #&#xff01;bin/shifconfig if [ $? -eq 0 ]; thenecho "succeed!" elseecho "failed!" fi

el-table点击某行高亮;el-table设置hover效果;监听el-table点击某行变色;去除el-table的hover效果;监听el-table的hover事件

以下代码可直接复制使用 无需任何修改 注意&#xff1a;如果最后的的css不生效&#xff0c;就单独的放在一个style标签内 重点解释&#xff1a; :row-class-name"tableRowClassName" //这个是设置返回某行的类名 :stripe"false" …

centos 查看版本

From: http://www.cnblogs.com/hitwtx/archive/2012/02/13/2349742.html 有以下命令可以查看&#xff1a; # lsb_release -a LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch Distributor ID: CentOS Description: CentOS release …

SQL Server replication requires the actual server name to make a connection to the server.错误解决...

今天&#xff0c;在作数据发库时&#xff0c;出现如下错误&#xff1a; "SQL Server replication requires the actual server name to make a connection to the server. Connections through a server alias, IP address, or any other alternate name are not supporte…

el-table使用fixed后,最后一行显示不全;el-table设置fixed后,最后一行被遮挡。

解决代码&#xff1a; .el-table {/deep/ .el-table__body-wrapper {overflow-x: scroll !important;//直接设置横轴内容滚动条 即可撑高高度 还不影响使用} }一、情景&#xff1a;给element的el-table设置fixed固定后&#xff0c;最后一行显示部分被遮挡。有的说是有时出现这…