Sockets Java

Páginas: 10 (2326 palabras) Publicado: 12 de marzo de 2013
UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERÍA TELEMÁTICA

Comunicaciones en Java Sockets Cliente
Daniel Díaz Sánchez Florina Almenárez Andrés Marín Departamento de Ingeniería Telemática Universidad Carlos III de Madrid dds@it.uc3m.es

Contexto
• Objetivos
– Conocer las particularidades de las comunicaciones en Java Java, desarrollando pequeños programas que interactúen conprotocolos conocidos

Programación de dispositivos limitados Pág. 1

1

Índice
• Introducción a los sockets • Conceptos básicos • La clase Socket

Programación de dispositivos limitados Pág. 2

Introducción a los sockets
• Los sockets son un sistema de comunicación entre procesos. Un proceso, a través de un socket, puede recibir/enviar i f ibi / i información d / otro proceso l ió de/at localizado li d en otra máquina (o en la misma). • Los sockets se hicieron populares gracias a las implementaciones de la Universidad de Berkeley de su sistema operativo tipo Unix llamado BSD BSD.

Programación de dispositivos limitados Pág. 3

2

Introducción a los sockets
• El API de sockets define una serie de primitivas que combinadas dan lugar a este diálogo • Durante esta sesiónveremos como lo ha implementado Java.

Programación de dispositivos limitados Pág. 4

Introducción a los sockets
• Los datos se transmiten en Internet usando paquetes. j p p j p • Los datos se manejan en capas, por ejemplo:
DATOS de la aplicación
Maximo tamaño

Aplicación

TCP header

DATOS

Transporte Red R d
Frame footer

IP TCP r header header Frame header IP TCP r header headerDATOS

DATOS

Enlace

Programación de dispositivos limitados Pág. 5

3

Introducción a los sockets
• Hay dos tipos de transporte básicos
– Orientado a conexión
• mantiene un canal de comunicación con el otro extremo de forma constante durante la conexión • La entrega de paquetes es ordenada

– Orientado a datagrama
• No hay canal de comunicación constante • La entrega esdesordenada

• Hay varias formas de comunicarse
– De uno a uno: Cliente-Servidor, Peer to Peer (P2P) – De uno a todos: broadcast – De uno a varios: multicast
Programación de dispositivos limitados Pág. 6

Introducción a los sockets
• Hay que realizar un gran número de operaciones con los datos:
– – – – – Fraccionarlos Etiquetarlos con las cabeceras de los diferentes protocolos Controlar lacongestión Retransmitir paquetes que se hayan perdido Administrar almacenamiento intermedio….

• Todas estas tareas son tediosas y complejas
– Imaginad el coste de hacer todas estas operaciones en cada uno de las aplicaciones que se conectan a Internet

Programación de dispositivos limitados Pág. 7

4

Introducción a los sockets
• Los sockets son una abstracción de esas tareas parafacilitar la programación de aplicaciones con conectividad. ti id d • Los sockets permiten:
– A los clientes y servidores:
• • • • Conectar con la máquina remota (prot. orientados a conexión) Enviar datos Recibir datos Cerrar una conexión ( t orientados a conexión) C ió (prot. i t d ió )

– A los servidores:
• Asociar un socket a un puerto • Escuchar para recibir datos • Aceptar conexiones en elpuerto asociado
Programación de dispositivos limitados Pág. 8

Introducción a los sockets
• Java separa en dos clases la funcionalidad de sockets orientados a conexión.
– La clase Socket usada por clientes y servidores. – La clase ServerSocket usada únicamente por servidores.
Conectar con la máquina remota Enviar datos Recibir datos Cerrar una conexión

Socket

Asociar un socket a un puertoEscuchar para recibir datos Aceptar conexiones en el puerto asociado
Programación de dispositivos limitados Pág. 9

ServerSocket

5

Conceptos básicos
• Java es un lenguaje orientado a la red
– Todo programa en Java hace uso de la entrada y salida, el paquete IO y en el caso d l comunicaciones t bié t l de las i i también – Vamos a repasar la entrada y salida en Java, es decir, el...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • sockets en java
  • Sockets java
  • Sockets Java En Fedora
  • sockets en java
  • Sockets en java
  • java sockets
  • Sockets en Java
  • Chat java con sockets

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS