s de Computadores auro Sergio Pereira Fonseca Resumo História da INTERNET Protocolo de Comunicação odelo em camadas INTERNET IP Endereçamento IP Camada de UDP TCP 1961-1972: primeiros princípios da comutação de pacotes 1961: Kleinrock - teoria das filas mostra a efetividade da comutação de pacotes 1964: Baran - comutação de pacotes em s militares 1967: ARPAnet concebida pela Advanced Research Projects Agency 1969: primeiro nó da ARPAnet operacional 1972: ARPAnet é demonstrada publicamente NCP (Network Control Protocol) primeiro protocolo host-host primeiro programa de e- mail ARPAnet cresce para 15 nós 1972-1980: Inter-s, s novas e proprietárias 1970: ALOHAnet via satelite no Hawai 1973: tese de PhD de etcalfe s propõem a Ethernet 1974: Cerf and Kahn - arquitetura para interconexão de s final de 70: arquiteturas proprietárias: DECnet, SNA, XNA comutação com pacotes de tamanho fixo (precursos do AT ) 1979: ARPAnet cresce para 200 nós Cerf e Kahn s, princípios de interconexão de s: minimalismo, autonomia não se exigem mudanças internas para interconexão de s modelo de serviço: melhor esforço roteadores stateless controle descentralizado define a arquitetura da Internet de hoje 1980-1990: novos protocolos, uma proliferação de s 1983: desenvolvimento do TCP/IP 1982: STP é definido 1983: DNS definido para translação de nomes em endereços IP 1985: FTP é definido 1988: Controle de congestionamento do TCP novas s nacionais: Csnet, BITnet, NSFnet, initel 100.000 hosts conectados à confederação de s 1
Anos 90: comercialização, a WWW Início de 90: ARPAnet descomissionada WWW hypertext [Bush 1945, Nelson 1960 s] HTL, http: Berners-Lee 1994: osaic, depois Netscape Final de 90: comercialização da WWW est. 50 milhões de computadores na Internet est. 100 milhões de usuários s de backbone operando a 1 Gbits/s Protocolo de Comunicação 1991: NSF retira restrições sobre o uso comercial da NSFnet (descomissionada em 1995) Protocolo de comunicação Acordo que especifica o formato e o significado da troca de mensagens de computadores. Um aplicativo interage com o software de protocolo. O que é um protocolo? um protocolo humano e um protocolo de de computadores: Alô Alô Que horas são? 2h00 tempo TCP pedido de conexão TCP resposta de conexão Get http://www.pucpr.br/index.htm <arquivo> Conjunto de protocolos odelo em camadas (layering model) Dividir o software de comunicação em múltiplos protocolos aumenta a flexibilidade. ais fácil de: projetar, analisar, implementar e testar. aneira de dividir o problema de comunicação em sub-partes, denominadas camadas. Proposição histórica da ISO (International Organization for Standardization) Organização Internacional para Padronização. 2
Camadas de Protocolos Porque camadas? s são complexas muitos componentes: hosts roteadores s de vários tipos aplicações protocolos hardware, software Questão: Há alguma esperança de organizar a arquitetura de uma? Convivendo com sistemas complexos: A estrutura explícita permite a identificação do relacionamento das partes de um sistema complexo um modelo de referencia em camadas permite a discussão da arquitetura A modularização facilita a manutenção, atualização do sistema as mudanças na implementação de uma camada são transparentes para o resto do sistema odelo de referência ISO Camada 1 - Física Aplicação Camada 7 Camada 6 Corresponde ao hardware de básico. Ex.: Especificação de RS-232. Física Camada 1 Camada 2 Especifica como organizar em quadros e como transmiti-los através de uma. Ex.: formato do quadro, bit ou byte de recheio (stuffing), checksum. Camada 3 Especifica como são atribuídos endereços e como são encaminhados pacotes de uma ponta da para a outra. 3
Camada 4 Camada 5 Especifica como tratar dos detalhes de transferência confiável. Especifica como estabelecer uma sessão de comunicação com um sistema remoto. Ex.: Login em um computador remoto, detalhes de segurança como autenticação usando senhas. Camada 6 Camada 7 Aplicação Especifica como representar. Ex.: representação internas diferentes para inteiros e caracteres. Camada 6 Especifica como um aplicativo em particular usa uma. Ex.: como pedir um arquivo, como verificar um diretório. Aplicação Camada 7 Camada 6 Pilhas = software em camadas (2) últiplos Cabeçalhos Aninhados Dados do usuário original Cabeçalho da camada 7 Cabeçalho da camada 6 Cabeçalho da camada 5 Físico (hardware de ) Cabeçalho da camada 4 Cabeçalho da camada 3 Cabeçalho da camada 2 4
Base da divisão em camadas Divisão em camadas e protocolos TCP/IP Físico (hardware de ) Camada 7 Camada 6 Camada 5 Internet Camada 3 Interface de Camada 2 Pilha de protocolos da Internet Divisão em camadas: comunicação lógica : suporta as aplicações de ftp, smtp, http : transferência de host-host tcp, udp : roteamento de datagramas da origem ao destino ip, protocolos de roteamento : transferência de entre elementos vizinhos da ppp, ethernet : bits nos fios dos canais Aplicação Enlace Física Cada camada: distribuída entidades implementam as funções da camada em cada nó entidades realizam ações, trocam mensagens entre pares Divisão em camadas: comunicação lógica Divisão em camadas: comunicação Ex.: 1. apanha da 2. acrescenta endereço, verificação de erros e outras informações para montar um datagrama 3. envia datagrama ao parceiro 4. espera pelo reconhecimento do parceiro 5. analogia: correio ack 5
Camadas de Protocolos e Cada camada recebe de cima acrescenta um cabeçalho de informação para criar uma nova unidade de passa a nova unidade de para a camada abaixo fonte destino Ht Hr Ht HeHr Ht Ht HrHt HeHrHt segmento datagrama quadro 6