Comunicacion abierta Ethernet

Utilizando la librería «CAANet Base Services» podemos implementar comunicaciones UDP y TCP de modo fácil y sencillo. La secuencia a realizar en ambos casos es la siguiente:

  1. Abrir la comunicación. Para ello deberemos de conocer la dirección IP del equipo remoto y el puerto. Para la comunicación TCP utilizaremos la función TCP_Client y para la comunicación UDP la función UDP_Peer.
  2.  Activamos la recepción de los datos mediante las funciones TCP_Read para la comunicación TCP y UDP_Receive para la comunicación UDP. En el momento que lleguen los datos la función nos retornara un array con ellos y nos indicara la cantidad recibida.
  3. Podremos realiza la transferencia de datos mediante las funciones TCP_Write y UPD_Send. Realizara la transferencia de los datos contenidos en un buffer.

Las pruebas de la comunicación TCP se han realizado utilizando el programa TCPClientServer.

Comparativa entre UDP y TCP

UDP : proporciona un nivel de transporte no fiable de datagramas, ya que apenas añade la información necesaria para la comunicación extremo a extremo al paquete que envía al nivel inferior. Lo utilizan aplicaciones como NFS (Network File System) y RCP (comando para copiar ficheros entre ordenadores remotos), pero sobre todo se emplea en tareas de control y en la transmisión de audio y vídeo a través de una red. No introduce retardos para establecer una conexión, no mantiene estado de conexión alguno y no realiza seguimiento de estos parámetros. Así, un servidor dedicado a una aplicación particular puede soportar más clientes activos cuando la aplicación corre sobre UDP en lugar de sobre TCP.

TCP: es el protocolo que proporciona un transporte fiable de flujo de bits entre aplicaciones. Está pensado para poder enviar grandes cantidades de información de forma fiable, liberando al programador de la dificultad de gestionar la fiabilidad de la conexión (retransmisiones, pérdida de paquetes, orden en el que llegan los paquetes, duplicados de paquetes…) que gestiona el propio protocolo. Pero la complejidad de la gestión de la fiabilidad tiene un coste en eficiencia, ya que para llevar a cabo las gestiones anteriores se tiene que añadir bastante información a los paquetes que enviar. Debido a que los paquetes para enviar tienen un tamaño máximo, cuanta más información añada el protocolo para su gestión, menos información que proviene de la aplicación podrá contener ese paquete (el segmento TCP tiene una sobrecarga de 20 bytes en cada segmento, mientras que UDP solo añade 8 bytes). Por eso, cuando es más importante la velocidad que la fiabilidad, se utiliza UDP. En cambio, TCP asegura la recepción en destino de la información para transmitir.

Fuente Wikipedia. http://es.wikipedia.org/wiki/User_Datagram_Protocol

Deja un comentario