VTP协议学习

2024-05-28

VTP协议学习(通用3篇)

VTP协议学习 篇1

VTP协议

一、VTP概述

VLAN中继协议(VTP,VLAN TRUNKING

PROTOCOL)是CISCO专用协议,大多数交换机都支持该协议.VTP负责在VTP域内同步VLAN信息,这样就不必在每个交换上配置相同的VLAN信息.

VTP还提供一种映射方案,以便通信流能跨越混合介质的骨干.

VTP最重要的作用是,将进行变动时可能会出现在的配置不一致性降至最低.

VTP也有一些缺点,这些缺点通常都与生成树协议有关.

1、VTP协议的作用

VLAN中继协议(VTP)利用第2层中继帧,在一组交换机之间进行VLAN通信.VTP从一个中心控制点开始,维护整个企业网上VLAN的添加和重命名工作,确保配置的一致性,

2、VTP的优点

>保持配置的一致性

>提供跨不同介质类型如ATM FDDI和以太网配置虚拟局域网的方法

>提供跟踪和监视虚拟局域网的方法

>提供检测加到另一个交换机上的虚拟局域的方法

>提供从一个交换机在整个管理域中增加虚拟局域网的方法

二、VTP的工作原理

1、VTP概述和工作原理

VTP是一种消息协议,使用第2层帧,在全网的基础上管理VLAN的添加、删除和重命名,以实现VLAN配置的一致性。可以用VTP管理网络中VLAN1到1005。

有了VTP,就可以在一台机换上集中过时行配置变更,所作的变更会被自动传播到网络中所有其他的交换机上。(前提是在同一个VTP域)

为了实现此功能,必须先建立一个VTP管理域,以使它能管理网络上当前的VLAN。在同一管理域中的交换机共享它们的VLAN信息,并且,一个交换机只能参加到一个VTP管理域,不同域中的交换机不能共享VTP信息。

交换机间交换下列信息:

>管理域域名

>配置的修订号

>已知虚拟局域网的配置信息.

交换机使用配置修正号,来决定当前交换机的内部数据是否应该接受从其他交换机发来的VTP更新信息.

>如果接收到的VTP更新配置修订号与内部数据库的修订号相同域者比它小,交换机忽略更新.

>否则,就更新内部数据库,接受更新信息.

VTP管理域在安全模式下,必须配置一个在VTP域中所有交换机惟一的口令.

VTP的运行有如下特点:

>VTP通过发送到特定MAC地址01-00-0C-CC-CC-CC的组播VTP消息进行工作.

>VTP通告只通过中继端口传递.

>VTP消息通过VLAN1传送.(这就是不能将VLAN1从中继链路中去除的原因)

>在经过了DTP自动协商,启动了中继之后,VTP信息就可以沿着中继链路传送.

>VTP域内的每台交换机都定期在每个中继端口上发送通告到保留的VTP组播地址

VTP通告可以封装在ISL或者IEEE802.1Q帧内.

2、VTP域

VTP域,也称为VLAN管理域,由一个以上共享VTP域名的相互接连的交换机组成.

要使用VTP,就必须为每台交换机指定VTP域名.VTP信息只能在VTP域内保持.一台交换机可属于并且只属于一个VTP域.

缺省情况下,CISCO交换机处于VTP服务器模式,并且不属于任何管理域,直到交换机通过中继链路接收了关于一个域的通告,或者在交换机上配置了一个VLAN管理域,交换机才能在VTP服务器上把创建或者更改VLAN的消息通告给本管理域内的其他交换机

如果在VTP服务器上进行了VLAN配置变更,所做的修改会传播到VTP域内的所有交换机上.

如果交换机配置为"透明"模式,可以创建或者修改VLAN,但所做的修改只影响单个的交换机

控制VTP功能的一项关键参数是VTP配置修改编号.这个32位的数字表明了VTP配置的特定修改版本.配置修改编号的取值从0开始,每修改一次,就增加1直到达到4294967295,然后循环归0,并重新开始增加.每个VTP设备会记录自己的VTP配置修改编号;VTP数据包会包含发送者的VTP配置修改编号.这一信息用于确定接收到的信息是否比当前的信息更新.

