2.2
Capa de Enlace
La
función
principal
de
la
capa
de
enlace
es
lograr
una
comunicación
eficiente
y
confiable entre dos extremos de un canal de transmisión. Para ello, la capa de
enlace realiza las siguientes funciones:
Armado y separación de tramas: Dado que la capa física solamente
acepta y transmite bits, sin preocuparse de su significado o estructura,
corresponde a la capa de enlace crear y reconocer los límites de las tramas
de datos.
Detección de errores: Corresponde a
la capa de enlace
resolver los
problemas
de
tramas
dañadas,
repetidas
o
perdidas.
Por
ejemplo,
si
no
se
recibe
el
acuse
de
recibo
de
una
trama
determinada,
puede
ser
por
que
la
trama original se perdió, o porque llegó correctamente pero se perdió el
acuse de recibo. La capa de enlace debe ser capaz de resolver éste tipo de
casos.
Control de flujo: La capa de enlace debe resolver los problemas que
surgen debido a las diferentes
velocidades de procesamiento del receptor
y
emisor. Debe tener algún
tipo de regulación de tráfico, para
que
no
existan
saturaciones o desbordes de memorias (buffers)
Adecuación para acceso al medio: En
TCP/IP la capa de enlace dispone
de una sub-capa de acceso al medio (MAC Médium Access Control). Esta
sub-capa de acceso al medio implementa los protocolos necesarios para
utilizar
un
medio
compartido
en
las
redes
de
difusión.
Esta
sub-capa
debe
resolver las colisiones (resultantes de que
varias máquinas intenten enviar
tramas a la vez sobre un mismo medio compartido)
2.3
Capa de Red
La capa de red es la encargada de hacer llegar la información desde el origen
hasta el destino. Para esto puede ser
necesario pasar por
varias
máquinas
intermedias. Es de hacer notar la diferencia con la capa de enlace, cuya función se
limita a transportar en forma segura tramas de un punto a otro de un canal de
transmisión.
La capa de red puede brindar servicios orientados a la conexión o no orientados
a la conexión. En los servicios orientados a la conexión, la complejidad se
encuentra en la propia capa de red. En los servicios no orientados a la conexión,
la complejidad es pasada
una capa más arriba, es decir, a la capa de transporte.
En
el
funcionamiento
orientados
a
la
conexión,
la
capa
de
red
establece
circuitos
virtuales en el proceso de conexión. En el funcionamiento no orientado
a
la conexión, los paquetes enviados se llaman normalmente datagramas
2.4
Capa de Transporte
La
tarea
de
esta
capa
es
proporcionar
un
transporte
de
datos
confiable
y
económico de la
máquina de origen a la
máquina de destino, independientemente
de la red o redes
físicas en
uso. Es
la primera capa en
la que los corresponsales
son
directamente
los extremos.
Para
lograrlo,
la
capa
de
transporte
hace
uso
de
los servicios brindados por la capa de red.
De la misma manera que hay dos tipos de servicios de red, orientados y no
orientados a
la conexión,
hay dos tipos de servicios de transporte, orientados
y
no
orientados a la conexión.
La Internet tiene dos protocolos principales a nivel de la capa de transporte:
TCP (Transmission Control Protocol): Es un protocolo orientado a la
conexión, que proporciona flujos de información seguros y confiables.
UDP
(User
Datagram
Protocol):
Es
un
protocolo
no
orientado
a
la
conexión, muy sencillo
(básicamente el paquete
IP más
un encabezado),
y
no seguro.
2.5
Capa de Aplicación
En
la
capa
de
aplicación
residen
las aplicaciones de
los
usuarios.
Las capas por
debajo de la de aplicación existen únicamente para brindar un transporte confiable
a
las aplicaciones residentes en la capa de aplicación.
En la capa de aplicación se implementan
los temas de seguridad, presentación de
la información, y cualquier aplicación útil para los usuarios (correo electrónico,
world wide web, etc.).
3
Redes
LAN
Las redes de área local (LAN: Local Area Network) son aquellas que conectan una
red de ordenadores
normalmente confinadas en
un área geográfica, como
un solo
edificio
o
un
campus.
Las
LAN,
sin
embargo,
no
son
necesariamente
simples
de
planificar,
ya
que
pueden
unir
muchos
centenares
de
ordenadores
y
pueden
ser
usadas por
muchos
miles
de usuarios.
El desarrollo de varias normas
de
protocolos de red y medios físicos, junto con la baja de precio de las
computadoras
han
hecho
posible
la
proliferación
de
LAN's
en
todo
tipo
de
organizaciones.
Las LAN generalmente
utilizan transmisión por difusión, a velocidades de 10, 100
o
1000 Mb/s. Las topologías más utilizadas son en bus (IEEE 802.3 Ethernet) o en
anillo (IEEE 802.5 Token Ring)
3.1
Ethernet
Ethernet
fue desarrollada originalmente por Bob Metcalfe,
trabajando para Xerox
[2]. Le había sido asignada la tarea de desarrollar un mecanismo para
interconectar los computadores que en ese momento se estaban desarrollando en
la
Compañía.
Inspirado
en
los
trabajos
publicados
por
la
Universidad
de
Hawaii,
respecto a la red Alohanet [3], en 1973 Bob Metcalfe desarrolló una nueva
tecnología de comunicación entre computadores, a la que llamó Ethernet.
Ethernet fue tan exitosa, que en 1980
varias compañías la adoptaron. Digital,
Intel
y Xerox comenzaron a usarla, a velocidades de 10 Mb/s, convirtiéndola en un
estándar de hecho.
En febrero de 1980 la Sociedad de Computación del IEEE realizó la primer reunión
del
comité de estandarización
de
redes de área
local (Local
Network
Standards
Committee), al que fue asignado el
número 802 (simplemente el siguiente
número
secuencial de los proyectos que estaban en curso en la
IEEE). En 1983 Ethernet
es estandarizada como IEEE 802.3 (10 Base 5). Desde entonces, varias
recomendaciones se
han incorporado a
la original 802.3. Las principales se
detallan a continuación [4].
Recomendación
Año
Descripción
802.3a
1985
10Base2 (thin Ethernet)
802.3c
1986
10 Mb/s repeater specifications (clause 9)
802.3d
1987
FOIRL (fiber link)
802.3i
1990
10Base-T (twisted pair)
802.3j
1993
10Base-F (fiber optic)
802.3u
1995
100Base-T (Fast Ethernet and autonegotiation)
802.3x
1997
Full-duplex
802.3z
1998
1000Base-X (Gigabit Ethernet sobre fibra óptica)
802.3ab
1999
1000Base-T (Gigabit Ethernet sobre par trenzado)
802.3ac
1998
VLAN tag (frame size extension to 1522 bytes)
Recomendación
Año
Descripción
802.3ad
2000
Parallel links (link aggregation)
802.3ae
2002
10 Gigabit Ethernet
802.3af
2003
PoE (Power over Ethernet)
802.3ak
2004
10GBase-CX4 (Ethernet a 10 Gbit/s sobre cable bi-axial)
802.3an
2006
10GBase-T (10 Gigabit Ethernet sobre par trenzado)
Ethernet
es
la
tecnología
de
LAN
más
popularmente
utilizada
actualmente.
Ethernet es popular porque permite un buen equilibrio entre velocidad, costo y
facilidad
de
instalación. Estos puntos fuertes, combinados con
la
amplia
aceptación
en
el
mercado
y
la
habilidad
de
soportar
virtualmente
todos
los
protocolos de red populares,
hacen a Ethernet la
tecnología ideal para
la red de la
mayoría los
usuarios de la informática actual. Adhiriéndose a las
normas de
IEEE,
los equipo y protocolos de red pueden interoperar eficazmente.
Un sistema Ethernet dispone básicamente de tres elementos:
El medio físico, que transporta las señales entre las máquinas.
Un
conjunto
de
reglas
de
acceso
al
medio
físico,
incluidas
en
las
Interfaces Ethernet, que permiten que
varias máquinas puedan acceder al
mismo medio sin necesidad de arbitrajes externos.
Una
trama
Ethernet
que
consiste
en
una
secuencia
de
bits
estandarizada.
3.1.1 El medio físico en Ethernet
Ethernet admite cuatro tipos de medios físicos cableados:
Cable Coaxial Grueso ("Thick wire" o "Thick Ethernet") (10BASE5)
Cable Coaxial Fino ("Thin wire" o "Thin Ethernet") (10BASE2)
Par Trenzado Sin Malla ("Unshielded Twisted Pair" o "UTP") para redes
10Base-T, 100Base-T, 1000Base-T y 10 GBase-T
Fibra Optica ("Fiber optic") para redes 10Base-FL, 1000Base-X o para
redes de Vínculos
Inter-repetidores de Fibra Optica ("Fiber-Optic Inter-
repeater Link" o "FOIRL").
Esta amplia
variedad de medios refleja la evolución de Ethernet
y también
demuestra la flexibilidad de la tecnología.
Las primeras redes Ethernet funcionaban sobre cables coaxiales que recorrían,
formando un bus, cada una de las máquinas de la red.
Thickwire fue uno de los primeros sistemas de cableado coaxial utilizados en
Ethernet pero era difícil de
trabajar
y
caro. Este evolucionó al cable coaxial
fino, el
cual es más fácil de trabajar y más barato. Sin embargo, una debilidad de las
redes
basadas
en
cables
coaxiales
fue
la
poca
fiabilidad.
Un
problema
en
cualquier punto del cable afectaba a
toda la red. Más recientemente, se comenzó
a utilizar cable de cobre trenzado sin
malla (UTP) y
concentradores (hubs Ver
3.2).
Hoy, los más populares esquemas de cableado son realizados con cables UTP
(pares trenzados sin malla), sobre los que se pueden soportar aplicaciones de
hasta 10
Gb/s. Estos cables se clasifican en Categorías, de acuerdo al ancho de
banda de los mismos. Un estudio detallado de estas Categorías y sus
características puede verse en Cableado Estructurado [5]
Para aplicaciones especializadas pueden
utilizarse
fibras ópticas. El cable de fibra
óptica es más costoso, pero es insustituible para situaciones donde las emisiones
electrónicas y los riesgos ambientales son un problema a tener en cuenta.
El cable de fibra óptica
es a menudo
utilizado para aplicaciones inter-edificio para
aislar equipamientos de red de daños eléctricos ocasionados por descargas de
rayos debido a que este no conduce electricidad.
El
cable
de
fibra
óptica
puede
también
ser
útil
en
áreas
donde
hay
gran
interferencia electromagnética, como por ejemplo el piso de una fábrica.
El estándar Ethernet permite segmentos de cable de fibra óptica de hasta 2
kilómetros de longitud, convirtiendo a la Ethernet por fibra óptica en la elección
perfecta para conexión de nodos y
edificios que de otro modo no serían
alcanzables por medios de conductores de cobre.
Ethernet también admite medios
físicos inalámbricos, como se
verá en el capítulo
3.5.
3.1.2 Reglas de acceso al medio físico en Ethernet
Cada máquina
Ethernet
opera en forma
independiente del resto de
las máquinas
de la red. Ethernet no dispone de controladores centrales. Cada máquina en la red
está conectada al mismo medio de
transmisión compartido. Las señales Ethernet
que genera cada máquina son
transmitidas en forma serial,
un bit a continuación
de
otro,
sobre
el medio físico
compartido.
Para
enviar datos,
las máquinas
tratan
de asegurarse que el medio físico esté libre (es decir, que
ninguna otra máquina
está
transmitiendo
bits).
Para
ello
escuchan
el
medio
físico,
y
cuando
entienden
que está
libre, transmiten los datos en la forma de una trama Ethernet. Luego de
la transmisión de cada trama, todas
las máquinas de la
red compiten
nuevamente
por el medio para el envío de nuevas tramas. Esto asegura que el acceso al medio
físico es equitativo,
y
que
ninguna máquina puede bloquear el acceso de las otras.
Las reglas de acceso al medio físico están determinadas por una sub-capa de
control de acceso al medio,
llamada MAC (Medium access control). Las
funciones
de
esta
sub-capa
están
generalmente
incorporadas
en
las
interfaces
Ethernet
de
cada
máquina.
El
mecanismo
de
control
de
acceso
al
medio
está
basado
en
un
sistema
denominado
CSMA/CD
(Carrier
Sense
Multiple
Access
with
Collition
Detection).
Como
se
mencionó,
las
máquinas
de
una
red
Ethernet
envían
paquetes
cuando
determinan
que
la
red
no
está
en
uso.
Esta
determinación
se
hace
esperando
un
tiempo (cuya duración es aleatoria) después del último paquete que se está
transmitiendo en la red en ese
momento.
Transcurrido este tiempo, sin detectar
actividad en el
medio físico, se determina que la
red esta disponible para efectuar
una transmisión. Sin embargo, es posible que dos máquinas en localizaciones
físicas distantes traten de enviar datos al mismo
tiempo. Cuando ambas máquinas
intentan
transmitir
un
paquete
a
la
red
al
mismo
tiempo
se
produce
una
colisión.
Este mecanismo puede asimilarse al que utilizamos los humanos al conversar:
cada
uno
espera
un
tiempo
(aleatorio)
desde
que
el
otro
emitió
la
última
palabra
antes de determinar que terminó de decir lo que quería y proceder entonces a
contestar. Si por algún motivo erramos en la determinación, hablaremos dos o
más al mismo tiempo, generando una colisión y deberemos detenernos y re-
comenzar.
Minimizar las colisiones es
un elemento crucial en el diseño
y
operación de redes.
El incremento de las colisiones es a menudo el
resultado de demasiados usuarios
en una red, lo que produce una notable disminución en el ancho de banda efectivo
de la red. Esto puede enlentecer la performance de la red desde el punto de
vista
de los usuarios. Segmentar la red en varios dominios de colisión, con un "bridge"
o
un "switch", es una manera de reducir una red superpoblada (Ver 3.3).
El
tamaño
máximo
de
una
red
Ethernet
está
determinada
por
el
largo
mínimo
de
una
trama
y
la
velocidad
de
la
misma,
debido
a
la
necesidad
de
detectar
colisiones. Se debe evitar que
una máquina complete la
transmisión de
una
trama
antes de que el primer bit de dicha trama
llegue
hasta la
máquina
más alejada de
la red y eventualmente vuelva a la máquina de origen.
Supongamos que la máquina A comienza a transmitir el primer bit de una trama en
el tiempo 0,
y
que
este
bit tarda
un tiempo
?
en
llegar a
la máquina más lejana B.
Supongamos que casualmente la máquina B decide comenzar el envío de una
trama
justo
antes
de
?,
digamos
a
un
tiempo
?
e.
Inmediatamente
se
producirá
una colisión, que será detectada sin problemas por la máquina B, pero esta
colisión tardará otro tiempo ? en
llegar hasta la máquina A. Es decir, la
máquina A
recibirá
la
información de
la
colisión
a
un
tiempo
2
?
desde
el comienzo
del envío
del primer bit de su trama. Si la máquina A hubiera terminado el envío de su trama
antes
de
2
?,
no
hubiera
detectado
esta
colisión,
y
por
lo
tanto,
hubiera
asumido
que la trama fue enviada correctamente.
Dado que las tramas
tienen un
largo mínimo de 64 bytes, conociendo el
tiempo de
propagación
(teniendo
en
cuenta
los
posibles
repetidores
y
sus
retardos),
puede
calcularse
la
distancia
máxima
de
una
red
Ethernet,
según
la
velocidad
de
transmisión
de
bits
(en
bits/s).
Para
10
Mb/s,
la
distancia
máxima
es
de
2.500
m
(previendo 4 repetidores).
3.1.3 Trama Ethernet
SFD
Preámbulo
S
F
D
Dir Origen
Dir
Destino
L
Datos / Relleno
FCS
7
1
6
6
2
46 1500
4
La estructura de
la trama Ethernet se
muestra en la
figura. Comienza con 7 bytes
de preámbulo, que contienen
los bits 10101010 como
un patrón
fijo. Dado que
Ethernet utiliza codificación Manchester, este patrón genera una onda cuadrada
de 10
Mhz durante 5.6
µs, lo que permite sincronizar los relojes de las máquinas
receptoras con el reloj de la máquina que origina la trama.
Luego del preámbulo se transmite el byte 10101011, indicando el comienzo
efectivo de la trama.
La trama misma contiene la información de origen y destino. Las direcciones
Ethernet consisten en
6 bytes, los
primeros
3 correspondientes al fabricante del
controlador Ethernet
(excluyendo
los 2 primeros bits, que están reservados),
y
los
últimos 3 al número de dispositivo fabricado.
Con 46 bits, hay aproximadamente 7 x10¹³ direcciones Ethernet posibles.
La dirección consistente en todos los bits en 1 es reservada para difusión
(broadcast). Una
trama que contiene todos los bits en 1 en
la dirección de destino
es recibida y procesada por todas las máquinas de la red.
El campo L indica la longitud del campo de datos, desde 0 a 1500. Dado que las
tramas
Ethernet
deben
tener
como
mínimo
64
bytes,
desde
el
campo
Dirección
origen, si los datos a
transmitir son menos de 46 bytes, se completan con
relleno.
El campo final FCS (Frame Check Sequence) es la suma de comprobación,
utilizada por el receptor para validar la ausencia de errores en la trama recibida.
3.2
Hubs
Como
se
indicó
en
3.1.1,
las
primeras
redes
Ethernet
utilizaron
cables
coaxiales
como
medios
físicos,
y
luego
evolucionaron
a
cables
UTP
(pares
de
cobre
trenzados sin malla).
Debido a los retardos y la atenuación de las señales, fue necesario determinar
longitudes
máximas
y
cantidades
máximas
de
máquinas
en
las
redes
coaxiales.
Para que
la red
funcione correctamente,
un segmento de cable coaxial
fino puede
tener hasta 185 metros de longitud
y hasta 30
nodos o máquinas. Un segmento de
cable
coaxial
grueso
puede
tener
hasta
500
metros,
y
hasta
100
nodos
o
máquinas.
Las redes coaxiales grandes requerían ampliar estas
restricciones, para lo que se
desarrollaron
repetidores,
capaces
de
conectar
varios
segmentos
de
la
red.
Los
repetidores proporcionan la amplificación y resincronización de las señales
necesarias
para
conectar
los
segmentos
entre
sí.
Al
poder
conectar
varios
segmentos, permitimos a
la red continuar creciendo, sin
violar
las
restricciones de
correcto funcionamiento.