Programação com Sockets. Redes de Computadores I 2007/2008
|
|
- João Pedro de Miranda de Caminha
- 7 Há anos
- Visualizações:
Transcrição
1 Programação com Sockets Redes de Computadores I 2007/2008
2 Arquitectura das Aplicações Cliente-Servidor Peer-to-Peer (P2P) Híbrido Peer-to-Peer e Cliente-Servidor Universidade do Minho 1
3 Comunicação entre processos Processo: um programa em execução num sistema final (host) dentro do mesmo sistema os processos podem comunicar usando comunicação entre processos (definido pelo Sistema Operativo). Sinais (rudimentar) Pipes ( ex: dir more) Ficheiros processos em sistemas distintos comunicam trocando mensagens Processo Cliente: processo que inicia a comunicação Processo Servidor: processo que espera passivamente até ser contactado Nota: as aplicações P2P usam simultaneamente processos cliente e processos servidor Universidade do Minho 2
4 SOCKETS Processos enviam e recebem mensagens através de um socket O socket é equivalente a uma porta O processo que envia faz sair as mensagens pela porta e confia na infra-estrtutura de transporte que está do outro lado da porta para levar a mensagem até ao processo que recebe host processo socket TCP com buffers, variáveis Controlado pelo programador Internet controlado pelo Sistema Operativo (OS) API: (1) escolha do protocolo; (2) definição de alguns parametros host processo socket TCP com buffers, variáveis Fonte: Computer Networking: A Top-Down Approach Featuring the Internet, J. Kurose, Addison-Wesley, Universidade do Minho 3
5 Endereçamento Para receber ou enviar mensagens os processos precisam de um identificador Os sistemas já possuem endereços IP Mas serão suficientes para endereçar os processos? Obviamente que não: correm múltiplos processos em simultâneo em cada sistema! identificador inclui endereço IP e número de porta associado ao processo. Exemplos de portas bem conhecidas: Servidor HTTP: 80 Servidor de Mail: 25 Para enviar uma mensagem a um servidor Web é preciso: IP: Porta: Universidade do Minho 4
6 Aplicações definem Tipos de mensagens que trocam, Ex: request, response Syntaxe das mensagens: Que campos vai ter cada mensagem e como são delimitados Semântica das mensagens Significado da informação contida em cada campo Regras temporais que definem quando e como deve um processo responder às mensagens que recebe Universidade do Minho 5
7 Que serviço de transporte usar? Tolerância a perdas Algumas aplicações (ex: audio) toleram algumas perdas Outras (ex: transferência de ficheiros, telnet) requerem que a transferência seja 100% fiável Sensibilidade aos atrasos Algumas aplicações (ex: telefonia IP) requerem que os atrasos sejam baixos Consumo de Largura de Banda Algumas aplicações (ex: multimedia) exigem uma largura de banda mínima para poderem funcionar Outras ( aplicações elásticas ) utilizam a largura e banda que houver disponível Universidade do Minho 6
8 Serviços de transporte na Internet Serviço de transporte TCP: Orientado à conexão Transporte fiável Controlo de fluxo Controlo de congestão Não assegura atrasos nem largura de banda mínimos Serviço de transporte UDP: Transferência não fiável Não oferece mais nada Universidade do Minho 7
9 Programação com Sockets Objectivo: construir aplicações cliente/servidor que usam sockets Socket API Introduzida no UNIX BSD4.1 em 1981 Os sockets devem ser explicitamente criadosm usados e livbertados pelas aplicações Paradigma cliente/servidor Dois tipos de serviço de transporte: Datagrama não fiável Stream fiável socket Uma interface local a um sistema, criado pelas aplicações, controlado pelo sistema operativo (uma porta ) na qual um processo de aplicação pode simulaneamente enviar e receber mensagens de outros processos Universidade do Minho 8
10 Programação com Sockets Tabela de descritores Family: PF_INET Service: SOCK_STREAM Local IP: Remote IP: Local Port: 2249 Remote Port: Universidade do Minho 9
11 Programação com Sockets Sockaddr (socket geral) struct sockaddr { short int sa_family; /*Address family */ unsigned char sa_data[14]; /* 14 bytes of protocol address */ }; Sockaddr_in (sockets Internet) struct sockaddr_in { short int sin_family;/*address family */ unsigned short int sin_port; /* Port number */ struct in_addr sin_addr; /* Internet address */ /* Pad to size of `struct sockaddr'. */ unsigned char pad[sizeof(struct sockaddr) - sizeof(short int) - sizeof(unsigned short int) - sizeof(struct in_addr)]; }; Universidade do Minho 10
12 Programação com Sockets: TCP Servidor TCP Socket() Cliente TCP Socket() Bind() Listen() Accept() Cria conexão TCP Connect() Send/Recv() Send/Recv() Close() Close() Universidade do Minho 11
13 Programação de Aplicações de Rede API dos Sockets para ligações TCP O processo cliente tem que executar os seguintes passos: Estabelecer um socket, usando a chamada ao sistema socket() Através do socket estabelecido conectar-se ao processo servidor, usando a chamada ao sistema connect() Enviar e receber dados através do canal estabelecido, usando as chamadas ao sistema send() e recv(), Libertar o socket estabelecido, através da chamada ao sistema close() Universidade do Minho 12
14 Programação de Aplicações de Rede API dos Sockets para ligações TCP O processo servidor tem que executar os seguintes passos: Estabelecer um socket, usando a chamada ao sistema socket() Associar o socket criado a uma identificação (constituída por endereço IP da máquina onde reside o servidor e número de porta associado à aplicação em causa), usando a chamada ao sistema bind() Ficar à escuta de pedido de ligação, usando a chamada ao sistema listen() Aceitar um pedido de ligação através da chamada ao sistema accept() Enviar e receber dados através do canal estabelecido, usando as chamadas ao sistema send() e recv() Libertar o socket estabelecido, através da chamada ao sistema close() Universidade do Minho 13
15 Programação de Aplicações de Rede Processo Servidor: exemplo com sockets TCP int sockfd, newsockfd, portno, n; char buffer[256]; struct sockaddr_in serv_addr, cli_addr;. sockfd = socket(pf_inet,, SOCK_STREAM, 0); if (sockfd < 0) error("error opening socket"); portno =. memset(&serv_addr,, '\0', ' sizeof(serv_addr)); serv_addr.sin_family = AF_INET; serv_addr.sin_addr.s_addr = INADDR_ANY; serv_addr.sin_port = htons(portno); if (bind(sockfd, (struct sockaddr *) &serv_addr, sizeof(serv_addr)) r)) < 0) error("error on binding"); listen(sockfd,5); newsockfd = accept(sockfd, (struct sockaddr *) &cli_addr, & sizeof(cli_addr)); if (newsockfd < 0) error("error on accept"); n = recv(newsockfd,buffer,255,0); if (n < 0) error("error reading from socket"); buffer[n]= ]= \0 ; printf("here is the message: %s\n",buffer); n = send(newsockfd,"i got your message",18,0); if (n < 0) error("error writing to socket"); Universidade do Minho 14
16 Programação de Aplicações de Rede Processo Cliente: exemplo com sockets TCP int sockfd, portno, n; struct sockaddr_in serv_addr; struct hostent *server; char buffer[256];. sockfd = socket(pf_inet,, SOCK_STREAM, 0); if (sockfd < 0) error("error opening socket"); server = gethostbyname. portno =.. if (server == NULL) { fprintf(stderr,"error, no such host\n"); exit(0); } memset(&serv_addr,, '\0', ' sizeof(serv_addr)); serv_addr.sin_family = AF_INET; serv_addr.sin_addr = *((struct in_addr *)server->h_addr h_addr); serv_addr.sin_port = htons(portno); if (connect(sockfd,&serv_addr,sizeof(serv_addr ( connect(sockfd,&serv_addr,sizeof(serv_addr)) < 0) error("error connecting"); printf("please enter the message: "); fgets(buffer,255,stdin); n = send(sockfd,buffer,strlen(buffer),0); if (n < 0) error("error writing to socket"); n = recv(sockfd,buffer,255,0); if (n < 0) error("error reading from socket"); buffer[n]= ]= \0 ; printf("%s "%s\n", n",buffer buffer); Universidade do Minho 15
17 Programação de Aplicações de Rede API dos Sockets para ligações TCP O servidor apresentado no exemplo anterior limitase a lidar com um pedido de ligação, terminando logo de seguida. Tipicamente, os servidores mantêm-se activos indefinidamente lidando simultaneamente com várias ligações. Esta funcionalidade pode ser implementada criando um novo processo por cada pedido de ligação aceite, usando para isso a chamada ao sistema fork() Universidade do Minho 16
18 Programação de Aplicações de Rede Servidor capaz de lidar com múltiplas ligações int n, pid, sockfd, newsockfd, portno; char buffer[256]; struct sockaddr_in serv_addr, cli_addr;.. sockfd = socket(pf_inet,, SOCK_STREAM, 0); if (sockfd < 0) error("error opening socket"); memset(&serv_addr,, '\0', ' sizeof(serv_addr)); portno = serv_addr.sin_family = AF_INET; serv_addr.sin_addr.s_addr = INADDR_ANY; serv_addr.sin_port = htons(portno); if (bind(sockfd, (struct sockaddr *) &serv_addr, sizeof(serv_addr)) r)) < 0) error("error on binding"); listen(sockfd,5); while (1) { newsockfd = accept(sockfd, (struct sockaddr *) &cli_addr, sizeof(cli_addr)); if (newsockfd < 0) error("error on accept"); pid = fork(); if (pid < 0) error("error on fork"); if (pid == 0) { close(sockfd); n = recv(newsockfd,buffer,255,0); if (n < 0) error("error reading from socket"); buffer[n]= ]= \0 ; printf("here is the message: %s\n",buffer); n = send(newsockfd,"i got your message",18,0); if (n < 0) error("error writing to socket"); exit(0);} else close(newsockfd); } /* end of while */ Universidade do Minho 17
19 Programação com Sockets: UDP Servidor UDP Socket() Cliente UDP Socket() Bind() Bind() Sendto/Recvfrom () Sendto/Recvfrom () Close() Close() Universidade do Minho 18
20 Programação de Aplicações de Rede API dos Sockets para ligações UDP Para ligações em que tipicamente as mensagens são independentes umas das outras, e não é necessário um serviço de transporte fiável utiliza-se o protocolo de transporte UDP e sockets do tipo Datagrama (SOCK_DGRAM) Neste caso usam-se chamadas ao sistema diferentes das usadas nas ligações TCP sendto() e receivefrom() para enviar e receber mensagens respectivamente Universidade do Minho 19
21 Programação de Aplicações de Rede Processo Cliente: exemplo com sockets UDP int sock, length,, n; struct sockaddr_in serv_addr,, from; struct hostent *server; char buffer[256];. sock= socket(pf_inet,, SOCK_DGRAM, 0); if (sock ( < 0) error("socket"); server = gethostbyname. memset(&serv_addr,, '\0', ' sizeof(serv_addr)); serv_addr.sin_family = AF_INET; serv_addr.sin_addr = *((struct in_addr *)server->h_addr h_addr); serv_addr.sin_port = htons(portno); length=sizeof(struct sockaddr_in); printf("please enter the message: "); fgets(buffer,255,stdin); n=sendto(sock,buffer, strlen(buffer),0,&serv_addr,length); if (n < 0) error("sendto Sendto"); n = recvfrom(sock,buffer,256,0,&from, &length); if (n < 0) error("recvfrom recvfrom"); buffer[n]= ]= \0 ; printf( %s %s\n", ",buffer buffer); Universidade do Minho 20
22 Programação de Aplicações de Rede Processo Servidor: exemplo com sockets UDP int sock, length, fromlen,, n; struct sockaddr_in serv_addr, from; struct hostent *server; char buf[256];.. sock=socket(pf_inet,, SOCK_DGRAM, 0); if (sock ( < 0) error("opening socket"); length = sizeof(serv_addr); memset(&serv_addr,, '\0', ' sizeof(serv_addr)); serv_addr.sin_family = AF_INET; serv_addr.sin_addr.s_addr=inaddr_any; serv_addr.sin_port=htons..;..; if (bind(sock,(struct ( sockaddr *)&serv_addr,length &serv_addr,length)<0) error("binding"); fromlen = sizeof(struct sockaddr_in); while (1) { n = recvfrom(sock,buf,255,0,(struct sockaddr *)&from,&fromlen &from,&fromlen); if (n < 0) error("recvfrom recvfrom"); buf[n]= ]= \0 ; printf("received a datagram: : %s\n", ",buf buf); n = sendto(sock,","got your message\n",17, 0,(struct sockaddr *)&from,fromlen &from,fromlen); if (n < 0) error("sendto sendto"); } Universidade do Minho 21
Comunicação entre Processos
Comunicação entre Processos Troca de Mensagens send (destino, msg) receive (origem, mensagem) questões semântica de operações especificação de origem e destino formato de mensagem envio síncrono e assíncrono
Leia maisSockets. André Restivo. April 29, Faculdade de Engenharia da Universidade do Porto. André Restivo (FEUP) Sockets April 29, / 27
Sockets André Restivo Faculdade de Engenharia da Universidade do Porto April 29, 2013 André Restivo (FEUP) Sockets April 29, 2013 1 / 27 Sumário 1 Introdução 2 Cliente/Servidor 3 API C++ 4 André Restivo
Leia maisComunicação entre Processos
Comunicação entre Processos Comunicação memória compartilhada troca de mensagens base de comunicação em sistemas distribuídos Mensagens básicas send (destino, msg) receive (origem, mensagem) questões semântica
Leia maisSoquetes TCP. Jean Ribeiro Damasceno. Escola de Engenharia Universidade Federal Fluminense (UFF) Rua Passo da Pátria, 156 Niterói RJ Brasil
Soquetes TCP Jean Ribeiro Damasceno Escola de Engenharia (UFF) Rua Passo da Pátria, 156 Niterói RJ Brasil jeanrdmg@yahoo.com.br Função socket(): Cria um novo ponto final de comunicação int socket ( int
Leia maisAula de Socket. Rafael De Tommaso do Valle
Aula de Socket Rafael De Tommaso do Valle 20 de agosto de 2009 Socket O que é um socket? É uma interface com qual processos em diferentes hosts se comunicam através da rede; Também chamado de interface
Leia maisIntrodução à Programação Sockets
2002-2015 Volnys Bernal 1 Introdução à Programação Sockets Volnys Borges Bernal volnys@lsi.usp.br Departamento de Sistemas Eletrônicos Escola Politécnica da USP 2002-2015 Volnys Bernal 2 Agenda Interface
Leia maisBibliotecas. Apoio à Programação Distribuída. Socket. Socket. bibliotecas bibliotecas+ferramentas linguagens de programação distribuídas
Apoio à Programação Distribuída bibliotecas bibliotecas+ferramentas linguagens de programação distribuídas flexibilidade de programação disponibilidade da ferramenta facilidade de desenvolvimento e reuso
Leia maisIntrodução à Programação com Sockets. Fernando Jorge Silveira Filho Daniel Sadoc Menasché
Introdução à Programação com Sockets Fernando Jorge Silveira Filho fernando@land.ufrj.br Daniel Sadoc Menasché sadoc@land.ufrj.br Visão Geral Objetivos: Realizar comunicação entre processos. Entender como
Leia maisSockets - Conceitos Básicos. COMUNICAÇÃO ENTRE PROCESSOS Sockets. Conceitos Básicos. Tipos de Sockets
Sockets - Conceitos Básicos COMUNICAÇÃO ENTRE PROCESSOS Sockets! Sockets são uma forma de IPC (InterProcess Communication ) fornecida pela 4.3 BSD que fornecem comunicação entre processos residentes em
Leia maisSumário. Introdução ao TCP/IP e à Internet API Sockets para comunicação via redes Exemplos
Sumário Introdução ao TCP/IP e à Internet API Sockets para comunicação via redes Exemplos A Internet: Endereços Cada computador ligado à Internet tem um endereço único que o distingue dos restantes (endereço
Leia maisSistemas Operacionais - Básico e Avançado - Prof. Celso Maciel da Costa Mestrado em Informática - PUCRS
Sistemas Operacionais - Básico e Avançado - Prof. Celso Maciel da Costa Mestrado em Informática - PUCRS Processo Usuário Processo Usuário SO IPC em um mesmo sistema 2 Processo Usuário Processo usuário
Leia maisProgramação de Aplicações em. Rede usando Sockets
Programação de Aplicações em Objetivos: Rede usando Sockets Conhecer a API Sockets, que permite a programas de aplicação comunicar-se através da Internet Aplicações e Protocolo de Aplicação Aplicação:
Leia maisSistemas de Operação Sockets
Sistemas de Operação Sockets O que é um socket? Uma interface de comunicação entre processos que podem ou não residir na mesma máquina, mas que não precisam estar relacionados. É usado normalmente para
Leia maiscamada de transporte SOCKET TCP UDP
Sockets O que são sockets? O acesso aos serviços da camada de transporte pode ser feito por primitivas de transporte, essas primitivas são denominadas SOCKET. Por essas primitivas é possível acessar vários
Leia maisProgramação com Sockets TCP e UDP - Cliente. Gustavo Leitão
Programação com Sockets TCP e UDP - Cliente Gustavo Leitão 5/24/2010 INTRODUÇÃO Objetivo da Aula OBJETIVO DA AULA Apresentar ao aluno conceitos e prática em sockets INTRODUÇÃO O que é um socket? INTRODUÇÃO
Leia maisProblemas relacionados a exclusão mútua
Problemas relacionados a exclusão mútua Deadlock: um conjunto de processos fica bloqueado, cada um a espera de um recurso que o outro detém. Starvation: alguns processos são repetidamente preteridos, enquanto
Leia maisMódulo 3 Nível Transporte
Nível Transporte Redes de Computadores - LTIC António Casimiro 2º Semestre 2014/15 Adaptado a partir de: Computer Networking: A Top Down Approach, 6 th edition. Jim Kurose, Keith Ross, Addison Wesley,
Leia maisProgramação em Sockets visando verificar a diferença entre transmissão confiável (TCP) e não confiável (UDP)
II - UFRGS Programação em Sockets visando verificar a diferença entre transmissão confiável (TCP) e não confiável (UDP) Valter Roesler Universidade Federal do Rio Grande do Sul (UFRGS) Instituto de Informática
Leia maisCliente UDP. Programação sockets. Agenda. Cliente UDP. Resumo de Chamadas UDP. Resumo das chamadas UDP. Resumo de Chamadas UDP.
2002-2015 Volnys Bernal 1 2002-2015 Volnys Bernal 2 Agenda Volnys Borges Bernal volnys@lsi.usp.br Departamento de Sistemas Eletrônicos Escola Politécnica da USP Resumo das chamadas sockets para UDP Uso
Leia maisTROCA DE MENSAGENS SOCKETS. Comunicando processos através de SOCKETS. SOCKETS com conexão. SOCKETS sem conexão
TROCA DE MENSAGENS SOCKETS Comunicando processos através de SOCKETS SOCKETS com conexão SOCKETS sem conexão SOCKETS Princípios dos sockets: 2. Fornecer uma interface geral permitindo a construção de aplicações
Leia maisServidor TCP. Programação Sockets. (c) Volnys Bernal. Servidor TCP Resumo das Chamadas TCP. Resumo das Chamadas TCP. Resumo das Chamadas TCP
2004-2016 Volnys Bernal 1 2004-2016 Volnys Bernal 2 Resumo das Chamadas TCP Volnys Borges Bernal volnys@lsi.usp.br Departamento de Sistemas Eletrônicos Escola Politécnica da USP Resumo das Chamadas TCP
Leia maisServidor UDP Volnys Borges Bernal Departamento de Sistemas Eletrônicos Escola Politécnica da USP
2004-2017 Volnys Bernal 1 Servidor UDP Volnys Borges Bernal volnys@lsi.usp.br Departamento de Sistemas Eletrônicos Escola Politécnica da USP 2004-2017 Volnys Bernal 2 Resumo das Chamadas UDP 2004-2017
Leia maisSistemas Distribuídos
Sistemas Distribuídos Universidade Federal do ABC Turma: Ciência da Computação Prof. Dr. Francisco Isidro Massetto Introdução: Sockets Para estabelecer a Comunicação Interprocesso nos Sistemas Distribuídos,
Leia maisCliente TCP. Programação sockets. Agenda. Cliente TCP. Chamadas sockets para TCP. Chamada socket() Chamada socket()
2002-2009 Volnys Bernal 1 2002-2009 Volnys Bernal 2 Agenda Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Resumo das chamadas sockets para TCP Chamada close() 2002-2009 Volnys Bernal
Leia maisServidor UDP. Programação Sockets Volnys Bernal. Servidor UDP Resumo das Chamadas UDP. Resumo de Chamadas UDP. Resumo de Chamadas UDP
2004-2015 Volnys Bernal 1 2004-2015 Volnys Bernal 2 Resumo das Chamadas UDP Volnys Borges Bernal volnys@lsi.usp.br Departamento de Sistemas Eletrônicos Escola Politécnica da USP 2004-2015 Volnys Bernal
Leia maisRedes de Computadores
Prof. Universidade Federal de Mato Grosso do Sul brivaldo@facom.ufms.br 24 de abril de 2017 Sumário 1 O núcleo da rede 2 3 Introdução Nesta aula vamos fazer ter uma visão geral de como programas de rede
Leia maisProgramação TCP/IP (sockets)
Programação TCP/IP (sockets) Instituto Superior de Engenharia de Lisboa Departamento de Engenharia de Electrónica e Telecomunicações e de Computadores Redes de Computadores Aplicações 17-03-2010 Programação
Leia maisComunicação entre Processos. 1. Pipes 2. Fifos 3. Sockets
Comunicação entre Processos 1. Pipes 2. Fifos 3. Sockets Pipes Implementa um canal de comunicação associado a um processo Limitações: Os dados apenas fluem num sentido Só podem ser usados entre processos
Leia maisProgramação com Sockets
Programação com LP4 Ciência da Computação 1 Comunicação entre processos Nível mais baixo É um tipo particular de modelo de programação em redes utilizado em várias linguagens como: C, C++ e Java São estruturas
Leia maisCliente UDP. Programação sockets. Agenda. Cliente UDP. Resumo de Chamadas UDP. Chamadas UDP. Resumo de Chamadas UDP.
2002-2013 Volnys Bernal 1 2002-2013 Volnys Bernal 2 Agenda Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Resumo de Chamadas UDP Chamada Chamada Chamada 2002-2013 Volnys Bernal 3
Leia maisComunicação entre processos. Sistema centralizado
Sistemas Distribuídos Comunicação entre processos Sistema centralizado Comunicação entre processos Arquivo Memória compartilhada Sinal Fila de mensagem SO gerencia comunicação 2 Sistema distribuído Idéia
Leia maisIntrodução à Programação Sockets. Programação Sockets. (c) Volnys Bernal. Agenda. Introdução à Programação Sockets
00-0 Volnys Bernal 00-0 Volnys Bernal Agenda Introdução à Programação Sockets Volnys Borges Bernal volnys@lsi.usp.br Departamento de Sistemas Eletrônicos Escola Politécnica da USP Interface de programação
Leia maisCOMUNICAÇÃO ENTRE APLICAÇÕES. Laboratórios de Informática João Paulo Barraca, André Zúquete, Diogo Gomes
COMUNICAÇÃO ENTRE APLICAÇÕES Laboratórios de Informática 2014-2015 João Paulo Barraca, André Zúquete, Diogo Gomes Comunicação Aplicações interagem de várias formas com o utilizador (stdin, stdout, stderr)
Leia maisServidor TCP Volnys Borges Bernal Depto de Engenharia de Sistemas Eletrônicos Escola Politécnica da USP
2004-2019 Volnys Bernal 1 Servidor TCP Volnys Borges Bernal Depto de Engenharia de Sistemas Eletrônicos Escola Politécnica da USP 2004-2019 Volnys Bernal 2 Resumo das Chamadas TCP 2004-2019 Volnys Bernal
Leia maisCliente UDP. Programação sockets. Agenda. Cliente UDP. Resumo de Chamadas UDP. Chamadas UDP. Resumo de Chamadas UDP.
2002-2004 Volnys Bernal 1 2002-2004 Volnys Bernal 2 Agenda Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Resumo de Chamadas UDP Chamada connect() Chamada send() Chamada sendto()
Leia maisServidor TCP. Programação Sockets. (c) Volnys Bernal. Servidor TCP Resumo das Chamadas TCP. Resumo das Chamadas TCP. Resumo das Chamadas TCP
2004-2013 Volnys Bernal 1 2004-2013 Volnys Bernal 2 Resumo das Chamadas TCP Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys 2004-2013 Volnys Bernal 3 2004-2013 Volnys Bernal 4 Resumo
Leia maisServidor TCP. Programação Sockets. (c) Volnys Bernal. Servidor TCP Resumo das Chamadas TCP. Resumo das Chamadas TCP. Resumo das Chamadas TCP
2004-2013 Volnys Bernal 1 2004-2013 Volnys Bernal 2 Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys 2004-2013 Volnys Bernal 3 2004-2013 Volnys Bernal 4 Lado Cliente Lado Servidor sd1
Leia maisIntrodução à Programação Sockets. Programação Sockets. (c) Volnys Bernal. Agenda. Introdução à Programação Sockets
Introdução à 00-00 Volnys Bernal 00-000 Volnys Bernal Agenda Introdução à Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Interface de programação sockets Socket Socket address Par
Leia maisMC823 Laboratório de Teleprocessamento e Redes
MC823 Laboratório de Teleprocessamento e Redes Primeiro Semestre 2008 Carlos R. Senna Prof. Edmundo R. M. Madeira Tecnologias de Comunicação 2 MC823 Funções para cliente-servidor UDP 3 well-known port
Leia maisRedes de Computadores e Aplicações
Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Campus Currais Novos Redes de Computadores e Aplicações Aula 13 - Camada de Aplicação Visão Geral Prof. Diego Pereira
Leia maisMC823 Atividade 1: Cliente/Servidor TCP Iterativo. 3 Modificando o servidor para retornar data e hora
MC823 Atividade 1: Cliente/Servidor TCP Iterativo Gustavo Sverzut Barbieri 1 Introdução Nessa atividade nós modificamos cliente e servidor simples que utilizam o protocolo TCP/IP.
Leia maisIntrodução à Programação Sockets. Programação Sockets. (c) Volnys Bernal. Agenda. Introdução à Programação Sockets
00-006 Volnys Bernal 00-006 Volnys Bernal Agenda Introdução à Programação Sockets Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Interface de programação sockets Socket Socket address
Leia maisPTC Aula Princípios das aplicações de rede 2.2 A Web e o HTTP. (Kurose, p ) (Peterson, p ) 21/03/2017
PTC 3450 - Aula 05 2.1 Princípios das aplicações de rede 2.2 A Web e o HTTP (Kurose, p. 62-73) (Peterson, p. 425-444) 21/03/2017 Muitos slides adaptados com autorização de J.F Kurose and K.W. Ross, All
Leia maisProgramação Orientada a Objetos para Redes de Computadores. Modelo Cliente-Servidor. Comunicação entre Processos. O que é um Socket?
Programação Orientada a Objetos para Redes de Computadores Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel PARTE 2 Programação em C++ - Sockets Comunicação entre Processos O que é um processo?
Leia maisProgramação Orientada a Objetos para Redes de Computadores
Programação Orientada a Objetos para Redes de Computadores Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel PARTE 2 Programação em C++ - Sockets Comunicação entre Processos O que é um processo?
Leia maisAULA 3 - REDES. Prof. Pedro Braconnot Velloso
AULA 3 - REDES Prof. Pedro Braconnot Velloso Resumo da última aula Começo da Internet Princípios básicos Comutação pacotes x circuitos Protocolos Arquitetura em camadas Arquitetura TCP/IP APLICAÇÃO TRANSPORTE
Leia maisProgramação de Sockets em C/C++
Programação de Sockets em C/C++ Redes de Comunicação 2011/2012 1 Programação de Sockets em C/C++ 2 TCP 3 UDP Introdução Os sockets são um método de criar conexão entre processos, independente do protocolo.
Leia maisSistemas Operacionais II
Introdução Instituto de Informátic ca - UFRGS Sistemas Operacionais II Estudo de caso: sockets API Aula 11 Aplicações em ambientes de rede seguem dois modelos: Cliente-servidor Peer-to-peer Interface de
Leia maisLeandro Soares de Sousa (DSc.) Página: Aula 05 - desenvolvimento com sockets
Tópicos Especiais Leandro Soares de Sousa (DSc.) e-mail: lsousa@id.uff.br Página: http://www.ic.uff.br/~lsousa Aula 05 - desenvolvimento com sockets Mais e mais ferramentas! 2 Aplicações distribuídas:
Leia maisCliente/Servidor. Programação com Sockets. Graça Bressan. Graça Bressan/LARC 2000 1
Cliente/Servidor Programação com Sockets Graça Bressan Graça Bressan/LARC 2000 1 Interface através de Sockets Socket é uma API ( Aplication Program Interface ) para acesso aos serviços do protocolo de
Leia maisSockets: Sumário. Resumo das Propriedades de UDP e de TCP
Sockets: Sumário Sockets TCP Modêlo. API de Java. API da biblioteca C. Avaliação Crítica de Sockets. 1 Resumo das Propriedades de UDP e de TCP Propriedade UDP TCP Abstracção Mens. Stream Baseado em Conexão
Leia maisLEIC/LERC 2009/10 Repescagem do 2º Teste de Sistemas Operativos
Número: Nome: LEIC/LERC 2009/10 Repescagem do 2º Teste de Sistemas Operativos 2 de Fevereiro de 2010 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração: 1h30m Grupo
Leia maisRedes de Computadores
Introdução Inst tituto de Info ormátic ca - UF FRGS s de Computadores User Datagram Protocol - UDP NAT/NAPT Introdução a protocolos de aplicação (sockets) Aula 24 Entidades da camada de transporte oferecem
Leia maisResumo das Propriedades de UDP e de TCP
Relembrando... Processos duma aplicação distribuída comunicam via mensagens. O formato e o significado destas mensagens depende do protocolo usado. As mensagens são transportadas entre processos através
Leia maissockets interprocess communication Taisy Weber
sockets interprocess communication Taisy Weber Comunicação entre processos Mecanismos Pipes, FIFO (named pipes), semáforos, message queues. Memória compartilhada. Sockets Definição, chamadas de sistemas,
Leia maisINF01018 Aula Prática 1 Cliente-Servidor e Multicast
1 / 30 INF01018 Aula Prática 1 Cliente-Servidor e Multicast Lucas Mello Schnorr, Alexandre Silva Caríssimi {lmschnorr,asc}@inf.ufrgs.br http://www.inf.ufrgs.br/ lmschnorr/ad/ INF01018 Sistemas Operacionais
Leia maisLeandro Soares de Sousa (DSc.) Página: Parte III
Tópicos Especiais em Sistemas Computacionais Leandro Soares de Sousa (DSc.) e-mail: leandro.uff.puro@gmail.com Página: http://www.ic.uff.br/~lsousa Parte III Mais e mais ferramentas! 2 Aplicações distribuídas:
Leia maisAPI de Sockets. Modelo Cliente/Servidor (2/2) Modelo Cliente/Servidor (1/2) José Pedro Oliveira Sistemas Operativos I
Conteúdo (jpo@di.uminho.pt) Grupo de Sistemas Distribuídos Departamento de Informática Escola de Engenharia Universidade do Minho 1 Sistemas Operativos I 2006-2007 Modelo Cliente/Servidor (1/2) Modelo
Leia maisAula Prática. Comunicação em SOCKTS. Disciplina: INF01151
Aula Prática Comunicação em SOCKTS Disciplina: INF01151 Prof. Dr. Cláudio Fernando Resin Geyer Monitor: Julio Anjos Agenda 1 - Objetivo Apresentar na prática a comunicação entre processos usando sockets
Leia maisProjeto e Desenvolvimento de Aplicações Cliente / Servidoras Para a INTERNET
Projeto e Desenvolvimento de Aplicações Cliente / Servidoras Para a INTERNET João Carlos Gluz Canoas, RS, março de 2001 Sumário SUMÁRIO... 2 CAPÍTULO I - O MODELO CLIENTE / SERVIDOR... 4 1.1. MOTIVAÇÃO...
Leia maisPor Fernando Koyanagi
Por Fernando Koyanagi Recursos usados 18 jumpers fêmea x fêmea Módulo de 16 relés com optoacoplador Raspberry Pi 3 Rede interna (TCP/IP) Intenção dessa aula 1. Iniciar automação com Raspberry Pi PI 2.
Leia maisRedes de Computadores
Redes de Computadores Prof. Marcelo Gonçalves Rubinstein Programa de Pós-Graduação em Engenharia Eletrônica Faculdade de Engenharia Universidade do Estado do Rio de Janeiro Ementa Introdução a Redes de
Leia maisRedes de Computadores
Introdução Inst tituto de Info ormátic ca - UF FRGS s de Computadores NAT/NAPT User Datagram Protocol UDP Introdução a protocolos de aplicação (sockets) Trabalho sob a Licença Atribuição-SemDerivações-SemDerivados
Leia mais21/11/16. Histórico. Interfaces e Periféricos Redes como interfaces. Abstração da infraestrutura de rede como interface
Interfaces e Periféricos Redes como interfaces Histórico Surgimento e popularização das redes criou a necessidade e oportunidade de usá-las como mecanismo de interação entre um computador e periféricos
Leia maisRedes de Computadores
Redes de Computadores Camada de Aplicação Slide 1 Protocolo da Camada de Aplicação Tipos de mensagens trocadas; A sintaxe dos vários tipos de mensagens; A semântica dos campos; Regras para determinar quando
Leia maisRedes de Computadores II. Programação com Sockets em Python
v.2016 Redes de Computadores II Programação com Sockets em Python Prof. Ricardo Couto A. da Rocha rcarocha@ufg.br UFG Regional de Catalão Camada de Transporte Arquitetura TCP/IP APLICAÇÃO TRANSPORTE REDE
Leia maisIntrodução. Protocolos de Aplicação. Introdução à pilha de comunicações TCP/IP. Interface de sockets. Protocolos de aplicação. Exemplos de trabalhos
AP 1 Protocolos de Aplicação 2º trabalho laboratorial FEUP/DEEC MPR/JAR AP 2 Introdução Introdução à pilha de comunicações TCP/IP Interface de sockets Protocolos de aplicação POP3, SMTP, HTTP e FTP Exemplos
Leia maisTutorial de Sockets - Parte I Por: Frederico Perim
Tutorial de Sockets - Parte I Por: Frederico Perim O que é um Socket? Você já deve ter ouvido faler sobre Sockets e talvez esteja imaginando do que se trata exatamente. Bem, resumindo: através de Sockets
Leia maisRedes de Computadores
Redes de Computadores Camada de Transporte Parte I Prof. Thiago Dutra Agenda n Parte I n Introdução n Protocolos de Transporte Internet n Multiplexação e n UDP n Parte II n TCP
Leia maisCamada de Aplicação da Arquitetura TCP/IP
Arquitetura de Redes de Computadores e Tecnologia de Implementação de Redes 2016.1 Camada de Aplicação da Arquitetura TCP/IP Curso Técnico Integrado em Informática Turma: INT.INF.3M Arquitetura de Redes
Leia maisAplicação de rede. GA-027 Redes de Computadores. Camada de Aplicação. Artur Ziviani LNCC/MCT. Execução nos sistemas finais com comunicação via rede
GA-027 Redes de Computadores Camada de Aplicação Artur Ziviani LNCC/MCT Aplicação de rede Execução nos sistemas finais com comunicação via rede Processos no SO usando infra-estrutura de comunição Ex: software
Leia maisAInterface que um aplicativo utiliza quanto interage com um módulo implementado por outro software
Sockets Pedroso 4 de março de 2009 1 Introdução AInterface que um aplicativo utiliza quanto interage com um módulo implementado por outro software é chamado de API (Application Programing Interfaced).
Leia mais06/10/2015. Modelo TCP/IP Camada de Transporte DISCIPLINA: TECNOLOGIA DE REDES DE COMPUTADORES. UDP User Datagram Protocol. UDP User Datagram Protocol
Tecnologia em Jogos Digitais Modelo TCP/IP Camada de Transporte DISCIPLINA: TECNOLOGIA DE REDES DE COMPUTADORES O transporte dos dados na INTERNET é realizado por dois protocolos. PROTOCOLOS TCP E UDP
Leia maisIntrodução. Protocolos de Aplicação. Introdução à pilha de comunicações TCP/IP. Interface de sockets. Protocolos de aplicação. Exemplos de trabalhos
AP 1 Protocolos de Aplicação 2º trabalho laboratorial FEUP/DEEC MPR/JAR AP 2 Introdução Introdução à pilha de comunicações TCP/IP Interface de sockets Protocolos de aplicação POP3, SMTP, HTTP e FTP Exemplos
Leia maisSistemas de Operação (2018/2019) Ficha 6
Sistemas de Operação (2018/2019) Ficha 6 Q1. Considere o seguinte programa que implementa uma pipe entre processos pai e filho. Compile o exemplo e execute-o. Leia o código com atenção e compreenda-o.
Leia maisCanais de Comunicação
Canais de Comunicação February 24, 2010 Sumário Comunicação via Mensagens Propriedades dum Canal de Comunicação Protocolos da Internet UDP TCP Aplicação Distribuída O que é? É uma aplicação que consiste
Leia maisComunicação entre Processos por Troca de Mensagens. Prof. Celso maciel da Costa
Comunicação entre Processos por Troca de Mensagens Prof. Celso maciel da Costa Troca de Mensagens Com memória compartilhada: os processo compartilham variáveis e trocam informações através do uso de variáveis
Leia maisProtocolos de Aplicação
AP 1 Protocolos de Aplicação (2º trabalho laboratorial) FEUP/DEEC Redes de Computadores MIEIC 2009/10 José Ruela AP 2 Sumário Pilha protocolar TCP/IP Interface de sockets Protocolos de aplicação» POP3,
Leia maisProtocolos de Aplicação
AP 1 Protocolos de Aplicação (2º trabalho laboratorial) FEUP/DEEC Redes de Computadores MIEIC 2009/10 José Ruela AP 2 Sumário Pilha protocolar TCP/IP Interface de sockets Protocolos de aplicação» POP3,
Leia maisRoteiro... Sistemas Distribuídos Aula 4. Troca de mensagens. Comunicação entre processos. Conceitos de SD, vantagens e desvantagens
Roteiro... Conceitos de SD, vantagens e desvantagens Infra-estrutura de um SD Considerações de projeto Sistemas Distribuídos Aula 4 Karine de Pinho Peralta Modelos de Comunicação - comunicação entre processos
Leia maisServiços de Comunicações Capítulo 3
Capítulo 3 A Camada de Transporte da Arquitectura TCP/IP 3.1 Portos e Sockets 3.2 O Protocolo UDP 3.3 O Protocolo TCP 1 3.1. Portos e Sockets A Camada de Transporte fornece transferência de dados fim-a-fim
Leia maisEng.ª Informática. Redes de Computadores. Frequência. 4 de Julho de 2006
Eng.ª Informática Redes de Computadores 4 de Julho de 2006 Leia atentamente as perguntas seguintes e responda de forma breve e precisa. Pode acompanhar a suas respostas com figuras de forma a torná-las
Leia maisTrabalho 02: Cliente e Servidor em C
Trabalho 02: Cliente e Servidor em C Redes de Computadores 1 Descrição Este trabalho deve ser entregue no Moodle até a data correspondente de entrega. Envie sua resposta somente em texto a não ser que
Leia maisArquitetura de Rede. Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina: Redes de Computadores I
Arquitetura de Rede Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina: Redes de Computadores I 2 Tipos de arquiteturas Cliente-Servidor Peer-to-Peer Arquitetura Híbrida Cliente-Servidor
Leia maisResolução de Nomes Volnys Borges Bernal Deparatamento de Sistemas Eletrônicos Escola Politécnica da USP
2002-2015 Volnys Bernal 1 Resolução de Nomes Volnys Borges Bernal volnys@lsi.usp.br Deparatamento de Sistemas Eletrônicos Escola Politécnica da USP 2002-2015 Volnys Bernal 2 Agenda Introdução à resolução
Leia maisRedes de computadores e a Internet. Redes de computadores e a Internet. Prof. Gustavo Wagner. Capítulo 3. Camada de transporte
Redes de computadores e a Internet Redes de computadores e a Internet Prof. Gustavo Wagner Capítulo 3 Camada de transporte Camada de transporte Objetivos do capítulo: Entender os princípios por trás dos
Leia maisSockets e Threads em Java
Sockets e Threads em Java U N I V E R S I D A D E T E C N O L Ó G I C A F E D E R A L D O P A R A N Á D E P A R T A M E N T O A C A D Ê M I C O D E E L E T R Ô N I C A P R O F. V I T O R Y A N O Comunicação
Leia maisComunicação entre Processos Canal de comunicação Arquitetura da comunicação Modelos de comunicação
Comunicação entre Processos Canal de comunicação Arquitetura da comunicação Modelos de comunicação Sistemas Operativos 2015-2016 O que construímos até agora... A abstração de processo 2 A possibilidade
Leia maisUm Tutorial sobre Sockets Parte I
Um Tutorial sobre Sockets Parte I Por Antonio Marcelo Iniciando As grandes ferramentas utilizadas por especialistas de segurança, hackers e crakers tem como base a linguagem C ANSI ou C ++. Muitos dos
Leia maisComunicação. Carlos A. G. Ferraz 25/6/2003. Sistemas Distribuídos 1. Tópicos. Camadas. Transmissão de dados. Marshalling/Unmarshalling.
Tópicos Comunicação Carlos Ferraz cagf@cin.ufpe.br Elementos básicos de comunicação Transmissão de dados Endereçamento Sincronismo Enfileiramento (Bufferização) Confiabilidade Portas e sockets UDP RPC:
Leia maisVolnys Borges Bernal. Agenda. Resolução de Nomes. Introdução à resolução de nomes. Introdução à resolução de nomes
2002-2009 Volnys Bernal 1 2002-2009 Volnys Bernal 2 Agenda Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Resolução de nome de protocolo 2002-2009 Volnys Bernal 3 2002-2009 Volnys
Leia maisGrupo I [6 v] Considere o processo com a seguinte tabela de páginas: Página Presente Protecção Base 0 0 RW RW R R RW -
Número: Nome: LEIC/LETI 2014/15-2º Teste de Sistemas Operativos 9/Janeiro/2015 Identifique todas as folhas. Responda no enunciado no espaço fornecido. Justifique todas as respostas. Duração: 1h30m Grupo
Leia maisFUNDAMENTOS DE REDES DE COMPUTADORES Unidade 5 Camada de Transporte e Aplicação. Luiz Leão
Unidade 5 Camada de Transporte e Aplicação Luiz Leão luizleao@gmail.com http://www.luizleao.com Conteúdo Programático 5.1 Protocolo UDP 5.2 Protocolo TCP 5.3 Principias Protocolos de Aplicação 5.3.1 SMTP
Leia maisCapítulo 2 Camada de Aplicação
Redes de Computadores DCC/UFJ Capítulo 2 Camada de Aplicação Material fortemente baseado nos slides do livro: Computer Networking: A Top-Down Approach Featuring the Internet. Os slides foram disponibilizados
Leia maisSockets IPv6 para C/C++ - Criando e Portando Aplicações
Sockets IPv6 para C/C++ - Criando e Portando Aplicações Rodrigo Regis dos Santos rsantos@nic.br 25 de Junho de 2009 Agenda O CGI.br e o NIC.br. O Protocolo IPv6. Interoperabilidade Portando Aplicações.
Leia maisComunicação entre processos
Comunicação entre processos Processo: um programa em execução num sistema terminal (host) Processos em sistemas distintos comunicam trocando mensagens Processo Cliente: processo que inicia a comunicação
Leia maisComunicação em Rede e Internet. Computação Aplicada à Comunicação e Artes Carlos Eduardo Ba9sta
Comunicação em Rede e Internet Computação Aplicada à Comunicação e Artes Carlos Eduardo Ba9sta Introdução Arquitetura de Sistemas: Sistema Mul9tarefa Sistema Mul9processador Sistemas Distribuídos: Consiste
Leia maisProgramação de Sistemas. Sockets. Programação de Sistemas Sockets : 1/66
Programação de Sistemas Sockets Programação de Sistemas Sockets : 1/66 Introdução à Internet (1) A. Modelo de comunicação na rede de computadores O mais divulgado é a Internet. Baseada numa pilha de protocolos
Leia maisFuncionalidade e Protocolos da Camada de Aplicação
Funcionalidade e Protocolos da Camada de Aplicação Network Fundamentals Capítulo 3 1 Aplicações A Interface entre usuário e Rede de Dados A Camada de aplicação provê recursos para enviar e receber dados
Leia mais