基础通信学习之四

  1. 数据链路层技术
  2. 移动承载网络中的数据链路层技术

    作为承载无线基站业务的承载网络,首先要考虑的是基站业务的连通性,要保证基站的数据能够上送到核心网服务器,上网数据能够去往因特网(Internet );然后,需要考虑的是基站业务的可靠性,在网络中的链路节点等出现故障或者性能出现劣化的情况下,具备业务自我恢复的能力。

    在移动承载网络的部署中用到了多种协议和保护技术,不同的方案使用的技术稍有区别,综合而言,工作于数据链路层的技术基本上在以下几种技术范围中。

    虚拟局域网技术:虚拟局域网(Virtual Local Area Networks VLAN)技术可用于基站之间或者专线用户之间的业务隔离。每个基站或者每个业务属于一个独立的局域网。

    链路聚合技术:链路聚合(LAG)技术可以将多条链路进行捆绑,当一条链路出现问题的时候,其余链路能够继续工作,保证业务的正常转发,实现链路的保护。

    虚拟路由器冗余技术:虚拟路由器冗余(VRRP)技术用于基站网关的备份保护,基站的网关节点出现故障的时候,可以使用原先的备用节点进行替换工作,保证业务正常。

    生成树协议(STP)主要用于二层网络中的环路防范,在二层网络中,可以使用STP构建无环路的二层拓扑,实现业务的正常转发。

     

     

  3. VLAN技术

    传统的以太网交换机在转发数据时,采用基于源MAC地址的学习方式,自动学习各个端口连接的主机MAC地址,形成转发表,然后依据此表进行以太网帧的转发.整个转发的过程自动完成,所有端口都可以互访,维护人员无法控制端口之间的转发。例如,要控制B主机不能访问A主机,这在传统的以太网交换机中无法实现。这也导致了传统的以太网络存在以下缺陷。

    1.网络的安全性差。由于各个端口之间可以直接互访,增加了网络攻击的可能性。

    2.网络效率低用户可能收到大量不需要的报文,这些报文同时消耗网络带宽资源和客户主机 CPU资源,例如不必要的广播报文。

    3.业务扩展能力差。网络设备平等地对待每台主机的报文,无法实现有差别的服务。例如,无法优先转发用于网络管理的以太网帧。

    鉴于这些缺陷,在以太网中引入了VLAN技术来解决这些问题。

     

  4. VLAN简介

    虚拟局域网VLAN技术把用户划分为成多个逻辑的网络,每个逻辑网络内的用户形成一个组。组内可以通信,组间不允许通信。二层转发的单播,多播,广播报文只能在组内转发,并且很容易实现组成员的添加或删除。

    VLAN技术提供了一种管理手段,能够控制终端之间的互通。如图所示,将不同的终端分别加入不同的VLAN不同VLAN之间的用户无法通过二层实现通信,实现了组和组之间的隔离。

     

    为了实现转发控制, VLAN技术在待转发的以太网帧中添加了VLAN标签,然后设定交换机端口对该标签和帧的处理方式。处理方式包括丢弃帧、转发帧、添加标签、移除标签。

    转发帧时,通过检查以太网报文中携带的 VLAN标签是否为该端口允许通过的标签,可判断出该以太网帧是否能够从端口转发。如图所示,通过VLAN技术将A发出的所有以太网帧都加上了标签VLAN5,此后查询二层转发表,根据目的MAC地址将该帧转发到8连接的端口。由于将该端口配置为仅允许VLAN通过,所以A发出的帧将被丢弃。

    支持VLAN技术的交换机,转发以太网时不再仅仅依据目的MAC地址,同时还要考虑该端口的VLAN配置情况,从而实现了对二层转发的控制。

     

    1. VLAN帧格式

    在以太帧中添加的VLAN标签长度为32位( bit ),将其直接添加在以太网帧头中IEEE802.1q文档VLAN标签做出了说明。

    VLAN标签由TPIDTCI两部分构成,其中TCI中包含了3个字段:PRI CFI VLAN ID.下面列出具体说明。

    1. 标签协议标识Tag Protocol ldentifierTPI) : 16位,固定取值, Ox8100IEEE定义的新类型,表明这是一个携带802.10标签的帧。
    2. 优先级 Priority) : 3.指示以太网帧的优先级。一共有8种优先级,0~7用于提供有差别的转发服务。
    3. 标准格式指示 Canonical Format Indicator, CFI ) : 1位,用于令牌环/源路由FDDI介质访问中指示地址信息的位次序信息,即先传送的是低位还是高位
    4. VLAN标识VLAN Identifier, VLAN ID ) : 12 位,取值为O4095,就是VLAN标签。结合交换机端口的VLAN配置,能够控制以太网帧的转发。

     

    VLAN技术的出现,使得现在的交换网络环境中存在两种报文:没有加上VLAN标记的标准以太网帧 ( Untagged frame )和有VLAN标记的以太网帧(Tagged f rame

     

    1. VLAN的划分方式

    所有以太网帧在交换机内都是以Tagged frame 的形式流动的,即某端口从本交换机其他端口收到的帧一定是Tagged的。注意是交换机内部,某端口从对端设备收到的帧,可能是Untagged或者是Tagged的。如果收到的是 Tagged frame,则进入转发过程;如果该端口收到的是Untaggedframe则必须加上标签。

     

    给数据帧加上标签可以通过以下五种方法。

    1. 基于端口port。网络管理员给交换机的每个端口配置端口默认VLANport VLAN ID,PVID,如果收到的是untagged帧,则VLAN ID的取值为PVID
    2. 基于MAC地址。网络管理员配置好MAC地址和VLAN ID的映射关系表,如果收到untagged帧,则依据该表添加VLAN ID
    3. 基于协议。网络管理员配置好以太网中的协议域和VLAN ID的映射关系表。如果收到的是untagged帧,则依据该表添加VLAN ID
    4. 基于子网。根据报文中的IP地址信息,确定添加的VLAN ID
    5. 基于策略。安全性高,可基于MAC地址+IP,MAC地址+IP+接口,成功划分VLAN后,可以达到禁止用户改变IP地址或MAC地址的目的。

     

    设备在同时支持多种方式时,一般情况下,会按照优先级顺序选择给数据帧添加VLAN的方式:基于策略基于MAC地址基于子网基于协议基于端口。

    基于端口划分VLAN的优先级最低,但却是最常用的VLAN划分方式。如下图:

     

    1. VLAN的基础概念

    VLAN技术的出现使得交换网络中存在了带VLAN的以太网帧和不带VLAN的以太间帧a 因此,相应地也对链路做了区分,分为接入链路和干道链路。

    1. 接入链路access link,连接用户主机和交换机的链路为接入链路。接入链路上通过的帧为不带Tag的以太网帧。
    2. 干道链路trunk link,连接交换机和交换机的链路,干道上的通过的帧一般为带tagVLAN帧,也允许通过不带Tag的以太网帧。

     

    同样的,基于对VLAN标签不同的处理方式,也对以太网交换机的端口做了区分,分为以下三类。

    1. 接入端口Access Port,此端口是交换机上用来连接用户的主机的端口,只能连接接入链路,在同一时刻,access端口只能归属于一个VLAN,即只能允许一个VLAN的帧通过。access口接收到的都是untagged帧,接收帧时,给帧打上tag,发送时,将帧中的tag去掉。
    2. 干道端口Trunk Port,此端口是交换机与交换机连接的端口,允许多个VLAN的帧通过。

      在接收帧时,如果没有Tag则标记上该端口的默认VLAN ID;如果有Tag则判断该干道端口是否允许该VLAN帧进入,如果不允许进入,则丢弃该帧。

      在发送帧时,如果VLANID跟默认VLANID相同,则剥离VLAN;如果跟默认VLANID不同,则直接发送。

    3. 混合端口(Hybrid Port)。混合端口是交换机上既可以连接主机又可以连接其它交换机的端口。既可以连接接入链路又可以连接干道链路。混合端口允许多个VLAN帧通过。

      在接收帧时,如果没有Tag,则标记上混合端口的默认VLAN ID;如果有Tag,则判断该混合端口是否允许该VLAN帧进入,允许则进行下一步处理,否则丢弃帧。

      在发送帧时,交换机会判断VLAN本端口的属性Untag还是Tag。注意是本端口的属性,如果是Untag,则先剥离帧的 VLAN Tag,再发送;如果是Tag,直接发送帧。

     

    4默认VLAN

    在交换机上,每个端口都可以配置一个默认VLAN

    1. 接入端口只允许一个VLAN的帧通过,该VLAN即为接入端口的默认VLAN
    2. 干道端口允许多个VLAN 通过,可以指定其中一个VLAN 作为默认VLAN,如果接收到了不带VLAN的数据帧,则给数据帧加上默认VLAN标签。在往外发送时,如果VLANID 和默认VLANID相同,则剥离标签。
    3. 混合端口也允许多个VLAN通过,指定其中一个VLAN作为默认VLAN在接收到不带VLAN的数据帧时给数据帧加上默认VLAN标签。对外发送时,根据端口的 Untag/tag 方式进行判断处理。
  5. VLAN内通信

    以太网帧中的标签,结合交换机端口的VLAN配置,实现对报文转发的控制。从某端口A收到以太网帧,如果转发表显示目的MAC地址存在于B端口下,则该以太网帧从B端口转发出去。但在引入VLAN后,该帧是否能从B端口转发出去。有以下两个关键点。

    1. 该帧携带的VLAN ID是否被交换机创建?
    2. 目的端口是否允许携带该VLAN ID的帧通过?

    转发过程中,标签操作类型有以下两种。

    1. 添加标签:对 Untagged frame 添加PVID,在端口收到对端设备的帧后进行。
    2. 移除标签:删除帧中的VLAN信息 Untagged frame 的形式发送给对端设备。

    注意,正常情况下,交换机不会更改 Tagged frame 中的VLANID的值(某些设备支持的特殊业务,可能提供更改VLANID的功能)。交换机对于VLAN的常规处理流程如图所示。

    在多个交换机组成的网络中,如何实现VLAN内的数据互通,主要依据的就是交换机对于VLAN的处理如下图所示,为了让交换机SWASWB之间的链路既支持VLAN2内的用户通信,又支持VLAN3 内的用户通信,需要配置连接端口同时属于两个VLAN。即应配置SWA的以太网端口GE0/0/2SWB的以太网端口GE0/0/1既属于VLAN2 又属于VLAN3

    当用户主机 Host A发送数据给用户主机 Host B 时,数据帧的发送过程有以下 6 步。

     

    1. 数据帧首先到达SWA的端口GE0/0/4
    2. 端口GE0/0/4给数据帧加上Tag,TagVID字段填入该端口所属的VLAN的编号2
    3. SWA查找MAC地址表,将该帧转发到相应的出端口GE0/0/2(如果是广播报文,则将数据帧发送到本交换机上除GE0/0/4外的所有属于VLAN2的端口)。
    4. 端口GE0/0/2将帧向外转发,一直发送到SWB
    5. SWB收到帧后,会根据帧中的Tag识别出该帧属于VLAN2,查找MAC地址表,将该帧转发到相应的出接口(如果是广播报文,则将该帧发给本交换机上除GE0/0/1所有属于VLAN2的端口)。
    6. 端口GE0/0/3将数据帧发送给主机Host B

    VLAN3 内的主机通信同理。

     

     

     

     

  6. VLAN间通信

    VLAN隔离了二层广播域,也就严格地隔离了各个VLAN之间的任何流量,分属于不同VLAN的用户不能互相通信。

    不同VLAN之间的流量不能直接跨越VLAN的边界,需要使用路由通过路由将报文从一个VLAN转发到另外一个VLAN

    如图所示VLAN100的主机和VLAN200的主机分别属于网关192.168.100.0/24 192.168.200.024主机之间不能直接通过交换机进行通信。VLAN200的主机会将数据转发给网关192.168.200.1,网关路由器进行三层路由查找,将数据从VLAN100的网关接口Ethernet1发出。VLAN100的网关再将数据转发给VLAN100的主机。

    解决VLAN间互通的方法有如下三种:

    1. 为每个VLAN分配一个单独的路由器接口

    在二层交换机上配置VLAN每一个VLAN使用一条独占的物理连接,连接到路由器的一个接口上,如下图所示,VLAN100接入路由器的接口Ethernet2,VLAN200接入路由器的接口Ethernet1 , VLAN300 接入路由器的接口EthernetO。不同VLAN之间的数据通信,都通过路由器进行三层的路由转发,从而实现VLAN之间相互通信。

    但是,随着每个交换机上VLAN数量的增加这样做必然需要大量的路由器接口。出于成本的考虑,一般不用这种方案来解决VLAN间路由选择问题。此外,某些VLAN之间可能不需要经常进行通信,这样导致路由器的接口没被充分利用。

    2.多个VLAN共用一条物理链路。

    二层交换机上和路由器上配置它们之间相连的端口使用VLAN Trunking使多个VLAN共享同一条物理连接到路由器,如图所示,路由器仅仅提供一个以太网接口,而在该接口下提供三个子接口,分别作为三个VLAN用户的默认网关。当VALN100的用户需要与其他VLAN的用户进行通信时,该用户只需将数据包发送给默认网关,默认网关修改数据帧的VLAN标签后再发送至目的主机所在VLAN即完成了VLAN间的通信。

    这种方式也称为独臂路由或者单臂路由,它只需要一个以太网接口,通过创建子接口可以承担所有 VLAN的网关.从而在不同的VLAN间转发数据。

    3.三层交换机

    三层交换机集成了路由器和交换机的功能,融合了路由器和交换机各自的优势,在功能上实现了 VLAN 的划分、 VLAN内部的二层交换和VLAN间路由的功能。

    三层交换机中的路由软件模块具有路由器的功能,能实现三层路由转发;二层交换模块则具有交换机的功能,实现VLAN内的二层快速转发。其用户设置的默认网关就是三层交换机中虚拟VLAN接口的IP地址。

    相较于前两种方案,对于三层交换机的应用,可以不用在部署中增加路由器,简化了整个网络的结构。

  7. VLAN故障案例

    案例1: VLAN接口不能互通的故障。

    两台交换机SWASWB互联。SwitchAGE0/0/1接口配置为接入链路类型,配置端口的默认VLAN2。将SwitchBGE0/0/1接口配置为干道链路类型,允许端口透传VLAN 2,但干道接口的默认VLAN使用默认值VLAN1。交换机A和交换机B上分别配置VLAN2IP地址10.1.1.1/2410.1.1.2/24

    Switch Aping Switch BVLAN接口IP 地址,报文不通。

    故障原因分析:

    Switch A的端口GE0/0/1被设置为接入模式,根据接入接口的工作原理,在发送时会将数据帧上携带的VLAN剥离,因此从SwitchAGE0/0/1端口出来的数据帧是一个Untagged帧,不携带VLAN信息。

    当数据帧到达Switch B时,因为Switch B的接口GE0/0/1被设置成了干道接口,根据干道接口的工作原理,对于不带VLAN的数据帧,会给数据帧打上一个标签,但这个标签是干道接口的默认 VLAN。在本例中, Switch BGE0/0/1接口的默认VLANVLAN1并不是VLAN2。因此,SwitchA出来的数据帧,在进入Switch B时,被打上的是VLAN1的标签

    因此, SwitchAVLAN2的数据并不能被Switch BVLAN2接收.而是被Switch B上的VLAN1接收了,双方无法ping通。

    故障解决方法:

    1. switch A的接口VALN改成VLAN1
    2. switch B的接口的VLAN2设置为PVID.

     

    案例2: VLAN透传错误造成环路

    两台交换机的GE0/0/10端口互联,并透传VLAN1000。在两台交换机上分别配置VLAN1000的三层地址作为交换机的网管地址。把交换机的GE0/0/11端口互联,作为两台交换机的数据交换接口,并透传所有VLAN(除了VLAN1)。

    GE0/0/11端口互联之前,网管能够正常工作,当连接GE0/0/11端口并透传VLAN后,网管数据经常丢包,管理界面响应缓慢。

    故障原因分析:

    在上述的组网配置中,GE0/0/10端口允许VLAN1000通过;同样的,GE0/0/11端口也允许VLAN1000通过。

    假设此时, Switch A发送一个VLAN1000ARP广播帧,请求某个IP MAC地址。根据交换机对于广播帧的处理方式, SwitchA 会将该广播帧分别从端口GE0/0/10GE0/0/11发出。

    Switch B收到GE0/0/10的广播帧后,依据广播帧处理原则,会将该广播帧从其余允许VLAN 1000通过的端口广播出去,如会从GE0/0/11端口发出。同样的SwitchBGE0/0/11端口接收的广播帧也会从GE0/0/10端口发出

    经过SwitchB的处理,SwitchA发出的广播帧又回到了SwitchA,整个数据转发形成了一个二层的环路。这就导致了网络中的二层广播数据越来越多,从而挤占链路的带宽资源导致正常的业务数据的转发越来越慢,甚至最终导致链路带宽被全部占用,无法进行业务数据的正常转发。

    故障解决方法:

    1.SwitchASwitchBGE0/0/11接口上禁止VLAN1000通过

    2.部署STP等防环协议。

posted @ 2021-12-24 09:05  头发重要  阅读(744)  评论(0)    收藏  举报