Você está na página 1de 56

Aspectos de Interconexo

Prof. Mauro Tapajs

Camada de Rede no Modelo OSI


Permite que redes heterogneas sejam conectadas (interconexo rede de redes!) Controla a operao da rede fim-a-fim Independe da tecnologia de rede existente Endereamento a nvel de toda a rede (mesmo entre LANs e WANs) Roteamento dos pacotes pela rede interconectada Procedimentos de controle de congestionamento Fragmentao de pacotes Funes de contabilizao

Projeto de Protocolos de Rede


Normalmente a interface entre camada de rede e a de transporte a interface entre cliente e provedor do servio Premissa: O cliente no deve se importar com os tipos de redes que existem para oferecer o servio (transparncia) O servio da camada de rede deve ser orientado a conexo ou sem conexo? (diferena entre o modelo OSI e TCP/IP)

Interconexo de Redes
Redes diferentes conectadas para formar uma internet A tendncia a redes diferentes deve continuar (largas bases instaladas, tecnologias mais novas e baratas)

Interconexo de Redes
Redes interconectadas atualmente usam IP para operar A rede total interconectada aparece como um nica grande rede para as aplicaes A Internet global o melhor exemplo, mas Intranets e Extranets tambm so A implementao de camada de rede a parte mais importante no funcionamento da rede interconectada

Interconexo de Redes

Categorias de Interconexo
Application Presentation Session Transport Network Data Link Routers Bridges Gateways

Physical

Repeaters

Exemplos de Protocolos de Rede


IP IPX (Novell) Appletalk (Macintosh) DECnet NetBIOS SNA (IBM) OSI (CLNP) XNS (Xerox) Banyan Vines

Interconexo
Problemas de interconexo Diferenas entre redes:

Tunneling - interconexo remota de redes semelhantes passando por outras no meio do caminho

Tunelamento

Endereamento
O que ? Estrutura de endereamento: importante para se ter escalabilidade numa rede Hierarquizao pode reduzir as complexidades da operao da rede (tabelas de roteamento, adaptao a topologias, controle de trfego, mecanismos de prioridade, diagnsticos de falhas, etc) Redes baseadas em circuitos tendem a usar endereos de tamanho varivel mas sempre grandes, porm somente durante o estabelecimento do circuito

Esquemas de Endereamento
Exemplos: IPv4: 32 bits (network-host varivel) IPv6: 128 bits (network-host varivel) IPX: 80 bits (32 bits para a rede - 48 bits para host) Appletalk: 24 bits (16 bits para rede - 8 bits para host)

Sinalizao
O que sinalizao? Por que necessria sinalizao em camada de rede? parte da especificao do protocolo Tipos mais comuns:
Sinalizao do usurio para a rede UNI (User to Net) Sinalizao dentro da prpria rede NNI (Net to Net) Sinalizao in-band e out-of-band Sinalizao por canal comum (common-channel)

MTU - Maximum Transmission Unit


Ethernet: 1518 bytes FDDI: 4500 bytes Token Ring: 2 to 4 kB

Cada tecnologia de rede que implementa a subrede possui o seu prprio MTU

Cada subrede ento poder transmitir ter um mximo tamanho de pacote IP a Each subnet has a maximum IP datagram length (header + payload) = MTU

Rede 1 MTU=1500

Rede 2 MTU=1000

Fragmentao
Todas as redes de pacotes definem o seu MTU Limitaes de hardware Sistemas operacionais (tamanho de buffers) Protocolos (campos de comprimento) Padres definidos Performance Datagramas maiores que o MTU so fragmentados De uma maneira geral, camadas acima permitem PDUs maiores Os cabealhos originais so copiados e campos especficos para controle da fragmentao so preenchidos

Fragmentao
Header Original Datagram

Hdr 1

Data 1

Hdr 2

Data 2

Hdr 3

Data 3