要将交换机的配置修改号置为0,只需要禁中继,改变VTP的名称,并再次启用中继.

VTP域的要求:

>域内的每台交换机必须使用相同的VTP域名,不论是通过配置实现,还是由交换机自动学动

>CATALYST交换机必须是相邻的,这意味着,VTP域内的所有交换机形成了一颗相互连接的树.每台交换机都通过这棵树与其他交换机相互.

>在所有的交换机之间,必须启用中继.

3、VTP的运行模式

VTP模式有3种,分别是:

>服务器模式(SERVER 缺省)

VTP服务器控制着它们所在域中VALN的生成和修改.所有的VTP信息都被通告在本域中的其他交换机,而且,所有这些VTP信息都是被其他交换机同步接收的.

>客户机模式(CLIENT)

VTP客户机不允许管理员创建、修改或删除VLAN,

它们监听本域中其他交换机的VTP通告,并相应修改它们的VTP配置情况.

>透明模式(TRANSPARENT)

VTP透明模式中的交换机不参与VTP.当交换机处于透明模式时,它不通告其VLAN配置信息.而且,它的VLAN数据库更新与收到的通告也不保持同步.但它可以创建和删除本地的VLAN.不过,这些VLAN的变更不会传播到其他任何交换机上.

各种运行模式的状态

功能 服务器模式 客户端模式 透明模式

提供VTP消息 √ √ ×

监听VTP消息 √ √ ×

修改VLAN √ × √(本地有效)

记住VLAN √ ×√(在不同的版本有不同的结果) √(本地有效)

4、VTP的通告

1.VTP通告概述

使用VTP时,加入VTP域的每台交换机在其中继端口上通告如下信息.

>管理域

>配置版本号

>它所知道的VLAN

>每个已知VLAN的某些参数

这些通告数据帧被发送到一个多点广播地址(组播地址),以使所有相邻设备都能收到这些帧.

新的VLAN必须在管理域内的一台牌服务器模式的交换机上创建和配置.该信息可被同一管理域中所有其他设备学到

VTP帧是作为一种特殊的帧发送到中继链路上的.

VTP协议学习 篇2

不是任何交换机通过任意连接方式都可以应用这一协议技术,需满足一定的条件。首先各交换机需要在同一个域中,也就是VTP域名必须相同,第二是各交换机要采用Trunk透传模式互联,两个条件缺一不可。

网络中,交换机有三种模式:分别是Server、Client和Transparent模式。在一个VTP域中是由具有服务器模式(Server模式)的交换机来提供信息的,也就是说管理员可以在一台Server模式下的交换机上进行完整配置,配置好的结果我们称之为VLan信息,VTP可以将这些信息提供给其他交换机来学习,让其他交换机也具有这些配置信息。服务器Server模式主要功能:1提供VTP信息,包括VLan id和名字信息2学习相同域名的VTP消息3转发相同域名的VTP消息。在此模式下是可以添加、删除和更新VLan信息,是一种全功能交换机,一般用来做主设计交换机。客户机Client模式主要功能:1请求VTP信息2学习VTP信息3转发VTP信息,它比Server信息少了一个提供VTP信息的功能,因此该模式下交换机不能添加删除和更改VLan信息,所以一般来做客户机。透明Transparent模式功能:相比Server和Client模式,它是一种非正常模式。不提供,不学习仅仅可以转发VTP消息,虽然可以添加、删除和更改VLan信息,但也只能限于本地生效。我们可以这样理解,设置为透明模式交换机不存在,只作为Trunk线路的一部分,转发VTP信息。

我们看到Server模式下的交换机可以提供VTP信息,包括VLan id和名字信息,这样的信息是承载在VTP通告中的,这些通告的集合称之为汇总通告。通告从大的方面可分为服务器通告和客户机通告。对于服务器模式的交换机,它的通告主要是用于通知邻接的交换机目前的VTP信息的,在每隔300秒或者VLan配置发生改变的时候会触发发送通告事件。而对于客户机通告,在以下三种情况下会触发发送事件1重启交换机的时候2VTP域名发生变更后3交换机收到了配置修订号大的汇总通告的时候。下面我们通过一个实例说明这一过程,如图1:

三台交换机连接线路为Trunk,域名也相同。此时需要注意如果交换机没有设置域名,则域名为空,空域名为非正常模式,两个空域名交换机的名字是不同的。所以我们把三台交换机域名设置为wb。Sw1为服务器模式,Sw2和Sw3设置为客户机模式。每台交换机都有一个配置修订号,每次修改后都会自动加1,初值为0。现在在Sw1中添加VLan10,满足了服务器通告中的“VLan配置发生改变”这一条件而发出了汇总通告,同时Sw1的配置修订号变为1。汇总通告包含了配置修改号,其内的其他信息我们不再此赘述。因为线路透传,因此这一通告被Sw2和Sw3收到,此时这两台交换机发现自己的配置修订号为0,小于汇总通告中的配置修订号1,满足了客户端通告的(3)条件“交换机收到了配置修订号大的汇总通告”,它们认为发来的汇总通告信息一定是最新的,因此发送了一个客户端通告请求进行回应,该请求被Server接收到。这时Server模式下的交换机具有提供VTP信息的功能,从而会再次发送VTP信息告知Sw2和Sw3,这个信息包含了具体的修改设置(也就是添加VLan 10),是以通告子集的形式发送出去的。经过两次服务器通告,一次客户机通告,Sw2和Sw3学习到了Sw1的修改,学习后Sw2和Sw3的配置修订号改为1,如下图2:

在实际工作中可能还会遇到这样的情况。如图3所示,Sw1,Sw2,Sw3配置版本号为5,Sw3右侧连接入两台交换机Sw4和Sw5,这两台交换机域名为yw,含有VLan20和VLan30的信息,且配制修订号均为8,交换机模式为Server。

网络规划是希望它们在接入网络后,VLan信息可以学习Sw1,Sw2,Sw3的,从而融入到这个网络中。那首先要做的是将这两台交换机的域名改为wb,保证五台交换机VTP域名相同。不过也许我们现在还没有意识到,Sw4和Sw5两台交换机的配置修订号比其他三台都要大,如果一旦接入网络中,300秒后或者配置变化后就会发送第一次汇总通告,当汇总通告到达其他交换机的时候,就会满足客户端发送通告的(3)条件,其他交换机会认为发来的通告汇总信息一定是最新的,从而执行我们之前的操作,经过三次VTP信息传递后,网络中的另外三台机交换机会变为Sw4或Sw5的配置信息,完全违背了我们网络规划初衷。

针对这种反覆盖,VTP协议在设计之初也考虑到了,也提出了相应的解决机制。该机制为当交换机的域名发生改变的时候,配制修订号自动变为0。这样就很好的解决了这个问题。当Sw4和Sw5在修改VTP域名后首先自身的配置修订号变为了0,当300秒发送数据的时候,虽然也发送出来了汇总通告信息,但因为它的配置修订号为0小于其他客户机的编号,因而无法触发其他客户机的发送请求,也就无法将自己的配置发送给别台交换机。最终,只能等待Sw1发送来的VTP信息将自身变为Sw1的配置,达到网络规划的预期。这一现象也可以解释为什么一台新交换机连入网络后,配置修改会经历一段时间的延迟才可以生效的原因。

另外还有一个VTP版本的问题,目前VTP有两个版本,分别为版本1(v1)和版本2(v2),这两个版本是不可以通用的(如图4)。

一个域中可以全部是Server模式,这也就是为什么交换机默认模式是Server的原因。但是一个交换网络中不可以都是Client模式,因为这样的就没有可以学习的内容,当然也不可以全部是Transparent模式。所以如果要让交换网络有意义,至少要有一台交换机为Server模式。假如Sw1,Sw3为v1,Sw2为v2,这时在Sw1上建立VLan 10,是可以传送到Sw2的。因为如果某一台交换机是v2版本且为透明模式两个条件同时满足时,在学习和转发通告的时候不检查通告来源交换机VTP版本号的,所以Sw2和Sw3是可以顺利的学习到valn10的。若把Sw1和Sw3域名进行变更,同样Sw1的VLan变更也可以被Sw2和Sw3学习到。也就是说,如果某台交换机是v2且为Transparent模式,它不检查通告的版本,也不检查交换机域名是否与自己相同,都要进行学习和转发VTP信息的操作。

