thumb|Topología de red de área local virtual (VLAN) en un edificio de tres plantas
Una VLAN (virtual local area network), acrónimo de virtual LAN ( red de área local virtual), es un método para crear redes lógicas independientes dentro de una misma red física. Varias VLAN pueden coexistir en un único conmutador físico o en una única red física. Son útiles para reducir el dominio de difusión y ayudan en la administración de la red, separando segmentos lógicos de una red de área local (los departamentos de una empresa, por ejemplo) que no deberían intercambiar datos usando la red local (aunque podrían hacerlo a través de un enrutador o un conmutador de capa OSI 3 y 4).
Una VLAN consiste en dos o más redes de computadoras que se comportan como si estuviesen conectados al mismo conmutador, aunque se encuentren físicamente conectados a diferentes segmentos de una red de área local.
Historia
A principios de la década de 1981, Ethernet era una tecnología consolidada que ofrecía una velocidad de 10 Mbps, mucho mayor que gran parte de las alternativas de la época. Las redes Ethernet tenían una topología en bus, donde el medio físico de transmisión (cable coaxial) era compartido.
Ethernet era, por lo tanto, una red de difusión y como tal cuando dos estaciones transmiten simultáneamente se producen colisiones y se desperdicia ancho de banda en transmisiones fallidas.
El diseño de Ethernet no ofrecía escalabilidad, es decir, al aumentar el tamaño de la red disminuyen sus prestaciones o el costo se hace inasumible. CSMA/CD, el protocolo que controla el acceso al medio compartido en Ethernet, impone de por sí limitaciones en cuanto al ancho de banda máximo y a la máxima distancia entre dos estaciones. Conectar múltiples redes Ethernet era por aquel entonces complicado, y aunque se podía utilizar un enrutador para la interconexión, estos eran caros y requería un mayor tiempo de procesado por paquete grande, aumentando el retardo.
Para solucionar estos problemas, primero W. Kempf inventó el bridge (puente), dispositivo software para interconectar dos LANs.
En 1992 Kalpana desarrolló el switch Ethernet, puente multipuerto implementado en hardware, dispositivo de conmutación de tramas de nivel 2. Usar switches para interconectar redes Ethernet permite separar dominios de colisión, aumentando la eficiencia y la escalabilidad de la red. Una red tolerante de fallos y con un nivel alto de disponibilidad requiere que se usen topologías redundantes: enlaces múltiples entre switches y equipos redundantes. De esta manera, ante un fallo en un único punto es posible recuperar de forma automática y rápida el servicio. Este diseño redundante requiere la habilitación del protocolo spanning tree (STP) para asegurarse de que solo haya activo un camino lógico para ir de un nodo a otro y evitar así el fenómeno conocido como tormentas broadcast. El principal inconveniente de esta topología lógica de la red es que los switches centrales se convierten en cuellos de botella, pues la mayor parte del tráfico circula a través de ellos.
Sincoskie consiguió aliviar la sobrecarga de los switches inventando LAN virtuales al añadir una etiqueta a las tramas Ethernet con la que se diferencia el tráfico. Al definir varias LAN virtuales cada una de ellas tendrá su propio spanning tree y se podrá asignar los distintos puertos de un switch a cada una de las VLAN.
Para unir VLAN que están definidas en varios switches se puede crear un enlace especial llamado trunk, por el que fluye tráfico de varias VLAN. Los switches sabrán a qué VLAN pertenece cada trama observando la etiqueta VLAN (definida en la norma IEEE 802.1Q).
Aunque hoy en día el uso de LAN virtuales es generalizado en las redes Ethernet modernas, usarlas para el propósito original puede ser un tanto extraño, ya que lo habitual es utilizarlas para separar dominios de difusión (hosts que pueden ser alcanzados por una trama broadcast).
IEEE 802.1aq-2012 - Shortest Path Bridging ofrece mucha más escalabilidad a hasta 16 millones comparado con el límite de 4096 de las VLAN.
Clasificación
Aunque las más habituales son las VLAN basadas en puertos (nivel 1), las redes de área local virtuales se pueden clasificar en cuatro tipos según el nivel de la jerarquía OSI en el que operen: VLAN de nivel 1 (por puerto). También conocida como “port switching”. Se especifica qué puertos del switch pertenecen a la VLAN, los miembros de dicha VLAN son los que se conecten a esos puertos. No permite la movilidad de los usuarios, habría que reconfigurar las VLAN si el usuario se mueve físicamente. Es la más común y la que se explica en profundidad en este artículo. VLAN de nivel 2 por direcciones MAC. Se asignan hosts a una VLAN en función de su dirección MAC. Tiene la ventaja de que no hay que reconfigurar el dispositivo de conmutación si el usuario cambia su localización, es decir, se conecta a otro puerto de ese u otro dispositivo. El principal inconveniente es que hay que asignar los miembros uno a uno y si hay muchos usuarios puede ser agotador. VLAN de nivel 3 por tipo de protocolo. La VLAN queda determinada por el contenido del campo tipo de protocolo de la trama MAC. Por ejemplo, se asociaría VLAN 1 al protocolo IPv4, VLAN 2 al protocolo IPv6, VLAN 3 a AppleTalk, VLAN 4 a IPX... VLAN de nivel 4 por direcciones de subred (subred virtual). La cabecera de nivel 3 se utiliza para mapear la VLAN a la que pertenece. En este tipo de VLAN son los paquetes, y no las estaciones, quienes pertenecen a la VLAN. Estaciones con múltiples protocolos de red (nivel 3) estarán en múltiples VLAN. VLAN de niveles superiores. Se crea una VLAN para cada aplicación: FTP, flujos multimedia, correo electrónico... La pertenencia a una VLAN puede basarse en una combinación de factores como puertos, direcciones MAC, subred, hora del día, forma de acceso, condiciones de seguridad del equipo...
Protocolos
Durante todo el proceso de configuración y funcionamiento de una VLAN es necesaria la participación de una serie de protocolos entre los que destacan el IEEE 802.1Q, STP y VTP (cuyo equivalente IEEE es GVRP). El protocolo IEEE 802.1Q se encarga del etiquetado de las tramas que es asociada inmediatamente con la información de la VLAN. El cometido principal de Spanning Tree Protocol (STP) es evitar la aparición de bucles lógicos para que haya un solo camino entre dos nodos. VTP (VLAN Trunking Protocol) es un protocolo propietario de Cisco que permite una gestión centralizada de todas las VLAN.
El protocolo de etiquetado IEEE 802.1Q es el más común para el etiquetado de las VLAN. Antes de su introducción existían varios protocolos propietarios, como el ISL (Inter-Switch Link) de Cisco, una variante del IEEE 802.1Q, y el VLT (Virtual LAN Trunk) de 3Com. El IEEE 802.1Q se caracteriza por utilizar un formato de trama similar a 802.3 (Ethernet) donde solo cambia el valor del campo Ethertype, que en las tramas 802.1Q vale 0x8100, y se añaden dos bytes para codificar la prioridad, el CFI y el VLAN ID. Este protocolo es un estándar internacional y por lo dicho anteriormente es compatible con bridges y switches sin capacidad de VLAN.
Las VLAN y Protocolos de Árbol de Expansión. Para evitar la saturación de los switches debido a las tormentas broadcast, una red con topología redundante tiene que tener habilitado el protocolo STP. Los switches intercambian mensajes STP BPDU (Bridge Protocol Data Units) entre sí para lograr que la topología de la red sea un árbol (no tenga enlaces redundantes) y solo haya activo un camino para ir de un nodo a otro. El protocolo STP/RSTP es agnóstico a las VLAN, MSTP (IEEE 802.1Q) permite crear árboles de expansión diferentes y asignarlos a grupos de las VLAN mediante configuración. Esto permite utilizar enlaces en un árbol que están bloqueados en otro árbol.
En los dispositivos Cisco, VTP (VLAN trunking protocol) se encarga de mantener la coherencia de la configuración VLAN por toda la red. VTP utiliza tramas de nivel 2 para gestionar la creación, borrado y renombrado de las VLAN en una red sincronizando todos los dispositivos entre sí y evitar tener que configurarlos uno a uno. Para eso hay que establecer primero un dominio de administración VTP. Un dominio VTP para una red es un conjunto contiguo de switches unidos con enlaces trunk que tienen el mismo nombre de dominio VTP.
Los switches pueden estar en uno de los siguientes modos: servidor, cliente o transparente. «Servidor» es el modo por defecto, anuncia su configuración al resto de equipos y se sincroniza con otros servidores VTP. Un switch en modo cliente no puede modificar la configuración VLAN, simplemente sincroniza la configuración sobre la base de la información que le envían los servidores. Por último, un switch está en modo transparente cuando solo se puede configurar localmente pues ignora el contenido de los mensajes VTP.
VTP también permite «podar» (función VTP pruning), lo que significa dirigir tráfico VLAN específico solo a los conmutadores que tienen puertos en la VLAN destino. Con lo que se ahorra ancho de banda en los posiblemente saturados enlaces trunk.
Uno de los peores problemas que puede presentarse para un Switch es cuando escucha la misma dirección MAC (Medium Access Control) por dos interfaces físicas diferentes, este es un bucle que en principio, no sabría como resolver. Este problema si bien parece poco probable que pueda ocurrir, en realidad en redes grandes al tener cientos o miles de cables (muchos de ellos para redundancia), este hecho es tan sencillo como conectar el mismo cable en diferentes patch pannels que cierran un lazo sobre el mismo dispositivo, y en la realidad ocurre con cierta frecuencia, mayor, en la medida que más grande sea la red LAN. También es un hecho concreto cuando el cableado se diseña para poseer caminos redundantes, justamente para incrementar la disponibilidad de la red.
Cuando físicamente se cierra un bucle, la topología pura de red “Jerárquica” deja de serlo y se convierte en una red “Malla”. Para tratar este problema el protocolo Spanning Tree crea una red “Jerárquica lógica (árbol Lógico)” sobre esta red “Malla Física”. Este protocolo crea “Puentes” (bridges) de unión sobre estos enlaces y define a través de diferentes algoritmos que se pueden configurar, cuál es el que tiene mayor prioridad, este puente de máxima prioridad lo denomina “Root Bridge” (o Puente Raíz) y será el que manda jerárquicamente las interfaces por las cuales se separarán los diferentes dominios de colisión. Todo el control de STP se realiza mediante tramas llamadas BPDU (Bridge Protocol Data Unit) que son las que regulan los diferentes dominios de colisión . El parámetro que define esta jerarquía es el BID (Bridge Identifier) que está compuesto por el Bridge Priority + dirección MAC. El Bridge Priority es un valor configurable que por defecto está asignado en 32768.
En general este protocolo se configura de forma automática, y se basa en el orden de encendido de los diferentes Switchs de la red, siendo el primero que se pone en funcionamiento el que se auto designa “Root Bridge”, pero por supuesto se puede realizar de forma manual.