Introdução à Programação Sockets. Programação Sockets. (c) Volnys Bernal. Agenda. Introdução à Programação Sockets

Documentos relacionados
Introdução à Programação Sockets. Programação Sockets. (c) Volnys Bernal. Agenda. Introdução à Programação Sockets

Introdução à Programação Sockets

Cliente TCP. Programação sockets. Agenda. Cliente TCP. Chamadas sockets para TCP. Chamada socket() Chamada socket()

Tecnologia de Redes. Protocolo TCP

Cliente UDP. Programação sockets. Agenda. Cliente UDP. Resumo de Chamadas UDP. Resumo das chamadas UDP. Resumo de Chamadas UDP.

Cliente UDP. Programação sockets. Agenda. Cliente UDP. Resumo de Chamadas UDP. Chamadas UDP. Resumo de Chamadas UDP.

Agenda. Rede de Computadores (Técnico em Informática) Protocolo TCP Transmission Control Protocol. Introdução ao Protocolo TCP

Servidor UDP Volnys Borges Bernal Departamento de Sistemas Eletrônicos Escola Politécnica da USP

Servidor UDP. Programação Sockets Volnys Bernal. Servidor UDP Resumo das Chamadas UDP. Resumo de Chamadas UDP. Resumo de Chamadas UDP

Protocolo TCP. Redes TCP-IP. Agenda. Protocolo TCP Transmission Control Protocol. Introdução ao Protocolo TCP. Introdução ao Protocolo TCP

Cliente UDP. Programação sockets. Agenda. Cliente UDP. Resumo de Chamadas UDP. Chamadas UDP. Resumo de Chamadas UDP.

! Introdução! Pacote TCP! Número de Seqüência TCP! Estados TCP. " Estabelecimento de conexão " Troca de dados " Encerramento de conexão. !

Servidor TCP. Programação Sockets. (c) Volnys Bernal. Servidor TCP Resumo das Chamadas TCP. Resumo das Chamadas TCP. Resumo das Chamadas TCP

Módulo 08 - Protocolo IP Página 1. Tecnologia de Redes. Volnys B. Bernal Versão de 15/06/2000. Agenda. Tecnologia de Redes

Tecnologia de Redes. Arquitetura de Rede de Computadores

Agenda. Protocolo TCP. Introdução ao Protocolo TCP. Introdução ao Protocolo TCP. Introdução ao Protocolo TCP. Introdução ao protocolo TCP: Exemplo

Arquitetura de Redes. Redes TCP-IP. Agenda. Introdução à Arquitetura TCP/IP. Tipos de Serviços. Modelo de Referênca ISO/OSI

Servidor TCP. Programação Sockets. (c) Volnys Bernal. Servidor TCP Resumo das Chamadas TCP. Resumo das Chamadas TCP. Resumo das Chamadas TCP

Servidor TCP. Programação Sockets. (c) Volnys Bernal. Servidor TCP Resumo das Chamadas TCP. Resumo das Chamadas TCP. Resumo das Chamadas TCP

Aula de Socket. Rafael De Tommaso do Valle

Agenda. Rede de Computadores (Técnico em Informática) Modelo em Camadas. Modelo em Camadas. Modelo em Camadas 11/3/2010

Programação com Sockets

Redes de Computadores e Aplicações

Redes TCP-IP. Protocolo ICMP. Pilha TCP/IP. Protocolo ICMP Internet Control Message Protocol. Introdução ao Protocolo ICMP

Volnys Borges Bernal. Agenda. Resolução de Nomes. Introdução à resolução de nomes. Introdução à resolução de nomes

Tecnologia de Redes. Protocolo ICMP

Resolução de Nomes Volnys Borges Bernal Deparatamento de Sistemas Eletrônicos Escola Politécnica da USP

Protocolo ICMP Internet Control Message Protocol. Introdução ao Protocolo ICMP. Introdução ao Protocolo ICMP. Introdução ao Protocolo ICMP

Protocolos de Rede. Protocolos em camadas

Redes de Computadores

06/10/2015. Modelo TCP/IP Camada de Transporte DISCIPLINA: TECNOLOGIA DE REDES DE COMPUTADORES. UDP User Datagram Protocol. UDP User Datagram Protocol

Sockets. André Restivo. April 29, Faculdade de Engenharia da Universidade do Porto. André Restivo (FEUP) Sockets April 29, / 27

Sistemas Operacionais - Básico e Avançado - Prof. Celso Maciel da Costa Mestrado em Informática - PUCRS

Programação de Sockets em C/C++

Programação com Sockets TCP e UDP - Cliente. Gustavo Leitão

Sistemas Operacionais II

Sumário. Introdução ao TCP/IP e à Internet API Sockets para comunicação via redes Exemplos

Sockets - Conceitos Básicos. COMUNICAÇÃO ENTRE PROCESSOS Sockets. Conceitos Básicos. Tipos de Sockets

Programação em Sockets visando verificar a diferença entre transmissão confiável (TCP) e não confiável (UDP)

Programação com Sockets. Redes de Computadores I 2007/2008

Tecnologia de Redes. NAT e Masquerade

Modelo de Referência TCP/IP

Comunicação entre Processos

Soquetes TCP. Jean Ribeiro Damasceno. Escola de Engenharia Universidade Federal Fluminense (UFF) Rua Passo da Pátria, 156 Niterói RJ Brasil

Sistemas de Operação Sockets

Sistemas Distribuídos

Comunicação entre Processos

Cliente/Servidor. Programação com Sockets. Graça Bressan. Graça Bressan/LARC

Redes de Computadores. Modelo TCP/IP. Instituto Federal de Educação, Ciência e Tecnologia do Triângulo Mineiro Prof. Edwar Saliba Júnior

Comunicação entre processos. Sistema centralizado

Comunicação em Rede e Internet. Computação Aplicada à Comunicação e Artes Carlos Eduardo Ba9sta

Programação com sockets (em Java)

Curso de Pós-Graduação Lato-Sensu em Redes de Computadores. Arquitetura TCP/IP. Hermes Senger DC/UFSCar 2012

API de Sockets. Modelo Cliente/Servidor (2/2) Modelo Cliente/Servidor (1/2) José Pedro Oliveira Sistemas Operativos I

Camada de Transporte Protocolos TCP e UDP

21/11/16. Histórico. Interfaces e Periféricos Redes como interfaces. Abstração da infraestrutura de rede como interface

Padrões (arquiteturas) de rede

TCP/IP Protocolos e Arquiteturas

Modelo OSI x Modelo TCP/IP

camada de transporte SOCKET TCP UDP

Nome do Curso: Técnico em Informática. Nome da Disciplina: Redes de Computadores. Número da Semana: 2. Nome do Professor: Dailson Fernandes

Engenharia Elétrica Eletrônica Slides 20: TCP/IP em Winsocks 2. API do Windows para programar utilizando o protocolo TCP/IP Prof. Jean Marcelo SIMÃO

Redes de Computadores. Arquitetura de Protocolos Profa. Priscila Solís Barreto

Comunicação entre Processos. 1. Pipes 2. Fifos 3. Sockets

Agenda. Tecnologia de Redes. NAT e Masquerade. Introdução. Introdução. Firewalls. Introdução NAT Masquerade

TROCA DE MENSAGENS SOCKETS. Comunicando processos através de SOCKETS. SOCKETS com conexão. SOCKETS sem conexão

IPv6 Um novo protocolo para a Internet

Redes de Computadores

Bibliotecas. Apoio à Programação Distribuída. Socket. Socket. bibliotecas bibliotecas+ferramentas linguagens de programação distribuídas

Arquiteturas de Protocolos. Aplicação. Redes. Aplicações cliente-servidor. Aplicações peer-to-peer

sockets interprocess communication Taisy Weber

Modelos de referência de arquiteturas de redes: OSI e TCP/IP Profsº Luciano / Roberto

Arquitetura de Rede de Computadores

Introdução à Programação com Sockets. Fernando Jorge Silveira Filho Daniel Sadoc Menasché

29-Aug-07. Histórico. Interfaces e Periféricos Redes como interfaces. Abstração da infraestrutura de rede como interface

Módulo 3 Nível Transporte

Capítulo 6. A camada de transporte

Por Fernando Koyanagi

Sistemas Operacionais:

Data and Computer Network Endereçamento IP

Cliente-servidor com Sockets TCP

Eng.ª Informática. Redes de Computadores. Frequência. 4 de Julho de 2006

Resumo P2. Internet e Arquitetura TCP/IP

MÓDULO 8 Modelo de Referência TCP/IP

Funcionalidade e Protocolos da Camada de Aplicação

MC833A Programação de Redes de Computadores

MC823 Laboratório de Teleprocessamento e Redes

Pilha TCP/IP. Walter Fetter Lages

Projeto e Desenvolvimento de Aplicações Cliente / Servidoras Para a INTERNET

Fundamentos de Redes de Computadores Modelo de Referência ISO/OSI

Visão Geral de Protocolos

Camada de Aplicação da Arquitetura TCP/IP

Aula 2 Arquitetura de Redes. Prof. Dr. S. Motoyama

Programação TCP/IP (sockets)

Prof. Marcelo Cunha Parte 5

UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO ERINALDO SANCHES NASCIMENTO O MODELO TCP/IP

Transcrição:

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 Par Socket Estrutura sockaddr_in Estrutura de dados mantida pelo sistema operacional 00-006 Volnys Bernal 00-006 Volnys Bernal Interface de Programação Sockets Interface de programação mais usual para comunicação sobre a pilha /IP Permite à uma (processo) estabelecer, por eemplo: Sessão de comunicação Coneão Sessão de comunicação IP 00-006 Volnys Bernal 00-006 Volnys Bernal 6 NFS NIS SMB Processos Camada de DNS HTTP FTP Telnet SMTP POP RPC NetBios Interface Sockets Camada de transporte Camada de redes IP ICMP IGMP Núcleo do Sistema Operacional ICMP IP IGMP ARP RARP Device Driver ARP Camada intra-rede Fast Gigabit PPP SLIP Frame Relay Placa de Rede PPP meio físico Meio Físico

00-006 Volnys Bernal 7 00-006 Volnys Bernal 8 Principais funções da interface de programação sockets bind listen connect accept read write recv send recvfrom sendto close shutdown connect ( ) send ( ) recv ( ) OPEN bind ( ) recvfrom ( ) sendto ( ) 00-006 Volnys Bernal 9 00-006 Volnys Bernal 0 connect ( ) send ( ) CLOSED CLOSED LISTEN SYN SYN_SENT SYN,ACK SYN_RCVD ACK ESTABLISHED ESTABLISHED ACK bind ( ) listen ( ) accept ( ) recv ( ) shutdown ( ) 00-006 Volnys Bernal 00-006 Volnys Bernal Socket Socket = Soquete = Plug de comunicação Identifica um etremo da comunicação entre duas aplicações Socket address Endereço que permite identificar um soquete Socket address para IPv é Endereço IP Porta do protocolo de transporte = End. IP + Porta

00-006 Volnys Bernal 00-006 Volnys Bernal Par Socket Identifica uma sessão de comunicação Identificado por dois Socket Adddress Estrutura sockaddr Estrutura genérica para representar o endereço de um socket Protocolo de End. IP Porta End. IP Porta u_short ; char []; 00-006 Volnys Bernal 00-006 Volnys Bernal 6 Address Family Identificador do tipo de endereço utilizado Eemplo de identificadores para address family: AF_INET - para endereços IPv AF_INET6 - para endereços IPv6 u_short ; char []; Estrutura sockaddr_in Quando for um endereço IPv (address family=af_inet) o endereço do socket pode ser representado utilizando a estrutura Internet. Formato geral u_short ; char []; Formato específico p/ Internet _in u_short ; u_short ; u_long char [8]; 00-006 Volnys Bernal 7 00-006 Volnys Bernal 8 Estrutura customizada para internet Estrutura geral _in Utilização de sockets com a Pilha /IP Mapeada em

00-006 Volnys Bernal 9 00-006 Volnys Bernal 0 Sockets com a Pilha /IP Quando a chamada socket() é ativada para uma comunicação sobre a pilha /IP, é alocada no sistema operacional uma estrutura socket, contendo inicialmente somente informações a respeito de Família de protocolo Tipo de serviço Protocolo de interação Eistem diversas pilhas de protocolos de rede (além da pílha /IP), cada uma com diferentes protocolos e formatos de endereço. Para cada uma destas, eistem diferentes valores que podem ser utilizados para identificar a Famídia de protocolos, o tipo de fluo e o protocolo de interação Sockets com a Pilha /IP No caso da utilização da pilha /IP com IPv os valores possíveis são: Protocol Family (PF) Possibilita identificar o tipo de protocolo utilizado Deve ser utilizado PF_INET Address Family (AF) Possibilita identificar o tipo de endereço utilizado Deve ser utilizado AF_INET Protocol Protocolo de interação Valores possíveis:, ou IP Type Tipo de serviço oferecido Valores possíveis: STREAM, DGRAM ou RAW 00-006 Volnys Bernal 00-006 Volnys Bernal Tabela de descritores de arquivos abertos Quando um arquivo ou socket é aberto é alocada uma entrada da tabela de descritores de arquivos abertos Cada entrada da tabela de descritores contém um índice para outra tabela que contém informações a respeito do arquivo ou socket O índice da tabela (chamado de descritor) é utilizado pela para identificar o arquivo ou socket em operações futuras Tabela de descritores de arquivos abertos 0 Arquivo Arquivo Socket 00-006 Volnys Bernal Contém informações a respeito de uma sessão de comunicação ( ou ) ou uma sessão embrionária Para cada sessão de comunicação, ou IP é necessário alocar uma estrutura socket protocol family PF_INET Observação: Visão simplificada da estrutura. O programador não manipula a estrutura socket diretamente. 00-006 Volnys Bernal Tabela de descritores 0 Socket Descriptor Observação: Visão simplificada O programador não manipula estas estruturas diretamente. protocol family PF_INET

00-006 Volnys Bernal 00-006 Volnys Bernal 6 Lado servidor com protocolo IPv (Internet) family PF_INET socketaddr_in bind() Utilizado no lado servidor. Define o endereço e a porta para o socket Lado cliente com protocolo IPv (Internet) family PF_INET socketaddr_in Connect() Utilizado no lado cliente. Define para o socket o parceiro remoto de comunicação 00-006 Volnys Bernal 7 00-006 Volnys Bernal 8 Referências Bibliográficas Referências Bibliográficas COMMER, DOUGLAS; STEVENS, DAVID Internetworking with /IP: volume : client-server programming and applications Prentice Hall 99