Comunicaci - PowerPoint PPT Presentation

About This Presentation
Title:

Comunicaci

Description:

Comunicaci n Servidor-Cliente sin conexi n Hasta ahora hemos visto c mo se logran comunicar 2 programas estableciendo entre ellos un circuito virtual a traves de ... – PowerPoint PPT presentation

Number of Views:32
Avg rating:3.0/5.0
Slides: 6
Provided by: vicg9
Category:
Tags: arma | comunicaci

less

Transcript and Presenter's Notes

Title: Comunicaci


1
Comunicación Servidor-Cliente sin conexión
  • Hasta ahora hemos visto cómo se logran comunicar
    2 programas estableciendo entre ellos un circuito
    virtual a traves de una conexión TCP/IP
  • Sabemos que en una conexión de este tipo se
    genera mucho tráfico y que la comunicación es más
    lenta, ya que el protocolo subyacente de
    confirmación, retransmisión, descarte y/o
    reordenación de paquetes se basa en mensajes de
    datagramas.
  • Habíamos visto que a veces el usuario debería
    optar por una transmisión sin conexión,
    especialmente si no es necesario garantizar la
    llegada de todos los datagramas.
  • Para eso existen en JAVA todos lor recursos de
    modo de mandar un datagrama aislado a un
    destinatario dado.

2
Comunicación Servidor-Cliente sin conexión pasos
a seguir
  • La comunicación se basa en armar paquetes UDP y
    enviarlos a la internet con la siguiente
    información
  • datos un arreglo de bytes
  • número de port del destinatario int
  • Dirección Internet del destinatario InetAddress
  • El servidor se pone a escuchar en un socket dado
    si hay paquetes destinados a él.
  • El cliente arma un paquete y lo lanza a la
    internet.
  • El servidor recibe el paquete y extrae los datos,
    numero de port y dirección internet del enviador.
  • Si necesita responder manda un paquete a la
    dirección (port y dirección internet) que venía
    en el paquete recibido

3
Manejo de Datagramas en JAVA
  • La comunicación se basa en armar paquetes UDP y
    enviarlos a la internet con la siguiente
    información
  • datos un arreglo de bytes
  • número de port del destinatario int
  • Dirección Internet del destinatario InetAddress
  • El servidor se pone a escuchar en un socket dado
    si hay paquetes destinados a él.
  • El cliente arma un paquete y lo lanza a la
    internet.
  • El servidor recibe el paquete y extrae los datos,
    numero de port y dirección internet del enviador.
  • Si necesita responder manda un paquete a la
    dirección (port y dirección internet) que venía
    en el paquete recibido

4
Clases para Datagramas en JAVA envío
  • Definición Un datagrama es un mensaje
    independiente, autocontenido que se manda de un
    programa a otro por la red pero que su llegada,
    tiempo de llegada y contenido no estan
    garantizados.
  • Crear un socket por donde mandar el datagrama
  • DatagramSocket ds new DatagramSocket()
  • Crear y armar el datagrama
  • byte datos new byte256
  • InetAddress direccion InetAddress.getByName(www
    .ctc.cl)
  • DatagramPacket paquete new DatagramPacket(datos,
    datos.length,direccion,4444)
  • Mandarlo
  • ds.send(paquete)
  • Esperar respuesta
  • socket.receive(packet) //limpiarlo antes !!!

5
Clases para Datagramas en JAVA recepción
  • Para poder recibir tengo que escuchar en un port
    acordado (ya que de otra manera no hay como
    ponerse de acuerdo)
  • socket new DatagramSocket(4444)
  • preparar un Datagrama para recibir datos
  • byte datos new byte256
  • DatagramPacket paquete new DatagramPacket(datos,
    datos.length)
  • Ponerse a escuchar si alguien manda un datagrama
    a este computador a este port
  • socket .receive(paquete)
  • Sacar los datos, el port y la dirección de donde
    venía
  • int port paquete.getPort()
  • InetAddress dirección paquete getAddress()
  • String contenido new String(paquete.getData())
  • Mandar una respuesta
  • DatagramPacket respuesta new DatagramPacket(dato
    s, datos.length, port, direccion)
Write a Comment
User Comments (0)
About PowerShow.com