TL012 Introdução às Redes de Telecomunicações

242
Pós-Graduação: Eng. de Redes e Sistemas de Telecomunicações TL012 Introdução às Redes de Telecomunicações Prof. Edson J. C. Gimenez Campinas 2016 Créditos: - Prof. Antônio Marcos Alberti - Prof. Carlos R. dos Santos - Prof. José Marcos Câmara Brito

Transcript of TL012 Introdução às Redes de Telecomunicações

Pós-Graduação: Eng. de Redes e Sistemas de Telecomunicações

TL012 – Introdução às Redes de Telecomunicações

Prof. Edson J. C. Gimenez

Campinas 2016 Créditos:

- Prof. Antônio Marcos Alberti

- Prof. Carlos R. dos Santos

- Prof. José Marcos Câmara Brito

2

Conceito:

Critério de avaliação:

Prova (com consulta) – peso 8

Lista de Exercícios – peso 2

Conceito Final:

Conceito A: NF ≥ 85

Conceito B: 70 ≤ NF < 85

Conceito C: 50 ≤ NF < 70

Conceito D: NF < 50

Conceito E: NC

3

Referências Bibliográficas

Tanenbaum e Wetherall – Redes de Computadores, 5a ed.

Pearson,2011.

Forouzan – Comunicação de Dados e Redes de Computadores,

4ª ed. McGraw Hill, 2008.

Stallings – Redes e Sistemas de Comunicação de Dados, 5a ed.

Campus, 2005.

Peterson e Davie – Redes de Computadores: uma abordagem de

sistemas, 5a ed. Campus, 2013.

Kurose e Ross – Redes de Computadores e a Internet: uma

abordagem top-down, 6a ed. Pearson, 2013.

Wendell Odon – CCNA ICND: Guia de Certificação do Exame.

Alta Books, 2005.

Unidade I – Introdução

TL012 – Introdução às Redes de Telecomunicações

5

Tópicos

Contextualização

Classificação das Redes

Métricas de Desempenho

Técnicas de Comutação

Padronização de Redes

Modelo de Referência OSI

Meios de Transmissão

Topologias

6

Contextualização

O que é Comunicação?

O que é Telecomunicação?

Fonte

: M

ichaelis

e W

ikip

edia

“Ação, efeito ou meio de comunicar”. “É o processo pelo qual uma informação gerada em um ponto no espaço e no tempo chamado fonte é transferida a outro ponto no espaço e no tempo chamado destino”.

“Denominação geral das comunicações a distância”. “É a transmissão, emissão ou recepção, por fio, radioeletricidade, meios ópticos ou qualquer outro processo eletromagnético, de símbolos, caracteres, sinais, escritos, imagens, sons ou informações de qualquer natureza”.

7

Contextualização O que é Informação?

Quais são os requisitos para uma telecomunicação?

Fonte

: M

ichaelis

e W

ikip

edia

“Informação: do latim informatione. Ato ou efeito de informar.” “Informação é um conjunto de dados que quando reunidos são capazes de informar”.

Alguém ou algo que receba a informação. Alguém ou algo que transmita a informação. Um sistema ou rede capaz de transportar a informação.

8

Como colocar a informação no sistema ou rede?

Como retirar a informação do sistema ou rede?

Contextualização

Através do uso de um terminal.

Através do uso de um terminal.

9

Contextualização Como representar a informação nos terminais?

Como transmitir a representação da informação?

Valores contínuos: Analógico.

Valores discretos: Digital.

010010100010101

Utilizando ondas eletromagnéticas que se propagam através de um meio físico.

Esta função é chamada de Codificação de Fonte.

Esta função é a Codificação de Linha ou a Modulação.

10

Contextualização Como separar o inicio de uma informação e o final da

anterior?

Como lidar com erros de transmissão?

Através de controles anexados a informação:

Cabeçalho + Carga Útil = Quadro

Utilizando redundância: É a função de Controle de Erro.

Fazendo retransmissões: É a função Retransmissão Automática.

Esta função é chamada de Delineamento de Quadro.

01010101 11010100 11110101

Info 3 Info 2 Info 1

01010101 110???00 11110101

Info 3 Info 2 Info 1

11

Contextualização Como paralisar o envio de informações para um terminal

lento?

E se houverem mais que dois terminais na rede?

Através de controles de fluxo.

A solução envolve a Topologia física da rede, bem como a técnica de Múltiplo Acesso a ser usada.

Esta função é chamada de Controle de Fluxo.

11010100 11110101

Info 2 Info 1

?

12

Contextualização Qual topologia física usar?

Qual a técnica de múltiplo acesso usar?

E se várias estações transmitirem simultaneamente em um

meio físico compartilhado?

Anel, barramento, estrela, malha, etc.

Particionamento de canal, acesso aleatório, passagem de permissão, hibridas, etc.

Haverá colisões, e uma técnica de Múltiplo Acesso adequada deve ser usada para realizar retransmissões.

13

?

Contextualização Como ampliar a rede para atender terminais em uma

cidade inteira?

A solução é utilizar elementos de rede, bem como funções de Comutação e Roteamento.

14

Contextualização Como determinar o terminal de destino de uma dada

informação?

A solução é utilizar esquemas de Endereçamento e informações no cabeçalho dos quadros.

?

01010101

Info 1?

15

Contextualização Como transmitir informações enormes, como um DVD?

Como recuperar estas informações do outro lado?

E se der erro?

A solução é Fragmentar esta informação em um grande número de pacotes.

A solução é Remontar esta informação a partir de um grande número de pacotes recebidos com sucesso.

Novamente, usando a função de Retransmissão Automática.

Classificação das Redes (quanto a área de abrangência)

Local Area Networks (LANs)

Metropolitan Area Networks (MANs)

Wide Area Networks (WANs)

Personal Area Networks (PANs)

16

Características:

Operam dentro de uma área geográfica limitada

Permitem o acesso múltiplo a meios físicos com uma grande

largura de banda (altas taxas)

Controle privativo da rede, sob administração local

Fornece conectividade ininterrupta aos serviços locais

Conecta dispositivos fisicamente adjacentes

Redes Locais - LANs

17

Principais dispositivos:

Principais tecnologias:

Ethernet (IEEE802.3)

Wi-Fi (IEEE802.11)

Redes Locais - LANs

18

Características:

Operam em uma ampla área geográfica

Permitem o acesso através de interfaces seriais operando a

baixas velocidades

Fornece conectividade ininterrupta e intermitente

Conecta dispositivos separados através de grandes áreas

geográficas

Redes Longa Distância – WANs

19

Principais dispositivos:

Principais tecnologias:

Sistemas celular (2G, 3G, 4G, ...), Sistemas Satélite,

IP/MPLS, xDSL, Frame Relay, Hierarquias digitais T (EUA) e

E (Europa), ATM, SONET, etc.

Redes Longa Distância – WANs

20

Características:

Rede que abrange uma área metropolitana (uma cidade ou

uma área suburbana).

Geralmente consiste em uma infraestrutura permitindo

interligar redes locais em uma mesma área geográfica,

servindo ainda de acesso a WAN.

Principais tecnologias:

WiMAX, Redes Mesh, FDDI, etc.

Redes Metropolitanas – MANs

21

Características:

Rede que abrange uma área bastante limitada; tipicamente,

com os dispositivos bastante próximos uns dos outros.

Exemplo: Bluetooth – IEEE802.15

Redes de Área Pessoal – PANs

22

Internet

A Internet é um conglomerado de redes (rede de redes).

Não é de propriedade de nenhum grupo, porém alguns

órgãos (associações) cuidam de seus padrões e controle,

tais como IETF, IANA, Comitê Gestor de Internet no Brasil

(CGI), etc.

23

Dispositivos Finais:

Formam a interface entre o usuário e a rede de comunicação.

Exemplos:

Computadores (estações de trabalho, laptops, servidores de

arquivo, servidores Web), impressoras de rede, telefones

VoIP, câmeras de segurança, dispositivos móveis, etc.

No contexto de rede, são mencionados como hosts

Um dispositivo host pode ser tanto a origem ou o destino de

uma mensagem transmitida pela rede.

Para distinguir um host de outro, cada host em uma rede é

identificado por um endereço.

Dispositivos de Rede

24

Dispositivos Intermediários:

Fornecem conectividade e operam por trás do cenário para

garantir que os dados fluam através da rede.

Conectam os hosts individuais à rede e podem conectar

múltiplas redes individuais para formar uma internetwork

(rede interconectada).

Exemplos:

Dispositivos de Acesso a Rede (hubs, switches, access

points (APs))

Dispositivos de Redes Interconectadas (roteadores)

Servidores e Modems de Comunicação

Dispositivos de Segurança (firewalls, IDS)

Dispositivos de Rede

25

26

Fatores que Impactam no Desempenho da Rede

Pode-se citar os seguintes fatores:

Estabelecimento de Conexões

Empacotamento

Armazenamento

Roteamento/Comutação

Escalonamento

Contenção

Acesso ao Meio

Transmissão/Propagação

Erros

Falhas

Segmentação/Remontagem

27

Estabelecimento de Conexões

Em muitas tecnologias, as informações dos clientes da

rede só podem ser enviadas, se uma conexão for

estabelecida de antemão.

O estabelecimento de conexões, demanda o envio de

mensagens de sinalização, através da rede, que além de

consumir recursos da rede, acrescentam um atraso inicial

na transmissão de dados.

28

Empacotamento

Muitas vezes, a taxa de chegada de informações dos

clientes da rede é inferior ao tamanho dos pacotes

utilizados.

Neste caso, é necessário o

armazenamento temporário das

informações, até que haja

informações suficientes

para preencher um pacote.

Tamanho do pacote

Atraso de empacotamento

Amostra Amostra

Amostra Amostra

Cabeçalho Payload

29

Armazenamento e Escalonamento

Redes que utilizam comutação de pacotes compartilham

recursos de transmissão, aumentando a eficiência de uso

dos recursos.

Entretanto, em algumas situações, o tráfego de pacotes

pode ser maior do que a capacidade de transmissão da

rede.

Nestes casos, estruturas de armazenamento de pacotes

precisam ser utilizadas (filas ou buffers).

Porta 0

Porta 1

Porta 2

0 0

Porta 0

Porta 1

Porta 2 10 pacotes/segundo

5 pacotes/segundo

0 0 E

E

E

30

Armazenamento e Escalonamento

Escalonadores (E) são utilizados em pontos de

armazenamento, para selecionar a ordem em que os

pacotes serão servidos.

Filas cheias causam a perda de pacotes e

retransmissões.

Escalonadores simples não permitem a priorização de

tráfego.

Porta 0

Porta 1

Porta 2

0 Porta 0

Porta 1

Porta 2

0 0 E

E

E

0

5 pacotes/segundo 0 0

5 pacotes/segundo

31

Roteamento e Comutação

Em cada nó da rede, os pacotes precisam ser

encaminhados na direção do cliente de destino.

Este encaminhamento demanda por tempo de

processamento, tanto em comutadores, quanto em

roteadores.

Os algoritmos de roteamento influenciam diretamente na

carga em cada enlace e, consequentemente, no tempo de

espera nas filas.

32

Acesso ao Meio

Quando existe compartilhamento do meio de transmissão,

protocolos de controle de acesso ao meio são utilizados.

Estes protocolos impactam no tráfego da rede, limitando-o

em termos de vazão e acrescentando atraso (devido as

retransmissões).

33

Transmissão e Propagação

Dependendo do meio de transmissão utilizado e das

distâncias a serem percorridas, atrasos de propagação

significativos podem ser introduzidos.

Se a taxa for pequena, o atraso de transmissão pode ser

significativo para grandes pacotes.

T R

0

1

N

0

1

N

propagação

transmissão Tamanho do pacote

Atraso de transmissão

Distância Atraso de propagação

34

Erros e Falhas

Probabilidades de erro de bit podem variar desde

aproximadamente 10-3 (transmissão wireless) até 10-12

(transmissão em fibra óptica).

Em situações drásticas, a ocorrência de erros de

transmissão, impacta não só na perda de informações,

mas também no atraso devido a retransmissões.

Probabilidade erro

Probabilidade de perda de informações

Probabilidade de retransmissão

35

Erros e Falhas

De forma geral, quanto maior for um pacote, maior a

probabilidade de que ocorra um erro/falha durante a sua

transmissão.

Falhas podem ocorrer no meio de transmissão, se ele for uma fibra ou um cabo, e nos equipamentos eletrônicos/ópticos da rede.

Em algumas tecnologias, uma falha pode implicar, até no bloqueio de novas conexões e na redução da eficiência da rede.

Tamanho do pacote

Probabilidade de erro/falha de pacote

Probabilidade de retransmissão

36

Segmentação e Remontagem A segmentação de mensagens grandes, em vários

pacotes, introduz pequenos atrasos no envio da informação e reduz a eficiência de transmissão, uma vez que novos cabeçalhos deve ser inseridos.

A reconstrução de mensagens segmentadas implica no armazenamento de todos os pacotes, até que a mensagem original possa ser entregue ao destinatário.

Fragmentos Eficiência de transmissão

Pacote Tamanho do buffer

37

Segmentação e Remontagem Em alguns casos, é necessária a reordenação dos

pacotes recebidos, o que insere atrasos de processamento.

De forma geral, se um dos pacotes for perdido, será

necessária a sua retransmissão.

Em algumas tecnologias, toda a mensagem original

precisa ser retransmitida.

38

Overhead

Geralmente, cada camada insere informações de controle

dos seus protocolos no inicio (header) e/ou no final

(trailer) de cada pacote recebido.

header trailer

39

Métricas de Desempenho

O desempenho das redes de comunicações é tipicamente

medido através das seguintes métricas de desempenho:

Ocupação

Atraso

Perda

Bloqueio

Utilização

Vazão

Eficiência

40

Métricas de Desempenho

Ocupação

Mede a quantidade de elementos presentes em um

sistema.

Exemplo: a quantidade de carros em um estacionamento.

Nas redes de pacotes, mede a quantidade de bytes em uso

nos nós de rede, enquanto nas redes telefônicas mede o

número simultâneo de chamadas em uma central.

41

Métricas de Desempenho

Atraso

É o tempo parcial ou total gasto para realizar as funções

implementadas em cada camada da rede.

Praticamente todas as atividades realizadas para enviar ou

processar informações implicam na ocorrência de atrasos.

Dentre os principais atrasos existentes estão:

Atraso de Estabelecimento de Conexões

Atraso de Empacotamento

Atraso de Transmissão/Propagação

Atraso de Armazenamento

Atraso de Roteamento/Comutação

Atraso de Segmentação/Remontagem

Atraso de Retransmissão

Atraso de Processamento

42

Métricas de Desempenho

Perda

Indica se a rede está perdendo pacotes.

As principais causas de perda de pacotes são:

Falta de recursos de armazenamento.

Erros ou falhas.

Congestionamento.

Atraso elevado.

Colisão no acesso ao meio.

Total

PerdidoP

43

Métricas de Desempenho Bloqueio

Em algumas tecnologias, se a rede não possui mais

recursos para atender uma nova conexão, esta poderá ser

bloqueada.

Utilização Indica a fração dos recursos de

transmissão/armazenamento que

estão sendo utilizados.

Capacidade

VazãoU

Capacidade

OcupaçãoU

Tentativas

InsucessosB

44

Métricas de Desempenho

Vazão

Indica a taxa efetiva de transmissão.

Algumas tecnologias que utilizam o compartilhamento do

meio físico podem possuir uma vazão consideravelmente

abaixo da capacidade de transmissão disponível.

Eficiência

Indica a razão entre a quantidade de informação útil

transmitida e a quantidade total de informações utilizadas

para efetivar tal transmissão (carga útil + overhead).

ControlesInformação

Informação

45

Técnicas de Comutação

Comutação de Circuitos

Modo de Operação Orientado a Conexão

Comutação de Pacotes

Modo de Operação Não Orientado a Conexão

Datagramas

Circuitos Virtuais

Datagramas x Circuitos Virtuais

46

Comutação de Circuitos

Implica na existência de um enlace dedicado de

comunicação entre dois usuários, que é composto por uma

seqüência de enlaces conectados entre si através dos nós

da rede.

Em cada enlace um canal dedicado é alocado para a

conexão entre os usuários.

Na comutação de circuitos, a informação é transportada

como um fluxo contínuo de bits.

47

Comutação de Circuitos Em cada nó os comutadores devem ter a inteligência para

alocar canais e recursos de comutação e para encontrar uma rota através da rede.

A comutação de circuitos pode ser ineficiente, pois a capacidade alocada nem sempre é utilizada por completo durante a duração da conexão.

Entretanto, uma vez estabelecida a conexão, os dados são transmitidos a uma taxa constante e com um atraso fixo.

Uma das maiores vantagens da comutação de circuitos é a sua transparência.

48

Modo de Operação Orientado à Conexão

Antes que qualquer informação possa ser transmitida pela

rede, é necessário o estabelecimento de um circuito fim a

fim entre os usuários.

Geralmente, este procedimento é feito através do

roteamento de mensagens de sinalização pela rede.

Os nós da rede reservam canais para atender as

requisições de conexões e enviam adiante mensagens de

sinalização para os próximos nós da rede, até que um

circuito fim a fim seja estabelecido entre os usuários finais.

49

Comutação de Pacotes

Não existe um enlace dedicado para a comunicação entre

dois usuários: seus pacotes podem compartilhar um ou

mais enlaces da rede. Ou seja, os enlaces da rede não

estão explicitamente reservados para os usuários.

O compartilhamento é feito na camada de enlace.

50

Comutação de Pacotes As informações são transmitidos através de pacotes, que

podem ser de tamanho fixo ou variável.

Quando um usuário tem uma mensagem muito grande para ser transmitida, esta mensagem pode ser quebrada em vários pacotes através de um procedimento chamado de segmentação.

No destino, os pacotes são remontados na mensagem original através de um procedimento chamado remontagem.

51

Comutação de Pacotes Cada pacote contém uma porção com os dados do usuário

(carga útil ou payload) e uma porção com informações de controle e de endereçamento (cabeçalho ou header), que são utilizadas para rotear/encaminhar os pacotes pela rede.

Em cada nó da rede, os pacotes são recebidos, armazenados e roteados/encaminhados para o próximo nó em função dos seus endereços de destino/identificadores virtuais.

52

Comutação de Pacotes Em cada nó recursos de comutação e de armazenamento

podem ou não ser reservados para atender o tráfego de pacotes dos usuários.

Na comutação de pacotes, a eficiência dos canais é alta, pois eles podem ser dinamicamente compartilhados por muitos pacotes de vários usuários ao mesmo tempo.

Porém, os pacotes podem enfrentar atrasos variáveis, e até mesmo serem descartados dependo do nível de congestionamento da rede.

53

Comutação de Pacotes Devido as estas características, as redes de comutação de

pacotes são bem mais flexíveis que as redes de comutação de circuitos, podendo atender uma gama em maior de taxas de transmissão.

Quando as redes de comutação de circuitos estão congestionadas, novas conexões podem ser bloqueadas.

Porém, em redes de comutação de pacotes, novas conexões são sempre aceitas, podendo ocasionar o aumento do atraso e freqüentemente a perda de pacotes.

Redes de comutação de pacotes permitem a utilização de prioridades, permitindo portanto beneficiar a qualidade de serviço de algumas conexões em prol de outras.

54

Modo de Operação Não Orientado à Conexão

Não é necessário o estabelecimento de um circuito fim a

fim entre os usuários antes de iniciar a transmissão de

dados.

Mas como os pacotes são

enviados pela rede até o destino

se nenhum caminho foi estabelecido?

A solução para este problema é conhecida como

comutação de pacotes baseada em datagramas.

55

Datagramas

No roteamento de datagramas, cada pacote é tratado

independentemente, sem nenhuma referência com os

pacotes enviados anteriormente, a não ser pelo endereço

do destinatário.

Em cada nó da rede, tabelas de roteamento são usadas

para encaminhar os pacotes, que podem ser enviados por

diferentes caminhos através da rede.

56

Datagramas

Por causa disto, pacotes recém enviados podem chegar

antes no destino do que pacotes enviados anteriormente.

Para resolver este problema, no destino os pacotes devem ser reordenados.

A determinação do trajeto dos pacotes é feito através de um algoritmo de roteamento.

Em cada nó, os pacotes são comutados em função de

uma tabela de roteamento.

57

Datagramas

Usuário A

Usuário C

RoteadorRoteador

Roteador Roteador

3 2 1 1

3

2

3 2 3 2 1

Usuário D

Usuário B

1

58

Circuitos Virtuais

A comutação de pacotes também utilizar o modo de

operação orientado a conexão.

Esta solução é conhecida como comutação de pacotes

baseada em circuitos virtuais.

Neste caso, uma rota predefinida é estabelecida antes que

os pacotes sejam enviados.

Inicialmente, um pacote de requisição de conexão é

enviado ao primeiro nó da rede, que decide se aceita ou

não a nova conexão.

59

Circuitos Virtuais

Se a conexão for aceita por este nó, o pacote de

requisição de conexão é enviado para um próximo nó da

rede, que é escolhido de acordo com critérios de custos e

do endereço de destino.

O pacote de requisição prossegue até o nó mais próximo

do destino.

Se todos os nós concordaram com a nova conexão, a

transmissão de pacotes de dados é iniciada sobre a

mesma rota do pacote de requisição.

60

Circuitos Virtuais

Usuário A

Usuário C

RoteadorRoteador

Roteador Roteador

3 2 1

3 2 1

Usuário D

Usuário B

3 2 1

1

2

3

61

Padronização de Redes

Projetar e implementar redes de comunicação utilizando

soluções de diferentes fabricantes é uma tarefa árdua.

Cada fornecedor e revendedor de soluções de rede

possui o seu próprio ponto de vista, idéias, visão

sistêmica, implementações, soluções, etc.

Neste contexto, padronizações representam o consenso

entre diversos players, sendo extremamente importantes

na evolução e aceitação de novas tecnologias.

62

Padronização de Redes

Produtos que obedecem padrões:

Aumentam o tamanho do mercado.

Permitem a produção em massa.

Fornecem economias de escala.

Reduzem o preço ao consumidor final.

Aumentam a aceitação.

Permitem a interoperação com outros fabricantes.

63

Padronização de Redes

Dentre os principais organismos de padronização

existentes hoje, podemos destacar:

ITU (International Telecommunication Union)

ISO (International Standards Organization)

ANSI (American National Standards)

NIST (National Institute of Standards and Technology)

IEEE (Institute of Electrical and Electronics Engineers)

IS (Internet Society)

ABNT (Associação Brasileira de Normas Técnicas)

64

Padronização de Redes

ITU (International Telecommunication Union)

Organismo internacional que atua em três setores:

Radio Communications Sector (ITU-R).

Telecommunications Standardization Sector (ITU-T).

Development Sector (ITU-D).

Inclui quatro classes de membros:

Governos Nacionais

Membros do Setor (fornecedores, prestadores de serviço, operadoras,

companhias de mídia)

Membros Associados (pequenas organizações interessadas em um

assunto específico)

Agências Reguladoras

65

Padronização de Redes

ISO (International Standards Organization)

Constituída a partir de 89 organizações de padronizações

nacionais.

Atua num número muito grande de áreas que vão desde

administração (ISO 9000) até telecomunicações (ISO

8602), passando por diversas áreas da indústria, sociedade

e governo.

Coopera com o ITU-T para evitar a ironia de produzir dois

padrões oficiais e internacionais mutuamente

incompatíveis.

ANSI (American National Standards)

Representante dos EUA na ISO.

Apesar do nome, é privada e não governamental.

Os padrões da ANSI são geralmente adotados pela ISO.

NIST (National Institute of Standards and Technology)

Seus padrões são obrigatórios para os produtos comercializados nos EUA.

IEEE (Institute of Electrical and Electronics Engineers)

Maior organização profissional do mundo.

Exemplos: 802.3 e 802.11.

66

Padronização de Redes

67

Padronização de Redes IETF (Internet Engineering Task Force)

A padronização da Internet tem os seus próprios mecanismos, muito diferentes daqueles utilizados no ITU-T e ISO.

O primeiro comitê criado para manter os pesquisadores em contanto e desenvolver a Internet foi o IAB (Internet Activities Board).

Quando um padrão era necessário, os membros da IAB anunciavam a mudança na forma de relatórios técnicos chamados de RFCs (Request for Comments).

Com o crescimento da Internet, muitos fabricantes começaram a desenvolver produtos para a Internet, e não queriam mudanças frequentes nos padrões.

Surgiu então a IETF, que possui representantes de um grande número de organizações.

68

Modelo de Referência OSI

Como organizar a rede de forma modular?

Como separar as diversas funções desempenhadas pelos

protocolos da rede?

Como tornar uma função independente das demais?

Arquitetura em camadas

As funções a serem executadas são organizadas em

grupos, que são alocados à camadas funcionais.

Reduz a complexidade do projeto.

É mais flexível no que diz respeito a modificações.

O número, o nome, o conteúdo e a função de cada camada

difere de uma rede para outra.

69

Modelo de Referência OSI

Arquitetura em camadas (cont.)

O objetivo de cada camada é oferecer determinados serviços

para as camadas superiores.

A camada N presta um serviço para a camada N+1.

O que se define em cada camada:

O serviço a ser executado.

Interface com as camadas superior e inferior.

70

Modelo de Referência OSI

Baseado em uma proposta desenvolvida por Day e

Zimmermann em 1983 no âmbito da ISO (International

Standards Organization).

É considerado a primeira iniciativa na direção da

padronização internacional de protocolos usados em

várias camadas.

Formalmente, é chamado de Modelo de Referência ISO

OSI (Opens Systems Interconnection), pois trata da

interconexão de sistemas de comunicações abertos.

71

Modelo de Referência OSI

Sumário das

Camadas e

seus Serviços.

• Controle de erro pto a pto

• Controle de acesso ao meio

• Endereçamento físico

• Seleção de caminhos (rotas)

• Endereçamento lógico

• Controle de Congestionamento

• Gerencia conexões fim a fim

• Controle de fluxo

• Controle de erro fim a fim

• Gerencia o diálogo entre as

aplicações

• Formatação/sintaxe

•Criptografia/Compressão

• Suporte às Aplicações da Rede

• Escolha do Meio Físico

• Modulação/Codificação de Linha

• Interfaceamento

72

Modelo de Referência OSI

Aplicação

Apresentação

Sessão

Transporte

Física

Rede

Enlace

7

6

5

4

3

2

1

Aplicação

Apresentação

Sessão

Transporte

Física

Rede

Enlace

7

6

5

4

3

2

1

Meio Físico

C7 Mensagem

C6 Mensagem C7

C5 Mensagem C7 C6

C4 Mensagem C7 C6 C5

C3 Mensagem C7 C6 C5 C4

C2 FCS Mensagem C7 C6 C5 C4 C3

1011100011110000 ........... 1110000011001001

Mensagem Mensagem

73

Modelo de Referência OSI

SAP (Service Access Point)

Ponto onde o serviço está disponível.

Os SAPs da camada N são os locais onde a camada N+1

consegue acessar os serviços oferecidos.

Cada SAP tem um identificador único.

PDU (Protocol Data Unit)

Unidade de dados que a camada N+1 passa para a camada

N, através do SAP.

Composta de uma parte de dados (SDU - Service Data Unit)

e uma parte de controle (PCI - Protocol Control Information).

74

Modelo de Referência OSI

Transmissão de Dados

SDU

SDU PCI

PCI SDU

PDU

Camada N+1

SAP

Camada N SDU

75

Modelo de Referência OSI

Recepção de Dados

SDU

SDU PCI

PCI SDU

PDU

Camada N+1

SAP

Camada N SDU

Arquitetura TCP/IP

A versão atual do TCP/IP foi padronizada

em 1981

A idéia chave do TCP/IP era fornecer

uma transmissão confiável de dados para

qualquer destino da rede sob quaisquer

circunstâncias.

Desde então, o modelo TCP/IP tornou-se

o padrão no qual a Internet se baseia.

76

Modelo OSI x Modelo TCP/IP

77

78

Modelo de Referência OSI x Pilha TCP/IP

Rede

IP

EstaçãoRoteador

EstaçãoRoteador

Física

Enlace

Internet

Transporte

Aplicação

Física

Enlace

Internet

Transporte

Aplicação

Física

Enlace

Internet

Física

Enlace

Internet

To:

Cc:

Subject:

[email protected]

Aula Final

[email protected]

Teste para mostrar a interação entre camadas.

APLICAÇÃO

TRANSPORTE

REDE

ENLACE

FÍSICO

SOFTWARE

DE

APLICAÇÃO

Software de origem

79

TRANSPORTE

REDE

ENLACE

FÍSICO

To:[email protected]

Cc: [email protected]

Subject: Aula Final

Prioridade: Urgent

Encryption: None

Teste para mostrar

a interação

entre as camadas.

CABEÇALHO

DADOS

APLICAÇÃO

SOFTWARE

DE

APLICAÇÃO

Aplicação de origem

80

APLICAÇÃO

REDE

ENLACE

FÍSICO

SOFTWARE

DE

APLICAÇÃO

To:[email protected]

Cc: [email protected]

Subject: Aula Final

Prioridade: Urgent

Encryption: None

Teste para mostrar

a interação

entre as camadas.

CABEÇALHO

DADOS

TRANSPORTE

OPTIONS

CHECKSUM URGENT POINTER

PORTA ORIGEM PORTA DESTINO

NÚMERO DE SEQÜÊNCIA

ACK

FLAGS CDC TAMANHO JANELA

Transporte de origem

81

APLICAÇÃO

TRANSPORTE

ENLACE

FÍSICO

To:[email protected]

Cc: [email protected]

Subject: Aula Final

Prioridade: Urgent

Encryption: None

Teste para mostrar a interação entre as camadas.

CABEÇALHO

DADOS

OPTIONS

END. IP DESTINO

V COMP. TOTAL

IDENTIFICAÇÃO

TTL

END. IP ORIGEM

OPTIONS

CHECKSUM URGENT POINTER

PORTA ORIGEM PORTA DESTINO

NÚMERO DE SEQÜÊNCIA

ACK

FLAGS CDC TAMANHO JANELA

CC TDS

FLAGS OFFSET

PROT. CHECK CABEÇAL.

SOFTWARE

DE

APLICAÇÃO

REDE

Rede de origem

82

APLICAÇÃO

TRANSPORTE

REDE

FÍSICO

Preâmbulo SFD FCS

SOFTWARE

DE

APLICAÇÃO

ENLACE

DA SA TY Info

To:[email protected]

Cc: [email protected]

Subject: Aula Final

Prioridade: Urgent

Encryption: None

Teste para mostrar a interação entre as camadas.

OPTIONS

END. IP DESTINO

V COMP. TOTAL

IDENTIFICAÇÃO

TTL

END. IP ORIGEM

OPTIONS

CHECKSUM URGENT POINTER

PORTA ORIGEM PORTA DESTINO

NÚMERO DE SEQÜÊNCIA

ACK

FLAGS CDC TAMANHO JANELA

CC TDS

FLAGS OFFSET

PROT. CHECK CABEÇAL.

Enlace de Origem

83

APLICAÇÃO

TRANSPORTE

REDE

ENLACE

FÍSICO

SOFTWARE

DE

APLICAÇÃO

APLICAÇÃO

TRANSPORTE

REDE

ENLACE

FÍSICO

SOFTWARE

DE

APLICAÇÃO

1010101010101011001101

010

Transmissão - Recepção

84

APLICAÇÃO

TRANSPORTE

REDE

FÍSICO

Preâmbulo SFD FCS

SOFTWARE

DE

APLICAÇÃO

ENLACE

DA SA TY Info

To:[email protected]

Cc: [email protected]

Subject: Aula Final

Prioridade: Urgent

Encryption: None

Teste para mostrar a interação entre as camadas.

OPTIONS

END. IP DESTINO

V COMP. TOTAL

IDENTIFICAÇÃO

TTL

END. IP ORIGEM

OPTIONS

CHECKSUM URGENT POINTER

PORTA ORIGEM PORTA DESTINO

NÚMERO DE SEQÜÊNCIA

ACK

FLAGS CDC TAMANHO JANELA

CC TDS

FLAGS OFFSET

PROT. CHECK CABEÇAL.

Enlace de destino

85

APLICAÇÃO

TRANSPORTE

ENLACE

FÍSICO

To:[email protected]

Cc: [email protected]

Subject: Aula Final

Prioridade: Urgent

Encryption: None

Teste para mostrar a interação entre as camadas.

CABEÇALHO

DADOS

OPTIONS

END. IP DESTINO

V COMP. TOTAL

IDENTIFICAÇÃO

TTL

END. IP ORIGEM

OPTIONS

CHECKSUM URGENT POINTER

PORTA ORIGEM PORTA DESTINO

NÚMERO DE SEQÜÊNCIA

ACK

FLAGS CDC TAMANHO JANELA

CC TDS

FLAGS OFFSET

PROT. CHECK CABEÇAL.

SOFTWARE

DE

APLICAÇÃO

REDE

Rede de destino

86

APLICAÇÃO

REDE

ENLACE

FÍSICO

SOFTWARE

DE

APLICAÇÃO

To:[email protected]

Cc: [email protected]

Subject: Aula Final

Prioridade: Urgent

Encryption: None

Teste para mostrar

a interação

entre as camadas.

CABEÇALHO

DADOS

TRANSPORTE

OPTIONS

CHECKSUM URGENT POINTER

PORTA ORIGEM PORTA DESTINO

NÚMERO DE SEQÜÊNCIA

ACK

FLAGS CDC TAMANHO JANELA

Transporte de destino

87

TRANSPORTE

REDE

ENLACE

FÍSICO

To:[email protected]

Cc: [email protected]

Subject: Aula Final

Prioridade: Urgent

Encryption: None

Teste para mostrar

a interação

entre as camadas.

CABEÇALHO

DADOS

APLICAÇÃO

SOFTWARE

DE

APLICAÇÃO

Aplicação de destino

88

To:

Cc:

Subject:

[email protected]

Aula Final

[email protected]

Teste para mostrar a interação entre camadas.

APLICAÇÃO

TRANSPORTE

REDE

ENLACE

FÍSICO

