AMPLIACION DE SISTEMAS OPERATIVOS SOCKETS AIRAN GODOY HERNANDEZ JOSE MARIA RODRIGUEZ RODRIGUEZ 5º INGENIERIA EN INFORMATICA
|
|
- Vanesa Ortíz Cordero
- hace 8 años
- Vistas:
Transcripción
1 AMPLIACION DE SISTEMAS OPERATIVOS SOCKETS AIRAN GODOY HERNANDEZ JOSE MARIA RODRIGUEZ RODRIGUEZ 5º INGENIERIA EN INFORMATICA 1
2 Definición de Socket Punto de comunicación entre procesos, mediante el cual pueden emitir o recibir información. Uso de Descriptores. 2
3 Características de un socket A cada socket le corresponde una constante simbólica definida en <sys/socket.h> Dominio: : Conjunto de sockets con los cuales se podrá establecer comunicación. Tipo: : Define las propiedades de las comunicaciones en las cuales está implicado. 3
4 Dominio de socket Dominio Unix: estos estos sockets se destinan a una comunicación local: les corresponden direcciones locales que son referencias a Unix idénticas a las de los archivos. ls, rm Dominio Internet: la conexión a una dirección Internet de este tipo de socket necesita la preparación de un objeto que tenga la estructura sockaddr_in.. Para ello: Conocimiento de la dirección de la máquina local: gethostname, gethostbyname,, INADDR_ANY Elección de un número de puerto: getservbyname, IPPORT_RESERVED 4
5 Dominio de un socket Formato de direcciones y protocolos Dominio UNIX (AF_UNIX) : Los son locales donde se definen. struct sockaddr_un { short sun_family char sun_data[108]; }; Los sockets sun_family; /* dominio UNIX */ [108]; /* referencia de dirección n */ 5
6 Dominio de un socket Dominio Internet (AF_INET) : Asigna un servicio a una máquina determinada. struct in_addr{ u_long s_addr; }; struct sockaddr_in{ short sin_family; /* familia de dirección: AF_INET */ u_short sin_port; /* número n de puerto */ struct in_addr sin_addr; /* dirección n Internet */ char sin_zero[8]; /* campo de 8 ceros */ }; 6
7 Tipo de un socket Propiedades de comunicación 1. Fiabilidad de la transmisión. 2. Conservación del orden de los datos. 3. No duplicación de datos. 4. Comunicación en modo conectado. 5. Conservación de los límites de los mensajes. 6. Envío de mensajes <<urgentes>>. 7
8 Tipo de un socket Tipos disponibles (características, propiedades, protocolo) SOCK_DGRAM: : Destinados a la comunicación en modo no conectado para envío de datagramas de tamaño limitado. Propiedad 5. UDP. SOCK_STREAM: : Comunicaciones fiables en modo conectado. Propiedades Propiedad 6. TCP. SOCK_RAW: Acceso a los protocolos de más bajo nivel. Superusuario.. IP. 8
9 FUNCIONES BASICAS SOCKET BIND CONNECT CLOSE LISTEN ACCEPT WRITE SEND READ RECV SENDTO RECVFROM SHUTDOWN GETSOCKNAME GETPEERNAME 9
10 FUNCIONES int socket (dominio,tipo,protocolo) Crea un socket para comunicaciones. Devuelve un descriptor ó -1. Cuando se crea un proceso hijo hereda este descriptor. Dominio : PF_UNIX, PF_LOCAL, PF_INET, PF_INET6, PF_IPX, PF_NETLINK, PF_X25, PF_AX25, PF_ATMPVC, PF_APPLETALK, PF_PACKET -Tipo : SOCK_STREAM, SOCK_DGRAM, SOCK_RAW, SOCK_SEQPACKET, SOCK_RDM 10
11 FUNCIONES int bind (socket,localaddr,addrlen) Especifica una dirección local y un número de puerto del protocolo Asigna un nombre (dirección + puerto) al socket. int connect (socket, addr,addrlen addrlen) Orientado a conexión-> Establece una conexión con el otro socket No orientado a conexión-> addr es la dirección por defecto a la cual se envían los datagramas. 11
12 FUNCIONES int close (socket) Si n procesos usan el socket decrementa las referencias y lo libera cuando n=0. Cierra la conexión y libera el socket. int listen (socket, qlen) Establece una conexión pasiva ( Espera peticiones de entrada) qlen= Longitud de la cola para socket establecidos completamente Solo se aplica a los socket SOCK_STREAM, SOCK_SEQPACKET Y SOCK_RDM 12
13 FUNCIONES int accept (dominio,addr addr,len) Retira una petición de la cola de peticiones pendientes (definida en listen) Si no hay pendientes y el socket es con bloqueo queda esperando Llena la estructura apuntada por addr con la dirección y puerto remoto. 13
14 FUNCIONES int write (socket, buf, len) - Envía datos a traves de la conexión TCP. int send (socket, mensaje, lon, flags) - Envia un mensaje - Solo cuando el socket este en estado connected - Flags especifica si el mensaje es fuera de banda 14
15 FUNCIONES int read (socket, buf, len) - Lee datos de una conexión TCP. int recv (socket, mensaje, lon, flags) - Recibe un datagrama - Solo cuando el socket este en estado connected 15
16 FUNCIONES int sendto (int socket, const void *mensaje, int lon, unsigned int flags, const struct sockaddr *to, int tolen) - Envía un mensaje. int recvfrom (int socket, const void *mensaje, int lon, unsigned int flags, const struct sockaddr *from, int fromlen) -Recibe datos de un socket. 16
17 FUNCIONES inet_aton, inet_ntoa Convierte entre una string que especifica la dirección IP expresada en decimal separada por. en su valor binario en formato de red y viceversa. inet_pton, inet_ntop Convierte entre una string que especifica la dirección IP expresada en decimal separada por. en una estructura de direccion de red y viceversa. htons - Convierte enteros binarios del orden nativo del equipo al orden estándar de red y viceversa. 17
18 FUNCIONES int shutdown (socket, direccion) Cierra la conexión en una sola dirección 0 Entrada 1 Salida 2 Ambas Getsockname, getpeername Obtiene la dirección y puerto de los extremos 18
19 EJEMPLO CLIENTE DNS 19
20 INTRODUCCION El cliente DNS se encarga de enviar un paquete al puerto 53 mediante UDP con una pregunta, y el servidor responde con otro paquete con la respuesta. En la pregunta el usuario especifica el tipo de interrogación que desea (A, NS, SOA...) Para utilizar el programa se usa la ste.. Sintaxis :./cliente DirIPServidor NombreDominio 20
21 INTRODUCCION Formato de los mensajes CABECERA PREGUNTA RESPUESTA AUTORIDAD ADICIONAL RRs RRs RRs 21
22 INTRODUCCION Formato de la cabecera Identificador QR Cód. Int AA TC RD RA Z Cód. Resp QD Count AN Count NS Count AR Count QR : Pregunta (0) Respuesta (1) Cód. Resp : No error (0) Errores(1-5) Cód. Int : Pregunta(0) Preg.. Inversa (1) Status (2) QDCount : Nº de preguntas AA : Respuesta con autorización ANCount : Nº de RRs de respuestas TC : Truncado NSCount : Nº de RRs de autoridad RD : Solicita recursividad ARCount : Nº de RRs de Adicional RA : Recursividad disponible Z : Reservado 22
23 INTRODUCCION Formato de la pregunta QNAME.. QTYPE QCLASS QNAME : Puede ser una secuencia de etiquetas acabadas en un 0, acabadas en un puntero o puede ser un puntero. QTYPE : Tipo de interrogación (1 A 2 NS 5 NS - 6 SOA 11 WKS 12 PTR 13 HINFO 15 MX 16 TXT) QCLASS : Clase de interrogación ( 1 IN 2 CS - 3 CH 4 CH) 23
24 INTRODUCCION Formato del Registro de Recurso NOMBRE.. TIPO CLASE TTL (32) LONGITUD DATOS DATOS DESCRIPTIVOS COMPRESION : Reemplazar un nombre de dominio completo o la parte final de un nombre de dominio por un puntero a una ocurrencia anterior. 1 1 OFFSET 24
25 25 25 INTRODUCCION INTRODUCCION Formato de los Datos Formato de los Datos CNAME CNAME CPU CPU OS OS PREFERENCE PREFERENCE EXCHAGE EXCHAGE NSDNAME NSDNAME PTRDNAME PTRDNAME MNAME MNAME RNAME RNAME SERIAL SERIAL REFRESH REFRESH RETRY RETRY EXPIRE EXPIRE MINIMUM MINIMUM PTR PTR CNAME CNAME MX MX SOA SOA ADDRESS ADDRESS A HINFO HINFO ADDRESS ADDRESS PROTOCOL PROTOCOL BITMAP BITMAP BITMAP BITMAP WKS WKS NS NS TXTDATA TXTDATA TXT TXT
26 PETICION/RESPUESTA Ejemplo : Queremos saber quien es el administrador de la página de playboy Id = 45 QR = 0 C. Int = 0 AA TC =0 RD= 1 RA Z Cód. Resp CABECERA QD Count = 1 AN Count NS Count AR Count PREGUNTA QNAME = TYPE = SOA CLASS = IN 26
27 PETICION/RESPUESTA Ejemplo : Queremos saber quien es el administrador de la página de playboy 27
28 PETICION/RESPUESTA Ejemplo : Queremos saber quien es el administrador de la página de playboy Id = 45 QR =1 C. Int =0 AA=0 TC = 0 RD = 1 RA=1 Z C. Resp = 0 QD Count = 1 AN Count = 1 NS Count = 1 AR Count = 0 QNAME = TYPE = SOA CLASS = IN NOMBRE = TIPO = CNAME CLASE = IN TTL = LONG.. DATOS DATOS = Phat playboy.com. Type = SOA clase = IN ttl= 30 3dchi.playboy.com Tim.playboy.com Serial = Refresh = 3600 Retry = 900 Expire = Minimum = 30 CABECERA PREGUNTA RESPUESTA AUTORIDAD ADICIONAL 28
29 EJEMPLOS 29
30 EJEMPLOS 30
31 ESTRUCTURAS typedef struct { unsigned id :16; // IDENTIFICADOR unsigned rd :1; // FLAG DE RECURSIVIDAD unsigned tc :1; // FLAG DE TRUNCAMIENTO unsigned aa :1; // RESPUESTA AUTORITATIVA unsigned opcode :4; // TIPO DE CONSULTA unsigned qr :1; // FLAG DE PREGUNTA O RESPUESTA unsigned rcode :4; // CODIGO DE RESPUESTA unsigned z :3; // NO USADO unsigned ra :1; // RECURSION DISPONIBLE unsigned qdcount :16; // NUMERO DE PREGUNTAS unsigned ancount :16; // NUMERO DE RRs de RESPUESTA unsigned nscount :16; // NUMERO DE RRs de AUTORIDAD unsigned arcount :16; // NUMERO DE RRs ADICIONALES } HEADER; 31
32 ESTRUCTURAS typedef struct { unsigned qtype :16; // TIPO DE PREGUNTA unsigned qclass :16; // CLASE DE PREGUNTA } PREGUNTA; typedef struct { unsigned type :16; // TIPO DE RECURSO unsigned class :16; // CLASE DE RECURSO unsigned ttl1 :16; // TIEMPO DE VIDA unsigned ttl2:16; unsigned rdlength :16; // LONGITUD DE LOS DATOS } RECURSO; typedef struct { unsigned a:8; unsigned b:8; unsigned c:8; unsigned d:8; // ESTRUCTURA PARA OBTENER UNA DIRECCION IP // PRIMER DIGITO // SEGUNDO DIGITO // TERCER DIGITO // CUARTO DIGITO } AR; 32
33 ESTRUCTURAS typedef struct { unsigned serial1:16; unsigned serial2:16; unsigned refresh1:16; unsigned refresh2:16; unsigned retry1:16; unsigned retry2:16; unsigned expire1:16; unsigned expire2:16; unsigned minimum1:16; unsigned minimum2:16; } SOAREG; // SERIAL // TIEMPO DE REFRESCO // TIEMPO DE REINTENTO // TIEMPO DE EXPIRACION // VALOR PREDETERMINADO PARA TTL char *Tipo[17] = {"","A","NS","3","4","CNAME","SOA","7","8","9","10","WKS",,"WKS", "PTR","HINFO","","MX","TXT"}; char *Clase[5] = {"","IN","CS","CH","HS"}; 33
34 FUNCIONES int CodificaNombre(char *buf* buf,, char *qname* qname, int qnamelen) Recibe un puntero a la zona del paquete donde irá el nombre codificado (buf), el nombre a codificar (qname)) y la longitud de dicho nombre (qnamelen). Empieza en el ultimo punto sustituyéndolo por un 0 (marca de fin de nombre) y cada vez que encuentra otro lo sustituye por un valor numérico que coincide con el número de caracteres hasta el siguiente punto. Ejemplo : se transformaría en 3www3dis5ulpgc2es0 void Imprime (u_char( **posmem posmem, u_char *buf) Recibe una posición de memoria (posmem( posmem) ) y la posición de inicio del paquete (buf( buf). Se encarga de imprimir un nombre de dominio por pantalla teniendo o en cuenta que puede ser un conjunto de etiquetas acabado en 0, un conjunto de etiquetas acabados en un puntero o un puntero. Cuando se acaba de imprimir, posmem apunta ahora a la siguiente 34 dirección después del nombre.
35 FUNCIONES void MuestraRR(u_char **pointer,u_char *buf,int cont) Recibe la posición de memoria del RR (pointer( pointer), el inicio del paquete (buf( buf) ) y el numero de RR (cont( cont). Imprime por pantalla los registros de recursos (tantos como diga la variable cont) ) a partir de pointer : 1. Imprime el nombre de dominio. 2. La estructura RECURSO (clase, tipo, ttl y long. datos). 3. Para mostrar el contenido de los datos se tiene en cuenta el tipo interrogación (A, NS, SOA). Ej : si es A se imprime una dirección IP (estructura AR). dirección si es SOA se muestra el nombre del servidor, la l de correo y luego la estructura SOAREG. Se hace uso de la función Imprime. Cuando se acaba de imprimir pointer apunta ahora al siguiente registro de recurso (Autoridad ó Adicional). 35
36 FUNCIONES Int ConstruyePaquete(char *buf, char *qname, int qnamelen) Recibe un puntero al inicio del paquete (buf), el nombre del dominio (qname)) y la longitud de dicho nombre (qnamelen( qnamelen). Se crea un paquete con la pregunta : Se rellenan los campos de la cabecera (estructura HEADER) : hp.id = CodPaquete; hp.qr = 0; // PREGUNTA hp.opcode = 0; // PREGUNTA ESTANDAR hp.z = 0; // Z DEBE ESTAR A 0 hp.qdcount = htons(1); // NUMERO DE PREGUNTAS hp.tc = 0; // NO TRUNCAR hp.rd = 1; // PREGUNTA RECURSIVA Seguidamente nos encargamos de la pregunta : 1 - Llamamos a la función CodificaNombre 2 - Pedimos al usuario el tipo de interrogación que desea y ponemos la clase a 1 (IN). Se devuelve el tamaño del paquete creado. 36
37 FUNCIONES int DecodificaPaquete(u_char *buf, int buflen) CODIGO Recibe un puntero al inicio del paquete (buf), la longitud del paquete (buflen). Muestra la información que contiene el paquete de respuesta. Va accediendo a las posiciones de memoria de la cabecera,, la pregunta (QNAME, tipo y clase) y los registros de recursos (para mostrar los datos se hace uso de la función MuestraRR). int main(int int argc,, char **argv argv) Recibe como parámetros el nº argumentos y los argumentos (dirección IP del servidor y el nombre de dominio). Si el nombre de dominio no acaba en punto se le añade. Se inicializa y crea el socket (puerto 53 UDP) Empaquetamos (función ConstruyePaquete) ) y enviamos el paquete. Recibimos la respuesta y la desempaquetamos (función 37 DecodificaPaquete) )
38 FIN 38
Introducción a la programación con sockets en C
Introducción a la programación con sockets en C Enrique Bonet Departamento de Informática Universidad de Valencia Índice Introducción Socket Creación de un socket Cierre de un socket Asociación de un socket
Más detallesEstructuras y funciones de programación de sockets.
Estructuras y funciones de programación de sockets. Introducción. En estos apuntes se incluye una breve descripción de las estructuras y funciones cuyo uso puede ser necesario para el desarrollo de las
Más detallesDomain Name System. Ing. Carlos A. Barcenilla <c.a.barcenilla@ieee.org> Ing. Agustín Eijo <agu@frlp.utn.edu.ar>
Domain Name System Ing. Carlos A. Barcenilla Ing. Agustín Eijo Qué es DNS? DNS es una base de datos distribuida, jerárquica y redundante. La información
Más detallesIntroducción de Sockets en C.
PRÁCTICA 2: Introducción de Sockets en C. 1 La Interfaz Socket es una API para redes TCP/IP que se compone de funciones o rutinas. Originalmente se construyó a principios de los 80 para el sistema operativo
Más detallesMigrando aplicaciones a IPv6
Migrando aplicaciones a Fundamentos técnico: DualStack y Socket.h Alonso Sandoval A. Hernán Vargas L. Universidad Técnica Federico Santa María asandova@alumnos.inf.utfsm.cl, hvargas@alumnos.inf.utfsm.cl
Más detallesCOMUNICACIÓN ENTRE PROCESOS SOCKETS
COMUNICACIÓN ENTRE PROCESOS SOCKETS Diseño de Sistemas Operativos Curso 2007/08 Grupo: Mi30 Martín Santana, A. David Martínez Santana, Luis Ignacio Qué son?(definición) n) Los sockets son mecanismos de
Más detallesMecanismos IPC: sockets
Mecanismos IPC: sockets Ampliación de Sistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid Sockets Los sockets son una abstracción lógica que permiten la comunicación bidireccional
Más detallesAdaptación de aplicaciones a IPv6
Adaptación de aplicaciones a IPv6 extensión de la interfaz de sockets Eva M. Castro ecastro@dit.upm.es Tutorial IPv6 -Adaptación de aplicaciones a IPv6 1 Contenido * Introducción Modelo de sockets BSD
Más detallesInterfaz de Socket. Agustín J. González ELO309 ELO309 1
Interfaz de Socket Agustín J. González ELO309 ELO309 1 Introducción Cómo las aplicaciones se comunican con la familia de protocolos de software y así logran comunicación con aplicaciones remotas? La interfaz
Más detallesUNIVERSIDAD DE CANTABRIA DEPARTAMENTO DE INGENIERÍA DE COMUNICACIONES GRUPO DE INGENIERÍA TELEMÁTICA
UNIVERSIDAD DE CANTABRIA DEPARTAMENTO DE INGENIERÍA DE COMUNICACIONES GRUPO DE INGENIERÍA TELEMÁTICA MANUAL DE SOCKETS EN C TABLA DE CONTENIDOS Introducción.. 4 Sockets en C.. 7 2.1 Conceptos Básicos..
Más detallesTELEPROCESO Y SISTEMAS DISTRIBUIDOS
Universidad Nacional del Nordeste TELEPROCESO Y SISTEMAS DISTRIBUIDOS La Interfaz Socket Lic. Vanesa S. Roffé Año 2009 Introducción - Origen de la INTERFAZ SOCKET La Interfaz Socket es una API para redes
Más detallesModem IBM Compatible. IBM Compatible. Ethernet IBM AS/400. Laser printer. Workstation. Mac II. El Interfaz. Socket. versión perliminar
IBM Compatible Modem IBM Compatible Ethernet IBM AS/400 Laser printer Workstation Mac II El Interfaz Socket versión perliminar ÍNDICE 1. INTRODUCCIÓN. 2. QUÉ ES UN SOCKET?. 2.1. Dominio de un socket. 2.2.
Más detallesSockets: funcionamiento y programación. Sockets tipo UNIX. MSc. Ivan A. Escobar
Sockets tipo UNIX MSc. Ivan A. Escobar Creación socket: socket() int socket(familia, tipo, protocolo) Regresa un valor entero Parecido descriptor de archivos: descriptor socket sockfd int familia familia
Más detallesPráctica 1 Programación de Aplicaciones Distribuidas: Sockets UDP. Laboratorio de Comunicación de Datos ITT Telemática Septiembre 2011
Práctica 1 Programación de Aplicaciones Distribuidas: Sockets UDP Laboratorio de Comunicación de Datos ITT Telemática Septiembre 2011 Introducción Aplicaciones Distribuidas Su funcionalidad se distribuye
Más detallesSistemas de Transportes de Datos (STD) Tema II: IP (Entrega 6) Grupo de Aplicaciones Telemáticas. Grupo de Aplicaciones Telemáticas
DNS: Domain Name System El Domain Name System (DNS) es una base de datos distribuida que las aplicaciones de Internet utilizan para mapear nombres de máquinas y las direcciones IP correspondientes. Los
Más detallesSOCKETS BASADOS EN CONEXIÓN (SOCK_STREAM)
RESUMEN - Servicios UNIX para Sockets SII Curso 2017/2018 SOCKETS BASADOS EN CONEXIÓN (SOCK_STREAM) int socket(int dominio, int tipo, int protocolo); Devuelve el descriptor de fichero para acceder al socket
Más detallesSockets (UDP) Tema 2.- Nivel de aplicación en Internet
Sockets (UDP) Tema 2.- Nivel de aplicación en Internet Dr. Daniel Morató es de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Sockets y UDP UDP: no hay conexión entre cliente y servidor»
Más detallesQué es un socket? Dominios de comunicación. Tipos de sockets en el dominio AF_INET. Sockets Stream. Sockets Datagram. Sockets Raw
Qué es un socket? Es una interfaz de entrada salida de datos que permite la intercomunicación entre procesos. Los procesos pueden estar ejecutándose en el mismo o en distintos sistemas, unidos mediante
Más detallesDESARROLLO DE APLICACIONES DISTRIBUIDAS. SOCKETS en UNIX
DESARROLLO DE APLICACIONES DISTRIBUIDAS PRÁCTICAS CURSO 2002-2003 SOCKETS en UNIX 1. Los SOCKETS en OSI/ISO - Como ya conocéis, el modelo OSI/ISO estructura los diferentes elementos que conforman una red
Más detallesProblemas de Redes de Computadores. Conjunto de problemas 1
Problemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1 Pregunta 1.1: Si configuro mi servidor Web para que no acepte conexiones desde la dirección IP 130.206.1.1,
Más detallesRedes (IS20) Ingeniería Técnica en Informática de Sistemas. http://www.icc.uji.es. CAPÍTULO 8: El nivel de transporte en Internet
Redes (IS20) Ingeniería Técnica en Informática de Sistemas http://www.icc.uji.es CAPÍTULO 8: El nivel de transporte en Internet ÍNDICE 1. Introducción Curso 2002-2003 - Redes (IS20) -Capítulo 8 1 1. Introducción
Más detallesDiseño de aplicaciones distribuidas ÍNDICE
Aplicaciones Distribuidas (s) Aplicaciones Distribuidas (s) TCP TCP Protocolos de Protocolos de Transporte Transporte UDP UDP STREAM STREAM (TCP) (TCP) SOCKET SOCKET Etapas en la Creación Etapas en la
Más detallesProblemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1
Problemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1 Preguntas cortas Pregunta 1.1: Si configuro mi servidor Web para que no acepte conexiones desde
Más detallesIngeniería Técnica de Telecomunicación, esp. Telemática Universidad de Jaén
Contenido. Introducción Primitivas Sockets orientadas a conexión (TCP) Primitivas orientadas a no conexión (UDP) Programación con Sockets en Internet Funciones sockets Funciones auxiliares 1 Bibliografía.
Más detallesTema 4: Sockets: Un interfaz con TCP/IP
Tema 4: Sockets: Un interfaz con TCP/IP Introducción. Conceptos básicos. Dirección de un socket. Llamadas básicas de los sockets. Diferencias entre BSD-Sockets y WinSockets. Asignación de puertos a procesos.
Más detallesProgramación con Sockets
Programación con Sockets INTRODUCCIÓN 1 Qué son los Sockets? Son un mecanismo de comunicación entre procesos: Dentro de una misma máquina. Distribuidos en diferentes máquinas. Que pueden ser identificados
Más detallesBoletín 7- Sockets. Departamento de Lenguajes y Sistemas Informáticos
Boletín 7- Sockets Departamento de Lenguajes y Sistemas Informáticos Indice 1. Introducción. 2. Tipos de sockets. 3. socket() 4. bind() 5. listen() 6. accept() 7. connect() 8. send()/ ()/recv(). 9. Funciones
Más detallesSOCKET S. Alberto Castro Rojas
SOCKET S EL64E Alberto Castro Rojas 1 Interfaz de programación genérica Soporte de múltiples suites de protocolos de comunicación (familias) Representaciones de direcciones sin dependencias (endpoint)
Más detallesBOLETIN 8 INDICE. ordenación de bytes. conversión de nombre y direcciones.
Sockets BOLETIN 8 INDICE 1. Introducción. 2. Tipos de sockets. 3. socket() 4. bind() 5. listen() 6. accept() 7. connect() 8. send()/recv(). 1. Funciones de ordenación de bytes 2. Funciones de conversión
Más detallesClase de Sockets en lenguaje C. Prof. Ricardo González
Clase de Sockets en lenguaje C Prof. Ricardo González 1 Modelo de Programación Cliente-Servidor Cliente: un programa que envía peticiones. Servidor: un programa que ofrece un servicio que satisface peticiones
Más detallesAnalista Universtiario en Sistemas. Sistemas Operativos. IPC - Sockets SOCKETS
SOCKETS Introducción Permiten la comunicación entre dos o más procesos ejecutando en un mismo equipo o equipos independientes La comunicación que posibilitan es full-duplex (bi-direccional) Sigue el modelo
Más detallessockets Flujo (SOCK_STREAM) Comunicación bidireccional Confiable (entrega garantizada) Información ordenada en el destino Datagrama (SOCK_DGRAM)
s s Comunicación punto-a-punto entre procesos Los s son los extremos de la comunicación Diferentes dominios UNIX: Entre procesos de un mismo equipo Internet: Entre procesos de diferentes equipos (TCP/IP)
Más detalles-> Todo socket viene definido por dos características fundamentales:
LOS SOCKETS. Los sockets no son más que puntos o mecanismos de comunicación entre procesos que permiten que un proceso hable (emita o reciba información) con otro proceso incluso estando estos procesos
Más detallesTema 4.1: - TRANSPORTE-
Tema 4.1: - TRANSPORTE- -Introducción - Terminología OSI - Tipologia y complejidad - Servicios - Calidad de servicio - Conexiones de transporte - Transporte en Internet - Introducción. Su función básica
Más detallesSockets (TCP) Tema 2.- Nivel de aplicación en Internet
Sockets (TCP) Tema 2- Nivel de aplicación en Internet Dr Daniel Morató es de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Material parcialmente adaptado del libro Computer Networking:
Más detallesCaracterísticas de un lenguaje ideal para robótica
COMUNICACIÓN MEDIANTE SOCKETS Enrique Ortega Edrodoso Ingeniería Técnica de Informática de Gestión Introducción Los vehículos autoguiados comerciales disponibles en la actualidad tienen una serie de inconvenientes
Más detallesServidor DNS. Ing. Camilo Zapata czapata@udea.edu.co Universidad de Antioquia
Servidor DNS. Ing. Camilo Zapata czapata@udea.edu.co Universidad de Antioquia Introducción. Los seres humanos pueden ser identificados de muchas maneras. Los host de Internet tambien!! Un identificador
Más detallesSistemas Distribuidos. Sockets
Sistemas Distribuidos Sockets Sockets Aparecieron en 1981 en UNIX BSD 4.2 Intento de incluir TCP/IP en UNIX. Diseño independiente del protocolo de comunicación. Un socket es punto final de comunicación
Más detallesSistemas Operativos: Programación de Sistemas. Curso 2006-07. Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J.
Tema 7 : Comunicación mediante sockets Sistemas Operativos: Programación de Sistemas Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J. Santana Pérez Curso 2006-07 Introducción Los sockets (también
Más detallesProgramación de sockets
Programación de sockets Xavier Perramon Tornil Enric Peig Olivé P03/75064/00978 FUOC P03/75064/00978 Programación de sockets Índice Introducción... 5 Objetivos... 6 1. Qué son los sockets... 7 1.1. Visión
Más detallesCOMUNICACIÓN Sistemas Distribuidos
COMUNICACIÓN Sistemas Distribuidos Alvaro Ospina Sanjuan Universidad Pontificia Bolivariana Medellín 2010 Agenda Comunicación centralizada y distribuida Protocolos con capas Modelo cliente servidor Sockets
Más detallesSistemas Operativos Distribuidos
Sockets Sistemas Distribuidos Sockets Aparecieron en 1981 en UNIX BSD 4.2 Intento de incluir TCP/IP en UNIX. Diseño independiente del protocolo de comunicación. Un socket es punto final de comunicación
Más detallesServidores de nombres de dominio (DNS) Jesús Torres Cejudo
Zonas Zona de Búsqueda Directa.- Las resoluciones de esta zona devuelven la dirección IP correspondiente al recurso solicitado; este tipo de zona realiza las resoluciones que esperan como respuesta la
Más detallesProgramación de aplicaciones distribuidas usando sockets
Programación de aplicaciones distribuidas usando sockets 1 a Versión: José Luis Díaz. Octubre 1994. 2 a Versión: José Ramón Arias. Nov. 1998, Oct. 1999, Oct. 2000. Índice general 1. Programación de aplicaciones
Más detallesPRÁCTICA 4 PASO DE MENSAJES
PRÁCTICA 4 PASO DE MENSAJES Introducción Cuando los procesos interactúan unos con otros pueden necesitar intercambiar información. Uno de los métodos posibles para conseguir esto es el paso de mensajes.
Más detallesEstructuras y funciones de programación de sockets.
Estructuras y funciones de programación de sockets. Introducción. Autor: Enrique Bonet En estos apuntes se incluye una breve descripción de las estructuras y funciones cuyo uso puede ser necesario para
Más detallesLuis Villalta Márquez SERVIDORES DE NOMBRES DE DOMINIO (DNS)
Luis Villalta Márquez SERVIDORES DE NOMBRES DE DOMINIO (DNS) Servidores de nombres de dominio (DNS) ZONAS. AUTORIDAD. REGISTRO DE RECURSOS (RR) ZONA DE BÚSQUEDA Zonas Zona de Búsqueda Directa. Las resoluciones
Más detallesServicios de Internet
Servicios de Internet Area de Ingeniería Telemática http://www.tlm.unavarra.es Arquitectura de Redes, Sistemas y Servicios 3º Ingeniería de Telecomunicación 1 Temario 1. Introducción 2. Arquitecturas,
Más detallesDNS: Domain Name System
1 DNS: Domain Name System Sistemas Telemáticos I Por qué es necesario el DNS? 2 Por qué es necesario el DNS? Los humanos preferimos nombres a direcciones IP (ej: cacharro.cct.urjc.es frente a 212.128.1.44)
Más detallesBloque II: El nivel de aplicación. Tema 4: Aplicaciones no orientadas a conexión
Bloque II: El nivel de aplicación Tema 4: Aplicaciones no orientadas a conexión Índice Bloque II: El nivel de aplicación Tema 4: Aplicaciones no orientadas a conexión DNS Introducción Dominios DNS Mensajes
Más detallesComunicación entre Procesos y Sockets
Temas de la clase de hoy Proceso Sockets Dominios, protocolos y tipos vinculados a los sockets Introducción a Stream y Datagram El modelo cliente-servidor Funciones del cliente Funciones del servidor Orientación
Más detallesDNS LSUB, GYSC, URJC
DNS LSUB, GYSC, URJC Qué es Las máquinas tienen direcciones 193.147.49.23 Los humanos usan nombres: google.es Quien traduce? Por qué? Para una varias ip puedo tener el mismo nombre Si se cae una máquina,
Más detallesProgramación con sockets
Programación con sockets Internetworking with TCP/IP Client/Server Programming and Applications: Linux/POSIX Sockets Version Douglas E. Comer David L. Stevens Capítulos: 2, 5, 7 Grupo de Sistemas y Comunicaciones
Más detallesComponentes del servicio de nombres de dominio. Javier Rodríguez Granados
Componentes del servicio de nombres de dominio. Javier Rodríguez Granados Complementos principales Los Clientes DNS: Un programa cliente DNS que se ejecuta en el ordenador del usuario y que genera peticiones
Más detallesTema 4 Sockets: Un interfaz con TCP/IP
1 Tema 4 Sockets: Un interfaz con TCP/IP Capítulos: Introducción. Conceptos básicos. Dirección de un socket. Llamadas básicas de los sockets. Diferencias entre BSD-Sockets y WinSockets. Asignación de puertos
Más detallesRegistros de recursos DNS. Javier Rodríguez Granados
Registros de recursos DNS. Javier Rodríguez Granados Registros de Recursos (RR) Para resolver nombres, los servidores consultan sus zonas. Las zonas contienen registros de recursos que constituyen la información
Más detalles[CONFIGURACIÓN DE DNS]
2010 C.I.F.P Juan de Colonia Yuliyan Tsvetanov Marinov [CONFIGURACIÓN DE DNS] A través de este documento se verán las generalidades del servicio de resolución de nombres (DNS) y como configurarlo bajo
Más detallesRedes de Computadores Nivel de Aplicación: Programación con sockets I
Redes de Computadores Nivel de Aplicación: Programación con sockets I Área de Ingeniería Telemática Dpto. Automática y Computación http://www.tlm.unavarra.es/ En clases anteriores... El nivel de aplicación
Más detallesARQUITECTURA DE REDES Laboratorio
1nsloo.cl ARQUITECTURA DE REDES Laboratorio Práctica 2: Ejercicios de aplicación de Sockets en C 1. OBJETIVOS. El objetivo de esta práctica es que el alumno llegue a conocer los principales conceptos relacionados
Más detallesProgramación C/S Básica
1 de 16 Programación C/S Básica Enrique Alba Torres Universidad de Málaga (UMA) 2 de 16 Los servicios Internet se ofertan como sistemas Cliente/Servidor Los protocolos de base suelen ser peer-to-peer (igual-a-igual)
Más detallesRegistro de recursos DNS. Jesús Torres Cejudo
Un DNS es una base de datos distribuida que contiene registros que se conocen como RR (Registros de Recursos), relacionados con nombres de dominio. La siguiente información sólo es útil para las personas
Más detallesTUTORIAL INSTALACIÓN Y CONFIGURACIÓN SERVIDOR DNS BIND9 NET-DAEMONS ADRIAN PEÑA JOHAN LOPEZ FELIPE PANIAGUA RICARDO HENAO LINA MCKOLL
TUTORIAL INSTALACIÓN Y CONFIGURACIÓN SERVIDOR DNS BIND9 NET-DAEMONS ADRIAN PEÑA JOHAN LOPEZ FELIPE PANIAGUA RICARDO HENAO LINA MCKOLL ADMINISTRACION DE REDES SENA 2009 Este tutorial está hecho con el fin
Más detallesEL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET
1 EL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET Cada capa de la pila añade a los datos a enviar a la capa inferior, información de control para que el envío sea correcto. Esta información
Más detallesEs la capa donde se encuentran las aplicaciones que interactúan con el usuario. Son la razón de ser de las redes de datos
Capa de aplicación Capa de aplicación Es la capa donde se encuentran las aplicaciones que interactúan con el usuario Son la razón de ser de las redes de datos En Internet, son estas aplicaciones el principal
Más detallesServidor DNS. Ing Camilo Zapata czapata@udea.edu.co Universidad de Antioquia
Servidor DNS. Ing Camilo Zapata czapata@udea.edu.co Universidad de Antioquia Introducción. Las personas prefieren la identificación de nombres de host; los routers prefieren las direcciones IP. Su principal
Más detallesDNS Domain Name System Sistema de Nombres de Dominio Administración de Redes de Computadores John Deivis Tabares Tobón Luis Fernando Ramirez
DNS Domain Name System Sistema de Nombres de Dominio Administración de Redes de Computadores John Deivis Tabares Tobón Luis Fernando Ramirez CONFIGURACION DEL SERVIDOR DNS EN WINDOWS SERVER 2008 Domain
Más detallesSockets Básicos. Sockets Básicos
Sockets Básicos Pedro Merino Gómez Jesus Martínez Cruz Dpto. Lenguajes y Ciencias de la Computación Universidad de Málaga Sockets Básicos Temas a tratar... APIS para acceso a TCP/IP El socket como descriptor
Más detallesSockets Básicos. APIS para acceso a TCP/IP. APIS para acceso a TCP/IP. APIS para acceso a TCP/IP. APIS para acceso a TCP/IP. Temas a tratar...
Sockets Básicos Pedro Merino Gómez Jesus Martínez Cruz Dpto. Lenguajes y Ciencias de la Computación Universidad de Málaga Temas a tratar... Sockets Básicos El como descriptor para E/S Funciones básicas
Más detallesEL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET
1 EL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET La familia de protocolos TCP/IP fue diseñada para permitir la interconexión entre distintas redes. El mejor ejemplo es Internet: se trata
Más detallesNivel de Transporte en Internet
Nivel de Transporte en Internet Nivel de Transporte en TCP/ La capa de transporte transmite mensajes entre las aplicaciones de dos ordenadores. La programación de aplicaciones sobre el nivel de transporte
Más detallesDNS. Domain Name System. Sistema de Nombres de Dominio. Administración de Redes de Computadores. Ficha: 149822.
DNS. Domain Name System. Sistema de Nombres de Dominio. Administración de Redes de Computadores. Ficha: 149822. John Deivis Tabares Tobón. Luis Fernando Ramirez Gallego. Configuracion del servidor DNS
Más detallesRed LSUB. 4 de marzo de 2015 GSYC
Red LSUB GSYC 4 de marzo de 2015 (cc) 2015 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial - SinObraDerivada
Más detallesArquitecturas Cliente/Servidor
Arquitecturas Cliente/Servidor Integrantes: Arellano Santiago Víctor Manuel Girón Capistrán Aldo Iván Guerrero Ramirez Eduardo Daniel Rosas Peña Ramiro SOCKETS EN C. LLAMADAS PARA EL MANEJO DE SOCKETS
Más detallesPráctica 2 Programación de Aplicaciones Distribuidas: Sockets TCP. Laboratorio de Comunicación de Datos ITT Telemática 26 de Septiembre 2011
Práctica 2 Programación de Aplicaciones Distribuidas: Sockets TCP Laboratorio de Comunicación de Datos ITT Telemática 26 de Septiembre 2011 Introducción Aplicaciones Orientadas a Conexión TCP:Servicio
Más detallesIntroduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia
Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por
Más detallesTema 3: COMUNICACIÓN ENTRE PROCESOS
Tema 3: COMUNICACIÓN ENTRE PROCESOS E. U. Informática en Segovia Departamento de Informática Universidad de Valladolid 1 Introducción Estudia las comunicaciones punto a punto entre los lados de un enlace
Más detallesPunto 6 Servidores de nombres de dominio. Juan Luis Cano
Punto 6 Servidores de nombres de dominio Juan Luis Cano Un servidor DNS es un equipo al que se le ha agregado éste servicio y se han configurado las resoluciones de nombres. Las zonas están autorizadas
Más detallesAdministración de redes en GNU/Linux
Administración de redes en GNU/Linux La configuración de una red en UNIX/Linux es en cierta medida más compleja que en sistemas Microsoft. Sin embargo para numerosos administradores tiene un mayor grado
Más detallesInformàtica i Comunicacions Plaça Prnt. Tarradellas, 11 17600 FIGUERES (Girona) Tel. 902 88 92 67 Fax 972 671 962 www.cesigrup.es
DNS (Domain Name System)...2 La estructura... 2 Servidores DNS e Internet... 3 Dominios... 3 Servidores de nombres... 3 Servidores de nombres Principal y Secundario... 4 Los archivos del DNS... 4 Registro
Más detallesRouter Teldat. Cliente DNS
Router Teldat Cliente DNS Doc. DM723 Rev. 10.00 Marzo, 2003 ÍNDICE Capítulo 1 Domain Name System...1 1. Introducción...2 2. Resolución de dominios...3 2.1. Funcionamiento del resolvedor de nombres de dominio...4
Más detallesPortando aplicaciones a IPv6
Portando aplicaciones a Eva M. Castro eva@gsyc.escet.urjc.es Grupo de Sistemas y Comunicaciones (GSyC( GSyC) Departamento de Informática, Estadística y Telemática (DIET) Universidad Rey Juan Carlos (URJC)
Más detallesCAPÍTULO HTML Y DHCP DE H0/H2-ECOM100 CONFIGURACIÓN. En este capítulo...
CONFIGURACIÓN HTML Y DHCP DE H0/H2-ECOM100 CAPÍTULO 56 6 En este capítulo... Características DHCP de H0/H2 -ECOM100...................6-2 Deshabilitando DHCP y asignando una DIRECCION IP estática.....6-2
Más detallesDNS: Domain Name System
DNS: Domain Name System Bibliografía: Redes de Computadores: un enfoque descendente basado en Internet : J.F Kurose y K.W. Ross. 1 Nombres y direcciones Nombre: forma de identificar una entidad en un sistema
Más detallesServicio de resolución de nombres (DNS)
Servicio de resolución de nombres (DNS) La funcionalidad de DNS (Domain Name System) es convertir nombres de máquinas, legibles y fáciles de recordar por los usuarios, en direcciones IP y viceversa. El
Más detallesSistemas de Transportes de Datos (STD) Tema II: IP (Entrega 2) Grupo de Aplicaciones Telemáticas. Grupo de Aplicaciones Telemáticas
Resolución de direcciones (ARP) Distinguir entre dirección IP y dirección física en la red. Cuando un host debe enviar un datagrama a la red debe: Determinar si el host destinatario está en la misma red
Más detallesDNS (Domain Name System, Sistema de nombres de dominio). RFC 1034 y RFC 1035. - Resolver envía paquete UDP a un servidor DNS.
DNS (Domain Name System, Sistema de nombres de dominio). RFC 1034 y RFC 1035 - Realmente no es una aplicación, sino un servicio. Es mas facil recordar nombres que números. - Inicialmente (ARPANET) solo
Más detallesClase de DNS y SMTP. Teoría de las Comunicaciones 13/06/2012. Departamento de Computación Universidad de Buenos Aires
Clase de DNS y SMTP Teoría de las Comunicaciones Departamento de Computación Universidad de Buenos Aires 13/06/2012 Esquema DNS SMTP Para que sirve? Problemas: Las personas no se pueden andar acordando
Más detallesAnálisis Experimental de la Transmisión de Datos
UNIVERSIDAD TÉCNICA FEDERICO SANTA MARÍA DEPARTAMENTO DE ELECTRÓNICA Análisis Experimental de la Transmisión de Datos ELO322 Redes de Computadores I Pablo Ahumada D. Jorge Cápona G. Resumen Se muestra
Más detallesTEMA 2: FUNCIONAMIENTO DE INTERNET.
TEMA 2: FUNCIONAMIENTO DE INTERNET. ESCUELA UNIVERSITARIA DE INFORMÁTICA Raúl Martín Martín 2.1. Arquitectura Cliente-Servidor La arquitectura cliente-servidor consiste en la existencia de dos tipos de
Más detallesServicio de Nombre DNS. Sistema de Nombres. Contenido Arquitectura Configuración Seguridad Conclusiones DNS
Servicio de Nombre DNS DNS Por qué es necesario? /etc/hosts vs DNS Cliente (resolver) Servidor (named/bind) Estructura jerárquica en árbol basado en dominios y con delegación de autoridad Espacio de nombre
Más detallesCurso redes sobre Linux DNS. Domain Name Server. Servidor de Nombres de Dominio. De la Fraga Julio 2001 1
DNS Domain Name Server Servidor de Nombres de Dominio De la Fraga Julio 2001 1 El Servidor de Nombres de Dominio: datos distribuida jerárquicamente. es una base de Por su funcionamiento, es un conjunto
Más detallesSistema Cliente Servidor Con Sockets
Sistema Cliente Servidor Con Sockets Rafael Benedicto Tovar Antonio Soler Muñoz 0 Índice 1. Resumen del proyecto 2 Introducción teórica 2.1 - Qué es un socket? 2.2 - Dominios de comunicación 2.3 - Tipos
Más detallesImplementado servidor DNS con BIND en CentOS 5.5
Implementado servidor DNS con BIND en CentOS 5.5 Introducción. Bueno amigos la implementación que vamos hacer es básica y un poco sencilla, para que uno se pueda familiarizar con los archivos de configuración.
Más detallesDirecciones IP y máscaras de red
También en este nivel tenemos una serie de protocolos que se encargan de la resolución de direcciones: ARP (Address Resolution Protocol): cuando una maquina desea ponerse en contacto con otra conoce su
Más detallesUNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO. Facultad de Ingeniería
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO Facultad de Ingeniería Arquitecturas Cliente/Servidor Sockets en C Alumnos: Arellano Santiago Víctor Manuel Girón Capistrán Aldo Iván Guerrero Ramirez Eduardo Daniel
Más detallesCONVERSIÓN DE UN NÚMERO EN BINARIO A DECIMAL Y VICEVERSA
CONVERSIÓN DE UN NÚMERO EN BINARIO A DECIMAL Y VICEVERSA CONVERSIÓN ENTRE BINARIO Y DECIMAL Si la conversión es de binario a decimal, aplicaremos la siguiente regla: se toma la cantidad binaria y se suman
Más detallesSOCKETS en Linux. Lic. Leonardo de - Matteis. Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur 2011
Introducción al uso de SOCKETS en Linux Lic. Leonardo de - Matteis Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur 2011 Interfaz de programación de aplicaciones NAPI
Más detallesConfiguración de BIND y DNS
Configuración de BIND y DNS La configuración del Servicio del nombre de dominio es un tema extenso al que se han dedicado libros enteros. En este tema lo que vamos a hacer es comentar la herramienta Configuración
Más detallesWindows Server 2012: Zonas DNS
Windows Server 2012: Zonas DNS 2 Tabla de Contenidos Objetivos... 5 Zonas DNS... 7 Qué es una zona DNS?... 7 Tipos de zonas DNS... 7 Zona principal... 8 Zona secundaria... 8 Zona de rutas internas... 8
Más detalles