Protocolos de internet

1,251 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,251
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
22
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Protocolos de internet

  1. 1. PROTOCOLOS DE INTERNETHerramientas de Colaboración Digital José Francisco González Un protocolo esun método estándar que permite la comunicación entre procesos (quepotencialmente se ejecutan en diferentes equipos) y un conjunto de reglas yprocedimientos que deben respetarse para el envío y la recepción de datos através de una red. En Internet existen diversos protocolos de acuerdo a lacomunicación y que pertenecen a una sucesión o a un conjunto de protocolosrelacionados entre sí (familias de protocolos de Internet). La familia deprotocolos de Internet es un conjunto de protocolos de red en la que se basaInternet y que permiten la transmisión de datos entre redes de computadoras.En ocasiones se le denomina conjunto de protocolos TCP/IP, en referencia a losdos protocolos más importantes que la componen: Protocolo de Control deTransmisión (TCP) y Protocolo de Internet (IP), que fueron los dos primeros endefinirse, y que son los más utilizados de la familia. Existen tantos protocolosen este conjunto que llegan a ser más de 100 diferentes, entre ellos sedestacan los siguientes:TCP (Transmission-Control-Protocol) El Protocolo de Control de Transmisión esuno de los protocolos fundamentales en Internet. Fue creado entre los años1973 - 1974 por Vint Cerf y Robert Kahn. Muchos programas dentro de una redde datos compuesta por computadoras pueden usar TCP para crear conexionesentre ellos a través de las cuales puede enviarse un flujo de datos. El protocologarantiza que los datos serán entregados en su destino sin errores y en elmismo orden en que se transmitieron. También proporciona un mecanismo paradistinguir distintas aplicaciones dentro de una misma máquina, a través delconcepto de puerto. Este es uno de los principales protocolos de la capa detransporte del modelo TCP/IP. En el nivel de aplicación, posibilita laadministración de datos que vienen del nivel más 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 quesepa con anticipación que el protocolo es TCP). Como es un protocolo orientado
  2. 2. a conexión permite que dos máquinas que están comunicadas controlen elestado de la transmisión. Las principales características del protocolo TCP sonlas siguientes: Da soporte a muchas de las aplicaciones más populares deInternet, incluidas HTTP, SMTP, SSH y FTP. Permite colocar los datagramasnuevamente en orden cuando vienen del protocolo IP.También permite el monitoreo del flujo de los datos y así evita la saturación dela red. Permite que los datos se formen en segmentos de longitud variada para"entregarlos" al protocolo IP. Permite “multiplexar” los datos, es decir, que lainformación que viene de diferentes fuentes (por ejemplo, aplicaciones) en lamisma línea pueda circular simultáneamente. Por último, permite comenzar yfinalizar la comunicación amablemente. IP (Internet Protocol)El Protocolo de Internet es un protocolo no orientado a conexión usado tantopor el origen como por el destino para la comunicación de datos a través de unared de paquetes conmutados. Los datos en una red basada en IP son enviadosen bloques conocidos como paquetes o datagramas (en el protocolo IP estostérminos se suelen usar indistintamente). En particular, en IP no se necesitaninguna configuración antes de que un equipo intente enviar paquetes a otrocon el que no se había comunicado antes. El Protocolo de Internet provee unservicio de datagramas no fiable (también llamado del mejor esfuerzo “besteffort”, lo hará lo mejor posible pero garantizando poco). IP no provee ningúnmecanismo para determinar si un paquete alcanza o no su destino y únicamenteproporciona seguridad (mediante checksums o sumas de comprobación) de suscabeceras y no de los datos transmitidos. Por ejemplo, al no garantizar nadasobre la recepción del paquete, éste podría llegar dañado, en otro orden conrespecto a otros paquetes, duplicado o simplemente no llegar. Si se necesitafiabilidad, ésta es proporcionada por los protocolos de la capa de transporte,como TCP. Si la información a transmitir (datagramas) supera el tamañomáximo "negociado" (MTU) en el tramo de red por el que va a circular podráser dividida en paquetes más pequeños, y re ensamblada luego cuando seanecesario. Estos fragmentos podrán ir cada uno por un camino diferentedependiendo de cómo estén congestionadas las rutas en cada momento. Lascabeceras IP contienen las direcciones de las máquinas de origen y destino
  3. 3. (direcciones IP), direcciones que serán usadas por los conmutadores depaquetes (switches) y los enrutadores (routers) para decidir el tramo de redpor el que reenviarán los paquetes. Las direcciones IP son direccionesnuméricas compuestas por cuatro números enteros (4 bytes) entre 0 y 255, yescritos en el formato xxx.xxx.xxx.xxx. Por ejemplo, 194.153.205.26 es unadirección IP en formato técnico. Los equipos de una red utilizan estasdirecciones para comunicarse, de manera que cada equipo de la red tiene unadirección IP exclusiva. El organismo a cargo de asignar direcciones públicas deIP, es decir, direcciones IP para los equipos conectados directamente a la redpública de Internet, es el ICANN (Internet Corporation for Assigned Namesand Numbers) que remplaza el IANA desde 1998 (Internet Assigned NumbersAgency). El IP es el elemento común en la Internet de hoy. El actual y máspopular protocolo de red es IPv4. El IPv6 es el sucesor propuesto de IPv4;poco a poco Internet está agotando las direcciones disponibles por lo que IPv6utiliza direcciones de fuente y destino de 128 bits (lo cual asigna a cadamilímetro cuadrado de la superficie de la Tierra la colosal cifra de 670.000millones de direcciones IP), muchas más direcciones que las que provee IPv4con 32 bits. Las versiones de la 0 a la 3 están reservadas o no fueron usadas.La versión 5 fue usada para un protocolo experimental. Otros números han sidoasignados, usualmente para protocolos experimentales, pero no han sido muyextendidos.HTTP (HyperText Transfer Protocol)Desde 1990, el protocolo HTTP (Protocolo de transferencia de hipertexto) esel protocolo más utilizado en Internet. Es el protocolo usado en cadatransacción de la Web (WWW). Fue desarrollado por el consorcio W3C y laIETF, colaboración que culminó en 1999. La versión 0.9 sólo tenía la finalidadde transferir los datos a través de Internet (en particular páginas Webescritas en HTML). La versión 1.0 del protocolo (la más utilizada) permite latransferencia de mensajes con encabezados que describen el contenido de losmensajes mediante la codificación MIME. El propósito del protocolo HTTP espermitir la transferencia de archivos (principalmente, en formato HTML)entre un navegador (el cliente) y un servidor web (denominado, entre otros,
  4. 4. httpd en equipos UNIX). HTTP define la sintaxis y la semántica que utilizan loselementos software de la arquitectura web (clientes, servidores, proxies) paracomunicarse. Es un protocolo orientado a transacciones y sigue el esquemapeticiónrespuesta entre un cliente y un servidor. Al cliente que efectúa lapetición (un navegador o un spider) se lo conoce como "user agent" (agente delusuario). A la información transmitida se la llama recurso y se la identificamediante una cadena de caracteres denominada dirección URL. Los recursospueden ser archivos, el resultado de la ejecución de un programa, una consultaa una base de datos, la traducción automática de un documento, etc. Lacomunicación entre el navegador y el servidor se lleva a cabo e n dos etapas: •El navegador realiza una solicitud HTTP • El servidor procesa la solicitud ydespués envía una respuesta HTTP En realidad, la comunicación se realiza enmás etapas si se considera el procesamiento de la solicitud en el servidor.HTTP es un protocolo sin estado, es decir, que no guarda ninguna informaciónsobre conexiones anteriores. El desarrollo de aplicaciones web necesitafrecuentemente mantener estado. Para esto se usan las cookies, que esinformación que un servidor puede almacenar en el sistema cliente. Esto lepermite a las aplicaciones web instituir la noción de "sesión", y también permiterastrear usuarios, ya que las cookies pueden guardarse en el cliente por tiempoindeterminado.ARP (Address Resolution Protocol)El ARP (Protocolo de resolución de direcciones) es un protocolo de nivel de redresponsable de encontrar la dirección hardware (Ethernet MAC) quecorresponde a una determinada dirección IP. Para ello se envía un paquete (ARPrequest) a la dirección de difusión de la red (broadcast (MAC = ff ff ff ff ffff)) que contiene la dirección IP por la que se pregunta, y se espera a que esamáquina (u otra) responda (ARP reply) con la dirección Ethernet que lecorresponde. Cada máquina mantiene una caché con las direcciones traducidaspara reducir el retardo y la carga. ARP permite a la dirección de Internet serindependiente de la dirección Ethernet, pero esto sólo funciona si todas lasmáquinas lo soportan. En Ethernet, la capa de enlace trabaja con direccionesfísicas. El protocolo ARP se encarga de traducir las direcciones IP a
  5. 5. direcciones MAC (direcciones físicas).Para realizar ésta conversión, el nivel deenlace utiliza las tablas ARP, cada interfaz tiene tanto una dirección IP comouna dirección física MAC. ARP se utiliza en 4 casos referentes a lacomunicación entre 2 hosts: • • • • Cuando 2 hosts están en la misma red y unoquiere enviar un paquete a otro. Cuando 2 host están sobre redes diferentes ydeben usar un gateway/router para alcanzar otro host. Cuando un routernecesita enviar un paquete a un host a través de otro router. Cuando un routernecesita enviar un paquete a un host de la misma red. El protocolo RARP(Protocolo de Resolución de Dirección Inversa) realiza la operación inversa y esmucho menos utilizado. Es un tipo de directorio inverso de direcciones lógicas yfísicas. En realidad, el protocolo RARP se usa esencialmente para lasestaciones de trabajo sin discos duros que desean conocer su dirección física.El protocolo RARP le permite a la estación de trabajo averiguar su dirección IPdesde una tabla de búsqueda entre las direcciones MAC (direcciones físicas) ylas direcciones IP alojadas por una pasarela ubicada en la misma red de árealocal (LAN). Para poder hacerlo, el administrador debe definir los parámetrosde la pasarela (router) con la tabla de búsqueda para las direcciones MAC/IP.A diferencia del ARP, este protocolo es estático. Por lo que la tabla debúsqueda debe estar siempre actualizada para permitir la conexión de nuevastarjetas de interfaz de red. Este protocolo tiene varias limitaciones. Senecesita mucho tiempo de administración para mantener las tablas importantesen los servidores. Esto se ve reflejado aun más en las grandes redes, lo queplantea problemas de recursos humanos, necesarios para el mantenimiento delas tablas de búsqueda y de capacidad por parte del hardware que aloja laparte del servidor del protocolo RARP. Efectivamente, este protocolo permiteque varios servidores respondan a solicitudes, pero no prevé mecanismos quegaranticen que todos los servidores puedan responder, ni que respondan enforma idéntica. Por lo que, en este tipo de arquitectura, no podemos confiar enque un servidor RARP sepa si una dirección MAC se puede conectar con unadirección IP, porque otros servidores ARP pueden tener una respuestadiferente. Otra limitación del protocolo RARP es que un servidor sólo puedeservir a una LAN.
  6. 6. FTP (File Transfer Protocol)El protocolo FTP (Protocolo de transferencia de archivos) es, como su nombrelo indica, un protocolo para transferir archivos. La implementación del FTP seremonta a 1971 cuando se desarrolló un sistema de transferencia de archivos(descrito en RFC141) entre equipos del Instituto Tecnológico deMassachusetts (MIT, Massachusetts Institute of Technology). Desdeentonces, diversos documentos de RFC (petición de comentarios) han mejoradoel protocolo básico, pero las innovaciones más importantes se llevaron a caboen julio de 1973. Este protocolo define la manera en que los datos deben sertransferidos a través de una red TCP/IP. El objetivo del protocolo FTP es: • • •Permitir que equipos remotos puedan compartir archivos Permitir laindependencia entre los sistemas de archivo del equipo del cliente y del equipodel servidor Permitir una transferencia de datos eficazSMTP (Simple Mail Transfer Protocol)El protocolo SMTP (Protocolo simple de transferencia de correo) es unprotocolo de la capa de aplicación. Es un protocolo de red basado en textoutilizado para el intercambio de mensajes de correo electrónico entrecomputadoras u otros dispositivos (PDAs, teléfonos móviles, etc.). Estádefinido en el RFC 2821 y es un estándar oficial de Internet que realiza latransferencia de correo de un servidor a otro mediante una conexión punto apunto. Éste es un protocolo que funciona en línea, encapsulado en una tramaTCP/IP. El correo se envía directamente al servidor de correo del destinatario.El protocolo SMTP funciona con comandos de textos enviados al servidorSMTP (al puerto 25 de manera predeterminada). A cada comando enviado porel cliente (validado por la cadena de caracteres ASCII CR/LF, que equivale apresionar la tecla Enter) le sigue una respuesta del servidor SMTP compuestapor un número y un mensaje descriptivo. SMTP se basa en el modelo cliente-servidor, donde un cliente envía un mensaje a uno o varios receptores. Lacomunicación entre el cliente y el servidor consiste enteramente en líneas detexto compuestas por caracteres ASCII. El tamaño máximo permitido paraestas líneas es de 1000 caracteres. Las respuestas del servidor constan de uncódigo numérico de tres digitos, seguido de un texto explicativo. El número va
  7. 7. dirigido a un procesado automático de la respuesta por autómata, mientras queel texto permite que un humano interprete la respuesta. En el protocolo SMTPtodas las órdenes, réplicas o datos son líneas de texto, delimitadas por elcarácter <CRLF>. Todas las réplicas tienen un código numérico al comienzo de lalínea. En el conjunto de protocolos TCP/IP, el SMTP va por encima del TCP.POP (Post Office Protocol)Se utiliza el Post Office Protocol (POP3) en clientes locales de correo paraobtener los mensajes de correo electrónico almacenados en un servidorremoto. La mayoría de los suscriptores de los proveedores de Internetacceden a sus correos a través de POP3. POP3 está diseñado para recibircorreo, no para enviarlo; le permite a los usuarios con conexiones intermitentesó muy lentas (tales como las conexiones por módem), descargar su correoelectrónico mientras tienen conexión y revisarlo posteriormente inclusoestando desconectados. Cabe mencionar que la mayoría de los clientes decorreo incluyen la opción de dejar los mensajes en el servidor, de manera talque, un cliente que utilice POP3 se conecta, obtiene todos los mensajes, losalmacena en la computadora del usuario como mensajes nuevos, los elimina delservidor y finalmente se desconecta. En contraste, el protocolo IMAP permitelos modos de operación conectado y desconectado. Los clientes de correoelectrónico que utilizan IMAP dejan por lo general los mensajes en el servidorhasta que el usuario los elimina directamente. Esto y otros factores hacen quela operación de IMAP permita a múltiples clientes acceder al mismo buzón decorreo. La mayoría de los clientes de correo electrónico soportan POP3 óIMAP; sin embargo, solo unos cuantos proveedores de internet ofrecen IMAPcomo valor agregado de sus servicios. Los clientes que utilizan la opción dejarmensajes en el servidor por lo general utilizan la orden UIDL (UniqueIDentification Listing). La mayoría de las órdenes de POP3 identifican losmensajes dependiendo de su número ordinal del servidor de correo. Estogenera problemas al momento que un cliente pretende dejar los mensajes en elservidor, ya que los mensajes con número cambian de una conexión al servidor aotra. Por ejemplo un buzón de correo contenía 5 mensajes en la últimaconexión, después otro cliente elimina el mensaje número 3, el siguiente
  8. 8. usuario se topará con que los últimos dos mensajes están decrementados enuno. El UIDL proporciona un mecanismo que evita los problemas de numeración.El servidor le asigna una cadena de caracteres única y permanente al mensaje.Cuando un cliente de correo compatible con POP3 se conecta al servidor utilizala orden UIDL para obtener el mapeo del identificador de mensaje. De estamanera el cliente puede utilizar ese mapeo para determinar qué mensajes hayque descargar y cuáles hay que guardar al momento de la descarga. Al igual queotros viejos protocolos de internet, POP3 utilizaba un mecanismo de firmadosin cifrado. La transmisión de contraseñas de POP3 en texto plano aún se da.En la actualidad POP3 cuenta con diversos métodos de autenticación queofrecen una diversa gama de niveles de protección contra los accesos ilegalesal buzón de correo de los usuarios. Uno de estos es APOP, el cual utilizafunciones MD5 para evitar los ataques de contraseñas. Mozilla, Eudora, NovellEvolution así como Mozilla Thunderbird implementan funciones APOP.TELNETEl protocolo Telnet es un protocolo de Internet estándar que permite conectarterminales y aplicaciones en Internet. El protocolo proporciona reglas básicasque permiten vincular a un cliente (sistema compuesto de una pantalla y unteclado) con un intérprete de comandos (del lado del servidor). El protocoloTelnet se aplica en una conexión TCP para enviar datos en formato ASCIIcodificados en 8 bits, entre los cuales se encuentran secuencias deverificación Telnet. Por lo tanto, brinda un sistema de comunicación orientadobidireccional (semidúplex) codificado en 8 bits y fácil de implementar. Elprotocolo Telnet se basa en tres conceptos básicos: • • • El paradigma Terminalvirtual de red (NVT); El principio de opciones negociadas; Las reglas denegociación. Éste es un protocolo base, al que se le aplican otros protocolos delconjunto TCP/IP (FTP, SMTP, POP3, etc.). Las especificaciones Telnet nomencionan la autenticación porque Telnet se encuentra totalmente separado delas aplicaciones que lo utilizan (el protocolo FTP define una secuencia deautenticación sobre Telnet). Además, el protocolo Telnet no es un protocolo detransferencia de datos seguro, ya que los datos que transmite circulan en lared como texto sin codificar (de manera no cifrada). Cuando se utiliza el
  9. 9. protocolo Telnet para conectar un host remoto a un equipo que funciona comoservidor, a este protocolo se le asigna el puerto 23. Excepto por las opcionesasociadas y las reglas de negociación, las especificaciones del protocolo Telnetson básicas. La transmisión de datos a través de Telnet consiste sólo entransmitir bytes en el flujo TCP (el protocolo Telnet especifica que los datosdeben agruparse de manera predeterminada —esto es, si ninguna opciónespecifica lo contrario— en un búfer antes de enviarse. Específicamente, estosignifica que de manera predeterminada los datos se envían línea por línea).Cuando se transmite el byte 255, el byte siguiente debe interpretarse como uncomando. Por lo tanto, el byte 255 se denomina IAC (Interpretar comocomando). Los comandos se describen más adelante en este documento.

×