SOFTWARE

DE

APLICAÇÃO

Software de destino

89

90

Meios de Transmissão – camada física

A camada física fornece os meios para transportar os

bits que formam o quadro de camada de enlace de

dados através dos meios de transmissão.

Meios de transmissão:

Par trançado

Cabo coaxial

Fibra óptica

Espaço livre

Padrões de camada física

Organização

de

padronização

Padrões de rede

ISO • ISO 8877: Adotou oficialmente os conectores RJ (por exemplo, RJ-11, RJ-45)

• ISO 11801: Rede de cabeamento padrão semelhante a EIA/TIA 568.

EIA/TIA

• TIA-568-C: Telecomunicações - padrões do cabeamento, usados por quase

todas as redes de voz, vídeo e dados.

• TIA-569-B: Padrões de edifícios comerciais para caminhos e espaços de

telecomunicações

• TIA-598-C: Código de cores de fibra ótica

• TIA-942: Padrão da infraestrutura de telecomunicações para centros de

dados

ANSI • 568-C: Pinagens RJ-45.Co-desenvolvido com EIA/TIA

ITU-T • G.992: ADSL

IEEE • 802.3: Ethernet

• 802.11: LAN sem fio (WLAN) e mesh (certificação Wi-Fi)

• 802.15: Bluetooth

91

Vantagem: barato, fácil de instalar e possui baixa resistência à

corrente elétrica.

Desvantagem: limitado por distância e interferência de sinal.

Os dados são transmitidos como sinais elétricos.

Quanto maior a distância percorrida pelo sinal, mais ele se

degrada, maior sua atenuação.

Cabeamento de cobre

Internet Internet

92

Os três tipos principais de meio físico de cobre usados nas redes

são: par trançado não blindado (UTP), par trançado blindado

(STP) e Coaxial.

Cabeamento de cobre

93

Cabo de Par Trançado Não Blindado (UTP)

94

Cabo coaxial

95

Tipos de meio físico de fibra

96

Conectores de fibra de rede

97

Fibra x cobre

Problemas de

implementação

Meio físico em

cobre Fibra ótica

Largura de banda suportada 10 Mbps – 10 Gbps 10 Mbps – 100 Gbps

Distância Relativamente curto

(1 – 100 metros)

Relativamente alto

(1 – 100.000 metros)

Imunidade à interferência

eletromagnética e à

interferência da frequência de

rádio

Baixa Alta

(Totalmente imune)

Custos de meio físico e

conector Menor Maior

Habilidades necessárias para

a instalação Menor Maior

98

Padrões de cabeamento UTP

Fonte: Guia Completo de Cabeamento de Redes – José M. S. Pinheiro. Rio de Janeiro: Elsevier, 2003.

99

100

Transmissão sem Fio

Ideal para:

Usuários que desejam mobilidade.

Interligar pontos por onde é difícil (ou impossível) se passar

cabeamento físico.

Características dependem da faixa de frequência utilizada.

Fonte: Tanenbaum

Topologias

Definem a estrutura da rede.

Topologia Física:

Define o layout efetivo dos meios físicos - fisicamente, como

os dispositivos estão interligados

Anel

Barramento

Estrela (Estrela Estendida)

Malha (Aberta e Fechada)

Hierárquica.

Topologia Lógica:

Define (logicamente) como os meios físicos são acessados

pelos hosts para o envio de dados

Broadcast

Passagem de token

101

102

Topologias

(a) Barramento

(b) Anel

Computador

Cabo coaxial

fino 50 . Computador

repetidor

(HUB)

Domínio de colisão.

Conector em T.

Sem repetidores ou

comutadores.

Domínio de difusão ou

divisão de canal.

Informação circula

o anel.

103

Topologias

(a) Malha Completa

(b) Estrela

(c) Hierárquica – Malha Incompleta

Primeira rede telefônica:

telefone para telefone.

Segunda rede telefônica:

surge estação de comutação.

Terceira rede telefônica:

malha entre centrais.

104

Exercícios:

Unidade II – Camada de Enlace

TL012 – Introdução às Redes de Telecomunicações

106

Tópicos

Serviços Providos pela Camada de Enlace

Delimitação de Quadros

Controle de Erros

Controle de Fluxo

Protocolos de Retransmissão

HDLC

PPP

107

Serviços Providos pela Camada de Enlace

O objetivo da camada de enlace é lapidar um enlace de

transmissão ponto-a-ponto cru, transformando-o em um

enlace confiável e eficiente para a camada de rede.

Para isso os seguintes serviços são providos pela camada

de enlace:

Delineamento de Quadros

Controle de Erros

Controle de Fluxo

Transmissão de Dados Ponto-a-Ponto

Controle de Acesso ao Meio

Será discutido mais adiante.

108

Delineamento de Quadros

Para prover o serviço de transporte ponto a ponto a

camada de enlace conta com os serviços providos pela

camada física.

A camada física por sua vez tenta enviar os frames da

camada de enlace como um fluxo de bits através do meio

físico.

Este fluxo de bits pode sofrer erros durante a transmissão,

de forma que:

O número de bits recebido pode ser igual, menor ou maior

que o número de bits transmitidos.

Os bits recebidos podem estar corrompidos.

109

Delineamento de Quadros

Assim, a camada física confia para a camada de enlace a

detecção e, se necessário, a correção de erros.

A solução mais usual para resolver este problema é

calcular um checksum para cada frame transmitido e

transmiti-lo juntamente com o frame.

Quando o frame é recebido no destino, o checksum é

recalculado e comparado com o checksum recebido.

Se eles forem diferentes, a camada de enlace saberá que

ocorreu um erro e poderá tentar recuperar a informação

original danificada.

110

Delineamento de Quadros

Contudo, para calcular este checksum é preciso conhecer

o inicio e o fim de cada frame.

Uma possibilidade seria deixar intervalos de tempo entre

os frames, entretanto além de ineficiente esta solução

teria que contar com uma rede totalmente síncrona, o que

não existe na prática.

Assim, alguns métodos alternativos foram desenvolvidos:

Bytes de Flag com Enchimento de Bytes

Flags de Inicio e Fim com Enchimento de Bits

111

Delineamento de Quadros

Bytes de Flag com Enchimento de Bytes

Resolve o problema da resincronização após um erro,

através da utilização de bytes especiais no inicio e fim de

cada frame.

O valor do byte é o mesmo tanto no inicio quanto no final

de cada frame.

Este byte é conhecido por byte de flag ou byte bandeira.

Desta forma, se o receptor perder um frame, ele só precisa

procurar pelo próximo byte de flag para localizar o inicio do

próximo frame.

Dois bytes de flag consecutivos indicam o final de um frame

e o inicio de outro.

112

Delineamento de Quadros

Bytes de Flag com Enchimento de Bytes (cont.)

Entretanto, uma situação critica pode acontecer neste

método: o que aconteceria se no frame existisse um

caractere de dados igual ao byte de flag?

Para resolver este problema, a camada de enlace do

transmissor deve inserir um caractere especial de escape

(ESC) antes de qualquer byte de flag encontrado no frame.

Esta técnica é chamada de enchimento de bytes (byte

stuffing).

E se um byte igual ao caractere especial de escape

aparecer nos dados?

113

Delineamento de Quadros

Bytes de Flag com Enchimento de Bytes (cont.)

Também será inserido um caractere especial de escape a

sua frente, indicando que este caractere apareceu

naturalmente nos dados.

Fonte: Tanenbaum

114

Delineamento de Quadros Flags de Inicio e Fim com Enchimento de Bits

Neste método é utilizado um padrão de bits para indicar o início e o fim de um quadro, inserindo-se bits de escape quando a seqüência de início e/ou fim aparece dentro dos dados transmitidos.

A cada seqüência de 5 bits “1” consecutivos nos dados a serem transmitidos é inserido um bit de escape “0”.

Quando o receptor recebe 5 bits “1” consecutivos, seguido por um bit “0”, ele automaticamente retira o bit “0”.

115

Controle de Erros

Tendo resolvido o problema do delineamento de quadros,

o próximo problema é:

Como ter certeza que todos os frames transmitidos foram

recebidos sem erros e na ordem adequada pela camada de

rede?

A maneira usual de assegurar o envio confiável de

informações é provendo o transmissor com algum

feedback a respeito do que esta acontecendo na outra

ponta do enlace.

Tipicamente, isto é feito através do uso de um esquema

de confirmações positivas/negativas.

116

Controle de Erros

Se o transmissor recebe uma confirmação positiva

(positive acknowledgement) sobre um frame transmitido,

significa que este frame chegou no destino com sucesso.

Por outro lado, se o transmissor receber uma confirmação

negativa (negative acknowledgement) sobre um frame

transmitido, significa que este frame não chegou no

destino com sucesso.

Agora, o que aconteceria se um receptor nunca chegasse

a receber um frame transmitido devido a uma falha de

hardware?

117

Controle de Erros O receptor não faria nada, pois ele não tem motivo

nenhum para reagir.

Já o transmissor poderia ficar esperando para sempre pela confirmação positiva/negativa do frame transmitido.

Para resolver este problema a solução comumente adotada é a utilização de um relógio.

Quando o transmissor envia um frame, ele inicializa um relógio, que é configurado para expirar depois de um certo intervalo de tempo.

Este intervalo de tempo deve ser suficiente para que o frame seja transmitido, processado e confirmado.

118

Controle de Erros

Entretanto, se o frame ou a confirmação forem perdidas, o

relógio vai zerar alertando o transmissor de que algo deu

errado.

A solução óbvia neste caso é retransmitir o frame.

Agora, o que aconteceria se o relógio zerasse, o frame

fosse retransmitido, e por algum motivo, o frame anterior

também chegasse ao ponto de destino?

Para evitar este problema, geralmente são utilizados

números de seqüência de tal forma que o receptor possa

separar os frames originais de frames retransmitidos.

119

Controle de Erros

Mas como é feita a detecção/correção dos erros?

São acrescentados bits de detecção e correção de erros

(EDC) que oferecem redundância na transmissão.

Tanto os dados quanto o cabeçalho podem ser protegidos.

Quanto maior o número de bits EDC (Error Detection and

Correction) maior a proteção fornecida.

Quadro Quadro

120

Controle de Erros

Verificação de Paridade

Paridade com Bit único: Detecta erro de um único bit

Paridade Bi-dimensional: Detecta e corrige erros de um único bit

0 0

sem erros erro de paridade

erro de 1 bit corrigível

erro de paridade

bit de paridade

121

Controle de Erros

CRC – Cyclic Redundancy Checking

Dado um bloco de dados M(x), o transmissor gera um bloco

T(x), tal que T(x) seja exatamente divisível por um

polinômio gerador P(x) com grau r.

Para se obter T(x), deve-se multiplicar M(x) por xr, e dividir

o resultado por P(x). O resto desta divisão, ou seja R(x), é

somada a xr . M(x), produzindo:

T(x) = xr . M(x) + R(x)

No receptor, T’(x) é dividido por P(x). Se não houver resto,

T’(x) é considerado igual a T(x).

122

Controle de Erros

CRC – Cyclic Redundancy Checking

Mensagem = 1010001101 => M(x) = x9 + x7 + x3 + x2 +1

Polinômio gerador: P(x) = x5 + x4 + x2 + 1

Transmissão

1. M(x).xr = M(x).x5 = x14 + x12 + x8 + x7 + x5

2. xr.M(x)/P(x) = Q(x) + R(x)/P(x)

Q(x) = x9 + x8 + x6 + x4 + x2 + x

R(x) = x3 + x2 + x

