A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

E-Commerce, Systems Performance Evaluation, and Experimental Development Laboratory Tecnologias WWW Protocolos e Aplicações Wagner Meira Jr.

Apresentações semelhantes


Apresentação em tema: "E-Commerce, Systems Performance Evaluation, and Experimental Development Laboratory Tecnologias WWW Protocolos e Aplicações Wagner Meira Jr."— Transcrição da apresentação:

1 e-Commerce, Systems Performance Evaluation, and Experimental Development Laboratory Tecnologias WWW Protocolos e Aplicações Wagner Meira Jr.

2 Protocolos Acordo sobre comunicação Especifica –Formato de mensagens –Significado de mensagens –Regras de intercâmbio –Procedimentos em caso de problemas

3 Necessidade de Protocolos Hardware é baixo nível Vários problemas podem ocorrer –Dados corrompidos ou destruídos –Pacotes perdidos –Pacotes duplicados –Pacotes chegam fora de ordem

4 Necessidade de Protocolos (2) Necessidade de um mecanismo para distinguir entre: –Vários computadores na rede –Várias aplicações em um computador –Várias cópias de uma aplicação em um computador

5 Conjuntos de protocolos Cooperam Cada protocolo resolve parte do problema de comunicação Organizado em níveis

6 Pilha de Protocolos OSI Nível 1: Físico –Plataforma hardware Nível 2: Enlace –Quadros de hardware Nível 3: Rede –Envio de pacotes Nível 4: Transporte –Confiabilidade

7 Pilha de Protocolos OSI (2) Nível 5: Sessão –Login e senhas Nível 6: Apresentação –Representação de dados Nível 7: Aplicação –Programa de aplicação individual

8 Níveis e Software de Protocolos Software de protocolos segue o modelo de níveis –Um módulo de software por nível –Módulos cooperam –Fluxo de dados passa de um módulo para outro Conjunto de módulos é conhecido como pilha

9 Princípio da Pilha Software implementando nível N no destino recebe exatamente a mensagem enviada pelo software que implementa o nível N na fonte.

10 Controle de Fluxo Justificativa: –Taxa de envio maior que taxa de recebimento –Aplicação emissora mais rápida que aplicação receptora Relacionada a buffering

11 Controle de Fluxo ``Stop-and-Go Emissor –Transmite um pacote –Espera o sinal do recipiente Reciptor –Recebe e processa o pacote –Sinaliza o emissor Ineficiente: Latência pode ser alta.

12 Controle de Fluxo através de Janela Deslizante Receptor: –Disponibiliza múltiplos buffers e avisa emissor Emissor: –Transmite pacotes para todos os buffers –Apenas espera se não houver sinalização após a transmissão ser completada Receptor: –Sinaliza à medida que pacotes chegam

13 Congestionamento Problema fundamental em redes Causado por tráfego, não falha de hardware Análogo a congestionamentos em estradas Causa básica de atrasos

14 Evitando Congestionamentos Controle de taxa –Restringir taxa de transmissão do computador emissor da rede Controle de taxa de rede –Monitorar tráfego de entrada –Descartar pacotes acima da taxa aceita –Traffic shaping

15 Motivação para Internet LANs –Baixo custo –Cobertura limitada WANs –Alto custo –Cobertura ilimitada

16 Heterogeneidade é inevitável Nenhuma tecnologia de redes é a melhor para todas as necessidades.

17 Serviços universais Conceito fundamental em redes Precursor: sistema de telefonia Pares arbitrários de computadores podem comunicar Desejável Difícil em um mundo heterogêneo

18 Heterogeneidade e Serviços Universais Incompatibilidades entre redes: –Propriedades elétricas –Sinalização –Codificação de dados –Formato de pacotes –Endereçamento

19 Consequência Embora serviços universais sejam desejáveis, incompatibilidades entre o hardware de rede e enderaçamento físico impedem uma organização de construir uma rede que inclua tecnologias arbitrárias.

20 Uma Internet Inicia com redes heterogêneas Conecta as redes físicas Implementa software que faz o sistema parecer homogêneo

21 Conectando Redes Heterogêneas Sistema computacional –Dedicado –Especializado –Trabalha com LANs e WANs Exemplos –Roteadores –Gateways