Path MTU Descoberta do mnino MTU atravs de determinado caminho (IPv6) Duas estratgias possveis: fragmentao transparente ou no-transparente

Fragmentao Transparente
Os pacotes fragmentados so remontados antes de chegarem ao seu destino

Fragmentao NoTransparente
Os fragmentos so remontados somente no destino

Fragmentao
Datagramas parciais so descartados depois de timeout Fragmentos podem ser fragmentados novamente no seu percurso
A
Rede 1 MTU=1500 R1 Rede 2 MTU=1000 R2

B
Rede 3 MTU=1500

Fragmentao - Observaes
Aspecto de Performance: a perda de um nico fragmento implica na perda de todo o pacote, tornando todos os outros fragmentos inteis Pode-se implementar mecanismos para se deixar claro qual o MTU num determinado caminho (IPv6) Cabealhos de protocolos de camada de transporte e aplicao no estaro em todos os fragmentos gerados o que pode prejudicar anlises que dependam destes (por exemplo: regras de firewall, mecanismos de QoS baseado em contedo, etc)

Controle de Congestionamento
Uma rede de pacotes pode ser modelada como uma rede de filas de servios para pacotes Se a fila de pacotes cresce alm da taxa de servio (sada de pacotes) pode ultrapassar o limite da fila (buffers)

Controle de Congestionamento

Controle de Congestionamento
Congestionamento significa que a carga na rede temporariamente maior que a capacidade dos recursos Soluo: aumentar os recursos ou diminuir a carga Se muitos pacotes chegam e os equipamentos no tem capacidade de dar vazo a todos, ocorre congestionamento no h pr-alocao de recursos Se difere do controle de fluxo (especfico entre dois hosts) por abranger todos os equipamentos de comutao da rede e hosts (caracterstica distribuda)

Contexto de Congestionamento
Na situao real, os buffers nos roteadores usados para enfileirar pacotes so finitos Existe um tempo de processamento por pacote (velocidade de processamento influi) Quantos mais pacotes na fila, maior o atraso para os que esto atrs Aumento de carga assimilado pela rede at um determinado limite prximo sua capacidade Depois disso os atrasos por pacotes crescem e levam o throughtput a cair a zero

Resposta da Rede ao Trfego Injetado

Situao Ideal

Situao Real

Deadlock
No processo de congestionamento, um roteador s pode dar vazo quando o seguinte der vazo Por outro lado o seguinte somente pode dar vazo quando o primeiro assim o fizer Esta espera de um roteador por outro cria um impasse

Polticas de Operao que Influem

Tipos de Controle de Congestionamento


Preventivo tenta prevenir o congestionamento de acontecer (reserva de recursos de rede, uso de algoritmos como os de leaky bucket ou token bucket) Reativo age em resposta a uma situao de congestionamento (Choke Packets, Load Shedding)

Atitudes Preventivas
Solues baseadas em ajustes prvios Transmisso em taxas uniformes (contratos com operadoras, PVCs) implementao dos algoritmos de controle da vazo de pacotes Polticas de preveno com base em uso de circuitos virtuais e aspectos de roteamento

Controle de Admisso para Circuitos Virtuais


Se o congestionamento existe, leva-se este fato em considerao na hora de se criar novos circuitos virtuais
Pode-se no se aceitar mais novos circuitos virtuais (como no sistema telefnico) Pode-se aceitar novos circuitos virtuais, mas roteandoos por caminhos que desviam do congestionamento Pode-se acertar parmetros no momento de criao do novo circuito virtual (volume de dados, QoS)

Pode haver desperdcio de banda em funo do procedimento de reserva prvia de recursos

Controle de Admisso para Circuitos Virtuais

Mecanismos Implcitos de Sinalizao de Congestionamento


1.

O atraso experimentado para o pacotes cresce de forma anormal sendo percebido na origem A origem nota que vrios pacotes seus esto sendo descartados

2.

Estes mecanismos somente dependem dos sistemas finais e no exigem suporte por parte da rede muita utilizao em redes baseadas em datagramas (Ex.: TCP Slow Start)

Descarte Proativo
Simula o problema antes dele estar crtico Usado em filas FIFO de roteadores TCP entende perdas de pacotes como sinal para entrar em modo slow start, reduzindo a carga daquela conexo Pacotes perdidos devem ser retransmitidos (atrasos e carga) Dificuldades de sincronizao (vrias conexes TCP podem sair e entrar em modo slow start trazendo o problema novamente em bloco)

Random Early Detection - RED


Procedimento para evitar congestionamento, evitando o efeito sincronizado Evita a preferncia pelo trfego em rajadas descartando pacotes recm - chegados Parmetros: limites THmin, THmax e probabilidade pa

Mecanismos Explcitos de Controle de Congestionamento


Estes mecanismos permitem que uma parte pequena da capacidade de uma rede seja usada na sinalizao da situao de congestionamento mais usado em redes baseadas em conexo Warning bit - (usado em Frame-Relay) Estratgias fim-a-fim possveis:

Baseada em bits Baseada em crditos Baseada em limitaes de taxa

Choke Packets
A idia prevenir congestionamentos monitorando as linhas de sada do roteador Quando uma linha de sada de um roteador ultrapassa um limiar de aviso, enviado um choke packet de volta para a origem do pacote em questo O transmissor assim, fica sabendo que deve diminuir seu trfego por aquele determinado caminho at que no receba mais choke packets O pacote marcado para no gerar mais choke packets nos roteadores adiante

Choke Packets
Congestionamento iminente! (u >Thr)

Host

router

router

Choke Packet

Pacotes marcados (para prevenir novas geraes de choke packets em roteadores adiante)

Back Pressure
Usa o mesmo princpio usado em encanamentos quando a uma torneira fecha o fluxo de gua e a presso para evitar que o fluxo continue Aplicado a contextos com circuitos virtuais ou conexes lgicas Pode ser usado seletivamente sobre conexes determinadas (por exemplo: aquelas que mais esto gerando trfego) Para ser implementado, a rede deve suportar a sinalizao de congestionamento salto-a-salto (por exemplo: X.25 mas no ATM e Frame Relay)

Mecanismos de Sinalizao para Controle de Congestionamento

Descarte de Carga (Load Shedding)


Atitude extrema o descarte de pacotes que chegam num roteador saturado Este descarte pode ser seletivo em funo do tipo de pacote (prioridades, tempo de vida TTL, etc) Pode haver um acordo que permita que se transmita a uma taxa maior que a definida no circuito virtual, porm os pacotes tero prioridades menores que o normal (ex.: Frame Relay) Ao descartar pacotes de um segmento, descarta-se os demais do mesmo segmento

Algoritmo de Leaky Bucket


Consiste de uma fila finita com taxa de servio constante Transforma um fluxo irregular de pacotes num fluxo regular, aliviando rajadas de trfego e reduzindo o congestionamento Descarta pacotes quando ultrapassa a capacidade (C)

Algoritmo de Token Bucket


Consiste de uma fila finita de permisses de transmisso Maior flexibilidade Permite uma maior adequao da taxa de transmisso chegada de pacotes (regras) Nunca descarta pacotes, somente fichas

Enfileiramento Diferenciado
A idia se ter vrias filas para cada sada do roteador com tratamento adequado Estas filas seriam atendidas de maneira igual, enviando um pacote de cada vez Para no beneficiar hosts que produzem pacotes maiores que os que produzem menores, as filas podem ser organizadas para que se envie um byte de cada fila a cada vez No caso de se diferenciar vrias fontes de trfego com diferentes prioridades, pode-se alocar os bytes proporcionalmente

Disciplinas de Enfileiramento
Fila FIFO (First In First Out ou FCFS) - no prov diferenciao Simple Fair Queuing divide os pacotes que chegam em vrias filas para cada fluxo (ou origem) e atende a cada uma delas de umas vez

