Sie sind auf Seite 1von 20

Internet Protocol : (en espaol Protocolo de Internet) o IP es un protocolo no orientado a conexin usado tanto por el origen como por

el destino para la comunicacin de datos a travs de una red de paquetes conmutados.

La familia de protocolos de Internet


Es un conjunto de protocolos de red en los que se basa Internet y que permiten la transmisin de datos entre redes de computadoras. En ocasiones se le denomina conjunto de protocolos TCP/IP, en referencia a los dos protocolos ms importantes que la componen: Protocolo de Control de Transmisin (TCP) y Protocolo de Internet (IP), que fueron los dos primeros en definirse, y que son los ms utilizados de la familia. Existen tantos protocolos en este conjunto que llegan a ser ms de 100 diferentes, entre ellos se encuentra el popular HTTP (HyperText Transfer Protocol), que es el que se utiliza para acceder a las pginas web, adems de otros como el ARP(Address Resolution Protocol) para la resolucin de direcciones, el FTP (File Transfer Protocol) para transferencia de archivos, y el SMTP (Simple Mail Transfer Protocol) y el POP (Post Office Protocol) para correo electrnico, TELNET para acceder a equipos remotos, entre otros.

Caractersticas El protocolo de IP es la base fundamental de Internet. Porta datagramas de la fuente al destino. El nivel de transporte parte el flujo de datos en datagramas. Durante su transmisin se puede partir un datagrama en fragmentos que se montan de nuevo en el destino. Las principales caractersticas de este protocolo son:

Protocolo orientado a no conexin. Fragmenta paquetes si es necesario. Direccionamiento mediante direcciones lgicas IP de 32 bits. Si un paquete no es recibido, este permanecer en la red durante un tiempo finito. Realiza el mejor esfuerzo para la distribucin de paquetes. Tamao mximo del paquete de 65635 bytes. Slo se realiza verificacin por suma al encabezado del paquete, no a los datos que ste contiene.

El protocolo de Internet proporciona un servicio de distribucin de paquetes de informacin orientado a no conexin de manera no fiable. La orientacin a no conexin significa que los paquetes de informacin, que ser emitido a la red, son tratados independientemente, pudiendo viajar por diferentes trayectorias para llegar a su destino. El trmino no fiable significa ms que nada que no se garantiza la recepcin del paquete. Funionamiento

Los datos en una red basada en IP son enviados en bloques conocidos como paquetes o datagramas (en el protocolo IP estos trminos se suelen usar indistintamente). En particular, en IP no se necesita ninguna configuracin antes de que un equipo intente enviar paquetes a otro con el que no se haba comunicado antes.

IP provee un servicio de datagramas no fiable (tambin llamado del mejor esfuerzo (best effort), lo har lo mejor posible pero garantizando poco). IP no provee ningn mecanismo para determinar si un paquete alcanza o no su destino y nicamente proporciona seguridad (mediante checksums o sumas de comprobacin) de sus cabeceras y no de los datos transmitidos. Por ejemplo, al no garantizar nada sobre la recepcin del paquete, ste podra llegar daado, en otro orden con respecto a otros paquetes, duplicado o simplemente no llegar. Si se necesita fiabilidad, sta es proporcionada por los protocolos de la capa de transporte, como TCP . Si la informacin a transmitir ("datagramas") supera el tamao mximo "negociado" en el tramo de red por el que va a circular podr ser dividida en paquetes ms pequeos, y reensamblada luego cuando sea necesario. Estos fragmentos podrn ir cada uno por un camino diferente dependiendo de como estn de congestionadas las rutas en cada momento. Las cabeceras IP contienen las direcciones de las mquinas de origen y destino (direcciones IP), direcciones que sern usadas por los conmutadores de paquetes (switches) y los enrutadores (routers) para decidir el tramo de red por el que reenviarn los paquetes.

Clases de direcciones IP Se dividen de acuerdo a la cantidad de bytes que representan a la red. Clase A En una direccin IP de clase A, el primer byte representa la red. El bit ms importante (el primer bit a la izquierda) est en cero, lo que significa que hay 2 7 (00000000 a 01111111) posibilidades de red, que son 128 posibilidades. Sin embargo, la red 0 (bits con valores 00000000) no existe y el nmero 127 est reservado para indicar su equipo. Las redes disponibles de clase A son, por lo tanto, redes que van desde 1.0.0.0 a 126.0.0.0 (los ltimos bytes son ceros que indican que se trata seguramente de una red y no de equipos). En binario, una direccin IP de clase A luce as: 0 Xxxxxxx Xxxxxxxx Xxxxxxxx Xxxxxxxx Red Equipos Clase B En una direccin IP de clase B, los primeros dos bytes representan la red. Los primeros dos bits son 1 y 0; esto significa que existen 214 (10 000000 00000000 a 10 111111 11111111) posibilidades de red, es decir, 16.384 redes posibles. Las redes disponibles de la clase B son, por lo tanto, redes que van de 128.0.0.0 a 191.255.0.0.

En binario, una direccin IP de clase B luce as: 10 Xxxxxx Xxxxxxxx Xxxxxxxx Xxxxxxxx Red Ordenadores Clase C En una direccin IP de clase C, los primeros tres bytes representan la red. Los primeros tres bits son 1,1 y 0; esto significa que hay 221 posibilidades de red, es decir, 2.097.152. Las redes disponibles de la clases C son, por lo tanto, redes que van desde 192.0.0.0 a 223.255.255.0. En binario, una direccin IP de clase C luce as: 110 Xxxxx Xxxxxxxx Xxxxxxxx Xxxxxxxx Red Ordenadores Objetivo El objetivo de dividir las direcciones IP en tres clases A, B y C es facilitar la bsqueda de un equipo en la red. De hecho, con esta notacin es posible buscar primero la red a la que uno desea tener acceso y luego buscar el equipo dentro de esta red. Por lo tanto, la asignacin de una direccin de IP se realiza de acuerdo al tamao de la red. Grupos de la Liga Mundial Clase A B C Cantidad de redes Cantidad mxima de posibles equipos 126 16384 2097152 16777214 65534 254

Clasificacin de las direcciones IP IP pblica Es la direccin IP con la que nos identificamos al conectarnos a otras redes (Internet). Esta IP nos la asigna nuestro proveedor ISP, y no tenemos control sobre ella. A su vez puede ser de dos tipos diferentes: IP esttica Es cuando tenemos una direccin IP fija asignada. Este tipo es poco utilizado, carece de inters para el usuario domstico y adems los proveedores ISP suelen cobrar un suplemento por ellas. IP dinmica

Es la utilizada habitualmente. Nuestro proveedor ISP nos asigna al conectarnos a la red (Internet) una direccin que tenga disponible en ese momento. Esta direccin cambia cada vez que nos desconectamos de Internet y nos volvemos a conectar. IP privada Es la direccin IP de cada equipo (Introduccin en los Microordenadores|ordenador o cualquier elemento que se conecte a travs del protocolo TCP/IP) de nuestra red. Al contrario de lo que ocurre con la IP pblica, la IP privada s que la asignamos nosotros, aunque se puede asignar de forma automtica (mediante DHCP). Principalmente son utilizadas las comprendidas en el RFC 1918 Ventajas e inconvenientes

El Protocolo IP est diseado para enrutar y tiene un grado muy elevado de fiabilidad, es adecuado para redes grandes y medianas, as como en redes empresariales. Se utiliza a nivel mundial para conectarse a Internet y a los servidores web. Es compatible con las herramientas estndar para analizar el funcionamiento de la red. Un inconveniente es que es ms difcil de configurar y de mantener que NetBEUI o IPX/SPX; adems es algo ms lento en redes con un volumen de trfico medio bajo. Sin embargo, puede ser ms rpido en redes con un volumen de trfico grande donde haya que enrutar un gran nmero de tramas. Se utiliza tanto en redes empresariales como por ejemplo en campus universitarios o en complejos empresariales, en donde utilizan muchos enrutadores y conexiones a mainframe o a ordenadores UNIX, as como tambin en redes pequeas o domsticas, y hasta en telfonos mviles y en domtica.

Direccionamiento IP y enrutamiento Quizs los aspectos ms complejos de IP son el direccionamiento y el enrutamiento. El direccionamiento se refiere a la forma como se asigna una direccin IP y como se dividen y se agrupan subredes de equipos. El enrutamiento consiste en encontrar un camino que conecte una red con otra y, aunque es llevado a cabo por todos los equipos, es realizado principalmente por enrutadores, que no son ms que computadores especializados en recibir y enviar paquetes por diferentes interfaces de red, as como proporcionar opciones de seguridad, redundancia de caminos y eficiencia en la utilizacin de los recursos. Direccin IP Una direccin IP es un nmero que identifica de manera lgica y jerrquicamente a una interfaz de un dispositivo (habitualmente una computadora) dentro de una red que utilice el protocolo de Internet (Internet Protocol), que corresponde al nivel de red o nivel 3 del modelo de referencia OSI. Dicho nmero no se ha de confundir con la direccin MAC que es un nmero fsico que es asignado a la tarjeta o dispositivo de red (viene impuesta por el fabricante), mientras que la direccin IP se puede cambiar. Las direcciones IP se pueden expresar como nmeros de notacin decimal: se dividen los 32 bits

de la direccin en cuatro octetos. El valor decimal de cada octeto puede ser entre 0 y 255 [el nmero binario de 8 bits ms alto es 11111111 y esos bits, de derecha a izquierda, tienen valores decimales de 1, 2, 4, 8, 16, 32, 64 y 128, lo que suma 256 en total, 255 ms la 0 (0000 0000)] . En la expresin de direcciones IPv4 en decimal se separa cada octeto por un carcter nico ".". Cada uno de estos octetos puede estar comprendido entre 0 y 255, salvo algunas excepciones. Los ceros iniciales, si los hubiera, se pueden obviar (010.128.001.255 sera 10.128.1.255) . Es habitual que un usuario que se conecta desde su hogar a Internet utilice una direccin IP. Esta direccin puede cambiar al reconectar, y a esta forma de asignacin de direccin IP se denomina una direccin IP dinmica (normalmente se abrevia como IP dinmica) . Los sitios de Internet que por su naturaleza necesitan estar permanentemente conectados, generalmente tienen una direccin IP fija (se aplica la misma reduccin por IP fija o IP esttica); es decir, no cambia con el tiempo. Los servidores de correo, dns, ftp pblicos, servidores web, necesariamente deben contar con una direccin IP fija o esttica, ya que de esta forma se facilita su ubicacin. Las mquinas tienen una gran facilidad para manipular y jerarquizar la informacin numrica, y son altamente eficientes para hacerlo y ubicar direcciones IP. Sin embargo, los seres humanos debemos utilizar otra notacin ms fcil de recordar y utilizar; tal es el caso URLs y resolucin de nombres de dominio DNS . Enrutamiento En comunicaciones, el encaminamiento (a veces conocido por el anglicismo ruteo o enrutamiento) es el mecanismo por el que en una red los paquetes de informacin se hacen llegar desde su origen a su destino final, siguiendo un camino o ruta a travs de la red. En una red grande o en un conjunto de redes interconectadas el camino a seguir hasta llegar al destino final puede suponer transitar por muchos nodos intermedios. Asociado al encaminamiento existe el concepto de mtrica, que es una medida de lo "bueno" que es usar un camino determinado. La mtrica puede estar asociada a distintas magnitudes: distancia, coste, retardo de transmisin, nmero de saltos, etc., o incluso a una combinacin de varias magnitudes. Si la mtrica es el retardo, es mejor un camino cuyo retardo total sea menor que el de otro. Lo ideal en una red es conseguir el encaminamiento ptimo: tener caminos de distancia (o coste, o retardo, o la magnitud que sea, segn la mtrica) mnimos. Tpicamente el encaminamiento es una funcin implantada en la capa 3 (capa de red) del modelo de referencia OSI . Tendencias futuras El IP es el elemento comn en la Internet de hoy. El actual y ms popular protocolo de red es IPv4. IPv6 es el sucesor propuesto de IPv4; poco a poco Internet est agotando las direcciones disponibles por lo que IPv6 utiliza direcciones de fuente y destino de 128 bits (lo cual asigna a cada milmetro cuadrado de la superficie de la Tierra la colosal cifra de 670.000 millones de direcciones IP), muchas ms direcciones que las que provee IPv4 con 32 bits. Las versiones de la 0 a la 3 estn reservadas o no fueron usadas. La versin 5 fue usada para un protocolo experimental. Otros nmeros han sido asignados, usualmente para protocolos experimentales, pero no han sido muy extendidos.

Las caractersticas del protocolo TCP TCP (que significa Protocolo de Control de Transmisin) es uno de los principales protocolos de la capa de transporte del modelo TCP/IP. En el nivel de aplicacin, posibilita la administracin de datos que vienen del nivel ms bajo del modelo, o van hacia l, (es decir, el protocolo IP). Cuando se proporcionan los datos al protocolo IP, los agrupa en datagramas IP, fijando el campo del protocolo en 6 (para que sepa con anticipacin que el protocolo es TCP). TCP es un protocolo orientado a conexin, es decir, que permite que dos mquinas que estn comunicadas controlen el estado de la transmisin. Las principales caractersticas del protocolo TCP son las siguientes:

TCP permite colocar los datagramas nuevamente en orden cuando vienen del protocolo IP. TCP permite que el monitoreo del flujo de los datos y as evita la saturacin de la red. TCP permite que los datos se formen en segmentos de longitud variada para "entregarlos" al protocolo IP. TCP permite multiplexar los datos, es decir, que la informacin que viene de diferentes fuentes (por ejemplo, aplicaciones) en la misma lnea pueda circular simultneamente. Por ltimo, TCP permite comenzar y finalizar la comunicacin amablemente.

El objetivo de TCP Con el uso del protocolo TCP, las aplicaciones pueden comunicarse en forma segura (gracias al sistema de acuse de recibo del protocolo TCP) independientemente de las capas inferiores. Esto significa que los routers (que funcionan en la capa de Internet) slo tienen que enviar los datos en forma de datagramas, sin preocuparse con el monitoreo de datos porque esta funcin la cumple la capa de transporte (o ms especficamente el protocolo TCP). Durante una comunicacin usando el protocolo TCP, las dos mquinas deben establecer una conexin. La mquina emisora (la que solicita la conexin) se llama cliente, y la mquina receptora se llama servidor. Por eso es que decimos que estamos en un entorno Cliente-Servidor. Las mquinas de dicho entorno se comunican en modo en lnea, es decir, que la comunicacin se realiza en ambas direcciones. Para posibilitar la comunicacin y que funcionen bien todos los controles que la acompaan, los datos se agrupan; es decir, que se agrega un encabezado a los paquetes de datos que permitirn sincronizar las transmisiones y garantizar su recepcin. Otra funcin del TCP es la capacidad de controlar la velocidad de los datos usando su capacidad para emitir mensajes de tamao variable. Estos mensajes se llaman segmentos.

La funcin multiplexin TCP posibilita la realizacin de una tarea importante: multiplexar/demultiplexar; es decir transmitir datos desde diversas aplicaciones en la misma lnea o, en otras palabras, ordenar la informacin que llega en paralelo.

Estas operaciones se realizan empleando el concepto de puertos (o conexiones), es decir, un nmero vinculado a un tipo de aplicacin que, cuando se combina con una direccin de IP, permite determinar en forma exclusiva una aplicacin que se ejecuta en una mquina determinada. El formato de los datos en TCP Un segmento TCP est formado de la siguiente manera:

<td
URG <td ACK <td PSH <td RST <td SYN <td FIN</td </td </td </td </td </td 0 1 2 3 4 5 6 7 8 9 Puerto de origen 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Puerto de destino Nmero de secuencia Nmero de acuse de recibo Margen Reservado Ventana

de datos Suma de control Opciones Datos Significado de los diferentes campos: Puntero urgente Relleno

Significado de los diferentes campos:


Puerto de origen (16 bits): Puerto relacionado con la aplicacin en curso en la mquina origen Puerto de destino (16 bits): Puerto relacionado con la aplicacin en curso en la mquina destino Nmero de secuencia (32 bits): Cuando el indicador SYN est fijado en 0, el nmero de secuencia es el de la primera palabra del segmento actual. Cuando SYN est fijado en 1, el nmero de secuencia es igual al nmero de secuencia inicial utilizado para sincronizar los nmeros de secuencia (ISN). Nmero de acuse de recibo (32 bits): El nmero de acuse de recibo, tambin llamado nmero de descargo se relaciona con el nmero (secuencia) del ltimo segmento esperado y no el nmero del ltimo segmento recibido. Margen de datos (4 bits): Esto permite ubicar el inicio de los datos en el paquete. Aqu, el margen es fundamental porque el campo opcin es de tamao variable. Reservado (6 bits): Un campo que actualmente no est en uso pero se proporciona para el uso futuro. Indicadores (6x1 bit): Los indicadores representan informacin adicional:

URG: Si este indicador est fijado en 1, el paquete se debe procesar en forma urgente. ACK: Si este indicador est fijado en 1, el paquete es un acuse de recibo. PSH (PUSH): Si este indicador est fijado en 1, el paquete opera de acuerdo con el mtodo PUSH. RST: Si este indicador est fijado en 1, se restablece la conexin. SYN: El indicador SYN de TCP indica un pedido para establecer una conexin. FIN: Si este indicador est fijado en 1, se interrumpe la conexin.

Ventana (16 bits): Campo que permite saber la cantidad de bytes que el receptor desea recibir sin acuse de recibo. Suma de control (CRC): La suma de control se realiza tomando la suma del campo de datos del encabezado para poder verificar la integridad del encabezado. Puntero urgente (16 bits): Indica el nmero de secuencia despus del cual la informacin se torna urgente. Opciones (tamao variable): Diversas opciones Relleno: Espacio restante despus de que las opciones se rellenan con ceros para tener una longitud que sea mltiplo de 32 bits.

Confiabilidad de las transferencias El protocolo TCP permite garantizar la transferencia de datos confiable, a pesar de que usa el protocolo IP, que no incluye ningn monitoreo de la entrega de datagramas. De hecho, el protocolo TCP tiene un sistema de acuse de recibo que permite al cliente y al servidor garantizar la recepcin mutua de datos. Cuando se emite un segmento, se lo vincula a un nmero de secuencia. Con la recepcin de un segmento de datos, la mquina receptora devolver un segmento de datos donde el indicador ACK est fijado en 1 (para poder indicar que es un acuse de recibo) acompaado por un nmero de acuse de recibo que equivale al nmero de secuencia anterior.

Adems, usando un temporizador que comienza con la recepcin del segmento en el nivel de la mquina originadora, el segmento se reenva cuando ha transcurrido el tiempo permitido, ya que en este caso la mquina originadora considera que el segmento est perdido.

Sin embargo, si el segmento no est perdido y llega a destino, la mquina receptora lo sabr, gracias al nmero de secuencia, que es un duplicado, y slo retendr el ltimo segmento que lleg a destino. Cmo establecer una conexin Considerando que este proceso de comunicacin, que se produce con la transmisin y el acuse de recibo de datos, se basa en un nmero de secuencia, las mquinas originadora y receptora (cliente y servidor) deben conocer el nmero de secuencia inicial de la otra mquina. La conexin establecida entre las dos aplicaciones a menudo se realiza siguiendo el siguiente esquema:

Los puertos TCP deben estar abiertos. La aplicacin en el servidor es pasiva, es decir, que la aplicacin escucha y espera una conexin. La aplicacin del cliente realiza un pedido de conexin al servidor en el lugar donde la aplicacin es abierta pasiva. La aplicacin del cliente se considera "abierta activa".

Las dos mquinas deben sincronizar sus secuencias usando un mecanismo comnmente llamado negociacin en tres pasos que tambin se encuentra durante el cierre de la sesin. Este dilogo posibilita el inicio de la comunicacin porque se realiza en tres etapas, como su nombre lo indica:

En la primera etapa, la mquina originadora (el cliente) transmite un segmento donde el indicador SYN est fijado en 1 (para indicar que es un segmento de sincronizacin), con nmero de secuencia N llamado nmero de secuencia inicial del cliente. En la segunda etapa, la mquina receptora (el servidor) recibe el segmento inicial que viene del cliente y luego le enva un acuse de recibo, que es un segmento en el que el indicador ACK est fijado en 1 y el indicador SYN est fijado en 1 (porque es nuevamente una sincronizacin). Este segmento incluye el nmero de secuencia de esta mquina (el servidor), que es el nmero de secuencia inicial para el cliente. El campo ms importante en este segmento es el de acuse de recibo que contiene el nmero de secuencia inicial del cliente incrementado en 1. Por ltimo, el cliente transmite un acuse de recibo, que es un segmento en el que el indicador ACK est fijado en 1 y el indicador SYN est fijado en 0 (ya no es un segmento de sincronizacin). Su nmero de secuencia est incrementado y el acuse de recibo representa el nmero de secuencia inicial del servidor incrementado en 1.