3. T(x) = xr.M(x) + R(x)

T(x) = x14 + x12 + x8 + x7 + x5 + x3 + x2 + x

123

Controle de Erros

CRC – Cyclic Redundancy Checking

Mensagem = 1010001101 => M(x) = x9 + x7 + x3 + x2 +1

Polinômio gerador: P(x) = x5 + x4 + x2 + 1

Recepção

1. Divide-se T’(x)/P(x) = Q(x) + R(x)/P(x)

T’(x) = x14 + x12 + x8 + x7 + x5 + x3 + x2 + x

P(x) = x5 + x4 + x2 + 1

R(x) = 0

2. Se R(x) = 0, T’(x) = T(x).

124

Controle de Fluxo

Outro importante serviço provido pela camada de enlace é

o controle de fluxo.

O controle de fluxo visa resolver o seguinte problema: o

que fazer com um transmissor que transmite mais

informação do que o receptor pode aceitar.

Esta situação pode acontecer quando o transmissor está

rodando em uma máquina rápida (ou sem carga) e o

receptor em uma máquina lenta (ou sobrecarregada).

O transmissor continua enviando frames até que o

receptor fique completamente sobrecarregado e não

tenha outra alternativa a não ser descartar frames.

125

Protocolos de Retransmissão

Dentre os principais protocolos de retransmissão temos:

Protocolo Stop-and-Wait

Protocolos de Janela Deslizante

Go-Back N

Selective Repeat

Estes protocolos também são utilizados para controle de

fluxo e de congestionamento.

126

Protocolo Stop-and-Wait

O transmissor envia um frame e aguarda por uma

confirmação antes de enviar o próximo frame.

Se o frame recebido estiver corrompido, o receptor irá

descartá-lo.

Se o frame não for recebido, o transmissor irá retransmiti-

lo após um timeout.

A transmissão de quadros é half-duplex.

0 1 2 2 3 4 5 6

0 1 E

Timeout

2 3 4 5 6

Erro

127

Protocolo Stop-and-Wait É importante observar que tanto os frames de dados

quanto os de confirmação podem ser danificados ou perdidos completamente.

Em geral, assume-se que se um frame for danificado em trânsito, o hardware do receptor detectará este erro quando o checksum for computado.

Para contornar a ocorrência de erros de transmissão um relógio geralmente é utilizado no transmissor.

As confirmações são utilizadas não só para controle de fluxo mas também para efetuar retransmissões de frames perdidos.

128

Protocolo Stop-and-Wait

Números de seqüência são utilizados para evitar que um

mesmo frame seja enviado duas ou mais vezes para a

camada de rede no receptor.

Isto pode acontecer se uma confirmação positiva fosse

perdida.

Protocolos na qual o transmissor aguarda por uma

confirmação positiva antes de avançar para o próximo

frame são chamados de PAR (Positive Acknowledgment

with Retransmission).

129

Protocolos de Janela Deslizante

Outro avanço no aumento da eficiência de transmissão

são os chamados protocolos de Janela Deslizante (Sliding

Window).

Estes protocolos, ao invés de transmitirem um único frame

e aguardarem pela sua confirmação para que um próximo

frame possa ser transmitido, iniciam transmitindo vários

frames e avançam a janela de transmissão à medida que

confirmações vão sendo recebidas.

130

Protocolos de Janela Deslizante

Ou seja, o transmissor mantém um conjunto de números

de seqüência (igual ao tamanho da janela de transmissão)

correspondente aos frames que ele está autorizado a

transmitir.

Já o receptor, mantém um conjunto de números de

seqüência, correspondente aos frames que estão

autorizados a serem recebidos.

Tipicamente, o tamanho da janela de transmissão é igual

ao tamanho da janela de recepção, podendo permanecer

fixo em um determinado valor ou variar com o tempo.

131

Protocolos de Janela Deslizante

Sempre que um pacote chega da camada de rede para

ser transmitido, o transmissor aloca para o frame que

transportará este pacote o número de seqüência mais alto

disponível.

À medida que uma confirmação chega, a janela avança

eliminado o número de seqüência mais baixo.

A janela do transmissor mantém continuamente uma lista

de frames transmitidos, mas não confirmados.

132

Protocolos de Janela Deslizante

Fonte: Tanenbaum (a) Janela deslizante de tamanho 1, com 8 números de seqüência. (b) Após o envio do primeiro frame. (c) Após a recepção do primeiro frame. (d) Após a primeira confirmação ter sido recebida.

133

Protocolos de Janela Deslizante

O transmissor deve manter em um buffer os frames

transmitidos, a fim de retransmiti-los, em caso de perda

ou dano.

Assim, a capacidade de armazenamento deve ser igual ao

tamanho da janela utilizada.

Qualquer frame recebido que esteja fora da janela, será

descartado, sem qualquer comunicação ao transmissor.

Caso contrário, o frame é passado para a camada de

rede, uma confirmação é gerada, e a janela avança em

uma unidade.

134

Protocolos de Janela Deslizante

O envio de frames em paralelo através de um canal não

confiável possui uma complicação adicional: o que

acontece se um frame entre vários é danificado ou

perdido? O que o receptor deve fazer com os demais

frames que chegaram após o frame danificado?

Existem duas soluções possíveis:

Retransmitir todos os frames: Go-Back N

Retransmitir somente o frame perdido: Selective Repeat

135

Protocolo Go-Back N

Os frames 0 e 1 são corretamente recebidos.

O frame 2 é perdido.

O transmissor, sem saber do ocorrido, continua a enviar

frames, até que o relógio do frame 2 expire.

Quadros descartados no ato da chegada através da

verificação da numeração de seqüência.

Fonte: Tanenbaum

136

Protocolo Go-Back N

Então, o transmissor retransmite o frame 2 e todos os

demais frames na seqüência.

Neste caso, todos os frames recebidos após o frame 2 ter

sido perdido são descartados.

Embora a janela de recepção seja maior que 1, na

ocorrência de um erro, o receptor age como se tivesse

uma janela de tamanho 1.

137

Protocolo Selective Repeat

Os frames 0 e 1 são corretamente recebidos.

O frame 2 é perdido.

Quando o frame 3 chega ao receptor, este percebe que está faltando o frame 2 e envia uma confirmação negativa para o transmissor.

Fonte: Tanenbaum

Quadros armazenados em buffer.

Nak 2 – Não recebi o quadro 2.

Ack 1 – Confirma somente a recepção do quadro 1.

Ack 5 – Confirma a recepção de todos os quadro até 5.

138

Protocolo Selective Repeat

O frame 3, ao invés de ser descartado ou enviado à

camada de rede, é armazenado em um buffer.

Quando os frames 4 e 5 chegam, eles também são

armazenados.

Finalmente, a confirmação negativa do frame (NAK –

Negative Acknowledgment) 2 chega ao transmissor, que

retransmite este frame, imediatamente.

Quando o frame 2 retransmitido chega, todos os frames

são entregues à camada de rede em ordem.

139

Protocolo Selective Repeat

Se o NAK for perdido, o relógio do transmissor cairá a

zero para o frame 2 e ele será retransmitido, mas com um

atraso maior do que se o NAK tivesse sido recebido.

Portanto, o uso de confirmações negativas acelera a

retransmissão de frames em caso de falha.

Selective repeat corresponde a um receptor com uma

janela maior que 1.

Esta solução requer o uso de buffers com grande

capacidade de armazenamento na camada de enlace.

140

Comparação Go-Back N x Selective Repeat Go-Back N

Ignora toda a seqüência de frames a partir do errado.

Não confirma a recepção.

Aguarda a retransmissão de todos os quadros a partir do errado.

É um procedimento ruim para canais de comunicação com muito erro.

Selective Repeat

Guarda os quadros da seqüência após o quadro errado.

Não confirma o quadro errado.

Aguarda a retransmissão do mesmo.

É um procedimento bem mais eficiente em termos de aproveitamento de banda, mas requer mais memória no nível de enlace do receptor.

141

HDLC – High-level Data Link Control

O HDLC é um protocolo de transmissão de dados voltado

para a camada de enlace do modelo OSI.

O protocolo HDLC é um padrão da ISO (3309-1979)

desenvolvido a partir do SDLC – Synchronous Data Link

Control proposto pela IBM nos anos 70.

As principais funções do protocolo HDLC são:

1. Delineamento – Provê o delineamento de frames para a

transmissão sobre um enlace de rede síncrona.

2. Correção de Erros – Provê a detecção e correção de erros.

3. Controle de Fluxo – Provê o controle de fluxo dos frames.

142

HDLC - Tipos de estações

Estação Primária (Mestre)

Controla todas as outras estações do enlace.

Envia quadros de comando.

Mantém um enlace lógico separado para cada estação

secundária.

Estação Secundária (Escrava)

Sob controle da estação primária.

Envia quadros de resposta.

Estação Combinada

Pode enviar comandos e respostas.

143

HDLC - Configurações do enlace

Não-Balanceado

Uma estação primária e uma ou mais estações secundárias.

Suporta operação full duplex e half duplex.

Balanceado

Duas estações combinadas. Também suporta operação full

duplex e half duplex.

2ª 2ª 2ª

Comandos

Respostas

Combinada

Comandos

Combinada

Respostas

144

HDLC – High-level Data Link Control

O frame HDLC possui os seguintes campos:

Flag

São dois flags de delineamento 01111110 (0x7E), um no inicio e outro

no final do frame HDLC (Flags de Inicio e Fim com Enchimento de

Bits).

Pode encerrar um quadro e iniciar outro.

Receptor busca pela seqüência de flag para iniciar o sincronismo.

Bit stuffing usado para evitar confusão com dados contendo a

seqüência 01111110.

0 inserido após seqüência de cinco 1s.

Flag 01111110

(0x7E) Endereço Controle Dados Checksum

Flag 01111110

(0x7E)

145

HDLC – High-level Data Link Control

Endereço

Identifica a estação secundária que está enviando ou que irá receber

um determinado quadro.

Usualmente tem 8 bits.

LSB de cada octeto indica se o octeto é o último (1) ou não (0).

Todos os bits iguais a 1 indicam broadcast.

Controle

O campo de controle é usado para numeração de seqüência com

janela deslizante de 3 bits, confirmações e outros propósitos.

Checksum

Este campo é utilizado para detecção/correção de erros sobre parte do

frame HDLC.

146

PPP – Point-to-Point Protocol

O PPP é um protocolo desenvolvido para conectar

computadores a Internet através de enlaces ponto a ponto.

É descrito na RFC 1661 do IETF e consistente com as

Recomendações X.25 do ITU-T.

O PPP foi projetado para o transporte simplificado de

pacotes através de um enlace full-duplex com operação

bidirecional que assegura que os pacotes serão entregues

no destino em ordem.

147

PPP – Point-to-Point Protocol As principais funções do protocolo PPP são:

1. Delineamento – Fornece um método de enquadramento que delimita o início/fim de cada quadro com um padrão de bits.

2. Controle de Enlace – Provê um controle de enlace para ativar a linha de comunicação, testá-la, negociar opções e desativá-la quando não mais necessária. Isso é feito pelo sub-protocolo LCP (Link Control Protocol).

3. Controle de Rede – Provê um mecanismo de negociação de opções de rede, de modo independente do protocolo de camada de rede adotado. Isso é implementado por um NCP (Network Control Protocol) para cada camada de rede suportada.

4. Encapsulamento – Permite multiplexar diferentes protocolos de camada de rede simultaneamente em um mesmo enlace.

148

PPP – Point-to-Point Protocol

O frame PPP tem um formato parecido com o formato do

