garl1

 

Capítulo 1


Introducción a las Redes

1.1 Historia
1.2 Redes UUCP

1.2.1 Como usar UUCP

1.3 Redes TCP/IP

1.3.1 Introducción a las Redes TCP/IP
1.3.2 Ethernets
1.3.3 Otros tipos de Hardware
1.3.4 El Protocolo IP (Internet Protocol)
1.3.5 IP en Líneas Serie, SLIP
1.3.6 El Protocolo de Control de Transmisión, TCP
1.3.7 El Protocolo de Datagramas de Usuario, UDP
1.3.8 Más sobre Puertos
1.3.9 La Librería de Sockets

1.4 Redes con Linux

1.4.1 Diferentes Etapas de Desarrollo
1.4.2 Donde Conseguir el Código

1.5 Mantenimiento del Sistema

1.5.1 Seguridad del Sistema

1.6 Vistazo a los Siguientes Capítulos

1.1 Historia

La idea de red es probablemente tan vieja como la de las telecomunicaciones. Consideremos a la gente que vivía en la edad de piedra, donde los tambores se habrían utilizado para transmitir mensajes entre individuos. Suponga que el cavernícola A quiere invitar al cavernícola B a un partido de lanzamiento de rocas contra el otro, pero viven demasiado lejos como para que B oiga a A golpear su tambor. ¿Cuales son las opciones de A? Podría

1) ir a la choza de B,
2) hacerse con un tambor más grande, o
3) pedirle a C, que vive a mitad de camino entre los dos, que retransmita el mensaje. La última opción es lo que se llama una red.

Claro, que ya ha pasado un tiempo desde los primeros intentos de nuestros antepasados.

Hoy en día tenemos ordenadores que hablan entre sí a través de vastas conexiones de cables, fibras ópticas, microondas, y otros medios parecidos, para quedar para el partido del sábado.

A continuación trataremos sobre las maneras en que esto se realiza, pero olvidándonos de los cables, así como de la parte del partido.

En esta Guía escribiremos sobre dos tipos de redes: las basadas en UUCP, y las basadas en TCP/IP. Estos son conjuntos de protocolos y paquetes de software que proporcionan medios para transportar datos entre dos ordenadores. En este capítulo veremos ambos tipos y discutiremos sus principios fundamentales.

Definiremos una red como un conjunto de nodos que son capaces de comunicarse entre sí, a menudo contando con los servicios de varios nodos especializados que conmutan datos entre los participantes. Los nodos suelen ser ordenadores, aunque no es necesario; podemos considerar también terminales X o impresoras inteligentes como nodos. Pequeñas aglomeraciones de nodos también se llaman instalaciones.1

La comunicación seria imposible sin algún tipo de lenguaje o código. En las redes de ordenadores, estos lenguajes son llamados colectivamente protocolos. Sin embargo, no debería pensar en protocolos escritos, sino más bien en el código de comportamiento altamente formalizado que se observa cuando se encuentran los jefes de estado. De un modo muy similar, los protocolos usados por las redes de ordenadores no son sino normas muy estrictas para el intercambio de mensajes entre dos o más nodos.

 

1.2 Redes UUCP

UUCP es una abreviatura de Unix-to-Unix Copy (Copia de Unix a Unix). Comenzó siendo un paquete de programas para transferir ficheros sobre líneas serie, programar esas transferencias, e iniciar la ejecución de programas en el lugar remoto. Ha experimentado grandes cambios desde su primera implementación a finales de los setenta, pero aun es bastante espartano en los servicios que ofrece. Su principal aplicación es todavía en redes de área metropolitana (WAN) basadas en enlaces telefónicos.

 UUCP comenzó a desarrollarse por los Laboratorios Bell en 1977 para la comunicación entre sus laboratorios de desarrollo de Unix. A mediados de 1978, esta red ya conectaba a mas de 80 centros. Se ejecutaban aplicaciones de correo electrónico, así como de impresión remota; sin embargo, el uso principal del sistema era distribuir software nuevo y mejoras.2 Hoy día, UUCP ya no está confinado en el entorno UNIX. Hay versiones comerciales disponibles para diversas plataformas, incluyendo AmigaOS, DOS, TOS de Atari, etc.

