用经验诠释Access、Trunk和Hybird端口数据收发规则

2024-02-29 05:20

本文主要是介绍用经验诠释Access、Trunk和Hybird端口数据收发规则,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

以下内容摘自正在当当网、京东网、卓越网、互动出版网预售即将正式发售的《华为交换机学习指南一书(全书近千页)。本书是由华为官方授权,国内第一本,也是唯一一本华为交换机权威学习指南,是华为ICT认证培训指定教材。

当当网链接:http://product.dangdang.com/23372225.html
京东网链接:http://item.jd.com/11355972.html

卓越网上的链接:http://www.amazon.cn/dp/B00GT743ME/ref=sr_1_1

互动出版网上的链接:http://product.china-pub.com/3768908#ml
在这里可以在线试读或下载本书两章完整的内容:http://wenku.it168.com/d_001324890.shtml

6.2.1 二层以太网端口

  在华为交换机中主要包括:Access(访问)、Trunk(干道)和Hybrid(混合)、QinQ这四种二层以太网端口。在本节介绍的基于端口VLAN划分方式中可以把前三种二层交换机以太网端口加入到特定的VLAN中,但是其它所有VLAN划分方式都只能添加Hybrid类型端口QinQ端口仅用于支持QinQ协议,不能用于VLAN划分。

1. 二层以太网端口类型

  下面具体介绍华为交换机的AccessTrunkHybridQinQ这四种二层以太网端口的基本特性和数据帧发、发规则。

l  Access端口

   Access端口主要是用来连接用户主机的二层以太网端口。它有一种最主要的特性就是:仅允许一个VLAN的帧通过,反过来也就是Access端口仅可以加入到一个VLAN中,且Access端口发送的以太网帧永远是Untagged(不带标签)的。

l  Trunk端口

  Trunk端口是用来连接与其他交换机的二层以太网端口。它的最主要特性就是允许多个VLAN的帧通过,并且所发送的以太网帧都是带标签的,除了发送VLAN IDPVIDPort Default VLAN ID,端口缺省VLAN ID)一致的VLAN帧。

l  Hybrid端口

  Hybrid端口可以说是以上Access端口和Trunk端口的混合体,具有它们共同的特等性,是一种特殊的二层以太网端口。正因如此,Hybrid端口既可以连接用户主机,又可以连接其他交换机、路由器设备。同时Hybrid端口又允许一个,或多个VLAN的帧通过,并可选择以带标签,或者不带标签的方式发送数据帧。

l  QinQ端口

  QinQ端口是专用于QinQ协议的二层以太网端口。它可以给数据帧加上双层VLAN标签,即在原来标签的基础上,给帧加上一个新的标签,从而可以支持多达4094×4094VLAN,满足企业用户网络对VLAN数量更高的需求。S1700S2700SI不支持QinQ类型端口。

【经验之谈】虽然理论上来讲交换机与交换机、交换机与路由器连接之间的链路也可以是Access类型的,但在实际的组网应用通常是带标签类型的,可以是Trunk类型,也可以是带标签的Hybird类型。一方面是因为不同网络设备间的通信通常是包含多个VLAN间的通信,而Access类型端口仅允许一个VLAN的数据通过,肯定不行;另一方面,Access类型和不带标签的Hybrid类型在发送数据时是不带标签的,这样一来,对端设备接口接收到来自本端设备任何VLAN的数据后都将打上该接口的PVID所对应的VLAN标签,并且被错误地转发到该VLAN中,这显然不符合实际需求,最终造成无法正常通信。

   另外,对于连接用户PC机、服务器主机或者傻瓜式二层交换机设备的端口仅可以是Access类型或者不带标签的Hybrid类型,因为这些设备不能识别带有VLAN标签的数据帧,而这两种类型端口在发送数据时正好是不带VLAN标签的。傻瓜式二层交换机设备所连接的所有设备都将加入到对端交换机端口所加入的一个VLAN中。

2. 二层以太网端口的缺省VLAN

   以上AccessTrunkHybrid三种类型二层以太网端口都可以配置一个缺省VLAN,对应的VLAN IDPVID。但端口类型不同,其缺省VLAN的含义也有所不同。Aceess端口的缺省VLAN就是Access端口所加入的VLAN,因为Aceess端口只能加入一个VLAN。但TrunkHybrid端口的缺省VLAN需要通过命令配置指定,因为它们都相当于加入了多个VLAN,缺省都是VLAN1。有关缺省VLAN的具体配置方法将在本章后面介绍TrunkHybrid端口配置时会有所体现。

3. 二层以太网端口的数据收发规则

   以上AccessTrunkHybrid三种类型二层以太网端口在接收和发送数据帧时对帧的处理规则也是不同的,而这些规则直接影响着数据通信的成败,一定要记住。具体如表6-2所示。

【经验之谈】这里所说的数据帧指交换机端口接收从对端设备发来的数据帧,而不是接收从交换机内部的另一个端口发来的数据帧,因为在交换机内部中传输的数据帧都是带有VLAN标签的,无论是从哪种交换机端口发来的数据帧。同理,这里所说的数据帧指从交换机端口向对端设备发送数据帧,而不是指本地交换机中一个端口向另一个交换机端口发送数据帧。这一点要特别注意,否则很难理解这些端口的数据接收、发送规则。

表6-2  二层以太网端口数据帧处理规则

端口类型

收到不带VLAN标签的帧的处理规则

收到带VLAN标签的帧的处理规则

发送帧时的处理规则

用途

Access端口

接收该帧,并打上该端口所加入VLANVLAN标签

当帧中的VLAN ID与端口加入的VLANVLAN ID相同时接收该帧,否则丢弃该帧

当帧中的VLAN标签与该端口的PVID相同时,则去掉帧中的标签,然后发送该帧,否则丢弃该数据帧。Access端口所发送的帧总是不带VLAN标签的

端口只能属于1VLAN,用于设备与计算机直接连接

Trunk端口

在帧中打上该端口的缺省的VLAN标签,当此缺省VLAN ID在该端口允许通过的VLAN ID列表里时,接收该帧,否则丢弃该帧

当帧中的VLAN ID在该端口允许通过的VLAN ID列表里时,接收该帧,否则丢弃该帧

当帧中的VLAN ID与该端口的缺省VLAN ID相同,且是该端口允许通过的VLAN ID时,则去掉帧中的VLAN标签后再发送该帧

当帧中的VLAN ID与该端口的缺省VLAN ID不同,但仍是该端口允许通过的VLAN ID时,保留帧中原有VLAN标签并发送该帧

当帧中的VLAN ID不是该端口允许通过的VLAN ID时,不允许发送

端口允许多个VLAN通过,可以接收和发送多个VLAN的帧,一般用于网络设备之间的连接

Hybrid端口

