39
1: Introdução 1 Redes de Computadores e Internet transparências baseadas no livro “Computer Networking: A Top-Down Approach Featuring the Internet” James Kurose e Keith Ross http://occawlonline.pearsoned.com/bookbind/pubbooks/kurose-ross1/

Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

  • Upload
    ledat

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 1

Redes de Computadores e Internet

transparências baseadas no livro“Computer Networking: A Top-Down Approach Featuring the Internet”

James Kurose e Keith Rosshttp://occawlonline.pearsoned.com/bookbind/pubbooks/kurose-ross1/

Page 2: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 2

Serviços Necessários à Comunicação

• CASO 1: Como enviar informações entre um terminal e um computador ?• Enviar unidades binárias (BInary uniT = BIT) em série ou paralelo• Codificação dos BITs (representação para 0 e 1 e duração de cada

bit)• Codificação dos caracteres (ex.: ASCII, EBCDIC)• Sincronização entre emissor e receptor• Tratamento de erros de transmissão• Controle de fluxo• Estabelecer regras de troca de dados (protocolo)

terminal

computador central

Page 3: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 3

Serviços Necessários à Comunicação

• Múltiplos terminais• Surge necessidade de endereçamento

terminais

computador central

Page 4: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 4

Parte I: IntroduçãoVisão geral:• o que é Internet• o que é um protocolo?• borda da rede• núcleo da rede• rede de acesso, meio físico• desempenho: perdas, atrasos• camadas de protocolo, modelos

de serviço• backbones, NAPs, ISPs• histórico

Page 5: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 5

O que é Internet: visão “componentes”

• milhões de dispositivos computacionais conectados: hosts, sistemas finais

o workstations, servidoreso telefones PDAs, torradeirasexecutando aplicações de

rede• links de comunicação

o fibra, cobre, rádio, satélite• roteadores: passam adiante

(forward) pacotes de dados através da rede

ISP local

redecorporativa

ISP regional

roteador estação trabalhoservidor

móvel

Page 6: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 6

O que é Internet: visão “componentes”

• protocolos: envio e recepção de msgs

o e.g., TCP, IP, HTTP, FTP, PPP• Internet: “rede de redes”

o aproximadamente hierárquica

• Padrões Interneto RFC: Request for commentso IETF: Internet Engineering

Task Force

local ISP

companynetwork

regional ISP

router workstationserver

mobile

Page 7: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 7

O que é Internet: visão “de serviços”• infraestrutura de

comunicação possibilita aplicações distribuídas:

o WWW, email, jogos, e-commerce, database, votações, compartilhamento de arquivos (MP3)

• serviços de comunicação fornecidos:

o sem conexãoo orientada a conexão

Page 8: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 8

O que é protocolo?protocolos humanos:• “que horas são?”• “Eu tenho uma

questão”

… msgs específicas enviadas

… ações específicas tomadas quando msgsrecebidas, ou outros eventos

protocolos de rede:• máquinas em vez de

humanos• toda atividade de

comunicação na Internet governada por protocolos

protocolos definem formatos, ordens de mensagens enviadas e

recebidas entre entidades de rede, e ações tomadas

Page 9: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 9

O que é protocolo?um protocolo humano e um protocolo computacional de rede:

Q: Outro protocolo humano?

Oi

Oi

Tem horas?

2:00

requisiçãoconexão TCP

conexão TCPresposta.

Get http://gaia.cs.umass.edu/index.htm

<arq>tempo

Page 10: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 10

Estrutura de rede:

• borda da rede: aplicações e hosts

• núcleo da rede:o roteadoreso rede de redes

• redes de acesso, meios físicos: links de comunicação

Page 11: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 11

A borda da rede:• sistemas finais (hosts):

o executam programas deaplicação

o e.g., WWW, e-mailo situam-se na “borda da rede”

• modelo cliente/servidoro cliente host faz requisições,

recebem serviços do servidoro e.g., WWW cliente (navegador)/

servidor; e-mail cliente/servidor

• modelo par-a-par:o interação simétrica entre hostso e.g.: Gnutella, KaZaA