22 Arquitetura Internet Objetivos –Imperceptível –Uniforme –Propósito geral –Universal –Abstrato

23 Abstraindo Heterogeneidade Criar rede virtual Determine –Esquema de endereçamento –Esquema de assinalamento de nomes Implemente via software de protocolo tanto em máquinas quanto roteadores

24 Protocolo Internet Aplicação Transporte Internet Interfaces de rede Físico

25 Níveis TCP/IP Nível 1: Físico –Hardware de rede Nível 2: Interface de Rede –Formato de quadro MAC –Endereçamento MAC –Interface entre o computador e a rede Nível 3: Internet –Facilita enviar pacotes por caminhos que passam por múltiplos roteadores.

26 Níveis TCP/IP Nível 4: Transporte –Comunicação entre aplicações Nível 5: Aplicação –Restante...

27 Internet Protocol (IP) Único protocolo no nível 3 Peça fundamental Define –Endereçamento –Formato de pacotes –Roteamento

28 Endereçamento IP Abstração Independente do endereçamento de hardware Utilizado por –Protocolos de níveis superiores –Aplicações

29 Endereço IP Virtual: apenas significativo para software Usado para toda a comunicação Inteiro de 32 bits Valor único para cada máquina

30 Motivação para pacotes IP Uma vez que ele pode conectar redes heterogêneas, um roteador não pode transmitir uma cópia do quadro que chega de uma rede através da outra. Para acomodar a heterogeneidade, uma Internet deve definir um formato de pacote independente de hardware.

31 Pacotes Internet Abstração Criados e interpretados apenas por software Contem endereços de origem e destino Tamanho depende dos dados sendo transmitidos Chamado de datagrama IP

32 Tabelas de Roteamento

33 Roteamento de Datagramas Extrair o endereço de destino D Verificar D na tabela de roteamento Determinar próximo destino N Enviar datagrama para N

34 Conceito fundamental O endereço de destino de um datagrama sempre se refere ao destino final. Quando um roteador envia o pacote para outro roteador, o endereço dos roteadores não consta do pacote.

35 Semântica IP IP é um protocolo sem conexão –Datagrama contem a identidade do destino –Cada datagrama é tratado independentemente Rotas podem mudar a qualquer momento

36 Semântica IP IP permite que datagramas sejam –atrasados –duplicados –perdidos –recebidos fora de ordem –perdidos Best effort delivery: acomodar os vários tipos de redes

37 Resolvendo Endereços Hardware só reconhece endereços MAC IP utiliza apenas endereços IP Consequência: –Software deve executar tradução !!

38 Resolvendo Endereços Protocolo nível 2 Dados: –Uma rede N –Um endereço IP C de uma máquina em N Encontrar o endereço MAC de C Técnica: Protocolo ARP

39 Protocolo ARP

40 Protocolos de Transporte Nível separado da pilha de protocolos Conceitualmente entre: –Aplicação –IP

41 Funcionalidades de Protocolos de Transporte Identifica aplicações que enviam e recebem Opcionalmente provê: –Confiabilidade –Controle de fluxo –Controle de congestionamento

42 User Datagram Protocol (UDP) Envio não confiável Minimiza: –Overhead –Computação –Comunicação Ideal para aplicações LAN

43 Detalhes UDP Interface orientada a mensagens: protocolo sem conexão Mensagem é encapsulada em um datagrama Cabeçalho UDP identifica: –Aplicação emissora –Aplicação receptora

44 Identificando uma aplicação Não há como estender o endereço IP Não pode utilizar recursos dependentes de sistema operacional: –Processo ID –Número de tarefa Deve funcionar em todos os sistemas

45 Identificando uma aplicação Nova abstração: –Usada apenas com TCP/IP –Identifica emissor e receptor unicamente Técnica: –Cada aplicação é associada a um inteiro único chamado porta.

46 Portas de protocolo Servidor –Segue padrão –Sempre usa o mesmo número de porta –Usa números de porta baixos Cliente –Obtem portas livres do software de protocolo –Usa números de porta altos

47 Transmission Control Protocol (TCP) Protocolo de transporte mais popular na Internet Transferência confiável.

