Camada de Transporte: Portas, Sockets, Aplicações em Rede

Slides:



Advertisements
Apresentações semelhantes
Soluções elegantes para problemas recorrentes
Advertisements

Capítulo 2: Camada de Aplicação
Missão da camada de enlace Serviços oferecidos TCP UDP
Comunicação entre processos distribuídos
Rede Local - Instalação
Conceitos Relacionados a Internet
Comunicação Distribuída
Interação Cliente Servidor
Tele-Processamento e Redes (Redes de Computadores) Prof. Fábio Moreira Costa Universidade Federal de Goiás Instituto de Informática Curso de Ciência da.
GERENCIAMENTO DE REDES
Apresentação para EAD usando modelo instrucional
Paulo Roberto Freire Cunha
Elementos da Arquitetura P2P
Aula 01: Arquitetura TCP/IP
Visão Geral de Protocolos
Modelos de Referência.
Introdução às Redes Privadas Virtuais - VPN
CCNA 1 – Camadas de Transporte e de Aplicação do TCP/IP
Introdução à Programação Distribuída em Java
Escola Secundária Filipa de Vilhena Ano Lectivo 2010/ Turma IGR1
REDES DE COMPUTADORES II
Funcionalidades e Protocolos da Camada de Aplicação
Sistemas Operacionais
NETBIOS Disciplina: Redes de Computadores
Aplicativos Web Com Orientação a Objetos
Modelo de referência OSI
Redes Aula 7 Professor: Marcelo Maia.
Web Services Uninorte Semana de Tecnologia da Informação
REDES DE COMPUTADORES Prof. Deivson
Aula 2 Arquitetura & Protocolos
Capítulo 2: Camada de Aplicação
Redes de Computadores Prof Rafael Silva.
Funcionalidade e Protocolos da Camada de Aplicação
O Modelo OSI Guilherme Guimarães.
GERENCIAMENTO DE REDES UTILIZANDO O PROTOCOLO SNMP
Java Avançado Luiz Carlos d´Oleron SJCP Java Sockets.
Disciplina: Redes de Computadores Professora: Rossana Andrade
Protocolos e o Modelo OSI
NetBIOS Acadêmicos: Rubens Hiroshi Suzuqui Valmir Ferreira Marques
Comunicação entre Processos - Sockets. Conceitos Básicos Sockets são uma forma de IPC ( InterProcess Communication ) fornecida pela 4.3 BSD que fornecem.
Modelos de Referência OSITCP/IP29/06/06.  Camadas de Protocolos  Modelo de Referência OSI Funcionamento Camadas e Funcionalidades  Modelo de Referência.
Programando sockets em python
FTIN Formação Técnica em Informática Módulo Sistema Proprietário Windows AULA 04 Prof. André Lucio.
Prof. Carlos Roberto da Silva Filho, M. Eng.
Aula 1 - Fundamentos Web Servidor
Índice Arquitetura TCP/IP Quatro camadas do TCP/IP DHCP
Prof. Eduardo Maroñas Monks
Camada de Transporte: protocolo TCP Parte 1
REDES DE COMPUTADORES CONCEITOS E TÓPICOS RELACIONADOS A REDES DE COMPUTADORES ________________________________________________ Redes – Prof. Roni Márcio.
Prof. Rafael Folha SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL PROGRAMA NACIONAL DE ACESSO AO ENSINO TÉCNICO E EMPREGO SISTEMA DE.
Unidade 1 – Introdução a J2EE Prof.: Henrique Santos
Arquitetura TCP/IP Redes de Computadores.
Arquitetura de Redes de Computadores – Luiz Paulo Maia Camada de Transporte1 Arquitetura de Redes de Computadores Luiz Paulo Maia Camada de Transporte.
Camada de Transporte: protocolo UDP
Administração e Projeto de Redes
Comunicação Cliente-Servidor Linguagem para Internet II Prof. Marcelo da Silveira Siedler SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL.
Java – Remote Method Invocation (RMI)
Redes de computadores: Aplicações Prof. Dr. Amine BERQIA
Serviço Nacional de Aprendizagem Comercial do Rio Grande do Sul Informação e Comunicação Habilitação Técnica de Nível Médio Técnico em Informática Prof.
Camada de Aplicação Prof. Horácio. Objetivo Apresentar os detalhes específicos dos tipos de aplicação; Apresentar o modelo cliente-servidor; Apresentar.
Passagens de Mensagens Prof. Dr. Norian Marranghello
Redes de Computadores 2 - Camada de Aplicação (Princípios Básicos) –
Administração e Projeto de Redes Material de apoio Camada de Transporte Cap.4 10/02/2010.
Sockets Redes de Comunicação de Dados Prof. Esp. Cristiano José Cecanho.
Redes de Computadores e Aplicações – Camada de aplicação IGOR ALVES.
Compartilhamento nas nuvens para redes locais baseado em P2P Jerônimo Feijó Noble da Rosa Faculdade de Tecnologia SENAC Pelotas/RS Curso Superior de Tecnologia.
Compartilhamento nas nuvens para redes locais baseado em P2P Jerônimo Feijó Noble da Rosa Faculdade de Tecnologia SENAC Pelotas/RS Curso Superior de Tecnologia.
Faculdade de Tecnologia SENAC Pelotas/RS Curso Superior de Tecnologia em Redes de Computadores Projeto Integrador I Seminário Final Funcionalidades da.
Capítulo 2 Redes de computadores e a Internet Camada de aplicação Prof. Gustavo Wagner.
Curso Superior em Redes de Computadores Camada de Aplicação Prof. Sales Filho.
Transcrição da apresentação:

