Xem mẫu

  1. Chapter7 Layer 2 Switching Switching Services 路由协议有在阻止层 3 的循环的过程.但是假如在你的 switches 间有冗余的物理连接,路由协 议并不能阻止层 2 循环的发生,这就必须依靠生成树协议(Spanning Tree Protocol,STP) 不像 bridges 使用软件来创建和管理 MAC 地址过滤表,switches 使用 ASICs 来创建和管理 MAC 地址表,可以把 switches 想象成多端口的 bridges 层 2 的 switches 和 bridges 快于层 3 的 router 因为它们不花费额外的时间字查看层 3 包头信 息,相反,它们查看帧的硬件地址然后决定是转发还是丢弃.每个端口为 1 个冲突域,所有的端 口仍然处于 1 个大的广播域里 层 2 交换提供: 1.基于硬件的桥接(ASIC) 2.线速(wire speed) 3.低延时(latency) 4.低耗费 Bridging vs. LAN Switching 桥接和层 2 交换的一些区别和相似的地方: 1.bridges 基于软件,switches 基于硬件 2.switches 和看作多端口的 bridges 3.bridges 在每个 bridge 上只有 1 个生成树实例,而 switches 可以有很多实例 4.switches 的端口远多于 bridges 5.两者均转发层 2 广播 6.两者均通过检查收到的帧的源 MAC 地址来学习 7.两者均根据层 2 地址来做转发决定 Three Switch Function at Layer 2 层 2 交换的一些功能: 1.地址学习(address learning):通过查看帧的源 MAC 地址来加进 1 个叫做转发/过滤表的 MAC 地址数据库里 2.转发/过滤决定(forward/filter decisions):当 1 个接口收到 1 个帧的时候,switch 在 MAC 地址 数据库里查看目标 MAC 地址和出口接口,然后转发到符合条件的那个目标端口去 3.循环避免(loop avoidance):假如有冗余的连接,可能会造成循环的产生,STP 就用来破坏这些 循环 Spanning Tree Protocol(STP)
  2. Spanning Tree Terms Digital Equipment Coporation(DEC)在被收购和重命名为 Compaq 的时候,创建了原始的 STP, 之后 IEEE 创建了自己的 STP 叫做 802.1D 版本的 STP.和之前的 DEC 的 STP 不兼容.STP 的 主要任务是防止层 2 的循环,STP 使用生成树算法(spanning-tree algorithm,STA)来创建个拓扑 数据库,然后查找出冗余连接并破坏它 我们来看些关于 STP 的术语: 1.STP:bridges 之间交换 BPDU 信息来检测循环,并通过关闭接口的方式来破坏循环 2.根桥(root bridge):拥有最好的 bridge ID 即为根桥,网络中的一些诸如哪些端口被堵塞(block) 哪些端口作为转发模式的决定都由根桥来决定 3.BPDU:Bridge Protocol Data Unit,所有的 switches 通过交换这些信息来选择根 switch 4.bridge ID:用于 STP 跟踪网络中的所有 switches,这个 ID 由 bridge 优先级(priority)和 MAC 地址符合而成,优先级默认为 32768,ID 最低的即为根桥 4.非根桥(nonroot bridge):不是根桥的全为非根桥,非根桥交换 BPDUs 来更新 STP 拓扑数据库 5.根端口(root port):与根桥直接相连的端口,或者是到根桥最短的接口.如果到根桥的连接不 止 1 条,将比较每条连接的带宽,耗费(cost)低的作为根端口;如果耗费相同就比较 bridge ID,ID 低的将被选用 6.指定端口(designated port):耗费低的端口,作为转发端口 7.端口耗费(port cost):带宽来决定 8.非指定端口(nondesignated port):耗费较高,为堵塞模式(blocking mode),即不转发帧 9.转发端口(forwarding port):转发端口用来转发帧 10.堵塞端口(blocked port):不转发帧,用来防止循环的产生,虽然不转发,但是它可以监听(listen) 帧 Spanning Tree Operations 之前说过:STP 的任务就是查找出网络中的所有连接,并关闭些会造成循环的冗余连接.STP 首 先选举 1 个根桥,用来对网络中的拓扑结构做决定.当所有的 switches 认同了选举出来的根桥 后,所有的 bridge 开始查找根端口.假如在 switches 之间有许多连接,只能有 1 个端口作为指定 端口 Selecting the Root Bridge bridge ID 用来在 STP 域里选举根桥和决定根端口,这个 ID 是 8 字节长,包含优先级和设备的 MAC 地址,IEEE 版本的 STP 的默认优先级是 32768.决定谁是根桥,假如优先级一样,那就比较 MAC 地址,MAC 地址小的作为根桥 Selecting the Designated Port 假如不止 1 个连接到根桥,那就开始比较端口耗费,耗费低的作为根端口,下面是一些典型的 耗费标准: 1.10Gbps:2
  3. 2.1Gbps:4 3.100Mbps:19 4.10Mbps:100 Spanning-Tree Port States 运行 STP 的 bridges 和 switches 的 5 种状态: 1.堵塞(blocking):不转发帧,只监听 BPDUs,主要目的是防止循环的产生.默认情况下,当 switch 启动时所有端口均为 blocking 状态 2.监听(listening):端口监听 BPDUs,来决定在传送数据帧之前没有循环会发生 3.学习(learning):监听 BPDUs 和学习所有路径,学习 MAC 地址表,不转发帧 4.转发(forwarding):转发和接收数据帧 5.禁用(disabled):不参与帧的转发和 STP,一般在这个状态的都是不可操作的 一般来说,端口只处于转发和堵塞状态,如果网络拓扑发生了变化,端口会进入监听和学习状 态,这些状态是临时的 Convergence 汇聚,也叫收敛(convergence):当所有端口移动到非转发或堵塞状态时,开始收敛,在收敛完成 前,没有数据将被传送.收敛保证了所有的设备拥有相同的数据库达到一致.一般来说从堵塞 状态进入到转发状态需要 50 秒 Spanning Tree Example 我们来看 1 个 STP 的例子,拓扑图给出了已知的 MAC 地址,并且所有优先级均为 32768:
  4. 注意 A 的 MAC 地址最小,优先级均为 32768,所以 A 作为根桥,并且要注意的是根桥的所有端 口均作为转发模式(指定端口).接下来决定根端口,直接与根桥相连的作为根端口,而且作为转 发模式,所以可以判定出根端口个指定端口,bridge ID 决定指定和非指定端口.但是注意 D 和 E 之间,由于 D 的 bridge ID 小,所以 D 的为指定端口,E 的作为非指定端口,如下:
  5. LAN Switch Types LAN 的交换类型决定了当 switch 的端口接收到 1 个帧的时候如何去处理 延时(latency):指数据包进入一个网络设备到离开该设备的出口接口所花的时间,这个根据不 同的交换模式也不一样 3 种交换模式: 1.cut-through(fastforward):Cisco 称这种模式叫 cut-through,fastforward 或者 real time 模式, 使用这种模式的时候,LAN switch 只读取到帧的目标地址为止,减少延时,但是不适合与高偏 向错误率的网络 2.fragmentfree(modified cut-through):和 cut-through 类似,但是 LAN switch 读取到数据(data)部 分的前 64 字节,这个是 Catalyst 1900 的默认模式 3.store-and-forward:在这个模式下,LAN switch 复制整个帧到它的缓冲区里,然后计算 CRC,也 帧的长短可能不一样,所以延时根据帧的长短而变化.如果 CRC 不正确,帧将被丢弃;如果正 确,LAN switch 查找硬件目标地址然后转发它们 3 种模式对帧的读取程度具体如下:
  6. Configuring the Catalyst 1900 and 2950 Switches 1900 是款低端 switch 产品,分为 1912 和 1924 系列:1912 是有 12 个 10BaseT 端口而 1924 是 有 24 个 10BaseT 端口 1900 and 2950 Switch Startup 当 1900 启动后,先运行 POST,此时每个端口的发光二级管(LEDs)是绿色的,当 POST 完成 后,LEDs 开始闪烁然后熄灭;假如 POST 发现某个端口出问题了的话,系统 LED 和那个出问题 的端口的 LED 开始变黄.假如你的 console 线缆接好了的话,POST 开始显示菜单,如下: 1 user(s) now active on Management Console. User Interface Menu [M] Menus [K] Command Line [I] IP Configuration Enter Selection:K CLI session with the switch is open To end the CLI session, enter [Exit]. > 而 2950 的启动,有点像 router,先进入 setup 模式.但是默认你可以不对其进行配置,启动如下: --- System Configuration Dialog --- Would you like to enter the initial configuration dialog? [yes/no]: no Press RETURN to get started! 00:04:53: %LINK-5-CHANGED: Interface Vlan1, changed state to administratively down 00:04:54: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1, changed state to down Switch> Setting the Passwords
  7. 配置密码: 1.登陆密码(用户模式):防止未授权用户登陆 2.启用密码(特权模式):防止未授权用户修改配置 Setting the User Mode and Enable Mode Passwords 1900 下,输入 K 进入 CLI,输入 enable 进入特权模式,再输入 config t 进入全局配置模式,如下: >en #config t (config)# 当进入全局配置模式后,使用 enable password 命令配置登陆密码个启用密码,如下: (config)#enable password ? level Set exec level password (config)#enable password level ? Level Number level1 为登陆密码,level15 为启用密码,密码长度范围是 4 到 8 字符之间,如下: (config)#enable password level 1 nocoluvsnoko Error: Invalid password length. Password must be between 4 and 8 characters 重配置并验证: (config)#enable password level 1 noco (config)#enable password level 15 noko (config)#exit #exit 2950 下的配置和配置 router 有点类似,如下: Switch>en Switch#conf t Switch(config)#line ? First Line number console Primary terminal line vty Virtual terminal Switch(config)#line vty ? First Line number Switch(config)#line vty 0 15 Switch(config-line)#login Switch(config-line)#password noko Switch(config-line)#line con 0 Switch(config-line)#login Switch(config-line)#password noco Switch(config-line)#exit Switch(config)#exit Switch#
  8. Set the Enable Secret Password enable secret 比 enable password 更安全,而且同时设置了 2 者的话,只有前者起作用 1900 下的配置,注意在 1900 下,enable secret 和 enable password 可以设置成一样的,如下: (config)#enable secret noko 2950 下的配置和 router 类似,但是 enable secret 和 enable passwor 不可以设置成一样的,如下: Switch(config)#enable password noko Switch(config)#enable secret noko The enable secret you have chosen is the same as your enable password. This is not recommended. Re-enter the enable secret. Switch(config)#enable secret noco Switch(config)# Setting the Hostname 给 1900 配置主机名,使用 hostname 命令,如下: (config)#hostname Noko Noko(config)# 给 2950 配置主机名,使用 hostname 命令,如下: Switch(config)#hostname Noco Noco(config)# Setting IP Information 你可以不配置 IP 信息,直接把线缆插进端口,一样可以工作.配置 IP 地址信息有 2 点原因: 1.通过 telnet 或其他软件方式来管理 switch 2.配置 VLANs 和其他等网络功能 默认下,没有 IP 地址和默认网关信息配置,在 1900 下,使用 show ip 命令查看默认 IP 配置,如下: 1900#sh ip IP Address: 0.0.0.0 Subnet Mask: 0.0.0.0 Default Gateway: 0.0.0.0 Management VLAN: 1 Domain name: Name server 1: 0.0.0.0 Name server 2: 0.0.0.0 HTTP server: Enable HTTP port: 80 RIP: Enable 在 1900 下使用 ip address 和 ip default-gateway 命令来配置 IP 地址信息和默认网关信息,如下: 1900(config)#ip address 172.16.10.16 255.255.255.0 1900(config)#ip default-gateway 172.16.10.1
  9. 1900(config)# 2950 下的配置是在 VLAN1 接口下配置,VLAN1 是管理 VLAN,默认所有接口均是 VLAN1 的 成员,配置如下: 2950(config)#int vlan1 2950(config-if)#ip address 172.16.10.17 255.255.255.0 2950(config-if)#no shut 2950(config-if)#exit 2950(config)#ip default-gateway 172.16.10.1 2950(config)# 注意 2950 的 IP 地址配置是在 VLAN1 接口下,另外要注意打开接口 Configuring Interface Description 配置描述信息,在接口配置模式下使用 description 命令,1900 下的描述信息不能使用空格键, 如下: 1900(config)#int e0/1 1900(config-if)#description Cisco_VLAN 1900(config-if)#int f0/26 1900(config-if)#description trunk_to_building_4 1900(config-if)# 2950 下的描述就可以使用空格键,如下: 2950(config)#int fa 0/1 2950(config-if)#description Sales Printer 2950(config-if)#^Z 可以使用 show interface 和 show running-config 命令来查看这些描述信息 Erasing the Switch Configuration 1900 和 2950 的配置文件是存储在 NVRAM 里的,但是 1900 里你不能查看 NVRAM 或 startup-config 的内容,只能查看 running-config 的内容,在 1900 里,你对配置所进行的修改自动 被复制到 NVRAM 里,所以没有 copy run start 这样的命令;但是 2950 就有 startup-config 和 running-config,使用 copy run start 来保存配置到 NVRAM 里,擦除 2950 里 startup-config 文件 使用 erase startup-config 命令;擦除 1900 里的使用 delete 命令.如下: 1900#delete ? nvram NVRAM configuration vtp Reset VTP configuration to defaults 1900#delete nvram 2950 如下: 2950#erase startup-config
nguon tai.lieu . vn