48 TCP: Características Serviço orientado à conexão Ponto-a-ponto Comunicação full duplex Interface Stream Segmentação Utiliza portas para identificar aplicações

49 Relacionamento entre Protocolos

50 Aplicações: Funcionalidades Nível de transporte e abaixo: –Comunicação básica –Confiabilidade Nível de aplicação –Abstrações (arquivos, nomes) –Nomes

51 Tarefas Rede –Transfere dados em resposta a uma requisição de aplicação Aplicações –O que enviar –Quando enviar –Para onde enviar –Significado dos dados

52 Modelo Cliente-Servidor Servidor: –É o primeiro a iniciar –Espera por conexões Cliente –Inicia execução posteriormente –Conecta-se ao servidor

53 Características do Cliente Aplicação arbitrária Atua como cliente de forma temporária Executa outras tarefas Executado pelo usuário Ativa a conexão com o servidor

54 Características do Servidor Programa privilegiado e altamente especializado Dedicado a um serviço Atende a múltiplos clientes Executa de forma perene Aceita conexões de clientes arbitrários

55 Identificando um Serviço Cada serviço é associado a uma única porta Servidor –Informa SO da utilização de uma porta P –Espera requisições chegar Cliente –Monta requisição –Envia requisição na porta P

56 Portas: Uso teórico Portas são apenas inteiros Qualquer servidor pode utilizar qualquer porta

57 Portas: Uso Prático Números das portas são usados como identificadores de serviço Demanda numeração uniforme: –Cliente sempre acessa serviço na mesma porta –Evita criação de diretórios Números de porta –Uniformizados –Atribuídos por organismos reguladores

58 Interface Socket Originalmente: –BSD Unix –Uso restrito a protocolos TCP/IP Atualmente: –Padrão de indústria –Disponível em vários sistemas operacionais

59 Socket Abstração do sistema operacional Criado dinamicamente Persiste apenas enquanto a aplicação executa Referenciado por um descritor

60 Socket: Cliente-Servidor

61 Nomes Comunicações Internet requerem IPs Nomes são preferíveis DNS: sistema automático para traduzir nomes para endereços

62 Obtendo um nome Organização –Escolhe o nome, que deve ser único –Registra o nome na autoridade central –Colocado sobre um domínio de primeiro nível Restrições legais –Marcas registradas –Direitos autorais

63 Resolução de Nome Aplicação –Envia requisição para o servidor DNS Servidor –Se sabe a resolução, responde –Se não sabe, envia a requisição para servidor imediatamente superior

64 Exemplo de Hierarquias DNS

65 Replicação de Nomes Servidor sempre armazena as respostas Cliente pode armazenar as respostas Caching: –Melhora a eficiência –Elimina buscas desnecessárias –Trabalha bem baseado em localidade de referência

66 Transferência de Arquivos Cópia de arquivos completos Protocolo: File Transfer Protocol (FTP) –Usa TCP –Transferências binárias ou texto –Até 1995 era a maior fonte de pacotes na Internet

67 Paradigma FTP Interface de linha de comando Usuário: –Cria conexão de controle com servidor –Registra no servidor –Envia comandos de controle Servidor –Estabelece uma conexão de dados por transferência

68 HTTP Protocolo de transferência de dados ASCII Métodos –GET –HEAD –POST –DELETE –PUT

69 HTTP Não há noção de estado: requisições são independentes Uma conexão TCP por requisição –HTTP/1.1 - Conexões persistentes Códigos de erro estilo FTP

70 Requisição HTTP GET /index.html HTTP/1.0 Accept: text/html If-modified-since: Sat, 29 Oct 1994 19:43:31 GMT Referrer: www.org/index.html

71 Resposta HTTP HTTP/1.0 200 OK Date: Wed, 31 Jan 1996 20:45:17 GMT Server: NCSA/1.5 Content-type:text/html Content-language: en Last-Modified: Wed, 31 Jan 20:00:00 GMT.....

72 Apache: Arquitetura


Carregar ppt "E-Commerce, Systems Performance Evaluation, and Experimental Development Laboratory Tecnologias WWW Protocolos e Aplicações Wagner Meira Jr."

Apresentações semelhantes


Anúncios Google