Una de las principales desventajas de las redes UUCP es su bajo ancho de banda. Por un lado, el equipo telefónico establece un limite rígido en la tasa máxima de transferencia. Por otro lado, los enlaces UUCP raramente son conexiones permanentes; en su lugar, los nodos se llaman entre sí a intervalos regulares. Es por ello, que la mayoría del tiempo que le lleva a un mensaje viajar por una red UUCP permanece atrapado en el disco de algún nodo, esperando al establecimiento de la próxima conexión.

A pesar de estas limitaciones, aun hay muchas redes UUCP funcionando en todo el mundo, utilizado principalmente por aficionados, ya que ofrecen acceso de red a usuarios privados a precios razonables. La razón fundamental de la popularidad del UUCP es que es baratísimo comparado con tener el ordenador conectado al Gran Cable de Internet. Para hacer de su ordenador un nodo UUCP, todo lo que necesita es un módem, software UUCP, y otro nodo UUCP que desee suministrarle correo y noticias.

_____________________________________________
1 N. del T.: Del inglés site
2 No parece que con el tiempo haya cambiado mucho esto. . .

 

1.2.1 Como usar UUCP

La idea que hay detrás de UUCP es bastante simple: como su nombre indica, básicamente copia ficheros de un nodo a otro, pero también permite realizar ciertas acciones en el nodo remoto.

Suponga que le esta permitido que su máquina acceda a un nodo hipotético llamado swim, y le va ha hacer ejecutar el comando de impresión lpr para Ud. Entonces, podría escribir lo siguiente en su línea de comandos para que le imprima este libro en swim:3

$ uux -r swim!lpr !netguide.dvi

Esto hace que uux, un comando del repertorio UUCP, planifique un trabajo para swim. Este trabajo consta del fichero de entrada, netguide.dvi, y la petición de enviar este fichero a lpr. La opción -r indica a uux que no llame al sistema remoto inmediatamente, sino que almacene el trabajo hasta que se establezca la próxima conexión. A esto se le llama spooling, o almacenamiento en la cola.

Otra propiedad de UUCP es que permite reenviar trabajos y ficheros a través de varios nodos, suponiendo que éstos colaboren. Asumiremos que swim, el nodo del ejemplo anterior, tiene un enlace UUCP con groucho, el cual mantiene un gran numero de aplicaciones UNIX. Para transferir el fichero tripwire-1.0.tar.gz hasta su máquina debería indicarlo así:

$ uucp -mr swim!groucho!~/security/tripwire-1.0.tar.gz trip.tgz

El trabajo creado pedirá a swim que traiga el fichero desde groucho, y lo envíe hasta su máquina, donde UUCP lo almacenara en trip.tgz y le notificará por correo la llegada del fichero. Esto ocurrirá en tres pasos. Primero, su máquina envía el trabajo a swim.

La siguiente vez que swim establezca contacto con groucho, se transferirá el fichero de groucho a swim. El último paso es la transferencia del mismo desde swim hasta su máquina.

Los servicios más importantes que proporcionan las redes UUCP hoy en día son el correo electrónico y las noticias. Lo introduciremos brevemente y después lo veremos en mas detalle.

El correo electrónico - e-mail4 para abreviar - le permite intercambiar mensajes con usuarios de nodos remotos sin tener realmente que saber como acceder a estos nodos. La tarea de dirigir un mensaje desde su máquina destino la realiza enteramente el sistema de manejo de correo. En un entorno UUCP, el correo generalmente se transporta ejecutando el comando rmail en el nodo vecino, pasándole la dirección del receptor y el mensaje. Rmail reenviará entonces el mensaje a otro nodo, y seguirá así, hasta que alcance el nodo destino.

_____________________________________________
3 Si usa bash, la shell GNU Bourne Again SHell, tendría que quitar los signos de exclamación, porque los usa como su carácter de histórico.
4 En el idioma castellano comienzan a aparecer adaptaciones mas o menos afortunadas, como e-milio

 

Veremos esto en detalle en el capítulo 13.

La mejor forma de definir el servicio de noticias es considerarlo como un sistema de tablón de anuncios distribuido. Muy a menudo, este termino se refiere a las noticias de Usenet, que es, con mucho, la mas conocida red de intercambio de noticias, con un número de nodos participantes estimado en 120.0005. Los orígenes de Usenet se remontan a 1979, cuando, tras la aparición del UUCP con el nuevo Unix V7, tres estudiantes graduados tuvieron la idea de un intercambio de información general entre la comunidad Unix. Estos escribieron algunos scripts, creando el primer sistema de noticias en red. En 1980, esta red conectaba duke, unc, y phs, y dos Universidades de Carolina del Norte, de forma aislada. Usenet creció más todavía posteriormente. Aunque su origen fue como una red basada en UUCP, ya no esta limitada a un único tipo de redes.

