Prof. Arthur Transmissão de Dados A Camada de Rede Transmissão de Dados Prof. Arthur...

Post on 07-Apr-2016

216 views 0 download

Transcript of Prof. Arthur Transmissão de Dados A Camada de Rede Transmissão de Dados Prof. Arthur...

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Transmissão de DadosTransmissão de Dados

Prof. ArthurProf. Arthurarthur@unip.brarthur@unip.br

20092009

O Modelo de Referência TCP/IPA Camada de Rede

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Camada de Aplicação

Camada de Transporte

Camada de Rede

Camada de Enlace de Dados

Camada de Física

Modelo de Referência TCP/IP

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Funções Principais

1. Prestar serviços à Camada de Transporte.

2. Estabelecer rotas da origem ao destino.

3. Selecionar rotas menos congestionadas

4. Compatibilizar problemas de comunicação em rotas que atravessem redes diferentes.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

1. Prestação de serviços à Camada de Transporte

Em algumas redes as camadas de Rede e de Transporte estão em equipamentos distintos.

Host A

Camada de Transporte

Host B

Camada de Transporte

Roteador 2

Camadade Rede

Roteador 1

Camadade Rede

• Sub-rede• Interface concessionária/usuário• Define a responsabilidade da

concessionária

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

1. Prestação de serviços à Camada de Transporte

Objetivos:

• Os serviços devem ser independentes da tecnologia da sub-rede.

• Para a camada de Transporte, não interessa o número, tipo e topologia das sub-redes utilizadas.

• Os endereços da rede, passados para a camada de Transporte, devem ser uniformes.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

1. Prestação de serviços à Camada de Transporte

Estrutura Interna da Camada de Rede:

Circuitos Virtuais (CVs)

Datagramas

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Estrutura Interna da Camada de Rede

Circuitos Virtuais

H

HH

H

HH

A

C

D

FE

B

Host

RoteadorN

H

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Estrutura Interna da Camada de Rede

Circuitos Virtuais

CV com origem no roteador A e destino D:

No do CV Rota0 A – B – C - D1 A – E – F – D2 A – B – F - D3 A – E – C - D4 A – E – C – B – F - D

H

HH

H

HH

A

C

D

FE

B

Host

RoteadorN

H

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Estrutura Interna da Camada de Rede

Circuitos Virtuais

CV com origem no roteador B e destino D:

No do CV Rota0 B – C – D1 B – A – E – F - D2 B – F - D

Etc.

H

HH

H

HH

A

C

D

FE

B

Host

RoteadorN

H

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Estrutura Interna da Camada de Rede

Circuitos Virtuais - Características

• Os roteadores devem “lembrar” para onde enviar os pacotes de cada circuito virtual aberto que passa por ele. Cada roteador deve manter uma tabela para cada CV ativo.

• Os CVs A – B – C – D (com origem em A) e B – C – D (com origem em B) geram um conflito de rotas, o que exige um algoritmo para arbitrar esta situação.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Estrutura Interna da Camada de Rede

Circuitos Virtuais - Características

• Cada pacote de bits deve conter: O número do CV O número de sequência Soma de verificação Sentido da transmissão, pois ela é full-duplex Etc.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Estrutura Interna da Camada de Rede

Datagramas - Características

• Os roteadores contém tabelas indicando as linhas de saída possíveis para uma determinada linha de entrada.

• Os datagramas devem conter o endereço de origem e de destino completos.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Estrutura Interna da Camada de Rede

Circuitos Virtuais x Datagramas

Item Sub-rede de Datagramas Sub-rede de CVs

Configuração do circuito

Desnecessário Obrigatório

Endereçamento Cada pacote contém os endereços completos da origem e do destino

Cada pacote contém um número único de CV

Informações sobre a conexão

Não tem Cada CV estabelecido exige controle na tabela da sub-rede

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Estrutura Interna da Camada de Rede

Circuitos Virtuais x Datagramas

Item Sub-rede de Datagramas Sub-rede de CVs

Roteamento Cada pacote é roteado de forma independente

A rota é definida quando o CV é estabelecido e todos os pacotes seguem esta rota

Efeito de falhas no roteador

Nenhum, exceto para pacotes perdidos durante a queda

Todos os CVs que passam através do equipamento parado são encerrados

Controle de congestionamentos

Difícil Fácil

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Estrutura Interna da Camada de Rede

Circuitos Virtuais x Datagramas

Item Sub-rede de Datagramas Sub-rede de CVs

Onde está a complexidade das funções necessárias?

Na camada de Transporte Na camada de Rede

Qualidade de serviço

Difícil Fácil, se for possível alocar recursos suficientes com antecedência para cada CV

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

• Se a sub-rede utiliza datagramas internamente, a cada pacote que chega deve ser decidida qual a rota a seguir.

• Se a sub-rede utiliza CVs, somente a cada nova conexão a decisão da rota será tomada.