frame HDLC.

A maior diferença é que o PPP é orientado a caracteres

(enchimento de bytes), enquanto o HDLC é orientado a

bits (enchimento de bits).

O frame PPP possui os seguintes campos:

Flag 01111110

(0x7E)

Endereço 11111111

(0xFF)

Controle 00000011

Payload Checksum Flag

01111110 (0x7E)

Protocolo Enchimento

149

PPP – Point-to-Point Protocol

Flag – Todos os frames PPP iniciam com o mesmo byte de

flag utilizado no HDLC.

Endereço – É sempre configurado para 0xFF para indicar

que todas as estações podem aceitar o frame.

Controle – O valor default é 00000011. Este valor indica um

frame não numerado. Ou seja, o PPP por default não provê

a transmissão confiável usando números de seqüência e

confirmações. Os detalhes sobre a transmissão confiável

utilizando PPP são discutidos na RFC 1663. Na prática, é

pouco usada.

150

PPP – Point-to-Point Protocol

Protocolo – Identifica a qual protocolo pertence a informação

armazenada no payload. Foram definidos códigos para os

protocolos LCP, NCP, IP, IPX, AppleTalk, etc.

Payload – O tamanho máximo do campo de informações,

excluindo o campo de enchimento, é determinado pelo MRU

– Maximum Receive Unit, o qual possui o valor default de

1500 bytes. Outros valores podem ser negociados.

Enchimento – Na transmissão o campo de informações pode

ser preenchido por enchimento até que o valor do MRU seja

atingido. É de responsabilidade de cada protocolo de rede

distinguir entre informação e enchimento.

151

Exercícios:

Unidade III – Múltiplo Acesso

TL012 – Introdução às Redes de Telecomunicações

153

Tópicos

Introdução

Protocolos de Múltiplo Acesso

FDMA

TDMA

Aloha

Slotted Aloha

CSMA

CSMA-CD

CSMA-CA

Polling

154

Introdução

As redes de podem ser divididas em duas categorias de

acordo com o seu tipo de enlace:

As que usam enlaces ponto a ponto. Ex: PPP, ATM.

As que utilizam enlaces de difusão. Ex. Ethernet, WLAN.

Em qualquer enlace de difusão, a questão fundamental é

determinar quem tem direito de usar o canal quando há

uma disputa por ele.

Fonte: Kurose

155

Introdução

Existem vários protocolos destinados a solucionar este

problema.

Na literatura, os enlaces de difusão também são referidos

por canais de multiacesso ou canais de acesso aleatório.

Os protocolos usados para determinar quem será o

próximo em uma canal de multiacesso pertencem a uma

subcamada da camada de enlace, chamada subcamada

MAC (Medium Access Control Sublayer).

Estes protocolo são chamados de protocolos de acesso

múltiplo.

156

Protocolos de Múltiplo Acesso

Os protocolo de multiacesso podem ser classificados em

três classes:

Particionamento de Canal

Dividem o canal em pedaços menores (compartilhamentos de tempo,

freqüência).

Alocam um pedaço para uso exclusivo de cada nó.

Ex. TDMA, CDMA.

Acesso Aleatório

Permite colisões e provê “recuperação” de colisões.

Ex. Aloha, Slotted Aloha, CSMA, CSMA/CD, CSMA/CA.

Passagem de Permissão

Compartilhamento estritamente coordenado para evitar colisões.

Ex. Polling, Token Passing.

157

FDMA

Nesta técnica o recurso de comunicação compartilhado (o

transponder de um satélite, por exemplo) é dividido em

sub-canais, sendo que cada sub-canal ocupa uma banda

de freqüência e é alocado a uma estação.

Uma estação que deseje efetuar uma transmissão pode

fazê-lo a qualquer instante, utilizando o sub-canal a ela

associado.

Por razões de implementabilidade, existe uma banda de

guarda entre dois sub-canais adjacentes, resultando em

perda de capacidade.

158

FDMA

Estrutura Básica do FDMA

tempo

frequência

sub-canal 1

sub-canal 2

sub-canal 3

sub-canal M

banda de guarda

159

TDMA

Na técnica TDMA o tempo é dividido em períodos

sucessivos chamados de quadros.

Cada quadro é composto de M janelas sucessivas, e cada

janela de tempo é alocada a uma estação.

Cada estação da rede só pode transmitir durante sua

janela de tempo, podendo haver um tempo de espera

entre o instante em que uma estação deseja transmitir e o

instante em que ela pode começar a fazê-lo.

160

TDMA

Estrutura Básica do TDMA

tempo

frequência

1 2 3 M

tempo de guarda

161

Aloha

Desenvolvido na década de 1970 por Norman Abramson

e seus colegas na Universidade do Havaí.

Existem duas versões do Aloha:

Puro

Slotted

Elas diferem quanto ao fato de o tempo estar ou não

dividido em slots discretos, nos quais todos os quadros

devem ser ajustar.

162

Aloha

Na técnica de acesso denominada Aloha Puro as

estações transmitem no instante que desejarem, sem se

importar com as demais estações da rede.

Após transmitir um pacote, a estação passa a aguardar

uma mensagem de reconhecimento positivo por parte do

receptor.

Caso esta mensagem não seja recebida dentro de um

intervalo de tempo denominado timeout, uma colisão é

caracterizada, e a estação retransmite após um intervalo

aleatório de tempo.

163

Aloha

Probabilidade de uma Transmissão bem Sucedida

Fonte: Tanenbaum

164

Aloha

Um quadro será transmitido com sucesso, se:

Se nenhum outro quadro for transmitido no intervalo de tempo

entre t0 e t0 + t.

Se nenhum outro quadro for transmitido no intervalo de tempo

entre t0 + t e t0 + 2t.

A probabilidade de k quadros serem submetidos durante

um determinado tempo de quadro t é obtida pela

distribuição de Poisson:

!][

k

eGkP

Gk

t

165

Aloha

A probabilidade de não haver nenhum quadro em um

intervalo de tempo t é dado por Pt[0]:

Portanto, a probabilidade de que nenhum quadro seja

gerado em dois intervalos de tempo t (2t) é:

A vazão S = G.P[transmissão com sucesso em 2t]:

GG

G

t ee

P

!0

]0[0

GGG

t eeeP 2

2 ]0[

GGeS 2

166

Aloha

S é o número médio de bits transmitidos com sucesso por

segundo dividido pela taxa de transmissão no canal,

definido como vazão normalizada.

G é o número médio de bits transmitidos com e sem

sucesso por segundo dividido pela taxa de transmissão no

canal, definido como carga total normalizada.

S G G S

167

Aloha

O valor máximo de S ocorre quando:

Então:

Resolvendo tem-se G = 0.5. Assim, a vazão máxima será

S = 0.1839 ou S = 18.39 %.

0dG

dS

0 2 2 2 G G

Ge e dG

dS

168

Aloha

Desempenho do Aloha (S x G)

Smax = 0.184

A vazão máxima é de 18,4%

169

Slotted Aloha

No Slotted Aloha as estações somente podem iniciar uma

transmissão no inicio de cada time slot.

Esta mudança, fez com que o período de vulnerabilidade

do Aloha fosse reduzido pela metade, uma vez que

somente existe a possibilidade de colisão no “tempo de

quadro” t.

Assim, a vazão S = GP0 para o sistema slotted será:

GGeS

170

Slotted Aloha

O valor máximo de S pode ser encontrado fazendo-se

dS/dG = 0.

Neste caso, G = 1.

Assim, a vazão máxima será:

Em uma rede com M estações, a relação entre vazão e

carga é dada por:

368.01 1 eGeS G

1

1

M

M

GGS

171

Slotted Aloha

Desempenho do Slotted Aloha (S x G)

0 2 4 6 8 100

0.1

0.2

0.3

0.4

M = infinito

M = 10

M = 100

Carga to tal

Va

zão

A vazão máxima é de 36,8%

172

CSMA Os protocolos CSMA podem ser considerados um

refinamento dos protocolos Aloha.

No CSMA as estações escutam o meio antes de transmitir, e só o fazem se detectarem o meio livre.

Assim como no Aloha, a operação dos protocolos CSMA pode ser com divisão do tempo em janelas (slotted CSMA) ou não (unslotted CSMA).

Tipos

P-persistente

1-persistente

Não-persistente

173

CSMA p-Persistente

Se aplica a canais segmentados (slotted).

Uma estação, quando pronta para transmitir, escuta o

canal.

Daí seguem duas possibilidades: canal disponível e canal

ocupado.

Se ele estiver disponível, a estação poderá transmitir com

uma probabilidade p.

Ou seja, existe um probabilidade q = 1 – p de que haja

adiamento da transmissão até o inicio do próximo slot.

174

CSMA p-Persistente

Supondo que tenha havido um adiamento, se o próximo

slot também estiver desocupado, poderá haver uma

transmissão ou um novo adiamento com as

probabilidades p e q, respectivamente.

Este processo se repete até o quadro ser transmitido ou

até que outra estação inicie transmissão.

Neste último caso, a estação age como se tivesse havido

uma colisão (ou seja, aguarda durante um intervalo de

tempo aleatório e reinicia as tentativas de transmissão).

Se o canal estiver ocupado, a estação esperará pelo

próximo slot e reiniciará o algoritmo anterior.

175

CSMA 1-Persistente

Quando uma estação tem dados a transmitir ela primeiro

escuta o canal continuamente para ver se mais alguém

está transmitindo no momento.

Se o canal estiver ocupado, a estação espera até que ele

fique ocioso.

Quando o canal estiver desocupado, a estação transmite

um quadro.

176

CSMA 1-Persistente

Se ocorrer uma colisão, a estação espera um intervalo de

tempo aleatório e começa tudo de novo.

É denominado 1-persistente porque transmite com

probabilidade 1 sempre que encontra o canal

desocupado.

Vazão (unslotted)

)1(

)21(

1121

211aGaG

aG

eaGeaG

eaGGaGGGS

177

CSMA Não-Persistente

Antes de transmitir uma estação escuta o canal.

Se ninguém mais estiver transmitindo, a estação iniciará a

transmissão.

Entretanto, se o canal já estiver sendo utilizado, a estação

não permanece escutando continuamente a fim de se

apoderar de imediato do canal após detectar o fim da

transmissão anterior.

Em vez disso, a estação aguarda durante um intervalo de

tempo aleatório e, em seguida verifica a ociosidade do

canal.

178

CSMA Não-Persistente

Vazão:

sendo a o atraso de propagação normalizado com relação

ao atraso de transmissão de um pacote.

aG

aG

eaG

GeS

21unslotted

ae

aGeS

aG

aG

1slotted

.propa

179

Comparação CSMA

S x G (Não-persistente)

0.01 0.1 1 10 1000

0.2

0.4

0.6

0.8

1

unslotted e slotted, a = 0

unslotted, a = 0.01

slotted, a = 0.01

unslotted, a = 0.1

slotted, a = 0.1

unslotted, a = 1

slotted, a = 1

Carga total

Vazã

o1.0.

propaSe

então prop .10

180

CSMA-CD

A diferença do CSMA para o CSMA-CD (Carrier Sense

Multiple Access with Collision Detection) está na forma

como as colisões são detectadas.

No CSMA-CD as estações permanecem escutando o

meio durante sua transmissão para detectar possíveis

colisões.

Se uma colisão ocorre, as estações abortam a

transmissão de seus pacotes, transmitem um sinal de

reforço de colisão, e geram um atraso aleatório, após o

qual as estações voltam a escutar o meio para uma

tentativa de retransmissão do pacote.

181

CSMA-CD

A transmissão do sinal de reforço de colisão garante que

todas as estações que participaram da colisão a

perceberam.

Para garantir que as estações possam perceber se seus

pacotes sofreram colisão, os mesmos devem ter um

comprimento mínimo igual a duas vezes o máximo tempo

de propagação na rede.

As formas de implementação do CSMA-CD são similares

às do CSMA, ou seja, não-persistente, p-persistente e 1-

persistente, com divisão do tempo em janelas (slotted) ou

não (unslotted).

182

CSMA-CD

A expressão a seguir permite calcular a vazão (S) em

função da carga total (G) para o CSMA-CD unslotted não-

persistente, considerando-se uma rede com infinitas

estações:

representa o tempo de transmissão do reforço de colisão

normalizado em relação ao tempo de propagação.

aGaGaGaG

aG

eeaGeaGGe

GeS

2121

183

CSMA-CA

A Detecção de Colisão (Collision Detection) é uma boa

idéia para redes cabeadas, entretanto não pode ser usada

em redes wireless:

A implementação da detecção de colisão exigiria rádios

que podem receber e transmitir ao mesmo tempo. Isto

encareceria o custo consideravelmente.

Em um ambiente wireless não se pode garantir que todas

as estações conseguem ouvir as demais estações da rede.

Detectar o meio livre não significa que não haja um sinal de

rádio nas redondezas da estação.

184

CSMA-CA Para contornar este problema é utilizada a técnica de

Prevenção de Colisão (Collision Avoidance) junto com um mecanismo de confirmações positivas.

Uma estação que deseja transmitir “sente” o meio.

Se ele estiver ocupado a estação adia a transmissão por um tempo aleatório dado pelo algoritmo de backoff exponencial binário.

Se o meio estiver livre por um certo tempo (chamado DIFS - Distributed Inter Frame Space) a estação pode transmitir.

185

CSMA-CA

A estação destinatária irá verificar o quadro transmitido e

enviar uma confirmação positiva (ACK) se estiver tudo ok.

A recepção desta confirmação indica ao transmissor que

não houve colisão.

Agora, se a estação transmissora não receber o ACK,

então ela assume que houve uma colisão e retransmite o

quadro após um intervalo de tempo aleatório.

186

Polling O Rodízio de estações é uma técnica determinística de

múltiplo acesso que evita colisões.

Existe um nó controlador que executa o rodízio, determinando que estações estão autorizadas a transmitir e por quanto tempo.

O nó controlador deve divulgar a decisão para todas as estações da rede. Normalmente, em rede sem fio isto feito via broadcast.

Assim, toda estação que deseja transmitir deve solicitar autorização ao nó controlador, que baseado em políticas determina a ordem de transmissão.

187

Exercícios: Um engenheiro está em dúvida sobre qual protocolo de acesso aleatório deve

utilizar em um enlace de 1000 metros de comprimento. Os quadros são de tamanho

fixo igual a 40000 bits. A carga submetida é igual a 100 quadros por segundo. A

velocidade da luz no meio é de 250000 km/segundo. A taxa de transmissão no

enlace é de 1 Mbps. As opções de protocolo disponíveis são Slotted Aloha, CSMA

Não-Persistente Slotted e CSMA/CD Não-Persistente Unslotted.

Pede-se:

a) O valor do atraso de propagação normalizado? [a = 10-4 ]

b) O valor da vazão para o Slotted Aloha? [S = 0,073263]

c) O valor da vazão para o CSMA Não-Persistente Slotted? [S = 0,799808]

d) O valor da vazão para o CSMA/CD Não-Persistente Unslotted? [S = 0,79987]

Unidade IV – Endereçamento

TL012 – Introdução às Redes de Telecomunicações

189

Tópicos

Endereçamento Físico

Endereçamento Lógico

Endereçamento IP

Endereços Reservados

Endereços Públicos e Privados

Endereçamento Estático e Dinâmico

190

Endereço Físico

O endereço físico, ou endereço MAC, está associado ao

adaptador de rede (NIC).

Constituído de 48 bits, representados na forma

hexadecimal (Ex.: 00-06-5B-28-82-2B)

24 bits (OUI) + 24 bits (serial)

* OUI - Organizationally Unique Identifier

Cisco CCNA

191

Endereço Lógico

O endereço lógico, ou endereço IP, é atribuído pelo

administrador.

IPv4 (IP versão 4)

Constituído de 32 bits

Formato decimal com ponto

192.168.10.84

IPv6 (IP versão 6)

Constituído de 128 bits

Formato hexadecimal

1080::8:800:200C:417A

192

Verificando o endereçamento

193

Endereçamento IP

Endereço lógico (endereço de camada 3) composto de 32 bits (IPv4), divididos em quatro octetos 11000000.10101000.00000001.00001000

Representado na forma decimal com ponto 192.168.1.8

Formado por duas partes: identificação da rede (NetId)

identificação do host (HostId)

Endereçamento hierárquico Identifica de forma exclusiva as redes IP e seus hosts

O tamanho destinado para identificação da rede e dos hosts varia de acordo com a classe a que pertencem.

194

Endereçamento IP

Classes de endereçamento

Subdivisão de endereços:

Cls Intervalo decimal do 1º octeto

Bits de ordem superior do 1º octeto

ID de rede/host (N = Rede, H = Host)

Máscara de sub-rede padrão

Número de redes Hosts por rede (endereços que possam ser usados)

A 1 - 126* 0 N.H.H.H 255.0.0.0 126 (27 - 2) 16, 777,214 (2

24 - 2).

B 128 - 191 1 0 N.N.H.H 255.255.0.0 16,382 (214

- 2) 65,534 (2 16

- 2)

C 192 - 223 1 1 0 N.N.N.H 255.255.255.0 2,097,150 (221

- 2) 254 (2 8 - 2)

D 224 - 239 1 1 1 0 Reservado para multicasting

E 240 - 254 1 1 1 1 0 Experimental, usado para pesquisa

195

Endereços IP reservados

Não podem ser atribuídos a nenhum dispositivo de rede

Endereço de rede

Identifica a rede

Campo host formado por “zeros” (Ex.: 200.10.10.0/24)

Endereço de broadcast

Permite o envio de pacotes para todos os hosts de uma rede

específica

Campo host formado por “uns” (Ex.: 200.10.10.255/24)

Endereço de loopback (local host)

Reservado às funções de loopback e diagnósticos

127.x.x.x (ex.: 127.0.0.1)

196

Endereços IP Públicos

Endereços exclusivos (não pode haver mais de uma máquina

conectada a uma rede pública com o mesmo endereço IP)

Endereços globais e padronizados

Obtidos de um provedor de serviços de Internet ou através de

registro

Problema!

Com o rápido crescimento da Internet, os endereços IP públicos

começaram a ficar escassos

Para ajudar a solucionar o problema, foram desenvolvidos

novos esquemas de endereçamento:

Endereços IP privados (IPs falsos)

CIDR (classless interdomain routing)

IPv6

197

Endereços IP Privados

Permitem que redes privadas (que não estão conectadas à

Internet) usem quaisquer endereços de host, contanto que cada

host dentro da rede privada seja exclusivo.

A RFC 1918 reserva três blocos de endereços IP para uso

interno e privado.

Classe A: 10.0.0.0 a 10.255.255.255

Classe B: 172.16.0.0 a 172.31.255.255

Classe C: 192.168.0.0 a 192.168.255.255

A conexão de uma rede que usa endereços privados à Internet

exige a conversão dos endereços privados em endereços

públicos. Esse processo de conversão é chamado de NAT

(Network Address Translation)

198

Endereçamento estático

O administrador atribui manualmente os endereços IP aos hosts

Funciona bem em redes pequenas, que mudam pouco.

Dispositivos que se recomenda a atribuição estática de IP:

servidores de aplicativos, impressoras de rede e roteadores

199

Endereçamento dinâmico

Os endereços IP são atribuídos dinamicamente aos hosts

RARP (Reverse Address Resolution Protocol)

IP BOOTP (Bootstrap Protocol)

DHCP (Dynamic Host Cpnfiguration Protocol)

200

Tabela ARP

201

Protocolo RARP (RFC 903 – Jun/84)

O protocolo RARP (Reverse Address Resolution Protocol) é

usado para associar um endereço MAC conhecido a um

endereço IP

Permite que um dispositivo que possua apenas o endereço

MAC, não possui ainda o endereço IP, envie uma solicitação

requisitando seu endereço IP

A solicitações RARP é enviada em broadcast para a rede local.

A resposta à esse solicitação é dada pelo servidor RARP da

rede local

202

BOOTP (Bootstrap Protocol) (RFC 951 – Set/85)

Faz uso do UDP para transportar as mensagens, enviando a

solicitação em broadcast, cuja resposta será dada pelo

servidor BOOTP

O cliente recebe a resposta e verifica o endereço MAC. Se

encontrar seu endereço MAC no campo do endereço de

destino ele obtém e armazena o endereço IP e as outras

informações fornecidas pela mensagem de resposta

Um problema do BOOTP é não fornecer, na verdade,

atribuição dinâmica de endereços. O administrador cria um

arquivo de configuração que especifica os parâmetros de cada

dispositivo.

203

DHCP (Dynamic Host Configuration Protocol) (RFC 2131, 2132)

Permite que um host obtenha um endereço IP dinamicamente,

sem que o administrador da rede tenha que configurar um

perfil individual para cada dispositivo.

Necessita apenas que um servidor DHCP tenha definido um

intervalo de endereços IP disponíveis

À medida que ficam online, os hosts entram em contato com o

servidor DHCP e solicitam um endereço IP.

O servidor DHCP escolhe um endereço disponível e o

concede a esse host (em geral, por um tempo limitado).

204

Exercícios:

Unidade V – Roteamento

TL012 – Introdução às Redes de Telecomunicações

206

Tópicos

Serviços Providos pela Camada de Rede

Classificação dos Algoritmos de Roteamento

Roteamento por Inundação

Roteamento pelo Caminho mais Curto

Algoritmo de Dijkstra

Roteamento por Vetor de Distância

Roteamento por Estado de Enlace

207

Serviços Providos pela Camada de Rede

O papel da camada de rede é aparentemente simples:

transportar pacotes de uma estação remetente a uma

estação destinatária.

Para realizar esta tarefa, três importantes funções podem

ser identificadas:

Determinação do Trajeto

Estabelecimento de Conexão

Comutação dos Pacotes

208

Classificação dos Algoritmos de Roteamento

Podemos classificar os algoritmos de roteamento de acordo

com:

A dinâmica das tabelas de roteamento:

Estáticos: os trajetos são definidos e não mais alterados, a menos que

haja alteração topológica da rede.

Dinâmicos: os trajetos são alterados periodicamente para refletir

mudanças no estado da rede, tais como congestionamentos, falhas,

carga, etc.

A forma como a decisão de roteamento é tomada:

Centralizado, Isolado ou Distribuído;

O número de caminhos utilizados:

Caminho Simples: um único trajeto deve ser utilizado entre dois pontos.

Múltiplos Caminhos: mais de um trajeto pode ser utilizado entre dois

pontos.

209

Roteamento por Inundação

Uma forma extrema de roteamento isolado é o chamado

roteamento por inundação.

Neste tipo de roteamento, um pacote é enviado para todas

as portas de saída de um roteador, com exceção da porta

por onde o pacote foi recebido.

O roteamento por inundação gera uma enorme quantidade

de cópias de um pacote na rede.

Para eliminar as cópias não mais necessárias, mecanismos

de enxugamento devem ser utilizados.

