Redes de Computadores II
Robson Siscoutto
[email protected]
Introdução
1
Parte I: Introdução
Visão Geral
◼ Motivação
◼ Objetivos
◼ Família de protocolos TCP/IP
◼ Modelo de Interconexão
◼ Arquitetura em camadas
◼ Arquitetura TCP/IP
◼ Encapsulamento e
demultiplexação
◼ Interação dos protocolos
◼ Estrutura de Interconexão da
Internet
2
Motivação
◼ Realidade Atual
◼ Ampla adoção das diversas tecnologias de redes de computadores
◼ Evolução das tecnologias de comunicação
◼ Redução dos custos dos computadores
◼ Dificuldades
◼ Restrições ao número de dispositivos conectados
◼ Tecnologias incompatíveis inviabilizam a interoperabilidade
3
Motivação
◼ Alternativas
◼ Adotarmecanismos que permitam a interoperabilidade
◼ Interconectar as diferentes redes
◼ Compatibilizar a heterogeneidade das múltiplas tecnologias de redes
◼ Solução
◼ Tecnologia de inter-redes (Internet)
4
Tecnologia de inter-redes
◼ Conceito
◼ Conjunto de protocolos que permitam a interconexão de redes heterogênias
◼ Benefícios
◼ Acomodação de múltiplas plataformas de hardware e software
◼ Esconde os detalhes do hardware da rede
◼ Permite a comunicação dos dispositivos de forma independente do tipo de rede física adotada
5
Internet: visão dos componentes
workstation
• Milhões de dispositivos de computação roteador
conectados: hosts, sistemas finais servidor móvel
– workstations de pcs, servidores
– telefones com PDA’s, torradeiras ISP local
rodando aplicações de rede.
ISP regional
• Enlaces (canais) de comunicação:
– fibra, cobre, rádio, satélite.
• Roteadores: encaminham pacotes
(pedaços) de dados através da rede.
Rede da
empresa 6
Internet: visão dos componentes
Internet: visão dos componentes
roteador
• protocolos: controla o envio e recepção de workstation
mensagens servidor
móvel
– ex., TCP, IP, HTTP, FTP, PPP
ISP local
• Internet: “rede de redes”
– livremente hierárquica
– Internet pública versus intranet privada ISP regional
• Padrões Internet:
– RFC: Request for comments
– Relatórios Técnicos;
– www.faqs.org
– IETF: Internet Engineering Task Force Rede da
– Novas Aplicações, endereçamento, empresa
roteamento, segurança, gerenciamento,
etc.
– www.ietf.org
8
Internet: visão dos Serviços
• a infra-estrutura de comunicação
permite o uso de aplicações
distribuídas:
– WWW, email, jogos, comércio
eletrônico, bd., votações,
compartilhamento de arquivos (MP3)
• serviços de comunicação
disponibilizados:
– sem conexões
– orientado a conexões
9
O que é um protocolo?
protocolos humanos: Protocolos de rede:
• “que horas são?” • máquinas ao invés de
• “tenho uma dúvida” pessoas
• apresentações • todas as atividades de
comunicação na Internet
… msgs específicas são são governadas por
enviadas protocolos
… ações específicas protocolos definem o formato,
são realizadas ordem das msgs enviadas e
quando as msgs são recebidas pelas entidades da rede, e
recebidas, ou ações tomadas quando da
acontecem outros transmissão ou recepção de msgs.
eventos
10
Detalhes sobre a estrutura da rede:
• Borda da rede: aplicações
e hospedeiros (hosts)
• núcleo da rede:
– roteadores
– rede de redes
• redes de acesso, meio
físico: enlaces de
comunicação cabeadas e
sem fio
11
Estrutura da rede: A borda
• Sistemas Terminais:
– rodam programs de aplicação
– ex., WWW, email
– na “borda da rede”
• modelo cliente/servidor
– o host cliente faz os pedidos, são atendidos pelos
servidores
– ex., cliente WWW (browser)/ servidor;
cliente/servidor de email
• modelo peer-to-peer :
– interação simétrica entre os hosts
– ex.: teleconferência, KaZaA
12
Estrutura da rede: A borda
Serviço orientado a conexões (1)
Meta: transferência de dados entre sistemas finais.
• handshaking: preparação para a transferência de
dados :
– Protocolo humano: Oi – Oi.
– inicializa o “estado” em dois hosts que desejam se
comunicar.
• TCP - Transmission Control Protocol
– serviço orientado a conexão da Internet
13
Estrutura da rede: A borda
Serviço orientado a conexões (2)
Características do Serviço TCP [RFC 793]
• transferência de dados: fluxo de bytes
ordenados e confiável
– perda: reconhecimentos e retransmissões
• controle de fluxo :
– transmissor não inundará o receptor
• controle de congestionamento:
– transmissor “diminui a taxa de transmissão” quando a
rede está congestionada.
14
Estrutura da rede: A borda
Serviço sem conexão
Meta: transferência de dados entre sistemas finais.
– mesmo que antes!
• UDP - User Datagram Protocol [RFC 768]: serviço
sem conexão da Internet
– transferência de dados não confiável
– não controla o fluxo
– nem congestionamento
15
Estrutura da rede: A borda
Aplicações
Aplicações que usam TCP:
• HTTP (WWW), FTP (transferência de arquivo),
Telnet (login remoto), SMTP (email)
Aplicações que usam UDP:
• streaming media, teleconferência, telefonia Internet
16
Taxonomia de Redes
Redes de
Telecomunicações
Redes comutadas Redes comutadas
por circuitos por pacotes
FDM Redes Redes
TDM
com CVs datagrama
• A Internet provê tanto serviços orientados a conexão (TCP)
quanto não-orientados a conexão (UDP) para as aplicações.
17
Estrutura da rede: O Núcleo
• Malha de roteadores interconectados
• A pergunta fundamental: como os dados
são transferidos através da rede?
– comutação de circuitos: circuito
dedicado por chamada: rede telefônica
– comutação de pacotes: os dados são
enviados através da rede em pedaços
discretos.
18
Estrutura da rede: O Núcleo
Comutação de Circuitos (1)
Recursos fim a fim são reservados
para a chamada.
• Banda do enlace, capacidade dos
comutadores
• recursos dedicados: sem
compartilhamento
• desempenho tipo circuito (garantido)
• necessita estabelecimento de conexão –
handshaking.
19
Estrutura da rede: O Núcleo
Comutação de Circuitos (2)
• recursos da rede são divididos em “pedaços”:
• Por exemplo: Largura de banda.
• pedaços alocados às chamadas
• o pedaço do recurso fica ocioso se não for usado
pelo seu dono (não há compartilhamento)
20
Estrutura da rede: O Núcleo
Comutação de Circuitos (3)
• Divisão da banda de 4 usuários
FDM
um canal em
“pedaços”
(multiplexação) Freq.
– Divisão de freqüência
tempo
(FDM – Frequency
Division
Multiplexing) TDM
– Divisão de tempo
Freq.
(TDM – Time Division
Multiplexing)
tempo
21
Estrutura da rede: O Núcleo
Comutação de Pacotes (1)
Cada fluxo de dados fim a fim
é dividido em pacotes
• pacotes dos usuários A, B
compartilham os recursos
Divisão da banda em
da rede “pedaços”
• cada pacote usa toda a Alocação dedicada
banda do canal Reserva de recursos
• recursos são a demanda
(quando necessário)
22
Estrutura da rede: O Núcleo
Comutação de Pacotes (2)
Disputa por recursos:
• Demanda total pelos recursos pode superar a quantidade
disponível
• Congestionamento: pacotes são enfileirados, esperam para usar o
enlace
• Armazena e retransmite: pacotes se deslocam uma etapa por vez
– transmite num enlace
– espera a vez no próximo
23
Estrutura da rede: O Núcleo
Comutação de Pacotes (3)
Ethernet
A 10 Mbps multiplexação estatística
C
2 Mbps
B
fila de pacotes 34 Mbps
esperando pelo
enlace de saída
D E
• A seqüência de pacotes A & B não possuem um
padrão constante multiplexação estatística
• Em TDM cada host utiliza o mesmo slot em cada um
dos quadros TDM.
24
Estrutura da rede: O Núcleo
Comutação de Pacotes (4)
• Comportamento: Armazena e Retransmite (stop/forward):
• roteador espera o pacote chegar complemetamente e
então, encaminha/rotea.
25
Comutação de pacotes versus comutação de circuitos (2)
A comutação de pacotes sempre será a melhor?
• Ótima para dados em rajadas:
– compartilhamento dos recursos
– não necessita estabelecimento de conexão
• Congestionamento excessivo: atraso e perda de pacotes
– necessita de protocolos para transferência confiável de dados,
controle de congestionamento
• P: Como fornecer um comportamento do tipo circuito?
– São necessárias garantias de banda para aplicações de áudio e vídeo
– ainda é um problema não resolvido
26
Estrutura da rede: O Núcleo
Comutação de Pacotes - Roteamento
• Objetivo: mover pacotes entre roteadores da origem até o destino
– serão estudados diversos algoritmos de escolha de caminhos
• redes datagrama:
– o endereço do destino determina próxima etapa
– rotas podem mudar durante a sessão
– analogia: dirigir, pedindo informações
• redes de circuitos virtuais:
– cada pacote contém uma marca (id. do circuito virtual), marca determina próxima
etapa
– caminho fixo determinado no estabelecimento da chamada, permanece fixo durante
a chamada
– roteadores mantêm estados para cada chamada
27
Modelo de Interconexão
E9
E1
E2
N5
R3
N1
R4
R1 R2
N4
N2
N3
E3
E4 E7 E8
E5 E6
28
Modelo de Interconexão
◼ Roteador
◼ Possui conexões com duas ou mais redes
◼ Não provê conexão direta com todas as redes físicas
◼ Roteia pacotes de uma rede para outra
◼ Mantém informações de roteamento para todas as redes
◼ É também denominado gateway ou sistema intermediário
29
Modelo de Interconexão
◼ Estação
◼ Dispositivo do usuário conectado a alguma rede física da inter-rede
◼ Estação multihomed pode atuar como um roteador
◼ Requer ativação e configuração da função de roteamento de pacotes entre as redes
◼ Também denominado Host, hospedeiro ou sistema final
30
Modelo de Interconexão
◼ Visão do usuário
◼ Usuários vêm a inter-rede como uma rede virtual única à qual todos os dispositivos estão conectados
◼ Usuários não conhecem as diversas redes físicas individuais
◼ Adota um mecanismo de endereçamento universal, baseado em endereços IP, que permite a
identificação única de cada dispositivo na inter-rede
31
Atraso em Redes Comutadas por
Pacotes
32
Atraso em Redes Comutadas por Pacotes
os pacotes experimentam atraso • Processamento no nó:
no caminho fim a fim – verificação de bits com erro
• quatro fontes de atraso em – Identificação do enlace de saída (roteamento)
cada etapa – Atraso constante
transmissão
A propagação • Enfileiramento
– tempo de espera no enlace de saída até a transmissão
– depende do nível de congestionamento do roteador
B – pacotes poderão ser descartados (perdidos) se a
processamento
no nó enfileiramento memória (buffer) encher
– Atraso Variável
33
Atraso em Redes Comutadas por Pacotes
Atraso de transmissão: Atraso de propagação:
• R = largura de banda do • d = compr. do enlace
enlace (bps) • s = velocidade de
• L = compr. do pacote (bits) propagação no meio
• Atraso constante (~2x108 m/seg)
• tempo para enviar os bits no • Atraso Constante
enlace = L/R • atraso de propagação =
d/s
Nota: s e R são valores
muito diferentes!
34
Atraso em Redes por Pacotes
Analogia com uma Caravana (1)
100 km 100 km
Caravana pedágio pedágio
de dez carros
• Os carros se “propagam” a • Tempo para “atravessar”
100 km/h toda a caravana através do
• O pedágio leva 12 seg para pedágio para a estrada =
atender um carro (tempo de 12*10 = 120 sec
transmissão) • Tempo para que o último
• carro~bit; caravana ~ pacote carro se propaga do
primeiro para o segundo
• P: Quanto tempo leva até
pedágio:
que a caravana esteja
100km/(100km/h)= 1 h
enfileirada antes do segundo
pedágio? • R: 62 minutos
35
Atraso em Redes por Pacotes
Analogia com uma Caravana (2)
100 km 100 km
Caravana pedágio pedágio
de dez carros
• Sim!
• Os carros agora se • 100km/(1000km/h) = 0,1 h = 6 m
“propagam” a 1000 km/h • Após 6+1 min, o 1o. Carro
• Os pedágios agora levam chega ao 2o. Pedágio e ainda há
em torno de 1 min para 3 carros no 1o. pedágio.
atender um carro • O 1o. bit do pacote pode chegar
• P: Os carros chegarão ao ao 2o. Roteador antes que o
segundo pedágio antes pacote tenha sido totalmente
que todos os carros transmitido no 1o. roteador!
tenham sido atendidos no
primeiro pedágio?
36
Atraso em Redes por Pacotes
Atraso no Nó
d nó = d proc + d enfil + d trans + d prop
dproc = atraso de processamento
tipicamente de poucos microsegs ou menos
dqueue = atraso de enfileiramento
depende do congestionamento
dtrans = atraso de transmissão
= L/R, significativo para canais de baixa velocidade for
dprop = atraso de propagação
poucos microsegs a centenas de msegs
37
Atraso em Redes por Pacotes
Atraso de Enfileiramento
• R=largura de banda do
enlace (bps)
• L=compr. do pacote
(bits)
• a=taxa média de
chegada de pacotes
intensidade de tráfego = La/R
• La/R ~ 0: pequeno atraso de enfileiramento
• La/R <= 1: grande atraso
• La/R > 1: chega mais “trabalho” do que a
capacidade de atendimento, atraso médio
infinito!
38
Atraso em Redes por Pacotes
Perda de Pacotes
• fila (buffer) anterior a um canal possui
capacidade finita
• quando um pacote chega numa fila cheia, o
pacote é descartado (perdido)
• o pacote perdido pode ser retransmitido pelo nó
anterior, pelo sistema origem, ou não ser
retransmitido
39
Camadas de Protocolos
40
Camadas de Protocolos
As redes são complexas!
• muitos “pedaços”:
Pergunta:
– hosts
Há alguma esperança em
– roteadores conseguirmos organizar a
– enlaces de diversos estrutura da rede?
meios
– aplicações Ou pelo menos a nossa
– protocolos discussão sobre redes?
– hardware, software
41
Camadas de Protocolos
Por que Dividir em Camadas?
Lidar com sistemas complexos:
• estrutura explícita permite a identificação e
relacionamento entre as partes do sistema complexo
– modelo de referência em camadas para
discussão
• modularização facilita a manutenção e atualização
do sistema
– mudança na implementação do serviço da camada é
transparente para o resto do sistema
– Cada camada é responsável por uma função específica e
usa as funções oferecidas pelas camadas inferiores
– Uma arquitetura de rede é definida pela combinação dos
diversos protocolos nas várias camadas
42
Camadas de Protocolos
Pilha de Protocolos da Internet
• aplicação: dá suporte a aplicações de
rede
– FTP, SMTP, HTTP 5 - aplicação
• transporte: transferência de dados host-
a-host 4 - transporte
– TCP, UDP
• rede: roteamento de datagramas da 3 - rede
origem até o destino
– IP, protocolos de roteamento 2 - enlace
• enlace: transferência de dados entre
1 - física
elementos de rede vizinhos
– ppp, ethernet
• física: bits “no fio”
43
Camadas de Protocolos
Camadas: Comunicação Lógica (1)
Cada camada: aplicação
transporte
• distribuída rede
enlace
• as física
rede
“entidades” aplicação enlace
implementam transporte física
rede
as funções enlace
das camadas física
aplicação aplicação
em cada nó transporte transporte
rede rede
• as entidades enlace enlace
física física
executam
ações, trocam
mensagens
entre
parceiras 44
Camadas de Protocolos
Camadas: Comunicação Lógica (2)
dados
Ex.: transporte aplicação
transporte
transporte
• recebe dados da rede
aplicação enlace
física
• adiciona ack rede
endereço e aplicação enlace
verificação de transporte dados física
rede
erro para formar enlace dados
o “datagrama” física
aplicação aplicação
• envia o transporte transporte
transporte
rede rede
datagrama para a enlace enlace
parceira física física
• espera que a
parceira acuse o
recebimento
(ack)
• analogia: correio 45
Camadas de Protocolos
Camadas: Comunicação Física
dados
aplicação
transporte
rede
enlace
física
rede
aplicação enlace
transporte física
rede
enlace
física dados
aplicação aplicação
transporte transporte
rede rede
enlace enlace
física física
46
Camadas de Protocolos
Camadas de Protocolos e Dados
Cada camada recebe dados da camada superior:
• adiciona informação no cabeçalho para criar uma
nova unidade de dados
• passa a nova unidade de dados para a camada
inferior
fonte destino
M aplicação aplicação M mensagem
Ht M transporte transporte Ht M segmento
Hr Ht M rede rede Hr Ht M datagrama
He Hr Ht M enlace enlace He Hr Ht M quadro
física física
47
Arquitetura TCP/IP
Mensagem Aplicação FTP, HTTP, SMTP
Seguimento/Datagrama UDP Transporte TCP/UDP
Datagrama IP Rede IP/ICMP
Quadro Enlace Ethernet, PPP, Token Ring
Abordagem
Top-Down Botton-Up
48
Encapsulamento e demultiplexação
◼ Processo de encapsulamento
◼ Preparação dos dados para transmissão
◼ Os dados são gerados pela camada de aplicação
◼ Descem na pilha de protocolos até serem efetivamente enviadas pela rede física
DADOS Os dados são gerados pela
camada de aplicação. A aplicação deve
Aplicação indicar qual o protocolo da camada de
transporte a ser utilizado (TCP/UDP).
CABEÇALHO DADOS
Transporte O protocolo de transporte adiciona seu
cabeçalho, recebe a PDU da camada
CABEÇALHO DADOS de aplicação em sua área de dados e
encaminha para a camada de rede
Rede
A camada de rede receba a PDU de
CABEÇALHO DADOS transporte, realiza suas funções e
encaminha para a camada de enlace
Enlace
A camada de enlace receba a PDU de rede,
CABEÇALHO DADOS realiza suas funções e encaminha para a
transmissão física
49
Encapsulamento e demultiplexação
◼ Processo de encapsulamento
◼ Cada PDU de aplicação deve carregar informação do
endereço IP do destino, porta do destino e protocolo
de transporte
◼ Cada PDU de transporte carregar o endereço IP do
destino
◼ Cada PDU de rede deve carregar a PDU de transporte
DADOS
CABEÇALHO DADOS
CABEÇALHO DADOS
CABEÇALHO DADOS
CABEÇALHO DADOS
50
Encapsulamento e demultiplexação
◼ Processo de demultiplexação (recepção)
◼ Processo inverso ao encapsulamento
FTP
Aplicação ... SMTP DNS
... SNMP
Transporte TCP Porta TCP Porta
ICMP
Rede IP
Driver de
Interface de rede Rede
51
Interação dos protocolos
Estação E1 Protocolo SMTP Estação E2
1º SMTP SMTP 16º
Protocolo UDP
2º TCP TCP 15º
Roteador 1 7º Roteador 2
IP IP 11º IP
3º IP IP IP IP 14º
6º 10º
4º Driver Driver Driver Driver Driver Driver 13º
5º 8º 9º 12º
N1 N2 N3
52
Backbones, NAPs e ISPs
53
Estrutura de interconexão da internet
Backbones, NAPs e ISPs
Provedor Internacional
NAP NAP
Provedor Internacional
NAP – Network Access
Point
Provedor Nacional NAP Provedor Nacional
Provedor Provedor Provedor Provedor
Regional Regional Regional Regional
Provedor Provedor Provedor Provedor Provedor Provedor Provedor Provedor
Local Local Local Local Local Local Local Local
54
Estrutura da Internet: rede de redes
• quase hierárquica
• provedores de backbones ou serviços
nationais/internacionais (NBPs ou NSPs) – ISP
“tier-1” local
– ex. Embratel, Banco Rural, Global One ISP regional
– 1.5 Mbps a 622 Mbps NBP B
– interconecta (peer) com cada um dos outros de
forma privada, ou em pontos de troca de tráfego NAP NAP
(PTTs) ou Pontos de Acesso a Rede (NAPs)
• Internet Servide Provider (ISPs) regionais – NBP A
“tier-2” ISP regional
– conectam a NBPs ISP
• ISP local – “tier-3”, empresa local
– conecta a um ISP regional
55
Estrutura da Internet: rede de redes
• quase hierárquica
• No centro: ISPs “tier-1” (ex., UUNet, BBN/Genuity,
Sprint, AT&T), cobertura nacional/internacional
– trata os demais como iguais
Provedores Tier-1
também se
Provedores
Tier-1 se
Tier 1 ISP interligam em
NAP pontos de acesso
interligam de rede (NAPs)
(peer) de públicos
forma
privada Tier 1 ISP Tier 1 ISP
56
Estrutura da Internet: rede de redes
ex. Embratel Redes ATM e E1 e dos protocolos TCP/IP, PPP e HDLC.
O backbone Embratel - mais de 35 Gbps a nível nacional
http://www.embratel.net.br/internet/index.html
57
Estrutura da Internet: rede de redes
ex. Embratel – Lins Internacionais
Cabos submarinos em fibra óptica (Américas
II e LAN),
O roteamento do tráfego - BGP-4. As rotas
internacionais são definidas dinamicamente.
As conexões internacionais interligam
diretamente às redes Internet da:
Internet mundial: UUNET, Sprint e Level3
- EUA
Europa: Radio Marconi - Portugal
Mercosul : UUNET – Argentina, Telefónica
Argentina - Argentina , Telecom
Internacional Argentina - Argentina , Antel -
Uruguai
https://www.submarinecablemap.com/
58
Estrutura da Internet: rede de redes
59
Estrutura da Internet: rede de redes
60
Estrutura da Internet: rede de redes
• “Tier-2” ISPs: ISPs menores (frequentemente
regionais)
– Conexão a um ou mais ISPs tier-1, possivelmente a outros
ISPs tier-2
Tier-2 ISPs
Tier-2 ISP paga Tier-2 ISP também se
Tier-2 ISP interligam
ao tier-1 ISP
pela Tier 1 ISP privadamente
conectividade ao NAP e também ao
resto da NAP
Internet
❑ tier-2 ISP é Tier 1 ISP Tier 1 ISP Tier-2 ISP
cliente do
provedor Tier-2 ISP Tier-2 ISP
tier-1
61
Estrutura da Internet: rede de redes
• “Tier-3” ISPs e ISPs locais
– rede de última milha (“acesso”) (próximo aos sistemas
finais)
local
ISP Tier 3 local
local local
ISP ISP
ISP ISP
ISPs locais e Tier-2 ISP Tier-2 ISP
tier- 3 são
clientes de Tier 1 ISP
ISPs NAP
superiores
conectando-os
ao resto da Tier 1 ISP
Internet
Tier 1 ISP Tier-2 ISP
local
Tier-2 ISP Tier-2 ISP
ISP
local local local
ISP ISP ISP
62
Estrutura da Internet: rede de redes
• um pacote passa através de diversas redes!
local
ISP Tier 3 local
local local
ISP ISP
ISP ISP
Tier-2 ISP Tier-2 ISP
Tier 1 ISP
NAP
Tier 1 ISP Tier 1 ISP Tier-2 ISP
local
Tier-2 ISP Tier-2 ISP
ISP
local local local
ISP ISP ISP
63
Bibliografia
◼ James F. Kurose e Keith W. Ross
◼ Redes de Computadores e a Internet:
◼ Andrew S. Tanenbaum
◼ Redes de Computadores
◼ SOUSA, Lindeberg Barros de
◼ Redes de computadores: dados, voz e imagem
◼ Comer, Douglas E.,
◼ Interligação de Redes Com Tcp/ip
64