• Independente do algoritmo de roteamento adotado, ele deve observar algumas propriedades básicas para que o algoritmo seja utilizável.

2. Roteamento

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Propriedades de um Algoritmo de Roteamento

2. Roteamento

Correção Funcionar sem erros.

Simplicidade De fácil entendimento e manutenção.

Estabilidade Em condições normais, manter constante sua

forma de operação.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Propriedades de um Algoritmo de Roteamento

2. Roteamento

Robustez Isolar uma rede de grande porte de falhas de

hardware e de software, do número de hosts, do número de roteadores, do número de linhas e de mudanças na topologia, não exigindo a reinicialização da rede a cada ocorrência de falha.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Propriedades de um Algoritmo de Roteamento

2. Roteamento

Equidade Ser imparcial.

Otimização Obter a melhor situação possível.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Conflito entre Equidade e Otimização

2. Roteamento

Tráfego intenso entre AA’, BB’ e CC’

X

B’

X’

C’

CB

A’

A

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Conflito entre Equidade e Otimização

2. Roteamento

• Tráfego intenso entre AA’, BB’ e CC’ saturando a rede.

• Para maximizar o fluxo dever-se-ia interromper o tráfego XX’, o que pode não ser possível.

X

B’

X’

C’

CB

A’

A

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Conflito entre Equidade e Otimização

2. Roteamento

• Estabelecer uma relação de compromisso entre equidade e otimização para diminuir o número de hops diminuindo, com isto, o tempo de retardo para um pacote chegar ao seu destino e, desta forma, melhorar o throughput da rede.

X

B’

X’

C’

CB

A’

A

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Classes de Algoritmos de Roteamento

2. Roteamento

• Adaptativos

• Não adaptativos

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Classes de Algoritmos de Roteamento

2. Roteamento

Adaptativos

Baseiam suas decisões de roteamento em medidas, ou estimativas, do tráfego da rede e na topologia.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Classes de Algoritmos de Roteamento

2. Roteamento

Não Adaptativos

Baseiam suas decisões de roteamento no algoritmo, independentemente do tráfego na rede, e com base na topologia atual.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento pelo caminho mais curto

O conceito de caminho mais curto entre uma origem e um destino pode variar, dependendo do

• Menor número de hops

• Menor distância geográfica

• Menor tempo para percorrer o caminho

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento por inundação (flooding)

Cada pacote de entrada é enviado para todas as linhas de saída, exceto para aquela em que chegou (conexões ponto-a-ponto).

Este algoritmo gera uma vasta quantidade de pacotes duplicados, e há a necessidade de uma técnica para minimizar este efeito.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento por inundação (flooding)

Uma das técnicas possíveis é a adoção de contador de hops no cabeçalho do pacote, o qual é decrementado cada vez que o pacote passa por um roteador. Quando o contador zerar, o pacote é descartado.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento por estado de enlace

Este algoritmo prevê que cada roteador da sub-rede deve fazer o seguinte:

1.Descobrir seus vizinhos e aprender seus endereços de rede.

2.Medir o retardo, ou o custo, até cada um de seus vizinhos.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento por estado de enlace

3. Criar um pacote que informe tudo o que ele acabou de aprender.

4. Enviar esse pacote a todos os outros roteadores.

5. Calcular o caminho mais curto até cada um dos outros roteadores.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento por estado de enlace

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento hierárquico

À medida em que as redes aumentam de tamanho, as tabelas de roteamento dos roteadores crescem proporcionalmente.

Não apenas a memória do roteador é consumida por tabelas cada vez maiores, mas também é necessário dedicar maior tempo da CPU para percorrê-las e mais largura de banda para enviar as informações dos status delas.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento hierárquico

O roteamento hierárquico resolve esta situação, como já ocorre na rede telefônica.

Neste caso, os roteadores são divididos por regiões, com cada roteador conhecendo todos os detalhes sobre como rotear pacotes para destinos dentro de sua própria região, mas sem conhecer nada sobre a estrutura interna das outras regiões.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento hierárquico

Figura: www.informatica.hsw.uol.com.br

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento por difusão (broadcasting)

Em algumas aplicações, os hosts precisam enviar mensagens a muitos outros hosts (ou a todos os outros hosts).

Por exemplo, para um relatório sobre o tempo, para a atualização do mercado de ações ou para programas de rádio é preciso enviar as informações por difusão a todas as máquinas que queiram recebê-las.

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Exemplos de Algoritmos de Roteamento

2. Roteamento

Roteamento por difusão (broadcasting)

Prof. ArthurProf. ArthurTransmissão de DadosTransmissão de Dados A Camada de RedeA Camada de Rede

Transmissão de DadosTransmissão de Dados

Prof. ArthurProf. Arthurarthur@unip.brarthur@unip.br

20092009

O Modelo de Referência TCP/IPA Camada de Rede