La unidad básica de información es el articulo, que puede ser enviado a una jerarquía de grupos de noticias dedicadas a temas específicos. La mayoría de los nodos reciben únicamente una selección de todos los grupos de noticias, que transportan una media de 60Mb6 de artículos por día.

En el mundo UUCP, las noticias generalmente se envían a través de un enlace UUCP, recolectando todos los artículos de los grupos de noticias solicitados, y empaquetándolos en varios lotes7 . Estos se envían al lugar receptor, donde se pasan al comando rnews que los desempaqueta y procesa posteriormente.

Finalmente, UUCP es también el medio elegido por muchos servidores de ficheros que ofrecen acceso publico. Generalmente podrá acceder a ellos llamando con UUCP, accediendo como usuario invitado, y transferiéndose los archivos desde un área de ficheros públicamente accesible. Estas cuentas de invitado tienen, a menudo, un nombre de acceso y password como UUCP/nuucp o algo similar.

 

1.3 Redes TCP/IP

Aunque UUCP puede resultar una elección razonable para enlaces de red mediante llamada de bajo coste, hay muchas situaciones en las que su técnica de almacenamiento y reenvío se muestra demasiado inflexible, por ejemplo en Redes de Area Local (LANs, o RALs). Estas redes están compuestas generalmente por un pequeño numero de maquinas localizadas en el mismo edificio, o incluso en la misma planta, que están interconectadas para proporcionar un entorno de trabajo homogéneo. Es típico que se quiera compartir ficheros entre estos nodos, o ejecutar aplicaciones distribuidas en diferentes máquinas.

_____________________________________________
5 Teniendo en cuenta que hace tiempo que se escribió este libro, es seguro que son muchos más.
6 De nuevo son datos no actualizados
7 N. del T.: Del inglés batches

 

Estas tareas requieren una aproximación completamente diferente a las redes. En lugar de reenviar ficheros completos con una descripción del trabajo, todos los datos se fragmentan en pequeñas unidades (paquetes), que se envían inmediatamente al nodo destino, donde son reensamblados. Este tipo de redes son llamadas redes de intercambio de paquetes. Entre otras cosas, esto permite ejecutar aplicaciones interactivas a través de la red. El coste de esto supone, por supuesto, una complejidad adicional al software.

La solución que han adoptado los sistemas UNIX _ y muchos no-un?x _ es conocida como TCP/IP. En esta sección echaremos un vistazo a sus conceptos básicos.

 

1.3.1 Introducción a las Redes TCP/IP

El TCP/IP tiene sus orígenes en un proyecto de investigación fundado en Estados Unidos por el DARPA (Defense Advanced Research Projects Agency, Agencia de Proyectos Avanzados de Investigación en Defensa) en 1969. Esta fue una red experimental, la red ARPANET, que paso a ser operativa en 1975, después de haber demostrado ser un éxito.

En 1983, fue adoptado como estándar el nuevo conjunto de protocolos TCP/IP, y todos los nodos de la red pasaron a utilizarlo. Cuando ARPANET por fin dio paso a Internet (con la propia ARPANET integrándose en su existencia en 1990), el uso del TCP/IP se había extendido a redes más allá de la propia Internet. Las más destacables son las redes locales UNIX, pero con la llegada de los equipos telefónicos digitales rápidos, como la RDSI, también tiene un futuro prometedor como transporte en redes telefónicas.

Para ilustrar las explicaciones que demos en las siguientes secciones, tomaremos como ejemplo una red típica: la de una universidad, concretamente la hipotética Universidad Groucho Marx (GMU) situada, por ejemplo, en algún lugar de Libertonia. En esta universidad, la mayoría de los departamentos mantienen sus propias redes de área local, mientras que algunos comparten una, y otros poseen varias. Todos ellos están interconectados, y están enganchados a Internet a través de un solo enlace de alta velocidad.

Supongamos una máquina Linux conectada a una LAN de nodos UNIX en el Departamento de Matemáticas, y su nombre es erdos. Para acceder a un nodo del Departamento de Físicas, por ejemplo quark, introducirá el siguiente comando:

$ rlogin quark.physics
Last login: Mon Feb 2 21:06:19 on tty1
Linux 2.0.0 #1 Sun Dec 7 19:07:05 MET 1997 (POSIX)
[...]

En la línea de comandos, introducirá su nombre de acceso, pongamos que es Andrés, y su clave. Entonces dispondrá de una shell de quark, sobre la que puede escribir como si estuviera sentado en la consola del sistema. Tras salir de la shell volverá a tener la línea de comandos de su propia máquina. Acaba de utilizar una de las aplicaciones de interactividad instantánea que proporciona TCP/IP: el acceso remoto.

Mientras este conectado a quark, podría también desear ejecutar una aplicación X, como un programa de dibujo de funciones, o un visor de Postscript. Para indicar a esta aplicación que desea ver las ventanas en su monitor local, debe modificar la variable de entorno DISPLAY:

$ export DISPLAY=erdos.maths:0.0

Si pone en marcha ahora su aplicación, esta contactara con su servidor X en lugar del de quark, y mostrara todas las ventanas en su monitor. Por supuesto, esto requiere que este ejecutando X11 en erdos. La clave esta en que TCP/IP permite a quark y a erdos enviarse paquetes X11 en ambos sentidos para darle a Ud. la impresión de que esta en un único sistema. La red es casi transparente en este caso.

Otra aplicación muy importante en redes TCP/IP es NFS, abreviatura de Network File System (Sistema de Ficheros de Red). Es otra forma de hacer trasparente la red, porque básicamente permite montar jerarquías de directorios de otras maquinas, de modo que aparezcan como sistemas de ficheros locales. Por ejemplo, todos los directorios "home", o personales, de los usuarios pueden estar en una máquina servidor central, desde la cual montan los directorios el resto de maquinas de la LAN. El efecto de esto es que los usuarios pueden acceder a cualquier máquina, y encontrarse a sí mismos en el mismo directorio.

De forma similar, es posible instalar aplicaciones que requieren gran cantidad de espacio en disco (tales como TEX) en una única máquina, y exportar estos directorios a otras maquinas.

Volveremos sobre NFS en el capítulo 11.

Por supuesto, esto son solo ejemplos de lo que se puede hacer en un entorno de redes TCP/IP: las posibilidades son casi ilimitadas.

Ahora echaremos una mirada mas de cerca al modo en que trabaja TCP/IP. Esto es necesario para comprender como y por que tiene que configurar su máquina. Comenzaremos examinando el hardware, y poco a poco recorreremos todo el camino.

 

1.3.2 Ethernets

El tipo de hardware mas utilizado en LANs es lo que comúnmente conocemos como Ethernet. Consta de un solo cable con los nodos colgando de él a través de conectores, clavijas o transceptores. Las ethernet simples, son baratas de instalar, lo que unido a un flujo de transferencia neto de 10 Megabits por segundo avala gran parte de su popularidad.

Hay tres tipos de Ethernet, en función de su cable, llamadas gruesas, finas y de par trenzado. Tanto el fino como el grueso utilizan cable coaxial, difiriendo en el grosor y el modo de conectar este cable a los nodos. El Ethernet fino emplea conectores "BNC" con forma de T, que se pinchan en el cable y se enganchan a los conectores de la parte trasera del ordenador. El Ethernet grueso requiere que realice un pequeño agujero en el cable, y conecte un transceptor utilizando un "conector vampiro". Entonces se pueden conectar uno o más nodos al transceptor. Los cables Ethernet fino y grueso pueden alcanzar una distancia de 200 y 500 metros, respectivamente, y es por ello que se les llama también 10base-2 y 10base-5. El par trenzado usa un cable hecho de dos hilos de cobre como las que se encuentran en las instalaciones telefónicas ordinarias, pero generalmente necesitan hardware adicional. También se conoce como 10base-T.

A pesar de que añadir un nodo a una Ethernet gruesa es un poco lioso, eso no tirará abajo la red; sin embargo, para añadir un nodo en una instalación de cable fino, se debe interrumpir el servicio de red al menos por unos minutos ya que se debe cortar el cable para insertar el conector.

La mayoría de gente prefiere el Ethernet fino porque es barato: las tarjetas de PC pueden encontrarse por unos 50 dólares americanos (unas 5000 pesetas), o incluso menos, y el cable esta por unos centavos el metro. Sin embargo, para instalaciones de gran escala, es más apropiado el Ethernet grueso. Por ejemplo, la Ethernet del Departamento de Matemáticas de la GMU utiliza Ethernet gruesa, de modo que no se interrumpe el tráfico cada vez que se añade un nodo a la red.

Uno de los inconvenientes de la tecnología Ethernet es su limitada longitud de cable, que imposibilita cualquier uso fuera de las LANs. Sin embargo, pueden enlazarse varios segmentos de Ethernet entre sí utilizando repetidores, puentes o encaminadores8. Los repetidores simplemente copian las señales entre dos o más segmentos, de forma que todos los segmentos juntos actúan como si fuese una única Ethernet. Debido a requisitos de tiempos, no puede haber mas de cuatro repetidores entre cualquier par de nodos de la red. Los puentes y encaminadores son mas sofisticados, analizan los datos de entrada y los reenvían solo si el nodo receptor no esta en la Ethernet local.

Ethernet funciona como un sistema de bus, donde un nodo puede mandar paquetes (o tramas) de hasta 1500 bytes a otro nodo de la misma Ethernet. Cada nodo se direcciona por una dirección de seis bytes grabada en el firmware de su tarjeta Ethernet. Estas direcciones se especifican generalmente como una secuencia de números hexadecimales de dos dígitos separados por dos puntos, como en aa:bb:cc:dd:ee:ff.

_____________________________________________
8 N. del T.: Respectivamente, repeaters, bridges y routers

 

Una trama enviada por una estación la ven todas las estaciones conectadas, pero solo el nodo destinatario la toma y la procesa. Si dos estaciones intentan emitir al mismo tiempo, se produce una colisión, que se resuelve por parte de las dos estaciones abortando el envío, y reintentándolo al cabo de un rato.

 

1.3.3 Otros tipos de Hardware

En instalaciones mayores, como la Universidad de Groucho Marx, Ethernet no es el único tipo de red que puede utilizarse. En la Universidad de Groucho Marx cada LAN de un departamento esta enlazada a la troncal del campus, que es un cable de fibra óptica funcionando en FDDI (Fiber Distributed Data Interface). FDDI emplea un enfoque totalmente diferente para transmitir datos, que básicamente implica el envío de un numero de testigos, de modo que una estación solo pueda enviar una trama si captura un testigo. La principal ventaja de FDDI es una velocidad de hasta 100 Mbps, y una longitud de cable máxima de hasta 200 km.

Para enlaces de red de larga distancia, se utiliza frecuentemente un tipo distinto de equipos, que se basa en el estándar X.25. Muchas de las llamadas Redes Publicas de Datos, como Tymnet en Estados Unidos, Datex-P en Alemania, o Iberpac en España, ofrecen este servicio. X.25 requiere un hardware especial, llamado Ensamblador/Desensamblador de Paquetes o PAD. X.25 define un conjunto de protocolos de red de derecho propio, pero sin embargo se usa frecuentemente para conectar redes bajo TCP/IP y otros protocolos. Ya que los paquetes IP no se pueden convertir de forma simple en X.25 (y viceversa), estos deben ser encapsulados en paquetes X.25 y enviados a través de la red.

 

Frecuentemente, los radioaficionados usan sus propios equipos de radio para conectar sus ordenadores en red; esto se llama packet radio o ham radio. El protocolo utilizado por el packet radio es el llamado AX.25, que deriva del X.25.

Otras técnicas implican el uso de las lentas pero baratas líneas serie para acceder bajo demanda. Esto requiere aun otros protocolos para la transmisión de paquetes, como SLIP o PPP, que se describen mas adelante.

 

1.3.4 El Protocolo IP (Internet Protocol)

Por supuesto, Ud. no querrá que su red este limitada a una Ethernet. Idealmente, Ud. desearía poder acceder a la red sin importarle ni el hardware del que dispone ni el número de subestaciones. Por ejemplo, en instalaciones grandes como la Universidad de Groucho Marx, habrá varias Ethernets separadas, que han de conectarse de alguna manera. En la GMU, el departamento de matemáticas tiene dos Ethernets: una red de maquinas rápidas para profesores y graduados, y otra con maquinas mas lentas para estudiantes. Ambas redes están colgadas de la red troncal FDDI del campus.

Esta conexión se gestiona con un nodo dedicado, denominado pasarela, o gateway, que maneja los paquetes entrantes y salientes copiándolos entre las dos Ethernets y el cable de fibra óptica. Por ejemplo, si se encuentra en el Departamento de Matemáticas, y quiere acceder a quark situada en la LAN del Departamento de Físicas desde su máquina Linux, el software de red no puede mandar paquetes a quark directamente, porque no esta en la misma Ethernet. Por tanto, tiene que confiar en la pasarela para que actúe como retransmisor. La pasarela (llamémosla sophus) reenvía entonces estos paquetes a su pasarela homologa niels del Departamento de Físicas, usando la troncal, y por fin niels los entrega a la máquina destino. El flujo de datos entre erdos y quark se muestra en la figura 1.1 (con disculpas a Guy L. Steele).

