1.
Introducción
2.
Transmisión De Datos En
Internet
4. Arquitectura
cliente-servidor.
5. El protocolo
TCP/IP.
6. TCP (Transmission Control
Protocol).
7. UDP (User Datagram
Protocol)
8. ICMP (Internet Control Message
Protocol)
9. IP (Internet
Protocol)
10. La dirección de
Internet.
11. Niveles físico y de
enlace: Ethernet.
12.
Routing.
13. Sistema de nombres por
dominio.
14. Servicios de Internet: el nivel
de
aplicación.
15. Transferencia de
ficheros.
16. Conexión
remota.
17. Correo
electrónico.
18.
El acceso a
Internet.
19. Otras fuentes de
información
La gran rapidez con la que Internet se ha expandido y
popularizado en los últimos años ha supuesto una
revolución
muy importante en el mundo de las comunicaciones, llegando a causar cambios en
muchos aspectos de la sociedad. Lo que
se conoce hoy como Internet es en realidad un
conjunto de redes independientes (de
área local y área extensa) que se encuentran
conectadas entre si, permitiendo el intercambio de datos y
constituyendo por lo tanto una red mundial que resulta el
medio idóneo para el intercambio de información, distribución de datos de todo tipo e
interacción personal con
otras personas.
2. Transmisión De Datos En
Internet
Una red de ordenadores permite
conectar a los ordenadores que la forman con la finalidad de
compartir información, como documentos o
bases de
datos, o recursos
físicos, como impresoras o
unidades de disco. Las redes suelen clasificarse
según su extensión en:
- LAN (Local Area Network): Son las redes de
área local. La extensión de este tipo de redes
suele estar restringida a una sala edificio, aunque
también podría utilizarse para conectar dos
más edificios próximos. - WAN (Wide Area Network): Son redes que cubren un
espacio muy amplio, conectando a ordenadores de una cuidad o un
país completo. Para ello se utilizan las líneas
de teléfono y otros medios de
transmisión más sofisticados, como pueden ser las
microondas.
La velocidad de
transmisión suele ser inferior que en las redes
locales.
Varias redes pueden conectarse entre S formando una
red lógica de área mayor. Para que la
transmisión entre todas ellas sea posible se emplean los
routers, que son los sistemas que
conectando físicamente varias redes se encargan de
dirigir la información por el camino adecuado. Cuando
las redes que se conectan son de diferente tipo y con protocolos
distintos se hace necesario el uso de los gateways, los cuales
además de encaminar la información también
son capaces de convertir los datos de un protocolo a
otro. Generalmente los términos router y
gateway se emplean indistintamente para referirse de forma
general a los sistemas
encargados del encaminamiento de datos en Internet.
Lo que se conoce como Internet es en realidad una red de
redes, la interconexión de otras redes independientes de
manera que puedan compartir información entre ellas a lo
largo de todo el planeta. Para ello es necesario el uso de un
protocolo de
comunicaciones
común. El protocolo que proporciona la compatibilidad
necesaria para la
comunicación en Internet es el TCP/IP.
Los protocolos de
comunicaciones definen las normas que
posibilitan que se establezca una comunicación entre varios equipos o
dispositivos, ya que estos equipos pueden ser diferentes entre
S.
Un interfaz, sin embargo, es el encargado de la
conexión física entre los
equipos, definiendo las normas para las
características eléctricas y
mecánicas de la conexión.
Exceptuando a los routers cualquier ordenador conectado
a Internet y, por tanto, capaz de compartir información
con otro ordenador se conoce con el nombre de host
(anfitrión). Un host debe identificarse de alguna manera
que lo distinga de los demás para poder recibir
o enviar datos. Para ello todos los ordenadores conectados a
Internet disponen de una dirección única y exclusiva. Esta
dirección, conocida como dirección
de Internet o dirección IP, es un
número de 32 bit que generalmente se representa en cuatro
grupos de 8
bit cada uno separados por puntos y en base decimal (esto es
así en la versión número 4 del protocolo IP,
pero no en la 6). Un ejemplo de dirección IP es el siguiente: 205.198.48.1.
El modelo OSI (Open
System Interconection) es utilizado por prácticamente la
totalidad de las redes del mundo. Este modelo fue
creado por el ISO (Organización Internacional de Normalización), y consiste en siete niveles
o capas donde cada una de ellas define las funciones que
deben proporcionar los protocolos con el propósito de
intercambiar información entre varios sistemas. Esta
clasificación permite que cada protocolo se desarrolle con
una finalidad determinada, lo cual simplifica el proceso de
desarrollo e
implementación. Cada nivel depende de los que están
por debajo de él, y a su vez proporciona alguna
funcionalidad a los niveles superiores.
Los siete niveles del modelo OSI son los
siguientes:
Aplicación | El nivel de aplicación es el destino |
Presentación | Se convierten e interpretan los datos que se |
Sesión | Encargado de ciertos aspectos de la |
Transporte | Transporta la información de una manera |
Red | Nivel encargado de encaminar los datos hacia su |
Enlace | Enlace de datos. Controla el flujo de los |
Físico | Se encarga de los aspectos físicos de la |
4. Arquitectura
cliente–servidor.
La arquitectura
cliente-servidor es una
forma específica de diseño
de aplicaciones, aunque también se conoce con este nombre
a los ordenadores en los que se estas aplicaciones son
ejecutadas. Por un lado, el cliente es el ordenador que se
encarga de efectuar una petición o solicitar un servicio. El
cliente no posee control sobre los
recursos, sino
que es el servidor el encargado de manejarlos. Por otro lado, el
ordenador remoto que actúa como servidor evalúa la
petición del cliente y decide aceptarla o rechazarla
consecuentemente. Una vez que el servidor acepta el pedido la
información requerida es suministrada al cliente que
efectuó la petición, siendo este último el
responsable de proporcionar los datos al usuario con el formato
adecuado. Finalmente debemos precisar que cliente y servidor no
tienen que estar necesariamente en ordenadores separados, sino
que pueden ser programas
diferentes que se ejecuten en el mismo ordenador.
TCP/IP es el protocolo común utilizado por todos
los ordenadores conectados a Internet, de manera que éstos
puedan comunicarse entre S. Hay que tener en cuenta que en
Internet se encuentran conectados ordenadores de clases muy
diferentes y con hardware y software incompatibles en
muchos casos, además de todos los medios y
formas posibles de conexión. Aquí se encuentra una
de las grandes ventajas del TCP/IP, pues este protocolo se
encargará de que la comunicación entre todos sea posible.
TCP/IP es compatible con cualquier sistema operativo
y con cualquier tipo de hardware.
TCP/IP no es un único protocolo, sino que es en
realidad lo que se conoce con este nombre es un conjunto de
protocolos que cubren los distintos niveles del modelo OSI. Los
dos protocolos más importantes son el TCP (Transmission
Control Protocol) y el IP (Internet Protocol), que son los que
dan nombre al conjunto. En Internet se diferencian cuatro niveles
o capas en las que se agrupan los protocolos, y que se relacionan
con los niveles OSI de la
siguiente manera:
- Aplicación: Se corresponde con los niveles OSI
de aplicación, presentación y sesión.
Aquí se incluyen protocolos destinados a proporcionar
servicios,
tales como correo
electrónico (SMTP), transferencia de ficheros
(FTP),
conexión remota (TELNET) y otros
más recientes como el protocolo HTTP (Hypertext
Transfer Protocol). - Transporte: Coincide con el nivel de transporte
del modelo OSI. Los protocolos de este nivel, tales como TCP y
UDP, se encargan de manejar los datos y proporcionar la
fiabilidad necesaria en el transporte
de los mismos. - ternet: Es el nivel de red del modelo OSI. Incluye al
protocolo IP, que se encarga de enviar los paquetes de
información a sus destinos correspondientes. Es
utilizado con esta finalidad por los protocolos del nivel de
transporte. - Enlace: Los niveles OSI correspondientes son el de
enlace y el nivel físico. Los protocolos que pertenecen
a este nivel son los encargados de la transmisión a
través del medio físico al que se encuentra
conectado cada host, como puede ser una línea punto a
punto o una red Ethernet.
El TCP/IP necesita funcionar sobre algún tipo de
red o de medio físico que proporcione sus propios
protocolos para el nivel de enlace de Internet. Por este motivo
hay que tener en cuenta que los protocolos utilizados en este
nivel pueden ser muy diversos y no forman parte del conjunto
TCP/IP. Sin embargo, esto no debe ser problemático puesto
que una de las funciones y
ventajas principales del TCP/IP es proporcionar una
abstracción del medio de forma que sea posible el
intercambio de información entre medios diferentes y
tecnologías que inicialmente son incompatibles.
Para transmitir información a través de
TCP/IP, ésta debe ser dividida en unidades de menor
tamaño. Esto proporciona grandes ventajas en el manejo de
los datos que se transfieren y, por otro lado, esto es algo
común en cualquier protocolo de comunicaciones. En TCP/IP
cada una de estas unidades de información recibe el nombre
de "datagrama" (datagram), y son conjuntos de
datos que se envían como mensajes
independientes.
6. TCP (Transmission
Control Protocol).
El protocolo de control de transmisión (TCP)
pertenece al nivel de transporte, siendo el encargado de dividir
el mensaje original en datagramas de menor tamaño, y por
lo tanto, mucho más manejables. Los datagramas
serán dirigidos a través del protocolo IP de forma
individual. El protocolo TCP se encarga además de
añadir cierta información necesaria a cada uno de
los datagramas. Esta información se añade al inicio
de los datos que componen el datagrama en forma de
cabecera.
La cabecera de un datagrama contiene al menos 160 bit
que se encuentran repartidos en varios campos con diferente
significado. Cuando la información se divide en datagramas
para ser enviados, el orden en que éstos lleguen a su
destino no tiene que ser el correcto. Cada uno de ellos puede
llegar en cualquier momento y con cualquier orden, e incluso
puede que algunos no lleguen a su destino o lleguen con
información errónea. Para evitar todos estos
problemas el
TCP numera los datagramas antes de ser enviados, de manera que
sea posible volver a unirlos en el orden adecuado. Esto permite
también solicitar de nuevo el envío de los
datagramas individuales que no hayan llegado o que contengan
errores, sin que sea necesario volver a enviar el mensaje
completo.
Formato de la cabecera |
Puerto origen Puerto destino Número de secuencia Señales de confirmación Tamaño Reservado Bits de control Window Checksum Puntero a datos urgentes
|
En cualquier caso el tamaño de la cabecera debe
ser múltiplo de 32 bits, por lo que puede ser necesario
añadir un campo de tamaño variable y que contenga
ceros al final para conseguir este objetivo
cuando se incluyen algunas opciones. El campo de tamaño
contiene la longitud total de la cabecera TCP expresada en el
número de palabras de 32 bits que ocupa. Esto permite
determinar el lugar donde comienzan los datos.
Dos campos incluidos en la cabecera y que son de
especial importancia son los números de puerto de origen y
puerto de destino. Los puertos proporcionan una manera de
distinguir entre las distintas transferencias, ya que un mismo
ordenador puede estar utilizando varios servicios o
transferencias simultáneamente, e incluso puede que por
medio de usuarios distintos. El puerto de origen contendrá
un número cualquiera que sirva para realizar esta
distinción. Además, el programa cliente
que realiza la petición también se debe conocer el
número de puerto en el que se encuentra el servidor
adecuado. Mientras que el programa del
usuario utiliza números prácticamente aleatorios,
el servidor deber tener asignado un número estándar
para que pueda ser utilizado por el cliente. (Por ejemplo, en el
caso de la transferencia de ficheros FTP el
número oficial es el 21). Cuando es el servidor el que
envía los datos, los números de puertos de origen y
destino se intercambian.
En la transmisión de datos a través del
protocolo TCP la fiabilidad es un factor muy importante. Para
poder detectar
los errores y pérdida de información en los
datagramas, es necesario que el cliente envíe de nuevo al
servidor unas señales de confirmación una vez que
se ha recibido y comprobado la información
satisfactoriamente. Estas señales se incluyen en el campo
apropiado de la cabecera del datagrama (Acknowledgment Number),
que tiene un tamaño de 32 bit. Si el servidor no obtiene
la señal de confirmación adecuada transcurrido un
período de tiempo razonable,
el datagrama completo se volverá a enviar. Por razones de
eficiencia los
datagramas se envían continuamente sin esperar la
confirmación, haciéndose necesaria la
numeración de los mismos para que puedan ser ensamblados
en el orden correcto.
También puede ocurrir que la información
del datagrama llegue con errores a su destino. Para poder
detectar cuando sucede esto se incluye en la cabecera un campo de
16 bit, el cual contiene un valor
calculado a partir de la información del datagrama
completo (checksum). En el otro extremo el receptor vuelve a
calcular este valor,
comprobando que es el mismo que el suministrado en la cabecera.
Si el valor es distinto significaría que el datagrama es
incorrecto, ya que en la cabecera o en la parte de datos del
mismo hay algún error.
La forma en que TCP numera los datagramas es contando
los bytes de datos que contiene cada uno de ellos y
añadiendo esta información al campo correspondiente
de la cabecera del datagrama siguiente. De esta manera el primero
empezará por cero, el segundo contendrá un
número que será igual al tamaño en bytes de
la parte de datos del datagrama anterior, el tercero con la suma
de los dos anteriores, y así sucesivamente. Por ejemplo,
para un tamaño fijo de 500 bytes de datos en cada
datagrama, la numeración sería la siguiente: 0 para
el primero, 500 para el segundo, 1000 para el tercero,
etc.
Existe otro factor más a tener en cuenta durante
la transmisión de información, y es la potencia y
velocidad con
que cada uno de los ordenadores puede procesar los datos que le
son enviados. Si esto no se tuviera en cuenta, el ordenador de
más potencia
podría enviar la información demasiado
rápido al receptor, de manera que éste no pueda
procesarla. Este inconveniente se soluciona mediante un campo de
16 bit (Window) en la cabecera TCP, en el cual se introduce un
valor indicando la cantidad de información que el receptor
está preparado para procesar. Si el valor llega a cero
será necesario que el emisor se detenga. A medida que la
información es procesada este valor aumenta indicando
disponibilidad para continuar la recepción de
datos.
Protocolos alternativos a
TCP.
TCP es el protocolo más utilizado para el nivel
de transporte en Internet, pero además de éste
existen otros protocolos que pueden ser más convenientes
en determinadas ocasiones. Tal es el
caso de UDP y ICMP.
7. UDP (User Datagram Protocol)
El protocolo de datagramas de usuario (UDP) puede ser
la alternativa al TCP en algunos casos en los que no sea
necesario el gran nivel de complejidad proporcionado por el
TCP. Puesto que UDP no admite numeración de los
datagramas, éste protocolo se utiliza principalmente
cuando el orden en que se reciben los mismos no es un factor
fundamental, o también cuando se quiere enviar
información de poco tamaño que cabe en un
único datagrama.
Cuando se utiliza UDP la garantía de que un
paquete llegue a su destino es mucho menor que con TCP debido a
que no se utilizan las señales de confirmación.
Por todas estas características la cabecera del UDP es
bastante menor en tamaño que la de TCP. Esta
simplificación resulta en una mayor eficiencia en
determinadas ocasiones.
Un ejemplo típico de una situación en la
que se utiliza el UDP es cuando se pretende conectar con un
ordenador de la red, utilizando para ello el nombre del
sistema.
Este nombre tendrá que ser convertido a la
dirección IP que le corresponde y, por tanto,
tendrá que ser enviado a algún servidor que posea
la base de datos
necesaria para efectuar la conversión. En este caso es
mucho más conveniente el uso de UDP.
8. ICMP (Internet Control
Message Protocol)
El protocolo de mensajes de control de Internet (ICMP)
es de características similares al UDP, pero con un
formato aún más simple. Su utilidad no
está en el transporte de datos "de usuario", sino en los
mensajes de error y de control necesarios para los sistemas de
la red.
Página siguiente |