16.04.2015 Views

Redes de computadores

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ª FUOC • XP04/90786/00020<br />

Software libre<br />

La figura anterior muestra la unidad <strong>de</strong> datos <strong>de</strong>l protocolo UDP y su<br />

encapsulamiento en un paquete IP. Cada operación <strong>de</strong> salida <strong>de</strong> un<br />

datagrama UDP provoca la generación <strong>de</strong> un paquete IP.<br />

El datagrama UDP consta <strong>de</strong> una cabecera y un cuerpo para encapsular<br />

los datos. La cabecera consta <strong>de</strong> los elementos siguientes:<br />

Nota<br />

Hay muchas aplicaciones<br />

que limitan la medida <strong>de</strong><br />

sus buffers <strong>de</strong> transmisión y<br />

recepción por <strong>de</strong>bajo <strong>de</strong> la<br />

medida máxima <strong>de</strong> un datagrama<br />

UDP. Por ejemplo,<br />

es típico encontrar aplicaciones<br />

que proporcionan,<br />

por <strong>de</strong>fecto, medidas máximas<br />

<strong>de</strong>l datagrama UDP <strong>de</strong><br />

8.192 bytes. Este valor proviene<br />

<strong>de</strong> la cantidad <strong>de</strong> datos<br />

<strong>de</strong>l usuario que el NFS<br />

(network file system) pue<strong>de</strong><br />

leer o escribir por <strong>de</strong>fecto.<br />

• Los campos Puerto <strong>de</strong> origen y Puerto <strong>de</strong> <strong>de</strong>stino, que i<strong>de</strong>ntifican<br />

las aplicaciones en los terminales <strong>de</strong> origen y <strong>de</strong> <strong>de</strong>stino.<br />

Cada puerto tiene 16 bits.<br />

• El campo Longitud indica la longitud, en bytes, <strong>de</strong>l datagrama<br />

UDP incluyendo la cabecera UDP (es la diferencia <strong>de</strong> la longitud<br />

<strong>de</strong>l datagrama IP menos la cabecera IP). Como la longitud máxima<br />

<strong>de</strong> un datagrama IP es <strong>de</strong> 65.535 bytes, con una cabecera estándar<br />

<strong>de</strong> 20 bytes, la longitud máxima <strong>de</strong> un datagrama UDP es<br />

<strong>de</strong> 65.515 bytes.<br />

• El campo Checksum (16 bits) es opcional y protege tanto la cabecera<br />

como los datos UDP (es preciso recordar que el checksum<br />

<strong>de</strong>l datagrama IP sólo cubre la cabecera IP). Cuando el UDP recibe<br />

un datagrama y <strong>de</strong>termina que hay errores, lo <strong>de</strong>scarta y no<br />

lo entrega a ninguna aplicación.<br />

Nota<br />

ANOTACIONES<br />

El cálculo <strong>de</strong>l checksum en el UDP es muy parecido al<br />

cálculo <strong>de</strong>l checksum en el IP (suma en complemento<br />

a 1 <strong>de</strong> palabras <strong>de</strong> 16 bits), con la particularidad <strong>de</strong><br />

que la longitud <strong>de</strong>l datagrama UDP pue<strong>de</strong> ser par o<br />

impar. En caso <strong>de</strong> que sea impar, se le aña<strong>de</strong> un 0 al<br />

final <strong>de</strong>l datagrama para calcular el checksum (este 0<br />

no se transmite). Para calcular el checksum, el UDP utiliza<br />

una seudocabecera <strong>de</strong> 12 bytes con algunos <strong>de</strong><br />

los campos IP. Esta última no se transmite; el UDP sólo<br />

la utiliza para calcular el checksum y le sirve para comprobar<br />

que la información que le proporciona el IP sea<br />

realmente para él.<br />

132

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!