Despus de esta secuencia con tres intercambios, las dos mquinas estn sincronizadas y la comunicacin puede comenzar. Existe una tcnica de piratera llamada falsificacin de IP, que permite corromper este enlace de aprobacin con fines maliciosos. Mtodo de ventana corrediza En muchos casos, es posible limitar la cantidad de acuses de recibo con el fin de aliviar el trfico en la red. Esto se logra fijando un nmero de secuencia despus del cual se requiera un acuse de recibo. Este nmero en realidad se guarda en el campo ventana del encabezado TCP/IP. Este mtodo se llama efectivamente el "el mtodo de la ventana corrediza" porque, en cierta medida, se define una serie de secuencias que no necesitan acuses de recibo y que se desplaza a medida que se reciben los acuses de recibo.

Adems, el tamao de esta ventana no es fijo. De hecho, el servidor puede incluir el tamao de la ventana que considera ms apropiado en sus acuses de recibo guardndolo en el campo ventana. De este modo, cuando el acuse de recibo indica un pedido para aumentar la ventana, el cliente se desplazar al borde derecho de la ventana.

Por el contrario, en el caso de una reduccin, el cliente no desplazar el borde derecho de la ventana hacia la izquierda sino que esperar que avance el borde izquierdo (al llegar los acuses de recibo).

Cmo terminar una conexin El cliente puede pedir que se termine una conexin del mismo modo que el servidor. Para terminar una conexin se procede de la siguiente manera:

Una de las mquinas enva un segmento con el indicador FIN fijado en 1, y la aplicacin se autocoloca en estado de espera, es decir que deja de recibir el segmento actual e ignora los siguientes. Despus de recibir este segmento, la otra mquina enva un acuse de recibo con el indicador FIN fijado en 1 y sigue enviando los segmentos en curso. Despus de esto, la mquina informa a la aplicacin que se ha recibido un segmento FIN y luego enva un segmento FIN a la otra mquina, que cierra la conexin.

User Datagram Protocol (UDP) es un protocolo del nivel de transporte basado en el intercambio de datagramas (Encapsulado de capa 4 Modelo OSI). Permite el envo de datagramas a travs de la red sin que se haya establecido previamente una conexin, ya que el propio datagrama incorpora suficiente informacin de direccionamiento en su cabecera. Tampoco tiene confirmacin ni control de flujo, por lo que los paquetes pueden adelantarse unos a otros; y tampoco se sabe si ha llegado correctamente, ya que no hay confirmacin de entrega o recepcin. Su uso principal es para protocolos como DHCP, BOOTP, DNS y dems protocolos en los que el intercambio de paquetes de la conexin/desconexin son mayores, o no son rentables con respecto a la informacin transmitida, as como para la transmisin de audio y vdeo en tiempo real, donde no es posible realizar retransmisiones por los estrictos requisitos de retardo que se tiene en estos casos. Descripcin tcnica User Datagram Protocol (UDP) es un protocolo mnimo de nivel de transporte orientado a mensajes documentado en el RFC 768 de la IETF. En la familia de protocolos de Internet UDP proporciona una sencilla interfaz entre la capa de red y la capa de aplicacin. UDP no otorga garantas para la entrega de sus mensajes (por lo que realmente no se debera encontrar en la capa 4) y el origen UDP no retiene estados de los mensajes UDP que han sido enviados a la red. UDP slo aade multiplexado de aplicacin y suma de verificacin de la cabecera y la carga til. Cualquier tipo de garantas para la transmisin de la informacin deben ser implementadas en capas superiores. + Bits 0 - 15 0 Puerto origen 16 - 31 Puerto destino

32 Longitud del Mensaje Suma de verificacin

64 Datos

La cabecera UDP consta de 4 campos de los cuales 2 son opcionales (con fondo rojo en la tabla). Los campos de los puertos fuente y destino son campos de 16 bits que identifican el proceso de origen y recepcin. Ya que UDP carece de un servidor de estado y el origen UDP no solicita respuestas, el puerto origen es opcional. En caso de no ser utilizado, el puerto origen debe ser puesto a cero. A los campos del puerto destino le sigue un campo obligatorio que indica el tamao en bytes del datagrama UDP incluidos los datos. El valor mnimo es de 8 bytes. El campo de la cabecera restante es una suma de comprobacin de 16 bits que abarca una pseudo-cabecera IP (con las IP origen y destino, el protocolo y la longitud del paquete UDP), la cabecera UDP, los datos y 0's hasta completar un mltiplo de 16. El checksum tambin es opcional en IPv4, aunque generalmente se utiliza en la prctica (en IPv6 su uso es obligatorio). A continuacin se muestra los campos para el clculo del checksum en IPv4, marcada en rojo la pseudo-cabecera IP. bits 0 7 0 8 15 16 23 24 31

Direccin Origen

32 Direccin Destino 64 Ceros Protocolo Longitud UDP Puerto Destino

96 Puerto Origen

128 Longitud del Mensaje Suma de verificacin

160 Datos

El protocolo UDP se utiliza por ejemplo cuando se necesita transmitir voz o vdeo y resulta ms importante transmitir con velocidad que garantizar el hecho de que lleguen absolutamente todos los bytes. Puertos UDP utiliza puertos para permitir la comunicacin entre aplicaciones. El campo de puerto tiene una longitud de 16 bits, por lo que el rango de valores vlidos va de 0 a 65.535. El puerto 0 est reservado, pero es un valor permitido como puerto origen si el proceso emisor no espera recibir mensajes como respuesta. Los puertos 1 a 1023 se llaman puertos "bien conocidos" y en sistemas operativos tipo Unix enlazar con uno de estos puertos requiere acceso como superusuario.

Los puertos 1024 a 49.151 son puertos registrados. Los puertos 49.152 a 65.535 son puertos efmeros y son utilizados como puertos temporales, sobre todo por los clientes al comunicarse con los servidores. Comparativa entre UDP y TCP (Transmission Control Protocol)

UDP: proporciona un nivel de transporte no fiable de datagramas, ya que apenas aade la informacin necesaria para la comunicacin extremo a extremo al paquete que enva al nivel inferior. Lo utilizan aplicaciones como NFS (Network File System) y RCP (comando para copiar ficheros entre ordenadores remotos), pero sobre todo se emplea en tareas de control y en la transmisin de audio y vdeo a travs de una red. No introduce retardos para establecer una conexin, no mantiene estado de conexin alguno y no realiza seguimiento de estos parmetros. As, un servidor dedicado a una aplicacin particular puede soportar ms clientes activos cuando la aplicacin corre sobre UDP en lugar de sobre TCP. TCP: es el protocolo que proporciona un transporte fiable de flujo de bits entre aplicaciones. Est pensado para poder enviar grandes cantidades de informacin de forma fiable, liberando al programador de la dificultad de gestionar la fiabilidad de la conexin (retransmisiones, prdida de paquetes, orden en el que llegan los paquetes, duplicados de paquetes...) que gestiona el propio protocolo. Pero la complejidad de la gestin de la fiabilidad tiene un coste en eficiencia, ya que para llevar a cabo las gestiones anteriores se tiene que aadir bastante informacin a los paquetes que enviar. Debido a que los paquetes para enviar tienen un tamao mximo, cuanta ms informacin aada el protocolo para su gestin, menos informacin que proviene de la aplicacin podr contener ese paquete (el segmento TCP tiene una sobrecarga de 20 bytes en cada segmento, mientras que UDP solo aade 8 bytes). Por eso, cuando es ms importante la velocidad que la fiabilidad, se utiliza UDP. En cambio, TCP asegura la recepcin en destino de la informacin para transmitir.

Transmisin de vdeo y voz UDP es generalmente el protocolo usado en la transmisin de vdeo y voz a travs de una red. Esto es porque no hay tiempo para enviar de nuevo paquetes perdidos cuando se est escuchando a alguien o viendo un vdeo en tiempo real. Ya que tanto TCP como UDP circulan por la misma red, en muchos casos ocurre que el aumento del trfico UDP daa el correcto funcionamiento de las aplicaciones TCP. Por defecto, TCP pasa a un segundo lugar para dejar a los datos en tiempo real usar la mayor parte del ancho de banda. El problema es que ambos son importantes para la mayor parte de las aplicaciones, por lo que encontrar el equilibrio entre ambos es crucial. Todo este tipo de protocolos son usados en telemtica. UNIDAD 4: Protocolo de Datagramas de Usuario (UDP) Internet tiene dos protocolos principales en la capa de transporte, uno orientado y otro no orientado a la conexin, mejor conocido como UDP. Este protocolo proporciona una forma para que las aplicaciones enven datagramas IP encapsulados sin tener que establecer una conexin. UDP est descrito en el RFC 768.

Ilustracin 1 UDP de forma grfica UDP cuenta con las siguientes caractersticas:

Sin conexin Los nodos envan mensajes UDP, que consta de un encabezado UDP y un mensaje, sin tener que negociar una conexin entre los compaeros de comunicacin. Poco fiable Los nodos envan mensajes como datagramas UDP sin secuencia o reconocimiento. El protocolo de capa de aplicacin debe reordenar y recuperar los mensajes perdidos. Los protocolos basados en UDP de capa de aplicacin deben ofrecer su propio servicio confiable o retransmitir mensajes UDP peridicamente o despus de un definido valor de tiempo. Ofrece identificacin de los protocolos de la capa de aplicacin UDP proporciona un mecanismo para enviar mensajes a un protocolo de capa de aplicacin o proceso especfico en un host de red interna. La cabecera UDP proporciona la fuente y el proceso de identificacin de destino. Proporciona una suma de verificacin (checksum) del mensaje UDP La cabecera UDP otorga una suma de verificacin de 16 bits del mensaje entero de UDP.

UDP es un reflejo directo de los servicios de datagrama de IP, excepto que UDP proporciona un mtodo para pasar los datos a un protocolo de capa de aplicacin. UDP no proporciona los servicios de entrega siguientes:

Almacenamiento en el bfer UDP no proporciona ningn tipo de almacenamiento en bfer de los datos entrantes o salientes. El protocolo de capa de aplicacin debe proporcionar todo el almacenamiento en bfer. Segmentacin UDP no proporciona ningn tipo de segmentacin de los grandes bloques de datos. Por lo tanto, la aplicacin debe enviar los datos en pequeos bloques suficientes para que los datagramas IP de los mensajes UDP no sean mayores que la unidad de transmisin mxima (MTU en ingls) de la interfaz en la que se envan. De lo contrario, IP enva los fragmentos al host del mensaje UDP. Control de flujo UDP no proporciona ningn control de flujo para el emisor ni para el receptor. Los remitentes de mensajes UDP pueden reaccionar a la recepcin de un mensaje del Protocolo de Control de Mensajes de Internet (ICMP), pero no es necesario.

