simulação de redes de comunicação de dadosdianne/netsim/aula_2.pdfmetropolitan area networks...
TRANSCRIPT
Simulação de Redes de Comunicação de Dados
Profª. Dianne Scherly Varela de Medeiros
A Internet
O que é a Internet?
• Milhões de dispositivos conectados
Hosts (sistemas finais)
Executam aplicações de rede
• Enlaces de comunicação
Fibra, cobre, rádio, satélite
Taxa de transmissão (largura de banda)
• Encaminhadores de pacotes
Roteadores e switches
325/03/2019
wiredlinks
wirelesslinks
router
smartphone
PC
serverwirelesslaptop
O que é a Internet?
• Controle de envio e recebimento de mensagens: protocolos
TCP, IP, HTTP, Skype, 802.11, MPLS, ...
• Padrões da Internet RFC: Request for
Comments
IETF: Internet Engineering Task Force
25/03/2019 4
IESG
WG
O que é a Internet?
• Rede complexa composta por equipamentos de rede capazes de se comunicarem entre si
“Rede de redes”
• Interconectadas por ISPs
• Infraestrutura que fornece serviços para aplicações
Permite que aplicativos se conectem à Internet
Opções de serviço análogas ao serviço postal
Web, VoIP, e-mail, jogos, redes sociais, ...
25/03/2019 5
Complexidade da Internet
Fonte: http://www.opte.org/the-internet/
O que é a Internet?
• Principais requisitos da Internet
Núcleo “simples”, borda inteligente
Conectividade deve ser garantida
• Crescimento exponencial dos usuários tornou os serviços oferecidos pela Internet em seus primórdios insuficientes
Propostas de novos protocolos e serviços para lidar com problemas não previstos inicialmente
25/03/2019 7
O que é a Internet?
25/03/2019 8
DNS
IPSec
DiffServ
IntServCIDR
IPMóvel
CacheFirewall
NAT
Multicast
IPv6
Ferramentas para Evolução da Internet
• Análise matemática
Poderosa, mas complexa
Modelo matemático
• Ex.: estimativa da duração de enlaces, predição de movimentação dos nós, mecanismos de filas e escalonamento, algoritmos de congestionamento, ...
Envolve teoria da probabilidade, estatística, redes complexas, sistemas dinâmicos de eventos discretos, ...
25/03/2019 9
Ferramentas para Evolução da Internet
• Simulação
Resultados obtidos não correspondem aos reais, mas podem ser aproximados
Exs.: simulação de tráfego, de topologia, de cenários, de protocolos, ...
25/03/2019 10
Objeto Real Objeto Simulado
Modelagem
Ferramentas para Evolução da Internet
• Simulação
Resultados obtidos não correspondem aos reais, mas podem ser aproximados
Exs.: simulação de tráfego, de topologia, de cenários, de protocolos, ...
25/03/2019 11
Objeto Real Objeto Simulado
Modelagem
Ferramentas para Evolução da Internet
• Simulação
Resultados obtidos não correspondem aos reais, mas podem ser aproximados
Exs.: simulação de tráfego, de topologia, de cenários, de protocolos, ...
25/03/2019 12
Objeto Real Objeto Simulado
Modelagem
Ferramentas para Evolução da Internet
• Análise de desempenho das novas propostas
Essencial para adoção pelos ISPs
Necessidade de ferramentas mais adequadas
• Análise + simulação são insuficientes
Propõe-se
• Emulação
• Criação de testbeds
• Análise de tráfego real
25/03/2019 13
Ferramentas para Evolução da Internet
• Análise de desempenho das novas propostas
Dificuldades
• Ambientes de experimentação flexíveis
• Ambientes de teste controlado
• Medições e análise
25/03/2019 14
Protocolos e Classificação de Redes
O que é um Protocolo?
• Conjunto de regras e procedimentos que definem:
Comunicação entre entidades
Formato, ordenação de mensagens enviadas e recebidas entre pares na rede, ações na transmissão ou recebimento de mensagens
25/03/2019 16
O que é um Protocolo?
• Conjunto de regras e procedimentos que definem:
Comunicação entre entidades
Formato, ordenação de mensagens enviadas e recebidas entre pares na rede, ações na transmissão ou recebimento de mensagens
• Todas as comunicações na Internet são governadas por protocolos
25/03/2019 17
Hi
Hi
Got the
time?
2:00
TCP connectionresponse
<file>time
TCP connectionrequest
O que é um Protocolo?
• Quanto mais requisitos, mais complexo o protocolo
Confiabilidade
Resiliência
Qualidade
Grupo
25/03/2019 18
Classificação das Redes de Computadores
• Extensão geográfica
Personal Area Networks (PANs): Redes pessoais
Local Area Networks (LANs): Redes locais
Metropolitan Area Networks (MANs): Redes metropolitanas
Wide Area Networks (WANs): Redes de longa distância
25/03/2019 19
PAN
LAN
MAN
WAN
Bluetooth Zigbee
NFC
Ethernet WiFi
WiMAX
ATMBackbones
ópticos
Celular
LoRa
Poucos metros
Centenas de metros
Alguns quilômetros
Dezenas/centenas de quilômetros
Classificação das Redes de Computadores
• Topologia
Estrutura física de interligação entre os equipamentos
Estrutura lógica de interligação entre os equipamentos
Custo, confiabilidade, alcance
Mais comuns
• Malha
• Estrela
• Anel
• Barramento
• Híbridas
25/03/2019 20
Topologia em Malha
• Redes de longa distância
• Maior complexidade nas decisões de encaminhamento
• Malha completa
Não há compartilhamento do meio
Não é necessário roteamento
Elevado custo
• Irregular
Arranjo de interconexões de acordo com o tráfego
Escolha de caminhos para evitar congestionamento
Necessário roteamento
25/03/2019 21
Topologia em Estrela
• Centralizada
• Decisões de encaminhamento tomadaspor um nó
• Adequada para situações em que o fluxode informação é centralizado
• Depende de um nó centro, ponto único de falha
• Redes locais
25/03/2019 22
Topologia em Anel
• Encaminhamento circular
• Uso de tokens para envio de mensagens
Não é necessário tomar decisões
• Confiabilidade da rede depende da confiabilidade individual dos nós
• Redes locais
25/03/2019 23
Topologia em Barramento
• Todos os nós escutam
Não é necessário decisões deencaminhamento
• Mecanismo de acesso ao meio é necessário
• Redes locais
25/03/2019 24
Topologia Híbrida
• Configurações híbridas
Anel-estrela
Barramento-estrela
Estrela-anel
Árvore de barramentos
25/03/2019 25
Arquitetura em CamadasModelo TCP/IP
Modelo em Camadas
• Conjunto de protocolos e camadas
• Reduz a complexidade do projeto de uma rede de comunicação
• Cada camada provê um serviço para a camada superior e esconde os detalhes da implementação do serviço
25/03/2019 27
Modelo em Camadas
25/03/2019 28
camada 𝒏
camada 𝒏 − 𝟏
camada 𝟏
meio físico
...
camada 𝒏
camada 𝒏 − 𝟏
camada 𝟏
...
Protocolo de camada 1
Protocolo de camada 2
Protocolo de camada 𝑛 − 1
Protocolo de camada 𝑛
Sistema final 1 Sistema final 2
Interface entrecamadas
Entidades pares
camada 𝟐 camada 𝟐
Modelo em Camadas
• Camadas oferecem quatro tipos de serviço
Orientado a conexão
Não orientado a conexão
Confiável
Não confiável
25/03/2019 29
Tipos de Serviço
• Orientado a conexão
Baseado no sistema telefônico
Estabelecimento de conexão
• Negociação de parâmetros: tamanho máximo da mensagem, taxa de transmissão, qualidade de serviço
Uso da conexão
Liberação da conexão
25/03/2019 30
Tipos de Serviço
• Não orientado a conexão
Baseado no sistema postal
Cada mensagem carrega o endereço de destino e de origem
Mensagens são encaminhadas por nós intermediários de forma independente
25/03/2019 31
Modelo TCP/IP
• Protocolos associados são amplamente usados
• Camadas são mais restritas do que no modelo OSI
• O modelo OSI é apenas um modelo de referência
• O modelo TCP/IP define os protocolos para cada camada
25/03/2019 32
aplicação
transporte
enlace
rede
física
Ace
sso
à r
ede
Modelo TCP/IP
• Aplicação: suporte às aplicações de rede
FTP, SMTP, HTTP, ...
• Transporte: transferência de dados entre processos (fim-a-fim)
TCP, UDP
• Rede: roteamento de datagramas da origem até o destino
IP, protocolos de roteamento
25/03/2019 33
aplicação
transporte
enlace
rede
física
Mensagens
Segmentos
Ace
sso
à r
ede
Modelo TCP/IP
• Enlace: transferência de dados entre elementos de redes adjacentes (salto-a-salto)
802.3 (Ethernet), PPP, 802.11 (WiFi)
• Física: transferência de bits no meio
Modulação e codificação
25/03/2019 34
aplicação
transporte
enlace
rede
física
Mensagens
Segmentos
Datagramas
Quadros
Ace
sso
à r
ede
Modelo TCP/IP
• Não requer estabelecimento de chamadas
• Roteamento
Distribuído
• Suporta qualquer topologia
• Distribui a carga e evita pontos de congestionamento
Adaptativo
• Permite reparar falhas de enlace
• Confiabilidade aumenta com o “tamanho” da rede (caminhos redundantes)
25/03/2019 35
Encapsulamento
25/03/2019 36
Comutação em Redes
Tipos de Comutação em Redes
• Comutação por pacotes
Típico na Internet
• Comutação por circuitos
Típico no sistema telefônico
• Comutação por rótulos
MPLS
25/03/2019 38
Comutação por Circuitos
25/03/2019 39
Comutação por Circuitos
25/03/2019 40
Comutação por Circuitos
25/03/2019 41
Comutação por Circuitos
• Recursos dedicados fim-a-fim
Desempenho garantido
Desperdício quando o usuário não os utiliza
• Eficiência decresce com
Aumento do tempo de estabelecimento da chamada
Aumento da banda passante do canal
Diminuição do tempo de duração da chamada
• Chamada falha se um elemento do caminho falha
• Técnicas de multiplexação
FDM (frequência)
TDM (tempo)
25/03/2019 42
Comutação por Pacotes
25/03/2019 43
Comutação por Pacotes
25/03/2019 44
Comutação por Pacotes
25/03/2019 45
Comutação por Pacotes
25/03/2019 46
Comutação por Pacotes
25/03/2019 47
Comutação por Pacotes
25/03/2019 48
Comutação por Pacotes
25/03/2019 49
Comutação por Pacotes
• Compartilhamento do meio com outros usuários
• Mensagens da aplicação são divididas em pacotes
• Pacotes são encaminhados por cada roteador, da origem ao destino, de forma independente
• Pacotes são transmitidos com a capacidade máxima do enlace, nó a nó
Transmissão demora 𝐿
𝑅segundos
• Atraso total ⇒ 𝑅𝑇𝑇 = 2 ⋅𝐿
𝑅segundos
25/03/2019 50
por enquanto....
Comutação por Pacotes
• Esquemas
Store-and-forward: o pacote completo deve chegar ao roteador antes de ser transmitido no próximo enlace
Cut-through: à medida em que os bits chegam, vão sendo transmitidos (aguarda apenas o cabeçalho)
• Enfileiramento
Ocorre se taxa de chegada for maior do que a taxa de transmissão em um intervalo de tempo
Perda de pacotes
25/03/2019 51
Comutação por Circuitos
• Prós Reserva de recursos
• Garantia de desempenho
• Contras Recursos ociosos
Tempo de configuração
Tipos de Comutação
• Prós Maior aproveitamento
dos recursos de rede• Mais usuários na rede
(compartilhamento)
Dados em rajada
• Contras Compartilhamento
Melhor esforço
Congestionamento
• Perdas e atrasos
Comutação por Pacotes
25/03/2019 52
Métricas de Desempenho
Atrasos em Redes
• Enfileiramento (𝑡𝑞)
Taxa de chegada > taxa de saída
Novos pacotes são armazenados no buffer
• Se buffer cheio ⇒ joga pacote fora
Depende do congestionamento
• Processamento (𝑡𝑝𝑟𝑜𝑐) (ms)
Verificação de erros e definição do enlace de saída
25/03/2019 54
processamentoenfileiramento
A
B
Atrasos em Redes
• Transmissão (𝑡𝑡𝑥)
Tempo para enviar todos os bits do pacote
Comprimento do pacote / Largura de banda ⇒ 𝐿/𝑅
• Propagação (𝑡𝑝𝑟𝑜𝑝)
Tempo para o sinal se propagar no meio
Comprimento do enlace / velocidade de propagação ⇒ 𝑑/𝑠
25/03/2019 55
propagação
processamentoenfileiramento
A
B
transmissão
Atrasos em Redes
25/03/2019 56
propagação
processamentoenfileiramento
A
B
transmissão
𝑎𝑡𝑟𝑎𝑠𝑜 𝑝𝑜𝑟 𝑛ó = 𝑝𝑟𝑜𝑐𝑒𝑠𝑎𝑚𝑒𝑛𝑡𝑜 + 𝑒𝑛𝑓𝑖𝑙𝑒𝑖𝑟𝑎𝑚𝑒𝑛𝑡𝑜 + 𝑡𝑟𝑎𝑛𝑠𝑚𝑖𝑠𝑠ã𝑜 + 𝑝𝑟𝑜𝑝𝑎𝑔𝑎çã𝑜
𝑡𝑛ó = 𝑡𝑝𝑟𝑜𝑐 + 𝑡𝑞 + 𝑡𝑡 + 𝑡𝑝𝑟𝑜𝑝
Perda de Pacotes
• Buffer para um enlace é finito
• Pacote que chega e encontra buffer cheio é descartado
Retransmissão pode ou não ser feita
• Nó anterior ou terminal de origem
25/03/2019 57
A
B
pacote sendo transmitido
pacote chegando em
buffer cheio é perdido
buffer
(área de espera)
Vazão
• Taxa de transferência de bits entre uma origem e um destino
Instantânea: taxa em um dado momento
Média: taxa ao longo de um intervalo
25/03/2019 58
capacidade do enlaceRs bits/s
capacidade do enlaceRc bits/s
Vazão
• Taxa de transferência de bits entre uma origem e um destino
Instantânea: taxa em um dado momento
Média: taxa ao longo de um intervalo
• Analogia: encanamentos
25/03/2019 59
servidor envia bitspelo enlace
enlace carrega os bits a uma taxa Rs bits/s
enlace carrega os bits a uma taxa Rc bits/s
Vazão
• 𝑅𝑠 < 𝑅𝑐: qual é a vazão média fim-a-fim?
• 𝑅𝑠 > 𝑅𝑐: qual é a vazão média fim-a-fim?
25/03/2019 60
Rs bits/s Rc bits/s
Rs bits/s Rc bits/s
Material Utilizado
• Notas de aula do Prof. Miguel Elias Mitre Campista disponíveis em http://www.gta.ufrj.br/~miguel/redes.2014.3.html
• Notas de aula dos Profs. Kurose e Ross disponíveis emhttp://www-net.cs.umass.edu/kurose-ross-ppt-6e/
25/03/2019 61
Leitura Recomendada
• Caps. 1 e 4
Jim Kurose e Keith Ross, “Redes de Computadores e a Internet – Uma abordagem Top-Down”, 6a Edição, Ed. Pearson, 2013, ISBN 978-0-13-285620-1
• Caps. 1 e 5
Andrew S. Tanenbaum, “Redes de Computadores”, 5a Edição, Ed. Pearson, 2011, ISBN 978-0-13-212695-3
25/03/2019 62