26
1 Modelo em Camadas Modelo em Camadas Arquitetura TCP/IP/Ethernet Arquitetura TCP/IP/Ethernet Edgard Jamhour O objetivo deste módulo é apresentar uma visão geral de como os protocolos de redes de computadores são estruturados em camadas.

Modelo em Camadas Arquitetura TCP/IP/Ethernetjamhour/Download/pub/RSS/POS_RSS/... · 1 Modelo em Camadas Arquitetura TCP/IP/Ethernet Edgard Jamhour O objetivo deste módulo é apresentar

  • Upload
    phamque

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

1

Modelo em CamadasModelo em Camadas

Arquitetura TCP/IP/EthernetArquitetura TCP/IP/Ethernet

Edgard Jamhour

O objetivo deste módulo é apresentar uma visão geral de como os protocolos de redes de computadores são estruturados em camadas.

2

Edgard Jamhour

LAN LAN –– LOCAL AREA NETWORKSLOCAL AREA NETWORKS

• A Ethernet não-comutada baseia-se no princípio de comunicação com broadcast físico.

A B C

B A DADOS

quadro

CRC.

meio compartilhado ou barramento

A denominação Rede Local (Local Area Networks) é utilizada para descrever uma porção de uma rede de comunicação que utiliza, geralmente, uma tecnologia de comunicação de pequeno alcance.

Atualmente, a Ethernet é a tecnologia mais difundida para criar redes LAN. Em seu início, denominada Ethernet não Comutada, essa tecnologia utilizava um único meio de acesso compartilhado por todos os computadores da rede. Uma transmissão nesse meio compartilhado se propaga para todos os computadores da rede. Esse modo de transmissão é denominado broadcast (difusão) físico.

As transmissões na tecnologia Ethernet são feitas através de mensagens estruturadas denominadas quadros ou frames. O cabeçalho de um quadro traz os endereços de destino e de origem envolvidos na transmissão. O endereço de destino indica quem deve ler a mensagem, e o endereço de origem identifica o transmissor.

Como cada computador da rede recebe todas as mensagens enviadas no meio, ele deve comparar o endereço de destino de cada mensagem com o seu próprio, a fim de determinar se a mensagem precisar ser ou não processada.

3

Edgard Jamhour

QUADROQUADRO

• O quadro (frame) é a menor estrutura de informação transmitida através de uma rede local.

B A DADOS CRC

FECHOCABEÇALHO

ENDEREÇO (FÍSICO) DE DESTINO

ENDEREÇO (FÍSICO) DE ORIGEM

TIPO

Quadro Ethernet II

Numa rede Ethernet, todas as mensagens são transportadas na forma de quadros. Um quadro é composto por três partes: cabeçalho, dados e fecho.

Conforme será explicado mais adiante no curso, existem duas variantes no formato dos quadros Ethernet (Ethernet II e IEEE 802.11). A figura ilustra o formato dos quadros Ethernet II. Nesse formato, o cabeçalho é formado por três campos: endereço físico de destino, endereço físico de origem e tipo de dado transportado. O tamanho do campo de dados é variável, e seu tamanho máximo é denominado Unidade Máxima de Transmissão ou MTU (Maximum Transmit Unit). O fecho possui um código para verificação de erro. Ele permite ao receptor detectar, até um certo grau, se o quadro recebido não foi alterado durante sua transmissão por ruídos ou outros tipos de interferência.

O formato do endereço físico é definido pelos padrões Ethernet, e é usualmente denominado de endereço MAC (seu significado será discutido mais adiante no curso). Nesta introdução o endereço físico será representado por letras simples em maiúsculo, como A, B, etc.

A especificação Ethernet define vários aspectos da tecnologia, como os tipos de quadro, e a forma de representação elétrica ou ótica dos bits. Ele define também o que pode ser considerado o protocolo Ethernet, isto é, o formato do cabeçalho e a padronização do procedimento para transmissão e recebimento dos quadros.

4

Edgard Jamhour

Ethernet Ethernet nãonão --ComutadaComutada

A B C

ESCUTANDO ESCUTANDO

quadros na fila de espera

Na Ethernet não-comutada, apenas um computador pode ter acesso ao meio de cada vez. Se mais de um computador efetuar a transmissão ao mesmo tempo, os dados transmitidos serão sobrepostos, e os quadros chegarão com defeito ao seus destinatários.

A fim de evitar que dois ou mais computadores transmitam ao mesmo tempo, o Ethernet emprega uma técnica de controle de acesso ao meio descentralizada denominada CSMA/CD. A técnica é dita descentralizada pois ela consiste em um algoritmo que rodade forma independente em cada um dos computadores da rede, sem o auxílio de uma entidade central. A sigla CSMA/CD significa: Carrier Sense Multiple Access withCollision Detection.

O CSMA/CD será estudado com mais detalhes no curso, mas para o momento, iremosdescrever seu funcionamento de forma simplificada, com segue:

1) Todos os computadores deve escutar o meio antes de transmitir;

