Professional Documents
Culture Documents
1 Historia
El precursor de Internet fue un experimento acadmico que se llev a cabo en los aos
60. Fundada por la Defence Advanced Research Projects Agency (DARPA), la propuesta
para ARPANET fue publicada en primer lugar por Lawrence G. Roberts en 19661. Influido
por su relacin con Leonard Kleinrock de MIT2, Roberts se imagin ARPANET como una
red de rea amplia para la transmisin de la informacin en forma de paquetes. Una labor
basada en ideas similares se haba desarrollado en paralelo en la compaa RAND y en
NPL y algunos de sus estndares fueron adoptados por DARPA.
A finales de 1969, cuatro ordenadores host se conectaron conjuntamente a la inicial red
ARPANET y la prometedora red Internet se puso en marcha. Uno por uno, los
ordenadores de UCLA (conectados en septiembre), el Standford Research Institute (SRI,
en octubre), la University of California, Santa Barbara (en noviembre) y por ltimo la
University of Utah (en diciembre) entraron en lnea, todos ellos comunicados por
conexiones de 56 Kbps. El 29 de octubre, Charley Kline de UCLA, envi los primeros
paquetes cuando intent entrar en SRI. Este primer intento provoc un bloqueo del
sistema al introducir la letra G de LOGIN (registro).
No obstante, durante los aos siguientes, se conectaron rpidamente ms ordenadores a
ARPANET. En 1970, el Network Working Group3 public el primer protocolo host a host
llamado Network Control Protocol (NCP) (Protocolo de control de capa de red). Ms tarde
en ese mismo ao, se aadieron las primeras conexiones a travs del pas, entre UCLA,
RAND y MIT. En 1973 la red ARPANET se expandi a nivel internacional con conexiones
al University College de Londres, Inglaterra y al Royal Radar Establishment de Noruega.
En Marzo de 1972, Ray Tomlinson de BBN cre el software bsico para lectura y envo de
mensajes por correo electrnico, impulsado por la necesidad de los programadores de
ARPANET de hacerse con un mecanismo de sencilla coordinacin. El email pronto pas a
ser la aplicacin ms de moda por ms de una dcada. La red ARPANET se convirti en
una oficina de correos digital de
Leonard Kleinrock, MIT: Information Flow in Large Communication Nets, Mayo, 1961.
C.S. Carr, S. Crocker, V.G. Cerf, Host-Host Communication Protocol in the ARPA Network, en las actas de
AFIPS de SJCC.
aplicacin de Internet que hasta mam puede usar. 1991 fue tambin el ao en el que
Tim Berners-Lee, que trabajaba para CERN en Suiza, hizo pblico el primer cdigo
informtico del World Wide Web en alt.hypertext, un grupo de noticias relativamente
inofensivo. Marc Andreesen y un grupo de estudiantes programadores del NCSA (el
National Center for Supercomputing Applications situado en el campus de la University of
Illinois en Urbana Champaign) crearan finalmente un navegador grfico para el World
Wide Web llamado Mosaic. Andreesen continuara hasta fundar Netscape.
Finalmente, el gobierno comenz a apartarse del mantenimiento de Internet. En mayo de
1993, tuvo lugar la ltima solicitud a NSFNET para obtener puntos de acceso privados a
la red (Network Access Points) (NAPs). Ese mismo ao, NFS cre InterNIC para facilitar
servicios especficos de Internet, como los relacionados con el registro y las bases de
datos del host. Por tanto, al final, la gestin de Internet se traslad hacia el dominio
pblico con una supervisin cada vez menor por parte del gobierno.
Sin embargo, en una entrevista con CNN en marzo de 1999, el vicepresidente Al Gore se
jactaba de haber tomado la iniciativa de crear Internet.
El espectacular crecimiento de Internet haba acarreado la necesidad de un nuevo eje de
comunicaciones. En 1995, el eje de NSFNET se sustituy por vBNS servicio de alto
rendimiento desarrollado por MCI, que conectaba algunas universidades y centros de
investigacin a ms de 155 Mbps.
Internet est muy lejos de aquellos cuatro host que se conectaron en lnea en 1969. En el
ao 2002, haba aproximadamente 350 millones de hosts un nmero que se ha previsto
que crezca bastante. Los diseadores iniciales de los protocolos y de la arquitectura que
conforman Internet no tuvieron en cuenta la multitud de cuestiones que surgen del nivel
actual de complejidad: el enrutamiento no es del todo ptimo, las conexiones y los hosts
son poco fiables, no hay seguridad intrnseca, no hay directorio ni ndice y el espacio para
las direcciones es diminuto.
La naturaleza descentralizada de Internet trae consigo muchos desafos y oportunidades.
Durante este tiempo, mucha gente ha intentado retocar la arquitectura original para poder
controlar nuevas situaciones, pero como es de esperar, actualmente Internet no
proporciona un rendimiento ptimo5.
Capas de redes
Desarrollar software para redes es una tarea complicada debido al afinado nmero de
diferentes servicios subyacentes que deben facilitarse. Entre estos se encuentran el envo
de bits a travs de varios medios de transmisin, datos de enrutamiento entre mquinas
de redes distintas, facilitar la deteccin del error, la correccin y una conectividad de
confianza, regular el flujo y la definicin de formatos para la aplicacin. La mayora de
estas funciones son en gran medida independientes de la red y son lo suficientemente
genricas para que se normalicen. Como consecuencia, y para reducir la complejidad del
diseo, las redes se disponen como una serie de capas o niveles, construidas unas sobre
otras. El nmero exacto, los nombres, contenidos y funciones de cada capa puede variar
de red a red, pero su propsito es ofrecer ciertos servicios a las capas ms altas,
5
Esta seccin est basada principalmente en las dos fuentes siguientes: [1] Barry M. Leiner, Vinton
G. Cerf, David D. Clark, Robert E. Kahn, Leonard Kleinrock, Daniel C. Lynch, Jon Postel, Larry G.
Roberts, Stephen Wolff, A Brief History of the Internet y [2] Robert H. Zakon, Hobbes Internet
Timeline, http://www.zakon.org/robert/internet/timeline
Cada capa de una red aade por regla general, informacin adicional al paquete que sta
recibe de la capa que se encuentra justo encima de ella (como se muestra en la figura
2.3). Esto est pensado para que lo interprete nicamente la correspondiente capa que se
encuentra en el otro extremo. Se denomina cabecera cuando se aade al principio del
paquete y cola cuando se pega al final. La parte de los datos que pertenece a la capa
justo de encima se conoce con el nombre de payload. Las colas y cabeceras contienen
normalmente informacin de control como tamaos, tiempos y otros campos de este tipo.
Pueden contener tambin nmeros de secuencia (para permitir que la capa
correspondiente de la mquina destino entregue los mensajes en un orden adecuado si
las capas inferiores no mantienen la secuencia). Todo esto hace que el tamao de un
paquete tpico tenga un lmite de entre 46 y 1500 bytes.
Las entidades que constan de las correspondientes capas en mquinas distintas se
llaman peers. Las reglas y convenciones que se utilizan para la comunicacin entre stas
son conocidas como protocolos. Dicho de otro modo, un protocolo es fundamentalmente
un acuerdo entre las partes comunicantes sobre cmo debera transcurrir la comunicacin
(mediante la especificacin y el formato de los mensajes enviados entre los pares
iguales).
La arquitectura de capa de redes se ver ms detalladamente en el Apndice A.
2.2.2
El principio, llamado argumento end-to-end, indica que las funciones situadas en los
niveles bajos de un sistema pueden resultar superfluas o de poco valor si se comparan
con el coste que supone proporcionarlas en ese nivel bajo. La idea clave de este
argumento es que una aplicacin conoce mejor cules son sus verdaderos requisitos
comunicativos y que una capa ms baja trate de implementar cualquier caracterstica al
otro lado transportando como mnimo los datos, pone en peligro algo que no es
exactamente lo que se requiere, en cuyo caso, la aplicacin terminar volviendo a
implementar esa funcin de un modo distinto que sea ms til.
El argumento se explicar ms detalladamente en otra parte6
2.2.3
Protocolos contemporneos
J.H. Saltzer, D.P. Reed y D.D. Clark. End-to-End Arguments in System Design, MIT-LCS
2.2.3.1
Este protocolo proporciona todos los servicios de transporte de datos de Internet, con
todos los dems protocolos puestos finalmente en capas sobre IP o usados para apoyar a
IP desde abajo.
IP es el protocolo ms bsico de Internet. El nico requisito de un segmento de red para
poder funcionar en una red TCP/IP es enviar paquetes IP. De hecho, una red TCP/IP se
puede definir como un medio de comunicacin que puede transportar paquetes IP. Casi
todas las dems funciones TCP/IP se construyen superponiendo capas sobre IP.
IP es un protocolo de datagrama que trata cada paquete por separado. Esto significa que
cada paquete debe contener toda la informacin relativa a las direcciones. Adems, IP no
hace ningn intento por determinar si los paquetes llegan a su destino o por tomar las
medidas adecuadas si no es as. IP nicamente contiene la suma de verificacin de la
cabecera, los contenidos del paquete no se validan de este modo.
IP proporciona varios servicios:
Direccionamiento: las cabeceras IP contienen direcciones de 32 bits que
identifican a los hosts remitentes y destinatarios. Los enrutadores intermedios
utilizan estas direcciones para seleccionar una ruta para el paquete a travs de la
red.
Fragmentacin: los paquetes IP pueden estar divididos o fragmentados en
paquetes pequeos. Esto permite que un paquete grande viaje por una red que
slo puede manejar paquetes ms pequeos. IP fragmenta y vuelve a armar los
paquetes.
Timeout (tiempo de espera) del paquete: Cada paquete IP contiene un campo de
tiempo de vida (TTL) que disminuye cada vez que un enrutador maneja el
paquete. Si el TTL llega a cero, el paquete se descarta, impidiendo as que los
paquetes permanezcan en un bucle infinito y que colapsen la red. Este tiempo se
fija por lo general a 30 al principio.
Tipo de servicio: IP soporta la priorizacin del trfico al permitir que los paquetes
sean etiquetados con un tipo de servicio abstracto. Esto casi nunca se utiliza.
Opciones: IP proporciona varios elementos opcionales, permitiendo que el
remitente de un paquete establezca los requisitos sobre la ruta que ste toma a
travs de la red (enrutamiento fuente), que encuentre la ruta que el paquete toma
(grabacin de la ruta) y que etiquete los paquetes con elementos de seguridad.
2.2.3.2 Protocolo de control de mensajes de Internet (ICMP)
Este es un protocolo necesario estrictamente integrado con IP. Los mensajes ICMP, que
se entregan en paquetes IP, se utilizan para mensajes out-of-band relacionados con una
operacin o fallo en la red. Por supuesto, dado que ICMP utiliza IP, la entrega de un
paquete ICMP es poco fiable, as que los hosts no pueden contar con recibir paquetes
ICMP por cualquier problema en la red. Algunas de las funciones de ICMP son:
transferencia de datos hacia delante pero no al revs), slo durante el inicio de conexin y
las secuencias de cierre o viceversa.
TCP utiliza un nmero de secuencia de 32 bits que cuenta los bytes del flujo de datos.
Cada paquete TCP contiene el nmero de secuencia inicial de los datos de ese paquete y
el nmero de secuencia (llamado nmero de reconocimiento) del ltimo byte recibido
desde el par remoto. Con esta informacin, se implementa un protocolo de ventana
deslizante. Los nmeros de secuencia que van hacia delante y que vuelven hacia atrs
son completamente independientes y cada par TCP debe controlar tanto su propio
nmero de secuencia como el nmero que el par remoto est usando.
TCP utiliza un nmero de indicativos de control para controlar la conexin. Algunos de
estos indicativos estn relacionados con un nico paquete, como el indicativo URG, que
seala los datos vlidos del campo Puntero urgente. Sin embargo, existen dos indicativos,
SYN y FIN, que requieren una entrega fiable ya que marcan el comienzo y el fin del flujo
de datos. Para asegurar la entrega fiable de estos dos indicativos, se les asignan
posiciones dentro del espacio nmero de secuencia. Cada indicativo ocupa un nico byte.
Cada punto final de una conexin TCP tendr un bfer para almacenar los datos que se
transmiten por la red antes de que la aplicacin est lista para leer esos datos. Esto
permite que la transferencia de red ocurra mientras las aplicaciones estn activas con otro
procesamiento, mejorando el rendimiento global.
Para evitar que la memoria intermedia se sature, TCP coloca un campo de Tamao de
ventana en cada paquete que transmite. Este campo contiene la cantidad de datos que
pueden transmitirse al bfer o memoria intermedia. Si este nmero desciende a cero, el
TCP remoto no puede enviar ms datos. Debe esperar hasta que el espacio del bfer est
disponible y reciba un paquete que anuncie que el valor del campo de tamao de ventana
no es cero.
En algunas ocasiones, el espacio del bfer es demasiado pequeo. Esto sucede cuando
el producto ancho de banda-retraso de la red sobrepasa el tamao del bfer. La solucin
ms sencilla consiste en aumentar la memoria intermedia, pero en casos extremos, el
mismo protocolo se convierte en un obstculo (porque no posee un tamao de ventana
suficientemente grande). Bajo estas condiciones, se califica a la red como una LFN (Long
Fat Network (red de larga distancia de banda ancha) pronunciada como "elefante" en
ingls). RFC 1072 habla de las redes LFN.
Cuando un host transmite un paquete TCP a su igual, ste debe esperar un periodo de
tiempo para obtener confirmacin. Si la respuesta no llega dentro del tiempo esperado, se
asume que el paquete se ha perdido y se vuelven a transmitir los datos. La pregunta
lgica - cunto tiempo debemos esperar? no tiene una respuesta simple. Por cable
Ethernet, se necesitaran tan slo unos pocos microsegundos para obtener una
respuesta. Si el trfico debe fluir por la red Internet de rea amplia, uno o dos segundos
podran ser razonables durante periodos de mxima utilizacin. Si nos estamos
comunicando con un paquete de instrumentacin de un satlite, que va a toda velocidad
hacia Marte, podran necesitarse unos minutos antes de obtener una respuesta. No existe
respuesta para la pregunta cunto tiempo?
Todas las implementaciones TCP modernas tratan de responder a esta cuestin
controlando el intercambio normal de paquetes de datos y realizando un clculo del
tiempo que representa demasiado tiempo. Este proceso se conoce como clculo de
Round-Trip Time (RTT) (Tiempo de viaje completo). Los clculos de RTT constituyen uno
de los parmetros de rendimiento ms importantes en un intercambio TCP, especialmente
cuando se piensa que en una transferencia importante de tiempo indefinido, todas las
implementaciones TCP al final lanzan paquetes y los retransmiten, sin importar la buena
calidad de la conexin. Si el clculo de RTT es demasiado bajo, los paquetes se
2.3 Direccionamiento
2.3.1
Direccionamiento bsico
Subredes
La limitacin de todos los hosts de una red a contener el mismo nmero de red puede
causar problemas a medida que la red crece. Por ejemplo, una empresa que comienza
con una LAN de clase C en Internet, con el tiempo, puede terminar con varias LAN, cada
una de ellas con su propio enrutador y nmero de red de clase C. Esto puede suponer un
problema, ya que cada vez que se instala una nueva red, el administrador del sistema
debe ponerse en contacto con InterNIC para obtener un nuevo nmero de red que,
posteriormente, debe anunciarse. Adems, mover una mquina de una LAN a otra
requiere modificar su direccin IP y esto, a su vez, implica la modificacin de los archivos
de configuracin y un cambio de entorno, mientras que la otra mquina, al adoptar una
direccin IP de reciente creacin, puede recibir datos que en realidad iban dirigidos a la
mquina anterior.
Con el fin de solucionar estos problemas, se introdujo el concepto de subred como
ampliacin al sistema original creado a mediados de la dcada de 1980. Este concepto
hace referencia a la subdivisin de una red basada en clases en varias subredes (esta
definicin se actualizar en las siguientes secciones para reflejar la introduccin del
enrutamiento sin clases). Como resultado, la empresa mencionada anteriormente podra
comenzar con una direccin de clase B y no con una de clase C y, a medida que las
necesidades de la mquina aumentasen, podra optar por dividir su nmero de host de 16
bits en un nmero de subred de 8 bits y otro nmero de host de 8 bits, consiguiendo 256
LAN, cada una de ellas con 256 hosts. Este cambio no sera apreciable de forma externa,
por lo que la adjudicacin de una nueva subred no requiere ponerse en contacto con
InterNIC ni modificar las bases de datos externas.
Una ventaja importante de las subredes reside en la reduccin drstica del tamao de las
tablas de enrutamiento. Esto se basa en el hecho de que cada enrutador slo debe
realizar el seguimiento del resto de subredes y hosts locales dentro de su propia subred.
Cuando llega un paquete, todo lo que debe hacer el enrutador es ejecutar un operador
AND booleano de la direccin en la cabecera del paquete IP y en la mscara de subred
del enrutador. sta ltima es un nmero de 32 bits que determina cmo se divide una
direccin IP en porciones de red y de host. Por ejemplo, en una red estndar de clase B,
la mscara de subred es 255.255.0.0, ya que los dos primeros bytes son todo unos (bytes
de red) y los ltimos dos bytes son todo ceros (bytes de host). En una red de subred
similar a la propuesta anteriormente, la porcin de red se ampla. Ms concretamente, una
mscara de subred de 255.255.255.0 dividira el espacio de la direccin de clase B
utilizando su tercer byte, y sera necesaria para generar 256 LAN, cada una de ellas con
256 hosts. Al ejecutar un AND de la direccin IP del paquete y de la mscara de subred,
el enrutador puede deshacerse de la parte host del nmero y buscar el resultado en su
tabla para decidir sobre un posterior redireccionamiento si fuera necesario. Como las
mscaras de subred se utilizan bit a bit, mscaras como 255.255.240.0 (4 bits de subred y
12 bits de host) son perfectamente normales.
Un aspecto importante que no hay que olvidar es que no es posible dividir una red de
subredes en partes aisladas. Como resultado, todas las subredes son contiguas, ya que la
informacin de enrutamiento no puede transmitirse a entidades que no sean miembro.
Dentro de una red, todas las subredes deben poder comunicarse con el resto de subredes
sin generar trfico que fluya por otras redes.
2.3.3
clase B con 65.536 direcciones tiene el tamao justo. Inspirada en el cuento de Ricitos de
oro y los tres osos, esta situacin se conoce como el problema de los tres osos en la
jerga de Internet.
Como resultado, se utiliza un nmero cada vez mayor de redes de clase C, por lo que se
ha producido un aumento vertiginoso en el tamao de las tablas de enrutamiento, hecho
ste que complica an ms los casos en el modelo de clases.
Finalmente, junto con los dos problemas planteados arriba, la creciente demanda de
direcciones IP tambin ha generado una necesidad de convertir el proceso de asignacin
de direccionamiento IP a partir de un registro central. Para tratar todos estos problemas,
se introdujo el concepto de enrutamiento de interdominio sin clases.
2.3.4
observar cada uno de estos rangos de direcciones IP que tienen en comn con otro ISP
ms all de su propio espacio de direcciones. stas son a menudo ms especficas que
las direcciones para el bloque CIDR del ISP que las asign originalmente y, por lo tanto, el
trfico se encamina fundamentalmente a travs de los ISP que no emitieron la IP.
Una solucin para estos clientes multihome es adquirir IP de cada uno de los ISP a los
que estn conectados, pero esto provoca la prdida de rutas en la organizacin
multihome. Si uno de los ISP tiene problemas, el trfico del host multihome de la IP
obtenida desde ese ISP se perder, ya que no se publica en ningn otro lugar. Este hecho
anula, en gran parte, el propsito del multihoming. Un enfoque alternativo requiere tomar
una direccin totalmente distinta del espacio de direccin de todos los ISP a los que el
cliente est conectado. Sin embargo, en este caso la desventaja es que todos los
enrutadores de Internet deben tener una ruta especfica a estas direcciones de nueva
creacin, con lo que se generaran tablas de enrutamiento muy grandes.
2.3.5
Creo que hay un mercado mundial para, tal vez, cinco ordenadores - Thomas Watson, 1943
640 K debera ser suficiente para cualquiera - Bill Gates, 1981
32 bits debera ser espacio suficiente para las direcciones - Vinton Cerf, 1977
Con el gran crecimiento inesperado y sin precedentes de Internet, se ha hecho cada vez
ms obvio que los das del IPv4 (la implementacin actual del protocolo IP analizada en
secciones anteriores) estn contados. Los problemas de disminucin de espacio de
direcciones y el control de un registro central siguen estando ah y la llegada del CIDR
slo ha servido como parche temporal. Actualmente, los registros no pueden dar
respuesta a solicitudes de grandes bloques IP y se espera que para el ao 2008 las
direcciones IPv4 se hayan terminado. Este hecho proviene del aumento de las
comunicaciones mviles de tercera generacin, la demanda impuesta por los pases
emergentes que no estuvieron presentes en la fiebre del oro del IPv4 y la llegada de las
redes locales. Adems, est el aumento drstico del tamao de las tablas de rutas (que
ascienden a aproximadamente 60.000 entradas en la actualidad) debido a una falta
inherente de cualquier red o consideracin de enrutamiento. Dejando a un lado los
problemas de la memoria esttica, esto provoca una degradacin del rendimiento, ya que
los algoritmos actuales no escalan de forma lineal. El IPv4 tambin echa en falta la
ausencia de un mecanismo incorporado que cumpla los requisitos del servicio que deben
cumplirse en la red mientras se transporta un flujo. Esto tambin puede denominarse
como ausencia de calidad de servicio o CdS y se suele entender como la limitacin
para ir ms all del servicio de datagrama de mejor esfuerzo disponible en la actualidad,
que se centra solamente en una mtrica arbitraria nica: el peso administrativo o el
recuento de saltos. Por ltimo, el IPv4 tambin parece adolecer de la ausencia de un
mecanismo intrnseco de seguridad, que desemboca en caras modificaciones de
aplicaciones y hosts para poder protegerlos frente a diversos ataques. Si no se tiene este
mecanismo, es posible que tengan lugar prdidas de privacidad, prdidas de integridad de
datos, intercambios de identidades o negaciones del servicio.
Quiz el problema ms imperioso al que se enfrenta la Internet IP es la disminucin de
direcciones. Las soluciones concebidas a corto y largo plazo estn an en fase de
desarrollo. La solucin a corto plazo es el CIDR (enrutamiento de interdominio sin clases).
Las soluciones a largo plazo consisten en varias propuestas de nuevos protocolos de
Internet con direcciones ms largas. Es posible, no obstante, que el CIDR no sea
suficiente para mantener Internet hasta que las soluciones a largo plazo puedan
implementarse. En consecuencia, se ha planteado otra solucin: alguna forma de
La solucin IPv6/Ipng
Para afrontar las limitaciones del IPv4, se ha propuesto un nuevo protocolo denominado
IPv6 o IPng (IP de nueva generacin). En la actualidad existe una infraestructura de IPv6
en Internet, pero an no se han implementado los DNS.
El IPv6 cuenta con varias caractersticas. Para empezar, proporciona un espacio de
direcciones aumentado de 128 bits que permite IP globales nicas para todos los
dispositivos. Adems, tambin ofrece un enrutamiento ms eficaz gracias a una
estructura jerrquica que consigue la asignacin de direcciones aadidas desde el
principio. Sin embargo, los clientes multihome representan un fracaso en esta jerarqua y
actualmente es bastante comn que las empresas recurran al multihome. El IPv6 tambin
reserva campos de estas cabeceras de paquetes para encargarse de la seguridad y de la
CdS. Con el fin de enfrentarse al problema de la CdS, la cabecera del IPv6 tiene dos
campos; una etiqueta de flujo de 20 bits y un indicador de clase de trfico de 8 bits.
Por ltimo, los problemas de seguridad se abordan con la introduccin del IPSec, que
utiliza un nuevo conjunto de cabeceras aadidas para asegurar el payload del paquete IP.
stas incluyen la autenticacin de cabecera (AH) y el payload de seguridad encapsulado
(ESP).
2.3.7
La idea ms importante en la que se basa la transicin del IPv4 al IPv6 es que Internet es
demasiado grande y est demasiado descentralizada para tener un da D (un da
concreto en el que cada host y enrutador se actualicen desde el IPv4 al IPv6). Por lo
tanto, el IPv6 necesita desarrollarse progresivamente de tal forma que los hosts y los
enrutadores que slo funcionan con el IPv4 puedan seguir operando tanto tiempo como
sea posible. No se espera la conclusin de este proceso hasta el ao 2010. Adems, la
aparicin de los NAT ha retrasado la adopcin generalizada del IPv6. Aunque son muchos
los que detestan los NAT, su uso proporciona la funcionalidad principal del IPv6: un mayor
nmero de direcciones de host. Los NAT han reducido hasta ahora de forma eficaz la
presin para implementar una solucin ms elegante a largo plazo al problema de la
8
2.4 Enrutamiento
Internet est formada por millones de ordenadores y cualquier de ellos puede, en teora,
comunicarse con el otro. Sin embargo, no todos los equipos estn vinculados fsicamente
entre s y la informacin se transmite desde un punto a otro utilizando un paradigma de
almacenamiento y reenvo. Los paquetes de datos se transmiten entre equipos enlazados
fsicamente y se encaminan a travs de la red hacia sus destinos. Distintos protocolos de
enrutamiento son los que definen las reglas para el reenvo de los paquetes. En esta
seccin abordaremos el estudio de estos protocolos.
2.4.1
Modelo topolgico
Para una red determinada que pueda representarse como un grfico no directo conectado
(en el que los extremos representan las conexiones directas entre las entidades de red)
existen dos clases generales de protocolos que pueden utilizarse para encaminar
paquetes entre nodos.
2.4.2.1 Protocolos distancia-vector
Este tipo de protocolo de enrutamiento requiere que cada enrutador simplemente informe
a sus vecinos sobre su tabla de enrutamiento. Los enrutadores envan actualizaciones
peridicas de enrutamiento que incluyen un vector de las distancias al resto de nodos. En
cada ruta de red, los enrutadores receptores seleccionan al vecino que se anuncia al
menor coste y agregan su entrada a la tabla de enrutamiento. Como resultado, cada nodo
tiene el rbol de ruta ms corto (determinado por la normativa) que ofrece las rutas al
resto de los nodos disponibles.
Los algoritmos de protocolo DV slo utilizan la informacin de los nodos cercanos. Estos
protocolos suelen ser descentralizados e iterativos y estn basados en algoritmos como el
de Bellman-Ford para las rutas ms cortas. Los protocolos DV tambin suelen ser
relativamente escalables. El protocolo DV bsico recibe el nombre de protocolo de
informacin de enrutamiento (RIP). El protocolo de pasarela fronterizo (BGP) utiliza
esencialmente un algoritmo DV, pero con varios cambios aadidos. Trataremos este
asunto ms adelante en profundidad.
El enrutamiento basado en los protocolos DV puede causar muchos problemas si los
enlaces no son estables o si los nodos anuncian informacin incorrecta. Podra
desembocar en bucles infinitos y desincronizar la red. La convergencia en los protocolos
DV suele ser baja. De hecho, la topologa de una red puede tardar minutos e incluso
horas en sincronizarse, independientemente de los recursos computacionales que haya
disponibles en cada nodo.
2.4.2.2 Protocolos Link-State (LS)
Los protocolos Link-State requieren que cada enrutador mantenga al menos una
asignacin parcial de la red. Cuando una red cambia de estado (de activa a inactiva o
viceversa), se enva una notificacin llamada aviso de estado de enlace (link state) a
toda la red. Todos los enrutadores advierten el cambio y vuelven a calcular sus rutas en
concordancia. El protocolo OSPF (abrir ruta ms corta primero) es un ejemplo de
protocolo LS.
Como cada nodo da una buena idea del grfico de red y las actualizaciones slo
requieren la adicin o eliminacin de nodos y extremos, los protocolos LS convergen ms
rpidamente hacia un estado estable que los protocolos DV. Tambin son ms fiables,
fciles de depurar y con menor intensidad de ancho de banda que los protocolos DV.
Por otro lado, los protocolos LS suelen ser ms complejos que los protocolos DV.
Tambin tienden a ser ms intensivos en trminos de memoria y de clculo local. Los
protocolos LS no escalan tan bien como los DV, por lo que los protocolos como el OSPF
suelen utilizarse normalmente para encaminar paquetes de forma interna dentro de un
AS. Los IGP suelen estar relacionados con la optimizacin de una mtrica de ruta
concreta y su escalabilidad no supone un problema importante.
MIT 18.996
Primavera de 2002
2-21
MIT 18.996
Primavera de 2002
2.4.3.2.2 El protocolo
Dos sistemas (normalmente dos enrutadores fronterizos en distintos AS) forman una
conexin TCP fiable entre uno y otro e intercambian mensajes para abrir y confirmar los
parmetros de conexin. El flujo inicial de datos es la tabla de enrutamiento BGP al
completo. Ms tarde, se envan actualizaciones incrementales a medida que las tablas de
enrutamiento cambian. Hay dos tipos de actualizaciones. El primero son los anuncios, que
son cambios en las rutas existentes o en rutas nuevas. El otro son las retiradas, que
informan que el peer que nombr las rutas ya no est disponible.
Los anuncios del BGP contienen un conjunto de prefijos formados, a su vez, por un
conjunto de atributos asociados a l. El atributo de ruta AS es un vector que enumera
todos los AS (en orden inverso) por los que este anuncio de ruta del prefijo ha pasado.
Tras cruzar una frontera AS, el primer enrutador toma el nico identificador de su propio
AS a este vector antes de seguir propagando el anuncio. Los enrutadores evitan los
bucles mediante la eliminacin de mensajes si sus AS ya estn presentes en este vector.
Un enrutador utiliza normativas de importacin para transformar las actualizaciones de
ruta entrantes. Estas normativas de importacin incluyen la negacin de una actualizacin
o la aceptacin de la actualizacin y la asignacin de una preferencia local para indicar el
grado de aptitud de la ruta. De forma similar, las normativas de exportacin permiten que
un enrutador determine si debe enviar la mejor ruta a un vecino y, de ser as, qu
sugerencia debe enviarle para utilizarla.
Los enrutadores BGP utilizan los campos de los anuncios de las rutas para determinar
qu rutas deben utilizar en la tabla de enrutamiento. Generalmente, las rutas adquiridas
de forma externa (mediante eBGP) son preferibles a las adquiridas internamente
(mediante iBGP). Las preferencias locales que representan cualquier normativa local
arbitraria obtienen la mxima prioridad en la seleccin. La longitud de la ruta-vector del
AS es el segundo criterio ms importante. Puede que no sea la distancia ms corta, ya
que slo debe contar el nmero de AS que se necesitan encaminar. Los enrutadores
tambin pueden utilizar la ruta del AS mediante la repeticin de los identificadores del AS
para localizar las rutas menos aptas a otros AS. Por ltimo, sealar que las coincidencias
se evitan de forma arbitraria. Debido a estos factores y a algunas decisiones de
implementacin de enrutadores especficas de los proveedores, resulta prcticamente
imposible determina las mejores rutas slo a partir de las relaciones de conectividad.
BGP utiliza TCP, lo que proporciona un envo ordenado y fiable y no necesita una
actualizacin peridica de toda la tabla de enrutamiento. Un portavoz BGP debe, por lo
tanto, retener la versin actual de todas las tablas de enrutamiento BGP y de todos sus
peers en la duracin de la conexin. Los mensajes KeepAlive se envan de forma
peridica en las dos direcciones para garantizar que la sesin BGP sigue ejecutndose.
Si no existen dichos mensajes, la sesin BGP se cierra y todas las rutas adquiridas en
dicha sesin se eliminan de las tablas de enrutamiento de sus respectivos peers.
Los mensajes de notificacin se envan como respuesta a errores o condiciones
especiales. Si una conexin presenta una condicin de error, se enviar un mensaje de
notificacin y se cerrar la conexin. Sin embargo, el BGP no se dise para gozar de
una rpida deteccin y recuperacin de fallos, por lo que estos mecanismo no suelen ser
especialmente tiles en escalas de tiempo pequeas.
2-22
MIT 18.996
Primavera de 2002
2-23
MIT 18.996
Primavera de 2002
Es importante sealar que un iBGP no es un IGP como RIP o OSPF. De hecho, los mensajes
enviados durante una sesin iBGP se encaminan dentro del AS con cualquier IGP que est
operativo. Las sesiones iBGP slo proporcionan un medio por el cual los enrutadores dentro de
un AS pueden utilizar el mismo protocolo (BGP) para intercambiar informacin completa.
2.4.3.2.5 La cuestin de la convergencia
Informalmente, un sistema BGP puede representarse por un estado S = <G, Normativa(G), S0>,
incluyendo un grfico AS G = (V, E), y conteniendo normativas de importacin para cada vj en V
y con un estado inicial S0 = (c0,1, c0,2,c0,n) donde c0,j es el destino originado por vj en el
estado S0. Si vj se activa, obtiene anuncios de ruta de sus vecinos intermediarios y selecciona
las mejores rutas. Se dice que el estado S es final si en la activacin de cualquier vj, el sistema
permanece en el estado S. Una secuencia de activacin del sistema simplemente es una
secuencia que proporciona los vrtices vj y el orden en que se activan.
Se dice que un sistema BGP es convergente si concluye en un estado final independiente de la
secuencia de activacin. Se dice que el sistema es soluble si cuenta con un estado final. Al
contrario de lo que ocurre con protocolos distancia-vector puros, como el RIP, el BGP no
garantiza la convergencia.
Las normativas BGP se implementan de forma local en la actualidad con mucho o poco
conocimiento global. Aunque la mayora de los conflictos de las normativas de enrutamiento son
gestionables, siempre existe la posibilidad de que puedan provocar divergencias en el protocolo.
Las normativas de enrutamiento de cada AS por separado pueden ser razonables localmente,
pero no hay garanta alguna de que la interaccin de normativas definidas independientemente
puedan ser razonables globalmente. En teora, un conjunto de normativas bien configuradas
localmente puede seguir provocando anomalas de enrutamiento globales. Es posible, por lo
tanto, que un conjunto de AS intercambie mensajes en todo momento sin converger hacia un
conjunto de rutas estable.
Esta divergencia del BGP podra contribuir a una gran cantidad de inestabilidad en el sistema de
enrutamiento global. La fluctuacin de la topologa de red puede tener un efecto directo en el
rendimiento final. Una red que no haya logrado convergencia puede descartar paquetes o
enviarlos inutilizados. En casos extremos, la ausencia de convergencia puede tener como
resultado la creacin de agujeros negros en paquetes (con rutas de anuncios de AS que, en
esencia, no tiene y con la eliminacin de paquetes que se envan por dichas rutas). En
consecuencia, con el fin de que una red basada en BGP pueda funcionar eficientemente, debe
ser convergente. Por desgracia, son muchos los sistemas BGP que no gozan de convergencia.
2.4.3.2.6 El sistema Bad Gadget
En esta seccin se incluye un ejemplo de un sistema BGP no soluble denominado Bad
Gadget (mal aparato). Ninguna ejecucin del protocolo BGP puede llegar a un enrutamiento
estable en este sistema. La red Bad Gadget se presenta en la figura 2.6, donde cada nodo
representa un AS y los extremos representan las conexiones entre los AS.
Supongamos que existe un destino nico con d originado en AS 0. La normativa se implementa
de tal forma que cada AS opta por la ruta en el sentido de las agujas del reloj de longitud 2 sobre
el resto de las rutas hacia 0. Es decir, AS 3 opta por la ruta 3 - 2 - 0 y no por la 3 - 0.
Puede demostrarse as que este sistema es divergente. Esta prueba se documenta en un estudio
de Griffen y Wilfong10. En este tema se presenta una visin general.
2-24
MIT 18.996
Primavera de 2002
Este ejemplo se estudia detalladamente en los siguientes documentos: [1] Timothy Griffn and Gordon
T. Wilfong, An Analysis of BGP Convergence Properties SIGCOMM [2] K. Varadhan, R. Govindan & D.
Estrin, Persistent Route Oscillations in Inter-Domain Routing ISI TR 96-631
2-25
MIT 18.996
Primavera de 2002
2-26
MIT 18.996
Primavera de 2002
En la figura 2.8, los AS que cambiarn su seleccin de mejores rutas hacia d estn marcados
con un crculo con relleno. Cada AS marcado puede seleccionar una ruta en el sentido contrario a
las agujas del reloj de longitud 2 o invertir la ruta directa a d. Es fcil ver que el sistema no tiene
solucin.
Este sistema divergente podra parecer un ejemplo artificioso y hacernos pensar que en la prctica
esta divergencia podra cuestionarse en un BGP. En la siguiente seccin se incluyen algunos
aspectos de la inestabilidad del BGP en Internet.
2.4.3.2.7 Observaciones sobre la inestabilidad
Diverge el BGP en la prctica? Existen varias historias horribles sobre redes que de forma
accidental se establecieron de forma autnoma como sumideros de trfico y hay algunas pruebas
sobre oscilaciones crnicas.
Tambin se han observado algunos casos de convergencia desfasada hasta 50 minutos. Aun as, BGP
por lo general ha demostrado ser convergente en Internet.
Es posible que los enrutadores de Internet experimenten cargas de CPU importantes y problemas
de memoria a altos niveles de inestabilidad de enrutamiento. En 1997 por ejemplo, muchos de los
enrutadores de Internet desarrollados comnmente estaban basados en el procesador de la serie
relativamente ligera 68000 de Motorola. La alta inestabilidad sola causar problemas en el consumo
de memoria y en el retraso del procesamiento de las colas de paquetes. A menudo, los retrasos en el
procesamiento eran tan acusados que los enrutadores desfasaban el enrutamiento en paquetes
KeepAlive que, en consecuencia, se marcaban como inactivos o no localizables por otros
enrutadores.
La experiencia con NSFNet y los ejes de rea extensa han demostrado que un enrutador que no
consigue funcionar con gran inestabilidad de enrutamiento puede provocar una tormenta de
agitacin de rutas. En este modo de oscilacin patolgica, los enrutadores sobrecargados son
marcados como no localizables por los peers BGP a medida que van fallando para mantener el
intervalo requerido de transmisiones KeepAlive. Como los enrutadores se marcan como no
localizables, los enrutadores peer seleccionan rutas alternativas para los destinos previamente
localizables a travs del enrutador inactivo y transmite actualizaciones que reflejan el cambio de la
topologa en cada uno de sus peers. Por su parte, tras la recuperacin de problemas transitorios de
CPU, el enrutador fallido intentar reiniciar una sesin BGP de peering con cada uno de los otros
enrutadores y generar un estado de transmisiones dump. Esta carga aumentada provocar que
an ms enrutadores fallen e iniciar una tormenta que comenzar a afectar a secciones ms
grandes de Internet. Varias de las tormentas de agitacin de rutas ocurridas hasta ahora han
causado la inactividad de millones de clientes de red. La ltima generacin de enrutadores de
varios proveedores proporciona un mecanismo por el cual el trfico BGP obtiene mayor prioridad y
los mensajes KeepAlive resisten incluso en condiciones de alta inestabilidad.
La mayor parte de la inestabilidad de los enrutadores de Internet es resultado de los fallos de
software y de decisiones de implementacin concretas de ciertos proveedores. Sin embargo, tras el
desarrollo de enrutadores actualizados por los ISP, esta inestabilidad ha decrecido en gran medida.
La heurstica como la disminucin de los anuncios de rutas tambin ha mejorado las propiedades del
BGP. As que, aunque en teora es posible que BGP diverja, se ha demostrado empricamente que
en ltima instancia resulta convergente.
No obstante, son muchos los casos de convergencia desfasada. En un estudio11, Labovitz et al
introdujeron fallos BGP (anuncios/extracciones) de prefijos variados y longitudes de ruta de AS en
sesiones de peering IP en varios puntos geogrficos. Observaron desfases que ascendan hasta a
50 en su estudio. De hecho, los tiempos de convergencia de enrutamiento tras los fallos se
encontraban en el orden de decenas de minutos.
11
MIT 18.996
Primavera de
2002
Esta latencia puede entenderse estudiando la forma en que BGP explora las rutas. Adems de las
distintas anomalas especficas de cada proveedor, la razn fundamental para la convergencia pasa
por que los protocolos de ruta-vector consideran varias rutas de una longitud determinada en
contraposicin a los protocolos de distancia-vector, que slo consideran una ruta de una longitud
determinada. En Labovitz et al construyen un ejemplo en el que tienen en cuenta cada ruta libre de
bucle de la malla al completo (hay un nmero exponencial de dichas rutas). Se ha demostrado que
existe un posible orden de mensajes de tal forma que BGP explore todas las rutas posibles de AS,
con todas las longitudes posibles. BGP es, por lo tanto, O(N!), donde N es el nmero de portavoces
BGP no predeterminados en un grfico completo con normativa predeterminada. Adems, no existe
ningn conocimiento global en los protocolos de ruta-vector, por lo que las heursticas de
optimizacin no son muchas. As, no resulta sorprendente que la convergencia tarde bastante
tiempo en conseguirse.
2.4.3.2.8 Accesibilidad en un AS
Dada una red de sistemas autnomos vinculada por un BGP y un destino accesible desde un
vrtice (x), en ocasiones es til saber si el destino es accesible desde cualquier otro vrtice (y). La
accesibilidad es una propiedad que se presenta si existe un estado final del sistema en el que hay
una ruta desde y hacia el destino. La determinacin de la existencia de la accesibilidad en un
sistema BGP es NP-completa. Esto puede demostrarse mediante la reduccin de 3-SAT y la prueba
se presenta en el documento de Griffen y Wilfong.
La base de datos de arbitraje de enrutamiento (RADB) pretende ofrecer informacin de
accesibilidad entre AS a los usuarios de Internet. El registro de enrutamiento de Internet (IRR,
del que RADB
forma parte) mantiene la informacin de enrutamiento de los ISP por separado en varios
depsitos pblicos como intento de coordinacin de una normativa de enrutamiento global. La
base de datos de la normativa de enrutamiento del IRR incluye informacin de enrutamiento a
varios niveles (por ejemplo, prefijos de direcciones distintas, AS, etc.) Las rutas se registran con
la RADB de forma voluntaria. Registrar una ruta en la RADB implica que el registrador es capaz
de proporcionar accesibilidad en el destino, es decir, es posible acceder al destino a travs de la
infraestructura de red del registrador.
Hasta no hace mucho, se ha advertido un especial inters por el estudio y el diseo de la topologa
de Internet, especialmente en el nivel de los sistemas autnomos (AS). En la actualidad, estas
actividades se consideran ms como medidas de anlisis y diseo (en su mayora a partir de
bases de datos como la RADB) para deducir el grfico de conectividad de los AS de Internet y
describir sus propiedades, explicando los orgenes y las causas de algunas de las funciones
observadas ms sorprendentes y diseando simuladores que generan estructuras de grficos que
coincidan con los grficos de conectividad AS medidos. Tambin pueden utilizarse para obtener un
contexto realista para el aislamiento de fallos. En un documento reciente de Chang et al12, se
observaba que estas bases de datos nos muestran que un nmero significativo de conexiones AS
existentes permanecen ocultas en la mayora de las tablas de enrutamiento BGP.
El conocimiento sobre la conectividad de Internet puede proporcionarnos un marco de trabajo
mejor para entender el comportamiento del BGP en la realidad. Por desgracia, mucha de la
informacin proporcionada a la RADB puede ser filtrada de forma selectiva por las empresas. Por
ejemplo, se sabe que un nmero creciente de ISP utilizan el IRR para filtrar los anuncios de rutas
en los enrutadores fronterizos (la mayora de ISP europeos utilizan de forma activa). El
12
MIT 18.996
Primavera de
2002
conocimiento de este comportamiento puede influir en las rutas que se registran en la RADB.
2.4.3.2.9 Otros resultados de complejidad del BGP
Se han estudiado muchas ms propiedades el protocolo BGP, tanto de forma matemtica
como empricamente. A continuacin se incluyen algunos otros resultados de complejidad del
BGP. Algunas de estas propiedades se presentan abajo tal y como se incluyen en el documento
de Wilfong y Griffen.
Para un sistema S BGP, el grfico de evaluacin, Eval(S), se define como el grfico que se
dirigir, en cada estado s accesible hay un vrtice etiquetado por s en Eval(S) y si s y s son estados
accesibles y las transiciones a s y a s con la activacin de algn conjunto de vrtices no vaco A,
entonces habr un extremo dirigido desde s a s etiquetado por A en Eval(S). Un estado s en Eval(S)
es final si para todos los vrtices (v) del conjunto de vrtices del sistema BGP existe un extremo
entre s y s llamado v.
Asimetra
Dado un sistema S BGP, AS v en S, AS w en S, un destino d1 originado por w, un
destino d2 originado por v, existe un estado final s en Eval(S) en el que la ruta desde
v a d1 no sea la inversa de la ruta desde w a d2? La asimetra es NP-completa.
Solubilidad/Insolubilidad
Dado un sistema S, existe un estado final en Eval(S)? O podemos afirmar que no existe
un estado final en Eval(S)? La solubilidad y la insolubilidad son NP-completas.
Observe que un sistema insoluble no puede converger hacia un estado estable, ya que no
existe ninguno. De forma operativa, esto significa que en sistemas insolubles, es probable
que BGP tienda hacia una oscilacin de protocolo que no termine nunca.
Solubilidad/Insolubilidad (SD)
Dado un sistema S con un nico destino d originado por algn AS w, existe un estado final
en Eval(S)? O podemos afirmar que no existe un estado final en Eval(S)? Estos problemas
son NP-hard.
Trampas
Dado un sistema S, contiene Eval(S) una trampa? Formalmente, podemos definir una
trampa como un subgrfico de Eval(S) que (1) no contiene un estado final y (2) no tiene arcos
dirigidos hacia el subgrfico. Este problema es NP-hard.
Solidez K
Dado un sistema soluble S que slo tiene un nico destino d originado por algn AS w, permanecer S
soluble ante un posible fallo de k vnculos? Este problema es NP-hard.
Unicidad
Dado un sistema S, existe exactamente un estado final en Eval(S)? Este problema es NP-hard.
2-29
MIT 18.996
Primavera de 2002
Multiplicidad
Dado un sistema S, existen varios estados finales posibles en Eval(S)? Este problema
es NP-hard.
Apndice A
El modelo OSI est formado por:
1. Capa fsica: La capa fsica est relacionada con la transmisin de bits sin compresin
en un canal de comunicacin. Los problemas de diseo estn relacionados con
garantizar que cuando un extremo enva 1 bit, se recibe en el otro extremo como 1 bit, y
no como un bit 0.
Las preguntas comunes en este caso son la cantidad de voltios necesarios para
representar un 1 y la cantidad para representar un 0, cuntos microsegundos tarda un
bit, si la transmisin se realiza de forma simultnea en las dos direcciones, cmo se
establece la conexin inicial y cmo se concluye cuando los dos extremos han
terminado y cuntos pins tiene un conector de red y cuntos se utilizan. Los problemas
de diseo tienen que ver, en gran parte, con interfaces mecnicas, elctricas y de
procedimientos y con el medio de transmisin fsica, que se encuentra debajo de la
capa fsica. El diseo de la capa fsica puede considerarse dentro del dominio de la
ingeniera elctrica.
Ejemplo: RDSI, CAT 1, ADSL, ATM, FDDI, cables coaxiales
2-31
2-30
MIT 18.996
Primavera
de 2002
MIT 18.996
Primavera
de 2002
Ejemplo: TCP,UDP
5. Capa de sesin: la capa de sesin permite que usuarios de distintas mquinas
puedan establecer sesiones entre s. Una sesin permite el transporte comn de
datos, tal y como ocurre con la capa de transporte, pero tambin proporciona
servicios mejorados que resultan de gran utilidad en ciertas aplicaciones. Una sesin
puede utilizarse para permitir que el usuario inicie sesin en un sistema remoto de
comparticin de tiempo o que transfiera un archivo entre dos mquinas. Uno de los
servicios de la capa de sesin es la administracin del control de dilogo. Las
sesiones permiten que el trfico fluya en ambas direcciones al mismo tiempo o slo
en una cada vez. Si el trfico slo puede ir en una direccin, la capa de sesin ayuda
a saber de quin es el turno. Un servicio relacionado con la sesin es la gestin de
testigos. En algunos protocolos, resulta esencial que los dos extremos no intenten
realizar la misma operacin al mismo tiempo. Para gestionar estas actividades, la
capa de sesin ofrece testigos que pueden intercambiarse. nicamente el extremo
que tenga el testigo podr realizar la operacin crtica. Otro servicio de sesin es la
sincronizacin. Piense en los problemas que pueden surgir al intentar establecer una
transferencia de archivos de dos horas entre dos mquinas de una red con un tiempo
medio de una hora antes de que falle. Tras la cancelacin de cada transferencia, la
transferencia al completo debe iniciarse otra vez y probablemente fallar de nuevo
cuando la red caiga. Para eliminar este problema, la capa de sesin ofrece un
mtodo de insercin de puntos de comprobacin en el flujo de datos para que, al caer
la red, slo deban repetirse los datos situados despus de este punto de
comprobacin.
Ejemplo: RPC Portmapper
6. Capa de presentacin: la capa de presentacin lleva a cabo funciones que
suelen solicitarse con frecuencia para encontrar una solucin y no dejar que el
usuario tenga que resolver el problema. En concreto, y al contrario de lo que ocurre
con el resto de capas inferiores que slo muestran inters por mover bits de forma
fiable entre varios puntos, la capa de presentacin se encarga de la sintaxis y de la
semntica de la informacin transmitida. Un ejemplo caracterstico del servicio de
presentacin es la codificacin de datos de forma acordada y normalizada. La
mayora de programas de usuarios no intercambian cadenas de bits binarios de
forma aleatoria. Intercambian cosas como nombres de personas, fechas, cantidades
de dinero y facturas. Estos elementos se representan con cadenas de caracteres,
enteros, nmeros de coma flotante y estructuras de datos formadas por elementos
ms simples. Los distintos equipos contienen distintos cdigos para representar las
cadenas de caracteres, los enteros, etc. Con el fin de hacer posible que los equipos
puedan comunicarse entre s con distintas representaciones, las estructuras de
datos que se intercambian pueden definirse de forma abstracta y con una
codificacin estndar que se utilizar en la red. La tarea de gestionar estas
estructuras de datos abstractos y convertirlos en la representacin utilizada por los
equipos en las redes estndar la lleva a cabo la capa de presentacin. Esta capa
tambin se encarga de otros aspectos de la representacin de informacin. Por
ejemplo, la compresin de datos puede utilizarse aqu para reducir el nmero de bits
2-33
MIT 18.996
Primavera
de 2002
2-34
MIT 18.996
Primavera
de 2002
Referencias
[1] Computer Networks, Andrew S. Tanenbaum
[2] Internet Routing Architectures, Bassam Halabi
[3] Computer Networks: A Systems Approach, Bruce S. Davie, et al
[4] OSI Reference Model, http://www.rad.com/networks/1994/osi/intro.htm
Clase 2 13 de febrero, 2002
2-35