SOCKETS.

Slides:



Advertisements
Presentaciones similares
Arquitectura cliente-servidor
Advertisements

PROTOCOLOS JORGE CHAVEZ SANTOS.
Repaso LAN Características Servidores: dedicados, no dedicados
Con el comando netstat (Network status) mostrará información sobre la configuración y actividad de la red.
Programación Interactiva Aplicaciones Cliente-Servidor
Trabajo Practico Grupo 1 NFS – TCP - UDP
TEMA 2 Técnicas básicas de construcción de aplicaciones distribuidas
Sistemas Informáticos Distribuidos
Jorge De Nova Segundo. TFTP son las siglas de Trivial file transfer Protocol (Protocolo de transferencia de archivos trivial). Es un protocolo de transferencia.
SOCKETS INTRODUCCIÓN DEFINICIÓN TIPOS DE SOCKETS USO DE SOCKETS.
Servidor.pl #!/usr/local/bin/perl use Socket; ($port) $port = 2345 unless $port; Empleamos el módulo Socket, equivalente a las definiciones que.
PROTOCOLOS Un protocolo es un conjunto de reglas que hacen que la comunicación en una red sea más eficiente.
Servidor de Batalla Naval.
INTEGRANTES: MARTINEZ MISHELL MEDINA ENID MENENDEZ EVELYN INTEGRANTES: MARTINEZ MISHELL MEDINA ENID MENENDEZ EVELYN.
66.69 Criptografía y Seguridad Informática FIREWALL.
Teoría de Sistemas Operativos
Sockets.
Conceptos, características y tipos. Protocolo de red es un conjunto de reglas, secuencias, formatos de mensajes y procedimientos bien detallados que posibilitan.
1 Nivel aplicación Interacción Cliente Servidor Agustín J. González ELO309.
Sockets. / Los sockets (zócalos, referido a los enchufes de conexión de cables) son mecanismos de comunicación entre programas a través de una red TCP/IP.
File Transfer Protocol (FTP) Jorge Cobeña David González Christian Maray Andrés Valarezo.
TCP/IP Introducción TCP/IP Introducción. TCP/IP vs OSI Aplicación Presentación Sesión Transporte Red Enlace Física Aplicación Acceso a la red Física TCP/IP.
CAPITULO 6 CAPA DE TRANSPORTE
RESUMEN CAPITULO 6.
En este capitulo se analizo la relación entre cliente y servidor de red habituales, como: HTTP FTP DNS DHCP Correo Electrónico INTRODUCCIÓN.
1 Capítulo 21: Interacción Cliente Servidor ICD 327: Redes de Computadores Agustín J. González.
2: Capa Aplicación 1 Capa Aplicación: FTP ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al texto.
ELO3091 Interfaz de Socket Agustín J. González ELO309.
(PUERTA DE ENLACE O PASARELA) Jhon Alexander Serrano López
Sockets programming. Tipos de datos. Tipos de datos mas usados en programas cliente-servidor: u-char Unsigned 8-bit character. u-short Unsigned 16-bit.
Universidad de Chile - Tupper 2007, Santiago - Fono/Fax: (56 2) cec.uchile.cl Módulo ECI - 11: Fundamentos de Redes de Computadores.
Otras aplicaciones1 FTP Telnet (y ssh) WWW. Otras aplicaciones2 FTP File Tranfer Protocol Protocolo de transferencia de archivos básico pero útil y fácil.
Departamento de Arquitectura y Tecnología de Computadores E.T.S. Ingeniería Informática Lección 2. La API de Sockets Julio Ortega Lopera. Curso 2004/2005.
Teoría de Sistemas Operativos Sistemas Archivos de Red
Andres Marín L. Programación sockets en java.
Sistemas Operativos Comunicación de procesos a través de sockets.
Servicios de Red e Internet
LABORATORIO DE ESTRUCTURA DE COMPUTADORES II Desarrollo de aplicación Cliente-Servidor.
2: Capa Aplicación 1 Capa Aplicación: File Transfer Protocol ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material.
INTEGRANTES : Selvin Rivas José Vásquez Francisco Pérez J’ Alberto Patal.
TCP/IP Son las siglas de protocolo de transmisión/protocolo de Internet: Es un sistema de protocolo que hacen posibles servicios telnet, ftp, , y.
Protocolos del modelo TCP/IP
PROTOCOLOS DE COMUNICACIÓN
Ing. Elizabeth Guerrero V.
2: Capa Aplicación 1 Capítulo 2: Capa Aplicación - I ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
Servicio TFTP (Trivial File Transfer Protocol) Tema 5 SRI Vicente Sánchez Patón I.E.S Gregorio Prieto.
Capítulo 3: Capa Transporte - I
S ERVICIO TFTP (T RIVIAL F ILE T RANSFER P ROTOCOL ) Luis Villalta Márquez.
PROTOCOLO TCP Y UDP.
Protocolos de comunicación TCP/IP
Aplicaciones De Conexión Entre Capas. el envío y recepción de datos entre dos aplicaciones es un proceso de intercambio de datos entre capas iguales,
Ing. Elizabeth Guerrero V.
TFTP Jesús Torres Cejudo.
Protocolos de Transporte y Aplicación. – TCP y UDP
Capa Aplicación: Programación de sockets
Curso Redes (IS20) -Capítulo 5 1 Redes (IS20) Ingeniería Técnica en Informática de Sistemas Práctica 2- Comunicación de procesos mediante sockets.
Nivel de Transporte en Internet
PROTOCOLOS Modelo TCP/IP
Gabriel Montañés León. TCP es un protocolo orientado a conexión es decir, que permite que dos máquinas que están comunicadas controlen el estado de la.
Modelo OSI Para redes………
C1-Sistemas Distribuidos Concurrencia Varias componentes en una misma máquina-> Concurrencia Inteleaving (1 sola CPU, N procesos) Paralelo (N CPU, M procesos)
Arquitectura OSI  ¿Qué es OSI?  Una sigla: Open Systems Interconnection  Conceptualmente: arquitectura general requerida para establecer comunicación.
MODELO TCP/IP.
Protocolos de Transporte y Aplicación
Planificación Curso UNIDAD 1. INTRODUCCIÓN A LOS SERVICIOS EN RED UNIDAD 2. SERVICIOS DHCP UNIDAD 3. SERVICIOS DNS UNIDAD 4. SERVICIOS DE ACCESO REMOTO.
En informática, es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP (Transmission Control Protocol)
Protocolos de Transporte y Aplicación Javier Rodríguez Granados.
1 Introducción a las Comunicaciones en Red. import java.net.InetAddress; import java.net.UnknownHostException; public class PruebaSockets { public static.
Programación con sockets I
Programación con sockets II
Transcripción de la presentación:

SOCKETS

Programa que pide información a un servidor y espera por la respuesta Máquina que ofrece un servicio que puede ser accedido a través de la red Esquema Cliente Servidor Servidor Cliente Programa que pide información a un servidor y espera por la respuesta

Esquema Cliente Servidor Espera la conexión de un cliente (espera pasiva) Servidor Cliente Iniciador de la conexión

(Aplics. Cliente/Servidor) p.e. FTP, e-mail, etc. (Aplics. Cliente/Servidor) Capa de Aplicación p.e. TCP/UDP Capa de Transporte p.e. IP Capa de Red p.e. Ethernet Capa de Enlace de Datos Capa Física

Por ejemplo: Aplicación cliente o servidora Dirección hacia donde se transmite Puerto por donde se recibe, etc. Capa de Aplicación Datos Capa de Transporte Capa de Red Capa de Enlace de Datos Capa Física

Application Programme Interface Capa de Aplicación Network API Network API Capa de Transporte Capa de Red Application Programme Interface Capa de Enlace de Datos Capa Física

La mayoría de los sistemas han adoptado Socket API (disponible en la mayoría de los S.O., p.e. Linux, UNIX, Windows) Capa de Aplicación Network API Capa de Transporte Capa de Red Capa de Enlace de Datos Capa Física

Capa de Aplicación Socket API Capa de Transporte En algunos S.O. las funciones de Socket API están integradas en el S.O. (p.e. BSD UNIX) En otros, una biblioteca entrega las funciones necesarias para comunicar la Aplicación con la Capa de Transporte (p.e. socket.h).

Socket API (sockets) Los sockets operan según el paradigma open-read-write-close (UNIX I/O). open Se “crea” el socket Análogamente al trabajo con archivos, open retorna un descriptor a un socket.

Se “leen” los datos entrantes al socket Socket API (sockets) Los sockets operan según el paradigma open-read-write-close (UNIX I/O). Se “leen” los datos entrantes al socket read Análogamente al trabajo con archivos, read lee los datos que “llegan al socket”.

Se “escriben” datos en el socket Socket API (sockets) Los sockets operan según el paradigma open-read-write-close (UNIX I/O). Se “escriben” datos en el socket write Análogamente al trabajo con archivos, write escribe datos “en el socket”.

Socket API (sockets) Los sockets operan según el paradigma open-read-write-close (UNIX I/O). close Análogamente al trabajo con archivos, close indica que se ha terminado de usar el socket.

Socket API (sockets) En realidad, la comunicación usando sockets es algo más complicada que open-read-write-close. Por ejemplo, es necesario especificar: protocolo de transporte dirección destino tipo de dirección destino si se trata de un servidor, puerto por el que recibe las peticiones etc.

Comunicación usando sockets Ambos crean un socket para comunicarse a través de la red Servidor Familia de protocolos a usar en la comunicación AF_UNIX: Comunicación interna AF_INET: TCP/IP AF_APPLETALK: Apple Talk AF_NS: Xerox NS AF_CCITT: Protocolos CCITT, X25, etc. AF_SNA: IBM SNA AF_DECnet: DECnet Cliente descriptor = socket (protofamily, type, protocol)

Comunicación usando sockets Ambos crean un socket para comunicarse a través de la red Servidor Tipo de comunicación que usará el socket SOCK_DGRAM: Modo no conectado SOCK_STREAM : Modo conectado SOCK_RAW : Acceso a protocolos de más bajo nivel (p.e. IP). Superusuario. SOCK_SEQPACKET: Para comunica-ciones con Xerox NS. Cliente descriptor = socket (protofamily, type, protocol)

Comunicación usando sockets Ambos crean un socket para comunicarse a través de la red Servidor Protocolo de transporte que usará el socket Cliente descriptor = socket (protofamily, type, protocol) 0: protocolo por defecto

Comunicación usando sockets Ambos crean un socket para comunicarse a través de la red Servidor Cliente descriptor = socket (protofamily, type, protocol) Protocolo de transporte por defecto (TCP) Modo conectado Familia TCP/IP Por ejemplo: sock=socket(PF_INET,SOCK_STREAM,0)

Comunicación usando sockets El servidor asocia el descriptor del socket al puerto por el que recibirá las peticiones y a la dirección local Servidor Cliente Descriptor del socket retornado por la función socket bind (descriptor, dir_local, largo_dir_local)

Comunicación usando sockets El servidor asocia el descriptor del socket al puerto por el que recibirá las peticiones y a la dirección local Servidor Estructura que contiene la dirección local: Familia de Dirs. Dir_Octetos 0 -1 16 31 Dir_Octetos 2 -5 Dir_Octetos 6 -9 Dir_Octetos 10 - 13 Servidor Cliente struct sockaddr { u_short sa_family; char sa_data[14]; }; bind (descriptor, dir_local, largo_dir_local)

Comunicación usando sockets El servidor asocia el descriptor del socket al puerto por el que recibirá las peticiones y a la dirección local Servidor Largo de la dirección local (medido en bytes) Cliente bind (descriptor, dir_local, largo_dir_local)

Comunicación usando sockets El servidor queda en espera... Servidor Especifica el largo de la fila de peticiones de clientes esperando ser atendidas Cliente Descriptor del socket listen(descriptor, largo_cola)

Comunicación usando sockets Servidor Resumen actividades hechas por el servidor (hasta ahora): Crea un socket (socket) Le asocia un puerto y una dirección local (bind) Queda en espera (listen)

Comunicación usando sockets Y el cliente... una vez creado el socket... Cliente

Comunicación usando sockets Se conecta (sólo si se trata de un servicio SOCK_STREAM) al servidor a través de su socket. Para esto le asocia el puerto del servidor y su dirección . Servidor Cliente Descriptor del socket retornado por la función socket connect (descriptor, dir_destino, largo_dir_destino)

Comunicación usando sockets Servidor Estructura que contiene la dirección destino: Familia de Dirs. Dir_Octetos 0 -1 16 31 Dir_Octetos 2 -5 Dir_Octetos 6 -9 Dir_Octetos 10 - 13 Se conecta (sólo si se trata de un servicio SOCK_STREAM) al servidor a través de su socket. Para esto le asocia el puerto del servidor y su dirección. Servidor Cliente connect (descriptor, dir_destino, largo_dir_destino)

Comunicación usando sockets Se conecta (sólo si se trata de un servicio SOCK_STREAM) al servidor a través de su socket. Para esto le asocia el puerto del servidor y su dirección. Servidor Largo de la dirección destino(medido en bytes) Cliente connect (descriptor, dir_destino, largo_dir_destino)

Comunicación usando sockets Resumen actividades hechas por el cliente (hasta ahora): Crea un socket (socket) Le asocia un puerto y una dirección destino (connect, sólo en caso de un servicio con conexión) Cliente

Comunicación usando sockets Se inicia la transferencia de información Servidor read, readv, recv, recvfrom, recvmsg Cliente write, writev, send, sendto, sendmsg

Comunicación usando sockets Se inicia la transferencia de información Servidor write, writev, send, sendto, sendmsg Cliente read, readv, recv, recvfrom, recvmsg

Comunicación usando sockets RESUMEN SERVIDOR CLIENTE socket bind listen socket connect write read write read close

./etc/services (primeras líneas) tcpmux 1/tcp echo 7/tcp echo 7/udp discard 9/tcp sink null discard 9/udp sink null systat 11/tcp users daytime 13/tcp daytime 13/udp netstat 15/tcp chargen 19/tcp ttytst source chargen 19/udp ttytst source ftp-data 20/tcp ftp 21/tcp telnet 23/tcp smtp 25/tcp mail