4.1 Difusin y Multienvo UDP transmite segmentos que consisten en un encabezado de 8 bytes seguido por la carga til. Existen dos puertos sirven para identificar los puntos terminales dentro de las mquinas de origen y destino. Cuando llega un paquete UDP, su carga til se entrega al proceso que est enlazado al puerto de destino. De hecho, el valor principal de contar con UDP en lugar de simplemente utilizar el IP puro es la adicin de los puertos de origen y destino. Sin los campos de puerto, la capa de transporte no sabra qu hacer con el paquete. Con ellos, entrega los segmentos de manera correcta. Un rea en la que UDP es especialmente til es en las situaciones cliente-servidor. Con frecuencia, el cliente enva una solicitud corta al servidor y espera una respuesta corta. Si se pierde la solicitud o la respuesta, el cliente simplemente puede terminar y probar nuevamente. El cdigo no slo es simple, sino que se necesitan muy pocos mensajes (uno en cada direccin) en comparacin con un protocolo que requiere una configuracin inicial. Una aplicacin que utiliza de esta manera a UDP es DNS (el Sistema de Nombres de Dominio). En resumen, un programa que necesita buscar la direccin IP de algn host puede enviar al servidor DNS un paquete UDP que contenga el nombre de dicho host. El servidor responde con un paquete UDP que contiene la direccin IP del host. No se necesita configuracin por adelantado ni tampoco liberacin posterior. Slo dos mensajes viajan a travs de la red. Si el protocolo de capa de aplicacin proporciona a sus propios servicios confiables de entrega de datos, no hay necesidad de que el protocolo de capa de transporte los otorgue. Ejemplos de protocolos fiables de capa de aplicacin son Trivial File Transfer Protocol (TFTP) y Network File System (NFS). Si el protocolo de capa de aplicacin peridicamente anuncia la informacin, la entrega confiable no es necesaria. Si un anuncio se pierde, se anuncia de nuevo en un intervalo de tiempo. Un ejemplo de un protocolo de capa de aplicacin que anuncia entregas peridicamente es el Routing Information Protocol (RIP). UDP utiliza el protocolo RTP(Protocolo de Transporte en Tiempo Real) para poder multiplexar varios flujos de datos en tiempo real en un solo flujo de paquetes. RTP opera de la siguiente forma: La aplicacin multimedia consiste en mltiples flujos de audio, vdeo, texto, entre otros.

stos se colocan en la biblioteca RTP, la cual est en el espacio de usuario junto con la aplicacin. Esta biblioteca multiplexa los flujos y los codifica en paquetes RTP, que despus coloca en un socket. En el otro extremo del socket (en el kernel del sistema operativo), los paquetes UDP se generan e incrustan en paquetes IP. Si la computadora est en una Ethernet, los paquetes IP se colocan a continuacin en tramas Ethernet para su transmisin. El flujo UDP se puede enviar a un solo destino (unidifusin) o a mltiples destinos (multidifusin). Debido a que RTP slo utiliza UDP normal, sus paquetes no son tratados de manera especial por los enrutadores, a menos que se habiliten algunas caractersticas de calidad de servicio IP normales. En particular, no hay garantas especiales acerca de la entrega, fluctuacin, etctera. A cada paquete enviado en un flujo RTP se le da un nmero ms grande que a su predecesor. Esta numeracin permite al destino determinar si falta algn paquete. Si falta alguno, la mejor accin que el destino puede realizar es aproximar el valor faltante mediante la interpolacin. La retransmisin no es una opcin prctica debido a que el paquete retransmitido probablemente llegar muy tarde como para ser til. En consecuencia, RTP no tiene control de flujo, control de errores, confirmaciones de recepcin ni ningn mecanismo para solicitar retransmisiones. Otra caracterstica que se necesita es la marcacin del tiempo (timestamping). La idea es permitir que el origen asocie una marca de tiempo con la primera muestra de cada paquete. Las marcas de tiempo son relativas al inicio del flujo, por lo que slo son importantes las diferencias entre dichas marcas de tiempo. Los valores absolutos no tienen significado. Este mecanismo permite que el destino realice una pequea cantidad de almacenamiento en bfer y reproduzca cada muestra el nmero exacto de milisegundos despus del inicio del flujo, independientemente de cundo lleg el paquete que contiene la muestra. La marcacin del tiempo no slo reduce los efectos de la fluctuacin, sino que tambin permite que mltiples flujos estn sincronizados entre s. 4.2 Puertos de la Aplicaciones Un puerto UDP define una ubicacin o cola de mensajes para la entrega de mensajes para los protocolos de la capa de aplicacin que utilizan los servicios UDP. Se incluye en cada mensaje UDP el puerto de origen (la cola de mensajes desde donde se envi el mensaje) y un puerto de destino (la cola de mensajes a los que se envi el mensaje). La Internet Assigned Numbers Authority (IANA) asigna nmeros de puerto, conocidas como los nmeros de puerto, a los protocolos especficos de la capa de aplicacin. Nmero de puerto 53 67 68 69 137 Protocolo de capa de aplicacin DNS BOOT server (Dynamic Host Configuration Protocol[DHCP]) BOOT client (DHCP) TFTP NetBIOS Name Service

138 161 445 520 1812, 1813

NetBIOS Datagram Service Simple Network Management Protocol (SNMP) Direct hosting of Server Message Block (SMB) datagrams over TCP/IP (also known as Microsoft-DS) RIP Remote Authentication Dial-In User Service (RADIUS)

Normalmente, el lado del servidor de un protocolo de capa de aplicacin escucha en el nmero de puerto conocido. El lado del cliente de un protocolo de capa de aplicacin utiliza ya sea el conocido nmero de puerto o, ms comnmente, un nmero de puerto asignado dinmicamente. Estos nmeros de puerto asignados dinmicamente se utilizan para la duracin del proceso y son tambin conocidos como puertos efmeros o de corta duracin. Cuando se recibe un mensaje UDP en el destino, IP comprueba la cabecera IP y, con base en el valor de 17 (011) en el campo de Protocolo, pasa el mensaje UDP, la direccin IP de origen, as como la direccin IP de destino para el componente de UDP. Despus de verificar la suma de comprobacin UDP, el componente de UDP verifica el puerto de destino. Si un proceso est escuchando en el puerto, UDP pasa el mensaje a la aplicacin. Si ningn proceso est escuchando en el puerto, UDP utiliza el componente ICMP para enviar mensaje de Destino de Puerto Inalcanzable al remitente, y luego descarta el mensaje UDP. 4.3 Direcciones de los Conectores A la combinacin de una direccin de IP y de puerto para una comunicacin se le llama direccin de conector o socket. Un socket ofrece toda la informacin que necesita un cliente o un servidor para identificar a su otro extremo. Cuando se crea un conector (socket) UDP, sus direcciones local y remota estn sin especificar. Se pueden enviar datagramas inmediatamente usando sendto o sendmsg con una direccin de destino vlida como argumento. Cuando se llama a connect sobre el conector, se enva la direccin de destino por defecto y a partir de ese momento se pueden enviar datagramas usando send o write sin especificar una direccin de destino. Todava es posible realizar envos a otros destinos pasando una direccin a sendto o sendmsg. Para poder recibir paquetes, primero se debe ligar el conector a una direccin local usando bind. Cuando ste no sea el caso, la capa de conectores le asignar automticamente un puerto local en la primera peticin de recepcin del usuario. Todas las operaciones de recepcin slo devuelven un paquete. Cuando el paquete es ms pequeo que el buffer pasado, slo se devuelven los datos del paquete y, cuando es mayor, el paquete se trunca y la bandera MSG_TRUNC se activa. Se pueden enviar o recibir opciones IP usando las opciones de conectores descritas en IP. Estas son procesadas por el ncleo slo cuando est activa la sysctl adecuada (pero todava se pasan al usuario incluso cuando est desactivada). Cuando en un envo est activa la opcin

MSG_DONTROUTE, la direccin de destino debe referirse a la direccin de una interfaz local y el paquete slo se enva a esa interfaz. UDP fragmenta un paquete cuando su longitud total excede la MTU (Unidad de Transmisin Mxima) de la interfaz. Una alternativa de red ms amigable es usar el descubrimiento de la MTU de la ruta como se describe en la seccin IP_PMTU_DISCOVER de IP. Para el formato de direccin, UDP utiliza el formato sockaddr_in de IPv4 el cual nos dice que una direccin de conector IP se define como una combinacin de una direccin de interfaz IP y un nmero de puerto. El protocolo IP bsico no proporciona nmeros de puerto. En los conectores directos, a sin_port se le asigna el protocolo IP.

Ilustracin 2 Estructura de sockaddr_in A sin_family siempre se le asigna el valor AF_INET. sin_port contiene el puerto con los bytes en orden de red. Los nmeros de puerto por debajo de 1024 se llaman puertos reservados. Slo los procesos con identificador de usuario efectivo 0 o la capacidad CAP_NET_BIND_SERVICE pueden realizar enlaces mediante bind a estos conectores. sin_addr es la direccin IP del anfitrin (host). El miembro s_addr de struct in_addr contiene la direccin de la interfaz del anfitrin con los bytes en orden de red. Slo se debera acceder a in_addr usando las funciones de biblioteca net_aton, inet_addr e inet_makeaddr, o directamente mediante el mecanismo de resolucin de nombres. Las direcciones IPv4 se dividen en direcciones unidestino, de difusin y multidestino. Las direcciones unidestino especifican una nica interfaz de un anfitrin, las direcciones de difusin especifican todos los anfitriones de una red y las direcciones multidestino identifican a todos los anfitriones de un grupo multidestino. Slo se pueden enviar datagramas o recibir datagramas de direcciones de difusin cuando est activa la opcin de conector SO_BROADCAST. 4.4 Formatos de los Mensajes UDP Longitud del mensaje UDP (16 bits). Especifica la longitud media en bytes del mensaje UDP, incluyendo la cabecera. Longitud mnima es de 8 bytes. Suma de verificacin UDP (16 bits, opcional). Suma de comprobacin de errores del mensaje. Para clculo se utiliza una pseudo cabecera que tambin incluye las direcciones IP origen y destino. Para conocer estos datos, el protocolo UDP debe interactuar con el protocolo IP.

Datos. Aqu viajan los datos que se envan las aplicaciones. Los mismos datos que enva la aplicacin origen son recibidos por la aplicacin destino despus de atravesar toda la Red de redes.

4.5. Encapsulado de UDP Los mensajes UDP estn encapsulados y se envan en datagramas IP, como se muestra en la siguiente ilustracin.

Das könnte Ihnen auch gefallen