DLSW
介绍
这一章描述DLSw+以及设计和配置DLSw+网络.标准的DLSW关键特性和在DLSw+中增强特性.
这一章建议所有读者能仔细阅读.
介绍DLSw+设计向导
DLSw+设计向导描述了DLSw+并且提供配置实例帮助你快速配置简单的DLSW网络.它还包括一些增强特性,诉我们何时使用,如何使用.它提供了一些参数帮助你更好的协调网络,层次设计,调试和迁移指导.
DLSw+定义
数据链路层转换加(Data link switching Plus --- DLSw+)是一种把SNA和NetBIOS数据在广域网或校园网中传输的方法.终端系统可通过令牌环网(Token Ring),以太网(Ethernet),同步数据链路控制(SDLC)协议或光纤接口(FDDI)连接到网上.DLSw+能转换不同介质间数据,本地终止数据链接,保持应答, keepalive和关闭广域网的轮询(polling)信息.数据链路层终止在本地还剔除了由于网络阻塞或重新寻找路由引起的控制超时.最后,DLSw+还提供了动态寻找SNA或NetBIOS资源机制和高数算法来尽量减少广播传输.
在文档中,DLSw+路由器可看作peer routers,peers和partners.两个DLSw+路由器之间连接称作peer connection.一个DLSw circuit 包含初始终端系统与初始路由器之间数据链路控制连接,两个路由器之间连接(通常是TCP连接),目的终端系统与目的路由器之间数据链路控制连接.一个单一的peer connection连接可以支持多个circuits.
DLSw+支持SNA PUs之间或NetBIOS客户与服务器间建立circuits.SNA PU连接支持PU2.0/2.1到PU 4,PU1到PU 4(SDLC),PU 4到PU 4(Token Ring),和PU 2.1到PU 2.1.
DLSw标准
DLSw标准目前是版本 1,定义在RFC 1795中,它描述了IBM原创的实现DLSw的6611标准.
DLSw标准描述了路由器间建立对等连接(peer connection),定位资源,传送数据,流量控制和纠错的转换协议(Switch-to-switch Protocol --- SSP).RFC 1495规定终止对等路由器间的数据链路连接,换句话说,数据链路连接是本地应答的.
通过数据链路连接的本地应答,数据链路交换标准终止了链路层应答和keepalive信息在广域网中传输.另外,由于数据链路连接是本地应答的,链路层的超时不会发生.DLSw路由器就是把多重的数据链路控制的传输放在相应的TCP管道上并通过IP网可靠的传送出去.
两个终端系统通过DLSw建立连接,首先要实现:
建立对等连接(Establish peer connection )
性能交换(Exchange capabilities )
建立链路(Establish circuit)
建立对等连接(Establish peer connection )
在两个路由器间交换SNA或NetBIOS传输之前,首先它们之间要建立TCP连接.标准允许不需要的TCP连接是未激活的.(Cisco路由器当其对等路由器是其它厂家的时,额外的TCP连接是drop的.)标准也允许额外的TCP连接以实现不同等级的优先级.
性能交换(Exchange capabilities )
TCP连接建立之后,路由器交换它们的性能.性能包括DLSw版本号,初始接收窗口大小,SAPs值和支持TCP会话个数等等.同时还传输MAC地址表和NetBIOS名字表.我们也可以配置MAC地址表和NetBIOS名字表以避免广播.性能交换之后,DLSw partner准备建立SNA链路.
建立链路(Establish circuit)
一组终端系统建立链路包括寻找目的资源(基于MAC地址或NetBIOS名)和设置终端系统的数据链路连接.SNA和NetBIOS控制是不同的.在局域网中SNA设备发送一个带着目的MAC地址的探测帧(一个TEST帧和/或交换标识XID帧)寻找其它SNA设备.当一个DLSw路由器接收到探测帧后,它发送一个canureach帧给每一个它能到达的合伙路由器.如果其中一个DLSw partner能到达指定的MAC地址,它就应答icanreach帧.
在这里,DLSw partner由三种连接一个circuit:每个路由器和本地SNA指定系统间数据链路连接和DLSw partner之间TCP连接.这个链路用源和目的链路号(circuit ID)唯一标识,每一个链路号又由源和目的MAC地址,源和目的链路服务访问点(LSAPs)和一个数据链路控制号来定义.一旦链路建立起来,信息帧就可以传输了.
DLSw+特点
DLSw+是Cisco实现的数据链路交换.它比标准增加许多新功能.包括下面几点:
扩展性---构建IBM网络减少广播传输量一个方法,增强网络可扩展性.
实用性---快速地动态地查找相关路径和可选择地通过多个激活的peers,ports作负载平衡.
传输灵活性---高性能的传输避免了超时引起的网络中断.
操作模式---动态检测对等路由器的性能,按它们的性能检测.
DLSw+改进特性
有意义的因素是限制局域网探测帧在广域网中传输数量.有几种DLSw+优化来减少探测帧数量.
对等组的概念
对等组设计成可限制网状结构的网络广播复制.当网络需要任何一点均互相连接(如APPN和NETBIOS环境),RSRB或标准的DLSw就需要每一组路由器间均建立peer连接,这样会浪费许多带宽和路由器的CPU.一个比较好的方法是把路由器分成组,指定其中一个作中心路由器复制广播.这个性能DLSw+支持.
图一:网状结构到分组结构
DLSw+中,在一个对等组里,一个或几个路由器指定作边缘路由器(border peer),组中路由器不是一对一的互连而是与border peer建立对等连接,当DLSw+路由器收到测试帧时只发送一个探测帧给组中的border peer路由器.border peer路由器检测不在本组中会再发给其它border peer路由器.
探测帧防火墙
可以用一些过滤和防火墙技术来减少广域网中探测帧的传输.
探测帧防火墙是只允许一个探测帧发送给广域网,当一个探测帧带着MAC地址发送出去等待应答时,后来的带相同MAC地址的探测帧不能发送出去.一旦有应答回来,所有这些后来的帧都得到本地应答.
DLSw+增强的实用性
DLSw+提供了基本网络需要:
容错---首选的建立一条链路后,当它不能运行时重新连接到其它相关的路径上.
负载平衡---通过多个DLSw+ peers分布建立链路.
默认的,DLSw+路由器是使用容错模式的.在这种方式下,当DLSw+ peer接收到远端test帧,它检测它的缓存.若缓存中有这一项就直接应答test帧而不需在网络上发送canureach帧.如果缓存中没有该项,路由器发送canureach帧给它的peers.
当你的系统有两条路径到达目的地,你可以配置成负载平衡.
DLSw+传输灵活性
DLSw+路由器间传输连接不只限于标准DLSw的TCP方式.DLSw+路由器间Cisco支持不同的传输协议:
TCP/IP-传输SNA和NetBIOS需要本地应答,防止超时或用标准DLSw时.
FST/IP-为任意结构通过广域网和有足够带宽给SNA和NetBIOS传输.它不支持本地应答.
Direct-点对点HDLC或帧中继打包直接传输DLSw+.它也不支持本地应答,不可重新路由.
DLSw Lite-在点对点或帧中继中作LLC2打包,它的本地应答和可靠的传输是非常重要的.但它不可重新路由.DLSw Lite使用RFC 1490定义的LLC2打包方式.
增强特性
这一章叙述了DLSw+的增强特性,它们提供好处和简短说明何时并且如何使用它.增强特性是可选择的,你可按照网络需要进行配置.
背景
明白负载平衡,首先要明白DLSw+对等连接是怎样建立的.当一个路由器开启后,第一件事就是与定义的远程peer建立对等连接(除非作了"passive"定义).路由器然后交换性能信息.在性能信息中包括 "icanreach"或"icannotreach"语句.在交换完性能信息后,DLSW+ peer空闲着直到终端系统发送探测帧(SNA Test或XID帧).探测帧传送给每个活的peer.很可能终端系统是通过多个remote peer被找到的.
冗余和负载平衡
如果在中心有多台DLSw+路由器,可以考虑用负载平衡或冗余.这一节中,我们主要介绍中心多台DLSw+路由器之间或一台路由器上多个端口怎样实现平衡传输的.
如果DLSw+收到多个对探测帧的肯定应答,它把几个peer存放在缓存里.如果定义了负载平衡"dlsw duplicate-path-bias",新的链路就从另外的一条路径建立,循环建立.
如果没有指定负载平衡,peer选择缓存表里第一条路径建立它所有的链路,除非这条路径无效了.缓存表里第一条路径可能是:
接收到第一个肯定应答的Peer.
低cost的Peer.
Cost可以定义在本地或远程peer上.指定在本地peer上,它会作为性能信息的一部分与远程peer交换信息.下面是一个cost实例.
Possible configuration and the resulting cache entries that would be created if all the channel gateways illustrated have the same MAC address
图中,中心端有两个DLSw+路由器作gateway和三个令牌环卡访问主机应用.所有三个令牌环卡指定相同的MAC地址.使用重复地址是源路由桥(source-route bridging---SRB)中一种技术,能够提供负载平衡和冗余,使得在下端看来这三条路径是在同一设备上.
这个例子中,Peer A有两个远程Peer B和Peer C. Peer B定义本地Peer cost值是4,Peer C是2.这个cost信息在交换性能信息时交换给Peer A.
当图中左端的SNA终端系统发送探测帧后,Peer A发送探测帧给Peer B和Peer C.Peer B和Peer C再发送给它们的局域网,Peer B收到一个应答后发给Peer A,Peer C收到两个应答后发给Peer A.
Peer A再把应答信息传给SNA PU,然后用Peer C建立链路.选择Peer C是因为它的cost较低.下一个PU要求建立链路时,直接选择Peer C.
在Peer C上,第一条链路使用Port 1,下一条将用Port 2.这是因为Peer C上作了"dlsw duplicate-path-bias"负载平衡的定义,每一个SNA PU使用round robin方式建立链路.
下一个例子定义了remote peer,Peer A总与Peer B连接,Peer D总与Peer C连接.
备份Peers
使用备份Peers,访问主路由器必须是TCP或FST.在图中,East路由器都用路由器A作主路由器,West路由器都用路由器C作主路由器.Primary Peer或Backup Peer均需在remote peer中定义.若路由器A发生故障,所有SNA会话将中断,重新通过路由器B建立.当路由器A恢复后,所有新的会话将通过路由器A建立,但已经建立的会话继续通过路由器B直到设定linger时间到达.若忽略掉linger设置将使路由器B上会话一直保持到会话终止.
Local Switching
Local Switching(在Cisco IOS 11.1及以上版本上支持)允许一台路由器在SDLC,Token Ring之间提供介质转换.这是一种很有用技术简化了SNA设计,增强可用性.Local Switching可用用Cisco路由器提供的CIP卡本地直连到SDLC设备上.下图是一个Local Switching实例.
Local switching configuration in a mixed PU 2.0, PU 2.1 environment.
--------------------------------------------------------------------------------
用show和debug命令
这一章介绍监控DLSw+和解决网络出现问题的show和debug命令.DLSw+设计提供许多信息帮助你解决网络出现问题而最少的使用额外的网络监控设备.
DLSw+的show命令
DLSw+提供了几个show命令显示DLSw+路由器的一些相关信息,如链路,对等路由器,可到达MAC地址等等.包括下面几个选项:
show dlsw [capabilities | circuits | fastcache | local-circuit | peers | reachability]
Show DLSw Capabilities
交换Peer之间性能信息,包括peer group号和peer cost值等等.
show dlsw capabilities [interface interface | ip-address ip-address | local ]
Show DLSw Circuits
显示路由器当前建立的链路状态.
show dlsw circuits [detail] [[0-255] | mac-address mac-address | sap-value sap-value]
Show DLSw Peers
路由器所连接的对等Peers状态.
show dlsw peer [interface interface | ip-address ip-address ]
Show DLSw Reachability
"show dlsw reachability "命令是SNA源和目的地址放在路由器的列表.只有找到了源和目的MAC地址,才能建立链路.
show dlsw reachability [mac-address [mac-address] | netbios-names [netbios-names ]]
其它有用的show命令
Show Interface
Show IP Route
Show Source Bridge
Show Bridge
Show LLC
Show TCP
DLSw+的debug命令
Debug命令提供了更加详实的信息帮助你解决连网时碰到问题,尤其是在用show命令看到不正常状态时.
debug dlsw [core | local-circuit | peers | reachability]
Peer Debugging
当用show dlsw peer查看peer状态不是CONNECT时,用debug命令提供更多信息.
debug dlsw peer [interface interface | ip-address ip-address ]
Reachability Debugging
链路circuit建立不起来,大多数是因为reachability表中没有找到相应的MAC地址,debug reachability是一个很有用的命令帮助你解决问题.
debug dlsw reachability [error | verbose] [netbios | sna ]
其它有用的debug命令和debging例子
debug source-bridge
debug sdlc
debug clsi