1_servicio_eco_stream_secuencial/eco_clie_tcp.c Tue Mar 09 09:57:

Tamaño: px
Comenzar la demostración a partir de la página:

Download "1_servicio_eco_stream_secuencial/eco_clie_tcp.c Tue Mar 09 09:57:"

Transcripción

1 1_servicio_eco_stream_secuencial/eco_clie_tcp.c Tue Mar 09 09:57: #include <netdb.h> #include <string.h> int s, leido; struct sockaddr_in dir; struct hostent *host_info; host_info=gethostbyname("localhost"); memcpy(&dir.sin_addr.s_addr, host_info->h_addr, host_info->h_length); if (connect(s, (struct sockaddr *)&dir, sizeof(dir)) < 0) { perror("error en connect"); while ((leido=read(0, buf, TAM))>0) { if (write(s, buf, leido)<0) { perror("error en write"); if ((leido=read(s, buf, TAM))<0) { write(1, buf, leido);

2 1_servicio_eco_stream_secuencial/eco_clie_tcp_1pet_por_conexion.c Tue Mar 09 09:57: #include <netdb.h> #include <string.h> int s, leido; struct sockaddr_in dir; struct hostent *host_info; host_info=gethostbyname("localhost"); memcpy(&dir.sin_addr.s_addr, host_info->h_addr, host_info->h_length); while ((leido=read(0, buf, TAM))>0) { if (connect(s, (struct sockaddr *)&dir, sizeof(dir)) < 0) { perror("error en connect"); if (write(s, buf, leido)<0) { perror("error en write"); if ((leido=read(s, buf, TAM))<0) { write(1, buf, leido);

3 1_servicio_eco_stream_secuencial/eco_serv_tcp.c Tue Mar 09 09:57: void traza_estado(const char *mensaje) { printf("\n %s \n", mensaje); system("netstat -at head -2 tail -1"); system("netstat -at grep 56789"); printf(" \n\n"); if (leido<0) { traza_estado("después de close de conexión"); int s, s_conec, leido; int opcion=1; /* Para reutilizar puerto inmediatamente */ if (setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &opcion, sizeof(opcion))<0){ perror("error en setsockopt"); if (listen(s, 5) < 0) { perror("error en listen"); traza_estado("después de listen"); if ((s_conec=accept(s, (struct sockaddr *)&dir_cliente, &tam_dir))<0){ perror("error en accept"); traza_estado("después de accept"); while ((leido=read(s_conec, buf, TAM))>0) { if (write(s_conec, buf, leido)<0) { perror("error en write");

4 2_servicio_eco_stream_fork/eco_serv_tcp_fork.c Tue Mar 09 09:57: #include <signal.h> exit(1); exit(0); int s, s_conec, leido; int opcion=1; /* Para evitar que los hijos se queden zombis */ signal(sigcld, SIG_IGN); /* Para reutilizar puerto inmediatamente */ if (setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &opcion, sizeof(opcion))<0){ perror("error en setsockopt"); if (listen(s, 5) < 0) { perror("error en listen"); if ((s_conec=accept(s, (struct sockaddr *)&dir_cliente, &tam_dir))<0){ perror("error en accept"); if (fork()==0) { while ((leido=read(s_conec, buf, TAM))>0) { if (write(s_conec, buf, leido)<0) { perror("error en write"); exit(1); if (leido<0) {

5 3_servicio_eco_stream_thread/eco_serv_tcp_thread.c Tue Mar 09 09:57: #include <pthread.h> if (listen(s, 5) < 0) { perror("error en listen"); void * servicio(void *arg){ int s, leido; s=(int) arg; while ((leido=read(s, buf, TAM))>0) { if (write(s, buf, leido)<0) { perror("error en write"); return NULL; if ((s_conec=accept(s, (struct sockaddr *)&dir_cliente, &tam_dir))<0){ perror("error en accept"); pthread_create(&thid, &atrib_th, servicio, (void *)s_conec); /* Esta forma de pasar el parã metro no serã-a vã lida puesto que se produce una condiciã³n de carrera */ //pthread_create(&thid, NULL, servicio, &s_conec); if (leido<0) { return NULL; return NULL; int s, s_conec; int opcion=1; pthread_t thid; pthread_attr_t atrib_th; /* Creamos los thread de tipo detached para que liberen sus recursos al terminar sin necesidad de que se haga un pthread_join */ pthread_attr_init(&atrib_th); pthread_attr_setdetachstate(&atrib_th, PTHREAD_CREATE_DETACHED); /* Para reutilizar puerto inmediatamente */ if (setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &opcion, sizeof(opcion))<0){ perror("error en setsockopt");

6 4_servicio_eco_stream_select/eco_serv_select_tcp.c Tue Mar 09 09:57: #include <sys/select.h> int i, s, s_conec, leido, ndesc; int opcion=1; fd_set desc_sockets; fd_set desc_sockets_copia; /* Para reutilizar puerto inmediatamente */ if (setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &opcion, sizeof(opcion))<0){ perror("error en setsockopt"); if (listen(s, 5) < 0) { perror("error en listen"); FD_ZERO(&desc_sockets); FD_SET(s, &desc_sockets); desc_sockets_copia=desc_sockets; if ((ndesc=select(fd_setsize, &desc_sockets_copia, NULL, NULL, NULL))<0) { perror("error en select"); if (FD_ISSET(s, &desc_sockets_copia)) { ndesc--; for (i=0; ndesc; i++) { if (FD_ISSET(i, &desc_sockets_copia)) { ndesc--; if ((leido=read(i, buf, TAM))>0) { if (write(i, buf, leido)<0) { perror("error en write"); if (leido<0) { if (leido==0) { // cliente cierra conexión close(i); FD_CLR(i, &desc_sockets); if ((s_conec=accept(s, (struct sockaddr *)&dir_cliente, &tam_dir))<0){ perror("error en accept"); FD_SET(s_conec, &desc_sockets);

7 5_sockets_con_stdio/cliente_http.c Tue Mar 09 09:57: #include <sys/types.h> #include <arpa/inet.h> #include <netdb.h> #include <string.h> close (s); exit(1); printf("********** INICIO CUERPO *********\n\n"); while ((lmens=fread (buffer, 1, MAX, desc_soc))>0) fwrite(buffer, lmens, 1, stdout); printf("********** FIN CUERPO *********\n\n"); #define MAX 1024 int main(int argc, char *argv[]) { int s, lmens; struct sockaddr_in dir; char linea[max]; char buffer[max]; struct hostent *host_desc; FILE *desc_soc; char *res; if (argc!=4) { fprintf(stderr, "Uso: %s host puerto URL\n", argv[0]); exit(1); if ((s=socket(pf_inet, SOCK_STREAM, 0))<0) { perror("error creando socket"); exit(1); dir.sin_port=htons(atoi(argv[2])); host_desc= gethostbyname(argv[1]); memcpy (&(dir.sin_addr), host_desc->h_addr, host_desc->h_length); if (connect(s, (struct sockaddr *)&dir, sizeof(dir))<0) { perror("error conectando socket"); close (s); exit(1); /* Habilito acceso a socket desde stdio */ desc_soc=fdopen(s, "r+"); if (fprintf(desc_soc,"get %s HTTP/1.1\nHost: %s\nconnection: close\n\n", argv[3], argv[1])<0) { perror("error escribiendo en socket"); close (s); exit(1); printf("********** CABECERA RECIBIDA *********\n"); /* Leo la cabecera que termina con una lã-nea sã³lo con CR Y LF */ while ((res=fgets (linea, MAX, desc_soc))) { if ((linea[0]== \r ) && (linea[1]== \n )) break; fputs(linea, stdout); printf("********** FIN CABECERA *********\n\n"); if (!res) { perror("error leyendo en socket"); close (s);

8 6_suma/cliente_suma.c Tue Mar 09 09:57: #include <sys/types.h> #include <arpa/inet.h> #include <netdb.h> #include <string.h> int main(int argc, char* argv[]) { int i,c,sd; struct sockaddr_in server_addr; struct hostent *hp; long int num[2], res; if (argc!=3) { fprintf(stderr, "Uso: %s primer_sumando segundo_sumando\n", argv[0]); sd = socket(af_inet, SOCK_STREAM, IPPROTO_TCP); bzero((char *)&server_addr, sizeof(server_addr)); hp = gethostbyname ("localhost"); memcpy (&(server_addr.sin_addr), hp->h_addr, hp->h_length); server_addr.sin_family = AF_INET; server_addr.sin_port = htons(56789); // se establece la conexión connect(sd, (struct sockaddr *) &server_addr, sizeof(server_addr)); num[0]=htonl(atoi(argv[1])); num[1]=htonl(atoi(argv[2])); write(sd, (char *) num, 2 *sizeof(long int)); // envía la petición for(i=0; i<sizeof(long int) && (c=read(sd,((char *)&res)+i,sizeof(long int)-i))>0; i+=c); // recibe la respuesta printf("resultado es %d \n", ntohl(res)); close (sd);

9 6_suma/servidor_suma.c Tue Mar 09 09:57: #include <sys/types.h> #include <arpa/inet.h> #include <netdb.h> #include <string.h> int main(int argc, char *argv[]) { struct sockaddr_in server_addr, client_addr; int c,i,sd, sc, val; unsigned int size; long int num[2], res; sd = socket(af_inet, SOCK_STREAM, IPPROTO_TCP); val = 1; setsockopt(sd, SOL_SOCKET, SO_REUSEADDR, (char *) &val, sizeof(int)); bzero((char *)&server_addr, sizeof(server_addr)); server_addr.sin_family = AF_INET; server_addr.sin_addr.s_addr = INADDR_ANY; server_addr.sin_port = htons(56789); bind(sd, (struct sockaddr *)&server_addr, sizeof(server_addr)); listen(sd, 5); size = sizeof(client_addr); while (1) { printf("esperando conexion\n"); sc = accept(sd, (struct sockaddr *)&client_addr,&size); for(i=0; i<2*sizeof(long int) && (c=read(sc,((char *)num)+i,2*sizeof(long int)-i))>0; i+=c); // recibe la petición res = htonl(ntohl(num[0]) + ntohl(num[1])); write(sc, &res, sizeof(long int)); // se envía el resultado close(sc); close (sd);

10 7_recepcion_completa/cli.c Tue Mar 09 09:57: #include <netdb.h> #include <string.h> #define TAM 256 #define ITER 16 static void rellenar_mensaje(char *buf, int tam) { int i; for (i=0; i<tam; i++) buf[i]=i; int s; int i; struct sockaddr_in dir; struct hostent *host_info; char mens[tam]; if (argc!=2) { fprintf(stderr, "Uso: %s host_servidor\n", argv[0]); ; if ((host_info=gethostbyname(argv[1]))==null) { fprintf(stderr, "error en gethostbyname: %s\n", argv[1]); memcpy(&dir.sin_addr.s_addr, host_info->h_addr, host_info->h_length); if (connect(s, (struct sockaddr *)&dir, sizeof(dir)) < 0) { perror("error en connect"); rellenar_mensaje(mens, TAM); // para que tenga un contenido // conocido a priori for (i=0; i<iter; i++) if (write(s, mens, TAM)<0) { perror("error en write");

11 7_recepcion_completa/serv0.c Tue Mar 09 09:57: #define TAM 256 static void imprime_buffer(unsigned char *buf, int tam) { static int num_mens=0; printf("recibido: tam %d (mens %d byte %d - ", tam, num_mens, buf[0]); if (buf[tam-1]<buf[0]) num_mens++; printf("mens %d byte %d)\n", num_mens, buf[tam-1]); if (buf[tam-1]==255) num_mens++; int s, s_conec, leido; unsigned setbuf(stdout, NULL); if (listen(s, 5) < 0) { perror("error en listen"); if ((s_conec=accept(s, (struct sockaddr *)&dir_cliente, &tam_dir))<0){ perror("error en accept"); while ((leido=read(s_conec, buf, TAM))>0) imprime_buffer(buf, leido); if (leido<0) {

12 7_recepcion_completa/serv1.c Tue Mar 09 09:57: #define TAM 256 // Función que espera hasta que se reciban todos los datos o // se producza un error // Extraida del libro "UNIX Network Programming" de Stevens ssize_t readn(int fd, void *vptr, size_t n) { size_t nleft; ssize_t nread; char *ptr; ptr = vptr; nleft = n; while (nleft > 0) { if ( (nread = read(fd, ptr, nleft)) < 0) { return (-1); else if (nread == 0) break; /* EOF */ nleft -= nread; ptr += nread; return (n - nleft); /* return >= 0 */ if ((s_conec=accept(s, (struct sockaddr *)&dir_cliente, &tam_dir))<0){ perror("error en accept"); while ((leido=readn(s_conec, buf, TAM))>0) imprime_buffer(buf, leido); if (leido<0) { static void imprime_buffer(unsigned char *buf, int tam) { static int num_mens=0; printf("recibido: tam %d (mens %d byte %d - ", tam, num_mens, buf[0]); if (buf[tam-1]<buf[0]) num_mens++; printf("mens %d byte %d)\n", num_mens, buf[tam-1]); if (buf[tam-1]==255) num_mens++; int s, s_conec, leido; unsigned setbuf(stdout, NULL); if (listen(s, 5) < 0) { perror("error en listen");

13 7_recepcion_completa/serv2.c Tue Mar 09 09:57: #define TAM 256 static void imprime_buffer(unsigned char *buf, int tam) { static int num_mens=0; printf("recibido: tam %d (mens %d byte %d - ", tam, num_mens, buf[0]); if (buf[tam-1]<buf[0]) num_mens++; printf("mens %d byte %d)\n", num_mens, buf[tam-1]); if (buf[tam-1]==255) num_mens++; int s, s_conec, leido; unsigned FILE *soc_desc; setbuf(stdout, NULL); if (listen(s, 5) < 0) { perror("error en listen"); if ((s_conec=accept(s, (struct sockaddr *)&dir_cliente, &tam_dir))<0){ perror("error en accept"); soc_desc=fdopen(s_conec, "r"); while ((leido=fread(buf, 1, TAM, soc_desc))>0) imprime_buffer(buf, leido); if (leido<0) { perror("error en fread"); fclose(soc_desc); fclose(soc_desc);

14 7_recepcion_completa/serv3.c Tue Mar 09 09:57: #define TAM 256 static void imprime_buffer(unsigned char *buf, int tam) { static int num_mens=0; printf("recibido: tam %d (mens %d byte %d - ", tam, num_mens, buf[0]); if (buf[tam-1]<buf[0]) num_mens++; printf("mens %d byte %d)\n", num_mens, buf[tam-1]); if (buf[tam-1]==255) num_mens++; int s, s_conec, leido; unsigned setbuf(stdout, NULL); if (listen(s, 5) < 0) { perror("error en listen"); if ((s_conec=accept(s, (struct sockaddr *)&dir_cliente, &tam_dir))<0){ perror("error en accept"); while ((leido=recv(s_conec, buf, TAM, MSG_WAITALL))>0) imprime_buffer(buf, leido); if (leido<0) {

15 8_servicio_eco_datagrama/eco_clie_tcp_udp.c Tue Mar 09 09:57: #include <netdb.h> #include <string.h> int s, leido; struct sockaddr_in dir; struct hostent *host_info; // if ((s=socket(pf_inet, SOCK_DGRAM, IPPROTO_UDP)) < 0) { host_info=gethostbyname("localhost"); memcpy(&dir.sin_addr.s_addr, host_info->h_addr, host_info->h_length); if (connect(s, (struct sockaddr *)&dir, sizeof(dir)) < 0) { perror("error en connect"); while ((leido=read(0, buf, TAM))>0) { if (write(s, buf, leido)<0) { perror("error en write"); if ((leido=read(s, buf, TAM))<0) { write(1, buf, leido);

16 8_servicio_eco_datagrama/eco_clie_udp.c Tue Mar 09 09:57: #include <netdb.h> #include <string.h> int s, leido; struct sockaddr_in dir; struct hostent *host_info; if ((s=socket(pf_inet, SOCK_DGRAM, IPPROTO_UDP)) < 0) { host_info=gethostbyname("localhost"); memcpy(&dir.sin_addr.s_addr, host_info->h_addr, host_info->h_length); while ((leido=read(0, buf, TAM))>0) { if (sendto(s, buf, leido, 0, (struct sockaddr *)&dir, sizeof(dir))<0){ perror("error en sendto"); if ((leido=recv(s, buf, TAM, 0))<0) { perror("error en recv"); write(1, buf, leido);

17 8_servicio_eco_datagrama/eco_serv_udp.c Tue Mar 09 09:57: int s, leido; if ((s=socket(pf_inet, SOCK_DGRAM, IPPROTO_UDP)) < 0) { if ((leido=recvfrom(s, buf, TAM, 0, (struct sockaddr *)&dir_cliente, &tam_dir))<0){ perror("error en recvfrom"); if (sendto(s, buf, leido, 0, (struct sockaddr *)&dir_cliente, tam_dir)<0){ perror("error en sendto");

18 9_multidifusionIP/cliente_grupo.c Tue Mar 09 09:57: #include <arpa/inet.h> /* Es igual que cualquier cliente UDP pero usa una dirección de multidifusión en el bind ( ) */ int s, leido; struct sockaddr_in dir; struct in_addr dir_grupo; if ((s=socket(pf_inet, SOCK_DGRAM, IPPROTO_UDP)) < 0) { inet_aton(" ", &dir_grupo); dir.sin_addr=dir_grupo; while ((leido=read(0, buf, TAM))>0) { if (sendto(s, buf, leido, 0, (struct sockaddr *)&dir, sizeof(dir))<0){ perror("error en sendto");

19 9_multidifusionIP/miembro_grupo.c Tue Mar 09 09:57: #include <arpa/inet.h> int s, leido; struct in_addr dir_mcast; struct ip_mreqn info_mcast; int opcion=1; if ((s=socket(pf_inet, SOCK_DGRAM, IPPROTO_UDP)) < 0) { /* Para reutilizar el puerto inmediatamente ya que en un grupo puede haber varios procesos de la misma máquina */ if (setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &opcion, sizeof(opcion))<0){ perror("error en setsockopt"); /* Incorporación al grupo de multidifusión en la dirección */ inet_aton(" ", &dir_mcast); info_mcast.imr_multiaddr=dir_mcast; info_mcast.imr_address.s_addr=inaddr_any; info_mcast.imr_ifindex=0; if (setsockopt(s, SOL_IP, IP_ADD_MEMBERSHIP, &info_mcast, sizeof(info_mcast)) <0) { perror("error en setsockopt"); if ((leido=recvfrom(s, buf, TAM, 0, (struct sockaddr *)&dir_cliente, &tam_dir))<0){ perror("error en recvfrom"); write(1, buf, leido);

ARQUITECTURA DE REDES Laboratorio

ARQUITECTURA 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 detalles

Sockets: funcionamiento y programación. Sockets tipo UNIX. MSc. Ivan A. Escobar

Sockets: 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 detalles

Tema 5 Comunicación con sockets

Tema 5 Comunicación con sockets Tema 5 Comunicación con sockets Grupo ARCOS Grado en Ingeniería Informática Universidad Carlos III de Madrid Contenido Conceptos básicos sobre sockets Modelo de comunicación Sockets Datagrama Stream API

Más detalles

Sockets 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. 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 detalles

Sockets Básicos. Sockets Básicos

Sockets 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 detalles

PRÁCTICA 2: Cliente-servidor UDP

PRÁCTICA 2: Cliente-servidor UDP PRÁCTICA 2: Cliente-servidor UDP El objetivo de esta práctica es la familiarización con aplicaciones elementales que usan los servicios de transporte de los sockets UDP. A lo largo de la práctica se realizarán

Más detalles

Sistema Cliente Servidor Con Sockets

Sistema 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 detalles

Sistemas Operativos: Programación de Sistemas. Curso 2006-07. Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J.

Sistemas 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 detalles

Introducción de Sockets en C.

Introducció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 detalles

Qué 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? 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 detalles

Introducción a la programación con sockets en C

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 detalles

Problemas de Redes de Computadores. Conjunto de problemas 1

Problemas 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 detalles

Estructuras y funciones de programación de sockets.

Estructuras 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 detalles

Redes de Computadores: Relación de problemas 1. Sockets

Redes de Computadores: Relación de problemas 1. Sockets Redes de Computadores: Relación de problemas 1. Sockets 1. Obtención de nombres y direcciones IP Uso de gethostbyname y gethostbyaddr. Bajo el sistema operativo Linux, esta información se puede obtener

Más detalles

Universidad Simón Bolívar Departamento de Computación y Tecnología de la Información Curso de Redes I CI-4815 Trimestre Septiembre Diciembre 2013

Universidad Simón Bolívar Departamento de Computación y Tecnología de la Información Curso de Redes I CI-4815 Trimestre Septiembre Diciembre 2013 Universidad Simón Bolívar Departamento de Computación y Tecnología de la Información Curso de Redes I CI-4815 Trimestre Septiembre Diciembre 2013 Proyecto I Autores: Lairon Acosta. Carnet: 09-10927 Jueves

Más detalles

UNIVERSIDAD 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 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 detalles

Tema 4: Sockets: Un interfaz con TCP/IP

Tema 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 detalles

Programación con sockets

Programació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 detalles

sockets Flujo (SOCK_STREAM) Comunicación bidireccional Confiable (entrega garantizada) Información ordenada en el destino Datagrama (SOCK_DGRAM)

sockets 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

Problemas 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 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 detalles

ARQUITECTURA DE REDES Laboratorio PRÁCTICA 2: MANUAL DE SOCKETS EN C. Grado en Ingeniería Informática Curso 2014/15

ARQUITECTURA DE REDES Laboratorio PRÁCTICA 2: MANUAL DE SOCKETS EN C. Grado en Ingeniería Informática Curso 2014/15 ARQUITECTURA DE REDES Laboratorio PRÁCTICA 2: MANUAL DE SOCKETS EN C Grado en Ingeniería Informática Curso 2014/15 ÍNDICE 1. INTRODUCCIÓN.. 3 1.1 La familia de protocolos TCP/IP. 3 1.2 Nivel de red (IP)..

Más detalles

-> Todo socket viene definido por dos características fundamentales:

-> 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 detalles

Análisis Experimental de la Transmisión de Datos

Aná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 detalles

Programación C/S Básica

Programació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 detalles

Ingeniería Técnica de Telecomunicación, esp. Telemática Universidad de Jaén

Ingenierí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 detalles

Estructuras y funciones de programación de sockets.

Estructuras 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 detalles

Características de un lenguaje ideal para robótica

Caracterí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 detalles

Diseño de aplicaciones distribuidas ÍNDICE

Diseñ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 detalles

Mecanismos IPC: sockets

Mecanismos 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 detalles

Bibliografía [COM00] Internetworking with TCP/IP, vol. 3, Cap. 2 y del 7 al 15.

Bibliografía [COM00] Internetworking with TCP/IP, vol. 3, Cap. 2 y del 7 al 15. Tema 5: El Modelo Cliente-Servidor Conceptos básicos. Características y estructura de un cliente. Obtención de información. Algoritmos del cliente TCP y UDP. Ejemplos. Características y estructura de un

Más detalles

Tema 5 El Modelo Cliente-Servidor

Tema 5 El Modelo Cliente-Servidor 1 Tema 5 El Modelo Cliente-Servidor Capítulos: Conceptos básicos. Características y estructura de un cliente. Obtención de información. Algoritmos del cliente TCP y UDP. Ejemplos. Características y estructura

Más detalles

DESARROLLO DE APLICACIONES DISTRIBUIDAS. SOCKETS en UNIX

DESARROLLO 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 detalles

Redes (IS20) Ingeniería Técnica en Informática de Sistemas - (2º Curso)

Redes (IS20) Ingeniería Técnica en Informática de Sistemas - (2º Curso) Redes (IS20) Ingeniería Técnica en Informática de Sistemas - (2º Curso) Práctica 2: Programación en Red. Protocolos TCP y UDP. Comunicación entre procesos mediante Sockets Descripción del equipo: 1. Ordenadores

Más detalles

ARQUITECTURA DE REDES Laboratorio

ARQUITECTURA DE REDES Laboratorio 1nsloo.cl ARQUITECTURA DE REDES Laboratorio Práctica 4: Ejercicios de aplicación de HTTP 1. OBJETIVOS. El objetivo de esta práctica es que el alumno llegue a conocer los principales conceptos relacionados

Más detalles

Sockets (TCP) Tema 2.- Nivel de aplicación en Internet

Sockets (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 detalles

Adaptación de aplicaciones a IPv6

Adaptació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 detalles

07 << Acceso en exclusiva al recurso compartido >>

07 << Acceso en exclusiva al recurso compartido >> Sistemas Operativos 4º Semestre. Grados II y MI Cuarto Parcial. Sistema de Ficheros. 2 de Junio de 2014. Dispone de 50 minutos. Publicación de notas el Jueves 5 de Junio 2014. Revisión el Viernes 6 de

Más detalles

Sistemas Operativos Distribuidos

Sistemas 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 detalles

Examen de Fundamentos de Redes de Computadores Junio 2005

Examen de Fundamentos de Redes de Computadores Junio 2005 Examen de Fundamentos de Redes de Computadores Junio 2005 1. (1.5 puntos) Se quiere enviar un mensaje de 20 Kbytes entre dos hosts conectados directamente. La conexión entre ellos presenta las siguientes

Más detalles

IMPLEMENTACIÓN DE APLICACIONES DE SEGURIDAD CON OPENSSL

IMPLEMENTACIÓN DE APLICACIONES DE SEGURIDAD CON OPENSSL IMPLEMENTACIÓN DE APLICACIONES DE SEGURIDAD CON OPENSSL Índice Lectura de Certificados con OpenSSL I Proyecto Leer_certificado1 Lectura de Certificados con OpenSSL II Proyecto Leer_certificado2 Proyecto

Más detalles

SOCKETS en Linux. Lic. Leonardo de - Matteis. Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur 2011

SOCKETS 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 detalles

Programación de aplicaciones distribuidas usando sockets

Programació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 detalles

Redes de Computadores Nivel de Aplicación: Programación con sockets I

Redes 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 detalles

Comunicación entre procesos mediante Sockets Preparado por Gabriel Astudillo Muñoz Escuela de Ingeniería Civil Informática Universidad de Valparaíso

Comunicación entre procesos mediante Sockets Preparado por Gabriel Astudillo Muñoz Escuela de Ingeniería Civil Informática Universidad de Valparaíso 1 Resumen Comunicación entre procesos mediante Sockets Preparado por Gabriel Astudillo Muñoz Escuela de Ingeniería Civil Informática Universidad de Valparaíso Este documento tiene como objetivo describir

Más detalles

Comunicación de procesos en sistemas distribuidos

Comunicación de procesos en sistemas distribuidos Objetivo del tema Comunicación de procesos en sistemas distribuidos Presentar los diferentes esquemas para comunicar procesos en sistemas distribuidos: Servicios básicos de comunicación (colas de mensajes

Más detalles

Los sockets de Unix. Funcionamiento y programación Dr. Roberto Gómez Cárdenas DCC del ITESM-CEM

Los sockets de Unix. Funcionamiento y programación Dr. Roberto Gómez Cárdenas DCC del ITESM-CEM Los sockets de Unix Emisor Receptor Funcionamiento y programación Dr. Roberto Gómez Cárdenas DCC del ITESM-CEM rogomez@itesm.mx http://webdia.cem.itesm.mx/ac/rogomez Dr. Roberto Gomez C. Diapo. No. 1 La

Más detalles

Tema 2. Comunicación entre procesos

Tema 2. Comunicación entre procesos Tema 2. Comunicación entre procesos SCS Sistemas Cliente/Servidor 4 o informática http://ccia.ei.uvigo.es/docencia/scs octubre 2008 FJRP, FMBR 2008/09 ccia SCS 2.1 Requisitos y alternativas Sistemas distribuidos

Más detalles

Migrando aplicaciones a IPv6

Migrando 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 detalles

TimeOut RTT medido 1 5 seg. 2*5= 10 1 2 0,7 3 TimeOut 3 TimeOut 3 0,001 4 0,35 5 0,44

TimeOut RTT medido 1 5 seg. 2*5= 10 1 2 0,7 3 TimeOut 3 TimeOut 3 0,001 4 0,35 5 0,44 ARQUITECTURA DE REDES Y SERVICIOS DE TELECOMUNICACIÓN Junio 2014 Teoría: 1) Qué sucedería si por error recibiera UDP un datagrama UDP que originalmente iba destinado a otra máquina?. (0,5 ptos) 2) Asumiendo

Más detalles

CENTRO DE ESTUDIOS NOVA - Cartagena Laboratorio de Software de Comunicaciones TEMA 1 FUNDAMENTOS DE SOCKETS TCP Y UDP

CENTRO DE ESTUDIOS NOVA - Cartagena Laboratorio de Software de Comunicaciones TEMA 1 FUNDAMENTOS DE SOCKETS TCP Y UDP TEMA 1 FUNDAMENTOS DE SOCKETS TCP Y UDP Concepto de UDP UDP son las siglas de Protocolo de Datagrama de Usuario (en inglés User Datagram Protocol) un protocolo sin conexión que, como TCP, funciona en redes

Más detalles

Sistemas Operativos Práctica 3

Sistemas Operativos Práctica 3 Sistemas Operativos Práctica 3 Ing. Andrés Bustamante afbustamanteg@unal.edu.co Ingeniería de Sistemas Facultad de Ingeniería Universidad de la Amazonia 2009 1. Objetivo El objetivo de la práctica es que

Más detalles

Clase de Sockets en lenguaje C. Prof. Ricardo González

Clase 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 detalles

AMPLIACION DE SISTEMAS OPERATIVOS SOCKETS AIRAN GODOY HERNANDEZ JOSE MARIA RODRIGUEZ RODRIGUEZ 5º INGENIERIA EN INFORMATICA

AMPLIACION DE SISTEMAS OPERATIVOS SOCKETS AIRAN GODOY HERNANDEZ JOSE MARIA RODRIGUEZ RODRIGUEZ 5º INGENIERIA EN INFORMATICA AMPLIACION DE SISTEMAS OPERATIVOS SOCKETS AIRAN GODOY HERNANDEZ JOSE MARIA RODRIGUEZ RODRIGUEZ 5º INGENIERIA EN INFORMATICA 1 Definición de Socket Punto de comunicación entre procesos, mediante el cual

Más detalles

Programación con Sockets

Programació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 detalles

Computación de Alta Performance Curso 2009 PROGRAMACIÓN PARALELA EN LENGUAJE C

Computación de Alta Performance Curso 2009 PROGRAMACIÓN PARALELA EN LENGUAJE C Computación de Alta Performance Curso 2009 MECANISMO DE PROGRAMACIÓN PARALELA EN LENGUAJE C AGENDA Mecanismos a estudiar. Fork. Pipes y FIFOs. System V IPC: Semáforos. Cola de mensajes. Memoria compartida.

Más detalles

Introducción a Sockets en Linux

Introducción a Sockets en Linux Introducción a Sockets en Linux Horacio Goetendía Bonilla 6 de Enero de 2003 Índice 1. Conceptos 2 1.1. Socket............................... 2 2. Sockets en Unix standar 2 2.1. Namespace (int dominio)(dominio

Más detalles

Modem IBM Compatible. IBM Compatible. Ethernet IBM AS/400. Laser printer. Workstation. Mac II. El Interfaz. Socket. versión perliminar

Modem 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 detalles

Sockets (UDP) Tema 2.- Nivel de aplicación en Internet

Sockets (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 detalles

Permutació 1 Examen Introducció a les Xarxes d Ordinadors - 2008-2009

Permutació 1 Examen Introducció a les Xarxes d Ordinadors - 2008-2009 Examen Introducció a les Xarxes d Ordinadors - 2008-2009 24 de març de 2009, 15h00 Duració: 2,5 hores (1 hora per al test) Publicació de notes provisionals: 14 d abril 2009 Revisió de l examen: 15 d abril

Más detalles

SISTEMAS DE COMUNICACIONES DE DATOS

SISTEMAS DE COMUNICACIONES DE DATOS SISTEMAS DE COMUNICACIONES DE DATOS Técnicas Digitales III Ing. Gustavo Nudelman 2012 Fundamentos de Networking Subtitulo o nombre del capitulo Capitulo 1 Universidad Tecnológica Nacional Definiciones

Más detalles

Usando Internet Sockets Brian "Beej" Hall beej@piratehaven.org Copyright 1995-2001 by Brian "Beej" Hall

Usando Internet Sockets Brian Beej Hall beej@piratehaven.org Copyright 1995-2001 by Brian Beej Hall Usando Internet Sockets Brian "Beej" Hall beej@piratehaven.org Copyright 1995-2001 by Brian "Beej" Hall Historia Revision Version 1.0.0 August, 1995 Revised by: beej Initial version. Revision Version 1.5.5

Más detalles

Gestión y Comunicación de procesos

Gestión y Comunicación de procesos 1 Resumen Gestión y Comunicación de procesos Material de apoyo para la asignatura de Taller de Sistemas Operativos 1 Preparado por Gabriel Astudillo Muñoz Escuela de Ingeniería Civil Informática Universidad

Más detalles

Contenido. Primera Parte: Sockets. Segunda Parte: Shellcodes

Contenido. Primera Parte: Sockets. Segunda Parte: Shellcodes Contenido Primera Parte: Sockets Segunda Parte: Shellcodes Primera Parte # echo _Sockets_ Por qué saber sobre sockets? Para construir cualquier aplicación de red W W W FTP P2P Pre-requisitos TCP / IP básico

Más detalles

Sistemas Operativos. Contents. Ezequiel Postan. Docentes. Guido Macchi. Esteban Ruiz. Federico Bergero. Guillermo Grimgblat

Sistemas Operativos. Contents. Ezequiel Postan. Docentes. Guido Macchi. Esteban Ruiz. Federico Bergero. Guillermo Grimgblat Sistemas Operativos Ezequiel Postan Docentes Abstract Apuntes de la materia Sistemas Operativos de LCC-FCIEA. Curso dictado en 2011. El apunte está basado en la carpeta Emilio Lopez con agregados y correcciones.

Más detalles

El lenguaje de Programación C. Fernando J. Pereda <ferdy@gentoo.org>

El lenguaje de Programación C. Fernando J. Pereda <ferdy@gentoo.org> El lenguaje de Programación C Fernando J. Pereda Por qué aprender C? Portable y muy extendido Estándar (C89, C99) El lenguaje de los sistemas Un lenguaje fácil (no, no es broma) Por

Más detalles

Guía Beej de Programación en Redes

Guía Beej de Programación en Redes Guía Beej de Programación en Redes Uso de sockets de Internet Brian "Beej" Hall beej@piratehaven.org Copyright 1995-2001 por Brian "Beej" Hall Traducción al español a cargo de Damián Marqués Lluch

Más detalles

Arquitecturas Cliente/Servidor

Arquitecturas 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 detalles

Programación en red sobre TCP/IP Interface sockets

Programación en red sobre TCP/IP Interface sockets Programación en red sobre TCP/IP Interface sockets Teresa Monreal y Pablo Ibáñez Area de Arquitectura y Tecnología de Computadores Departamento de Informática e Ingeniería de Sistemas 1 Indice Introducción.

Más detalles

SOCKET S. Alberto Castro Rojas

SOCKET 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 detalles

Administración de redes en GNU/Linux

Administració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 detalles

Arquitectura de Redes y Servicios de Telecomunicación (ARST) Cuestiones y Problemas Propuestos

Arquitectura de Redes y Servicios de Telecomunicación (ARST) Cuestiones y Problemas Propuestos Sobre el Protocolo UDP 1. Qué sucedería si por error recibiera UDP un datagrama UDP destinado a otra máquina (con otra dirección IP)?. 2. Por qué es necesario incluir un checksum en IP, TCP y opcionalmente

Más detalles

TELEPROCESO Y SISTEMAS DISTRIBUIDOS

TELEPROCESO 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 detalles

Escaneo Básico de Puertos Utilizando Flags TCP Alejandro Hernández (@nitr0usmx) http://www.brainoverflow.org

Escaneo Básico de Puertos Utilizando Flags TCP Alejandro Hernández (@nitr0usmx) http://www.brainoverflow.org Escaneo Básico de Puertos Utilizando Flags TCP Alejandro Hernández (@nitr0usmx) http://www.brainoverflow.org 1.- INTRODUCCION Y bien, antes de comenzar supongo que tienes nociones básicas sobre el protocolo

Más detalles

Programación de sockets

Programació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 detalles

Arquitectura de Redes y Servicios de Telecomunicación

Arquitectura de Redes y Servicios de Telecomunicación Práctica 3 Arquitectura de Redes y Servicios de Telecomunicación Programación cliente/servidor: Servicio de echo. Desarrollo de un cliente y un servidor del servicio de echo. Objetivos La programación

Más detalles

Mecanismo(s) de intercambio de información entre 2 ó más computadores conectados entre sí o a través de otros.

Mecanismo(s) de intercambio de información entre 2 ó más computadores conectados entre sí o a través de otros. Comunicaciones Comunicaciones: Mecanismo(s) de intercambio de información entre 2 ó más computadores conectados entre sí o a través de otros. Terminología: Trama: unidad de información a transmitir Medio:

Más detalles

Trabajo Práctico N 4 Sockets

Trabajo Práctico N 4 Sockets FACULTAD DE INGENIERÍA UNIVERSIDAD DE BUENOS AIRES 66.48 Seminario de Redes de Computadora Trabajo Práctico N 4 Sockets Integrantes: - Santiago Boeri (79529) - Hernán Castagnola (79555) - Christian Picot

Más detalles

Mecanismo para el acceso público a servidores con direccionamiento privado.

Mecanismo para el acceso público a servidores con direccionamiento privado. [ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA DE TELECOMUNICACIÓN] UNIVERSIDAD POLITÉCNICA DE CARTAGENA Mecanismo para el acceso público a servidores con direccionamiento privado. Proyecto Fin de Carrera Autor:

Más detalles

Prueba de Laboratorio Modelo B01 Semáforos y Memoria Compartida

Prueba de Laboratorio Modelo B01 Semáforos y Memoria Compartida Prueba de Laboratorio APELLIDOS: NOMBRE: GRUPO DE LABORATORIO: Indicaciones: No se permiten libros, apuntes ni teléfonos móviles. Cuando tenga una solución al ejercicio muéstrela al profesor (compilación

Más detalles

Sistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid

Sistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid Manejo de Señales Sistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid Señales Concepto Evento que interrumpe la ejecución normal de un proceso La acción por defecto suele

Más detalles

Universidad Técnica Federico Santa Maria Departamento de Electrónica Seminario de Microcontroladores I CONTROL REMOTO SEGURO

Universidad Técnica Federico Santa Maria Departamento de Electrónica Seminario de Microcontroladores I CONTROL REMOTO SEGURO Universidad Técnica Federico Santa Maria Departamento de Electrónica Seminario de Microcontroladores I CONTROL REMOTO SEGURO ! " #$ % & " '( ) * &+ (, - *. ( / * 0 / *'12 / -($( 3-0 3-3 / $ 4 35 ) 4 4'6.!#

Más detalles

S C TP: Una alternativa al protocolo TC P s obre Linux. Ing. Isaac Fernández Baca Peña

S C TP: Una alternativa al protocolo TC P s obre Linux. Ing. Isaac Fernández Baca Peña S C TP: Una alternativa al protocolo TC P s obre Linux Ing. Isaac Fernández Baca Peña M arco Teórico: Q ué es S C TP? Stream Control Transmission Protocol milar a TCP y UDP. Es un protocolo de comunicación

Más detalles

COMUNICACIÓN ENTRE PROCESOS SOCKETS

COMUNICACIÓ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 detalles

Por ejemplo, para declarar un arreglo de enteros llamado a con diez elementos se hace de la siguiente forma:

Por ejemplo, para declarar un arreglo de enteros llamado a con diez elementos se hace de la siguiente forma: Arreglos unidimensionales y multidimensionales Los arreglos son una colección de variables del mismo tipo que se referencian utilizando un nombre común. Un arreglo consta de posiciones de memoria contigua.

Más detalles

WSAEADDRNOTAVAIL (10049) Dirección solicitada no se puede asignar.

WSAEADDRNOTAVAIL (10049) Dirección solicitada no se puede asignar. CÓDIGOS DE ERRORES AL UTILIZAR MODO I PARA ENVIAR MAILS A continuación se presenta una lista de los códigos de errores que pueden ocurrir al realizar la llamada WSAGetLastError, y una explicación detallada

Más detalles

Programación con Sockets

Programación con Sockets Programación en Internet (Sockets) Programación con Sockets Objetivo: aprender como construir aplicaciones cliente/servidor que se comunican utilizando sockets Socket API introducida en el BSD4.1 UNIX,

Más detalles

Implementación cliente servidor mediante sockets

Implementación cliente servidor mediante sockets A T Implementación cliente servidor mediante sockets Implementación cliente servidor mediante sockets Client-server implementation using sockets Héctor Julio Fúquene Ardila* Fecha de recepción: septiembre

Más detalles

EDITRAN/TR. Windows/Unix. Manual de referencia

EDITRAN/TR. Windows/Unix. Manual de referencia EDITRAN/TR Windows/Unix Manual de referencia INDRA 30 de octubre de 2014 ÍNDICE 1. INTRODUCCIÓN.... 1-1 2. INTERFAZ DE PROGRAMACIÓN.... 2-1 2.1. DESCRIPCION... 2-1 2.2. FUNCIONES DE ENVIO Y RECEPCION...

Más detalles

Esquema de un programa en C: bloques básicos

Esquema de un programa en C: bloques básicos Esquema de un programa en C: bloques básicos // Incluimos los ficheros de cabecera que necesitemos. // Esto es un comentario #include #include // Si queremos definir alguna constante,

Más detalles

Protocolo de Internet versión 6 Configuración y Desarrollo

Protocolo de Internet versión 6 Configuración y Desarrollo Protocolo de Internet versión 6 Configuración y Desarrollo Pablo Carmona Amigo Renato Ulloa Sepúlveda Ingeniería Civil Electrónica Universidad de La Frontera 24 de julio de 2002 Resumen Este informe pretende

Más detalles

Prof. Dr. Paul Bustamante

Prof. Dr. Paul Bustamante Prácticas de C++ Practica Nº 10 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante INDICE 1.1 EJERCICIO 1: MI PRIMER FICHERO EN BINARIO... 1 1.2 EJERCICIO 2: LEYENDO MI PRIMER FICHERO

Más detalles

Programación de Sistemas. Programación de Sistemas con Ansi C sobre UNIX. Gestión de errores. Gestión de errores. Ficheros regulares

Programación de Sistemas. Programación de Sistemas con Ansi C sobre UNIX. Gestión de errores. Gestión de errores. Ficheros regulares Programación de Sistemas con Ansi C sobre UNIX Pedro Merino Gómez Jesus Martínez Cruz Dpto. Lenguajes y Ciencias de la Computación Universidad de Málaga Programación de Sistemas Llamadas al sistema Gestión

Más detalles

Si el fichero hashes existe, el script debe notificar el error y salir como corresponde. A continuación se muestra un ejemplo:

Si el fichero hashes existe, el script debe notificar el error y salir como corresponde. A continuación se muestra un ejemplo: Examen de Sistemas Operativos ITIS Fuenlabrada Junio 2009 Tiempo total: 3 horas. Problema: Llamadas al sistema (5 puntos) Escriba en C para Plan 9 un programa llamado catsha1 cuyo propósito es crear un

Más detalles

Taller de Sistemas Operativos Introducción

Taller de Sistemas Operativos Introducción Taller de Sistemas Operativos Introducción Escuela de Ingeniería Civil en Informática Universidad de Valparaíso, Chile http:// Conceptos generales 2 Proceso stdin Descriptor Flujo (FILE*) 0 stdout 1 Proceso

Más detalles

Arquitecturas aplicativas

Arquitecturas aplicativas Arquitecturas aplicativas 100 Arquitectura Arquitectura::= Arte de proyectar y construir Dada la funcionalidad que deberá tener el aplicativo, establecer una división modular para su implementación Enumerar

Más detalles

Nivel 4: Transporte Protocolos End-to-End

Nivel 4: Transporte Protocolos End-to-End Nivel 4: Transporte Protocolos End-to-End Teoría de las Comunicaciones Octubre de 2011 Nivel de Red milagros.dc.uba.ar stone.ac.upc.es ost a ost Nivel de Red Nivel de Enlace Nivel de Transporte milagros.dc.uba.ar

Más detalles

HOWTO TORNEO SHELL WARZONE

HOWTO TORNEO SHELL WARZONE HOWTO TORNEO SHELL WARZONE Como se realizo el Torneo Shell Bueno anteriormente ya había hecho yo una implementación de un wargame parecido con un solo nivel, eso fue en Diciembre del 2007, ya con un poco

Más detalles

LABORATORIO DE GESTIÓN DE REDES APÉNDICE: MANUAL DE SOCKETS EN C

LABORATORIO DE GESTIÓN DE REDES APÉNDICE: MANUAL DE SOCKETS EN C UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE GESTIÓN DE REDES APÉNDICE: MANUAL DE SOCKETS EN C ÍNDICE 1. INTRODUCCIÓN3 2. SOCKETS EN C.4 2.1. Conceptos

Más detalles

Nivel de Transporte en Internet

Nivel 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 detalles

Solución Examen 17 de diciembre de 2010 (ref: eirc1012.odt)

Solución Examen 17 de diciembre de 2010 (ref: eirc1012.odt) Introducción a las Redes de Computador{aes y Comunicación de Datos Solución Examen 17 de diciembre de 2010 (ref: eirc1012.odt) Instrucciones Indique su nombre completo y número de cédula en cada hoja.

Más detalles