写给步入网络门槛中入门级别工程师中相关Vlan、trunk、hybrid的理解

任何一个成功的人都是站在巨人的肩膀上努力才能取得成功的,何况我还没成功呢,接下来我摘自一篇文章并且加点自己的体会写点关于vlan、trunk和hybrid的区别:

以太网端口有 3种链路类型:access、trunk、hybird
        Access类型端口只能属于1个VLAN 般用于连接计算机 端口;

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

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

Hybrid端口和Trunk端口在接收数据时处理思路方法是一样的,唯一区别的处在于发送数据时:Hybrid端口可以允许多个VLAN报文发送时不打标签,而Trunk端口只允许缺省VLAN报文发送时不打标签。

缺省VLAN:

Access端口只属于1个VLAN 所以它缺省VLAN就是它所在VLAN不用设置;

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

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

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

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

trunk端口收报文: 收到一个报文,判断是否有VLAN信息:如果没有则打上端口 PVID 并进行交换转发,如果有判断VLAND ID是否在该trunk的允许范围内,如果在范围内则转发,否则丢弃

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

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

hybrid端口发报文:

1、判断该VLAN在本端口属性(disp erface 即可看到该端口对哪些VLAN是untag 哪些VL
AN是tag)

2、如果是untag则剥离VLAN信息再发送如果是tag则直接发送

其实我们对于一个交换机的收发数据方向一致不明确:因为一个接口在收到数据时,同时它又是对外进行发数据的,我们很容易将一个接口收发进行弄混。

时间: 2024-10-10 22:19:55

写给步入网络门槛中入门级别工程师中相关Vlan、trunk、hybrid的理解的相关文章

ios网络编程(入门级别)-- 基础知识

在学习ios的过程中,停留在UI控件很长时间,现在正在逐步的接触当中!!!!!!在这个过程中,小编学到了一些关于网络编程知识,并且有感而发,在此分享一下: 关于网络请求的重要性我想不用多说了吧!!!对于移动客户端来说,网络的重要性不言而喻,常见的网络请求有GET, POST,今天来看一下两种网络请求的实现方式. 第一部分   小编的理解 一.两种网络请求--POST请求与GET请求的异同(这里小编只讨论的是异步链接) GET的语义是获取指定URL上的资源,将数据按照Variable = Valu

写给程序员的管理入门课程 -《格鲁夫给经理人的第一课》

写给程序员的管理入门课程 -<格鲁夫给经理人的第一课> 序 格鲁夫给经理人的第一课 <格鲁夫给经理人的第一课> 最早出版于 2007 年,书原名为<High Output Management>.本书的作者格鲁夫是 Intel 的前 CEO,领导了 Intel 从一家濒临倒闭的存储器公司,转型为微处理器公司,并且在个人 PC 开始流行时,成功和微软缔结 Wintel 联盟,主宰了整个 PC 电脑时代. 格鲁夫是一个技术出身的管理者,在本书中,我们甚至看到他多次用编译器来

SQLServer中使用扩展事件获取Session级别的等待信息以及SQLServer 2016中Session级别等待信息的增强

本文出处:http://www.cnblogs.com/wy123/p/6835939.html 什么是等待 简单说明一下什么是等待:当应用程序对SQL Server发起一个Session请求的时候,这个Session请求在数据库中执行的过程中会申请其所需要的资源,比如可能会申请内存资源,表上的锁资源,物理IO资源,网络资源等等,如果当前Session运行过程中需要申请的某些资源无法立即得到满足,就会产生等待.SQL Server会以不用的方式来展现这个等待信息,比活动Session的等待信息,

Java网络编程从入门到精通(4):DNS缓存

在通过DNS查找域名的过程中,可能会经过多台中间DNS服务器才能找到指定的域名,因此,在DNS服务器上查找域名是非常昂贵的操作.在Java中为了缓解这个问题,提供了DNS缓存.当InetAddress类第一次使用某个域名(如www.csdn.net)创建InetAddress对象后,JVM就会将这个域名和它从DNS上获得的信息(如IP地址)都保存在DNS缓存中.当下一次InetAddress类再使用这个域名时,就直接从DNS缓存里获得所需的信息,而无需再访问DNS服务器. DNS缓存在默认时将永

Java网络编程从入门到精通(14):多种多样的建立网络连接的方式

在上一篇文章中我们讨论了Socket类的基本用法,并给出的例子中使用Socket类连接服务器时使用了一种最简单的连接方式,也就是通过IP和端口号来连接服务器.而为了使连接服务器的方式更灵活,Socket类不仅可以通过自身的构造方法连接服务器,而且也可以通过connect方法来连接数据库. 一.通过构造方法连接服务器 我们可以通过6个重载构造函数以不同的方式来连接服务器.这6个重载的构造函数可以分为两类: 1. 自动选择IP     这种方式是最常用的.所谓自动选择IP,是指当本机有多块网卡或者在

AppleWatch开发入门七——watchOS中通知的应用

AppleWatch开发入门七--watchOS中通知的应用 一.引言 在iOS系统中,支持的通知有两种类型:本地通知和远程通知.本地通知多用于计时类通知,远程的又称推送,多用于一些提示动态的提示信息.这里有相关通知的一些知识总结: 本地推送:http://my.oschina.net/u/2340880/blog/405491. 远程推送:http://my.oschina.net/u/2340880/blog/413584. 在watch中,通知是和iphone同步的,在iphone上的Ap

网络骇客入门之TCP并发网页服务器

TCP并发服务器本来准备写在网络骇客入门之TCP编程后面的,但是因为代码有点长,所以就单独写了一篇 注意: 因为浏览器发送的数据比较多,所以作为本服务器的接受缓冲区recv_buf要大点,至少512字节,建议1024字节 如果接收不全的话,无论如何都不能将网页传给浏览器,这个bug卡了我一晚上,所以记得特别清楚. 创建线程时传给线程的参数注意写连接套接字的值,先转换为(void*)类型, pthread_create(&pth,NULL,msg_echo,(void *)connfd); 再在线

C语言/C++编程新手入门基础学习中链接类型

C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制).创一个小群,供大家学习交流聊天如果有对学C++方面有什么疑惑问题的,或者有什么想说的想聊的大家可以一起交流学习一起进步呀.也希望大家对学C++能够持之以恒C++爱好群,如果你想要学好C++最好加入一个组织,这样大家学习的话就比较方便,还能够共同交流和分享资料,给你推荐一个学习的组

《挑战30天C++入门极限》入门教程:C++中的const限定修饰符

    入门教程:C++中的const限定修饰符 const修饰符可以把对象转变成常数对象,什么意思呢? 意思就是说利用const进行修饰的变量的值在程序的任意位置将不能再被修改,就如同常数一样使用! 使用方法是: const int a=1;//这里定义了一个int类型的const常数变量a; 但就于指针来说const仍然是起作用的,以下有两点要十分注意,因为下面的两个问题很容易混淆! 我们来看一个如下的例子: #include <iostream> using namespace std;