Disciplinas de Enfileiramento
Weighted Fair Queuing: divide pacotes em interativos e nointerativos e cria filas para cada tipo de fluxo, tratando fluxos de maneira diferenciada Atribui pesospara cada fila de forma que numa passagem sejam mandados mais de um pacotes, privilegiando fluxos O uso destas disciplinas estabelecido com base em gerenciamento do trfego (pr-reserva de recursos, estratgias de balanceamento de carga, etc)

Traffic Shaping
Uma das maiores causas do congestinamento o perfil de rajadas do trfego Trata-se de prever o perfil de trfego que ir ser transmitido e decidir se a rede ser capaz de manipul-lo (acordo com base em mecanismos QoS) SLA's definidos Existem algoritmos que implementam diferentes traffic shapings

Especificaes de Fluxo
Uma outra maneira de se prevenir o congestionamento se acertar previamente as caractersticas do fluxo que se criar Uma estrutura de dados define entre transmissor e receptor (subrede), as caractersticas do fluxo (negociao) Usado em protocolos de reserva de recursos Problema: s vezes no se sabe exatamente o perfil do fluxo desejado

Necessidade de QoS
Redes datagramas so redes baseadas no melhor esforo (best effort): tratam todos os pacotes do mesmo modo Para uma srie de novas aplicaes, so necessrios mecanismos que garantam o trfego contnuo de pacotes sem alterao e sujeitos a determinadas condies impostas pelas aplicaes Para isso mecanismos deve ser implementados, onerando o processamento de rede

Qualidade do Servio - QoS


Um mecanismo QoS traduz um pedido de servio num conjunto de caractersticas de trfego para aquele servio (enfileiramento adequado, roteamento, disponibilizao de recursos capacidade, buffers, etc) Grupos de trabalho demonstraram que possvel se oferecer este tipo de suporte sobre uma rede assncrona de datagramas

Tipos de Trfego
Elstico Se ajusta bem dentro de determinada faixa de variao de atraso e banda Normalmente roda sobre UDP e TCP (aplicaes bsicas da Internet) Ex: FTP (sensvel a throughput), SMTP (no to afetado por atrasos), TELNET e HTTP (razoavelmente sensvel a atraso), todas com pequenas variaes na exigncia de QoS necessidade modesta de suporte QoS Inelstico No se adapta bem a mudanas da qualidade da rede Melhor exemplo: Trfego real-time Em caso de congestionamento, continua a enviar a mesma carga na rede (no recua) Requisitos (throughput, atraso, jitter, perda de pacotes)

Trfego Inelstico
Uma rede ter dificuldade em atender este tipo de trfego com atrasos variveis e ocorrncia de congestionamentos Existe, assim, a exigncia ento de tratamento preferencial Aplicaes que geram este tipo de trfego devem sinalizar requisitos A rede deve ainda suportar trfego elstico podendo priorizar recursos para atendimento de trfego preferencial

Requisitos de Aplicao
Existe a necessidade de se permitir que as aplicaes apresentem seus requisitos de QoS Duas maneiras de se fazer isto:
Criao de um mecanismo para requerimento de QoS (melhor em caso de congetionamento da rede caso a rede esteja congestionada, novos pedidos so negados) Indicao do QoS desejado no cabealho dos pacotes

Requisitos de Aplicao Exemplos

SLA Service Level Agreement


O servio oferecido por um provedor definido em acordos onde se detalha o que ser oferecido em termos de servios e capacidades O SLA um contrato firmado entre um provedor de servio e um cliente (usurio) detalhando os parmetros de performance da rede em operao Documentos SLA podem conter parmetros como:
Throughput, probabilidade de descarte e latncia mdia da rede Restries nos pontos de entrada e sada da rede do provedor, definindo o escopo do servio Perfis de trfego consistentes com o servio que ser oferecido (ex. Parmetros token bucket) A resposta da rede ao trfego em excesso do cliente