当帧中的VLAN ID是该端口允许通过的VLAN ID时,则发送该帧(不管帧中的VLAN ID与该端口的缺省VLAN  ID是否相同),但可以通过命令配置发送时是否携带原有的VLAN标签(通常只有在与主机连接的链路不需要带VLAN标签

当帧中的VLAN ID不是该端口允许通过的VLAN ID时,丢弃该帧

端口允许多个VLAN通过,可以接收和发送多个VLAN的帧,且既可以用于网络设备之间的连接,也可以用于网络设备与用户设备之间的连接

【经验之谈】这里有一个大家争论得比较多的一个问题,那就是帧到达Access端口时交换机是否会为帧打上VLAN标签。因为许多认为既然Access端口所发送的帧都是不打VLAN标签的,所以有人认为Access端口在帧中打上标签是没有任何意义的,也就认为Access端口不会在帧中打上标签。其实这是错误的。

  虽然Access端口向对端设备发送数据时是不带VLAN标签的,但是数据到了交换机后还需要一个转发过程,在交换机内部传输中所有数据都是带有VLAN标签的(当然这要求交换机支持VLAN才行),而且也有许多时候数据不是直接转发到目的节点的,而是需要在交换机上进行一些处理(如基于VLAN的策略路由、基于VLANACL等),或者进行端口镜像等管理工作,这些都需要识别这些数据是来自哪个VLAN的用户,毕竟在一个交换机的这么多端口上可能分属于不同的VLAN

6.2.2 二层太网链路

  上节介绍的AccessTrunkHybrid这三种以太网端口所形成的链路又可归纳成两种以太网链路:接入链路(Access Link)和干道链路(Trunk Link)。它们是根据链路中需要允许通过的VLAN数据帧数量的不同来划分的。

l  接入链路(Access Link):这是交换机直接连接用户主机的链路。通常情况下,主机并不需要知道自己属于哪个VLAN,主机硬件通常也不能识别带有VLAN标签的帧,所以主机通过接入链路发送和接收的数据帧都是Untagged帧。但一定要注意,接入链路不一定只允许来自一个VLAN的数据帧通过,只是Access端口链路才仅允许一个VLAN数据帧通过,在连接用户主机的Hybrid端口链路上同样允许来自多个VLAN的数据帧(不带标签)通过。

l  干道链路(Trunk Link):这是用于交换机间的互连或交换机与路由器之间连接的链路。干道链路可以承载多个不同VLAN数据,数据帧在干道链路传输时,干道链路的两端设备需要能够识别数据帧属于哪个VLAN,所以在干道链路上传输的都是Tagged帧,除了该链路的PVID所属VLAN的帧(默认为VLAN1)。

    图6-6显示了以上两种链路类型及所传输的帧类型(带有Tag的帧和Untagged帧),从中可以发现,在交换机设备之间的链路都属于干道链路,传输的是带有Tag的帧;而在交换机与主机设备之间的可以是接入链路,也可以是干道链路,具体要视主机所连接的交换机端口类型而定,但传输的都是Untagged的帧。

10659021_13865498219NeR.jpg



图6-6 两种链路类型及可传输的帧类型

【经验之谈】交换机在接收到帧后,会根据对应端口类型采取相应的数据收、发处理。如果帧需要通过另一台交换机转发,则该帧必须通过干道链路透传到对端交换设备上。为了保证其它交换设备能够正确处理帧中的VLAN信息,在干道链路上传输的帧必须都打上了VLAN标签。

  当交换机最终确定帧出端口后,在将帧发送给主机前需要将VLAN标签从帧中删除,这样主机接收到的帧都是不带VLAN标签的以太网帧,也只有这样主机才可能识别。所以一般情况下,干道链路上传输的都是带VLAN标签的帧,接入链路上传送到的都是不带VLAN标签帧。这样处理的好处是:网络中配置的VLAN信息可以被所有交换设备正确处理,而主机不需要了解VLAN信息。

本文转自王达博客51CTO博客,原文链接http://blog.51cto.com/winda/1339614如需转载请自行联系原作者

茶乡浪子

这篇关于用经验诠释Access、Trunk和Hybird端口数据收发规则的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/757697

相关文章

Redis的数据过期策略和数据淘汰策略

《Redis的数据过期策略和数据淘汰策略》本文主要介绍了Redis的数据过期策略和数据淘汰策略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录一、数据过期策略1、惰性删除2、定期删除二、数据淘汰策略1、数据淘汰策略概念2、8种数据淘汰策略

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

Windows设置nginx启动端口的方法

《Windows设置nginx启动端口的方法》在服务器配置与开发过程中,nginx作为一款高效的HTTP和反向代理服务器,被广泛应用,而在Windows系统中,合理设置nginx的启动端口,是确保其正... 目录一、为什么要设置 nginx 启动端口二、设置步骤三、常见问题及解决一、为什么要设置 nginx

Python给Excel写入数据的四种方法小结

《Python给Excel写入数据的四种方法小结》本文主要介绍了Python给Excel写入数据的四种方法小结,包含openpyxl库、xlsxwriter库、pandas库和win32com库,具有... 目录1. 使用 openpyxl 库2. 使用 xlsxwriter 库3. 使用 pandas 库

SpringBoot定制JSON响应数据的实现

《SpringBoot定制JSON响应数据的实现》本文主要介绍了SpringBoot定制JSON响应数据的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录前言一、如何使用@jsonView这个注解?二、应用场景三、实战案例注解方式编程方式总结 前言

使用Python在Excel中创建和取消数据分组

《使用Python在Excel中创建和取消数据分组》Excel中的分组是一种通过添加层级结构将相邻行或列组织在一起的功能,当分组完成后,用户可以通过折叠或展开数据组来简化数据视图,这篇博客将介绍如何使... 目录引言使用工具python在Excel中创建行和列分组Python在Excel中创建嵌套分组Pyt

在Rust中要用Struct和Enum组织数据的原因解析

《在Rust中要用Struct和Enum组织数据的原因解析》在Rust中,Struct和Enum是组织数据的核心工具,Struct用于将相关字段封装为单一实体,便于管理和扩展,Enum用于明确定义所有... 目录为什么在Rust中要用Struct和Enum组织数据?一、使用struct组织数据:将相关字段绑

在Mysql环境下对数据进行增删改查的操作方法

《在Mysql环境下对数据进行增删改查的操作方法》本文介绍了在MySQL环境下对数据进行增删改查的基本操作,包括插入数据、修改数据、删除数据、数据查询(基本查询、连接查询、聚合函数查询、子查询)等,并... 目录一、插入数据:二、修改数据:三、删除数据:1、delete from 表名;2、truncate

关于Gateway路由匹配规则解读

《关于Gateway路由匹配规则解读》本文详细介绍了SpringCloudGateway的路由匹配规则,包括基本概念、常用属性、实际应用以及注意事项,路由匹配规则决定了请求如何被转发到目标服务,是Ga... 目录Gateway路由匹配规则一、基本概念二、常用属性三、实际应用四、注意事项总结Gateway路由

Redis 多规则限流和防重复提交方案实现小结

《Redis多规则限流和防重复提交方案实现小结》本文主要介绍了Redis多规则限流和防重复提交方案实现小结,包括使用String结构和Zset结构来记录用户IP的访问次数,具有一定的参考价值,感兴趣... 目录一:使用 String 结构记录固定时间段内某用户 IP 访问某接口的次数二:使用 Zset 进行