VTP还有一项高级应用就是VTP修剪,它可以剔除掉不必要的组播信息。例如图5,当C交换所属VLan 3的主机发送广播消息后,希望被D交换的VLan3下的主机获取,但因为线路Trunk的缘故,B交换上虽然没有VLan3但也会收到该消息,这样的广播信息会降低交换机的处理能力,也造成了带宽无故浪费。如果我们给A交换设置VTP修剪,它就会对这些无用广播进行修剪,而只将信息透传给有用的D交换,没有VLan 3的B交换它就不进行转发。

至此,VTP协议应用的主要方面就介绍完毕了。在应用阶段需要实现以上效果则需要在IOS中输入相应的指令。例如:命令提示符的全局模式输入VTP domain domain_name语句可以用来设置交换机域名,域名只在第一次所有交换机为空时可以进行全网传递,如果各自交换机已经有了域名,是不会向其他交换机学习的。VTP mode Server|Client|Transparent用来设置VTP的模式,默认为Server模式。VTP password password用来设置连通密码,可用来预防版本为1,配置号为0,域名为空的交换机恶意连入网络窃取交换机信息的行为。VTP pruning用来设置VTP修剪。VTP version用来修改VTP版本号。Show VTPstatus查看VTP配置等。

摘要:作为Cisco的私有协议,VTP是一个OSI参考模型第二层的通信协议。在大型企业网络中,交换机和节点过多,网络管理员在设置VLan的时候需要在各个交换机上进行设置,极大的增加了管理员的工作量。VTP协议可以很好的解决这个问题,它可以将设置好的VLan信息透传至各交换机上,而且在修改、变更配置信息后也可以及时将结果通告各交换机,以保持网络的正常运行。

VTP协议学习 篇3

关键词:尔雅通识课;CAS协议;Web Services;教务系统

中图分类号:TP315 文献标志码:B 文章编号:1673-8454(2016)09-0094-03

一、前言

高等职业教育以培养具有创新和实践能力的高素质人才为主要目标,随着顶岗实习、校企合作、工学结合等人才培养模式的不断变革,对专业核心课程、必修课程、通识课程的建设提出了新的要求,尤其是通识课程在强化整体素质教育、拓展和完善学生知识结构、促进个性发展,具有不可替代的作用,但通识课在课程实施过程中,由于受到传统“基础课、专业基础课、专业课”教学模式的影响,普遍存在大班授课、优质师资不足、课程结构不合理、授课时空单一等现状。

超星泛雅网络教学平台是基于MOOC理念,集成平台、资源和服务为一体的网络教学平台。“尔雅通识课”是该网络教学平台之下的通识课程学习平台。我校为进一步缓解通识课在高职教育过程中存在的普遍问题,于2013年引入“尔雅通识课”学习平台中的通识教育课程。

目前对通识课程的管理,都是依托现有的苏文高职教务系统进行统一管理,包括面向学生的选课、平时作业、考试,面向教师的排课、工作量的核算、成绩的录入,面向教务管理的工作量统计,学分统计等,同时教务系统又是数字化校园数据交换平台的重要权威数据发布源,为了满足数字化校园信息化系统松耦合的建设要求,同时兼顾为师生提供友好的用户体验,统一的信息入口和用户访问授权,本文在系统设计过程中,遵循开放性和标准化的原则,基于CAS协议和Web Services接口技术,实现了超星尔雅通识课系统与高职教务系统,在用户统一认证和授权,业务数据共享与交换等方面的融合。下面主要从CAS协议、Web Services接口、系统设计分析、系统实现四个方面进行说明。

二、CAS协议

CAS(Central Authentication Service)是耶鲁大学发起的一个企业级的、开源的项目,为 Web 应用系统提供一种可靠的单点登录解决方法,属于 Web SSO的范畴,支持微软活动目录AD、JAAS、JDBC、LDAP、X.509等多种主流的认证机制。

CAS软件体系结构,采用主流的C/S架构模式,包括CAS服务器端和CAS客户端。CAS服务器端是一个认证中心,提供Ticket票据的生成、校验以及过期票据的销毁等工作,CAS客户端主要部署在业务系统中,通过提供统一的CAS认证接口,实现业务的统一认证整合,目前CAS客户端支持主流的开发语言,包括Java、.Net、PHP、Perl 等。

CAS协议工作流程如图1所示,显示了用户在登录业务系统的过程中,CAS客户端与CAS服务器端的交互过程,完成用户的统一认证。

三、Web Services接口

在教务系统与尔雅通识课学习平台进行数据共享的过程中,为遵循数据接口开放性和标准化的原则,采用可扩展、跨平台的Web Services技术,实现业务数据的交换。Web Services是面向对象的技术架构,主要包括SOAP(Simple Object Access Protocol)、WSDL(Web Services Description Language)、UDDI(Universal Description Discovery and Integration)。SOAP是遵循W3C标准的轻量级通讯协议,WSDL是描述定位Web Services的XML文档,UDDI规定了Web Services如何在网络上相互发现和集成。为了发挥Web Services的松散耦合性、互操作性等特征,一般先根据Web Services提供的接口功能,生成XML描述的WSDL文档,同时在UUDI注册中心进行登记,用户或业务系统根据功能需求在UDDI中搜索功能匹配的WSDL,并生成相应的SOAP请求进行调用,Web Services应用响应流程如图2所示。

四、系统设计分析

尔雅通识课学习平台与高职教务系统从用户认证授权、数据共享、Web Services三个方面进行融合,主要包括统一用户认证和授权模块、数据共享模块、Web Services服务模块三个核心功能模块成,其系统结构如图3所示。

统一用户认证和授权模块,包含学生和教师登录信息的认证,同时根据用户不同的角色进行系统授权。师生用户登录高职教务系统进行认证授权后,可以直接访问超星尔雅通识课学习平台,根据授权角色的不同,学生可以完成通识课程的在线视频观看、学习进度查看、完成单元作业、参与课程的答疑和讨论、完成课程考试等学习业务相关的子功能。教师可以完成课程设置、课程资源管理、课程通知、题库管理、课程作业、课程考试、课程答疑和讨论、以及学习进度、作业、考试、讨论的统计管理等学习平台提供的学习过程管理相关功能子模块。

数据共享模块是尔雅通识课学习平台与高职教务系统进行数据共享融合的关键模块,涉及到教务系统数据发送子模块和数据接收子模块。其中数据发送子模块通过发送学生信息、教师信息、选课信息至尔雅学习平台Web Services服务接口实现教务系统数据与尔雅学习平台数据共享,其中学生信息和教师信息,包括姓名、学号(工号)、角色、密码、学院等关键属性,选课信息包括课程名称、课程代码、选课学号,可选字段学院、专业等属性。数据接受子模块,通过尔雅学习平台提供的Web Services服务接口可批量获取学生在线时长、平时作业、考试成绩等信息,可定期更新高职教务系统中学生课程的成绩、学分等信息,完成学生课程学习的记录,实现系统间信息的共享。

五、系统实现

尔雅通识课学习平台与高职教务系统对接的系统实现,主要包括基于CAS协议实现的统一用户认证和授权,基于Web Services接口技术的系统间的数据共享机制。

统一用户认证和授权模块,考虑到系统的跨平台,采用基于Java的CAS client的版本为cas-client-3.3.3-release.zip,JDK开发版本为JDK 7u60,同时在系统中添加oracle jdbc连接jar包ojdbc14_g.jar,cas-server-support-jdbc-3.4.4.jar。

其中主要的用户认证的过滤器配置如下:

CASFilter

org.jasig.cas.client.authentication.AuthenticationFilter

casServerLoginUrlhttp://ids.js.edu.cn:8080/cas/login

