martes, 15 de noviembre de 2011

Protocolos

Es el conjunto de reglas normalizadas para la representación, señalización, autenticación y detección de errores necesario para enviar información a través de un canal de comunicación.
Tienen características destinadas a asegurar un intercambio de datos fiable a través de un canal de comunicación imperfecto. Los protocolos de comunicación siguen ciertas reglas para que el sistema funcione apropiadamente. Definen la sintaxis y la semántica de cada regla.
Hay diferentes tipos de protocolos, algunos ejemplos son:
  • IP: el Internet Protocol es un protocolo de red, no es orientado a conexión  y se usa tanto por el origen como por el destino para la comunicación de datos a través de una red de paquetes conmutados. No proporciona integridad en la transmisión de los datos.
  • TCP: el Transmission-Control-Protocoll es uno de los protocolos fundamentales de internet.  Varias computadoras  pueden crear conexiones entre ellas para enviarse un flujo de datos. El protocolo garantiza que los datos serán entregados en su destino sin errores y en el mismo orden en que se transmitieron. También proporciona un mecanismo para distinguir distintas aplicaciones dentro de una misma máquina, a través del concepto de puerto. Por ejemplo, el 80 es para HTTP, el 21 para FTP, el 25 POP3, etc
  • UDP: User Datagram Protocol  es, como el TCP,  un protocolo del nivel de  transporte.  Los datos se envían sin haberse establecido una conexión. Tampoco tiene confirmación 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 confirmación de entrega o recepción. Su uso principal es para protocolos como DHCP, BOOTP, DNS y demás protocolos en los que el intercambio de paquetes de la conexión/desconexión son mayores, o no son rentables con respecto a la información transmitida, así como para la transmisión de audio y vídeo en tiempo real, donde no es posible realizar retransmisiones por los estrictos requisitos de retardo que se tiene en estos casos.
  • HTTP: protocolo de transferencia de hipertexto (HyperText Transfer Protocol), se utiliza en cada transacción de página web. Lo utilizan los elementos software de la arquitectura web (clientes, servidores, proxies) para comunicarse. El cliente (un navegador o un spider) efectúa la petición de un recurso que se identifica mediante un URL (uniform resource locator). Es un protocolo sin estado, es decir, que no guarda ninguna información sobre conexiones anteriores. El desarrollo de aplicaciones web necesita frecuentemente mantener estado. Para esto se usan las cookies, que es información que un servidor puede almacenar en el sistema cliente. Esto le permite a las aplicaciones web instituir la noción de "sesión", y también permite rastrear usuarios ya que las cookies pueden guardarse en el cliente por tiempo indeterminado.
  • HTTPS: esta destinado a la transferencia segura de datos de hipertexto, es decir, es la versión segura de HTTP.  Se utiliza principalmente por entidades bancarias, comercios en línea, y cualquier tipo de servicio que requiera el envío de datos personales o contraseñas.
  • FTP: protocolo de transferencia de archivos, entre sistemas conectados a una red TCP, basado en la arquitectura cliente-servidor. Desde un equipo  cliente se puede conectar a un servidor para descargar archivos desde él o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo.
  • POP3 y SMTP: protocolos utilizado por los clientes de correo electrónico para obtener y enviar correo respectivamente.  POP3 permite descargar el correo del servidor y dejar una copia  o eliminarla al momento de  borrar el mensaje del programa cliente.  APOP es una mejora en seguridad de POP3. El protocolo IMAP también para recibir  correo, cuenta con varias ventajas respecto al POP3. Por ejemplo, permite actuar sobre una determinada carpeta del servidor,  visualizar los mensajes de manera remota y no tener que descargarlos para verlos, posibilidad de varios clientes acceder concurrentemente.