Академический Документы
Профессиональный Документы
Культура Документы
que no sea la fase final, el paquete se debe enviar hacia un ruteador intermedio. Por lo tanto, el transmisor tiene que transformar la direccin Internet del ruteador en una direccin fsica. El problema de transformar direcciones de alto nivel en direcciones fsicas se conoce como problema de asociacin da direcciones y se ha resuelto de muchas maneras. Algunos grupos de protocolos cuentan con tablas en cada mquina que contienen pares de direcciones, de alto nivel y fsicas. Otros solucionan el problema al codificar direcciones de hardware en direcciones de alto nivel. Basarse en cualquiera de estos enfoques slo hace que el direccionamiento de alto nivel sea muy delicado. En este captulo, se tratan dos tcnicas para la definicin de direcciones utilizadas por los protocolos TCP/IP y se muestra cundo es apropiada cada una de ellas.
puede ser capaz de seleccionar un esquema de numeracin para direcciones fsicas, dependiendo del hardware. Definir la direccin IP, IA, implica computar: PA = f(IA) Queremos que el cmputo de f sea eficiente. Si se constrie (restringe) el juego de direcciones fsicas, puede ser posible realizar transformaciones eficientes, diferentes a la que se ejemplifica arriba. Por ejemplo, criando se utiliza el IP en una red orientada a la conexin como ATM, no se pueden escoger las direcciones fsicas. En redes como esa, una o ms computadoras almacenan pares de direcciones, en donde cada par contiene una direccin Internet y su direccin fsica correspondiente. Por ejemplo, los valores se pueden almacenar dentro de una tabla en memoria, que se tiene que buscar. Para lograr que, en esos casos, la definicin de direcciones sea eficaz, el software podra valerse de una funcin convencional de comprobacin aleatoria para buscar dentro de la tabla. En el ejercicio 5.1, se sugiere una alternativa relacionada.
El Protocolo de Asociacin de Direcciones ARP permite que un anfitrin encuentre la direccin fsica de otro anfitrin dentro de la misma red fsica con slo proporcionar la direccin IP de su objetivo.
Figura 5.1 Protocolo ARP. Para determinar la direccin fsica PB de B, desde su direccin IP, IA, (a) el anfitrin A transmite por difusin una solicitud ARP que contiene IB a todas las mquinas en la red,:y (b) el anfitrin B enva una respuesta ARP que contiene el par (IB,PB)
parece muy clara, pero los pequeos detalles complican la implantacin. Al tener una direccin IP de destino, el software consulta su memoria intermedia ARP para encontrar la transformacin de la direccin IP a la direccin fsica. Si la conoce, el software extrae la direccin fsica, pone los datos en una trama utilizando esa direccin y enva la trama. Si no conoce la transformacin, el software debe transmitir una difusin que contenga la solicitud ARP y esperar una respuesta. La difusin de una solicitud ARP para encontrar una transformacin de direcciones se puede volver compleja. La mquina de destino puede estar apagada o tan slo muy ocupada para aceptar la solicitud. Si es as, el transmisor quiz no reciba la respuesta o la reciba con retraso. Debido a que Ethernet es un sistema de entrega con el mejor esfuerzo, tambin se puede perder la solicitud de difusin inicial ARP (en cuyo caso, el que la enva debe retransmitirla por lo menos una vez). Mientras tanto, el anfitrin tiene que almacenar el paquete original para que se pueda enviar ya que se haya asociado la direccin IP a la direccin de red. De hecho, el anfitrin debe decidir si permite que otros programas de aplicacin funcionen mientras realiza una solicitud ARP (la mayor parte de ellos lo permite). Si as es, el software debe manejar el hecho de que una aplicacin genere solicitudes ARP adicionales para la misma direccin sin transmitir por difusin muchas solicitudes para un mismo objetivo. Por ltimo, considere el caso en el que la mquina A ya obtuvo una asignacin para la mquina B, pero el hardware de B falla y es reemplazado. Aunque la direccin de B ha cambiado, las asignaciones en memoria temporal de A no lo han hecho, as que A utiliza una direccin de hardware que no existe, por lo que la recepcin exitosa se vuelve imposible. En este caso se muestra por qu es importante tener software ARP que maneje de manera temporal la tabla de asignaciones y que remueva los registros despus de un periodo establecido de tiempo. Claro est, el controlador de tiempo para un registro en la memoria temporal se debe reiniciar cada vez qu llegue una difusin ARP que contenga la asignacin (pero no se reinicia cuando el registro se utiliza para enviar un paquete). La segunda parte del cdigo ARP maneja paquetes que llegan por medio de la red. Cuando llega un paquete ARP, el software extrae la direccin IP del transmisor y la direccin del hardware, luego, examina la memoria temporal local para verificar si ya existe un registro para el transmisor. Si es as, el controlador actualiza el registro al sobrescribir la direccin fsica con la direccin obtenida del paquete. Despus, el receptor procesa el resto del paquete ARP. El receptor debe manejar dos tipos de paquetes ARP entrantes. Si llega una solicitud ARP, la mquina receptora debe verificar si es el objetivo de la solicitud (por ejemplo, si alguna otra mquina transmiti por difusin una solicitud de la direccin fsica del receptor). Si es as, el software ARP formula una respuesta al proporcionar su direccin fsica de hardware y la enva directamente al solicitante. El receptor tambin agrega el par de direcciones del
transmisor a su memoria temporal si estas no estn presentes. Si la direccin IP mencionada en la solicitud ARP no corresponde a la direccin IP local, el paquete solicitar, la transformacin de alguna otra mquina en la red aunque podra ser ignorado. El otro caso interesante sucede cuando llega una respuesta ARP. Dependiendo de la implantacin, el controlador quiz necesite crear un registro en su memoria temporal o el registro se pueda crear cuando se genere la solicitud. En cualquiera de estos casos, una vez que se actualiza la memoria temporal, el receptor intenta encontrar una correspondencia entre la respuesta y una solicitud expedida con anterioridad. Por lo general, las respuestas llegan obedeciendo a una solicitud que se gener porque la mquina tiene que entregar un paquete. Entre el tiempo en que una mquina transmite por difusin su solicitud ARP y recibe la respuesta, los programas de aplicacin o los protocolos de un nivel ms alto pueden generar solicitudes adicionales, para la misma direccin; el software debe recordar que ya envi una solicitud para no enviar ms. Por lo comn, el software ARP coloca los paquetes adicionales en una cola de espera. Una vez que llega la respuesta y se conoce la asignacin, de direccin, el software ARP remueve los paquetes de la cola de espera, pone cada paquete en una trama y utiliza la asignacin de direccin para llenar la direccin fsica del destino. Si, con anterioridad, no expidi una solicitud de la direccin IP en la respuesta, la mquina actualizar el registro del transmisor en su memoria temporal y tan slo dejar de procesar el paquete.
Para identificar que la trama transporta un mensaje ARP, el transmisor asigna un valor especial al campo de tipo, en el encabezado de la trama y coloca el mensaje ARP en el campo de datos de la misma. Cuando llega una trama a una computadora, el software de red utiliza el campo de tipo de trama para determinar su contenido. En la mayor parte de las tecnologas, se utiliza un solo valor para el tipo de todas las tramas que transportan un mensaje ARP el software de red en el receptor debe examinar el mensaje ARP para distinguir entre solicitudes y respuestas. Por ejemplo, en una
Ethernet, las tramas que transportan mensajes ARP tienen un campo de tipo d 080616. Este es un valor estndar asignado por la autoridad para Ethernet; otras tecnologas de hardware de red emplean otros valores.
Figura 5.3 Ejemplo del formato de mensaje ARP/RARP cuando se utiliza para la transformacin de una direccin IP en una direccin Ethcrnet. La longitud de los campos depende del hardware y de la longitud de las direcciones de protocolos, que son de 6 octetos para una direccin Ethernet y de 4 octetos para una direccin IP.
El campo HARDWARE TYPE especifica un tipo de interfaz de hardware para el que el transmisor busca una respuesta; contiene el valor I para Ethernet. De forma similar, el campo PROTOCOL TYPE especifica el tipo de direccin de protocolo de alto nivel que proporcion el transmisor: contiene 080016 para la direccin IP. El campo OPERATION especifica una solicitud ARP (1), una respuesta ARP (2), una solicitud RARP (3) o una respuesta RARP (4). Los campos HLEN y PLEN
permiten que ARP se utilice con redes arbitrarias ya que stas especifican la longitud de la direccin de hardware y la longitud de la direccin del protocolo de alto nivel. El transmisor proporciona sus direcciones IP y de hardware, si las conoce, en los campos SENDER HA y SENDER IP. Cuando realiza una solicitud, el transmisor tambin proporciona la direccin IP del objetivo (ARP) o la direccin de hardware del objetivo (RARP), utilizando los campos TARGET HA y TARGET IP. Antes de que la mquina objetivo responda, completa las direcciones faltantes, voltea los pares de objetivo y transmisor, y cambia la operacin a respuesta. Por lo tanto, una respuesta transporta las direcciones tanto de hardware como de IP del solicitante original, lo mismo que las direcciones de hardware e IP d la mquina para la que se realiz asignacin.
5.12 Resumen
Las direcciones IP se asignan independientemente de la direccin fsica de hardware de una mquina. Para enviar un paquete de red de redes a travs de una red fsica desde una mquina haca otra, el software de red debe transformar la direccin IP en una direccin fsica de hardware y utilizar esta ltima para transmitir la trama. Si las direcciones de hardware son ms pequeas que las direcciones IP, se puede establecer una transformacin directa al codificar la direccin fsica de una mquina dentro de su direccin IP. De otra forma, la transformacin debe realizarse de manera dinmica. El Protocolo de Definicin de Direcciones (ARP) realiza la definicin dinmica de direcciones, utilizando slo el sistema de comunicacin de red de bajo nivel. ARP permite que las mquinas asocien direcciones sin tener un registro permanente de asignaciones. Una mquina utiliza ARP para encontrar la direccin de hardware de otra mquina al transmitir por difusin una solicitud ARP. La solicitud contiene la direccin IP de la mquina de la que se necesita la direccin de hardware. Todas las mquinas en una red reciben la solicitud ARP. Si la solicitud corresponde a la direccin IP de una mquina, sta responde al enviar una respuesta que: contiene la direccin de hardware requerida. Las respuestas se dirigen a una sola mquina; no se transmiten por difusin. Para lograr qu ARP sea eficiente, cada mquina guarda en su memoria temporal las asignaciones de direccin IP a direccin fsica. Como el trfico de una red de redes tiende a ser una secuencia interacciones entre pares de mquinas, la memoria temporal elimina la mayor parte de las solicitudes ARP transmitidas por difusin.