Adquisicin y Tratamiento de Datos La capa de red en Internet
TEMA 11: La capa de red en Internet.
11.1 Introduccin. La capa de red en general, y la de Internet en particular, es la encargada de llevar los paquetes desde el origen hasta el destino. Es la primera capa desde el origen al destino, pues las capas anteriores tan solo se encargaban de que los datos llegaran correctamente de un extremo a otro de un enlace de comunicaciones, generalmente un cable. Llegar al destino puede requerir muchos saltos por dispositivos intermedios, generalmente routers. ara lograr su cometido, la capa de red conoce la topolog!a de la red de comunicaciones y escoge las trayectorias adecuadas a trav"s de ella. Tambi"n debe tener cuidado al escoger las rutas para evitar sobrecargar algunas l!neas de comunicacin y routers, mientras de#a a otros sin traba#o. Adem$s, si el origen y el destino est$n en redes di%erentes, es misin de la capa de red el mane#o de estas di%erencias y la resolucin de los problemas que causan. La capa de red debe proporcionar un inter%a& con la capa superior 'la capa de transporte( de %orma que) *. Los servicios deben ser independientes de la tecnolog!a de subred. +. La capa de transporte debe estar aislada de la cantidad, tipo y topolog!a de las subredes presentes. ,. Las direcciones de red disponibles para la capa de transporte deben seguir un plan de numeracin uni%orme, aun a trav"s de varias LA- y .A-. /on solo estos ob#etivos, la capa de red posee una gran libertad para especi%icar los servicios que o%recer$ a la capa de transporte. 11.2 Organizacin interna de la capa de red. La libertad existente en la especi%icacin de la capa de red, genera la posibilidad de que la capa de red proporcione servicio orientado o no orientado a conexin. 0i el servicio es orientado a conexin, la comple#idad de la comunicacin la asume la capa de red, mientras que si es no orientado a conexin, la comple#idad es asumida por la capa de transporte, que es propia de cada ordenador conectado a la red * . La utilidad de la orientacin a conexin se basa en evitar tener que escoger una ruta nueva para cada paquete enviado. /uando se establece una conexin, se escoge y recuerda una ruta de la m$quina de origen a la de destino como parte del establecimiento de la conexin. Esa ruta se usa para todo el tr$%ico que %luye por la conexin 'circuito virtual(. * Las conexiones son conocidas como circuitos virtuales, mientras que los paquetes independientes sin conexin son conocidos como datagramas. /iencias y T"cnicas Estad!sticas * Adquisicin y Tratamiento de Datos La capa de red en Internet /omo los paquetes que %luyen por la conexin siempre siguen la misma ruta a trav"s de la red, cada router debe recordar a dnde env!a los paquetes para cada una de las conexiones que pasan por "l. or ello, cada router mantiene una tabla con una entrada por conexin abierta que pasa a trav"s suyo. Al llegar un paquete al router, est" sabe la l!nea por la que lleg y el n1mero del circuito virtual, con lo cual puede determinar la l!nea de salida correcta. or contra, en una red no orientada a conexin, no se determinan rutas por adelantado, a1n en el caso de que el servicio en la capa de transporte est" orientado a conexin. /ada paquete se env!a de manera independiente de sus antecesores, de %orma que dos paquetes sucesivos pueden seguir rutas distintas. Esto hace las redes de datagramas m$s robustas y m$s adaptadas a posibles %allos, pero aumenta el traba#o que deben reali&ar. En el caso de datagramas, los routers tienen una tabla que indica la l!nea de salida a usar para cada router de destino posible. /ada datagrama debe contener la direccin de destino completa, de %orma que al llegar un paquete a un router, est" busca la l!nea de salida a usar y env!a el paquete. El establecimiento y liberacin de conexiones no requiere ning1n traba#o especial por parte de los routers. 11.3 Algoritmos de encaminamiento. 2na %uncin %undamental de la capa de red en los routers es decidir por que inter%a& se manda el paquete recibido. /on datagramas esto se hace para cada paquete3 con circuitos virtuales se hace slo para cada nuevo circuito en el momento de e%ectuar la llamada. Los algoritmos que se encargan de decidir por donde se manda cada paquete recibido se conocen con el nombre de algoritmos de encaminamiento, pudiendo ser est$ticos o din$micos. En el encaminamiento est$tico, las rutas est$n basadas en in%ormacin de la topolog!a obtenida previamente. 0e %i#a cada posible ruta de antemano, seg1n la capacidad de la l!nea, el tr$%ico esperado u otros criterios. En cada router se cargan sus tablas de rutas de %orma est$tica, por lo que no necesita intercambiar ninguna in%ormacin de encaminamiento con sus vecinos, y por tanto no requiere para su %uncionamiento un protocolo de encaminamiento. /on el encaminamiento est$tico no es posible responder a situaciones cambiantes 'por e#emplo saturacin, exceso de tr$%ico o %allo de una l!nea(, pero al reali&ar los c$lculos a priori, es posible aplicar algoritmos muy so%isticados, aun cuando su c$lculo sea muy costoso. En el encaminamiento din$mico las rutas se %i#an en cada momento, en %uncin de in%ormacin en tiempo real que los routers reciben del estado de la red. 0e utili&an algoritmos autoadaptativos y es preciso utili&ar un protocolo de encaminamiento que permita a los routers intercambiar continuamente in%ormacin sobre el estado de la red. Los algoritmos no pueden ser demasiado comple#os pues han de implementarse en los routers y e#ecutarse cada poco tiempo. 4aciendo un s!mil podr!amos decir que el encaminamiento est$tico consiste en %i#ar la ruta al planear un via#e en coche usando 1nicamente los mapas de carreteras, /iencias y T"cnicas Estad!sticas + Adquisicin y Tratamiento de Datos La capa de red en Internet mientras que el encaminamiento din$mico supondr!a modi%icar nuestra ruta sobre la marcha en %uncin de la in%ormacin que recibimos sobre el estado de las carreteras, etc. Estudiaremos a continuacin algunos algoritmos de enrutamiento, pero antes, conviene enunciar un principio %undamental, que aunque pare&ca obvio, es necesario tener en cuenta. Este principio es conocido como principio de optimacin y se enuncia como) Si B est en la ruta ptima de A a C, entonces el camino ptimo de B a C est incluido en dicha ruta. 2na consecuencia importante de este principio es que todas las rutas ptimas para llegar a un punto determinado %orman un $rbol, con ra!& en el punto de destino, sin bucles 'spanning tree( y donde siempre es posible llegar al destino en un n1mero %inito de saltos. 11.3.1 Encaminamiento por el camino ms corto. ara elegir el camino m$s corto debemos de%inir, en primer lugar, que entendemos por distancia, pues es evidente que en redes de computadoras no tiene mucho sentido emplear la distancia %!sica + . -ormalmente, la distancia se mide como una combinacin de los siguientes %actores) La inversa de la capacidad del enlace 'in%ormacin est$tica(. Tr$%ico medio 'in%ormacin est$tica y5o din$mica(. 6etardo 'in%ormacin din$mica medida a partir de los paquetes enviados(. La inversa de la %iabilidad 'in%ormacin din$mica medida a partir de los paquetes enviados(. El peso relativo que se da a cada uno de los %actores que intervienen en el c$lculo de la distancia de la red se denomina mtrica de la red. La m"trica puede ser %i#ada o modi%icada al con%igurar los routers, aunque los par$metros que entran en #uego y la %rmula que se utili&a para calcularla suelen estar muy relacionados con el algoritmo y el protocolo de encaminamiento utili&ados. /uando un trayecto est$ compuesto por varios tramos, la distancia del trayecto ser$ igual a la suma de las distancias de los tramos que lo componen. Existen diversos algoritmos que permiten calcular el camino m$s corto entre dos nodos de un gra%o. 2no de los m$s conocidos es debido a Di#7stra, el cual se utili&a tanto en encaminamiento est$tico como din$mico. ara explicar el algoritmo de Di#7stra, supongamos una red con los nodos y m"trica indicada en la %igura **.,.*.*. + -i siquiera tiene sentido emplear el n1mero de routers por los que pasan los datos enviados, a no ser un caso muy particular y simple en el que todos los enlaces tienen la misma capacidad. /iencias y T"cnicas Estad!sticas , Adquisicin y Tratamiento de Datos La capa de red en Internet
8 + * + 9 + : , + , * ; 4 < E / = D A Figura 11.3.1.1: !emplo de red con los nodos " la mtrica. Deseamos calcular la distancia del nodo A al nodo D. ara ello, escogemos como nodo de traba#o el nodo A. A partir de este nodo, examinamos todos los nodos adyacentes, etiquet$ndolos con la distancia y el nodo desde el que se vino 'en nuestro e#emplo, ='+,A( y ;'8,A((, marcando a continuacin el nodo A como nodo examinado.
8 + * + 9 + : , + , * ;'8,A( 4 < E / ='+,A( D A
8 + * + 9 + : , + , * ;'8,A( 4 < E'9,=( /'>,=( ='+,A( D A
8 + * + 9 + : , + , * ;'?,E( 4 <'8,E( E'9,=( /'>,=( ='+,A( D A
8 + * + 9 + : , + , * ;'?,E( 4'>,;( <'8,E( E'9,=( /'>,=( ='+,A( D A
8 + * + 9 + : , + , * ;'?,E( 4'@,<( <'8,E( E'9,=( /'>,=( ='+,A( D A
8 + * + 9 + : , + , * ;'?,E( 4'@,<( <'8,E( E'9,=( /'>,=( ='+,A( D'*A,4( A Figur a 11.3.1.#: Aplicacin del algoritmo de $i!%stra a la red de e!emplo. 2na ve& hemos examinado el nodo A, vamos al nodo que posea la etiqueta m$s pequeBa, en este caso el nodo =, y repetimos el proceso hasta haber visitado todos los nodos de la red. De esta %orma obtenemos el camino m$s corto entre A y D, que en nuestro caso es el A=/D. En la %igura **.,.*.+ podemos ver el e#emplo desarrollado de %orma gr$%ica. /iencias y T"cnicas Estad!sticas 9 Adquisicin y Tratamiento de Datos La capa de red en Internet 11.3.2 Encaminamiento por inundacin. Es un algoritmo muy simple consistente en enviar cada paquete por todas las l!neas de salida posibles, excepto por la que se ha recibido. roduce un exceso de tr$%ico en la red, as! como problemas en caso de existencia de bucles en la topolog!a de la red. ara limitar el problema de la existencia de bucles, se suele %i#ar un n1mero m$ximo de saltos, que suele ser igual al n1mero de saltos que hay entre los dos puntos m$s ale#ados de la red , . Existe una variacin de la inundacin, conocida como inundacin selectiva, en la cual el paquete se env!a slo por las l!neas que, aparentemente, se encuentran en la direccin correcta3 por e#emplo, si estamos en Cadrid y el paquete va hacia /rdoba, se enviar$ solamente por las l!neas que van al 0ur. 11.3.3 Encaminamiento basado en el flujo. Este algoritmo toma en cuenta la cantidad de tr$%ico medio que soportan las l!neas y, con esta in%ormacin, intenta optimi&ar el con#unto de las rutas para utili&ar el camino menos congestionado en cada caso. ara aplicarlo se ha de conocer bastante bien el tr$%ico y "ste ha de ser muy regular. 0e pueden aplicar algoritmos relativamente so%isticados, ya que el c$lculo de rutas se hace a priori y se carga en el router despu"s. Este algoritmo solo se aplica en algunos casos de encaminamiento est$tico, aunque puede ser 1til para diseBar la topolog!a de una red, como por e#emplo si se conectan una serie de o%icinas y se dispone de un estudio con el tr$%ico previsto entre cada las di%erentes o%icinas. 11.3.4 Encaminamiento por vector distancia. Este algoritmo se conoce como algoritmo de =ellmanD<ord o <ordD<ul7erson, que %ueron sus autores. En este encaminamiento, cada router mantiene una tabla que le indica la distancia m!nima conocida hacia cada posible destino y la l!nea que debe utili&ar para llegar a "l. La tabla se actuali&a regularmente con la in%ormacin obtenida de los routers vecinos, pues cada router manda la tabla completa de distancias a todos sus vecinos, y solo a ellos. /on la in%ormacin que tiene y la recibida de sus vecinos, cada router puede calcular continuamente su tabla de distancias. La m"trica utili&ada para medir las distancias puede ser el n1mero de saltos, el retardo medio, los paquetes procesados, etc., o una combinacin de estos u otros par$metros. En "ste algoritmo, las noticias buenas se propagan r$pidamente, pero se reacciona lentamente a las malas. Esto se conoce como el problema de la cuenta a in&inito. 0e han ideado multitud de trucos para resolver este problema, pero para cada , El n1mero m$ximo de saltos entre dos nodos de la red se conoce como tamaBo o di$metro de la red. /iencias y T"cnicas Estad!sticas ? Adquisicin y Tratamiento de Datos La capa de red en Internet nueva propuesta se ha encontrado una situacin patolgica en la que %alla, no existiendo una solucin de%initiva a este problema. 11.3.5 Encaminamiento por el estado del enlace. El encaminamiento basado en el estado del enlace apareci como un intento de resolver los problemas que planteaba el encaminamiento por vector distancia, %undamentalmente el de la cuenta a in%inito. 0e trata de un algoritmo m$s so%isticado y robusto, compuesto por cuatro %ases) Descubrir los routers vecinos y averiguar sus direcciones. Cedir el retardo o costo de llegar a cada vecino. /onstruir un paquete que resuma toda esta in%ormacin, y enviarlo a todos los routers de la red. /alcular el camino mas corto a cada router. ara cubrir estas %ases los routers, cuando arrancan, env!an paquetes de presentacin '4ELLE( por todas sus inter%aces3 los paquetes 4ELLE son respondidos con mensa#es de identi%icacin por los routers que los reciben. Adem$s los routers env!an paquetes de prueba 'E/4E( que son respondidos por el router remoto y miden el tiempo de ida y vuelta. /on la in%ormacin obtenida el router construye un paquete de in%ormacin y lo env!a a todos los routers de la red. ara ello utili&a inundacin. Los paquetes se numeran para detectar y descartar duplicados e ignorar paquetes obsoletos, por e#emplo si llega el paquete +8 despu"s de haber recibido el +@ se descarta. Adem$s, cada paquete tiene una vida limitada, al cabo de la cual es descartado. /on toda la in%ormacin obtenida el router construye el $rbol de expansin de las rutas ptimas a cada destino de la red aplicando el algoritmo de Di#7stra, obteniendo de esta %orma la topolog!a de la red. La principal di%erencia entre este encaminamiento y el encaminamiento por vector distancia, es que en el encaminamiento por vector distancia cada router env!a in%ormacin slo a sus vecinos, pero esta in%ormacin incluye a todos los nodos de la red. En cambio en el encaminamiento por el estado del enlace, cada router env!a su paquete de in%ormacin a toda la red, pero "ste solo contiene la relativa a sus vecinos m$s prximos, permitiendo a cada router obtener el estado completo de la red, cosa que no es posible con el encaminamiento por vector distancia. Entre los protocolos de encaminamiento que utili&an algoritmos basados en el estado del enlace destaca Epen 0hortest ath <irst, que es el protocolo est$ndar de encaminamiento en Internet. Etro protocolo de estado del enlace tambi"n utili&ado en Internet y que proviene del mundo E0I es Intermediate 0ystemDIntermediate 0ystem. I0DI0 es multiprotocolo, es decir, soporta m1ltiples protocolos de red por encima. /iencias y T"cnicas Estad!sticas 8 Adquisicin y Tratamiento de Datos La capa de red en Internet 11.3.6 Encaminamiento jerrquico. El encaminamiento #er$rquico es una traslacin a la in%orm$tica del encaminamiento que aplicamos a diario en nuestra vida a la hora de plani%icar un via#e. En un via#e en coche de Falencia a ar!s, por e#emplo, utili&amos un mapa detallado de las &onas cercanas a Falencia y ar!s, pero nos basta uno con las carreteras principales una ve& nos ale#amos del origen o del destino. A medida que una red crece, la cantidad in%ormacin de encaminamiento aumenta de %orma exponencial, ya que cada router ha de calcular las rutas ptimas a todos los dem$s. Esto incrementa el tr$%ico, la memoria en los routers, y la comple#idad de los c$lculos necesarios para obtener las rutas ptimas. /omo consecuencia de esto los algoritmos de encaminamiento no son escalables. ara reducir este problema las redes se organi&an en niveles #er$rquicos3 se divide la red en regiones, y slo un n1mero reducido de routers de cada regin 'los routers GinterregionalesH( puede comunicar con el exterior. Las rutas qui&$ no sean tan ptimas, pero se simpli%ica la gestin y el mantenimiento de las tablas de encaminamiento y se reduce el tr$%ico de gestin de la red. 11.4 Algoritmos de control de congestin. Denominamos congestin a la circunstancia en la que el rendimiento de la red se degrada debido a la presencia de excesivo tr$%ico de paquetes en la red. 2n e#emplo de congestin ser!a la situacin en la que un router, con varias l!neas de + Cb5s, recibe tr$%ico entrante por todas ellas dirigido a una sola. Inicialmente el router intentar$ salvar la situacin utili&ando sus bu%%ers de almacenamiento, pero si "sta situacin dura bastante tiempo, los bu%%ers se llenar$n y el router empe&ar$ a descartar paquetes -ormalmente la congestin se produce por tr$%ico excesivo, pero tambi"n puede producirse por un router sobrecargado o de capacidad de proceso insu%iciente para el tr$%ico que soporta. 11.4.1 Principios enerales del control de conestin. ara e%ectuar una estrategia de control de congestin caben dos planteamientos) DiseBar las cosas desde el principio para que la congestin no pueda llegar a ocurrir. Tomar medidas que permitan detectar la congestin y adoptar medidas correctoras en su caso. La primera t"cnica es m$s segura, pero puede provocar ine%iciencias si se aplican las limitaciones con demasiada severidad. La segunda permite aprovechar me#or la red, pero en caso de congestin puede ser di%!cil controlar la situacin. 2na ve& producida una congestin solo hay dos posibles medidas) /iencias y T"cnicas Estad!sticas : Adquisicin y Tratamiento de Datos La capa de red en Internet 6educir el tr$%ico solicitando al emisor que pare de enviar, o que busque rutas alternativas. Aumentar la capacidad, a corto pla&o esto puede hacerse por e#emplo activando canales 6D0I, a m$s largo pla&o ser$ preciso contratar enlaces de m$s capacidad o nuevos enlaces. 11.4.2 !actores que pueden influir en la conestin. La principal causa de la congestin es el tr$%ico a r$%agas. 0i todos los ordenadores transmitieran siempre un %lu#o constante ser!a muy %$cil evitar las congestiones. Los per&iles de tr&ico 'tra&&ic shaping( establecen unos m$rgenes m$ximos al tr$%ico a r$%agas. 0uelen utili&arse para %i#ar una Gcalidad de servicioH 'Iuality o% 0ervice( entre el operador y el usuario, de %orma que si el usuario respeta lo establecido, el operador se compromete a no descartar paquetes. El per%il de tr$%ico act1a como una especie de contrato entre las partes. 0e denomina vigilancia del tr&ico 'tra&&ic policing( a la labor de monitori&acin o seguimiento del tr$%ico introducido por el usuario en la red para veri%icar que no excede el per%il pactado. 11.4.3 "loritmo del po#al aujereado. 2no de los sistemas mas utili&ados para establecer per%iles de tr$%ico es el conocido como algoritmo del po'al agu!ereado 'lea%" (uc%et(. En este algoritmo, el ordenador puede enviar r$%agas, que son almacenadas en un bu%%er 'po&al( de la inter%a&, la cual env!a a la red un caudal constante. 0i la r$%aga es de tal intensidad o duracin que el bu%%er se llena, los paquetes excedentes son descartados, o bien son enviados a la red con una marca especial que les identi%ica como de Gsegunda claseH, que hace que sean los primeros candidatos a descartar en caso de congestin. ara de%inir un po&al agu#ereado se utili&an dos par$metros, el caudal con que sale el %lu#o a la red, y la capacidad / del bu%%er. 0i suponemos, por e#emplo, que J*A Cbps y /J? Cbits, si un ordenador env!a una r$%aga de ? Cbits en ?A mseg 'equivalente a *AA Cbps(, el po&al casi se llena. La r$%aga tardar$ en enviarse a la red ?AA mseg, momento en el cual el po&al se habr$ vaciado. 0i el ordenador env!a otra r$%aga de ? Cbits antes de que el po&al se haya vaciado por completo, el bu%%er se llenar$ y se perder$n los paquetes excedentes, o bien se enviar$n marcados como descartables. El po&al agu#ereado resuelve el problema de las r$%agas en la red, pero no estimula el ahorro, pues un usuario que est" continuamente transmitiendo con el caudal del agu#ero mantendr$ vac!o su po&al, y a la hora de enviar una r$%aga estar$ en igualdad de condiciones respecto a otro usuario que no haya transmitido nada durante cierto tiempo. ara %omentar el ahorro se desarrollo el algoritmo del po'al con crditos /iencias y T"cnicas Estad!sticas @ Adquisicin y Tratamiento de Datos La capa de red en Internet 'to%en (uc%et(, que compensa al usuario que alterna intervalos de tr$%ico con otros de inactividad, %rente al que esta siempre transmitiendo. El mecanismo que sigue para ello es el siguiente) cuando el ordenador no env!a datos, el po&al va sumando cr"ditos hasta un m$ximo igual a la capacidad del po&al. Los cr"ditos acumulados pueden utili&arse despu"s para enviar r$%agas con un caudal C mayor de lo normal hasta que se agoten los cr"ditos, momento en el cual el caudal vuelve a su valor normal y el algoritmo %unciona como el del po&al agu#ereado. odemos imaginar el po&al con cr"dito como dotado de dos agu#eros, uno pequeBo y uno grande, con un dispositivo mec$nico que permite abrir uno u otro, pero no ambos a la ve&3 el agu#ero grande se abre cuando el usuario tiene cr"ditos3 el usuario acumula cr"ditos cuando el po&al no est$ tirando l!quido por el agu#ero pequeBo, bien porque en el po&al no existe l!quido que tirar, bien porque tenga abierto el agu#ero grande y cerrado el pequeBo. Los par$metros que de%inen un po&al con cr"ditos son la capacidad / del bu%%er, el caudal del agu#ero pequeBo y el caudal del agu#ero grande C 9 . 0upongamos, como e#emplo, que J*A Cbps, /J? Cbits y CJ*AA Cbps y que como en el e#emplo anterior el ordenador env!a una r$%aga de ? Cbits en ?A mseg. Existen ahora tres posibles situaciones en el po&al) El po&al esta lleno de cr"ditos '? Cbits(, por lo cual la r$%aga es enviada a la red a *AA Cbps, la misma velocidad con la que env!a el ordenador. El po&al esta vac!o de cr"ditos, por lo cual la r$%aga se comporta exactamente igual que en el po&al agu#ereado. El po&al esta parcialmente lleno de cr"ditos 'por e#emplo, tiene +,? Cbits de cr"dito iniciales(. Dicha cantidad se incrementa a ra&n de *A Cbps mientras est$ el agu#ero pequeBo cerrado, y mientras est$ el agu#ero grande abierto se decrementa en *AA Cbps, por lo cual en un tiempo t los cr"ditos son) cr"ditos totales J +,? Cbits K *A Cbps Lt cr"ditos consumidos J *AA Cbps Lt Igualando ambas expresiones tenemos +,?K*AtJ*AAt, que despe#ando da un valor de tJ+,?5>AJA,A+:@ seg J +:,@ mseg. or tanto, el po&al se vaciara a *AA Cbps durante +:,@ mseg y despu"s se continuar$ vaciando a ra&n de *A Cbps hasta completar la r$%aga. 11.4.4 Paquetes de asfi$ia. Los paquetes de as%ixia se pueden aplicar tanto en redes de circuitos virtuales como de datagramas. En esta t"cnica el router o conmutador comprueba regularmente cada una de sus l!neas, anali&ando, por e#emplo, el grado de utili&acin, la longitud de la cola o la ocupacin del bu%%er correspondiente. /uando el par$metro inspeccionado supera un determinado valor considerado umbral de peligro se env!a un paquete de as%ixia 'Mcho7e pac7etH( al ordenador considerado MculpableM para que redu&ca el ritmo. 9 El valor del caudal del agu#ero grande suele ser igual a la velocidad m$xima de la inter%a& %!sica. /iencias y T"cnicas Estad!sticas > Adquisicin y Tratamiento de Datos La capa de red en Internet -ormalmente los paquetes de as%ixia se env!an a los ordenadores que generan el tr$%ico, ya que son "stos y no los routers los verdaderos causantes de la congestin. Los ordenadores, cuando reciben estos paquetes, suelen reducir, por e#emplo a la mitad, la velocidad con la que env!an datos a la red. Esto lo pueden hacer de varias maneras, por e#emplo, reduciendo el tamaBo de ventana del protocolo a nivel de transporte o cambiando los par$metros del po&al agu#ereado o del po&al con cr"dito, si utili&an alguno de estos algoritmos para controlar el %lu#o. En una situacin de congestin normalmente muchos ordenadores recibir$n este tipo de paquetes. En ocasiones interesa que los paquetes de as%ixia tengan un e%ecto inmediato en cada uno de los routers que atraviesan en su camino hacia el ordenador que genera el tr$%ico3 esto es especialmente importante cuando se trata de una conexin de alta velocidad y elevado retardo. De esta %orma la congestin se reduce de %orma inmediata, distribuyendo el tr$%ico en ruta entre los bu%%ers de los routers que hay en el camino mientras el mensa#e de alerta llega al ordenador que genera el tr$%ico. or desgracia la obediencia a los paquetes de as%ixia es completamente voluntaria. 0i un ordenador obedece las indicaciones y reduce su ritmo, mientras otro no lo hace, el primero saldr$ per#udicado pues obtendr$ una parte a1n menor de la ya escasa capacidad disponible. -o es posible obligar a los ordenadores a obedecer las indicaciones de los paquetes de as%ixia. En situaciones de saturacin se plantea el problema de como repartir la capacidad disponible de %orma #usta entre los usuarios. Existen varios algoritmos que intentan resolver este problema, por e#emplo) ncolamiento !usto )&air *ueuing+: el router mantiene una cola independiente por cada ordenador y env!a los paquetes en turno rotatorio 'Mround robinM(. En este caso se da el problema de que al ser el reparto equilibrado en paquetes por ordenador y unidad de tiempo, los usuarios o aplicaciones que mane#an paquetes grandes obtienen mas recursos que los que mane#an paquetes pequeBos. 2na versin me#orada de este algoritmo intenta hacer un reparto homog"neo en n1mero de bytes 'o bits( transmitidos por ordenador y por unidad de tiempo. ncolamiento !usto ponderado ),eighted &air *ueuing+: es similar al anterior, pero permite adem$s establecer prioridades, ya que en ocasiones interesa dar mas prioridad a algunas m$quinas 'por e#emplo servidores( o a algunos servicios 'aplicaciones interactivas, por e#emplo(. La prioridad se puede establecer por direcciones, por tipo de aplicacin o por una combinacin de estos u otros %actores. Adem$s de prioridades tambi"n se pueden reservar capacidades para ciertas direcciones o aplicaciones, por e#emplo Mreservar el ,AN de la capacidad para el servidor de <TM o Mreservar el +AN de la capacidad para paquetes provenientes de la direccin I *9:.*?8.*.*M. 11.4.5 %erramamiento de la cara. El 1ltimo recurso para resolver un problema de congestin es descartar paquetes. En ocasiones, los paquetes llevan alguna indicacin de su grado de importancia, en cuyo /iencias y T"cnicas Estad!sticas *A Adquisicin y Tratamiento de Datos La capa de red en Internet caso los routers intentan descartar los menos importantes primero. or e#emplo, ser!a bastante grave si un router para resolver una situacin de congestin descartara paquetes de as%ixia. A veces el nivel de aplicacin puede dar in%ormacin sobre la prioridad de descarte de los paquetes. or e#emplo en aplicaciones iscronas 'audio y v!deo en tiempo real( suele ser pre%erible descartar el paquete vie#o al nuevo ya que el vie#o seguramente es in1til, mientras que en trans%erencia de %icheros ocurre al contrario pues el receptor necesita recibirlos todos y el m$s antiguo causar$ antes retransmisin por timeout. En los %icheros CE; '%ormato de compresin de v!deo en Internet(, debido a la t"cnica de compresin utili&ada algunos %otogramas son completos 'los denominados %otogramas intra( y otros son di%erencias respecto a los anteriores y5o posteriores 'llamados %otogramas predictivos y (idireccionales(3 descartar un paquete perteneciente a un %otograma intra es m$s per#udicial para la calidad de la imagen que descartar uno de un %otograma predictivo o bidireccional, ya que el de%ecto repercute en todos los %otogramas que derivan de "l. En algunos casos el paquete transmitido por la red es parte de una secuencia correspondiente a otro paquete de mayor tamaBo que via#a %ragmentado. En estos casos si se descarta un paquete cualquiera de una secuencia se tendr$ que reenviar todo el grupo, por lo que al descartar uno es conveniente descartar todos los dem$s ya que son tr$%ico in1til. 11.5 La capa de red en Internet. Internet es un compendio de redes di%erentes que comparten un protocolo, o pila de protocolos comunes 'I a nivel de red y sobre todo T/ a nivel de transporte(3 cada una de estas redes es administrada por una entidad di%erente) universidades, redes acad"micas nacionales, proveedores comerciales 'Internet 0ervice roviders(, operadores, multinacionales, etc. /omo consecuencia de esto las pol!ticas de uso son muy variadas. La red Internet tiene como protocolo principal al protocolo I pero dentro de ella encontramos otros auxiliares que se emplear$n para determinadas %unciones que debe reali&ar esta capa. T"cnicamente a nivel de red la Internet puede de%inirse como un con#unto de redes o sistemas autnomos conectados entre s! que utili&an el protocolo de red I. I es una red de datagramas, no orientada a conexin, con calidad de servicio Gbest e%%ortH, es decir, no hay calidad de servicio3 no se garanti&a la entrega de los paquetes ya que en momentos de congestin "stos pueden ser descartados sin previo aviso por los routers que se encuentren en el trayecto. 11.6 El protocolo IP. Toda in%ormacin en una red I ha de via#ar en datagramas I. Esto incluye tanto las TD2s 'Transport rotocol Data 2nits( de T/ y 2D, como cualquier /iencias y T"cnicas Estad!sticas ** Adquisicin y Tratamiento de Datos La capa de red en Internet in%ormacin de routing que se intercambie en la red 'paquetes E/4E, 4ELLE, 62-E, de as%ixia, etc.(. El datagrama tiene dos partes) cabecera y texto3 la cabecera tiene una parte %i#a de +A bytes y una opcional de entre A y 9A bytes 'siempre m1ltiplo de 9(. La estructura de la cabecera es la que se muestra en la %igura **.8.*. ,* *> *8 @ 9 A Fersin I4L Tipo de servicio Longitud total Identi%icacin Despla&amiento del %ragmento Tiempo de vida rotocolo 0uma de comprobacin de la cabecera Direccin de origen Direccin de destino Epciones I 'A o m$s palabras( <lags Datos 'Epcional( Figura 11.-.1: Campos del $atagrama ./. El campo versin permite que coexistan en la misma red sin ambigOedad paquetes de distintas versiones3 la versin actualmente utili&ada de I 'que corresponde a la estructura de datagrama que estamos estudiando( es la 9. Actualmente est$ en %ase de desarrollo e introduccin una nueva versin 'la versin 8( con una estructura de datagrama di%erente. El campo .01 especi%ica la longitud de la cabecera, en palabras de ,+ bits, ya que "sta puede variar debido a la presencia de campos opcionales. 0e especi%ica en palabras de ,+ bits. La longitud m!nima es ? y la m$xima *?, que equivale a 9A bytes de in%ormacin opcional. La longitud de la cabecera siempre ha de ser un n1mero entero de palabras de ,+ bits, por lo que si la longitud de los campos opcionales no es un m1ltiplo exacto de ,+ bits se utili&a un campo de relleno al %inal de la cabecera. El campo tipo de servicio tiene la siguiente estructura) Subcampo Longitud (bits) recedencia 'o prioridad( , TE0 'Type E% 0ervice( 9 6eservado * Figura 11.-.#: structura del campo 23ipo de servicio4. La precedencia permiten especi%icar una prioridad entre A y : para cada datagrama, pudiendo as! marcar los paquetes normales con prioridad A y los importantes 'por e#emplo paquetes de as%ixia( con prioridad :. La prioridad act1a alterando el orden de los paquetes en cola en los routers, pero no modi%ica la ruta de "stos. Dada la actual abundancia de ordenadores personales y estaciones de traba#o gestionadas por el usuario %inal, muchos equipos ignoran este campo y cuando hacen uso de "l es 1nicamente para datagramas transmitidos entre routers, que se supone que est$n libres de esta sospecha. Los cuatro bits siguientes act1an como %lags denominados D, T, 6 y / respectivamente. El primero indica que se desea un servicio de ba#o retardo 'DJDelay(3 el segundo que se quiere elevado rendimiento 'TJThroughput(, el tercero que se quiere una elevada /iencias y T"cnicas Estad!sticas *+ Adquisicin y Tratamiento de Datos La capa de red en Internet %iabilidad '6J6eliability(, y el cuarto que se quiere un ba#o costo '/J/ost(. Las combinaciones v$lidas del subcampo TE0 son las siguientes) Valor TOS Descripcin AAAA Falor por de%ecto AAA* C!nimo costo AA*A C$xima %iabilidad A*AA C$ximo rendimiento *AAA C!nimo retardo **** C$xima seguridad Figura 11.-.3: Com(inaciones vlidas del campo 35S. ara cada aplicacin existe un valor de TE0 recomendado. or e#emplo, para telnet se recomienda *AAA 'm!nimo retardo(, para <T A*AA 'm$ximo rendimiento( y para --T 'nePs( AAA* 'm!nimo costo(. Algunos routers utili&an el subcampo TE0 para encaminar los paquetes por la ruta ptima en %uncin del valor especi%icado 'podr!an tener una ruta di%erente seg1n se desee m!nimo retardo o m!nimo costo, por e#emplo(3 tambi"n pueden utili&ar el valor del campo TE0 para tomar decisiones sobre que paquetes descartar en situaciones de congestin 'por e#emplo descartar antes un paquete con m!nimo costo que uno con m$xima %iabilidad(. Algunos routers simplemente ignoran este subcampo. Protocolo a nivel de enlace MTU(bytes) 'valor por de%ecto( *?AA 'ba#o retardo( +>8 0LI *AA8 'l!mite original( Q.+? *8AA 'var!a seg1n las redes( <rame relay Al menos *8AA normalmente 0CD0 >+,? Ethernet versin + *?AA IEEE @A+.,5@A+.+ *9>+ IEEE @A+.95@A+.+ @*88 To7en 6ing I=C *8 Cbps *:>*9 m$ximo IEEE @A+.?5@A+.+ 9 Cbps 9989 m$ximo <DI 9,?+ 4yperchannel 8??,? ATC >*@A Figura 11.-.6: 7alor de 839 para los protocolos ms comunes a nivel de enlace. El campo longitud total especi%ica la longitud del datagrama completo 'cabecera incluida( en bytes. 0u tamaBo se especi%ica en un campo de dos bytes, por lo que su valor m$ximo es de 8??,? bytes, pero muy pocas redes admiten este valor. -ormalmente el nivel de enlace no %ragmenta, por lo que el nivel de red adapta el tamaBo de cada paquete para que via#e en una trama3 con lo que en la pr$ctica el tamaBo m$ximo de paquete viene determinado por el tamaBo m$ximo de trama caracter!stico de la red utili&ada. Este tamaBo m$ximo de paquete se conoce como CT2 'Caximum Trans%er 2nit(. En la tabla **.8.9 se dan algunos e#emplos de valores de CT2 caracter!sticos de las redes m$s habituales. /iencias y T"cnicas Estad!sticas *, Adquisicin y Tratamiento de Datos La capa de red en Internet Es bastante normal utili&ar *?AA como valor de CT2. /ualquier red debe soportar como m!nimo un CT2 de 8@ bytes. El campo identi&icacin lo usa el emisor para marcar en origen cada datagrama emitido, y permite al receptor reconocer las partes correspondientes en caso de que se haya producido %ragmentacin por el camino 'dado que se pueden tener que atravesar varias redes puede ocurrir que ya estando el datagrama de camino se encuentre una red con un tamaBo menor de CT2, por lo que el router de turno deber$ %ragmentar el datagrama(. Dentro de los &lags el bit m$s signi%icativo est$ reservado. El siguiente bit, el bit D< 'DonRt <ragment(, cuando est$ a * indica a los routers que no %ragmenten el paquete, ya que el receptor no est$ capacitado para reensamblarlo. or e#emplo, si un ordenador arranca su sistema operativo a trav"s de la red solicitar$ que el e#ecutable correspondiente se le env!e desde alg1n servidor a trav"s de la red como un 1nico datagrama 'ya que en ese estado "l aun no est$ capacitado para reensamblar datagramas(. 0i un datagrama con el bit D< puesto no puede pasar por una red el router lo recha&ar$ con un mensa#e de error al emisor. Existe una t"cnica para averiguar el CT2 de una ruta 'denominada Gpath CT2 discoveryH( que consiste en enviar un datagrama grande con el bit D< puesto al destino deseado3 si se recibe un mensa#e de error se env!a otro mas pequeBo, hasta que el emisor averigua a base de tanteos cual es el valor de CT2 de la ruta correspondiente, y a partir de ah! puede utili&arla para todos los datagramas sin riesgo de que sean %ragmentados en el camino 'siempre y cuando la ruta no cambie sobre la marcha(. El otro %lag corresponde al bit C< 'Core <ragments( y puesto a * especi%ica que este datagrama es realmente un %ragmento de un datagrama mayor, y que no es el 1ltimo. 0i est$ a A indica que este es el 1ltimo %ragmento 'o bien que el datagrama original no esta %ragmentado(. El campo despla'amiento del &ragmento '%ragment o%%set( sirve para indicar, en el caso de que el datagrama sea un %ragmento de un datagrama mayor, en que posicin del datagrama mayor empie&a este %ragmento. Los cortes siempre se reali&an en %rontera m1ltiplo de @ bytes 'la unidad elemental de %ragmentacin(, por lo que este campo en realidad cuenta los bytes de @ en @. Al ser su longitud de *, bits el n1mero m$ximo de %ragmentos es de @*>+, que da cabida a la longitud m$xima de un datagrama '@*>+ x @ J 8??,8(. Los %ragmentos pueden llegar desordenados, por lo que el 1ltimo %ragmento puede llegar al receptor sin que haya recibido aun todos los %ragmentos3 la in%ormacin %ragment o%%set #unto con longitud del 1ltimo %ragmento 'identi%icado porque tiene el bit C< a A( le permite al receptor calcular la longitud total del datagrama original 'que ser!a %ragmentSo%%setL@ K longitud(. El campo tiempo de vida 'TTL( permite descartar un datagrama cuando ha pasado un tiempo excesivo via#ando por la red y es presumiblemente in1til. En el diseBo original se pretend!a que el valor de este campo 'que inicialmente pod!a valer por e#emplo 89( disminuyera en cada router en un valor igual al tiempo en segundos que el paquete hab!a empleado en esa parte del trayecto, restando como m!nimo * en cualquier caso. En la pr$ctica medir tiempos en una red es mucho m$s di%!cil de lo que parece 'los relo#es de los routers han de estar muy bien sincroni&ados, cosa que hoy en d!a no /iencias y T"cnicas Estad!sticas *9 Adquisicin y Tratamiento de Datos La capa de red en Internet ocurre(, por lo que todas las implementaciones se limitan sencillamente a restar * al valor de TTL de cada paquete que pasa por ellos, sin anali&ar el tiempo que el paquete ha invertido en el salto. /omo de cualquier %orma hoy en d!a es muy raro que un paquete tarde m$s de un segundo en cada salto esto est$ aproximadamente de acuerdo con el diseBo original. El valor inicial de TTL de un paquete %i#a el n1mero m$ximo de saltos que podr$ dar, y por tanto deber!a ser su%icientemente grande como para que pueda llegar a su destino. El TTL evita que por alg1n problema de rutas se produ&can bucles y un datagrama pueda permanecer G%lotandoH inde%inidamente en la red. El campo protocolo especi%ica a que protocolo del nivel de transporte corresponde el datagrama. La tabla de protocolos v$lidos y sus correspondientes n1meros son controlados por el IA-A 'Internet Assigned -umber Authority( y se especi%ican '#unto con muchas otras tablas de n1meros( en un 6</ muy especial, denominado GAssigned -umbersH, que se actuali&a regularmente3 el vigente actualmente es el 6</ *:AA. Algunos de los posibles valores del campo protocolo son los siguientes) Valor Protocolo Descripcin A 6eservado * I/C Internet /ontrol Cessage rotocol + I;C Internet ;roup Canagement rotocol , ;; ;atePayDtoD;atePay rotocol 9 I I en I 'encapsulado( ? 0T 0tream 8 T/ Transmission /ontrol rotocol @ E; Exterior ;atePay rotocol *: 2D 2ser Datagram rotocol +> I0EDT9 I0E Transport rotocol /lase 9 ,@ ID6D/CT ID6 /ontrol Cessage Transport rotocol @A I0EDI I0E Internet rotocol '/L-( @@ I;6 Internet ;atePay 6outing rotocol '/isco( @> E0< Epen 0hortest ath <irst +?? 6eservado Figura 11.-.:: !emplo de valores " signi&icados del campo protocolo en un datagrama. Ebs"rvese que el valor 9 est$ reservado al uso de I para transportar I, es decir al encapsulado de un datagrama I dentro de otro. El campo suma de compro(acin de la ca(ecera 'chec7sum( sirve para detectar errores producidos en la cabecera del datagrama3 la suma de comprobacin es el complemento a uno en *8 bits de la suma complemento a uno de toda la cabecera 'incluidos los campos opcionales si los hubiera(, tomada en campos de *8 bits3 para el c$lculo el campo suma de comprobacin se pone a s! mismo a ceros. Este campo permite salvaguardar a la red de un router que alterara los campos de cabecera de un datagrama, por e#emplo por un problema hardPare. El campo suma de comprobacin se ha de recalcular en cada salto, ya que al menos el TTL cambia. Esto supone un serio inconveniente desde el punto de vista de rendimiento en routers con mucho tr$%ico. /iencias y T"cnicas Estad!sticas *? Adquisicin y Tratamiento de Datos La capa de red en Internet Los campos direccin de origen y direccin de destino corresponden a direcciones I seg1n el %ormato que veremos con posterioridad. Los campos opcionales de la cabecera no siempre est$n soportados en los routers y se utili&an muy raramente3 de estos podemos destacar los siguientes) 6ecord route) Esta opcin pide a cada router por el que pasa este datagrama que anote en la cabecera su direccin, con lo que se dispone de una tra&a de la ruta seguida para %ines de prueba o diagnstico de problemas 'es como si el router estampara su sello en el datagrama antes de reenviarlo(. Debido a la limitacin en la longitud de la cabecera como m$ximo pueden registrarse > direcciones, lo cual es insu%iciente en algunos casos. 0ource routing) permite al emisor especi%icar la ruta que debe seguir el datagrama hasta llegar a su destino. Existen dos variantes) Gstrict source routingH permite especi%icar la ruta exacta salto a salto, de modo que si alg1n paso de la ruta no es %actible por alg1n motivo se producir$ un error. /on Gloose source routingH no es preciso detallar todos los saltos, puede haber pasos intermedios no especi%icados. Timestamp) esta opcin act1a de manera similar a Grecord routeH, pero adem$s de anotar la direccin I de cada router atravesado se anota en otro campo de ,+ bits el instante en que el datagrama pasa por dicho router. El uso de dos campos de ,+ bits acent1a a1n mas el problema antes mencionado del poco espacio disponible para grabar esta in%ormacin. De estos el m$s utili&ado es Gsource routingH, y a1n "ste se usa poco por el problema del espacio en la cabecera3 generalmente se pre%iere usar en su lugar encapsulado I en I, que es m$s e%iciente. 11. !irecciones IP. /ada inter%a& de red de cada nodo 'ordenador o router( en una red I se identi%ica mediante una direccin 1nica de ,+ bits. 0in embargo, y dado que representar las direcciones en binario es con%uso, las direcciones I se suelen representar por cuatro n1meros decimales separados por puntos, donde cada valor decimal corresponde a la representacin en decimal del valor binario de @ bits '* byte(. As!, por e#emplo, la direccin I dada por 10010011100111001101111001000001 se suele representar como *9:.*?8.+++.8?. 0i un nodo dispone de varias inter%aces %!sicas ? , cada una de ellas deber$ tener necesariamente una direccin I distinta si se desea que sea accesible para este protocolo. Es posible adem$s, y en algunas situaciones resulta 1til, de%inir varias direcciones I asociadas a una misma inter%a& %!sica. Las direcciones I tienen una estructura #er$rquica. 2na parte de la direccin corresponde a la red, y la otra al ordenador dentro de la red. /uando un router recibe un ? De %orma general los routers y cualquier otro dispositivo de encaminamiento poseen m$s de un inter%a& %!sico de red. /iencias y T"cnicas Estad!sticas *8 Adquisicin y Tratamiento de Datos La capa de red en Internet datagrama por una de sus inter%aces compara la parte de red de la direccin con las entradas contenidas en sus tablas 8 y env!a el datagrama por la inter%a& correspondiente. En el diseBo inicial de la Internet se reservaron los ocho primeros bits para la red, de#ando los +9 restantes para el ordenador3 se cre!a que con +?9 redes habr!a su%iciente para una red experimental que era %ruto de un proyecto de investigacin del Departamento de De%ensa americano. 0in embargo, en *>@A se vio que esto resultaba insu%iciente, por lo que se reorgani& el espacio de direcciones reservando una parte para poder de%inir redes m$s pequeBas. /on el %in de proporcionar mayor %lexibilidad y permitir di%erentes tamaBos se opt por dividir el rango de direcciones en tres partes adecuadas para redes grandes, medianas y pequeBas, conocidas como redes de clase A, = y / respectivamente) 2na red de clase A 'que corresponde a las redes originalmente diseBadas( se caracteri&a por tener a A el primer bit de direccin3 el campo red ocupa los : bits siguientes y el campo ordenador los 1ltimos +9 bits. uede haber hasta *+8 redes de clase A con *8 millones de ordenadores cada una. 2na red de clase = tiene el primer bit a * y el segundo a A3 el campo red ocupa los *9 bits siguientes, y el campo ordenador los *8 1ltimos bits. uede haber *8,@+ redes clase = con 8??,9 ordenadores cada una. 2na red clase / tiene los primeros tres bits a **A3 el campo red ocupa los siguientes +* bits, y el campo ordenador los @ 1ltimos. uede haber hasta dos millones de redes clase / con +?9 ordenadores cada una. Existe adem$s direcciones 'no redes( clase D cuyos primeros cuatro bits valen ***A, que se utili&an para de%inir grupos multicast 'el grupo viene de%inido por los +@ bits siguientes(. or 1ltimo, la clase E, que corresponde al valor ****A en los primeros cinco bits, est$ reservada para usos %uturos. De los valores de los primeros bits de cada una de las clases antes mencionadas se puede deducir el rango de direcciones que corresponde a cada una de ellas. As! pues, en la pr$ctica es inmediato saber a que clase pertenece una direccin determinada sin m$s que saber el primer byte de su direccin. La %igura **.:.* resume la in%ormacin esencial sobre los tipos de direcciones de Internet. 8 Estas entradas contienen solo la identi%icacin de la red, y no de un ordenador particular de la red. /iencias y T"cnicas Estad!sticas *: Adquisicin y Tratamiento de Datos La capa de red en Internet +9 *8 ,* @ A /lase D /lase / /lase = /lase A ++9.A.A.A T +,>.+??.+??.A *>+.A.A.A T ++,.+??.+??.A *+@.A.A.A T *>*.+??.A.A A.*.A.A T *+8.A.A.A AU 6ed 4ost ***A 4ost *AU 6ed **AU 6ed Direccin multicast 4ost Figura 11.;.1: Clases de direcciones .nternet " sus principales caracter<sticas. La asignacin de direcciones v$lidas de Internet la reali&an los -I/s '-etPor7 In%ormation /enter(. Al principio hab!a un -I/ para toda la Internet, pero luego se crearon -I/s regionales 'por continentes(3 actualmente muchos pa!ses tienen un -I/ propio3 en EspaBa el -I/ es administrado por 6edI6I0. Existen unas reglas y convenios en cuanto a determinadas direcciones I que es importante conocer) *. La direccin +??.+??.+??.+?? y la que posee el campo ordenador todo a * se utili&a para indicar un datagrama broadcast : . +. La direccin con el campo del ordenador todo a ceros se utili&a para indicar la red misma y, por tanto, no identi%ica a ning1n ordenador. ,. La direccin A.A.A.A identi%ica siempre al ordenador actual. 9. La direccin con el campo de red todo a ceros identi%ica siempre a un ordenador dentro de la propia red. ?. Las redes *+:.A.A.A, *+@.A.A.A, *>*.+??.A.A, *>+.A.A.A y el rango de +9A.A.A.A en adelante est$n reservados y no deben utili&arse. 8. La direccin *+:.A.A.* se utili&a para pruebas de Gloopbac7H3 todas las implementaciones de I devuelven a la direccin de origen los datagramas enviados a esta direccin, sin intentar enviarlos a ninguna parte. :. Las redes *A.A.A.A, *:+.*8.A.A a *:+.,*.A.A, y *>+.*8@.A.A a *>+.*8@.+??.A est$n reservadas para GintranetsH 'redes privadas( por el 6</ *>*@, por lo que estos n1meros no se asignan a ninguna direccin v$lida en Internet y pueden utili&arse para construir redes, por e#emplo detr$s de un corta%uego, sin riesgo de entrar en con%licto de acceso a redes v$lidas de la Internet. : 2n datagrama broadcast es aquel datagrama que debe ser enviado a todos los ordenadores de una red. /iencias y T"cnicas Estad!sticas *@ Adquisicin y Tratamiento de Datos La capa de red en Internet 11." #u$redes % superredes. Existen determinados casos en que es necesario separar una red en subredes o bien, unir varias redes menores en una red de mayor tamaBo. 2n e#emplo del primer caso es cuando se tiene una red muy grande y desea dividirse en redes de menor tamaBo, con el %in de %acilitar la locali&acin de los ordenadores y, con ello, las tablas de encaminamiento de los routers @ 3 mientras que un e#emplo del segundo caso ser!a cuando se necesita una red para ?AA ordenadores pues, en este caso, una red de clase = tiene un n1mero excesivo de Is, mientras que ser!an necesarias dos redes de clase / para cubrir su demanda. ara permitir la separacin o unin de redes surgi el concepto de m$scara. odemos de%inir la m$scara de una red como un con#unto de n1meros binarios que indican que bits de una direccin de red indican la red 'bits con valor *( y que bits de la red indican el ordenador 'bits con valor A(. Adem$s, existe la restriccin de que los bits que indicaban la red deben ser los primeros y deben ser contiguos, de %orma que una m$scara es un grupo de bits con valor * seguido de otro grupo de bits con valor A, teniendo una longitud de ,+ bits. or e#emplo, son m$scaras v$lidas las siguientes) 11111111000000000000000000000000 11111111111111110000000000000000 11111111111111111111111100000000 11111111111111111111111000000000 Cientras que no son m$scaras v$lidas las siguientes) 11111111000000001111111100000000 00000000000000001111111111111111 /omo norma general, y para no escribir las m$scaras en %ormato binario, suelen agruparse de @ en @ bits, convirtiendo ese valor en su representacin decimal, y separando los grupos mediante un punto. As!, las m$scaras v$lidas anteriores se escribir!an como) 255.0.0.0 255.255.0.0 255.255.255.0 255.255.254.0 En la actualidad, y teniendo en cuenta el hecho de que los bits con valor * son contiguos a la i&quierda y el resto, hasta ,+ bits, tienen valor A, se suele emplear una notacin consistente en escribir, en decimal, el n1mero de bits que tienen valor *. As!, las m$scaras anteriores se representar!an como @, *8, +9 y +,, respectivamente. El concepto de m$scara puede aplicarse a cualquier red, aunque esta no sea una subred o una superred, siendo por tanto, +??.A.A.A la m$scara de una red de clase A, +??.+??.A.A la m$scara de una red de clase = y +??.+??.+??.A la de una red de clase /. @ 2n e#emplo de esto lo proporciona la propia red de la 2F, en la cual se ha dividido la red de clase = *9:.*?8.A.A en subredes de mayor o menor tamaBo seg1n su locali&acin geogr$%ica en los distintos camp1s y edi%icios. /iencias y T"cnicas Estad!sticas *> Adquisicin y Tratamiento de Datos La capa de red en Internet Es importante resaltar que la de%inicin de m$scara implica que, en una red, subred o superred, todos los bits que tengan valor * en la m$scara, deben tener el mismo valor en la identi%icacin de la red, de %orma que, por e#emplo, si tenemos la m$scara +??.+??.+??.+?+, que indica una subred de 9 direcciones I, todas esas direcciones I deben tener igual sus primeros ,A bits, pudiendo variar tan solo sus + 1ltimos bits, por lo que, por e#emplo, las direcciones *>+.*8@.*.9, *>+.*8@.*.?, *>+.*8@.*.8 y *>+.*8@.*.: pueden pertenecer a la misma red, mientras que las direcciones *>+.*8@.*.8, *>+.*8@.*.:, *>+.*8@.*.@ y *>+.*8@.*.> no > . 11.&.1 'ubredes. 0upongamos que deseamos utili&ar la red de clase = *:+.*8.A.A *A para asignar a un con#unto de ordenadores, y que dicho con#unto de ordenadores se encuentra disperso en di%erentes edi%icios, tal y como sucede, por e#emplo, en un camp1s universitario. En esta situacin, suele ser muy conveniente dividir la red de clase = en redes de menor tamaBo, pues esto nos permite, por e#emplo, separar el tr$%ico por edi%icios, disminuyendo el %lu#o de in%ormacin por la red y me#orando sus prestaciones. ara ello, supongamos que deseamos dividir la red de clase = en cuatro subredes ** iguales para los edi%icios -orte, 0ur, Este y Eeste. Esta divisin se puede reali&ar mediante la m$scara) 11111111111111111100000000000000 = 255.255.192.0 /on lo que obtenemos cuatro subredes que vendr$n identi%icadas por los valores *:+.*8.A.A, *:+.*8.89.A, *:+.*8.*+@.A y *:+.*8.*>+.A. 0i ahora deseamos dividir alguna de esas subredes, por e#emplo la *:+.*8.89.A por la mitad, para dividir el tr$%ico de red entre dos edi%icios del 0ur, podemos reali&arlo mediante una nueva m$scara que se aplicar$ a esa subred. Esta m$scara ser$) 11111111111111111110000000000000 = 255.255.224.0 De %orma que ahora tendremos un total de cinco subredes identi%icadas por los valores *:+.*8.A.A, *:+.*8.89.A, *:+.*8.>8.A, *:+.*8.*+@.A y *:+.*8.*>+.A. 11.&.2 'uperredes. El concepto de superred es contrario al de subred. Cientras que en una subred dividimos una red en redes de menor tamaBo, en una superred unimos redes en una red de mayor tamaBo mediante el uso de una m$scara. > T"ngase en cuenta la representacin en binario de estos valores decimales. *A En los e#emplos utili&aremos direcciones pertenecientes a intranets y que por tanto no existen en Internet, tal y como indicamos en el apartado **.:. ** Las divisiones solo pueden reali&arse en potencias de +, esto es, en +, 9, @, ..., partes iguales. /iencias y T"cnicas Estad!sticas +A Adquisicin y Tratamiento de Datos La capa de red en Internet ara ello, supongamos que tenemos necesidad de crear una red para ?AA ordenadores, pero solo se nos permite utili&ar dos redes de clase /, por e#emplo, las redes *>+.*8@.A.A y *>+.*8@.*.A *+ . Entonces, podemos especi%icar una superred uniendo esas dos redes mediante la m$scara) 11111111111111111111111000000000 = 255.255.254.0 Iue indica que tenemos la superred *>+.*8@.A.A5+,, %ormada por ?*+ direcciones de red, donde *>+.*8@.A.A representa a la superred, *>+.*8@.*.+?? representa el broadcast de la superred y el resto de direcciones I pueden ser asignadas a los ordenadores o dispositivos de red que se deseen conectar. 11.& 'on(iguracin $)sica de una red. Desarrollaremos a continuacin unas sencillas explicaciones y un sencillo e#emplo que permitan aprender a con%igurar redes de ordenadores muy sencillas *, . ara ello, utili&aremos siempre la red *>+.*8@.A.A5+9, correspondiente a una intranet, y consideraremos que tenemos acceso a Internet mediante una direccin I que designaremos como A.=./.D. Adem$s, debemos introducir previamente algunos conceptos que todav!a no hemos visto. El primero de esos conceptos necesarios es la puerta de enlace *9 . 2na puerta de enlace es el dispositivo de red, generalmente un router u ordenador, que nos permite acceder desde nuestra subred a una red m$s ampl!a. /omo e#emplo, supngase que una red es una habitacin el la cual existe una puerta. 0i deseamos ver a una persona que se encuentra %uera de la habitacin, debemos salir por la puerta, mientras que si tan solo deseamos ver a una persona de la habitacin no es necesario salir por la puerta. or 1ltimo, comentar que la puerta de enlace debe pertenecer a la red en la que se encuentra el dispositivo al que sirve como puerta de enlace, de igual %orma que la puerta de nuestro e#emplo debe pertenecer a nuestra habitacin y no a otra habitacin distinta. Etro concepto que es necesario conocer es el del servidor de nombres o D-0 'Domain -ame 0erver(. El D-0 no es m$s que un ordenador capa& de convertir los nombres con los que nos re%erimos a los ordenadores, en las direcciones I correspondientes. or e#emplo, cuando un usuario escribe en su navegador Peb el nombre PPP.uv.es, ese nombre debe traducirse en la direccin I *9:.*?8.*.98, que corresponde al ordenador en el que se encuentran esas p$ginas Peb. 2na ve& introducidos estos conceptos, supongamos la siguiente con%iguracin %!sica de una red %ormada por dos ordenadores '%igura **.>.*(. En ella, podemos ver dos ordenadores A y = conectados entre si mediante una intranet a un inter%a& de red en cada ordenador. Adem$s uno de ellos, el ordenador A, tiene un segundo inter%a& de red que le permite acceder a Internet a trav"s del mismo. *+ T"ngase en cuenta que no es posible utili&ar cualquiera dos redes clase /, pues estas deben ser tal que, al aplicar la m$scara, todos los bits de red sean iguales, tal y como se ha indicado con anterioridad. *, Estas redes ser$n las t!picas redes que un usuario particular puede tener en su domicilio. *9 La puerta de enlace es tambi"n conocida con los nombres de puerta de acceso, pasarela y gatePay. /iencias y T"cnicas Estad!sticas +* Adquisicin y Tratamiento de Datos La capa de red en Internet
A = Figura 11.=.1: >ed &ormada por dos ordenadores. La con%iguracin de los dos ordenadores deber$ permitir que ambos ordenadores, A y =, sean capaces de comunicarse entre si y, adem$s, que ambos puedan acceder a Internet. ara ello, comen&aremos asignando direcciones I a los inter%aces de la intranet. 0i recordamos que hemos escogido la red *>+.8@.A.A5+9 para las direcciones I de la intranet, podemos elegir, por e#emplo, la direccin *>+.*8@.A.* para el inter%a& de la intranet del ordenador A y *>+.*8@.A.+ para el inter%a& del ordenador = *? . 2na ve& asignadas las direcciones, procederemos a asignar las m$scaras, que en ambos casos son iguales y con valor +??.+??.+??.A. 2na ve& con%iguradas las direcciones I de los inter%aces de la intranet, procederemos a con%igurar las direcciones I del inter%a& del ordenador A que da acceso a Internet. ara ello, le asignaremos la direccin A.=./.D, con la m$scara adecuada seg1n la red en la que se encuentre dicha direccin *8 . or tanto, en este momento tenemos la siguiente con%iguracin en los ordenadores)
A = I) *>+.*8@.A.* C$scara) +??.+??.+??.A I) *>+.*8@.A.+ C$scara) +??.+??.+??.A I) A.=./.D C$scara) Q.V.W.T Figura 11.=.#: Con&iguracin (sica de la cone?in de dos ordenadores. En este momento podemos comprobar la misin %undamental que reali&a la capa de red. ara ello, supongamos que el ordenador A desea enviar in%ormacin al *? Es necesario recordar que la direccin *>+.*8@.A.A identi%ica a la red, mientras que la direccin *>+.*8@.A.+?? identi%ica el broadcast de la red, por lo que no pueden utili&arse para identi%icar un ordenador de la red. *8 Estos valores pueden ser asignados din$micamente por el proveedor de acceso a Internet por lo que en esos casos no es necesario asignarlos manualmente, sino que es necesario indicar que la asignacin se reali&ar$ mediante el protocolo D4/ 'Dynamic 4ost /on%iguration rotocol(. Adem$s de estos valores, D4/ suele proveer tambi"n la direccin de la puerta de enlace y del servidor de D-0. /iencias y T"cnicas Estad!sticas ++ Adquisicin y Tratamiento de Datos La capa de red en Internet ordenador =. En este momento, la capa de red anali&a los dos inter%a& del ordenador A y determina que el ordenador = pertenece a la red del inter%a& de la intranet, enviando la in%ormacin por dicho inter%a&. 0in embargo, si A desea enviar la in%ormacin a la red de Internet, la capa de red decidir$ enviarla por el otro inter%a& que da acceso a Internet. 0in embargo, a pesar de que en este punto los ordenadores A y = pueden comunicarse entre s!, pudiendo, adem$s, el ordenador A acceder a Internet y llegar a todos los ordenadores de su red, sucede que el ordenador = no es capa& de acceder a Internet, mientras que el ordenador A no es capa& de acceder a ordenadores %uera de su red de Internet. El motivo es que tanto en A como en = no se ha con%igurado la puerta de enlace, de %orma que la capa de red de = no conoce por donde debe enviar los datos que no tengan como destino el ordenador A, mientras que A no conoce por donde debe enviar los datos que deban salir de su Gtro&o de red InternetH. La con%iguracin de las puertas de enlace es sencilla. La puerta de enlace de = es el inter%a& de la intranet del ordenador A, mientras que la puerta de enlace de A con el resto de Internet debe ser %acilitada por el proveedor de acceso a Internet, por e#emplo, AX.=X./X.DX. /on esto, la con%iguracin queda como
A = I) . . . 1921680 1 C$scara) . . . 2552552550 I) . . . 1921680 2 C$scara) . . . 2552552550 uerta) . . . 1921680 1 I) A.=./.D C$scara) Q.V.W.T uerta) AX.=X./X.DX Figura 11.=.3: Con&iguracin con puertas de enlace de dos ordenadores. /on esta con%iguracin, si el ordenador = desea enviar un paquete a un ordenador cualquiera de Internet, su capa de red observa que no pertenece a su red, por lo que comprueba que ordenador de su red es la puerta de enlace, enviando el paquete a la puerta de enlace para que esta lo reenv!e por el enlace adecuado. De igual %orma, si A desea enviar un paquete %uera de su Gtro&o de red InternetH, o bien recibe un paquete de = con id"ntico destino, proceder$ a enviarlo a la puerta de enlace de su inter%a& de Internet, para que la puerta de enlace proceda de %orma adecuada. or 1ltimo, solo nos queda por con%igurar los D-0, pues ambos ordenadores son en este instante capaces de enviar y recibir paquetes de Internet, pero no son capaces de convertir ning1n nombre de ordenador en la direccin I correspondiente. Esto se resuelve mediante la asignacin de las direcciones de los servidores de D-0. ara ello, supongamos que la direccin I del servidor de D-0 que nos ha %acilitado el proveedor de Internet es AXX.=XX,/XX.DXX. Entonces, podemos con%igurar el ordenador A indicando que el D-0 es AXX.=XX./XX.DXX. 0in embargo, en el ordenador = /iencias y T"cnicas Estad!sticas +, Adquisicin y Tratamiento de Datos La capa de red en Internet tenemos dos posibilidades. La primera implica poner como servidor de D-0 la misma direccin que en A, esto es AXX.=XX./XX.DXX. La otra, consiste en poner como servidor de D-0 en = la direccin de la intranet de A, esto es, *>+.*8@.A.*, pues cuando la peticin llegue al ordenador A, este ver$ que es una peticin de D-0 y, como conoce qui"n es el D-0, reenv!a dicha peticin al D-0 *: . or tanto, la con%iguracin %inal de los ordenadores puede verse en la %igura siguiente)
A = I) *>+.*8@.A.* C$scara) +??.+??.+??.A I) *>+.*8@.A.+ C$scara) +??.+??.+??.A uerta) *>+.*8@.A.* D-0) *>+.*8@.A.* I) A.=./.D C$scara) Q.V.W.T uerta) AX.=X./X.DX D-0) AXX.=XX./XX.DXX Figura 11.=.6: Con&iguracin de red de dos ordenadores. 11.1* E+ercicios. 11.1(.1 Ejercicio. Aplicando el algoritmo de Di#7stra, calcular el camino m$s corto entre los nodos A y Y del siguiente gra%o, que representa una red de comunicaciones, donde los valores entre los nodos del gra%o indican la distancia existente en %uncin de la m"trica.
* * + , 9 , + ? @ ? 8 8 + * , 9 ? + * Y I 4 ; < E D / = A *: 0i el proveedor de acceso a Internet %acilita los datos mediante D4/, debe utili&arse siempre esta segunda %orma, pues no podemos asegurar que el servidor de D-0 no cambie su I en cada nueva asignacin de direccin a nuestro ordenador. /iencias y T"cnicas Estad!sticas +9 Adquisicin y Tratamiento de Datos La capa de red en Internet 11.1(.2 Ejercicio. 2tili&ando el algoritmo del po&al agu#erado, calcular el tiempo que tardar$ en transmitirse una r$%aga de *A Cbits en ?A msegs si J*A Cbps, /J? Cbits y CJ*AA Cbps y el po&al est$ inicialmente lleno de cr"ditos. 11.1(.3 Ejercicio 2n po&al agu#ereado posee los valores de J*A Cbps y CJ* ;bps. 0abemos que si el po&al esta vac!o y los cr"ditos a la mitad de su valor m$ximo, que recordemos es la capacidad total del po&al /, es capa& de enviar tr$%ico de red a la velocidad de * ;bps durante A,A* segundos. /alcular la capacidad del po&al. 11.1(.4 Ejercicio. Iueremos enviar por una red una serie de *AAA datos ba#o el protocolo de red I. Especi%icar los campos longitud total, identi&icacin, 8F y despla'amiento del &ragmento si la capacidad de envi por la red es) a( Toda la red entre origen y destino admite paquetes de +?8 bytes como m$ximo. b( El principio de la red admite paquetes de ?*+ bytes como m$ximo y, a partir de cierto nodo, solo paquetes de +?8 bytes como m$ximo. 11.1(.5 Ejercicio. Deseamos enviar *AAA bytes del ordenador *9:.*?8.*.* al ordenador *9:.*?8.*8A.??. La red admite datagramas I de ?:8 bytes. Escribir los datagramas que se enviar$n, especi%icando toda la in%ormacin posible. 11.1(.6 Ejercicio. -os han asignado una red de clase / para dar soporte a un edi%icio de 9 plantas, de %orma que queremos asignar 89 ordenadores a la *Z planta, ,+ a la +Z y ,Z plantas y *+@ a la 9Z planta. [/uales son la direcciones I y las mascaras de subred de cada una de las plantas\. 11.1(.) Ejercicio. Deseamos crear una superred de *A+9 direcciones y nos permiten elegir cualquier subred en el rango QQQ.VVV.*9.A y QQQ.VVV.+*.A. [/u$l es el rango a elegir\. /iencias y T"cnicas Estad!sticas +?