210

Roteamento por Inundação

Um exemplo de um mecanismo de enxugamento é um

contador de hops inicializado com a distância entre fonte e

destino ou com a distância máxima da rede, sendo

decrementado em cada roteador.

As principais aplicações do roteamento por inundação são:

Medição de características da rede.

Atualização simultânea de bancos de dados distribuídos.

Transmissão de pacotes com o menor tempo possível.

211

Roteamento pelo Caminho mais Curto

Baseado em informações de custo de cada enlace.

Tentam encontrar o caminho de menor custo, ou seja, um

caminho que minimize a soma dos custos de cada enlace.

Exemplos de parâmetros de custo:

Comprimento do enlace

Atraso estimado

Confiabilidade

Taxa de transmissão

Dentre os principais algoritmos de roteamento pelo

caminho mais curto estão:

Algoritmo de Dijkstra

Algoritmo de Bellman-Ford

212

Algoritmo de Dijkstra

Foi desenvolvido por Edsger Wybe Dijkstra em 1959.

Variáveis:

D(v) = distância do nó fonte (1) para o nó (v).

l(i,j) = custo entre o nó (i) e o nó (j).

N = conjuntos de nós com distância definida.

213

Algoritmo de Dijkstra

Inicialização:

Faça N = {1}.

Para cada nó (v) fora de N, faça D(v) = l(1,v). Se (v) não

está conectado a N, faça D(v) = infinito.

Passo Principal:

Encontre um nó (w) fora de N tal que D(w) seja mínimo.

Adicione este nó (w) a N.

Atualize D(v) para todos os nós restantes que ainda não

estão em N, fazendo:

D(v) = Min [D(v), D(w)+l(w,v)]

O algoritmo pára quando todos os nós fizerem parte de N.

214

Algoritmo de Dijkstra

Rede exemplo:

1 6

32

4 5

2

1

2

3

3

1

1

2

5

5

215

Algoritmo de Dijkstra

Roteamento Resultante:

(5)

(a)

Step number1 6

32

4 5

2

1

1

12

(3) (4)

(1) (2)

(0)

216

Roteamento por Vetor de Distância

O algoritmo de roteamento por vetor de distância opera

mantendo uma tabela (isto é, um vetor) que fornece:

A melhor distância conhecida até cada destino.

Qual saída deve ser tomada para atingir cada destino (next

hop).

Cada nó faz uma estimativa do custo necessário para

atingir os seus vizinhos.

217

Roteamento por Vetor de Distância

Periodicamente os nós enviam estas estimativas para os

seus vizinhos.

A melhor distância é calculada em função das estimativas

de custos levantadas pelo próprio nó e recebidas dos

seus vizinhos.

218

Roteamento por Vetor de Distância

Rede Exemplo:

Considere o nó j.

As estimativas de atraso de j até os seus vizinhos são:

Fonte: Tanenbaum

219

Roteamento por Vetor de Distância

Rede Exemplo:

O nó j também possui os vetores de distância dos seus nós

vizinhos:

Fonte: Tanenbaum

220

Roteamento por Vetor de Distância

Rede Exemplo:

De posse destas informações o nó j

executa o algoritmo de Bellman-Ford

para determinar qual é a menor

distância e o próximo hop na

direção de cada um dos

nós da rede.

Desta forma o nó J atualiza a sua

tabela. Fonte: Tanenbaum

221

Roteamento por Vetor de Distância

Os nós passam mensagens de controle para outros nós

levando os seus vetores de distância até que o algoritmo

esteja completo em cada nó, com convergência para o

caminho mais curto.

Durante a fase de convergência o roteamento por vetor de

distância é propenso a formação de loops.

Outra desvantagem do algoritmo é que o tempo de

convergência pode ser longo quando ocorre a perda de

um roteador ou de um enlace.

222

Roteamento por Estado de Enlace

Cada roteador que utiliza o algoritmo de roteamento por

estado de enlace realiza as seguintes tarefas:

Descobre seus vizinhos e aprende os seus endereços.

Faz estimativas de custos para cada um dos seus vizinhos

e armazena estas informações.

Cria um pacote para difundir estas informações para todos

os outros roteadores.

Calcula o caminho mais curto para cada um dos outros

roteadores utilizando o algoritmo de Dijkstra.

223

Exercícios:

Unidade IV – Controle de

Congestionamento

TL012 – Introdução às Redes de Telecomunicações

225

Tópicos

Introdução

Monitoramento de Conformidade

Leaky Bucket

Token Bucket

Gerenciamento de Buffer

Descarte Seletivo

Random Early Detection (RED)

Weighted Random Early Detection (WRED)

226

Introdução

O que significa congestionamento em uma rede de

comutação de pacotes?

Quais são as conseqüências de um congestionamento?

É a situação em que o número de pacotes nas filas

dos comutadores/roteadores aumenta rapidamente,

chegando até mesmo a ultrapassar a capacidade de

armazenamento.

• Aumento do atraso.

• Perda de pacotes.

• Redução da vazão.

227

Introdução

O controle de congestionamento envolve diversas ações,

dentre as seguintes:

Evitar a formação de um congestionamento.

Reconhecer que uma situação de congestionamento está

se formando.

Enviar um sinal apropriado para os clientes da rede que

estão causando o congestionamento.

Reagir ao congestionamento através do gerenciamento de

buffer e descarte de pacotes.

Se necessário, retransmitir as informações perdidas

durante o congestionamento.

228

Introdução (Continua...)

Maximizar a eficiência do uso dos recursos de

armazenamento. Para isso é utilizado o gerenciamento de

estrutura de filas (BM – Buffer Management).

Distribuir os recursos de armazenamento de forma justa

entre os fluxos ou conexões, de forma que a QoS de cada

fluxo seja respeitada.

Decidir quais pacotes devem ser descartados quando a

ocupação da estrutura de filas ultrapassa um determinado

valor. Para isso é utilizada função de descarte seletivo (SD –

Selective Discard).

229

Introdução Dentre as técnicas existentes para reconhecer que uma

situação de congestionamento está se formando estão:

O monitoramento de limiares de ocupação nos buffers da

rede.

Quando um determinado limiar é ultrapassado, ações são

tomadas.

A utilização de relógios no transmissor para cada pacote

transmitido.

Quando o relógio é extrapolado (timeout), o pacote é

retransmitido e o tamanho da janela deslizante é ajustado.

230

Monitoramento de Conformidade

Verifica se o tráfego submetido para a rede está de acordo

com o contrato de tráfego negociado.

Para isso, a rede atua sobre os pacotes não conformes por

meio da função de policiamento de tráfego (TP – Traffic

Policing).

O policiamento é geralmente realizado na interface usuário

rede, embora também possa ser realizado entre duas

redes.

231

Monitoramento de Conformidade

O policiamento de tráfego é uma função não intrusiva:

Não atrasa ou modifica as características de um

determinado fluxo, a não ser pela remoção de pacotes não

conformes e pela mudança da prioridade dos pacotes.

Dois algoritmos utilizados para o policiamento de tráfego

são:

Leaky Bucket

Token Bucket

232

Algoritmo Leaky Bucket

O algoritmo do “balde furado” ou leaky bucket é baseado

na analogia com um balde que é enchido com I unidades

toda vez que um pacote de tamanho fixo (célula) é

recebido, e que perde constantemente uma unidade a

cada intervalo de tempo. L é a capacidade do balde.

I

X

Chegada de um novo pacote Incrementa de I

L

t = 0

I-1

X

L

t = 1

I-2

X

L

t = 2

233

Algoritmo Leaky Bucket

Variáveis:

LCT – Tempo da chegada da última célula conforme.

ta(k) – Tempo de chegada da célula k.

X – Ocupação do balde no instante LCT.

Y – Ocupação do balde no instante ta(k).

L – Capacidade do balde.

X

L

t = LCT

I

X

L

t = ta(k)

Y Região Conforme:

0 < Y < L

Região Não Conforme: Y > L

234

Algoritmo Leaky Bucket

O algoritmo é executado toda vez que uma novo pacote de

tamanho fixo ou célula é recebida. Portanto, o enchimento

e a drenagem do “balde” são feitos de acordo com o

instante de tempo da chegada da última célula conforme

(LCT).

Ou seja, quando uma célula é recebida no instante ta(k), o

“balde” esvazia de (ta(k)–LCT), o que é equivalente a

continuamente esvaziar o “balde” uma unidade a cada

unidade de tempo.

235

Algoritmo Leaky Bucket

Uma ocupação negativa do “balde” é resultado da chegada

atrasada de uma célula. Neste caso, é necessário zerar o

“balde” a fim de prevenir o acumulo de créditos, que

acarreta a geração de longos surtos de células (bursts).

Se a célula recebida é considerada conforme, o “balde” é

enchido de I unidades.

O algoritmo Leaky Bucket também é conhecido pela

notação GCRA (I,L), onde I é o incremento e L é

capacidade do balde.

236

Algoritmo Token Bucket

Este regulador de tráfego é uma variação do Leaky Bucket

e a tradução mais aproximada seria “balde de fichas”.

Neste algoritmo, o balde furado retém fichas, geradas a

uma taxa de r fichas/segundo.

Para que um pacote possa ser transmitido, ele deve

capturar e destruir uma ficha.

Assim, o Token Bucket permite que créditos de banda

sejam guardados até o tamanho máximo do balde, que

vale BT fichas (ou pacotes).

237

Algoritmo Token Bucket

Isto significa que rajadas de até BT pacotes podem ser

enviadas serialmente, permitindo um maior escoamento do

tráfego.

Entretanto, mesmo havendo fichas disponíveis a taxa

máxima de saída é P pacotes por segundo.

Segundo Giroux, o tamanho máximo do balde pode ser

relacionado com os demais parâmetros do contrato da

seguinte forma:

SCRPCR

PCR

MBSBT

238

Gerenciamento de Estruturas de Filas

O objetivo é administrar de forma eficiente o espaço

disponível em uma estrutura de filas e isolar o tráfego

destinado a diferentes filas.

A eficiência é conseguida através do compartilhamento do

espaço físico disponível no maior número possível de filas.

239

Descarte Seletivo

Descarta pacotes para evitar ou reduzir o nível de

congestionamento na rede.

Exemplos de mecanismos de descarte:

Descarte Baseado na Prioridade dos Pacotes

Descarte Baseado na Classe de Serviço

Descarte Baseado em Parâmetro de QoS

Descarte Aleatório

Descarte Baseado na Ocupação das Filas

240

Random Early Detection (RED) Baseia-se no princípio do descarte antecipativo de pacotes

para evitar o congestionamento.

Quando o tamanho da fila ultrapassa um determinado limiar, inicia-se um processo de descarte aleatório de pacotes, onde a probabilidade de descarte é função da taxa de ocupação da fila.

O descarte antecipativo irá resultar na diminuição na chegada de pacotes ao destino. Conseqüentemente, tem-se a redução na janela de transmissão e uma reversão na tendência de congestionamento.

Entretanto, este mecanismo não é eficaz se o protocolo de transporte não reage à perda de pacotes.

241

Weighted Random Early Detection (WRED)

A probabilidade de um pacote entrante ser descartado é

definida pela ocupação da fila e por um peso associado ao

fluxo (ou classe de fluxo) ao qual o pacote pertence.

O objetivo é que pacotes de maior prioridade tenham

menor probabilidade de descarte.

Por exemplo, uma probabilidade de descarte menor pode

ser associada a fluxos de pacotes com maior prioridade ou

a fluxos de pacotes que fizeram reserva de recursos.

242

Exercícios: