LOS NIVELES DEL MODELO OSI
Debido a la importancia histórica y a su relevancia didáctica, el modelo de referencia OSI se utiliza para describir otros modelos y arquitecturas de red. A pesar que se ha criticado su estratificación de 7 capas como una forma de apego al modelo que IBM propuso cuando era la compañia dominante, el modelo tiene su lado bueno principalmente porque ayuda a ubicar de manera clara las funciones, servicios y organización de la mayoría de las arquitecturas de red existentes.
Dado que las comunicaciones modernas están basadas en señales digitales, y éstas tienen que viajar por algún medio de transporte, es importante saber cúanta información es posible transmitir en un medio físico.
Recordemos que en un intervalo de tiempo, si incrementamos la frecuencia de una señal tambíen estamos decrementando su amplitud. Nyquist demostró que existe un límite para la cantidad de datos que podemos transmitir en un medio con un ancho de banda B. Por ejemplo, si el ancho de banda es 200 Hertz (200 pulsos por segundo), para una señal con dos niveles de señalización (por decir algo, 0 y 5 volts) la máxima cantidad de bits por segundo son 2B=400. Y en general, para una señal con M niveles de señalización la cantidad es:
Bits por segundo = 2Blog2M recordando que: logxY = ln Y/ln X
Ejemplo 2: Si tenemos un medio con tres niveles de señalización (M=3) y un ancho de banda de 2500 Hertz, la cantidad de bits máxima que se pueden transmitir son:
Bits por segundo = 2(2500)log2(3) = 5000(0.69) = 3450
Por otro lado, Shannon encontró que si el medio de transmisión tiene ruido, el cual se mide como relación señal a ruido S/N (S=señal, N=ruido) nombrada en decibeles, entonces la máxima cantidad de bits por segundo que se pueden transmitir sin importar cuántos niveles de señalización se empleen es:
Bits por segundo = Blog2( 1 + S/N) (F1)
Por ejemplo, para una línea telefónica a 3000 Hertz, la máxima cantidad de información que se puede transmitir tomando una relación señal a ruido típica de las líneas analógicas de 30 decibeles es:
S/N = 10 log10 (S/N dB) (Primera parte de la ley de Shannon-Hartley)
30 = 10 log10 (S/N dB) Despejando :
S/N dB= 10 ( 30 / 10 )
S/N dB= 1000 Sustituyendo en F1:
Bits por segundo = 3000 log2( 1 + 1000) = 3000 ( 9.9672) = 29901
Entonces, para una línea telefónica analógica típica, podemos transmitir hasta 29901 bits por segundo a lo máximo sin importar cúantos niveles de señalización usemos.
2 Medios de transmisión nivel físico
Cuando necesitamos decidir qué medio de transmisión es el adecuado para nuestras necesidades, debemos tomar en cuenta sus características para saber en qué medida resuelve nuestros problemas actuales y planear cambios en el futuro.
Se le conoce así al cable metálico (Unshielded Twisted Pair) cuyas características generales son:
Este tipo de cable está dejándose de usar para la transmisión de datos debido a las conexiones cuasimecánicas que necesita. El cable coaxial más usado para la transmisión de datos cuenta con las siguientes características:
El cable coaxial se clasifica como "baseband" si se utiliza para transmitir señales digitales y como "bradband" si se usa para señales analógicas.
Algunos autores comparan el crecimiento de la velocidad de los procesadores contra el de las comunicaciones por red, y se dice que las redes han crecido su velocidad en un factor de 100 mientras que el cómputo lo ha hecho en uno de 10, sin embargo, podría ser más significativo comparar la velocidad del "bus" de un nodo contra la velocidad de la red, y en ese rubro encontramos que el bus interno puede transferir hasta 80 Megabytes por segundo mientras que las redes más avanzadas hablas de 622 Megabits por segundo.
Considerando lo anterior, todavía tenemos un déficit en la comunicación CPU-CPU de los nodos de una red, lo cual es una traba enorme, por ejemplo, en la construcción de sistemas distribuidos.
La traba principal para lograr mayores velocidades en las redes es la incapacidad para convertir señales de luz a señales eléctricas, aunque se esperan velocidades de 1 Terabit por segundo en pocos años.
La fibra óptica puede ser de tipo multimodal o unimodal. La primera tiene la propiedad de reflejar internamente un haz de luz, rebotando en el interior de la fibra. La segunda tiene un diámetro interno menor de manera que la luz no puede rebotar y entonces la fibra actúa como una guia recta de la luz. Las fibras unimodales son más caras y pueden transmitir hasta varios Gigabits por segundo hasta por 30 Kilómetros, y por 100 kilómetros aunque a velocidades más bajas sin necesidad de repetidores.
Conforme la luz viaja en la fibra su amplitud crece provocando distorsión. Se ha encontrado que si los pulsos de luz se envían con una forma relacionada recíprocamente al coseno hiperbólico la distorsión se cancela y los pulsos pueden viajar por miles de kilómetros. A este tipo de pulsos se les conoce como "solitons" y se estudia su aplicación en la práctica.
La ventaja de la fibra óptica sobre otros medios de transmisión es que no es susceptible de interferencias externas, no es fácil lograr intromisiones sin suspender el servicio, en un haz de fibras de una pulgada de diámetro pueden acomodarse más de cien fibras debidamente protegidas. Además de la cubierta de vidrio de diferente índice de refracción, los haces de fibra cuentan con una película de sustancia gelatinosa que además de absorber vibraciones contiene veneno para roedores.
La desventaja de la fibra es que si llega a trozarse, se tiene que hacer un arreglo relativamente caro que puede ser un alineamiento mecánico fijo con pérdida del 10% de luz, pueden ajustárseles conectores y los conectores unirlos con una guía con pérdida del 10 al 20% de luz o pueden fundirse en un arreglo térmico con pérdida mínima. El otro problema ante daño físico es la identificación de los pares correctos.
En el emisor se puede usar un diodo emisor de luz o un láser de semiconductor. En el destino puede estar un fotodiodo, cuya característica es que emite un pulso eléctrico cuando es impactado por la luz. Los fotodiodos responden hasta en un nanosegundo, lo cual limita la velocidad de la fibra a un gigabit por segundo.
3 Transmisión inalámbrica nivel físico
La transmisión inalámbrica se aplica en los usuarios móviles y cuando se necesita unir puntos separados por montañas u otros obstáculos del terreno. Algunos especialistas consideran que en el futuro los medios de transmisión serán fibra o inalámbrica.
El principio básico de la transmisión inalá mbrica consiste en que si un electrón se mueve en el espacio, se generan ondas que viajan incluso en el vacío a la velocidad de la luz independientemente de su frecuencia. La distancia entre dos crestas de onda se le llama longitud de onda y se denota por el símbolo l. En la fibra o cobre la velocidad baja aproximadamente a 200,000 Km/s y depende un poco de la frecuencia. La relación entre la velocidad de la luz (c), la longitud de onda y la frecuencia (f) en el vacío es:
fl = c (Fórmula 1)
Como la velocidad de la luz es constante (hasta ahora), si conocemos f podemos obtener l y si conocemos l podemos obtener f. Por ejemplo, si la frecuencia en una fibra es de 622 MegaHertz, su longitud de onda es (300,000Km/s)/(622,000,000 Hertz) = 0.0005 Km = 0.5 Mts.
En el espectro electromagnético podemos encontrar varios medios para transmitir información modulando la amplitud, la frecuencia o la fase de las ondas.
Como sabemos, los rayos de más alta frecuencia y que podrían llevar más información son los X, Gamma y Ultravioleta, pero no se usan porque son perjudiciales para los humanos y porque son difíciles de modular, por eso se usan frecuencias más bajas.
La cantidad de información que una onda puede llevar está relacionada con el ancho de banda. En altas frecuencias es posible codificar hasta 40 bits por cada Hertz, así que un cable a 500 Mhz podría llevar 4 Gigabits/s. Si derivamos con respecto a lambda en la fórmula 1, tenemos:
df/ d l = (- c )/ l 2 y con diferencias finitas obtenemos:
D f = ( c Dl)/(l 2 )
lo cual significa que la frecuencia crece de acuerdo al crecimiento de la longitud de onda, por eso la mayoría de los países quieren apropiarse de las ondas con banda mas amplia.
Como ya vimos, una carga eléctrica en movimiento genera un campo magnético y un campo eléctrico. Si en una antena (que pueden ser un par de cables paralelos) se producen corrientes eléctricas que oscilan de t1 en positivo a t2 en negativo, se producen campos eléctricos y magnéticos que se propagan, en teoría, hasta el inifinito. El campo magnético rodea a la antena como una piedra arrojada al agua y el campo eléctrico es perpendicular.
A la unión de los dos campos constituyen las ondas electromagnéticas y su velocidad en el aire es ligeramente inferior a 300,000 Km./s.
Cuado estas ondas llegan a otro par de cables paralelos unidos a un circuito eléctrico completo, producirá una fuerza electromotriz (fem) a la vez que obligan a los electrones a moverse generando una corriente eléctrica muy pequeña, pero suficiente para que los circuitos electrónicos la transformen en una señal de alta energía que representa la transmisión radiofónica.
Las frecuencia usadas para la transmisión de radio van más allá de los 100 Kilociclos o Kilohertz. Observe la carátula de su receptor de radio para ver los límites usados en la radio comercial.
Las ondas de radio pierden potencial inversamente proporcional al cubo de la distancia recorrida en el aire. Pueden pasar obtáculos más fácilmente mientras menor es su frecuencia, a mayor frecuencia viajan cada vez más en línea recta y son absorbidas por la lluvia o el agua. En todas las frecuencias sufren interferencia por campos eléctricos o magnéticos. Las ondas de radio de muy baja, baja y mediana frecuencia (10 4 -10 7 ) viajan siguiendo la curvatura terrestre, mientras que las de alta frecuencia (10 7 -10 8 Hz) pueden enviarse hacia la ionósfera en donde rebotan como si hubiera una repetidora (sin regenerar la señal) y tomar el rebote en una retransmmisora. Las frecuencias altas y muy altas son usadas para transmisiones militares.
3.2 Transmisión por microondas
Las ondas de frecuencias mayores a 100 Mhz viajan en línea recta y necesitan alinearse el transmisor y el receptor. Este tipo de señales son absorbidas por la lluvia y la tierra, por lo cual necesitan repetidoras terrestres o satélites. Para unas torres de 100 Mts. de altura la distancia de separación es 80 Km.
La mayor parte del espectro arriba de los 100 Mhz. está estandarizado por la ITU-R, aunque hay algunas bandas que no necesitan licencia. Las bandas de 2.4 a 2.484 Ghz se usa para transmisiones médicas, científicas e industriales. Las bandas de 902 a 928 Mhz y 5.725 a 5.850 Ghz se usan para teléfonos inalámbricos y controles remotos.
Entre más alta la frecuencia, más cara es la electrónica para manejarla y más interferencia se puede tener de hornos de microondas y radares. En comparación con la fibra óptica, las microondas son más baratas porque no necesitan un cable.
Los controles remotos de nuestros televisores trabajan con una pequeña luz infraroja que es muy útil en las transmisiones en distancias cortas, la desventaja es que no debe haber ningún obstáculo entre el emisor y el receptor. Mientras las frecuencias de radio se acercan a las frecuencias de la luz visible se comportan menos como radio y más como luz. La luz infraroja no se puede usar en exteriores porque el sol las anula.
Para resolver el problema de que la brillantez del sol anula la lus infraroja, se usan rayos láser en pequeñas distancias. El rayo láser es una luz muy potente y coherente (que no se dispersa fácilmente con la distancia). El rayo láser es unidireccional y para hacer LANs se necesitan dos rayos por cada nodo.
4 Transmisión vía satélite nivel
físico
Un satélite artificial puede ubicarse a 36 mil Km. en órbita sobre la tierra y a esa distancia tiene la propiedad de mantenerse sobre una misma área, lo cual es muy útil para enviarle señales. Con la tecnología actual, se pueden colocar satélites cada dos grados, lo cual permite poner sobre una misma línea hasta 180 satélites alrededor de la tierra. Se pueden poner dos o más satélites más cerca de dos grados si trabajan en fecuencias diferentes.
Las partes más importantes del satélite son sus "transponders", que se encargan de recibir la señal que viene de la tierra y de repetir la señal de regreso con una frecuencia diferente y sobre un área preprogramada.
Se han destinado ciertas frecuencias para las transmisiones comerciales. La banda C fue la primera y ya está saturada, la banda Ku no está saturada pero por su frecuencia es fácilmente interferida por la lluvia, por lo cual se instalan estaciones terrestres extras para darle la vuelta a las tormentas. La banda Ka es la más cara y menos usada y también se perjudica con la lluvia. Existen otras bandas pero son para uso militar.
Una desventaja de los satélites es el retraso inherente al viaje de ida y vuelta, el cual puede variar de 250 a 540 milisegundos, y este valor no se puede evitar y afecta, sobre todo, a la puesta a punto inicial de una conexión, ya que una vez establecida el flujo de datos se considera secuencial.
5 Aspectos del nivel de ligado de
datos
La capa de enlace de datos realiza las tareas de agrupar los bits provenientes de la capa física y los agrupa para formar marcos (frames), así como tareas de control de errores y control de flujo.
Los servicios que la capa de enlace ofrece pueden ser de tres tipos: no orientados a la conexión, no orientados a la conexión sin confirmación y orientados a la conexión con confirmación.
La mayoría de las arquitecturas de red ofrecen un servicio no orientado a la conexión y sin confirmación en la capa de enlace de datos o correspondiente, ya que la capa de red puede hacerse cargo de esa tarea. La confirmación de recepción de un marco le sirve al emisor para saber que el marco llegó a su destino a la capa correspondiente de enlace de datos, lo cual no debe confundirse con que llegó íntegro a la aplicación.
Como dijimos, una tarea llevada a cabo en esta capa es la de agrupar los bit que vienen de la capa física y crear marcos. La longitud de los marcos puede ser fija o variable, y puede ser un múltiplo en bits del tamaño en bits del código usado (ascii, ebcdic, etc.). la tarea de enmarcado se puede efectuar por varios métodos que se describen a continuación.
Un problema que puede suceder tanto en este método como en el anterior es los datos a enviar contengan precisamente o por coincidencia la cadena de control (o caracter de inicio o fin). La solución es muy simple y consiste en modificar la cadena de control que viene como dato insertándole enmedio una cadena de control. Por ejemplo, si los datos son la cadena:
0011001110100001001100
el marco resultante sería:
1000010011001110100100001001001100100001
y como en el destino estos bits son eliminados, la cadena de datos entregada a la capa de red es:
0011001110100001001100
5.1 Detección y corrección de
errores
Otra tarea importantísima de la capa de enlace (y de las demás capas superiores) es la de detectar, y si se desea, corregir errores ya que el nivel físico tradicionalmente no está libre de errores por ruido termal, interferencias elctromagnéticas, etc.
Una vez que la capa de enlace ya sabe como identificar el comienzo y fin de un marco, se puede dar a la tarea de verificar si están correctos. Se pueden hacer dos cosas: simplemente detectar que hubo un error y pedir la retransmisión del marco o mensaje (lo cual no es factible en líneas unidireccionales) o bien corregir los bits dañados.
Para detectar que hubo un error, al enviarse un marco se guarda en una tabla cuándo se envió y se le asocia un tiempo para recibir su confirmación. Si no se recibe la confirmación por parte del receptor, se re-envía el marco. El problema que puede surgir es que si se perdió la confirmación, el receptor puede tener marcos duplicados, lo cual se soluciona al asignar un número de secuencia a cada marco, para descartar los duplicados y re-enviar su confirmación. Otra forma de detectar un error (que ya no fue la pérdida del marco, sino la corrupción de su contenido), es insertar un código de chequeo, y para esta labor se utilizan códigos basados en el concepto de "distancia de Hamming". La distancia de Hamming para un código cualquiera se define como el número de bits diferentes al hacer un XOR entre todos sus símbolos. Por ejemplo, si tenemos un código con los símbolos A,B,C; donde A = 11000, B=00011, C=01101, tenemos:
A xor B 11000 |
A xor C 11000 |
B xor C 00011 |
00011 |
01101 |
01101 |
4 bits |
3 bits |
3 bits |
Distancia de Hamming = mínimo(4,3,3) = 3 bits.
Si los símbolos de un código difieren a lo menos en X bits, es posible saber que ocurrieron X-1 errores ya que al variar un símbolo válido (dañarlo) en X-1 bits es imposible obtener otro símbolo válido.
Si los símbolos de un código difieren a lo menos en 2X+1 bits, al variar X bits (dañar X bits) obtenemos un nuevo símbolo que se parecerá más en un bit a un código válido que a otro código válido y por lo tanto podemos decir que el símbolo dañado en realidad es el más parecido realizando así su corrección.
Por otro lado, si la longitud de los datos es M bits y consideramos que los bits que producen la distancia de Hamming es de R bits, entonces tenemos que la longitud de la cadena sin incluir el inicio y fin de marco es N con N=(M+R). Compruebe que para corregir un error en una cadena se debe cumplir que (M+R) < 2 R. Por ejemplo, si destinamos 3 bits al chequeo, (M+3) < 8, entonces M < 5, lo que significa que puedo tener un código de 32 símbolos con capacidad de corregir errores de un bit. Esta fórmula sirve para establecer el tamaño de una cadena de transmisión mínima con corrección de errores.
Para el diseño estándard de protocolos, se han especificado algunas cadenas de chequeo bien conocidas llamadas CRC-12, CRC-16 y CRC-CCITT con R=12,16 y 16 bits respectivamente. Estas cadenas se interpretan como polinomios de la manera que sigue.
CRC-12 = 1100000001111 = X^12 + X^11 + X^3 + X^2 + X + 1.
CRC-16 = 11000000000000101 = X^16 + X^15 + X^2 + 1
CRC-CCITT = 10001000000100001 = X^16 + X^12 + X^5 + 1
Observemos que la posición del bit con un uno representa la potencia del polinomio. Cada uno de estos polinomios se conocen como "generador polinomial" y las siglas CRC significan "Cyclic Redundancy Code".
Los tres pasos para detectar errores con estos polinomios son:
El efecto del algoritmo anterior es simple, si hacemos lo mismo con un número decimal conocido. Supongamos que CRC=3 y P = 25. Al dividir 25 entre 3 nos da un residuo K=1. Entonces lo que enviamos es una cadena compuesta de las partes 25-1= (24). Observemos que no se transmite el 24, sino una cadena 25-1. En el destino, se hace la división (binaria) de la cadena compuesta (25-1)/3 = 8 y el residuo es cero, lo cual significa que la cadena original es correcta y son los primeros M bits.
El control de flujo es otra tarea realizada por vez primera en la capa de enlace de datos y que también puede estar presente en las capas superiores.
El control de flujo resuelve el problema de que un nodo envía datos más rápido de lo que el receptor los puede procesar o viceversa. En la sección 8.7.1.2 revisaremos más a detalle las técnicas para realizar el control de flujo, aunque podemos adelantar diciendo que la solución a este problema se entiende haciendo una analogía del emisor con un grifo de agua y el receptor con un recipiente. Si el emisor es más rápido que el receptor, tenemos que cerrarle un poco a la llave (decrementar el número de marcos o paquetes por segundo enviados por segundo). Por otro lado, si el receptor es más rápido (la cubeta es muy grande), le abrimos más a la llave.
5.2 Protocolos del nivel de
enlace de datos
Un problema importante en el diseño del protocolo de enlace de datos es la manera en como se van a enviar datos y a recibir las confirmaciones. Una solución sería tener dos canales unidireccionales, uno para enviar datos y otro para recibir las confirmaciones, pero es claro que esta solución es ineficiente porque desperdiciaríamos mucho el canal de confirmaciones.
Para optimizar un poco (o mucho) el método de confirmación, el receptor puede aprovechar que la capa de red envía paquetes de respuesta al emisor y le anexa a dichos paquetes la confirmación de los paquetes recibidos. Esta forma de confirmar se le conoce como "piggybacking". El cuidado que se debe tener con esta técnica es que el receptor no espere demasiado a que exista un paquete de respuesta para enviar su confirmación, si el paquete de respuesta no llega en un tiempo alfa predeterminado, debe enviar la confirmación en un paquete por separado.
La confirmación de la recepción de marcos (o paquetes) se puede hacer de manera síncrona si el emisor, para transmitir un nuevo paquete X espera la confirmación del paquete X-1. Si el protocolo contempla enviar Y paquetes de golpe, y para enviar un paquete más requiere de la confirmación de un paquete anterior cualquiera que sea su número de secuencia, entonces estamos ante un protocolo de ventana deslizante, del cual hablaremos más extensamente en la sección 8.7.1.2.
5.2.1 Protocolo de enlace de datos PPP
Aunque existen muchos protolos comerciales o aceptados en todo el mundo, tales como SDLC (Synchronous Data Link Control de SNA IBM), y sus derivados ADCCP (Advanced data Communication Control Procedure de ANSI), HDLC (High-level Data Link Control de ISO), LAP (Link Access Procedure de X.25), revisaremos el protocolo PPP (Point to Point Protocol) porque está en auge al igual que el uso de Internet.
El protocolo PPP esta descrito en los RFC 1661 a 1663. Es el estándard usado en Internet para conexiones de un nodo aislado (por ejemplo una computadora en el hogar) hacia un servidor en Internet (por ejemplo, un servidor de terminales de una LAN en Internet). PPP provee los siguientes servicios:
Una sesión típica con el protocolo PPP sería que un ama de casa inicia una llamada a su proveedor de Internet por medio de un módem. El módem establece un enlace físico con el enrutador del proveedor de Internet y el protocolo LCP se encarga de negociar cómo se va a trabajar a nivel de enlace de datos. Después una serie de paquetes de tipo NCP negocían con la capa de red la obtención de una dirección IP para tener la suite completa de TCP/IP. En este momento podemos decir que el ama de casa forma parte de la red de su proveedor de Internet y cuando termine su sesión de trabajo, NCP se encargará de negociar con la capa de red (IP) la terminación de la conexión, luego LCP cerrará el enlace y el módem colgará la llamada.
Los campos de un marco de PPP son:
5.3 Estándares para LANS y MANS
La reservación de frecuencias en la transmisión de ondas, derechos de paso para cableado y todo lo relacionado con la infraestructura de las redes mundiales no puede hacerse a la ligera porque habría un caos. Se han hecho muchos esfuerzos para publicar estándares a nivel mundial que reglamenten esta actividad.
La Organización de la Naciones Unidas ha logrado formar un comité que coordina los esfuerzos de los diferentes institutos iternacionales que producen estándares. El comité funciona como una agencia denominada ITU (International Telecommunications Union) y sus tres sectores principales son:
ITU-T ha logrado cierta claridad en nombrar equipos de trabajo que trabajan coordinadamente en cada país revisando y proponiendo nuevos estándares o mejoras a estándares viejos.
Las dos ramas mundiales más importantes son los esfuerzos de estandarización de ITU-T y de la comunidad de Internet. La comunidad de Internet tiene dos comités que son el IETF (Internet Engineering Task Force) y el IRTF (Internet Research Task Force) coordinados bajo el IAB (Internet Activities Board).
El proceso para lograr estándares se parece mucho al proceso de ISO: Los estándares propuestos se envian y se publican como un RFC (Request for Comments), si el estándard propuesto ahí es implantado y probado durante cuatro mese, avanza al estado de estándard en sucio (Draft Standard) y si el IAB evalúa que el estándard sirve y es ampliamente aceptado entonces se le da el grado de Estándard de Internet.
En el argot de las redes de datos se manejan un sin fin de términos que para el profano resultan desconcertantes, y para el purista del idioma resultan una aberración. Sin embargo tenemos que conocerlas y usarlas porque es uno de los objetivos de este curso.
Tarea: Consiga el diagrama de una red y localice todos los elementos de la subred. Descríbala en términos de la funcionalidad de los dispositivos aprendidos.