匹配也惹祸

简介:

匹配也惹祸 
作者:田 逸 (sery@163.com) 《网管员世界》2005年第10期95页“匹配不当导致传输掉线” 

前几天,有朋友说他们做的一个视频系统在传输时会经常性的掉线,让笔者去帮忙。这是一所小学,其网络由三台cisco catalyst 3548和一台华为交换机(型号忘了)构成的全交换网络。与上级网络连接的出口处还有一个qos class设备,该设备主要是做流量控制,以保证视频系统的正常运行。三台cisco 交换机通过堆叠线连接放在一个网络机柜了,而另外那台华为交换机则放在另一栋楼的多媒体教室里,两栋楼之间交换机通过光纤相连。拓扑图如下: 

图中绿线表示千兆链路,蓝线表示百兆链路,黄线为十兆链路 
全网是一个“平”的网络,即所有的联网计算机都在同一个子网内,并且交换机没有做任何层次设计(无核心层、汇聚层、接入层之分);是一个相对简单的网络。 

故障观察:主机房的机器可以和多媒体教室的视频会议系统发起连接,经观察其传输图像效果比较理想,画面也很流畅,但是在20分钟左右,网络的连接就会中断,这个过程一直重复。 

处理:多媒体教室这边是一台华为2层交换机,由于没有该校的网络管理员在现场,我没有办法访问这台设备。于是我要求到主机房去看看,或许可以发现些什么。还好管理员还在机房,在得知与qos和华为相连的访问口令后,用串口线连接计算机和此交换机的c catalyst 3548端口是与qos class相连。把qos class 设备拿在手里翻过来一看,铭牌上标记的速率为10兆;凭直觉,这玩艺的工作方式可能是单工的(cisco catalyst 3548交换机所有端口的工作方式默认为全双工)。既然这样,把48号端口改成半双工模式试试。改完后,报警没有了,并且顺便解决了以前不能访问外部网络的问题。可是回头想想,双工不匹配应该只影响对外网的访问,多媒体系统掉线可能还有别的原因。这是脑中灵光一闪,一定是干道协议(vtp)不匹配,因为cisco交换机的默认干道协议是isl—inter switch link (交换间连接),是cisco公司的专有协议,而其他厂家的设备的干道协议采用802.1q协议来封装帧。一不做二不休,把cisco catalyst 3548与华为线连的千兆端口设为干道,用802.1q来封装帧。更改完后保存设置,经常时间运行,故障不再出现。下面是所使用的配置命令: 
1、配置双工 
switch>en 
switch#c t //进入全局配置模式 
switch(c mainsw    //给交换机取个名字 
mainsw(c f0/48 //进入接口配置模式 
mainsw(c 10 //指定端口速率为10m 
mainsw(c half //设置48端口为半双工模式 
mainsw(c 
mainsw(c 
2、配置干道协议 
mainsw(c g0/2 //g0/2与华为交换机相连 
mainsw(c mode trunk //启用trunk功能 
mainsw(c n //不协商 
mainsw(c trunk encapsulation dot1q //封装为802.1q 
mainsw(c 
mainsw#wr //保存更改 

原因分析: 
1、 双工模式不匹配会造成相应差和高出错率,这就是局域网内用户不能访问外部网络的主要原因,同时也会影响交换机的性能。 
2、 两台交换机相连,必须同时启用trunking功能,并且都必须采用同样的打标(tagging)机制;要么两边都是isl,要么两边都是802.1q。下表是以太网帧标记和封装方法 
标识方法 封装 标记(插入帧内) 
isl 是 否 
802.1q 否 是 
这两种协议的主要区别在于打标机制。isl采用一种外部标记过程,只有支持  isl的设备才能解释这个帧;而ieee802.1q使用一种内部标记过程它以标准以太网帧的形式存在,所以它可以同时工作在接入链路和干道链路上。 
   
总结:看来网络设备之间也遵循“门当户对”这个原则,因此在一个网络中应该尽量可能的采用同一厂商的设备,如果不是这样,必须为这些互联的设备使用相匹配的设置╠╠相同的帧封装方法,相同的双工模式,等等。本案中所涉及的网络结构相当简单,以至于所有的交换机除了配置一个ip地址外,其他的设置都是默认的,所以排错的时相对容易一些。如果是一个作了分层设计的网络,并且干道(trunk)要中继多个vlan流量,这样网络的复杂程度增加,排错的难度也相应增大。建议网络管理员在配制不同设备互联时应该多注意这种匹配问题,特别是在初始配置时更应该注意这个问题。 


附:cisco catalyst 3500系列交换机是基于ios的系统,其他基于catos的交换设备请参照cisco switch 的相关文档或者向其他人求助。 






















本文转自sery51CTO博客,原文链接:http://blog.51cto.com/sery/5560 ,如需转载请自行联系原作者




相关文章
|
算法 测试技术 C++
C++算法 通配符匹配
C++算法 通配符匹配
|
6月前
|
固态存储 Python
正则表达匹配任意单个字符
正则表达匹配任意单个字符
205 4
|
算法 前端开发 程序员
实现正则表达式匹配算法
实现正则表达式匹配算法
实现正则表达式匹配算法
|
JavaScript Python
一日一技:XPath 匹配如何忽略大小写?
一日一技:XPath 匹配如何忽略大小写?
420 0
一日一技:XPath 匹配如何忽略大小写?
正则表达式——常用的匹配规则
简介:正则表达式——常用的匹配规则
正则表达式——常用的匹配规则
|
算法
通配符匹配你了解吗
分析通配符的实现原理
342 0
【正则】匹配重复的单词
【正则】匹配重复的单词
166 0
|
C#
C# -- 正则表达式匹配字符之含义
原文:C# -- 正则表达式匹配字符之含义 C#正则表达式匹配字符之含义 1.正则表达式的作用:用来描述字符串的特征。 2.各个匹配字符的含义: .   :表示除\n以外的单个字符 [ ]  :表示在字符数组[]中罗列出来的字符任意取单个 |   :表示“或”的意思 ()  :表示改变优...
1233 0
|
C#
C#正则表达式的完全匹配、部分匹配及忽略大小写的问题
原文:C#正则表达式的完全匹配、部分匹配及忽略大小写的问题 问题的提出 根据用户给定表达式,里面含有各种数学函数,如求绝对值,三角函数,平方、开方等,分别以类似ABS(表达式),Sin(表达式),ASin(表达式),POW(表达式)等形式表述。
2019 0