Page 12: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 12

Borda da rede: serviço orientado a conexão

Objetivo: transferência de dados entre sistemas.

• handshaking: setup(prepara para) transferência de dados

o Alô, alô protocolo humano de telefone

o setup “estado” em dois hosts se comunicando

• TCP - Transmission Control Protocol

o Serviço orientado a conexões da Internet

serviço TCP [RFC 793]• confiável, transferência de

dados ordenada byte-streamo perdas: acknowledgements

(reconhecimentos) e retransmissões

• controle de fluxo:o emissor não pode “oprimir”o

receptor• controle de congestão

o emissores “reduzem a taxa de envio” qdo a rede está congestionada

Page 13: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 13

Borda da rede: serviço sem conexão

Objetivo: transferência de dados entre sistemas finais

o mesmo que o anterior!• UDP - User Datagram

Protocol [RFC 768]: serviço sem conexão da Internet

o transferência de dados não-confiável

o sem controle de fluxoo sem controle de

congestão

Aplics usando TCP:• HTTP (WWW), FTP (transf.

arq.), Telnet (login remoto), SMTP (email)

Aplics usando UDP:• streaming media,

teleconferencing, Internet telephony

Page 14: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 14

O núcleo da rede

• malha de roteadores interconectados

• questão fundamental: como os dados são transferidos através da rede?

o comutação (chaveamento) de circuitos: circuito dedicado por chamada: rede telefônica

o comutação de pacotes:dados enviados através da rede em “pedaços”

Page 15: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 15

Núcleo da rede: comutação de circuitos

Recursos fim a fim reservados por chamada

• largura de banda no enlace (link), capacidade no switch

• recursos dedicados: sem compartilhamento

• desempenho garantido• requer setup na

chamada

Page 16: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 16

Redes de pacotes: roteamento

• Objetivo: mover pacotes entre roteadores da origem para destino

o iremos estudar algoritmos de roteamento• rede datagrama:

o endereço de destino determina próximo hopo rota pode mudar durante sessãoo analogia: dirigir perguntando direção

• rede de circuito virtual:o cada pacote carrega um tag (virtual circuit ID), que

determina o próximo hopo caminho fixo determinado em tempo de setup de chamada,

permanece fixo durante chamadao roteadores mantêm estado por chamada

Page 17: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 17

Redes de acesso e meios físicosQ: Como conectar sistemas finais

aos roteadores de borda?• redes de acesso residencial• redes de acesso institucional

(escola, companhia)• redes de acesso móveis

Tenha em mente: • bandwidth (bits por segundo)

da rede de acesso?• compartilhados ou dedicados?

Page 18: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 18

Acesso residencial: acesso ponto a ponto

• Discagem via modemo até 56Kbps acesso direto ao

roteador (conceitualmente)• ISDN: integrated services

digital network: 128Kbps conectados ao roteador

• ADSL: asymmetric digital subscriber lineo até 1 Mbps casa-roteadoro até 8 Mbps roteador-casao ADSL ainda em

desenvolvimento

Page 19: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 19

Acesso residencial: modens a cabo

• HFC: hybrid fiber coaxo assimétrico: até 10Mbps downstream, 1 Mbps

upstream• rede de cabo e fibra interliga casas ao

roteador ISPo acesso compartilhado ao roteadoro questões: congestionamento,

dimensionamento• disponíveis através de companhias de cabo

Page 20: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 20

Acesso institucional: redes locais

• local area network (LAN) conectam sistemas finais a roteador de borda

• Ethernet:o cabo compartilhado ou

dedicado conecta sistema final e roteador

o 10 Mbs, 100Mbps, Gigabit Ethernet

Page 21: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 21

Redes de acesso sem fio

• rede de acesso sem fioe compartilhada conecta sistema final ao roteador

• wireless LANs:o espectro de rádio

substitui fioo e.g., Lucent Wavelan 11

Mbps• wider-area wireless

accesso CDPD: acesso sem fio ao

roteador ISP via rede celular

estaçãobase

hostsmóveis

roteador

Page 22: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 22

“Camadas” de protocolosRedes são complexas! • muitas “peças”:

o hostso roteadoreso vários tipos de linkso aplicaçõeso protocoloso hardware, software

Questão:Existe alguma esperança em

organizar a estrutura de rede?

Ou pelo menos a discussão sobre redes?

Page 23: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 23

Por que usar camadas?Para lidar com sistemas complexos:• estrutura explícita permite identificar o

relacionamento entre peças do sistema complexoo modelo de referência em camadas facilita discussão

• modularização facilita manutenção e atualização do sistema

o mudança na implementação de serviços de camadas transparentes para o resto do sistema

• uso de camadas pode ser prejudicial?

Page 24: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 24

Organização de viagens aéreas

• uma série de passos

passagem (compra)

bagagem (entrega)

portão (embarque)

decolagem

roteamento do avião

passagem (reclama)

bagagem (recupera)

portão (desembarque)

aterrissagem

roteamento do aviãoroteamento do avião

Page 25: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 25

Organização de viagens aéreas: outra visão

Camadas: cada camada implementa um serviçoo através das ações internas da própria camadao uso dos serviços providos pela camada inferior

passagem (compra)

bagagem (entrega)

portão (embarque)

decolagem

roteamento do avião

passagem (reclama)

bagagem (recupera)

portão (desembarque)

aterrissagem

roteamento do aviãoroteamento do avião

Page 26: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 26

Viagens aéreas em camadas: serviços

entrega balcão a balcão de passageiros/bagagem

entrega de bagagem do check-in à esteira

entrega pessoas: p. embarque ao p. desembarque

entrega de avião: aeroporto a aeroporto

roteamento do avião da origem ao destino

Page 27: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 27

Implementação distribuída da funcionalidade da camada

Aer

opor

to d

e em

barq

ue

Aer

opor

to d

e de

sem

barq

ue

locais intermediários de tráfego aéreo

roteamento do avião

passagem (compra)

bagagem (entrega)

portão (embarque)

decolagem

roteamento do avião

passagem (reclama)

bagagem (recupera)

portão (desembarque)

aterrissagem

roteamento do avião

roteamento do avião

roteamento do avião

Page 28: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 28

Pilha de protocolos da Internet• aplicação: suporta aplicações de rede

o ftp, smtp, http• transporte: transferência de dados entre

hostso tcp, udp

• rede: roteamento de datagramas da origem para destino

o ip, protocolos de roteamento• enlace: transferência de dados entre

elementos de rede “vizinhos”o ppp, ethernet

• física: bits “no fio”

aplicação

transporte

rede

enlace

física

Page 29: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 29

Camadas: comunicação lógica

aplicaçãotransporte

redeenlacefísica

aplicaçãotransporte

redeenlacefísica aplicação

transporterede

enlacefísica

aplicaçãotransporte

redeenlacefísica

redeenlacefísica

Cada camada:• distribuída• “entidades”

implementam funções de camadas em cada nó

• entidades executam ações, trocam mensagens com seus pares

Page 30: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 30

Camadas: comunicação logica

aplicaçãotransport

redeenlacefísica

aplicaçãotransporte

redeenlacefísica aplicação

transporterede

enlacefísica

aplicaçãotransport

redeenlacefísica

redeenlacefísica

dados

dadosE.g.: transporte• pega dados da

aplic.• adiciona endereço,

informação de confiabilidade p/ formar “datagrama”

• envia datagramapara seu par

• espera confirmação de recepção de seu par

• analogia: correio

dados

transporte

transporte

ack

Page 31: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 31

Camadas: comunicação física

aplicaçãotransporte

redeenlacefísica

aplicaçãotransporte

redeenlacefísica

aplicaçãotransporte

redeenlacefísica

aplicaçãotransporte

redeenlacefísica

redeenlacefísica

dados

dados

Page 32: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 32

Protocolo em camadas e dados

Cada camada recebe dados da camada acima• adiciona cabeçalho de informação para criar nova

unidade de dados• passa nova unidade de dados para camada abaixo

aplicaçãotransporte

redeenlacefísica

aplicaçãotransporte

redeenlacefísica

origem destinoMMMM

Ht

HtHnHtHnHl

MMMM

Ht

HtHnHtHnHl

mensagemsegmento

datagramaframe

Page 33: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 33

Estrutura da Internet: rede de redes

• mais ou menos hierárquica• national/international backbone

providers (NBPs)o e.g. Embratel, BBN/GTE,

Sprint, AT&T, IBM, UUNeto interconecta cada par com

outro privativamente, ou em um Network Access Point (NAP) público

• ISPs regionais o conecta em NBPs (ex. Telesc)

• ISP local, companhiao conecta em ISP regional (ex.

UOL, UFSC)

NBP A

NBP B

NAP NAP

regional ISP

regional ISP

localISP

localISP

Page 34: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 34

Exemplo: Backbone da Rede Nacional de Pesquisa - RNP

Page 35: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 35

História da Internet

• 1970: ALOHAnet rede via satélite em Havaí

• 1973: tese de doutorado de Metcalfe propõe Ethernet

• 1974: Cerf and Kahn -arquitetura para interligarredes

• fim dos 70: arquiteturasproprietárias: DECnet, SNA, XNA

• fim dos 70: comutação de pacotes de tamanho fixo(precursor do ATM)

• 1979: ARPAnet tem 200 nós

Cerf and Kahn: princípios de inter-redes:

o minimalismo, autonomia- nenhuma mudança interna necessária parainterligar redes

o modelo de serviço de melhor esforço

o roteadores sem estadoo controle

descentralizadodefinem a arquitectura da

Internet de hoje

1972-1980: Inter-redes, redes novas e proprietárias

Page 36: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 36

História da Internet

• 1983: implantação de TCP/IP

• 1982: definição do protocolo smtp(correio)

• 1983: definição do DNS para tradução de nome para endereço IP

• 1985: definição do protocolo ftp

• 1988: TCP: controle de congestionamento

• novas redes nacionais: Csnet, BITnet,NSFnet, Minitel

• 100,000 hospedeirosligados à confederação de redes

• Brasil - início da BITnet em 1988 (LNCC e FAPESP)

• Brasil - início da UUCP em 1989 (Alternex)

1980-1990: novos protocolos, proliferação de redes

Page 37: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 37

História da Internet

• Início dos 1990: fim da ARPAnet

• 1991: NSF remove restriçõesem uso comercial da NSFnet(aposentada, 1994)

• início dos 1990: WWWo hypertexto [Bush 1945,

Nelson 1960’s]o HTML, http: Berners-Leeo 1994: Mosaic, depois

Netscapeo fim dos 1990:

comercialização da WWW

Fim dos 1990:• est. 50 milhões de

computadores naInternet

• est. 100 milhões+ de usuários

• enlaces backbone funcionando em 1 Gbps

1990’s: commercialização, WWW

Page 38: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 38

A Internet no Brasil

Pequena cronologia• 1991 - rede TCP/IP

experimental (SP, RJ, RS) até 9.600 bps

• 1992 - Rede-Rio, ANSP, RNP até 64 kbps

• 1994/5 - RNPv2, com enlaces de 2 Mbps

• 1994/5 - abertura comercial, Embratel, Comitê Gestor

• 1999 - criação das ReMAVs, Rede-Rio 2, enlaces de 155 Mbps

• 1999 - novo backboneda Rede-UFF 622 Mbps

• 2000 - backbone ATM da RNP2

• 2001 - conexão internacional em 155 Mbps

Page 39: Redes de Computadores e Internetprofessor.unisinos.br/jcgluz/prot-redes/introd-prot.pdf · • o que é Internet ... O que é protocolo? um protocolo humano e um protocolo computacional

1: Introdução 39

Capítulo 1: SumárioCobrimos muita

matéria!• visão geral da Internet• o que que é um protocolo?• Borda e núcleo de rede,

rede de acesso• desempenho: perdas,

retardo• modelos de camadas e

serviços• backbones, PTTs,

provedores• história• redes ATM

Com sorte, você jáadquiriu:

• contexto, visão geral, intuição de redes

• profundidade e detalhes maiores maistarde no curso