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).