2) Se o meio estiver ocupado, os quadros são armazenados em filas de espera internas no computador. Quando o meio está desocupado, os computadores podem transmitir;

3) Durante a transmissão de um quadro, o emissor deve continuamente comparar os dados enviados com os presentes no barramento. Quando dois ou mais computadores enviam quadros simultaneamente ao barramento, os níveis de tensão observados no barramento diferem da representação lógica dos bits do quadro original, permitindo ao computador detectar a ocorrência de uma colisão.

4) No caso de colisão, o quadro precisa ser transmitido novamente.

5

Edgard Jamhour

EFEITO DA DISTÂNCIAEFEITO DA DISTÂNCIA

• O tempo de propagação entre as estações afetaa taxa de ocupação máxima da rede.

A

B

A TRANSMITE

B TRANSMITEB RECEBE

tempo para o sinal ir de A para B

A RECEBE

τT

L = distância

to to+ τ to+ T+ τ

Ao longo dos anos, a velocidade nominal do Ethernet foi ampliada consideravelmente. De acordo com sua velocidade, o Ethernet recebeu diferentes denominações: Ethernet (10 Mbps), Fast-Ethernet (100 Mbps), Gigabit-Ethernet (1000 Mbps), etc. Como veremos adiante, algumas dessas velocidades não são atingíveis no modo não-comutado.

Mesmo que não haja colisão, a Ethernet não-comutada não consegue atingir sua velocidade máxima nominal, pois existe uma certa perda de banda todas as vezes que o direito de transmitir é passado de um computador para o outro.

Isso acontece devido a velocidade de propagação do sinal elétrico no meio de transmissão. Por exemplo, considere um cenário onde 2 computadores, denominados A e B, estão disputando o meio de acesso. Suponha que o direito de transmitir foi inicialmente ganho pelo computador A. Ele coloca um quadro no barramento no instante t=to. O primeiro bit desse quadro só será percebido por B em um instante t=to+τ. O tempo τ corresponde ao tempo de propagação do sinal pelo barramento. Por exemplo, no caso do sinal elétrico, essa velocidade é da ordem de 200.000 Km/s. Caso o computador B tenha um quadro para transmitir, ele só poderá fazê-lo no instante t=to+τ+Τ. Dessa forma, uma parte da capacidade do barramento é sempre perdida.

A taxa de ocupação máxima de um barramento Ethernet depende do tamanho médio dos quadros (T) e do tempo de propagação do sinal entre os 2 computadores mais distantes do barramento (τ), e é dada por:

( ) 1≤+

=τT

TEficiencia

6

Edgard Jamhour

ExemploExemplo

• Tamanho mínimo do quadro Ethernet definido por norma– 64 bytes

• Velocidade de propagação do sinal elétrico no cobre: – 200 000 Km/s

Eficiência = T/(T+τ)

Eficiência: 10Mbps X 200m = 98%Eficiência: 100Mbps X 200m = 83,6% Eficiência: 100Mbits X 800 m = 56,1%…

Eficiência: 100Mbits X 2000 m = 33,9%

distância

eficiência

1

0

A tecnologia de transmissão empregadas nas LANs sofre um grande decréscimo de desempenho quando aplicada a grandes distâncias.

A perda de desempenho é mais significativa para pequenos quadros transmitidos em grandes velocidades. A título de exemplo, vamos considerar um cenário pouco favorável onde o tamanho dos quadros está no limite mínimo permitido pelo Ethernet: 64 bytes.

Por exemplo, a eficiência de uma rede Ethernet não comutada de 10Mbps é de 98% se a distância máxima entre os computadores for de 200 m. Se a velocidade for de 100Mbps, a eficiência máxima cai para 83,6%. Nessa mesma velocidade, mas com uma distância de 800m, a eficiência será de apenas 56%. Isso significa que a capacidade efetiva de transmissão da rede é de 56Mbps, e que essa capacidade é dividida entre todos os computadores da rede.

Para distâncias maiores, o uso da tecnologia Ethernet não comutada pode se tornar inviável, pois o decréscimo de desempenho é muito significativo. Por essa razão, a distância máxima entre os computadores no modo não-comutado é limitada por norma.

7

Edgard Jamhour

ColisãoColisão

• Mesmo com os computadores escutando o meio antes de transmitir, existe a possibilidade de colisão.

A

B

A TRANSMITE

B TRANSMITE

RECEBIDO DE Aττττ

RECEBIDO DE B

COLISÃO DETECTADA POR A

COLISÃO DETECTADA POR B

t= to t= t1 t= to+τ

ττττ

t= t1+τ

A distância entre computadores na tecnologia de Ethernet não comutada também afeta a possibilidade de colisão.

Para entender porque isso ocorre, considere que dois computadores, denominados A e B, compartilham um barramento e estão distanciados de forma que um sinal colocado no barramento leva τ segundos para ir de um computador até o outro.

Se o computador A inicia sua comunicação no instante t=t0, o computador B só perceberáque o meio está ocupado no instante t=t0+τ. Se o computador B iniciar uma transmissão no intervalo entre t0 e t0+τ haverá uma colisão.

A probabilidade de colisão será tanto maior quanto maior for a distância entre os computadores (pois o valor de τ cresce proporcionalmente com a distância).

Uma fórmula comumente utilizada para prever o desempenho máximo da rede Ethernet não comutada é dada por:

⋅+=

T

Eficienciaτ

44,61

1

8

Edgard Jamhour

ExemploExemplo• Tamanho mínimo do quadro Ethernet definido por norma

– 64 bytes

• Velocidade de propagação do sinal elétrico no cobre: – 200 000 Km/s

Eficiência = 1/(1 + 6,44 τ/T)

Eficiência: 10Mbps X 200m = 88,8%Eficiência: 100Mbps X 200m = 44,3% Eficiência: 100Mbits X 800 m = 16,6%

distância

eficiência

1

0

A distância entre os computadores também afeta significativamente o desempenho da Ethernet não comutada devido ao aumento da probabilidade de colisão. A perda de eficiência é mais significativa para o caso de quadros pequenos. A figura ilustra os valores de eficiência para o pior cenário, onde o tamanho dos quadros Ethernet correspondem ao valor mínimo definido pela norma. Outro fator que afeta o desempenho da rede é a taxa de transmissão. A probabilidade de colisão é maior para taxas maiores. Esse efeito, faz com que a Ethernet não comutada se torne inviável para velocidades mais altas.

Em resumo, observamos que a tecnologia Ethernet não comutada apresenta limitações. O número de computadores é limitado, pois como apenas um computador pode transmitir de cada vez, o desempenho da rede diminui na medida em que muitos computadores são colocados no mesmo barramento. A distância entre os computadores também é limitada. Para evitar colisões, os computadores “escutam” o barramento antes de transmitir, e sótransmitem se o barramento estiver desocupado. Quanto maior a distância entre os computadores, maior a chance de ocorrer colisões no barramento, levando a rede para um estado de colapso e baixo desempenho.

Como veremos adiante, para viabilizar a operação do Ethernet em velocidades maiores énecessário interconectar os computadores utilizando um dispositivo denominado switch Ethernet, que não utiliza o princípio de transmissão por broadcast físico. Nesse caso, a rede Ethernet recebe a denominação de “comutada”.

9

Edgard Jamhour

HUBSHUBS

• Hubs ou concentradores são dispositivos que simulam internamente a construção dos barramentos físicos.

C A C A C A

A

1 2 3

hub

B C

A primeira evolução da Ethernet não comutada aconteceu pela introdução dos dispositivos de rede denominados HUBS.

A introdução dos HUBS permitiu a substituição dos cabos Ethernet, inicialmente do tipo coaxial, para o tipo par trançado.

É importante destacar que o HUB não apresenta ganhos em termos de desempenho para rede, pois ele continua a operar segundo o princípio do broadcast físico, isto é, um quadro recebido em uma das portas do HUB é retransmitido para todas as demais portas independentemente do endereço de destino.

O ganho conseguido pela introdução do HUB foi uma conectividade mais fácil. No modelo de cabo coaxial, qualquer abertura do barramento implicava em interrupção em toda a rede devido a problemas de reflexão de sinal causadas pelo casamento de impedância. No HUB, é possível inserir e remover computadores sem prejuízo na comunicação dos demais computadores. O HUB também aumenta a distância máxima entre os computadores pois ele funciona como um repetidor, compensando as perdas no nível do sinal devido a atenuação introduzida pelo par trançado quando o quadro éretransmitido de uma porta para outra.

10

Edgard Jamhour

Ethernet Ethernet ComutadaComutada

• A utilização de switches permite colocar o Ethernet em modo comutado.

PORTA

1

COMPUTADOR

A

A

1 2 3

C A ...(1)

C A ... C A ...(2) (2)

switch

B C

Estado inicial

PORTA COMPUTADOR

Após a transmissão de A

PORTA

13

COMPUTADOR

AC

Após a transmissão de C

A

1 2 3

A C ...(3)A C ...(4)

switch

B C

O switch Ethernet é um equipamento de comutação que permite encaminhar o quadro recebido em uma porta apenas para a onde o computador de destino está conectado. Para realizar a operação de encaminhamento, o switch mantém em memória uma tabela que indica o endereço dos computadores conectados em cada uma de suas portas.

O processo de preenchimento da tabela de encaminhamento é totalmente automático. O switch Ethernet opera de modo transparente para os computadores da rede. Isto é, não énecessário fazer nenhuma alteração ou configuração nos computadores para que eles passem a operar com o switch. De fato, para os computadores, a intermediação feita pelo switch é totalmente transparente.

Conforme mostra a figura, inicialmente, a tabela de encaminhamento está vazia. Quando o computador A envia um quadro para o computador C, o switch interpreta o quadro e tenta localizar em que porta o computador C está localizado. Como ele não consegue, o quadro é enviado para todas as portas do switch, em uma operação idêntica a realizada pelo HUB.

Ao interpretar o endereço de origem do quadro, o switch apreende que o computador A está na porta 1. Dessa forma, uma eventual resposta do computador C para A é enviada apenas para porta 1. De forma similar, ao encaminhar o quadro oriundo do computador C, o switch aprende que o computador C está na porta C.

11

Edgard Jamhour

DomDom ííniosnios de de ColisãoColisão• Cada porta do switch define um domínio de colisão. Isto é, só é

possível haver colisão entre os computadores conectados a uma mesma porta.

A

1 2 3

switch

hub

B C D

hub

E F G

Tabela de Encaminhamento

PORTA

123

COMPUTADOR

A,B,CD,E,F

G

Inicialmente, o preço dos switches Ethernet era bastante elevado, tornando-se inviável conectar apenas um computador em cada porta do switch. Assim, uma estratégia comum consistia em conectar vários computadores em uma única porta, utilizando HUBS.

Cada porta do switch constitui em um domínio de colisão isolado. Isto é, só é possível haver colisão entre computadores conectados a uma mesma porta. Internamente, o switch possui uma matriz de comutação de capacidade elevada, que permite realizar múltiplas transmissões em paralelo. Como um computador só concorre pelo direito de acesso ao meio com os computadores conectado a mesma porta do switch, o ganho de desempenho para rede é bastante elevado.

Ao contrário dos HUBS, os switches permitem realizar conversões de velocidade. Por exemplo, o computador na porta 3 pode ser um servidor operando a 100Mbps, enquanto que os computadores na porta 1 operam em apenas 10 Mbps.

Observe que a tabela de encaminhamento do switch pode possuir múltiplos computadores associados a cada uma de suas entradas.

12

Edgard Jamhour

CascateamentoCascateamento de Switchesde Switches• Apesar de melhorar significativamente o desempenho da rede, os

Switches ainda apresentam limitação de escala.

Switch 1

PORTA

1234

COMPUTADOR

D,E,F,G,H,IABC

A B C

switch1

2 43

D E F

G H I

5

switch1

2 435

switch1

2 435

Switch 2

PORTA

12345

COMPUTADOR

A,B,CDEF

G,H,I

Switch 3

PORTA

2345

COMPUTADOR

GHI

A,B,C,D,E,F

Atualmente, a maioria dos switches Ethernet disponíveis no mercado possuem 12 ou 24 portas. Para criar redes maiores, é possível conectar os switches em cascata. Existem várias maneiras de cascatear switches. A maneira indicada na figura é uma das mais simples.

Apesar dos switches melhorarem significativamente o desempenho de uma rede Ethernet, a rede não pode crescer indefinidamente utilizando apenas essa tecnologia. Se observarmos as tabelas de encaminhamento dos switches, observamos que cada switch precisa conhecer a posição de cada um dos computadores nos demais switches. Isso significa que se criarmos uma rede Ethernet com 1000 computadores, teremos 1000 endereços físicos alocados nas tabelas de encaminhamento. Do ponto de vista da organização da rede, todos os switches em cascada constituem uma única LAN.

Fica claro que construir uma rede do tamanho da Internet (que possui atualmente 500 milhões de computadores com endereços únicos) utilizando somente a tecnologia Ethernet é inviável.

13

Edgard Jamhour

WANWAN

• A redes WAN (Wide Area Networks) utilizam uma tecnologia de transmissão que permite interligar um número ilimitado de comutadores em distâncias arbitrariamente grandes.

Roteador1

Roteador3

LAN

LAN

switch switch

switch

WAN

Roteador2

LAN

LAN

rede 1rede 2

rede 3

1 2

3

1 2

3

1

32

Tabela de Roteamento

PORTA

123

Rede

Rede 3Rede 1Rede 2

Outros Dados

.....

Afim de construir redes maiores, adota-se uma arquitetura denominada WAN (WideArea Network). A Internet segue essa arquitetura.

Uma rede WAN é forma pela interconexão de várias redes LAN, utilizando-se um outro tipo de dispositivo de rede denominado roteador. O roteador utiliza uma estratégia de encaminhamento bastante diferente da do switch. Ao invés de associar os endereços dos computadores as suas portas, o roteador associa identificadores de rede que representam uma LAN.

As tabelas dos roteadores são denominadas “tabelas de roteamento”. A figura ilustra a estrutura da tabela de roteamento correspondente ao roteador 3. Como veremos mais adiante, a tabela de roteamento necessita de mais algumas colunas de informação omitidas na figura.

A grande vantagem dessa estratégia é que a quantidade de entradas na tabela de roteamento é contada em redes, e não em computadores. Por exemplo, a Internet atual conta com 500 milhões de computadores, mas com “apenas” 300 mil redes.

Os endereços físicos definidos pelo protocolo Ethernet não possuem identificador de rede. A fim de suportar a identificação das redes um outro tipo de endereço é necessário: o endereço IP.

14

Edgard Jamhour

EndereEndere çços IPos IP

• Os endereços IP possuem 32 bits, isto é, 4 bytes, representados em notação decimal pontuada.

10000000 00001010 00000010 00011110

2726252423222120 2726252423222120 2726252423222120 2726252423222120

27=128 23+21=10 21=2 24+23+22+21=30

128.10.2.30notação decimalpontuada

notaçãobinária

O protocolo IPv4 (Internet Protocol version 4), atualmente utilizado na Internet, define endereços de 32 bits. Os endereços de 32 bits correspondem a quatro octetos (bytes). Na notação decimal pontuada, cada um desses octetos é representado por um número decimal, calculado como se cada octeto fosse independente dos demais.

A figura ilustra a representação do endereço IP 128.10.2.30. Um endereço IP identifica um computador, mas também permite identificar a qual rede o computador pertence. De fato, a parte mais significativa do endereço IP corresponde ao identificador de rede, e a parte menos significativa ao identificador de host. Todos os computadores em uma mesma LAN devem possuir endereços IP com o mesmo identificador de rede.

A quantidade de bits que identifica a rede é variável. De fato, o endereço IP sozinho não tem significado próprio. A fim de interpretar um endereços IP é preciso que ele venha acompanhado de um outro número denominado “máscara de sub-rede” que determina quantos bits são utilizados para determinar o identificador de rede. A forma mais compacta de informar a máscara de sub-rede é utilizar uma / após o endereço IP. Por exemplo:

128.10.2.30/8 significa que o computador pertence a rede 128

128.10.2.30/16 significa que o computador pertence a rede 128.10

128.10.2.30/24 significa que o computador pertence a rede 128.10.2

15

Edgard Jamhour

QUADRO E PACOTEQUADRO E PACOTE

• Os pacotes são transportados no interior dos quadros.

CRCDADOSDESTINOORIGEMDESTINO ORIGEM

PACOTE

QUADRO

ENDEREÇO FÍSICO: definidos pelo Ethernet

ENDEREÇO DE REDE: definidos pelo IP

Assim como o Ethernet, o protocolo IP define uma unidade básica para transporte de informações, denominada pacote.

Assim como o quadro Ethernet, o pacote é constituído por um cabeçalho e um campo de dados. O cabeçalho inclui campos para transporte dos endereços IP de origem e destino, e de outras informações utilizadas no processo envio das informações pelos roteadores.

É importante destacar que os protocolos Ethernet e IP trabalham de forma cooperada, pois, de fato, os pacotes são transmitidos no interior dos quadros.

A distinção entre quadro e pacote nem sempre é clara na literatura, pois algumas vezes épossível encontrar denominações como “pacote Ethernet”. No nosso curso, todavia, o termo quadro será usada para a designar a estrutura completa e o termo pacote, apenas para a estrutura definida pelo IP, conforme indicado na figura.

16

Edgard Jamhour

EndereEndere çço de Redeo de Rede

• O agrupamento de computadores em rede permite reduzir a quantidade de informações na memória do roteador.

SWITCHSWITCH

SWITCHSWITCH

A c

REDE 200.0.0.0/8

REDE 210.0.0.0/8

X

Y

200.0.0.1 200.0.0.2 200.0.0.3 Z M

210.0.0.1

Z

se 200... envie para xse 210 ... envie para y

M 66.1.2.3 210.0.0.2

E Y 66.1.2.3 210.0.0.2

B

D

210.0.0.3

E

210.0.0.4

F

Como vimos, um endereço IP define um computador e ao mesmo tempo a rede ao qual ele pertence. A estruturação do IP define que todos os computadores em um mesma LAN possuem o mesmo identificador de rede. Computadores localizados em LANs distintas possuem necessariamente identificadores de rede distintos.

Um roteador pode ser considerado como um computador com múltiplos adaptadores de rede. Isto é, cada porta de um roteador possui, de fato, um endereço físico. Em um pacote, os endereços de origem e destino necessariamente identificam o transmissor e o receptor do pacote. Numa WAN, contudo, o endereço físico, nem sempre identifica um computador.

De fato, o endereço físico identifica apenas as entidades envolvidas em um trecho da comunicação. Esse trecho da comunicação é comumente chamado de enlace. Por exemplo, quando o pacote está sendo transportado entre dois roteadores, os endereços físicos indicam as portas nos roteadores de origem e destino. Quando o pacote é enviado pelo roteador ao seu destino final, os endereços físicos indicam a porta do roteador e o computador que vai receber a mensagem.

17

Edgard Jamhour

QUADRO E PACOTEQUADRO E PACOTE

1 2

200.17.106.x

200.17.176.xREDE LOCALETHERNET

ENLACE PONTO-A-PONTO

REDE LOCALTOKEN-RING

O PACOTE É SEMPRE O MESMO

O QUADRO MUDA DE ACORDO COM O MEIO FÍSICO

LAN 1200.0.0.0/8

LAN 2210.0.0.0/8

A relação entre quadro e pacote também garante a independência do protocolo IP em relação as tecnologias de transmissão.

A figura acima ilustra um cenário onde este conceito é aplicado. Um quadro é criado na LAN1 e enviado para LAN2. A tecnologia da LAN1 é o Ethernet. Ao chegar no roteador 1, o pacote IP contido no quadro Ethernet é copiado, e inserido em outro quadro, conforme a tecnologia de transmissão adotada no enlace entre os dois roteadores, que pode ser, por exemplo, ATM. Ao chegar no roteador 2, o pacote IP é novamente extraído, e colocado dentro de um quadro Token-Ring.

Em resumo, uma das grandes vantagens do protocolo IP é sua independência em relação as tecnologias de transmissão. Uma rede WAN pode ser, e é usualmente, composta por tecnologias de transmissão heterogêneas.

18

Edgard Jamhour

Computador 2Computador 1

TCP e UDPTCP e UDP

TCP

IP

Ethernet

End. Físico

Endereço IP

Porta1024

ProcessoA

Processo

barramentobarramento

UDP

Porta Porta

Processo

TCP

IP

Ethernet

End. Físico

Endereço IP

Porta

ProcessoProcesso

B

UDP

Porta80 Porta

Processo

1024 80 Mensagem

Os protocolos IP e Ethernet contém informações que permitem endereçar um computador. Para que uma comunicação possa ocorrer, contudo, é necessário endereçar um processo específico dentro do computador.

Os protocolos responsáveis por endereçar processos são denominados “protocolos de transporte”. Dois protocolos de transporte são utilizados juntamente com a tecnologia IP: o TCP (Transmission Control Protocol) e o UDP (User Datagram Protocol).

A razão de haver dois protocolos é que eles foram projetados para suportar aplicações com necessidades diferentes. O TCP é um protocolo confiável, que oferece vários recursos para garantir a entrega das mensagens enviadas ou gerar notificações automáticas em caso de falha. Tudo isso é conseguido com aumento no volume de tráfego gerado e do processamento no computador. O protocolo UDP, por outro lado, ébastante leve, mas não oferece nenhum tipo de proteção para mensagem.

Tanto o TCP quanto o UDP utilizam o conceito de endereçamento por portas (um número de 16 bits). Dessa forma, para que um processo A no computador 1 possa enviar uma mensagem para o processo B no computador 2, ele precisa incluir o número da porta na mensagem enviada.

19

Edgard Jamhour

PORTASPORTAS

• Utilizadas no TCP e no UDP– Portas são números inteiros de 16 bits– Padronização do IANA (Internet Assigned Number Authority)

00

10231023

10241024

4915149151

PORTAS BEM CONHECIDAS

PORTAS REGISTRADAS

4915249152

6553565535

PORTAS DINÂMICAS OU PRIVADAS

A entidade IANA (Internet Assigned Number Authority) é responsável por definir como as portas TCP e UPD são mapeadas nas aplicações.

Como as portas são números de 16 bits, os valores possíveis de porta vão de 0 a 65535. A IANA divida os valores de porta em três faixas.

A primeira faixa é denominada portas bem conhecidas, e vai de 0 a 1023. Em geral, elas são utilizadas para endereçar processos servidores padronizadas que são independentes de fabricante, como servidores web (80) e servidores de telnet (23).

A segunda faixa é denominada portas registradas, e vai de 1024 a 49151. Essas portas também são alocadas pela IANA, mas representam processos servidores de fabricantes específicos, como portas de servidores de banco de dados.

As terceira faixa é denominada portas dinâmicas ou privadas, e vai de 49152 até 65535. Essa faixa pode ser utilizada por processos servidores sem permissão da IANA.

Os processos clientes utilizam portas dinâmicas que estão na faixa entre 1024 e 65535. Essas portas são escolhidas pelo sistema operacional, de maneira a evitar conflito com as portas de processos servidores já em execução no computador.

20

Edgard Jamhour

QUADRO, PACOTE E TCP/UDP PDUQUADRO, PACOTE E TCP/UDP PDU

crcorigemdestinoorigemdestino origem

PACOTE

QUADRO

ENDEREÇOSFÍSICO

ENDEREÇOS IP

destino dados

PORTAS(ENDEREÇOS DE

PROCESSOS)

TCP/UDP PDU

protocolo

A unidade de informação transportada por um protocolo é denominada genericamente de PDU (Unidade de Dado de Protocolo). O PDU do TCP é denominado segmento, e o PDU do UDP é geralmente denominado de datagrama UDP.

O PDU dos protocolos de transportado no interior do campo de dados do pacote IP conforme mostra a figura. O cabeçalho do pacote IP traz um campo denominado “protocolo”, que permite identificar se a PDU sendo transportada é do tipo TCP ou UDP (ou algum outro tipo).

Observe que na figura, inúmeros campos de protocolo foram omitidos, pois não são relevantes para essa introdução.

Dessa forma, o cabeçalho do Ethernet precede o cabeçalho IP, que por usa vez precede o cabeçalho do TCP ou do UDP. Esse conceito de empilhamento de cabeçalhos édenominado pilha de protocolos.

21

Edgard Jamhour

Protocolo de AplicaProtocolo de Aplica ççãoão

• O protocolo de aplicação define, geralmente, um conjunto de mensagens padronizadas que permite que clientes e servidores de fabricante diferentes se comuniquem.

crcorigemdestinoorigemdestino origem destino protocolo de aplicaçãoprotocolo dados

mail from: <...>

rcpt to: <...>

data

250 ok

250 ok

354 End data with <CR><LF>.<CR><LF>

dados <CR><LF>.<CR><LF>

cliente emailservidor email

Existem muitos serviços distintos implementados sobre o protocolo IP. Exemplos típicos são email, web e acesso remoto via SSH ou TELNET. Muitos desses serviços seguem a arquitetura cliente-servidor, onde uma aplicação cliente troca mensagens com uma aplicação servidora.

A fim de permitir que clientes e servidores de fabricantes diferentes se comuniquem, aplicações típicas da internet adotam um formato padronizado para essas mensagens, denominado protocolo de aplicação. Como seu próprio nome diz, um protocolo de aplicação é especializado para uma aplicação específica. Ele não é genérico como o IP, o TCP e o UDP. Alguns protocolos de aplicação são implementados sobre UDP e outros sobre TCP, de acordo com as necessidades da aplicação.

A figura ilustra o protocolo de aplicação denominado SMTP (Simple Message TransferProtocol) utilizado no envio de e-mail. O protocolo de aplicação é transportado no interior do PDU do protocolo de transporte, seguindo o conceito de pilha de protocolos.

22

Edgard Jamhour

Pilha TCP/IPPilha TCP/IP

Camada de AplicaCamada de Aplica ççãoãoHTTP, FTP, SMTP, HTTP, FTP, SMTP, etcetc

Camada de TransporteCamada de TransporteTCP, UDPTCP, UDP

EthernetEthernet

Camada de RedeCamada de RedeIPIP

O Ethernet não é considerado parte da arquitetura TCP/IP.

Seqüência de empacotamento

DADOSDADOS

aplicaaplica ççãoão

transportetransporte

pacotepacote

quadroquadroPlaca de

rede

S.O.

Aplicação

A figura ilustra o conceito do que é comumente denominado de: pilha de protocolos TCP/IP.

Oficialmente, o Ethernet não é considerado parte da pilha TCP/IP. Isso se deve ao fato de que o protocolo IP é independente da tecnologia de transmissão. Nesse caso, o Ethernet foi colocado na pilha a título de exemplo.

A pilha TCP/IP segue o conceito de modelo de redes em camadas. A arquitetura TCP/IP é composta pelas camadas de aplicação, transporte e rede. Protocolos que se situam na mesma camada são concorrentes e protocolos em camadas distintas são complementares. Por exemplo, como TCP e UDP estão na camada de transporte, apenas um dos dois pode ser utilizado no processo de encaminhamento de uma mensagem. Por outro lado, como o IP está numa camada diferente, é possível ter as combinações TCP/IP e UDP/IP.

Conforme mostra a figura, a pilha de protocolos determinar a seqüência de empacotamento dos dados até o momento onde um quadro é criado. Quanto mais alta a camada do protocolo, mais interno é a posição do seu cabeçalho em relação a estrutura do quadro.

23

Edgard Jamhour

AplicaAplica ççãoão

Apresentação

Sessão

TransporteTransporte

RedeRede

Enlace de Enlace de DadosDados

FFíísicasica

Mensagens padronizadas.Dispositivo de Rede: Gateway de Aplicação (Proxy)

Comunicação entre processos.Dispositivo de Rede: Não há

Roteamento dos pacotes através de redes diferentesDispositivo de Rede: Roteador

Empacotamento de dados em quadros dentro da rede.Dispositivo de Rede: Ponte, Switch

Transmissão de bits através do meio físico.Dispositivo de Rede: Repetidor, Hub

OSI OSI -- Open Systems Open Systems InterconnectionInterconnection ModelModel

Comunicação com controle de estado.

Representação de dados independente daplataforma.

1

2

3

4

5

6

7

Muitos sistemas de telecomunicações seguem o modelo de rede em camadas. Então a gama de protocolos existentes é bastante ampla.

Por essa razão, um modelo de referência genérico, denominado Modelo OSI, foi definido pela ISO (International Organization for Standardization). O Modelo OSI usa mais camadas que o modelo TCP/IP. O modelo é composto por sete camadas, numeradas de 1 a 7 a partir da camada mais baixa do modelo.

Na prática, a camada de aplicação da arquitetura TCP/IP engloba funções das camadas de Aplicação, Apresentação e Sessão do modelo OSI. O Ethernet também engloba funções de duas camadas: Física e Enlace.

O modelo OSI é útil também para classificar os equipamentos de rede de acordo com o cabeçalho de protocolo que eles utilizam. Por exemplo, um Switch é um dispositivo de camada 2, pois para encaminhar os quadros ele utiliza as informações de endereçamento do protocolo de enlace. Um roteador, por outro lado, é um dispositivo de camada 3, pois ele realiza suas funções analisando as informações de endereçamento do protocolo de rede.

No mercado, existem equipamentos de realizam funções de mais de uma camada. Por exemplo, um switch de camada 3 também é capaz de realizar roteamento.

24

Edgard Jamhour

2

11

3

4

5

6

7

processotransmissor

7

dados76

dados765

dados7654

dados7653

dados7654

4

32

dados7654321

2

E 1

2

11

3

4

5

6

7

processoreceptor

dados7

dados76

dados765

dados7654

dados7653

dados7654

4

32

dados7654321

2

E 1

dados dados

PPDU

SPDU

TPDU

NPDU

DL-PDU

APDUdados

0 1 0 0 1 0 0 ...

pacote

quadro

Conforme explicado anteriormente, o modelo em camadas determina a seqüências de empilhamento e des-empilhamento dos cabeçalhos dos protocolos.

Genericamente, a unidade de informação produzida por uma camada é denominada PDU (Protocol Data Unit). Conforme discutimos anteriormente, alguns PDUs recebem denominação especial: o PDU da camada de enlace (DataLink PDU ou DL-PDU) édenominado quadro, e o PDU da camada de rede (Network PDU ou NPDU) édenominado pacote.

Idealmente, as informações introduzidas pelo protocolo de uma dada camada do transmissor (por exemplo, a camada de rede) só devem ser interpretadas pela mesma camada no receptor. Os demais cabeçalhos devem ser ignorados. Esse é o princípio de independência de camadas do modelo OSI.

25

Edgard Jamhour

AplicaAplica ççãoão

Apresentação

Sessão

TransporteTransporte

RedeRede

Enlace de DadosEnlace de Dados

FFíísicasica

Camadas do Modelo OSI

Ethernet, WiFi, PPP, HDLC, Token-Ring, Frame-Relay, etc.

IP, IPX, ARP

TCP, UDP, SPX, NetBEUI

HTTP, FTP, SMB, SMTP, POP3, IMAP4, DNS,

NetBIOS, DHCP, EDI, BitTorrent, etc

ATM, MPLS

1

6

5

4

3

2

7

2.5

USB, RS-232, BlueTooth, Modem, etc.

O modelo OSI permite comparar protocolos de arquiteturas diferentes. Além do TCP/IP existem outras pilhas de protocolos, como as do IPX e AppleTalk.

Infelizmente, apesar de possuir sete camadas, elas nem sempre são suficientes para fornecer uma classificação útil para os protocolos. Em alguns casos, o modelo fornece mais camadas do que o necessário, como as camadas de apresentação e sessão, geralmente embutidas nos protocolos de aplicação.

Em alguns casos, normalmente nas camadas mais baixas, existem falta de camadas. Por exemplo, o ATM e o MPLS permitem rotear pacotes, mas ainda são dependentes das funções do roteamento IP (para atualização de suas tabelas de encaminhamento). Por essa razão, esses protocolos são as vezes classificados como de camada 2.5.

Tecnologias como o Ethernet (família IEEE 802) e o ATM possuem seus próprios modelos em camadas, que são muitas vezes considerados subcamadas no modelo OSI.

As operação de tunelamento (usadas em VPN – Redes Virtuais Privadas) também alteram a estrutura proposta pelo modelo OSI, pois nesse caso, pode haver empilhamento de camadas do mesmo tipo, ou mesmo desrespeito na ordem de empilhamento.

26

Edgard Jamhour

ConclusãoConclusão

• Distinção entre LAN e WAN• Arquitetura TCP/IP• Modelo em Camadas

Neste capítulo observamos três conceitos principais:

Primeiro, a distinção entre as tecnologias para construção de redes LAN e WAN. Vimos que ambas as redes se interligam, mas diferem na estratégia de endereçamento de hosts e encaminhamento de pacotes.

Segundo, vimos que a arquitetura TCP/IP é independente da tecnologia adotada para transmissão dos quadros, e introduz dois níveis de endereçamento: o IP que permite endereçar redes, e as portas que permite endereçar processos. Os protocolos de aplicação, por sua vez, fornecem uma padronização entre as mensagens trocadas entre clientes e servidores, a fim de permitir a inter-operação entre produtos de fabricantes diferentes.

Finalmente, o modelo em camadas oferece define uma estratégia comuns a várias tecnologias de transmissão, inclusive o TCP/IP. Idealmente, o modelo em camadas define que protocolos de mesma camada são concorrentes (não são usados ao mesmo tempo), e protocolos de camadas distintas são complementares (seus cabeçalhos podem ser empilhados).