IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

http://en.wikipedia.org/wiki/Spanning_tree_protocol

Spanning Tree Protocol (STP) és un protocol de xarxa de la segona capa OSI, (capa d'enllaç de dades), que gestiona enllaços redundants (per exemple: xarxes en anell), prevenint bucles infinits de repetició de dades en xarxes que presenten configuració redundant. STP és transparent a les estacions d'usuari. Està basat en un algoritme dissenyat per Radia Perlman mentre treballava per a DEC.

Conceptes

Per entendre com funciona STP cal primer definir el concepte de bucle:

  • Bucles o loops: Els bucles infinits succeeixen quan hi ha rutes alternatives entre hosts. Aquestes rutes alternatives són necessàries degut a que, al proporcionar redundància, donen una major fiabilitat ja que, al existir diferents enllaços, en el cas que un falli, un altre enllaç pot seguir suportant el trànsit de la xarxa. No obstant això, el problema arriba ja que l'existir aquests cicles en la topologia de xarxa, les trames broadcast i multicast poden quedar-se atrapades en un cicle, al no existir cap camp TTL (Time To Live) en la Capa 2, tal i com succeeix en la Capa 3. Això desperdicia ample de banda i inutilitza la xarxa. La solució consisteix en permetre cicles físics, però creant una topologia lògica sense cicles. STP permet només una trajectòria activa a la vegada entre dos dispositius de la xarxa (això preveu els bucles) però manté els camins redundants com a reserva si el camí inicial falla.

Si la configuració de STP canvia, o si un segment en la xarxa redundant arriba a ser inassolible, l'algoritme de l'arbre que l'atravessa es reconfigura i reestableix l'acoplament activant la trajectòria de reserva. Si el protocol falla, és possible que ambdues connexions estiguin actives simultàniament, i això podria donar lloc a un bucle de trànsit infinit a la LAN.

L'arbre d'expansió (Spanning tree en anglès) roman efectiu fins que succeeix un canvi en la topologia. Quan això succeeix, el protocol ho sap. El màxim temps de duració de l'arbre d'expansió és de cinc minuts. Quan succeeix un d'aquests canvis, el pont arrel actual redefineix la topologia de l'arbre d'expansió o s'escull un nou pont arrel.

Altres paraules clau són:

  • Spanning Tree Algorithm (STA): és l'algorisme que s'utilitza per tal de detectar i desactivar network loops i que permet establir línies de backup entre commutadors, bridges i encaminadors. Quan un dispositiu entén el algorisme STA és diu que és un STA-compliant. Aquest algorisme és l'encarregat tant de detectar els lopps com d'activar els camins de backup quan es perd una de les línies principals.
  • Span path cost: TODO
  • Bridge Protocol Data Units o (BPDU):
  • Bridging device. S'utilitza el concepte de dispositiu pont per tal de fer referencia a un commutador, bridge o encaminador que forma part d'un mateix segment de xarxa amb STP.
  • STP-compliant: Dispositiu que suporta STP. Ho poden ser els commutadors, els bridges o els routers.
  • Prioritats: TODO

Versions del protocol

Hi ha 2 versions del protocol STP:

Aquestes dos versions no són compatibles entre sí.

Existeixen també variants del Spanning Tree Protocol segons el temps que tarda l'algoritme utilitzat en convergir. Una d'aquestes variants és el Rapid Spanning Tree Protocol (IEEE 802.1D)

També existeix una versió anomenada MSTPMultiple Spanning Tree Protocol (IEEE 802.1s)

RSTP. Rapid Spanning Tree

RSTP. Rapid Spanning Tree

Funcionament

STP utilitza un algorisme anomenat Spanning Tree Algorithm (STA) per tal de solucionar el problema dels bucles de xarxa. Aquest algoritme modifica (de forma lògica) una xarxa física amb topologia de malla les quals poden formar bucles de xarxa, per una xarxa lògica en forma d'arbre en la que no es pot produir cap bucle.

Els dispositius que formen part del STP s'anomenen bridging devices o dispositius de port. Els bridging devices solen ser commutadors/switches STP-aware o STP-Compliant, és a dir que coneixen i saben treballar amb l'estandard STP tot i que també poden haver-hi encaminadors STP o bridges STP.

Els dispositius es comuniquen mitjançant missatges de configuració anomenats Bridge Protocol Data Units (BPDU).

NOTA: És important destacar la diferència entre el concepte de topologia de xarxa física i lògica. STP físicament no modificar res, simplement o modifica a nivell intern (lògic) dels commutadors de forma similar al que passa entre un hub i un commutador o tots dos tenen una topologia física idèntica (estrella) però lògicament són molt diferents

L'objectiu del protocol és determinar quin dispositiu serà el dispositiu arrel de l'arbre. El protocol estableix identificadors per a cada dispositiu o bridging device i escull el que té la prioritat més alta (el número més baix de prioritat numèrica) per a constituir-lo com el pont arrel o root bridge. Aquest dispositiu arrel establirà el camí de menor cost per a totes les xarxes.

Un cop definit el dispositiu arrel, a cada dispositiu (excepte el dispositiu arrel) s'haurà de definir un root port o port arrel què és el port que té el cost menor per tal d'enviar un paquet des d'aquest dispositiu fins a dispositiu arrel. Cada port té un paràmetre configurable anomenat Span path cost. Després, entre tots els dispositius que creen el segment de xarxa, s'escull un dispositiu designat, el de menor cost (en el cas que hi hagi el mateix cost en dos ponts, s'escull el que tingui el menor identificador), per a transmetre les trames cap a l'arrel. En aquest dispositiu designat, el port que connecta amb el segment, és el port designat i el que ofereix un camí de menor cost cap a l'arrel, el port arrel. Tots els altres ports i camins són bloquejats.

Then it selects a designated bridging device from each LAN which incurs the lowest path cost when forwarding a packet from that LAN to the root device. All ports connected to designated bridging devices are assigned as designated ports. After determining the lowest cost spanning tree, it enables all root ports and designated ports, and disables all other ports. Network packets are therefore only forwarded between root ports and designated ports, eliminating any possible network loops. Once a stable network topology has been established, all bridges listen for Hello BPDUs (Bridge Protocol Data Units) transmitted from the Root Bridge. If a bridge does not get a Hello BPDU after a predefined interval (Maximum Age), the bridge assumes that the link to the Root Bridge is down. This bridge will then initiate negotiations with other bridges to reconfigure the network to reestablish a valid network topology.

RSTP és un protocol dissenyat per tal de ser el reemplaçament de STP un protocol legacy (obsolet) i més lent. RTSP és més ràpid (tarda entre 1-3 segons) comparat amb els 20 segons que pot tardar aproximadament un STP. Ho fa TODO...

by reducing the number of state changes before active ports start learning, predefining an alternate route that can be used when a node or port fails, and retaining the 
forwarding database for ports insensitive to changes in the tree structure when reconfiguration occurs.

MTSP

TODO

MSTP When using STP or RSTP, it may be difficult to maintain a stable path between all VLAN members. Frequent changes in the tree structure can easily isolate some of the group members. MSTP (which is based on RSTP for fast convergence) is designed to support independent spanning trees based on VLAN groups. Using multiple spanning trees can provide multiple forwarding paths and enable load balancing. One or more VLANs can be grouped into a Multiple Spanning Tree Instance (MSTI). MSTP builds a separate Multiple Spanning Tree (MST) for each instance to maintain connectivity among each of the assigned VLAN groups. MSTP then builds a Internal Spanning Tree (IST) for the Region containing all commonly configured MSTP bridges.

An MST Region consists of a group of interconnected bridges that have the same MST Configuration Identifiers (including the Region Name, Revision Level and Configuration Digest-V see 3-116). An MST Region may contain multiple MSTP Instances. An Internal Spanning Tree (IST) is used to connect all the MSTP switches within an MST region. A Common Spanning Tree (CST) interconnects all adjacent MST Regions, and acts as a virtual bridge node for communications with STP or RSTP nodes in the global network.

MSTP connects all bridges and LAN segments with a single Common and Internal Spanning Tree (CIST). The CIST is formed as a result of the running spanning tree algorithm between switches that support the STP, RSTP, MSTP protocols. Once you specify the VLANs to include in a Multiple Spanning Tree Instance (MSTI), the protocol will automatically build an MSTI tree to maintain connectivity among each of the VLANs. MSTP maintains contact with the global network because each instance is treated as an RSTP node in the Common Spanning Tree (CST).


Elecció del pont arrel

La primera decisió que prenen tots els commutadors de la xarxa és identificar el pont arrel per tal de d'establir el flux de trànsit de dades.

Quan un commutador es posa en marxa, suposa que és el commutador arrel i envia les BPDU que contenen la seva adreça MAC així com el ID arrel.

Spanning Tree i temps d'arrancada de ports i/o commutadors

If you have recently migrated from a hub environment to a switch environment, startup connectivity delays can appear because a switch works much differently than a hub. A switch provides connectivity at the data link layer, not at the physical layer. The switch uses a bridging algorithm in order to decide if packets that are received on a port need to be transmitted out other ports. The bridging algorithm is susceptible to physical loops in the network topology. Because of this susceptibility to loops, switches run the protocol STP that causes loops to be eliminated in the topology. When you run STP, all ports that are included in the spanning tree process become active much slower than they otherwise become active as STP detects and blocks loops. A bridged network that has physical loops, without STP, breaks. Despite the time that the process involves, STP is beneficial.

Consulteu també:

Estats

TODO

After a port on the switch has linked and joined the bridge group, STP runs on that port. A port that runs STP can be in one of five states:

  • blocking
  • listening
  • learning
  • forwarding
  • disabled

STP dictates that the port starts out blocking, and then immediately moves through the listening and learning phases. By default, the port spends approximately 15 seconds listening and 15 seconds learning. During the listening state, the switch tries to determine where the port fits in the spanning tree topology. The switch especially wants to know whether this port is part of a physical loop. If the port is part of a loop, the port can be chosen to go into blocking mode. The blocking mode means that the port does not send or receive user data in order to eliminate loops. If the port is not part of a loop, the port proceeds to the learning state, in which the port learns which MAC addresses live off this port. This entire STP initialization process takes about 30 seconds.

If you connect a workstation or a server with a single NIC card or an IP phone to a switch port, the connection cannot create a physical loop. These connections are considered leaf nodes. There is no reason to make the workstation wait 30 seconds while the switch checks for loops if the workstation cannot cause a loop. Cisco added the PortFast or fast-start feature. With this feature, the STP for this port assumes that the port is not part of a loop and immediately moves to the forwarding state and does not go through the blocking, listening, or learning states. This command does not turn STP off. This command makes STP skip a few initial steps (unnecessary steps, in this circumstance) on the selected po

Qüestions a tenir en compte

No desactivar STP en els ports on es connecten routers o altres commutadors.

En canvi en nodes fulla (ports on es connecten ordinadors o altres dispositius on s'acaba la xarxa), no val la pena tenir activat STP.

L'entorn WEB del commutador permet indicar en cada port si és una estació de treball o que és? Funciona?

If you connect a workstation or a server with a single NIC card or an IP phone to a switch port, the connection cannot create a 
physical loop. These connections are considered leaf nodes. There is no reason to make the workstation wait 30 seconds while the 
switch checks for loops if the workstation cannot cause a loop. Cisco added the PortFast or fast-start feature. With this feature, 
the STP for this port assumes that the port is not part of a loop and immediately moves to the forwarding state and does not go 
through the blocking, listening, or learning states. This command does not turn STP off. This command makes STP skip a few initial 
steps (unnecessary steps, in this circumstance) on the selected port.

caution Caution:  Never use the PortFast feature on switch ports that connect to other switches, hubs, or routers. These 
connections can cause physical loops, and spanning tree must go through the full initialization procedure in these situations. A 
spanning tree loop can bring your network down. If you turn on PortFast for a port that is part of a physical loop, there can be a 
window of time when packets are continuously forwarded (and can even multiply) in such a way that the network cannot recover. 

Extret de:

http://www.cisco.com/en/US/products/hw/switches/ps700/products_tech_note09186a00800b1500.shtml

LTSP i Linkat


Sistemes operatius i marques

Linux

???

Cisco

Consulteu Cisco i Spanning Tree.

SMC

Consulteu SMC i Spanning Tree.

DLINK

Consulteu DLINK i Spanning Tree.

RouterOS

Consulteu RouterOS i Spanning Tree

Troubleshooting. Resol·lució de problemes

Arrancada de xarxa i Spanning tree

Consulteu:

Per veure els problemes que l'Spanning Tree pot provocar en l'arrancada de xarxa.

Vegeu també

Enllaços externs