serverNamehttp:// jwgl.js.edu.cn:8080

用户通过统一认证后,可以利用CAS协议获得对应的用户名、角色和院校部门等信息,其主要实现代码如下:

<%AttributePrincipal principal = (AttributePrincipal) request.getUserPrincipal();

String userid = principal.getName();

Map attributes = principal.getAttributes();

String username= attributes.get("username").toString();

String department= attributes.get("department").toString();

String jiaose= attributes.get("jiaose").toString();%>

尔雅通识课学习平台采用Java进行Web Services开发,实现数据共享服务接口功能,其接口地址为http://open.tsk.erya100.com/OpenApi.asmx?wsdl,注册提供了关键的五个接口方法,用户信息导入(UserInfoImport)、选课信息导入(CourseInfoImport)、在线时长(UserOnlineTime)、平时作业(UserWork)、考试成绩(CourseExam)。

UserInfoImport接口包括5个参数,分别为学号(工号)、姓名、密码、角色、学院。可支持excle格式的文件,批量进行用户导入操作

CourseInfoImport接口包括5个参数(CourseID,CourseName,StudentNum,ZhuanYe,Xueyuan),分别为课程代号、课程名称、学号、专业、院系。通过选课信息导入功能,可以实现尔雅学习平台中关联学生用户与选课信息,并记录学生用户的学习过程和行为。

UserOnlineTime接口包括2个参数(StudentNum,[StudentNumList]),可以通过该接口获得一个或者多个学生的在线时长信息,返回值单位为分钟。

UserWork接口包括2个参数(StudentNum,[StudentNumList]),该接口返回的是学生平时作业的平均值。CourseExam接口返回该通识课测试的结果,参数与上述一致。学生通识课课程的总成绩,是通过Web Services服务接口获得该生的在线时长、平时作业和考试成绩三个指标加权获得,其中加权比例为4:2:4。

教务系统调用尔雅学习平台Web Services接口批量导入用户选课信息伪代码如下:

Function booleanCourseInfoImport(List INFOS){

try{

erya= new webservice(“http:// open.tsk.erya100.com /OpenApi.asmx?wsdl”)

Iterator?it= INFOS.Iterator();

While(it.hasNext()){

INFO info=(INFO)it.next();

erya.CourseInfoImport(info.getCourseID,info.getCourseName,info.getStudentNum,info.getZhuanye,info.getXueyuan);

}

return true;

}catch{

return false;

}

六、总结

本文针对高职教务系统与超星尔雅通识课学习平台存在交互性不足,数据不能共享,用户体验较差的现状,采用CAS协议实现系统间用户的统一认证和授权,基于Web Services接口技术屏蔽了系统间差异,实现数据共享,并提出了系统间进行数据融合和共享的系统结构图,通过对CAS协议、Web Services接口、系统结构、系统实现四个方面的阐述,验证了该系统融合方案可以有效提高系统的兼容性和可扩展性。

参考文献:

[1]秦怡,马自卫.基于CAS模式的统一认证与门户管理的研究与实现[J].现代图书情报技术,2008(12):1-7.

[2]赵艳芳.基于CAS的统一认证平台的设计与实现[J].云南大学学报(自然科学版),2013(S2):165-168.

[3]赵熹.基于“超星尔雅通识课程”平台的高职公共选修课程改革探索[J].机械职业教育,2013(2):57-59.

[4]杨涛,刘锦德.Web Services技术综述——一种面向服务的分布式计算模式[J].计算机应用,2004(8):1-4.

[5]饶元,冯博琴.新网络体系结构—Web Services研究综述[J].计算机科学,2004(5):1-4.

[6]尹兆冰,王加阳.Web Service及其关键技术研究综述[J].软件导刊,2010(2):121-123.

[7]许峰,林果园,黄皓.Web Services的访问控制研究综述[J].计算机科学,2005(2):1-4.

[8]张幸芝,徐东东,贾菲.基于响应式Web设计的教务系统移动平台研究与建设[J].软件,2013(6):5-7.

上一篇:五年级寒假作业清单下一篇:中低收入家庭购买商业保险有窍门