Camada de Transporte: Portas, Sockets, Aplicações em Rede Faculdade Senac Pelotas Curso Superior em Tecnologia de Redes de Computadores Unidade Curricular - Redes de Computadores II Prof. Eduardo Maroñas Monks Camada de Transporte: Portas, Sockets, Aplicações em Rede

Sumário Endereçamento das aplicações Sockets Aplicações com sockets Estudo de Casos Referências Bibliográficas 2

Formas de endereçamento Portas e Sockets: O uso de Portas e Sockets como forma de endereçamento possibilita a uniformidade e a exclusividade da identidade da comunicação. Para determinar qual processo em um determinado host se comunica com determinado processo em um host remoto e com qual protocolo, são usadas Portas e Sockets com os protocolos UDP e TCP. 3

Formas de endereçamento Portas Conhecidas (Números 0 a 1023) - Esses números estão reservados para serviços e aplicações. Eles são comumente usados para aplicações como o HTTP (servidor web) POP3/SMTP (servidor de e-mail) e Telnet. Através da definição destas portas conhecidas para aplicações de servidor, aplicações de clientes podem ser programados para solicitar uma conexão com essa porta específica e seu serviço associado. Portas Registradas (Números 1024 a 49151) - Estes números de portas são designados para processos ou aplicações de usuário. Estes processos são principalmente aplicações individuais que um usuário escolheu para instalar em vez de aplicações comuns que receberiam uma Porta Conhecida. Quando não usadas para um recurso de servidor, estas portas também podem ser dinamicamente selecionadas por um cliente como sua porta de origem. Portas Dinâmicas ou Privadas (Números 49152 a 65535) - Elas são geralmente designadas dinamicamente a aplicações de cliente quando se inicia uma conexão. Não é muito comum um cliente se conectar a um serviço usando uma Porta Dinâmica ou Privada (embora alguns programas de compartilhamento de arquivos peer-to-peer o façam). 4

Formas de endereçamento Tipos de Portas: É possível o uso de uma mesmo número de porta para diferentes protocolos. E também é possível o uso de protocolos diferentes para um mesmo serviço, no mesmo número de porta. Exemplo: DNS -> TCP (53) DNS -> UDP (53) 5

Sockets Sockets: API (Application Programming Interface) para comunicação com os protocolos. Conceito introduzido no sistema operacional BSD 4.2 Padrão de fato para programação de aplicações em rede Possibilita a comunicação entre processos em sistemas operacionais e arquiteturas de hardware diferentes 6

Sockets O que é um Socket? É um manipulador de arquivos usado por um processo para requisitar serviços de rede do sistema operacional. Exemplo da declaração de um socket, para TCP, em Python: serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 7

Endereço: <protocolo, endereço local, processo local> Sockets Forma de endereçamento de um socket: Endereço: <protocolo, endereço local, processo local> Exemplo: <tcp, 192.168.22.33, 12345> 8

Sockets Conceitos relacionados a sockets: Conversação: comunicação entre dois processos; Associação: tupla com 5 campos que define completamente a conexão entre 2 processos: <protocolo,endereço local, processo local, endereço externo, processo externo> Exemplos: <tcp, 193.44.234.3, 1500, 193.44.234.5, 21> <udp, 203.44.24.3, 1500, 191.42.2.5, 53> 9

Sockets TCP Sockets: Provê comunicação de fluxo de bytes de forma bi-direcional entre dois processos; A aplicação não precisa gerenciar este fluxo, pois o gerenciamento é feito pelo protocolo TCP; Identificação: <tcp, endereço IP, Número da Porta> A comunicação entre dois processos, possui identificação única: <tcp, IP local, Porta Local, IP Remoto, Porta Remota> Obs.: Um servidor tem a capacidade de gerenciar múltiplas conversações por uma única porta (multiplexação). 10

Aplicações em Rede Requisitos: O mecanismo de sockets deve estar disponível no sistema operacional MS Windows, Linux, FreeBSD, MacOS, Android… A linguagem de programação deverá possuir uma biblioteca de sockets C, Java, Python, Perl, PHP, Ruby, C#, .NET… Uso da primitivas de comunicação SEND, RECEIVE, OPEN, CLOSE 11

Aplicações em Rede Requisitos: A aplicação deverá utilizar um socket de acordo com o protocolo TCP – Fluxo de bytes (STREAM) UDP – Datagrama (DATAGRAM) Ao se definir o tipo de socket, TCP ou UDP, a comunicação entre aplicações em cada host obedecerão as funcionalidades do protocolo da camada de transporte Em caso de uso do UDP, não haverá garantias de entrega, controle de fluxo ou ordenação dos dados Neste caso, estes controles deverão ser implementados na aplicação 12

Aplicações em Rede Requisitos: O significado dos dados transportados pelo UDP ou TCP, deverá ser garantido por um protocolo da camada de aplicação Exemplo: HTTP 13

Aplicações em Rede Exemplo de aplicação: Conexão com TCP a um servidor de HTTP (Python) Servidor TCP simples (Python) 14

Aplicações em Rede Servidor de Eco (TCP) Cliente de Eco (TCP) 15

Aplicações em Rede Servidor de Eco (UDP) Cliente de Eco (UDP) 16

Estudos de Caso Jogos em Rede DemonStar (http://www.mking.com/demonstar/index.html) Jogo da Velha em Rede (http://www.cs.ucr.edu/~ddreier/p2.html) Little Fighter 2 (http://lf2.net/) 17

Bibliografia TCP/IP Tutorial and Technical Overview – RODRIGUEZ, Adolfo; GATRELL, John; KARAS, John; PESCHKE, Roland - IBM Red Books – 2006 – Disponível em: http:// ibm.com /redbooks FreeBSD Handkbook – disponível em: http://www.freebsd.org/doc/en/books/developers-handbook/book.html#SOCKETS GOERZEn, John. Foundations of Python Network Programming. Apress, 2004. 18