计算机网络设备之交换机和路由器

时间:2022-06-01 14:07:33

计算机网络设备之

一、交换机:

  交换机的核心是交换表。交换表是一个交换机端口与MAC地址的映射表。一帧数据到达交换机后,交换机从其帧报头中取出目标MAC地址,通过查表得知应该向哪个端口转发,进而将数据帧从正确的端口转发出去。如果交换机在自己的交换表中查不到该向哪个端口转发,则向所有端口转发。交换表放置在交换机的内存中交换表是通过自学习得到的。交换机的各个端口是没有自己的MAC地址的。交换机各个端口的MAC地址是它所连接的PC机的MAC地址。当交换机级联的时候,连接到其它交换机的主机的MAC地址都会捆绑到本交换机的级联端口。这时,交换机的一个端口会捆绑多个MAC地址。新的智能化交换机,可以选择遗忘那些长时间没有通讯流量的MAC地址,进而改进交换机的性能以太网交换机主要采用以下两种交换方式:直通式(cut through)和存储转发式(store and forward服务质量优先QoS技术也只能在存储转发方式交换机中实现

  在局域网中,有两种情况需要级联交换机。第一种情况是在一台交换机的端口数量不够时,需要使用更多的交换机来提供更多的交换端口。第二种情况是计算机节点不在一个工作区域,需要分布两个或更多的交换机来连接它们,然后再将这些交换机级联起来。两种级联交换机的方法:使用普通的交换端口和使用专用的堆叠端口。

在交换机级联中,级联的线路往往承担更大的数据流量,因此称级联线路为干线trunk。可以使用多个交换机端口来实现级联,以使干线具有更高的传输带宽。不能简单地将两台交换机用多条线连接起来就算完成了级联工作,还需要对两个交换机进行配置,指明着多个端口组成一个级联干线trunck。向交换机声明这几个端口构成一条干线,交换机就可以有效地在这几个端口上实现流量分配,使多个端口联合工作,确保提供最大的数据传输带宽。交换机的Trunk技术提供了一种端口聚合机制,它能将几个低速的连接组合在一起,形成一个高速的连接。Trunk模式下,当Trunk的某条成员链路断开时,交换机自动将此链路上的数据分配到Trunk的其它链路上,当断开的链路重新连接上时将恢复原先的负载分配。

  堆叠(SuperStack)是另外一种交换机级联的技术。使用堆叠技术,交换机之间可以获得到几个Gbps的传输带宽。由于有些交换机只提供一个堆叠端口,可以简单实现两个交换机的级联。因此为了多台交换机级联,可以选购SuperStack II SwitchMatrix Module(矩阵模块),安装在交换机背面的扩展插槽中,再将多台交换机用SuperStack II SwitchMatrix Cable(矩阵电缆)堆叠成一体。堆叠电缆有长度限制,一般小于1.5米。所以,使用堆叠技术级联的交换机只能在一个机架上。堆叠技术只适用于增加交换机的端口数量。

  使用干线Trunk技术来级联交换机,会占用连接主机的交换端口,但是可以有100米的传输距离。使用光纤(如果不是光纤端口,可以加配光电转换器设备),可以获得更远的传输距离。另外,当使用多条线路组成干线Trunk时,一条线路的故障不会使干线瘫痪,因此干线Trunk技术同时具有更高的级联可靠性。

    在建设局域网的过程中,级联交换机时考虑搭建带冗余链路的交换机网络是一个很重要的技术。冗余链路可以使网络有更高的可靠性。要构建一个带冗余链路的交换机网络,就需要解决报文循环问题。为了解决这个问题,交换机使用Spanning-Tree协议。支持Spanning-Tree协议的交换机中都驻留一个Spanning-Tree协议程序,该程序会在交换机工作前测试出冗余的干线,并切断冗余链路。当网络中因为某条线路故障、交换机端口故障而出现链路失效,Spanning-Tree协议程序会立即启动备份线路,进而保障了交换机之间的级联。Spanning-Tree协议也称为IEEE802.1D协议。冗余链路使得网络中存在循环回路,导致广播报文和组播报文在网络中无限循环。

运行Spanning-Tree协议。系统启动后,Spanning-Tree协议找到冗余端口,并将它们设置为Block状态,作为备份端口。选举根交换机,使用的是交换机中固化的MAC地址。

一个支持Spanning-Tree协议(IEEE802.1D)的交换机,完成根端口等选举和设置工作需要50秒的时间。在交换机开机的前50秒里,是不为网络中的主机转发数据报的。使用Spanning-Tree协议,需要因为BPDU广播而消耗一定的线路带宽。在没有冗余链路的网络中,应该关闭Spanning-Tree功能。交换机出厂的时候,默认Spanning-Tree功能关闭。

二、路由器:

  路由技术被用来互联网络:一个是局域网内部的各个子网之间的互联,另外一个就是通过公共网络(如电话网、DDN专线、帧中继网、互联网)把不在一个地域的局域网远程连接起来,形成一个广域网。

  一个局域网也被分解为多个子网,然后用路由器连接起来,这是最普遍的网络建设方案。路由器在这里扮演隔离广播和实现网络安全策略的角色。

  路由器的各个端口也需要有IP地址和主机地址路由器的端口连接在哪个子网上,其IP地址就应属于该子网。

  每个路由器中有一个路由表,主要由网络地址、转发端口、下一跳路由器的IP地址和跳数组成。

  网络地址:本路由器能够前往的网络;  端口:前往某网络该从哪个端口转发; 下一跳:前往某网络,下一跳的中继路由器的IP地址;  跳数:前往某网络需要穿越几个路由器。

数据报穿越路由器前往目标网络的过程中的报头变化的。它的帧报头每穿越一次路由器,就会被更新一次。这是因为MAC地址只在网段内有效,它是在网段内完成寻址功能的。为了在新的网段内完成物理地址寻址,路由器就必须重新为数据报封装新的帧报头。数据包在传送过程中,帧报头不断被更换,目标MAC地址和源MAC地址穿越路由器后都要改变。但是,IP报头中的IP地址始终不变,目标IP地址永远指向目标主机,源IP地址永远是源主机。

路由器的网间互联能力集中在网络层完成的工作。在这一层中,路由器要分析IP报头中的目标IP地址,维护自己的路由表,选择前往目标网络的最佳路径。正是由于路由器的网间互联能力集中在它的网络层表现,所以习惯称路由器是一个网络层设备。路由器工作在网络层,因此它对数据传输产生了明显的延迟。

路由器的工作也完全仰仗其内存中的路由表。路由表主要由六个字段组成,网络地址字段列出本路由器了解的网络的网络地址。端口字段标明前往某网络的数据报该从哪个端口转发。下一跳字段是在本路由器无法直接到达的网络,下一跳的中继路由器的IP地址。距离字段表明到达某网络有多远。在RIP路由协议中需要穿越的路由器数量。协议字段表示本行路由记录是如何得到的。如果一个路由项长时间没有被刷新,该路由项就被认为是失效的,需要从路由表中删除。

路由表中的表项有两种方法获得:静态配置和动态学习。

 将电脑与路由器的console端口连接,使用电脑上的超级终端软件或路由器提供的配置软件就可以对路由器进行配置。一般情况下,我们都是手工配置路由表中直接连接的网段的表项,而间接连接的网络的表项使用路由器的动态学习功能来获得。

流行的支持路由器动态学习生成路由表的协议是:路由信息协议RIP、内部网关路由协议IGRP、开放的最短路径优先协议OSPF

静态配置路由表将电脑与路由器的console端口连接,使用电脑上的超级终端软件或路由器提供的配置软件,用命令的方式把路由项逐一写入路由表。ip route是思科公司路由器的静态配置路由表命令。

路由协议用于路由器之间互相动态学习路由表。路由器中安装的路由协议程序被用来在路由器之间通讯,以共享网络路由信息。当网络中所有路由器的路由协议程序一起工作的时候,一个路由器了解的网络信息,也必然被其它全体路由器所知道。通过这样的信息交换,路由器互相学习、维护路由表,使之反映整个网络的状态。

路由协议程序要定时构造路由广播报文并发送出去。收听到的其它路由器的路由广播也由路由协议程序分析,进而调整自己的路由表。路由协议程序的任务就是要通过路由协议规定的机制,选择出最佳路径,快速、准确地维护路由表,以使路由器有一个可靠的数据转发决策依据。路由协议程序不仅要分析出前往目标网络的路径,当有多条路径可以到达目标网络时,应该选择出最佳的一条,放入路由表中。路由协议程序有判断失效路由的能力。及时判断出失效的路由,可以避免把已经无法到达目的地的报文继续发向网络,浪费网络带宽。同时,还能通过ICMP协议通知那些期望与无法到达的网络通讯的主机。

现代路由器通常支持3个流行的路由协议:路由信息协议RIP、内部网关路由协议IGRP和开放的最短路径优先协议OSPF

RIP协议是UNIX一直支持的路由协议版本。RIP协议的典型特征是用跳数来表示路由器与目标网络之间的距离。跳数是指从自己出发,还需要穿越多少个路由器。RIP协议程序在工作时,每隔30秒就把自己的路由表作为路由广播发给邻居路由器。同时,RIP协议程序要接收邻居发来的路由广播,拿收到的邻居的路由表与自己的路由表进行比较RIP协议制定了如此的方法:如果一个路由器持续一段时间不能收到某个邻居的路由广播,就能确定该路由器已经不再工作,通过那个路由器前往的网络都已经不可到达,路由表中所有下一跳指向该路由器的路由项都将被删除。RIP协议规定的失效判断时间是连续九个时间间隔180秒。为了防止循环报文包在网络中无休止地循环,RIP协议规定数据报最多只能穿越15个路由器。数据报的IP报头中有一个hop计数字段,每穿越一个路由器,那个路由器就会为这个数据报的hop字段增1。如果路由器发现数据报中的hop字段中的计数值超过15,就会视该数据报是个非正常的循环包,并将之丢弃。

IGRP协议内部网关路由协议IGRP是一个由思科公司开发的路由协议。IGRP协议衡量距离的大小要依据带宽、负荷、延迟和可靠性等4个参数,所以人们往往称IGRP的距离度量值为距离矢量。

IGRP协议默认K1=10000000,K2=0,K3=1/10,K4=0;K5=0。这时,IGRP的距离就简单地与带宽和链路延迟有关:      距离=10000000/bandwidth+delay/10

IGRP的路由广播内容也是播放自己的路由表,每90秒播送一次。IGRP确认失效路由的时间间隔是3个播送周期,即270秒如果听不到某个邻居的路由广播,就确定那个邻居已经不能正常工作了。此时,IGRP将调整路由表,将通过那个邻居前往的网络设置为不可到达。

目前流行的路由协议分为内部路由协议IRP和外部路由协议ERP自治系统之间互相连接依靠各个自治系统的边界路由器。边界路由器之间互相交换路由表的协议称为外部路由协议ERP

默认网关主机把数据发送给路由器有两种方法。一种是主机用ARP查询目标主机的ARP请求被路由器应答,数据报被发给路由器。另外一种方法就是主机自己指定一个路由器作为自己的默认网关。

主机一旦设置了自己的默认网关,发现目标主机与自己不在一个网络中,它就会通知链路层程序把数据发送给默认网关。路由器也需要设置自己的上级默认网关,以便将自己未知网络的数据报发往上级默认网关。默认网关不是一种新的网络设备,它是某一个路由器。主机和路由器指定某个路由器为自己的默认网关,可以将发往未知网络的数据报发给默认网关。默认网关总能通过自己的上级默认网关找到目标网络的。一台主机总是把离自己最近的路由器设置成自己的默认网关。一个局域网中所有路由器总是把本局域网到互联网的出口路由器设置成默认网关。