Este esquema de envío de datos al nodo remoto se llama encaminamiento, y en este contexto a los paquetes se les denomina a menudo datagramas. Para facilitar las cosas, el intercambio de datagramas esta gobernado por un único protocolo que es independiente del hardware utilizado: IP, o Internet Protocol. En el capítulo 2, trataremos el IP y el encaminamiento en mayor detalle.

El principal beneficio del IP es que convierte a redes físicamente distintas en una red aparentemente homogénea. A esto se le llama internetworking (interconexión de redes), y a la resultante "meta-red" se la denomina Internet. Observe aquí la sutil diferencia entre una Internet y La Internet. El último es el nombre oficial de una Internet global particular.

Claro que el IP también necesita un esquema de direccionamiento independiente del hardware. Esto se consigue asignando a cada nodo un número único de 32 bits, que define su dirección IP. Una dirección IP se escribe normalmente como 4 números en decimal, uno por cada división de 8 bits, y separados por puntos. Por ejemplo, quark podría tener una dirección IP 0x954C0C04, que se escribiría como 149.76.12.4. A este formato se le llama notación de puntos.

Se dará cuenta de que ahora tenemos tres tipos distintos de direcciones: primero, tenemos el nombre del nodo, quark, después tenemos las direcciones IP, y por fin están las direcciones hardware, como la dirección Ethernet de 6 bytes. De alguna forma todas ellas deben relacionarse, de modo que cuando escriba rlogin quark, se le pueda pasar la dirección IP al software de red; y cuando el nivel IP envíe datos a la Ethernet del Departamento de Físicas, de algún modo tiene que encontrar a que dirección Ethernet corresponde la dirección IP. Lo cual no resulta trivial.

 

Figura 1.1: Los tres pasos para enviar un datagrama desde erdos a quark.

 

No entraremos en esto aquí, sino que lo dejamos para el capítulo 2. De momento, es suficiente con indicar que estos pasos para encontrar las direcciones se llaman resolución de nombres, para mapear nombres de nodo con direcciones IP, y resolución de direcciones, para hacer corresponder estas últimas con direcciones hardware.

 

1.3.5 IP en Líneas Serie, SLIP

Para líneas serie se usa frecuentemente el estándar "de facto" conocido como SLIP o Serial Line IP (IP sobre línea serie). Una modificación del SLIP es el CSLIP, o SLIP Comprimido, que realiza compresión de las cabeceras IP para aprovechar el bajo ancho de banda que proporcionan los enlaces serie.9 Un protocolo serie distinto es el PPP, o Point-to-Point Protocol (Protocolo Punto a Punto). PPP dispone de muchas mas características que SLIP, incluyendo una fase de negociación del enlace. Su principal ventaja sobre SLIP es, sin embargo, que no se limita a transportar datagramas IP, sino que se diseño para permitir la transmisión de cualquier tipo de datagramas.

 

1.3.6 El Protocolo de Control de Transmisión, TCP

Pero la historia no se acaba con el envío de datagramas de un nodo a otro. Si desea acceder a quark, necesita disponer de una conexión fiable entre su proceso rlogin en erdos y el proceso de shell en quark. Para ello, la información enviada en uno y otro sentido debe dividirse en paquetes en el origen, y ser reensamblada en un flujo de caracteres por el receptor. Esto que parece trivial, implica varias tareas complejas.

Una cosa importante a saber sobre IP es que, por si solo, no es fiable. Suponga que diez personas de su Ethernet comienzan a transferirse la última versión de XFree86 del servidor de FTP de GMU. La cantidad de trafico generada por esto podría ser excesiva para que la maneje la pasarela, porque es demasiado lenta, y anda escasa de memoria. Si en ese momento Ud. envía un paquete a quark, sophus podría tener agotado el espacio del buffer durante un instante y por tanto no seria capaz de reenviarlo. IP resuelve este problema simplemente descartándolo. El paquete se pierde irrevocablemente. Lo cual traslada la responsabilidad de comprobar la integridad y exactitud de los datos a los nodos extremos, y