Você está na página 1de 61

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores 1. Introduo:


Segundo a Ementa da disciplina temos os seguintes itens a ser apresentados nesse perodo de aula: Classificao de Redes de Computadores (MAN, WAN, LAN). Modelo de Referncia OSI da ISO. Arquitetura de Redes (TCP/IP e proprietrias). Redes pblicas de comunicao de dados (tipos, padres, utilizao). Interligao de redes. Protocolos. Projeto de Redes. Busca-se seguir a seguinte programao: 1. Terica de Base (1.1. Hardware de Rede, 1.2. Software de Rede, 1.3. Classificao de Redes e Arquitetura, 1.4. Teoria de Telecomunicaes). 2. Terica de Modelos de Referncia (2.1. Modelos ISO/OSI, TCP/IP, 2.2. Camadas Fsica e Enlace, 2.3. Camadas Redes e Transporte, 2.4. Camada de Aplicao). 3. Prtica de Redes ( 3.1. Entendimento de pacotes, 3.2. Trfego de redes e diretrizes, 3.3. Suporte ao roteamento de pacotes, 3.4. Diretrizes de cabeamento estruturado) 4. Segurana da Informao (4.1. Problemas de Segurana na Comunicao,4.2. Criptografia, 4.3. Criptografia Simtrica, 4.4. Chaves Pblicas e Gerenciamento de Chaves

Parte 1: Fundamentos, Histrico, Classificaes e Motivaes

1. Parte Histrica
Cada um dos 3 sculos anteriores foi dominado por uma nica nova tecnologia: Sculo XVIII: Foi a poca dos grandes sistemas mecnicos que acompanharam a Revoluo Industrial. Sculo XIX: Mquinas a Vapor, consolidao da industrializao padronizada de massa. Sculo XX: As principais conquistas tecnolgicas se deram no campo da aquisio, do processamento e da distribuio de informaes. Instalao de redes de telefonia em escala mundial, a inveno do rdio e da TV, o nascimento e o crescimento da informtica. Sculo XXI: Evoluo de modo transparente das tecnologias convergindo rapidamente. Diferenas de coletas, armazenamento e transporte esto desaparecendo rapidamente, Organizaes com escritrios geograficamente distribudos rapidamente se comunicam, converso das tecnologias ao modelo ETHERNET. Apesar da indstria de informtica ser jovem em comparao a outros setores (automobilstico e areo), foi simplesmente espetacular o progresso que os computadores experimentaram em curto perodo. Durante as primeiras dcadas de sua existncia, os sistemas eram altamente centralizados em geral instalados em uma grande sala, muitas vezes com acesso restrito. A fuso dos computadores e comunicaes teve uma profunda influncia na forma como os sistemas computacionais so organizados. O conceito ento dominante de
1

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

centro de computao como uma sala com um grande computador aos quais os usurios levam seu trabalho para processamento agora est totalmente obsoleto. Este conceito foi alterado para em vez de um computador processando tudo centralizadamente para que trabalhos so realizados por um grande n de computadores separados, porm interconectados. Esses sistemas so chamados de redes de computadores. Redes de computadores envolvem equipamentos, protocolos, modelos de referncia para uso em hardwares de rede, j os sistemas distribudos responsvel pela implementao de um modelo coerente em software, em outras palavras, um sistema de software instalado na parte superior de uma rede dando alto grau de coeso e transparncia. Exemplo: World Wide Web sob ETHERNET. Em um sistema distribudo a existncia de vrios computadores autnomos transparente para o usurio ele entra com um comando e o SO que decide qual processador ou PC executar, enquanto que em redes o usurio que decide em qual PC far o acesso para execuo. A ARPANET: A histria comea no final da dcada de 1950. No auge da Guerra Fria, o DoD dos EUA queria uma rede de controle e comando capaz de sobreviver a uma guerra nuclear. Nessa poca todas as comunicaes militares passavam pela rede de telefonia pblica, considerada vulnervel. Na dcada de 1960, o DoD firmou um contrato com a RAND Corporation para encontrar uma soluo. Um de seus funcionrios Paul Baran, apresentou um projeto altamente distribudo e tolerante a falhas, tendo em vista que os caminhos entre duas centrais de comutao quaisquer poderia ser feito por mais de uma rota. A idia foi meio que ignorada por parceiras como AT&T (lder telefonia). Porm os americanos verificaram que estavam atrs na corrida espacial quando os soviticos lanaram o primeiro satlite artificial denominado Sputnik em 1957. Desse modo os EUA criaram no pentgono uma diviso denominada ARPA (Advanced Research Projects Agency). Tal agncia realizava seu trabalho oferecendo concesses a empresas e universidades para desenvolvimento conjunto para o DoD. E foi assim que verificaram que seria interessante assim como em outros pases j existiam iniciativas de criar uma rede digital de comutao de pacotes. Desse modo em 1967 foi criada a ARPANET. Inicialmente em 56 Kbps e em 1972 j interconectava costa a costa americana. No final dos anos 70, a ARPANet tinha crescido tanto que o seu protocolo de comutao de pacotes original, chamado Network Control Protocol (NCP), tornou-se inadequado. Foi ento que a ARPANet comeou a usar um novo protocolo chamado TCP/IP (Transmission Control Protocol/Internet Protocol). ARPANet divide-se e origina a MILNET -- para assuntos militares -- e o restante da rede torna-se pblica e tem seu nome alterado para Internet.

2. Usos de Redes de Computadores


2.1 Aplicaes Comerciais: Foco no compartilhamento de recursos, o objetivo deixar programas, equipamentos e especialmente dados ao alcance de seus usurios. Ex: Compartilhamento de impressora e servidor de arquivos. Modelo Cliente/Servidor

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Exemplos de redes comerciais: e-mail, Remote Desktop, VoIP, e-commerce. Formas de e-commerce: Abreviao Significado Exemplo Business to Consumer Compra online (livros, DVDs) B2C Business to business Fbrica solicitando pneu a fornecedor B2B Government to consumer Governo distribuindo formulrios G2C impostos Consumer to consumer Mercado livre, OLX. C2C Peer-to-Peer Compartilhamento arquivos P2P 2.2 Aplicaes Domsticas: Em 1977, Ken Olsen era presidente da Ditial Equipment Corporation, ento o segundo maior fornecedor de computadores de todo o mundo (depois da IBM). Quando lhe perguntaram por que a Digital no estava seguindo a tendncia de mercado de computadores pessoais ele respondeu: No h nenhuma razo para qualquer indivduo ter um computador em casa. A histria mostrou ao contrrio e a Digital no existe mais. As pessoas compravam antigamente computadores para processamento de textos, planilhas, programas especficos e jogos. Atualmente a maior motivao a conexo a Internet. Agora muitos dispositivos mveis tem acesso a grande rede sendo a era da conectividade. Ex. de aplicaes Domsticas: Acesso a WWW, peer-to-peer, Messengers, Redes Sociais, Wikis, Vdeos sob demanda, Computao Ubqua, RFID, etc.

3. Questes Sociais:
Redes sociais: compartilhamento de idias com indivduos com o mesmo pensamento, ser? As vezes o que inofensivo para a gente poder ser ofensivo para outra pessoa, principalmente questes relacionadas a credo, raa, time de fuutebol. A criao de perfis em empresas para acesso restrito ou irrestrito de informaes dos usurios. Um administrador pode bloquear um tipo de servio a determinado tipo de usurios, mas o patro tem o direito de ler o que o funcionrio escreve
3

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

em um simples email somente por estar utilizando de dentro de sua empresa? Isso invaso de privacidade? Roubo de identidade na web: Pessoas ou computadores podem se passar por outros indivduos na realizao de tarefas automticas. Por isso uso de CAPTCHAs.

4. Hardware de Rede:
No existem taxonomia para classificao de redes. Classificaes de redes quanto a TECNOLOGIA DE TRANSMISSO E ABRANGNCIA: 4.1 Tecnologias de Transmisso: UNICASTING: Ponto a ponto conectam pares de mquinas individuais. Envio de um transmissor para um receptor. Para ns conectados no vizinhos so realizados hops (pulos). BROADCASTING (desenhar): Um canal de comunicao compartilhado por todas as mquinas, os pacotes podem ser enviados por qualquer mquina e so recebidos por todas as outras, porm seno foi endereado a ela descartado. Alguns sistemas permitem o envio para um grupo ou subconjunto de mquinas, essa modalidade chamada de MULTICASTING. 4.2 Escala (Abrangncia):

LAN: Normalmente redes privadas, contidas em alguns KM de extenso. Velocidade de 10 a 100 MBps. Ligao INTEREDES: realizada com equipamentos especiais denominados GATEWAYS. Esse GW realiza as conexes e faz as converses necessrias de HW e SW.

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Antigamente o hardware de rede que tinha importncia, porm a estruturao dos softwares de rede ficou deliberadamente estruturada, portanto faz-se necessrio termos cincia de alguns termos que sero utilizados no decorrer do curso todo.

5. Software de Rede:
5.1 Hierarquia de Protocolos: Para reduo da complexidade do projeto de rede, a maioria organizada como uma pilha de camadas (ou nveis), colocadas uma sobre as outras. O n, nome, funes diferem de uma para outra camada de maneira bem definida. O objetivo de cada camada fornecer determinados servios as camadas superiores. Quando uma camada n se comunica com outra camada n de outra mquina, as regras e convenes dessa comunicao recebem o nome de protocolo (conjunto de primitivas de servios). Basicamente, um protocolo um acordo entre as partes para uma comunicao. Ex. Protocolo de aperto de mo, beijo, diferente de uma princesa para um buteco. Entre cada camada existe uma interface que define as operaes e servios da camada inferior para a superior. Um conjunto de camadas e protocolos chamado de arquitetura de rede. Ex. Comunicao entre duas pessoas que no falam uma lngua em comum, pg. 19. 5.2 Confiabilidade - Questes de projeto relacionadas s camadas: Relacionadas Confiabilidade Deteco de Erros: Como termos um mecanismo de localizao de erros? Podem ocorrer problemas fsicos, eltricos, como garantir que um bit que foi enviado de uma mquina chegou corretamente ao destino? Correo de Erros: Se encontramos um erro na comunicao como corrigilo? Roteamento: Como podemos saber um caminho que funcione corretamente para o envio de uma MSG? Endereamento: Como enderear corretamente uma mquina de destino ou diversas mquinas de destino? Escalabilidade: Como ter um projeto de rede que seja possvel crescer quando a cidade/pas/empresa tiver um crescimento? Alocao de Recursos: como um transmissor rpido envia informaes para um receptor lento? H uma necessidade de controle de fluxo. Congestionamento: A rede pode ficar sobrecarregada quando muitos computadores querem enviar trfego e a rede no supri tal demanda, Omo resolver isso? Qualidade de Servio: Como manter a qualidade do servio de aplicaes que so importantes para a organizao, existe como? Confidencialidade: Como manter a confidencialidade na comunicao entre hosts da mesma organizao? 5.3 Primitivas de Servios: Um servio especificado formalmente por um conjunto de primitivas (operaes) disponveis para que os processos do usurio acessem o servio. Essas primitivas informam ao servio que ele deve executar alguma ao ou relatar uma ao executada por uma entidade par. Essas primitivas podem ser usadas para uma interao de solicitao/resposta em uma ambiente cleinte/servidor. Mostrar um handshake (LISTEN, CONNECT, RECEIVE, SEND, DISCONNECT).

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

5.4 Tipos de Servios: As camadas podem oferecer dois tipos de servios as camadas superiores. 5.4.1 Servios orientados a conexo: Como a chamada telefnica: para falar com algum voc tira o telefone do gancho, tecla o telefone de destino, fala e em seguida desliga. Da mesma forma para conexes como se fosse um tubo: o transmissor empurra objetos (bits) e o receptor recebe do outro lado. Na maioria dos casos a ordem preservada, de forma que os bits chegam na sequncia como saram da origem. 5.4.2 Servios no orientados a conexo: Como no sistema postal, cada mensagem (carta) carrega o endereo de destino completo e cada uma delas roteada pelo ns intermedirios do sistema, independentemente das outras. Essa carta no sistema no orientado a conexo recebe o nome de DATAGRAMA. QP: Qual a principal diferena entre comunicao no orientada a conexo e orientada?

Parte 2: Modelos de Referncia

1. Modelos de Referncia:
Dois so os modelos a serem apresentados: OSI e TCP/IP. O modelo ISO/OSI: Modelo de referncia ISO OSI (Open System Interconnection), pois ele trata da interconexo de sistemas abertos, ou seja, sistemas abertos com outros sistemas. Modelo de 7 camadas (Camada Fsica, Enlace, Rede, Transporte, Sesso, Apresentao, Aplicao). Colocar Figura 1.17.

Camada Fsica: Trata da transmisso de bits normais por um canal de comunicao.

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Camada de Enlace: principal funo transformar um canal de transmisso normal em uma linha que parea livre de erros de transmisso. Camada de Rede: Controla a operao da sub-rede, determina como os pacotes so roteados da origem at o destino. Camada de Transporte: aceitar dados da camada acima dela, dividi-los em unidades menores, se for preciso, repassar essas unidades a camada de rede e garantir que todos os fragmentos chegaro corretamente outra extremidade. Determina tambm o tipo de servio. Camada de Sesso: Controle de dilogo, gerenciamento de tokens, sincronizao. Camada de Apresentao: Sintaxe e semntica das informaes, comunicao de computadores com diferentes representaes. Camada de Aplicao: Contm uma srie de protocolos comumente necessrios para os usurios. Ex. HTTP.

Quais eram os problemas do padro ISO/OSI?? Por que ele no deu certo?? Momento Ruim: O apocalipse dos dois elefantes: Fig. 1.21

Tecnologia Ruim: Escolha de 7 camadas foi mais poltica que tcnica. Difcil implementao para equipamentos. Implementaes Ruins: As implementaes realizadas se mostraram lentas. Enquanto que UNIX surgia com a pilha TCP/IP j implementada para ARPANET. Poltica Ruim: em 80 as universidades tinha adorao por UNIX o que dificultou o uso do padro. O Modelo de referncia TCP/IP: modelo com 4 camadas usada na av de todas as redes a ARPANET.

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Camada de Enlace: Camada de interconexo com servio no orientado a conexo. Camada de INTERNET (Camada de Rede): integra toda a arquitetura, mantendo-a unida, correspondente a camada de rede do modelo OSI. Camada de Transporte: permitir que as entidades pares dos hosts de orgiem e de destino mantenham uma conversao igual modelo OSI. Porm com uso de protocolos especficos: TCP e UDP. Camada de Aplicao: Contm todos os protocolos de nvel mais alto. HTTP, FTP, TELNET, RTP, SMTP. Iremos aprender conforme segue no livro texto da disciplina o modelo de camadas: Fsica, Enlace, Rede, Transporte, Aplicao. ______________________________________________________________________ Parte 3: A Camada Fsica

1. A Camada Fsica:
a camada mais baixa na hierarquia do modelo de protocolo. Ela define a interface eltrica, de sincronizao e outras, pelas quais os bits so enviados como sinais pelos canais. A camada fsica o alicerce sobre o qual a rede construda. Como as propriedades dos diferentes tipos de canais fsicos determinam o desempenho (por exemplo, troughput, latncia e taxa de erros). A camada 1 do Modelo ISO/OSI conforme podemos ver abaixo Physical.

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

2. Cabeamento Estruturado:
Pares Tranados: Um dos meios de transmisso mais antigos e ainda mais comuns o par tranado. Um par tranado consiste de em dois fios de cobres encapados, que em geral tem cerca de 1 mm de espessura. Os fio enrolados de forma helicoidal, assim como DNA. O par tranado feito porque dois fios paralelos formam uma antena simples, juntos apresentam menor interferncia. O cabeamento de rede mais comum o Categoria 5 (CAT 5), apresenta-se com quatro pares de dois fios isolados e levemente tranados agrupados em uma capa plstica denominado conector RJ 45. Diferentes padres de LAN podem ser usados com os pares tranados de maneira diferente. Por exemplo, 100 MBps usa dois dos quatro pares, j Gigabit utiliza os quatro pares.

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Sentido de envio de dados: FULL DUPLEX: enlace usados nos dois sentidos ao mesmo tempo como uma estrada de mo dupla. HALF DUPLEX: usados nos dois sentidos porm um de cada vez, como uma linha frrea com apenas um trilho.SIMPLEX: Trfego apenas em uma direo. At a categoria 6, esses tipos de fios so conhecidos como par tranado no blindado ou UTP (Unshielded Twisted Pair).

2. Transmisso de Sinal
A transmisso de sinal em uma rede de computadores a propagao de ondas atravs de um meio fsico (ar, fios metlicos, fibra de vidro) que podem ter suas caractersticas (amplitude, freqncia, fase) alteradas no tempo para refletir a codificao da informao transmitida. Esta informao est associada, em geral, s idias ou dados manipulados pelos agentes que as criam, manipulam e processam. Neste cenrio, os sinais correspondem materializao especfica dessas informaes utilizada no momento da transmisso. Ainda, neste contexto e importante entender conceito de sinal analgico e sinal digital. O sinal analgico um tipo de sinal contnuo que varia em funo do tempo.

O sinal digital uma seqncia de pulsos com amplitude fixa (em valores discretos), onde o sinal construdo atravs de uma seqncia de intervalos de tamanho igual a T segundos, chamados intervalos de sinalizao. Um aspecto que pode comprometer a qualidade do sinal transmitido so os rudos. Em qualquer transmisso, o sinal recebido sempre igual ao sinal transmitido modificado

por distores impostas por meios fsicos e por distores inseridas atravs de interferncias indesejveis ou rudos (maior limitao no desempenho dos sistemas de comunicao). O rudo medido pela razo entre a potncia do sinal e a potncia do rudo, chamada de razo (ou relao) sinal-rudo, medido por decibis. O Rudo pode ser:

10

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Trmico: causado pela agitao dos eltrons nos condutores, presente em todos os dispositivos eletrnicos e meios de transmisso, sendo uniformemente distribudo em todas as freqncias do espectro (rudo branco) com quantidade definida em funo da temperatura. Intermodular: causado pelo compartilhamento de um mesmo meio fsico (atravs de multiplexao de freqncia) por sinais de diferentes freqncias. Ocorre em geral devido a defeitos de equipamento ou na presena de sinais de potncia muito alta. Crosstalk: causado pela interferncia indesejvel entre condutores muito prximos que induzem sinais entre si (linhas telefnicas cruzadas, cabos de pares tranados em redes Ethernet, por exemplo). Impulsivo: pulsos irregulares de grande amplitude, no contnuos e de difcil preveno. Tem origem em vrias fontes: distrbios eltricos externos, falha de equipamento, etc. Na transmisso analgica, sendo de curta durao, no causam danos. Na transmisso digital so a maior causa de erros. A atenuao tambm outro fator comprometedor nas transmisses. Caracteriza-se pela queda de potncia de um sinal em funo da distncia de transmisso e do meio fsico. De igual forma o eco, que a reflexo de sinal quando h mudana da impedncia (resistncia passagem de um sinal alternado) do meio de transmisso.

3. Tipos de meio fsico para comunicao de dados:


3.1 Cabo par-tranado: Cabo Par Tranado (10 BaseT). Os cabos de pares tranados, um, dois ou quatro pares de fios so enrolados em espiral dois a dois de forma a reduzir o rudo e manter constantes as propriedades eltricas do meio ao longo de todo o seu comprimento. O trancamento inibe a interferncia entre os pares (diafonia). Suporta transmisso analgica e digital, tem largura de banda relativamente alta (10/100/1000 Mbps, dependendo da distncia, tcnica de transmisso e qualidade do cabo). Os cabos de pares tranados podem ser: - No blindado: (Unshielded Twisted Pair - UTP): quando seus pares so envolvidos unicamente por uma cobertura plstica (possuem preos mais econmicos, porm sujeitos s interferncias). Normalmente 4 pares e bitola de 24 AWG (0,51 mm). Como no existe proteo esto sujeitos a interferncias eletromagnticas externas.

- Blindado: (Shielded Twisted Pair - STP): quando seus pares so envolvidos por uma capa metlica (blindagem) e uma cobertura plstica. A malha metlica confere uma imunidade bastante boa em relao ao rudo, particularmente ao efeito crosstalk de fiaes adjacentes.

a) Categoria 3:
11

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

- Pares tranados slidos AWG 24; - Impedncia de 100 Ohms; - Testado a 16 MHz para atenuao e paradiafonia; - Padro mnimo para 10BaseT. b) Categoria 5: - Pares tranados AWG 22 (rgido) ou AWG 24 (flexvel); - Impedncia de 100 Ohms; - Testado para a largura de 100 MHz; - Pode ser usado para taxas de 100 Mpbs. c) Categoria 5e: - uma melhoria da Categoria 5 (enhanced); - Pode ser usado em redes Gigabit, 1000BaseT, com 4 pares. d) Categoria 6: - compatvel com a Categoria 5e; - Melhor desempenho; - Largura de banda de 250 MHz; - Permite suporte a novas tecnologias como a Ethernet 10 Gbps sem investimentos adicionais na infra-estrutura atual.

A Conectorizao do par tranado:

3.2 Comunicao por linhas de energia eltrica. As redes de telefonia e televiso no so as nicas fontes de fiao que podem ser reaproveitadas para comunicao. H outro tipo de fiao que pode ser utilizada para tal propsito a rede de fiao eltrica. Por exemplo, o padro X10 capaz de enviar

12

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

dados em redes com pulsao de 60 MHz (Usina Itaip). Mais utilizado tal padro para sistema de domtica (automao residencial). 3.3 Fibra tica Custo alto de instalao porm alta velocidade de envio ordem de 10 Gbps. A fibra tica utilizada em transmisso por longa distncia nos backbones da rede, LANs de alta velocidade. A grande vantagem de serem imunes a rudos induzidos electromagneticamente.Dois tipos so encontrados para conexo: fibra de multmodo e monomodo, Monomodo Como o nome j diz, as fibras monomodo s podem atender a um sinal por vez. Ou seja, uma nica fonte de luz (na maior parte das vezes, laser) envia as informaes por enormes distncias. As fibras monomodo apresentam menos disperso, por isso pode haver distncias muito grandes entre retransmissores. Teoricamente, at 80 quilmetros podem separar dois transmissores, mas na prtica eles so um pouco mais prximos. Outra vantagem das fibras desse tipo a largura da banda oferecida, que garante velocidades maiores na troca de informaes. Multmodo Fibras multimodo garantem a emisso de vrios sinais ao mesmo tempo (geralmente utilizam LEDs para a emisso). Esse tipo de fibra mais recomendado para transmisses de curtas distncias, pois garante apenas 300 metros de transmisses sem perdas. Elas so mais recomendadas para redes domsticas porque so muito mais baratas.

4. Comunicao Sem Fios


4.1 Espectro Eletromagntico: O espectro eletromagntico visual e no visual.

4.1.1 A Poltica do espectro Eletromagntico: Para evitar o caos tm sido feitos acordos nacionais e internacionais a respeito do uso de freqncias. As naes determinam alocao de faixas do espectro para AM, FM, TV, Celulares, telefonia,

13

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

polcia, militar, rgos martimos e governo. Em termos mundiais a ITU tenta coordenar essa alocao de forma para que sejam fabricados dispositivos que funcionem no mundo todo. De acordo com a proposta, a maioria dos governos reserva algumas bandas de freq., chamadas de ISM (INDUSTRIAL, SCIENTIFIC, MEDICAL) para uso sem licena. Sistema de garagens, telefones sem fio, microondas, etc. Tais equipamentos trabalham sobre potncia mxima de 1 Watt. As Faixas ISM so: 900 MHz, 2.4 GHz, 5.4 GHz e 5.8 GHz. 4.1.2 Reguladora no Brasil: ANATEL. Mas como sair de interferncias se diversos aparelhos trabalham nas mesmas freqncias? Tanto nos canais com fios e sem fios estamos sujeitos a interferncias. Os canais sem fio e com fio transportam sinais analgicos, como a tenso variando continuamente, a intensidade da luz ou intensidade da onda. Para enviar informaes temos que criar sinais digitais para representar os bits. O processo de converso entre bits e sintais que os representam chamado de modulao digital. Muitas vezes como necessitamos compartilhar o canal, ou espectro no caso das redes sem fio, necessrio realizar o que chamamos de multiplexao. A multiplexao pode ser realizada de diversas manteiras: diviso de tempo, freqncia e cdigo. 4.2 Espectro por salto de freqncia: o transmissor salta de uma freq. para outra centenas de vezes por segundo. Essa robustez torna a tcnica til para as partes mais sobrecarregadas do espectro (2.4 GHz). Utilizada por Bluetooth e IEEE 802.11 b. 4.3 Multiplexao por diviso de freq ou FDM (Frequency Division Multiplexing): Separao de frequncias para envio com posse exclusiva de cada canal. Utilizado em AM/FM. Na multiplexao ortogonal por diviso de fequncia, ou OFDM (Orthogonal Frequency Divsion Multiplexing), a largura de banda do canal dividida em muitas subportadoras que enviam dados independentemente. Utilizado em IEEE 802.11 e pesquisado para 4G. Em linhas gerais enviam as informaes em freqncias sobrepostas porm sem interferncia. Ento a FFT pode remontar tais freqs. OFDM usado em IEEE 802.16d. 4.4 Multiplexao por Dviso de Tempo: TDM (Time Divsion Multiplexing): Os usurios alternam-se num padro de rodzio cada um periodicamente usando a largura de banda inteira por um perodo curto de tempo.Os bits de cada fluxo de entrada so separados em slots de tempo. 4.5 Multiplexao por Diviso de Cdigo: Espectro de disperso de sequncia direta (CDMA Code Division Multiple Access): Usa uma sequncia de cdigo para disperar o sinal de dados por uma banda de freq. mais ampla. O CDMA permite que cada estao transmita por todo o espectro de freq. o tempo todo. A chave do CDMA extrair sinal desejado e rejeitar todos os outros de rudo aleatrio. Explicao Didtica: O saguo do aeroporto com muitos pares de pessoas conversando ao mesmo tempo. TDM: todas as pessoas estariam no meio do salo porm conversariam por turnos. Com a FDM, as pessoas formariam grupos bem separados, cada uma mantendo sua conversao ao mesmo tempo, alguns com uma altura maior e outros com uma altura menor. J CDMA ,todas as pessoas estariam no meio do saguo

14

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

falando ao mesmo tempo mas cada par de pessoas conversando em um idioma diferente. O par que falasse indiano somente entenderia outro par que por ventura estivesse falando indiano tambm. Outra explicao didtica refere-se ao chuveiro eltrico e ao fluxo contnuo de uma mangueira. FDM (fluxo contnuo de gua) e OFDM (chuveiro eltrico) 4.6 Telefonia Celular A primeira gerao dos celulares era analgica (voz analgica), a segunda gerao digital. A troca para digital tem diversas vantagens. Ela oferece ganhos de capacidade, permitindo que os sinais de voz sejam digitalizados e compactados. Melhor segurana, etc. 4.6.1 GSM (Global System for mbile communications) voz digital, surgiu em 1991 como esforo para produzir o padro 2G europeu. Mantm do 1G a caracterizao de clulas, reutilizao de freqs. das clulas no vizinhas e mobilidade com handoffs medida que os assinantes se movem. Utilizao de chip removvel (SIM Subscriber Identity Module Mdulo de identidade do assinante). GSM trabalha em faixa de freqs. de 900, 1800 e 1900 MHz. Sistema celular duplex por diviso de freqncia.Contudo um nico par de freqs. dividido por multiplexao por diviso em slots de tempo. Desse modo, compartilhado a freq. por vrios aparelhos. 4.6.2 3G: Voz e dados Digitais: Problemas encontrados atualmente no setor: Trfego de dados est superando o trfego de voz na rede. Atualmente dispositivo no mais apenas para voz, web, redes sociais, email, multimdia, etc.. Com o surgimento do iOS e Android isso se intensificou. Como conseguir o envio de dados e voz ao mesmo tempo basicamente com o mesmo espectro e dividi-lo? Resposta: CDMA aperfeioado como utilizado EDGE. 4.6.3 4G: Est definido?? Brasil = Negativo: WiMAX ou LTE briga poltica ainda. Porm os sistemas de TV Digital que necessitam do canal de retorno provavelmente sairo do papel quando ocorrer tal desenvolvimento.

Parte 4: A Camada de Enlace

1. A Camada de Enlace de Dados


Infelizmente muitas vezes os canais de comunicao produzem erros e necessitamos entender como corrigi-los para criar vivel uma comunicao eficaz. Existem limitaes relacionadas ao tamanho do canal, atrasos no envio e recebimento das informaes, alterao constante da taxa de dados no envio, e ordem diferente de recebinento. Funes da Camada de Enlace de Dados: 1. Fornecer uma interface de servio bem definida camada de rede; 2. Lidar com Erros de Transmisso; 3. Regular o fluxo de dados de tal forma que receptores lentos no sejam atropelados por transmissores rpidos. Para corrigir esses erros a camada de enlace encapsula esses dados dos pacotes da camada de rede em quadros para transmisso pelo meio fsico. Cada quadro contm um cabealho (header), um campo de carga til (payload) e um final (trailer).

15

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

A camada de enlace pode ser projetada de modo a oferecer diversos servios.

2 Tipos de Servios:
Os servios reais oferecidos podem variar de um protocolo para outro. 3 possibilidades de funcionamento para tais protocolos: Servio no orientado a conexes sem confirmao: consiste em fazer a mquina de origem enviar quadros independentes mquina de destino, sem que esta confirme o recebimento desses quadros. A Ethernet um bom exemplo deste tipo de servio. Se algum for perdido em decorrncia de rudos na linha, no haver nenhuma tentativa de detectar a perda ou recuper-la na camada de enlace! Ficando a cargo de outra camada. Servio no orientado a conexes com confirmao: Cada quadro enviado confirmado individualmente. O transmissor sabe se um quadro chegou corretamente ou no. Caso no tenha chegado dentro de um intervalo especfico, o quadro poder ser enviado outra vez. til em canais no confiveis ex. IEEE 802.11. Servio orientado a conexes com confirmao: As mquinas de origem e destino estabelecem uma conexo antes de qualquer dado ser transferido. Cada quadro enviado pela conexo numerado, e a camada de enlace garante que cada quadro ser, de fato, recebido. til para enlaces longos como satlites e circuito telefnico interubano. Se o servio no orientado a conexes com confirmao fosse usado possvel imaginar que as confirmaes perdidas poderiam fazer com que um quadro inteiro fosse enviado e recebido vrias vezes, desperdiando banda. 2.1 Enquadramento Para oferecer servios a camada de rede a camada de enlace deve usar o servio fornecido pela camada fsica. O que a camada fsica faz aceitar um fluxo de bits brutos e tentar entreg-lo ao destino. Se o canal tiver rudo, como acontece na maioria dos canais sem fio e alguns com fio, a camada fsica acrescentar alguma redundncia aos seus sinais, para reduzir a taxa de erros de bits para um nvel tolervel. Contudo, o fluxo de bits recebido pela camada de enlace no tem garantia de estar livre de erros. Alguns bits podem ter valores diferentes e o nmero de bits recebidos pode ser menor, igual ou maior que o nmero de bits transmitidos. A camada de enlace de dados responsvel por detectar e, se necessrio, corrigir tais erros. Em geral a estratgia utilizada pela
16

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

camada dividir o fluxo de bits em quadros distintos, calcular um pequeno valor (token), chamado de checksum (somatrio de verificao), para cada quadro e incluir essa soma de verificao no quadro quando ele for transmitido. Quando um quadro chega a seu destino o checksum recalculado. Se o checksum recm-calculado for diferente for diferente do contido no quadro, a camada de enlace saber que houve um erro. Quatro mtodos so possveis para realizar tal ao: Contagem de caracteres: utiliza um campo no cabealho para especificar o n de bytes no quadro. Quando v a contagem de caracteres, a camada de enlace de dados de destino sabe quantos bytes devem vir em seguida e, conseqentemente, onde est o fim do quadro. O problema com esse algoritmo que a contagem pode ser adulterada por um erro de transmisso. No muito usado Figura 3.3(a,b). Bytes de flag com insero de bytes: Contorna o erro anterior fazendo com cada quadro comece com bytes especiais. Normalmente o mesmo byte, chamado de byte de flag. Flags iniciais e finais, com insero de bits: Com cada quadro comece e termine com bytes especiais. Normalmente o mesmo byte, chamado de byte de flag. Dois bytes de flag indicam o fim de um quadro e incio de outro. Assim, se o receptor perder a sincronizao, ele poder simplesmente procurar dois bytes de flag para encontrar o final do quadro atual e o incio do seguinte. Problema: Se aparecer como em imagens digitais o caracter especial no meio do quadro? Por exemplo no payload. Violaes de codificao da camada fsica: Atalho da camada fsica, foco em encontrar o incio e o final dos quadros. Um padro muito comum em IEEE 802.11 fazer com que um quadro comece com um padro bem definido chamado prembulo. Esse padro pode ser muito longo no caso de IEEE 802.11 (72 bits). O prembulo , ento, seguido por um campo de comprimento (contador) no cabealho, que usado para localizar o final do quadro.

17

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

2.2 Controle de Fluxo da Camada de Enlace Como resolver o problema de envio de dados de um receptor lento e um transmissor rpido? Como no caso dos smartphones, mesmo que a conexo no tenha perdas os aparelhos no tem grande capacidade de recebimento de dados, independentemente do canal de comunicao, devido ao seu processamento e S.O. Duas maneiras so usadas para realizar tal procedimento de validao dos dados para esse tipo de enlace. A primeira refere-se ao controle de fluxo baseado em feedback onde o receptor envia ao transmissor sua capacidade de recebimento para que o emissor no transborde o canal e percam-se os dados. O segundo baseado no controle de fluxo baseado na velocidade. Tem-se um protocolo limitador de velocidade de dados do emissor para o receptor.

2.3 Controle de Erros da Camada de Enlace Aps resolvermos os problemas de delimitao de incio e fim de cada quadro, vamos ao seguinte problema: como ter certeza de que todos os quadros sero entregues a camada de rede de destino e na ordem apropriada? Suponha, para o momento, que o receptor possa saber se um quadro que ele recebe contm informaes corretas ou defeituosas. Para servios no orientados a conexo, sem confirmao, pode ser suficiente que o emissor apenas continue enviando quadros sem se importar se eles chegaram corretamente, mas sem dvida essa no seria uma boa opo para servios orientados a conexes confiveis. A forma mais comum de garantir uma entrega confivel dar ao transmissor algum tipo de feedback sobre o que est acontecendo no outro extremo da linha. Normalmente, o protocolo solicita que o receptor retorne quadros de controle especiais com confirmaes positivas ou negativas sobre os quadros recebidos. Se for positiva, saber que o quadro chegou com segurana, caso contrrio houve algum problema na conexo e deve ser retransmitido. Complicao adicional 1: se houver uma rajada de rudos? E o receptor nem saber que lhe esto enviando algo? Nesse caso o receptor no reagir solicitando o reenvio pois nem saber que algo foi enviado. Complicao adicional 2: E se o quadro de confirmao se perder? O emisor no saber como prosseguir. Envia novamente ? Como tratar isso? 1-) Uma possibilidade adicionando timers suficientemente grandes para que d tempo o envio, recebimento pelo receptor, tratamento e resposta chegando at o emissor. Caso o timer estoure enviado novamente o quadro. 2-) Outra possibilidade para tratar o problema do envio duplo de quadros e repassamento duplo a camada de rede pelo receptor numerar os quadros no envio para que o receptor saiba que os mesmos so diferentes. 2.4 Cdigo de Correes de Erros: Todos esses cdigos adicionam redundncia s informaes enviadas.

18

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Hamming: Para entender como os erros podem ser tratados, necessrio verificar de perto o que de fato um erro. Normalmente, um quadro consiste em m bits de dados (ou seja, de mensagens) e de r bits redundantes ou de verificao. Seja o tamanho total n (isto , n = m + r). Com freqncia, uma unidade de n bits que contm bits de dados e bits de verificao chamada palavra de cdigo (codeword) de n bits. Dadas duas palavras de cdigo, digamos 10001001 e 10110001, possvel determinar quantos bits correspondentes apresentam diferenas. Nesse caso, so 3 os bits divergentes. Para determinar quantos bits apresentam diferenas, basta efetuar uma operao OR exclusivo entre as duas palavras de cdigo, e contar o nmero de bits 1 no resultado. Por exemplo:

O nmero de posies de bits em que duas palavras de cdigo diferem entre si chamado distncia de Hamming (Hamming, 1950). Isso significa que, se duas palavras de cdigo estiverem a uma distncia de Hamming igual a d uma a outra, ser necessrio corrigir d erros de bits isolados para converter uma palavra na outra. Como um exemplo simples de cdigo de correo de erros, considere um cdigo contendo apenas quatro palavras de cdigo vlidas: 0000000000, 0000011111, 1111100000 e 1111111111 Esse cdigo tem uma distncia igual a 5, o que significa que ele pode corrigir erros duplos. Se a palavra de cdigo 0000000111 for detectada, o receptor saber que a original deve ter sido 0000011111. No entanto, se um erro triplo transformar 0000000000 em 0000000111, o erro no ser corrigido da maneira adequada. Suponha que desejamos criar um cdigo com m bits de mensagem e r bits de verificao que permitiro a correo de todos os erros simples. Cada uma das 2m mensagens vlidas tem n palavras de cdigo invlidas a uma distncia igual a 1 da mensagem. Essas palavras invlidas so formadas pela inverso sistemtica de cada um dos n bits da palavra de cdigo de n bits formada a partir dela. Portanto, cada uma das 2m mensagens vlidas exige n + 1 padres de bits dedicados a ela. Como o nmero total de padres de bits 2n , devemos ter (n + 1)2m2n. . Utilizando n = m + r, esse requisito passa a ser (m + r + 1) 2r. Se m for determinado, o limite para o nmero de bits de verificao necessrios para corrigir erros isolados ser mais baixo.

3. Protocolos da Camada de Enlace


No que se refere camada de enlace de dados, o pacote repassado a ela pela camada de rede atravs da interface consiste em dados puros, em que cada bit deve ser entregue camada de rede de destino. O fato de a camada de rede de destino poder interpretar parte do pacote como um cabealho no tem nenhum interesse para a camada de enlace de dados. Quando a camada de enlace de dados aceita um pacote, ela o encapsula em um quadro, acrescentando-lhe um cabealho e um final de enlace de dados (veja a Figura 3.1).

19

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Portanto, um quadro consiste em um pacote incorporado, em algumas informaes de controle (no cabealho) e em um total de verificao (no final). Em seguida, o quadro transmitido camada de enlace de dados da outra mquina. Presumiremos que existem procedimentos de biblioteca adequados, para enviar um quadro e from_physical_layer para receber um quadro. O hardware de transmisso calcula e acrescenta o total de verificao (criando assim o final), de forma que o software da camada de enlace de dados no precise se preocupar com isso. 3.1 Um protocolo simplex sem restrio: um protocolo muito simples, onde os dados so transmitidos somente em um sentido. As camadas de rede do transmissor e do receptor esto sempre prontas espera de informaes. O tempo de processamento pode ser ignorado, o espao em buffer infinito e o canal de comunicao entre as camadas de enlace de dados nunca danificado e nem perde quadros. Em suma, um protocolo imaginrio ou utpico. O protocolo consiste em dois procedimentos distintos, um que envia e outro que recebe a informao. Neste caso, no so usados nmeros de seqncia ou de confirmao. A parte referente aos dados repassada camada de rede, e a camada de enlace de dados volta a esperar pelo prximo quadro, ficando efetivamente em suspenso at a chegada de outro quadro. 3.2 Um protocolo simplex stop-and-wait: O principal problema que este protocolo veio lidar foi impedir que o transmissor inunde o receptor com dados, mais rapidamente do que este capaz de process-los. Em determinadas circunstncias talvez seja possvel para o transmissor simplesmente inserir um retardo no protocolo 1, a fim de reduzir sua velocidade e impedi-lo de sobrecarregar o receptor. Uma soluo mais vivel fazer o receptor enviar um feedback ao transmissor, ou seja, uma vez enviado um determinado quadro, outro somente ser enviado aps o recebimento de uma confirmao. Esta estratgia um mecanismo, inclusive de controle de fluxo. Embora o trfego de dados seja simplex, h fluxo de quadros em ambos os sentidos. 3.3 Um protocolo simplex com canal de rudo: Neste protocolo considera-se uma situao normal em um canal de comunicao, no qual ocorrem erros. Os quadros podem ser danificados ou completamente perdidos. Se assim acontecer, supomos que o hardware receptor detectar essa ocorrncia ao calcular o total de verificao.Somente uma confirmao por parte do receptor no suficiente. Caso a comunicao seja perdida, em muitos casos necessrio realizar uma retransmisso, e para isso indispensvel adicionar um nmero de seqncia no cabealho de cada quadro enviado de modo que o receptor saiba que o quadro enviado novamente o mesmo que fora enviado anteriormente. O receptor informa caso recepo corra sem problemas e

20

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

importante notar que o nmero de seqncia pode ter comprimento de apenas 1 bit. Esse tipo de protocolo tem diversas variantes, a saber: - PAR (Positive Acknowlodgement with Retransmission) Confirmao Positiva com Retransmisso; - ARQ (Automatic Repeat reQuest) Solicitao de Repetio Automtica.

3.4 Protocolos de Janela deslizante O protocolo de janelas deslizantes usado para a entrega confivel e ordenada de mensagens. um protocolo orientado a conexo (primeiro garante que a conexo est ativa, para depois iniciar o envio das mensagens) que garante que todas as mensagens enviadas so entregues aos destinatrios integralmente e na ordem correta de envio. O receptor envia uma mensagem de confirmao de recebimento (ACK) a cada mensagem recebida. Se o transmissor no recebe o ACK de uma mensagem num tempo pr-estabelecido, ele envia a mesma mensagem novamente. O transmissor cria uma espcie de tabela, onde cada posio uma janela, em que so gravadas todas as mensagens que foram enviadas.

21

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

4. A Camada de Enlace da Internet:


A Internet consiste em mquinas individuais (hosts e roteadores) e na infraestrutura de comunicao que as conecta. Na prtica, a comunicao ponto-a-ponto utilizada principalmente em duas situaes. Na primeira, milhares de organizaes tm uma LAN ou mais e um roteador ou ponte (Bridge). Comumente os roteadores so interconectados por uma LAN de backbone. Assim, todas as conexes como mundo exterior passam por um ou mais roteadores que tm linhas privativas ponto-a-ponto. So esses roteadores e suas linhas que compem as sub-redes de comunicao que a Internet se baseia. Os computadores domsticos estabelecem uma conexo com um determinado roteador de um provedor de servios da Internet. Parte 5: A Sub-Camada de Acesso ao Meio

1. A Sub-Camada de Acesso ao Meio


Em qualquer rede de difuso, a questo fundamental determinar quem tem direito de usar o canal quando h uma disputa por ele. Para tornar essa questo mais clara, considere uma chamada de teleconferncia, na qual seis pessoas em seis diferentes telefones esto todas conectadas entre si, de forma que cada uma pode ouvir e falar com todas as outras. muito provvel que, quando uma delas parar de falar, duas ou mais comecem a falar ao mesmo tempo, levando ao caos. Em uma reunio face a face, a confuso evitada por meios externos. Por exemplo, em uma reunio, as pessoas levantam as mos para pedir permisso para falar. Quando apenas um nico canal est disponvel, a determinao de quem deve ser o prximo a falar muito mais difcil. Existem vrios protocolos destinados a solucionar o problema, e eles formam o contedo deste captulo. Na literatura, os canais de difuso s vezes so referidos como canais de multiacesso ou canais de acesso aleatrio. Os protocolos usados para determinar quem ser o prximo em um canal de multiacesso pertencem a uma subcamada da camada de enlace de dados, chamada subcamada MAC (Medium Access Control). A subcamada MAC especialmente importante em LANs que, em sua maioria, utilizam um canal de multiacesso como base de sua comunicao. 1.1 Alocao Esttica de Canais: A maneira tradicional de alocar um nico canal, tal como um tronco telefnico, entre vrios usurios concorrentes usar a FDM (Frequency Division Multiplexing)1. Se existem N usurios, a largura de banda dividida em N partes do mesmo tamanho e a cada usurio ser atribuda uma parte. No entanto, quando o nmero de transmissores grande e continuamente varivel, ou quando o trfego ocorre em rajadas, a FDM apresenta alguns problemas. Se o espectro for dividido em N reas, e menos de N usurios estiverem interessados em estabelecer comunicao no momento, uma grande parte do espectro ser desperdiada. Se mais de N usurios quiserem se comunicar, alguns deles tero o acesso negado por falta de largura de banda, mesmo que alguns dos usurios aos quais foi alocada uma banda de freqncia raramente transmitam ou recebam dados. Os mesmos argumentos que se aplicam FDM tambm se aplicam TDM (Time Division Multiplexing). Para cada usurio, alocado estaticamente o Nsimo slot de tempo. Se o usurio no empregar o slot alocado, este ser
1

Chuveiro ou AM/FM cada um tem o seu canal separadamente.


22

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

simplesmente desperdiado. O mesmo vlido se dividirmos as redes fisicamente. Usando mais uma vez nosso exemplo anterior, se substitussemos a rede de 100 Mbps por 10 redes de 10 Mbps cada uma e fizssemos a alocao esttica de cada usurio a uma delas, o retardo mdio saltaria de 200 s para 2 ms. Como nenhum dos mtodos estticos tradicionais de alocao de canais funciona bem com um trfego em rajadas, agora vamos tratar dos mtodos dinmicos. 1.2 Alocao Dinmica de Canais: Premissas para a alocao dinmica de Canais. 1. Modelo da estao. O modelo consiste em N estaes independentes (computadores, telefones, comunicadores pessoais etc.), cada qual com um programa ou usurio que gera quadros para transmisso. Algumas vezes, as estaes so chamadas terminais. A probabilidade de um quadro ser gerado em um intervalo de durao t t, onde uma constante (a taxa de chegada de novos quadros). Uma vez gerado um quadro, a estao bloqueada e nada faz at que o quadro tenha sido transmitido com xito. 2. Premissa de canal nico. Um nico canal est disponvel para todas as comunicaes. Todas as estaes podem transmitir e receber por ele. No que se refere ao hardware, todas as estaes so equivalentes, embora um software de protocolo possa atribuir prioridades a elas. 3. Premissa de coliso. Se dois quadros so transmitidos simultaneamente, eles se sobrepem no tempo, e o sinal resultante adulterado. Esse evento denominado coliso. Todas as estaes podem detectar colises. Um quadro que tenha sofrido coliso ter de ser retransmitido posteriormente. No h outros erros alm dos gerados por colises. 4. Tempo contnuo e Tempo Segmentado (Slotted). A transmisso por quadro pode comear a qualquer instante. No h um relgio-mestre dividindo o tempo em intervalos discretos. No tempo segmentado (slotted). O tempo dividido em intervalos discretos (slots). As transmisses de quadros sempre comeam no incio de um slot. O slot pode conter 0, 1 ou mais quadros, correspondentes a um slot ocisoso, uma transmisso bem-sucedida ou a uma coliso, respectivamente. 5. Deteco de portadora (carrier sense) ou sem deteco de portadora. As estaes conseguem detectar se o canal est sendo usado antes de tentarem utiliz-lo. Se for detectado que o canal est ocupado, nenhuma estao tentar us-lo at que ele fique livre. Quando no h deteco de portadora as estaes no conseguem detectar o canal antes de tentar utiliz-lo. Elas simplesmente vo em frente e transmitem. Somente mais tarde conseguem determinar se a transmisso foi ou no bem-sucedida. Ainda necessrio discutir essas premissas um pouco mais. A primeira diz que as estaes so independentes, e que a carga gerada a uma taxa constante. H tambm a premissa de que cada estao tem apenas um programa ou usurio e, portanto, enquanto a estao estiver bloqueada, no ser gerada qualquer nova carga. Os modelos mais sofisticados permitem estaes multiprogramadas capazes de gerar mais carga enquanto uma estao est bloqueada, mas a anlise dessas estaes muito mais complexa. 1.3 Protocolos de Acesso Mltiplo 1.3.1 ALOHA: Na dcada de 1970, Norman Abramson e seus colegas da Universidade do Hava elaboraram um mtodo novo e sofisticado para resolver o

23

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

problema de alocao de canais. Descreveremos aqui duas verses do ALOHA: puro e slotted. Elas diferem quanto ao fato de o tempo estar ou no dividido em slots discretos, nos quais todos os quadros devem se ajustar. Ao contrrio do slotted ALOHA, o ALOHA puro no exige a sincronizao de tempo global. Puro: A idia bsica de um sistema ALOHA simples: permitir que os usurios transmitam sempre que tiverem dados a ser enviados. Naturalmente, haver colises, e os quadros que colidirem sero danificados. Porm, devido propriedade de feedback da difuso, um transmissor sempre consegue descobrir se seu quadro foi ou no destrudo, da mesma maneira que o fazem outros usurios, bastando para isso escutar a sada do canal. Em uma LAN, esse feedback imediato. Em um satlite, h uma demora de 270 ms antes de o transmissor saber se houve xito na transmisso. Se no for possvel por alguma razo realizar a escuta durante a transmisso, sero necessrias confirmaes. Se o quadro foi destrudo, o transmissor apenas espera um perodo de tempo aleatrio e o envia novamente. O tempo de espera deve ser aleatrio, pois seno os mesmos quadros continuaro a colidir repetidas vezes. Os sistemas em que vrios usurios compartilham um canal comum de forma que possa gerar conflitos em geral so conhecidos como sistemas de disputa. A Figura 4.1, mostra um esboo da gerao de quadros em um sistema ALOHA. Os quadros foram criados com o mesmo comprimento porque o throughput2 dos sistemas ALOHA maximizado quando o comprimento dos quadros uniforme em vez de varivel.

Sempre que dois quadros tentarem ocupar o canal ao mesmo tempo, haver uma coliso e ambos sero danificados. Se o primeiro bit de um novo quadro se sobrepuser apenas ao ltimo bit de um quadro quase terminado, os dois quadros sero totalmente destrudos e tero de ser retransmitidos posteriormente. O total de verificao no consegue (e no deve) fazer distino entre uma perda total e uma perda parcial. Quadro com erro quadro com erro, no h distines. 1.3.2 Slotted: Em 1972, Roberts publicou um mtodo para duplicar a capacidade de um sistema ALOHA (Roberts, 1972). Sua proposta era dividir o tempo em intervalos discretos, com cada intervalo correspondendo a um quadro. Esse mtodo exige que os usurios concordem em relao s fronteiras dos slots. Uma forma de alcanar a sincronizao entre os usurios seria ter uma estao especial que emitisse um sinal sonoro no incio de cada intervalo, como um relgio. Figura 4.3: Throughput em comparao com o trfego oferecido para sistemas ALOHA

Throughput: Definio de taxa de transferncia a quantidade de dados transferidos de um lugar a outro.


24

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

No mtodo de Roberts, que passou a ser conhecido como slotted ALOHA, em contraste com o ALOHA puro de Abramson, um computador no tem permisso para transmitir sempre que um caractere de retorno de cursor digitado. Em vez disso, necessrio esperar o incio do prximo slot. Quando o acesso Internet por cabo foi criado, surgiu o problema de como alocar um canal compartilhado entre vrios usurios concorrentes, e o slotted ALOHA foi resgatado para salvar a situao. 1.3.3 Protocolos de Acesso Mltiplo com Deteco de Portadora: Visando melhorar o desempenho do Aloha para acesso ao meio foram criados protocolos nos quais as estaes escutam uma portadora (isto , uma transmisso) e funcionam de acordo com ela so denominados protocolos com deteco de portadora (carrier sense protocols). 1.3.4 CSMA persistente e no persistente: O primeiro protocolo com deteco de portadora que estudaremos aqui denomina-se CSMA (Carrier Sense Multiple Access) 1-persistente. Quando uma estao tem dados a transmitir, ela primeiro escuta o canal para ver se mais algum est transmitindo no momento. Se o canal estiver ocupado, a estao esperar at que ele fique ocioso. Quando detectar um canal desocupado, a estao transmitir um quadro. Se ocorrer uma coliso, a estao esperar um intervalo de tempo aleatrio e comear tudo de novo. Esse protocolo denominado 1-persistente, porque a estao transmite com probabilidade 1 sempre que encontra o canal desocupado. O retardo de propagao tem um efeito importante sobre o desempenho do protocolo. H poucas chances de, logo aps uma estao comear a transmitir, outra estao fique pronta para transmitir e escutar o canal. Se o sinal da primeira estao ainda no tiver atingido segunda, esta detectar um canal desocupado e tambm comear a transmitir, resultando em uma coliso. Quanto maior for o retardo de propagao, maior ser a importncia desse efeito e pior ser o desempenho do protocolo. Mesmo que o retardo de propagao seja zero, ainda assim haver colises. Se duas estaes ficarem prontas durante a transmisso de uma terceira, ambas tero de esperar educamente at que a transmisso se encerre, e depois as duas comearo a transmitir ao mesmo tempo, resultando em uma coliso. Se elas no fossem to impacientes, haveria menos colises. Mesmo assim, esse protocolo bem melhor que o ALOHA puro, pois ambas as estaes respeitam a transmisso e desistem de interferir em um quadro de uma terceira estao. Intuitivamente, esse procedimento leva a um desempenho superior ao do ALOHA. CSMA no persistente: Um segundo protocolo com deteco de portadora o CSMA no persistente. Nesse protocolo, feita uma tentativa consciente de ser menos vido que no protocolo anterior. Antes de transmitir, uma estao escuta o canal. Se ningum mais estiver transmitindo, a estao iniciar a transmisso. No entanto, se o canal j estiver sendo utilizado, a estao no permanecer escutando continuamente a fim de se apoderar de imediato do canal aps detectar o fim da transmisso anterior. Em vez disso, a estao aguardar durante um intervalo de tempo aleatrio e, em seguida, repetir o algoritmo. Conseqentemente, esse
25

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

algoritmo leva a uma melhor utilizao do canal, e a retardos maiores do que no CSMA 1-persistente. O ltimo protocolo o CSMA p-persistente. Ele se aplica a canais segmentados (slotted channels) e funciona da forma apresentada a seguir. Quando est pronta para transmitir, a estao escuta o canal. Se ele estiver desocupado, a estao transmitir com uma probabilidade p. Com uma probabilidade q = 1 - p, haver um adiamento at o prximo slot. Se esse slot tambm estiver desocupado, haver uma transmisso ou um novo adiamento, com probabilidades p e q. Esse processo se repete at o quadro ser transmitido ou at que outra estao tenha iniciado uma transmisso. Nesse ltimo caso, ela age como se tivesse ocorrido uma coliso (ou seja, aguarda durante um intervalo aleatrio e reinicia a transmisso). Se inicialmente detectar que o canal est ocupado, a estao esperar pelo prximo slot e aplicar o algoritmo anterior. A Figura 4.4 mostra o throughput calculado em comparao com o trfego oferecido para todos os trs protocolos, bem como para o ALOHA puro e o slotted ALOHA. Figura 4.4: Comparao entre a utilizao do canal e a carga de vrios protocolos de acesso Aleatrio.

1.3.5 CSMA com deteco de colises: Os protocolos CSMA persistentes e no persistentes so claramente um avano em relao ao ALOHA, pois garantem que nenhuma estao comear a transmitir quando perceber que o canal est ocupado. Outro avano consiste no fato de as estaes cancelarem suas transmisses logo que detectam uma coliso. Em outras palavras, se duas estaes perceberem que o canal est desocupado e comearem a transmitir simultaneamente, ambas detectaro a coliso quase de imediato. Em vez de terminar de transmitir seus quadros que de qualquer forma j estaro irremediavelmente adulterados, elas devem interromper a transmisso de forma abrupta to logo a coliso for detectada. A interrupo rpida dos quadros com erros economiza tempo e largura de banda. Esse protocolo, conhecido como CSMA/CD (Carrier Sense Multiple Access with Collision Detection), amplamente usado na sub-camada MAC de LANs. Em particular, ele a base da conhecida LAN Ethernet;

26

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

O CSMA/CD e vrios outros protocolos de LANs utilizam o modelo conceitual apresentado na Figura 4.5. No ponto marcado com t0, uma estao terminou a transmisso de um quadro. Qualquer outra estao que tenha um quadro a ser enviado pode transmiti-lo. Se duas ou mais estaes decidirem transmitir simultaneamente, haver uma coliso. As colises podem ser detectadas verificando-se a potncia e a largura do pulso do sinal recebido e comparando-o com o sinal transmitido. Aps detectar uma coliso, uma estao cancela sua transmisso, espera um intervalo de tempo aleatrio e, em seguida, tenta novamente, supondo que nenhuma outra estao tenha comeado a transmitir nesse nterim. Dessa forma, o nosso modelo de CSMA/CD consistir em perodos alternados de disputa e de transmisso, com a ocorrncia de perodos de inatividade quando todas as estaes estiverem em repouso (por exemplo, por falta de trabalho). Resumo:

2. O Quadro ETHERNET:

3. Switchs, Pontes e Hubs:


Agora, vamos passar camada de enlace de dados, onde encontramos pontes e switches. Acabamos de estudar as pontes com certa profundidade. Uma ponte conecta duas ou mais LANs, como mostra a Figura 4.47(b). Quando um quadro chega, o software da ponte extrai o endereo de destino do cabealho de quadro e examina uma tabela, com a finalidade de verificar para onde deve enviar o quadro. No caso de uma rede Ethernet, esse endereo o destino de 48 bits mostrado na Figura 4.17. Como um hub, uma ponte moderna tem placas de linha, em geral para quatro ou oito linhas de entrada de um certo tipo. Uma placa de linha para Ethernet no pode lidar, digamos, com quadros token ring, porque no sabe onde encontrar o endereo de destino no cabealho do quadro. Porm, uma ponte pode ter placas de linha para diferentes tipos de redes e diferentes velocidades. Com uma ponte, cada linha seu prprio domnio de coliso, em contraste com um hub.

27

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Os switches so semelhantes a pontes pelo fato de ambos basearem o roteamento em endereos de quadro. Na verdade, muitas pessoas utilizam os dois termos de forma intercambivel. A principal diferena que um switch usado com maior freqncia para conectar computadores individuais, como mostra a Figura 4.47(c). Como conseqncia, quando o host A da Figura 4.47(b) quer enviar um quadro para o host B, a ponte recebe o quadro, mas simplesmente o descarta. Em contraste, na Figura 4.47(c), o switch deve encaminhar ativamente o quadro de A at B, porque no h outro caminho que o quadro possa seguir. At o momento, vimos repetidores e hubs, que so bastante semelhantes, bem como pontes e switches, que tambm so bem parecidos. Agora vamos passar para os roteadores, diferentes de todos os dispositivos anteriores. Quando um pacote entra em um roteador, o cabealho de quadro e o final so retirados, e o pacote localizado no campo de carga til do quadro repassado ao software de roteamento. Esse software utiliza o cabealho de pacote para escolher uma linha de sada. No caso de um pacote IP, o cabealho do pacote conter um endereo de 32 bits (IPv4) ou de 128 bits (IPv6), mas no um endereo 802 de 48 bits. O software de roteamento no v os endereos de quadro e nem mesmo sabe se o pacote veio de uma LAN ou de uma linha ponto a ponto. Estudaremos os roteadores e o roteamento no Captulo 5 do Tanenbaum. Parte 6: A Camada de Rede

1. A Camada de Rede
A camada de rede est relacionada transferncia de pacotes da origem para o destino. Chegar ao destino pode exigir vrios hops (saltos) em roteadores intermedirios ao longo do percurso. Essa funo contrasta claramente com a funo da camada de enlace de dados, que tem o objetivo mais modesto de apenas mover quadros de uma extremidade de um fio at a outra. Portanto, a camada de rede a camada mais baixa que lida com a transmisso fim a fim. Para atingir seus objetivos, a camada de rede deve conhecer a topologia da sub-rede de comunicaes (ou seja, o conjunto de todos os roteadores) e escolher os caminhos mais apropriados atravs dela. A camada de rede tambm deve ter o cuidado de escolher rotas que evitem sobrecarregar algumas das linhas de comunicao e roteadores enquanto deixam outras ociosas. Por fim, quando a origem e o destino esto em redes diferentes, ocorrem novos problemas, e cabe camada de rede lidar com eles. Neste captulo, estudaremos todas essas questes e as ilustraremos, quando principalmente a Internet e o protocolo de sua camada de rede, o IP, embora tambm sejam examinadas as redes sem fios.

2. Questes de Projetos da camada de rede:

28

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

2.1 Comutao de pacotes store-and-forward: Antes de comearmos a explicar os detalhes da camada de rede, vale a pena redefinir o contexto em que operam os protocolos a camada de rede. Esse contexto pode ser visto na Figura 5.1. Os principais componentes do sistema so o equipamento da concessionria de comunicaes (roteadores conectados por linhas de transmisso), mostrados na elipse sombreada, e o equipamento dos clientes, mostrado fora da elipse. O host H1 est diretamente conectado a um dos roteadores da concessionria de comunicaes, denominado A, por uma linha dedicada. Em contraste, H2 est em uma LAN com um roteador F pertencente ao cliente e operado por ele. Esse roteador tambm tem uma linha dedicada para o equipamento da concessionria de comunicaes. Mostramos F fora da elipse porque ele no pertence concessionria de comunicaes; porm, em termos de construo, software e protocolos, bem provvel que ele no seja diferente dos roteadores da concessionria de comunicaes. O fato de ele pertencer sub-rede discutvel mas, para os propsitos deste captulo, roteadores no local do cliente so considerados parte da sub-rede, porque escutam os mesmos algoritmos que os roteadores da concessionria de comunicaes (e nossa principal preocupao aqui o estudo dos algoritmos).

2.2 Servios oferecidos camada de transporte A camada de rede oferece servios camada de transporte na interface entre a camada de rede e a camada de transporte. Uma questo importante identificar os tipos de servios que a camada de rede oferece camada de transporte. Os servios da camada de rede foram projetados tendo em vista os objetivos a seguir. 1. Os servios devem ser independentes da tecnologia de roteadores. 2. A camada de transporte deve ser isolada do nmero,do tipo e da topologia dos roteadores presentes. 3. Os endereos de rede que se tornaram disponveis para a camada de transporte devem usar um plano de numerao uniforme, mesmo nas LANs e WANs. Tendo definido esses objetivos, os projetistas da camada de rede tm muita liberdade para escrever especificaes detalhadas dos servios a serem oferecidos camada de transporte. Essa liberdade costuma se transformar em uma violenta batalha entre duas faces. A discusso se concentra na seguinte questo: a camada de rede deve fornecer servio orientado a conexes ou servio sem conexes? 2.3 Implementao do servio sem conexes Depois de analisar as duas classes de servio que a camada de rede pode oferecer a seus usurios, chegou a hora de vermos como essa camada funciona por dentro. So possveis duas organizaes diferentes, dependendo do tipo de servio oferecido. Se for oferecido o servio sem conexes, os pacotes sero injetados individualmente na subrede e roteados de modo independente uns dos outros. No ser necessria nenhuma configurao antecipada. Nesse contexto, os pacotes freqentemente

29

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

so chamadas datagramas (em uma analogia com os telegramas) e a sub-rede ser denominada sub-rede de datagramas. Se for usado o servio orientado a conexes, ter de ser estabelecido um caminho desde o roteador de origem at o roteador de destino, antes de ser possvel enviar quaisquer pacotes de dados. Essa conexo chamada circuito virtual, em analogia com os circuitos fsicos estabelecidos pelo sistema telefnico, e a sub-rede denominada sub-rede de circuitos vituais. Nesta seo, examinaremos as sub-redes de datagramas; na prxima, estudaremos as sub-redes de circuitos virtuais. Vejamos agora como funciona uma sub-rede de datagramas. Suponha que o processo P1 da Figura 5.2 tenha uma longa mensagem para P2. Ele entrega a mensagem camada de transporte, com instrues para que ela seja entregue a P2 do host H2. O cdigo da camada de transporte funciona em H1, em geral dentro do sistema operacional. Ele acrescenta um cabealho de transporte ao incio da mensagem e entrega o resultado camada de rede, que talvez seja simplesmente outro procedimento no sistema operacional. A figura abaixo exibe o roteamento em uma sub-rede de datagramas.

Vamos supor que a mensagem seja quatro vezes mais longa que o tamanho mximo de pacote, e portanto que a camada de rede tem de dividi-la em quatro pacotes, 1, 2, 3 e 4, e enviar cada um deles ao roteador A, usando algum protocolo ponto a ponto como, por exemplo, o PPP . Nesse ponto, a concessionria de comunicaes assume o controle. T odo roteador tem uma tabela interna que informa para onde devem ser enviados os pacotes a serem entregues a cada destino possvel. Cada entrada da tabela um par que consiste em um destino e na linha de sada a ser utilizada para esse destino. Somente podem ser usadas linhas conectadas direta mente. Por exemplo, na figura acima, em A temos apenas duas linhas de sada para D e C e assim todo pacote recebido deve ser enviado a um desses roteadores, mesmo que o destino final seja algum outro roteador. A tabela de roteamento inicial de A mostrada na figura sob o ttulo "Inicialmente". medida que chegaram ao roteador A, os pacotes 1, 2 e 3 foram armazenados por algum tempo (para que seus totais de verificao fossem conferidos). Em seguida, cada um deles foi encaminhado para C, de acordo com a tabela de A. O pacote 1 foi ento encaminhado para E e depois para F . Chegando a F, ele foi encapsulado em um quadro da camada de enlace de dados e transmitido para H2 pela LAN. Os pacotes 2 e 3 seguiram a mesma rota. Entretanto, aconteceu algo diferente com o pacote 4. Quando chegou ao roteador A, ele foi enviado para o roteador B, embora seu destino tambm fosse F . Por alguma razo, A decidiu enviar o pacote 4 por uma rota diferente da que foi usada para os trs primeiros pacotes. T alvez ele tenha tomado conhecimento de uma obstruo de trfego em algum lugar no caminho ACE e tenha atualizado sua tabela de roteamento, como mostamos na figura sob o ttulo
30

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

"Mais tarde". O algoritmo que gerencia as tabelas e toma as decises de roteamento chamado algoritmo de roteamento. Os algoritmos de roteamento constituem um dos principais assuntos que estudaremos neste captulo. 2.4 Implementao do Servio Orientado a Conexes: A No caso do servio orientado a conexes, precisamos de uma sub-rede de circuitos virtuais. Vejamos como ela funciona. A idia que rege os circuitos virtuais evitar a necessidade de escolher uma nova rota para cada pacote enviado, como na Figura anterior. Em vez disso, quando uma conexo estabelecida, escolhe-se uma rota desde a mquina de origem at a mquina de destino, como parte da configurao da conexo, e essa rota armazenada em tabelas internas dos roteadores. A rota usada por todo o trfego que flui pela conexo, exatamente como ocorre no sistema telefnico. Quando a conexo liberada, o circuito virtual tambm encerrado. Com o servio orientado a conexes, cada pacote transporta um identificador, informando a que circuito virtual ele pertence. Como exemplo, considere a situao da Figura abaixo. Na figura, o host H1 estabeleceu a conexo 1 com o host H2. Ela memorizada como a primeira entrada de cada uma das tabelas de roteamento. A primeira linha da tabela de A informa que, se um pacote contendo o identificador de conexo 1 chegar de H1, ele ser enviado ao roteador C e receber o identificador de conexo 1. De modo semelhante, a primeira entrada em C faz o roteamento do pacote para E, tambm com o identificador de conexo 1. Agora, vamos considerar o que acontece se H3 tambm quiser estabelecer uma conexo para H2. Ele escolhe o identificador de conexo 1 (porque est iniciando a conexo, e essa sua nica conexo) e informa sub-rede que ela deve estabelecer o circuito virtual. Isso conduz segunda linha nas tabelas. Observe que nesse caso temos um conflito porque, embora A possa distinguir facilmente os pacotes da conexo 1 provenientes de H1 dos pacotes da conexo 1 que vm de H3, C no tem como fazer o mesmo. Por essa razo, A atribui um identificador de conexo diferente ao trfego de sada correspondente a segunda conexo. Evitar conflitos desse tipo a razo pela qual os roteadores precisam ter a capacidade de substituir identificadores de conexes em pacotes de sada. Em alguns contextos, essa operao chamada troca de rtulos. Figura 5.3: Roteamento em uma sub-rede de circuitos virtuais:

31

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

3. Comparao Entre Sub-Redes De Circuitos Virtuais E De Datagramas:


Dentro da sub-rede, existem vrios compromissos entre circuitos virtuais e datagramas, como o compromisso entre espao de memria do roteador e largura de banda. Os circuitos virtuais permitem que os pacotes contenham nmeros de circuitos em vez de endereos de destino completos. O preo pago pelo uso de circuitos virtuais o espao na tabela dentro dos roteadores. Outro compromisso o que se d entre o tempo de configurao e o tempo de anlise e endereo. O uso de circuitos virtuais requer uma fase de configurao que leva tempo e consome recursos. Entretanto, fcil descobrir o que fazer com um pacote de dados em uma sub-rede de circuitos virtuais. O roteador s utiliza o nmero do circuito para criar um ndice em uma tabela e descobrir para onde vai o pacote. Em uma sub-rede de datagramas, necessrio um procedimento de pesquisas mais complicado para localizar a entrada correspondente ao destino. Os circuitos virtuais tm vantagens na garantia da qualidade de servio (QoS) e ao evitar o congestionamento dentro de uma sub-rede, pois os recursos podem ser reservados antecipadamente, o que no ocorre na rede de datagramas. Os circuitos virtuais tm um problema grande com a vulnerabilidade. Se um roteador apresentar uma falha e perder sua memria, mesmo que volte um segundo depois, todos os circuitos virtuais que estiverem passando por ele tero de ser interrompidos. No roteador de datagramas somente os usurios cujos pacotes estiverem enfileirados no roteador naquele momento sero afetados. A perda de uma linha de comunicao fatal para os circuitos virtuais, mas podem ser compensadas se utilizados datagramas, pois estes permitem que os roteadores equilibrem o trfego pela sub-rede uma vez que a rota pode ser parcialmente alterada.

4. Algoritmos de roteamento
A principal funo da camada de rede rotear pacotes da mquina de origem para a mquina de destino. Na maioria das sub-redes, os pacotes necessitaro de vrios hops para cumprir o trajeto. A nica exceo importante diz respeito s redes de difuso, mas mesmo aqui o roteamento depende do fato de a origem e o destino no estarem na mesma rede. Os algoritmos que escolhem as rotas e as estruturas de dados que eles utilizam constituem um dos elementos mais importantes do projeto da camada de rede.

32

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

O algoritmo de roteamento a parte do software da camada de rede responsvel pela deciso sobre a linha de sada a ser usada na transmisso do pacote de entrada. Se a sub-rede utilizar datagramas internamente, essa deciso dever ser tomada mais uma vez para cada pacote de dados recebido, pois a melhor rota pode ter sido alterada desde a ltima vez. Se a sub-rede utilizar circuitos virtuais internamente, as decises de roteamento sero tomadas somente quando um novo circuito virtual estiver sendo estabelecido. Da em diante, os pacotes de dados seguiro a rota previamente estabelecida. s vezes, essa ltima circunstncia chamada roteamento por sesso, pois uma rota permanece em vigor durante toda uma sesso do usurio (por exemplo, uma sesso de login em um terminal ou uma transferncia de arquivos). Algumas vezes, til fazer distino entre roteamento, que a tomada de deciso sobre quais rotas utilizar, e encaminhamento, o que acontece quando um pacote chega. Podemos imaginar que um roteador tem dois processos em seu interior. Um deles trata cada pacote que chega, procurando a linha de sada que ser usada para ele nas tabelas de roteamento. Esse processo o encaminhamento. O outro processo responsvel pelo preenchimento e pela atualizao das tabelas de roteamento. nesse processo que o algoritmo de roteamento entra em cena. Mesmo que as rotas sejam escolhidas independentemente para cada pacote ou apenas quando novas conexes so estabelecidas, certas propriedades so desejveis em um algoritmo de roteamento: correo, simplicidade, robustez, estabilidade, eqidade e otimizao. Os itens correo e simplicidade so auto explicativos mas, em princpio, talvez a necessidade de robustez seja menos bvia. Uma vez que uma rede de maior porte instalada, espera-se que ela funcione continuamente durante anos sem apresentar qualquer falha no sistema. Durante esse perodo, haver falhas de hardware e software de todos os tipos. Os hosts, os roteadores e as linhas iro falhar repetidamente, e a topologia mudar muitas vezes. O algoritmo de roteamento deve ser capaz de aceitar as alteraes na topologia e no trfego sem exigir que todas as tarefas de todos os hosts sejam interrompidas e que a rede seja reinicializada sempre que algum roteador apresentar falha. Quando alguns cientistas que fundaram a Cisco perceberam que poderiam utilizar filtragem da camada trs do modelo de referncia OSI para melhorar o desempenho da rede, eles desenvolveram o roteador. Para facilitar o conceito imagine a situao a seguir. Quando voc sai de So Paulo e vai para as praias da o Rio de Janeiro de carro e, como bom motorista, usa o mapa para chegar l. Note que existem dois caminhos: Por qual deles ir? Pelo caminho mais curto seria a resposta mais bvia. No entanto, seria mais sensato responder que depende. Apesar de ser tentador ir pelo caminho mais curto, necessrio considerar alguns pontos: 1 Trfego: Qual dos dois caminhos tem um trfego menor? 2 Estado de conservao: Qual dos dois caminhos tem menos buracos. 3 Distncia: Pode ser considera sim. Observe o prximo item. 4 Anlise dos pontos anteriores: Apesar de buracos e do trfego ou mesmo a distncia maior, pode ser interessante ir naquele caminho do que o mais curto. Assim trabalha o roteador. Ele, atravs de anlise do link de comunicao, permite uma comunicao entre redes, pois trabalha na camada de rede, ou seja, lida diretamente com o Internet Protocol. O algoritmo de roteamento deve ser capaz de aceitar as alteraes na topologia e no trfego sem exigir que todas as tarefas de todos os hosts sejam interrompidas e que a

33

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

rede seja reinicializada sempre que algum roteador apresentar falha. Tais algoritmos podem ser agrupados em duas classes: Adaptativos; e No-Adaptativos. Os no-adaptativos no baseiam suas decises de roteamento em medidas ou estimativas do trfego e da topologia atuais. Este tipo de roteamento denominado roteamento esttico, uma vez que a escolha da rota definida previamente off-line. Os algoritmos adaptativos mudam suas decises de roteamento para refletir mudanas na topologia e, normalmente, tambm no trfego. Estes diferem em termos do lugar em que obtm suas informaes, seja no prprio local, em roteadores adjacentes ou todos os roteadores. 4.1 Roteamento pelo caminho mais curto Esta uma tcnica muito utilizada, haja vista ser simples e fcil de entender. A idia principal criar um grafo de sub-rede, com cada n do grafo representando um roteador e cada arco indicando uma linha de comunicao (enlace). Para escolher uma rota, o algoritmo simplesmente encontra o caminho mais curto expresso na rota. A mtrica usada para determinar o caminho mais curto entre fonte e destino pode se basear em diferentes mtodos: Nmero de hops (saltos) entre fonte e destino; Distncia Fsica (Geogrfica); Fila mdia e atraso de transmisso associados a cada arco no caminho para algum pacote padro de teste transmitido a intervalos regulares. O caminho mais curto o mais rpido, ao invs daquele com menor nmero de arcos ou km. Em geral os labels nos arcos podem ser computados como funo de mais de um argumento, entre os quais: Distncia; Custo de comunicao; Largura de banda; Tamanho mdio da Fila; Trfego Mdio; Delays (atrasos). O algoritmo pode calcular o caminho mais curto atravs de um dos critrios citados ou atravs de uma combinao ponderada dos diferentes critrios. 4.2 Flooding (Inundao): O algoritmo de inundao um algoritmo esttico no qual cada pacote de entrada enviado para todas as linhas de sada, exceto para aquela em que chegou. gerada uma vasta quantidade de pacotes duplicados, a menos que algumas medidas sejam tomadas para tornar mais lento o processo. Uma dessas medidas ter um contador de hops contido no cabealho de cada pacote. O contador decrementado at atingir zero. Normalmente ele tem o nmero que saltos necessrios para percorrer todo o caminho. Outro meio contar quais pacotes foram transmitidos para que eles no sejam enviados novamente. usado para distribuir informao para todos os ns que age como um receptor e transmissor de mensagem.

34

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

4.3 Roteamento por difuso: Em algumas aplicaes, os hosts precisam enviar mensagem a muitos outros hosts. Neste caso o envio de um pacote a todos os destinos simultaneamente chamado de difuso (broadcasting). O mtodo exige que a origem tenha uma lista completa de todos os destinos. Na prtica, essa pode ser a nica possibilidade completa de todos os destino receberem o pacote transmitido. 4.4 Roteamento para hosts mveis: Como visto, a principal funo da camada de rede rotear pacotes. Na maioria das sub-redes os pacotes necessitaro de vrios saltos para cumprir seu trajeto. Para isso so implementados diversos tipos de algoritmos de roteamento, dentre eles o roteamento para hosts mveis. comum hoje em dia pessoas utilizarem computadores pessoais para ler mensagens de e-mail, acessar internet, etc. Esses hosts mveis criam uma nova complicao: antes de rotear um pacote para um host mvel, primeiro a rede precisa localiz-lo. Para resolver essa problemtica definiuse para cada rea um ou mais agentes externos, que controlam todos os usurios mveis que visitam a rea. Alm disso, cada rea possui um agente interno, que controla os usurios cujas bases estejam na rea, mas que estejam no momento visitando outra rea. Quando um novo usurio entra em uma rea, conectando-se a ela (por exemplo, ligando seu computador na LAN), ou simplesmente percorrendo a clula, seu computador devese registrar com o agente externo dessa rea. Periodicamente, cada agente externo transmite um pacote anunciando sua existncia e endereo. Um host mvel recmchegado pode aguardar uma dessas mensagens; no entanto, se nenhuma chegar rpido o suficiente, o host mvel poder transmitir um pacote dizendo: "Existe algum agente externo? O host mvel registrado com o agente externo, fornecendo seu endereo fixo, o endereo atual de camada de enlace de dados e algumas informaes de segurana. O agente externo contacta o agente interno do host mvel e diz: "Um de seus hosts est aqui". A mensagem do agente externo para o agente interno contm o endereo de rede do agente externo. A mensagem contm ainda as informaes de segurana, para convencer o agente interno de que o host mvel est realmente l. O agente interno examina as informaes de segurana, que contm um timbre de hora, para provar que foi gerando h alguns segundos. Se estiver tudo de acordo, o agente interno diz ao externo para prosseguir. Quando o agente externo obtm a confirmao do agente interno, ele cria uma entrada em sua tabela e informa ao host mvel que agora ele est registrado.

35

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

O ideal que quando o usurio sair de uma rea, isso tambm seja divulgado para permitir o cancelamento do registro, mas muitos usurios desligam seus computadores abruptamente quando terminam de us-los.

Quando enviado a um usurio mvel, o pacote roteado para a LAN bsica do usurio, pois isso que o endereo diz que deve ser feito. Os pacotes enviados para o usurio mvel atravs de sua LAN bsica so interceptados pelo agente interno. Em seguida, o agente interno consulta a nova localizao (temporria) do usurio mvel e encontra o endereo do agente externo que est tratando do usurio mvel.

5. Algoritmos De Controle De Congestionamento


Congestionamento ocorre quando a quantidade de pacotes na rede muito grande (normalmente isso ocorre quando se atinge um patamar da capacidade de carga dos canais de comunicao).

As causas do congestionamento podem ser as seguintes: Pacotes chegando por canais de comunicao rpidos, tendo de sair por canais mais lentos; Roteadores lentos;

36

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Roteadores com pouca memria para armazenar pacotes temporariamente; Contudo, existem dois mtodos que podem ser usados para controlar o fluxo, a saber: Modelo circuito aberto; e Modelo circuito fechado. O primeiro prope resolver os problemas na fase de projeto/configurao dos roteadores de modo a (tentar) garantir que no ocorra congestionamento. Para ajustar alguma coisa, necessrio de reinicializar tudo. O segundo realiza a monitorao do sistema para detectar quando e onde o congestionamento ocorre. Realiza a passagem dessas informaes para pontos de controle onde alguma ao pode ser tomada e realiza o ajuste da operao do sistema para corrigir o problema. Neste modelo de circuito fechado, o controle pode ser explcito, quando o ponto de congestionamento avisa (de alguma forma) a origem dos pacotes (exemplo: ATM); ou implcito, quando a origem dos pacotes deduz que h congestionamento fazendo observaes localmente (exemplo: pela demora no recebimento de confirmao de entrega de pacotes - TCP/IP). 5.1 Polticas de preveno de congestionamento: As polticas adotadas em diversas camadas de uma pilha de protocolos que afetam o congestionamento so expressas na tabela abaixo:

5.2 Controle de congestionamento em sub-redes de circuitos virtuais: A maioria dos algoritmos de congestionamento tenta impedir que o congestionamento ocorra, em vez de lidar com ele aps seu surgimento. Uma tcnica muito utilizada para impedir que um congestionamento iniciado se torne pior o Controle de Admisso. Uma vez que o congestionamento tenha dado alguma indicao de sua existncia, nenhum outro circuito virtual ser estabelecido at que o problema tenha passado. Portanto, todas as tentativas de estabelecer novas conexes da camada de transporte falharo. Alternativa permitir novos circuitos, mas rotear com cuidado todos os novos circuitos virtuais em reas problemticas.

37

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

A idia neste caso, como se v na figura acima redesenhar a sub-rede (b), omitindo os roteadores congestionados e todas as suas linhas. Existe ainda outra situao que um acordo entre o host e a sub-rede, na qual fica acordado, no momento da configurao do circuito virtual, o volume, a formatao do trfego, a qualidade de servio exigida e outros parmetros. Para isso a sub-rede reservar recursos ao longo do caminho. Assim, improvvel que ocorra congestionamento nos novos circuitos virtuais. A desvantagem desse mtodo o desperdcio de recursos. 5.3 Controle de congestionamento em sub-redes de datagramas: No caso das subredes de datagramas, cada roteador pode monitorar facilmente a utilizao de suas linhas de sada e de outros recursos. O roteador pode associar a cada linha uma varivel o qual reflete a utilizao da linha. Assim, cada pacote recm-chegado conferido para saber se sua linha de sada encontra-se em estado de advertncia. Havendo algum estado de advertncia, uma ao ser tomada, dentre elas: 5.3.1 BIT DE ADVERTNCIA: Assinala o estado de advertncia ativando um bit especial no cabealho do pacote, feito no frame relay. Quando o pacote chega ao destino, a entidade de transporte copiava o bit na prxima confirmao a ser enviada de volta origem. Em seguida, a origem interrompia o trfego. Enquanto estivesse no estado de advertncia, o roteador continuava a definir o bit de advertncia, e isso significava que a origem continuava a receber informaes com o bit ativado. Assim, a origem monitora a frao de confirmaes com o bit ativado e ajusta sua velocidade de transmisso. Enquanto os bits de advertncia continuar a fluir, a origem continuava a diminuir sua taxa de transmisso. Quando diminui a velocidade de chegada das confirmaes, a origem aumenta a taxa de transmisso. 5.3.2 PACOTES REGULADORES: Neste modelo o roteador enviar um pacote regulador ao host de origem, informando que deve interromper ou enviar mais lentamente os pacotes. O pacote original marcado (um bit no cabealho ativado) para que ele no venha a gerar mais pacotes reguladores ao longo do caminho e depois encaminhado de forma habitual. Ao receber o pacote regulador, o host de origem obrigado a reduzir o trfego enviado ao destino especificado. Este mtodo ignora novos pacotes do mesmo destino por um tempo. Isso evita o excesso de feedback. Contudo, no funciona bem com longas distncias ou grande largura de banda e h certa demora para avisar a origem. 5.3.3 PACOTES REGULADORES HOP A HOP: Em altas velocidades ou em longas distncias, o envio de um pacote regulador para os hosts de origem no

38

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

funciona bem devido reao ser muito lenta. A soluo fazer com que o pacote regular tenha efeito em cada hop pelo qual passar. O efeito desse esquema oferecer alvio rpido no ponto de congestionamento, ao preo de aumentar o consumo de buffers do fluxo ascendente. Assim o congestionamento pode ser cortado pela raiz sem perda de pacotes.

6. O Protocolo IP
O protocolo IP integra um sistema de entrega fim-a-fim. Dessa forma um tipo de protocolo no orientados conexo, sem controle de erros e sem reconhecimento. Isso significa que o protocolo IP no executa controle de erros sobre os dados da aplicao, controle de fluxo, seqenciamento de dados e entrega ordenada. O protocolo IP apresenta algumas caractersticas como s listadas abaixo: Utiliza um servio de entrega denominado Best-Effort (Melhor esforo): Os pacotes no so descartados sumariamente, o protocolo torna-se no confivel somente quando h exausto de recursos; Oferece ainda servio no baseado em conexo. Apresenta um tamanho de datagrama varivel. No caso do IPV4 seu tamanho mximo pode atingir 64 Kb; Realiza a fragmentao de datagramas com recombinao no destino. Isto garante suporte a redes intermedirias com MTU (Maximum Transmission Unit) diferentes; responsvel pelo roteamento de datagramas ou fragmentos; Prov envio e recebimento de erros por meio de um protocolo chamado ICMP. ao IP que compete levar a informao de um extremo ao outro na Internet, atravessando vrias redes, potencialmente muito diferentes. 6.1 O Datagrama IP :

Version: A Verso do protocolo hoje ipv4, no entanto para o futuro ser trabalhado a verso ipv6. Hlen: tamanho do cabealho, devido a opes variveis. Service type: Atualmente ignorado.

39

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Fragmentao controlada por: Identification (campo tem o mesmo valor para cada fragmento de um datagrama) o Flags: "don't fragment" (o destino no sabe recombinar) e "more fragments"; o Offset: offset do fragmento em mltiplos de 8 bytes; o Time to live: Decrementado durante a vida do datagrama para ter certeza que tabelas de roteamento corrompidas no mantero pacotes na rede para sempre; Datagrama descartado quando TTL chega a 0. Deveriam ser segundos, mas todo mundo decrementa a cada hope. Protocol: icmp, udp, tcp, dentre outros; Checksum: controle de erro. Deve ser recalculado a cada hope devido a mudanas de ttl; Source/Destination: endereos discutidos mais frente; Padding: Para ter cabealho mltiplo de 32 bits;

6.2 O Endereamento IP O endereo IP (Internet Protocol), de forma genrica, um endereo que indica o local de um determinado equipamento (normalmente computadores) em uma rede privada ou pblica. O endereo IP, na verso 4 (IPv4), um nmero de 32 bits escrito com quatro octetos representados no formato decimal (exemplo: 128.6.4.7). A primeira parte do endereo identifica uma rede especfica na inter-rede, a segunda parte identifica um host dentro dessa rede. Dessa forma, os endereos IP podem ser usados tanto para nos referir a redes quanto a um host individual. Podemos tambm nos referir a todos os hosts de uma rede atravs de um endereo por difuso, quando, por conveno, o campo identificador de host deve ter todos os bits iguais a 1 (um). Um endereo com todos os 32 bits iguais a 1 considerado um endereo por difuso para a rede do host origem do datagrama. 6.2.1 CLASSES IP: O IP utiliza cinco classes diferentes de endereos, contudo, efetivamente somente trs: 6.2.2. CLASSE FAIXA DE IP N DE HOSTS POR REDE A 1.0.0.0 at 126.0.0.0 16 777 216 B 128.0.0.0 at 191.255.0.0 65 536 C 192.0.0.0 at 223.255.255.254 256 D 224.0.0.0 at 239.255.255.255 Multicast E 240.0.0.0 at 247.255.255.255 Uso futuro; atualmente reservada a testes pela IETF A definio de tipo de endereo classes de endereos deve-se ao fato do tamanho das redes que compem a inter-rede variar muito, indo desde redes locais de computadores de pequeno porte, at redes pblicas interligando milhares de hosts. 6.2.2 CLASSES ESPECIAIS Existem classes especiais na Internet que no so consideradas pblicas, no so consideradas como endereveis, ou seja, so reservadas, por exemplo: para a comunicao com uma rede privada ou com o computador local (localhost). 6.2.3 BLOCO DE ENDEREOS DESCRIO REFERNCIA 0.0.0.0/8 Rede corrente (s funciona como endereo de origem) RFC 1700 10.0.0.0/8 Rede Privada RFC 1918 14.0.0.0/8 Rede Pblica RFC 1700 39.0.0.0/8 Reservado RFC 1797 127.0.0.0/8 Localhost RFC 3330 128.0.0.0/16 Reservado (IANA) RFC 3330
40

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

169.254.0.0/16 Zeroconf RFC 3927 172.16.0.0/12 Rede Privada RFC 1918 191.255.0.0/16 Reservado (IANA) RFC 3330 192.0.0.0/24 192.0.2.0/24 Documentao RFC 3330 192.88.99.0/24 IPv6 para IPv4 RFC 3068 192.168.0.0/16 Rede Privada RFC 1918 198.18.0.0/15 Teste de benchmark de redes RFC 2544 223.255.255.0/24 Reservado RFC 3330 224.0.0.0/4 Multicasts (antiga rede Classe D) RFC 3171 240.0.0.0/4 Reservado (antiga rede Classe E) RFC 1700 6.2.4 LOCALHOST A faixa de IP 127.0.0.0 127.255.255.255 (ou 127.0.0.0/8) reservada para a comunicao com o computador local (localhost). Qualquer pacote enviado para estes endereos ficaro no computador que os gerou e sero tratados como se fossem pacotes recebidos pela rede (Loopback). O endereo de loopback local (127.0.0.0/8) permite aplicao-cliente enderear ao servidor na mesma mquina sem saber o endereo do host, chamado de localhost. Na pilha do protocolo TCP/IP, a informao flui para a camada de rede, onde a camada do protocolo IP reencaminha de volta atravs da pilha. 6.2.5 REDES PRIVADAS Dos mais de 4 bilhes de endereos disponveis, trs faixas so reservadas para redes privadas. Estas faixas no podem ser roteadas para fora da rede privada - no podem se comunicar diretamente com redes pblicas. Dentro das classes A, B e C foram reservadas redes (normalizados pela RFC 1918) que so conhecidas como endereos de rede privados. 6.2.6 SUB-REDES: Uma sub-rede uma diviso de uma rede de computadores. A diviso de uma rede grande em redes menores resulta num trfego de rede reduzido, administrao simplificada e melhor performance de rede. Para criar sub-redes, qualquer mquina tem que ter uma mscara de sub-rede que define que parte do seu endereo IP ser usado como identificador da sub-rede e como identificador do host. As sub-redes servem para: Simplificar a administrao de redes. As sub-redes podem ser usadas para delegar gesto de endereos, problemas e outras responsabilidades. Reconhecer a estrutura organizacional. A estrutura de uma organizao (empresas, organismos pblicos, etc.) pode requerer gesto de rede independente para algumas divises da organizao. Isolar trfego por organizao. Acessvel apenas por membros da organizao, relevante quando questes de segurana so levantadas. Isolar potenciais problemas. Se um segmento pouco vivel, podemos fazer dele uma sub-rede. 6.3 A Mscara de Sub-rede A mscara de sub-rede um endereo de 32 bits usado para bloquear (mascarar) uma parte do endereo IP para se distinguir a parte de identificador de rede e a parte de identificador de computador (Host). Cada computador numa rede TCP/IP precisa ter uma mascara de sub-rede ( obrigatrio). Isto pode ser conseguido a partir de uma mscara padro de classe A, B ou C (usada quando a rede no necessita de ser dividida em sub-redes) ou atravs de uma mscara personalizada (usada quando a rede precisa de ser dividida em sub-redes). Na

41

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

mascara padro todos os bits que correspondem parte do identificador da rede so colocados "1", que convertido para decimal obtm-se o valor 255 (11111111 = 255).

Todos os bits que correspondem parte do Host so colocados a "0", que convertido para decimal obtm-se o valor 0 (00000000 = 0).

As classes do certa flexibilidade na distribuio dos endereos. Uma vez que o endereo IP tem tamanho fixo, uma das opes dos projetistas seria dividir o endereo IP em duas metades, dois bytes para identificar a rede e dois bytes para a estao. Entretanto isto traria inflexibilidade, pois s poderiam ser endereados 65.536 redes, cada uma com 65.536 estaes. Uma rede que possusse apenas 100 estaes estaria utilizando um endereamento de rede com capacidade de 65536 estaes, o que tambm seria um desperdcio. importante conceber que dentro de uma faixa de IP h dois endereos especiais denominados endereo de rede e endereo de broadcast. O primeiro com todos os bits iguais a zero e o segundo com todos os bits iguais a um. Para estabelecer uma comunicao direta, servidores tm que ter os mesmos endereos de rede. Se os servidores tiverem endereos de rede diferentes, ento h necessidade de usar um roteador para conectar dois segmentos de rede. Um roteador pode conectar seguimentos de rede somente se eles tiverem endereos de rede diferentes.

A diviso de endereamento tradicional da Internet em classes causou srios problemas de eficincia na distribuio de endereos. Cada rede na Internet, tenha ela 5, 200, 2000 ou 30.000 mquinas deveria ser compatvel com uma das classes de endereos. Desta forma, uma rede com 10 estaes receberia um endereo do tipo classe C, com capacidade de enderear 254 estaes. Isto significa um desperdcio de 244 endereos. Da mesma forma, uma rede com 2.000 estaes receberia uma rede do tipo classe B, e desta forma causaria um desperdcio de 63.534 endereos. O nmero de redes interligando-se Internet a partir de 1988 aumentou, causando o agravamento do problema de disponibilidade de endereos na Internet, especialmente o desperdcio de endereos em classes C e B. Desta forma, buscou-se alternativas para aumentar o nmero de endereos de rede disponveis sem afetar o

42

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

funcionamento dos sistemas existentes. A melhor alternativa encontrada foi flexibilizar o conceito de classes - onde a diviso entre rede e host ocorre somente a cada 8 bits. A soluo encontrada foi utilizar a diviso da identificao de rede e host no endereamento IP de forma varivel, podendo utilizar qualquer quantidade de bits e no mais mltiplos de 8 bits conforme ocorria anteriormente. Um identificador adicional, a mscara, identifica em um endereo IP - qual poro dos bits utilizada para identificar a rede e qual poro dos bits para host.

A mscara pode ser compreendida tambm como um nmero inteiro que diz a quantidade de bits 1(um) utilizados. Por exemplo, uma mscara com valor 255.255.255.192, poderia ser representada como /26. Este tipo de notao empregada em protocolos de roteamento mais recentes. 6.3.1 CONSTRUINDO SUB-REDES: Antes de tudo, importante memorizar a tabela abaixo:

Quando se depara com uma mscara de rede e se precisa determinar o nmero de sub-redes, hosts vlidos e endereos de broadcast que a mscara define tudo o que voc tem a fazer responder a cinco perguntas: 1. Quantas sub-redes tal mscara produz? 2. Quantos endereos de hosts vlidos so obtidos por sub-rede? 3. Quais so as sub-redes vlidas? 4. Quais os hosts vlidos em cada sub-rede? 5. Qual o endereo de broadcast de cada sub-rede? 1) Quantas sub-redes? 2x = quantidade de sub-redes, onde x representa o nmero de bits mascarados ou nmero de 1s. Por exemplo: 11000000 (corresponde a 192 na base 10) seriam 22 = 4. Nesse caso, haveria quatro subredes possveis com tal mscara. 2) Quantos hosts vlidos por sub-rede? 2y 2 = quantidade de hosts vlidos, onde y representa o nmero de bits disponveis para manipulao dos
43

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

endereos de host, ou o nmero de 0s. Por exemplo: 11000000 seria 26 -2 = 62. Neste caso, existem 62 endereos vlidos para hosts por sub-rede. 3) Quais so as sub-redes vlidas? 256 mscara de rede = valor da sub-rede base. A esse resultado, soma-se o valor obtido at que se atinja o nmero da mscara (que seria invlido). Seguindo nosso exemplo: 256 192 = 64 (nmero base e primeira sub-rede vlida). 64 + 64 = 128 (segunda sub-rede vlida). 128 + 64 = 192 (valor da mscara = sub-rede invlida). Portanto, as sub-redes vlidas seriam 64 e 128. 4) Qual o endereo de broadcast para cada sub-rede? O endereo de broadcast seria o valor imediatamente anterior ao valor da prxima sub-rede (ou da mscara, se estivssemos falando da ltima sub-rede na seqncia). Em nosso exemplo, temos as sub-redes 64 e 128. O endereo de broadcast da primeira seria 128 1 =127. J o da segunda 192 (valor da mscara) 1 = 191. 5) Quais os hosts vlidos? Os valores vlidos seriam os compreendidos entre as sub-redes, menos todos os bits ligados e desligados. A melhor maneira de se identificar esses valores se descobrindo as sub-redes vlidas e os endereos de broadcast de cada uma. Em nosso exemplo, os hosts vlidos estariam compreendidos nos intervalos entre 65-126 para a primeira sub-rede e 129-190 para a segunda (pois 64 e 127 so os valores que definem as respectivas. Emprestando bits: Vamos imaginar que eu precise de uma rede para pelo menos 1.000 hosts. Como tem que ser mltiplo binrio, ou seja X2, o mais prximo que temos a isso 1024 (210). Logo, alm do ltimo octeto (8 bits) precisamos "pegar emprestado" mais 2 bits. Mscara classe C padro 255.255.255.0 ou 11111111.11111111.11111111.00000000; Pegando 2 bits emprestados do terceiro octeto ficaria: 11111111 11111111 11111100 00000000 ou 255.255.252.0 Sendo os 2 primeiros octetos "fixos" da rede teramos para sub-rede 64 para rede (26) e 1024 para host (210) o que nos daria 1024 endereos de host disponveis para cada uma da 64 sub-redes como 1 endereo de rede e 1 de broadcast teramos que diminuir 2 que daria 1022 endereos validos por sub-rede. Exemplos: Quando se deseja quer obter 2 redes lgicas de um endereo classe C , preciso modificar a mscara de sub-rede para 255.255.255.128. Observe a figura e aplique as 5 perguntas conforme ensinado acima.

Quando se deseja quer obter 4 redes lgicas de um endereo classe C , preciso modificar a mscara de sub-rede para 255.255.255.192. Observe a figura e aplique as 5 perguntas conforme ensinado acima.
44

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Note que, para que exista comunicao entre as sub-redes necessrio um roteador, uma vez que as sub-redes no se comunicam.

Como calculado possvel usar a mscara de sub-rede 255.255.255.192 e obter 4 redes com os seguintes endereos IP: 192.168.1.0 192.168.1.64 192.168.1.128 192.168.1.192 6.3.2 CALCULANDO A REDE QUE DETERMINADO IP PERTENCE: Este clculo feito pelo roteador para determinar a rede ou sub-rede para a qual um pacote deve ser enviado. Para determinar qual rede ou sub-rede host pertence necessrio realizar uma operao AND.

45

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Parte 7: A Camada de Transporte

1. A Camada de Transporte
Responsvel pela movimentao de dados, de forma eficiente e confivel, entre processos em execuo nos equipamentos conectados a uma rede de computadores, independentemente da rede, ou redes, fsica. Deve poder regular o fluxo de dados e garantir confiabilidade, assegurando que os dados cheguem a seu destino sem erros e em seqncia. Importante na camada de transporte aprender sobre os protocolos de transporte na Internet: UDP: transporte no orientado conexo TCP: transporte orientado conexo e faz controle de congestionamento do TCP As Funes da camada de transporte: A Camada de transporte deve tornar transparente para os usurios, variaes da Confiabilidade do servio de rede; Transporte de unidades de dados; Segmentao e blocagem; Deteco e correo de erros fim a fim; Seqenciaro; Controle de fluxo de dados nas conexes de transporte; Multiplexao (combinar vrias conexes de transporte em uma mesma rede para reduzir custos) ou splitting; Transporte de dados Expressos (para sinalizao).

2. Recursos da Camada de Transporte


2.1 Servios oferecidos s camadas superiores: Seu objetivo fornecer um servio a camada superior confivel, eficiente e econmico, em geral, so processos presentes na camada de aplicao. Para isso, a camada de transporte utiliza vrios servios oferecidos pela camada de rede. Existe um relacionamento lgico entre as camadas de rede, de transporte e de aplicao, como ilustrado abaixo.

46

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Assim como existem dois tipos de servios de rede (com e sem conexo), tambm existe dois tipos de servio de transporte, ambos semelhantes ao servio de rede orientado a conexes (as conexes tm trs fases: o estabelecimento, a transferncia de dados e o encerramento) e sem conexo. A grande diferena entre os servios na camada de rede e na camada de transporte, embora bastante semelhantes que o cdigo de transporte funciona inteiramente nas mquinas dos usurios, e a camada de rede funciona principalmente nos roteadores. 2.2 Qualidade de Servio (QoS): Durante o processo de estabelecimento de uma conexo devem ser definidos alguns detalhes sobre como a mesma transcorrer. Um desses detalhes a definio da qualidade de servio (QoS), a qual, na prtica, define os limites mnimos aceitveis para certos parmetros de desempenho para que a conexo seja mantida. Os valores estabelecidos de QoS durante a fase de conexo so, portanto, pisos de desempenho para a conexo. Dentro do protocolo OSI se definem diversas classes de QoS, segundo patamares de erros e perdas de pacotes. A classe de uma rede (do ponto de vista de qualidade) definida pela classificao ISO. Alm dos tipos de classe do protocolo OSI ainda se definem, durante o estabelecimento da conexo, parmetros de qualidade como: Atraso de estabelecimento de conexo; Probabilidade de falha de estabelecimento de conexo; Vazo (velocidade) da rede; Atraso de trnsito; Prioridade; Resilincia; Taxa de erros residuais; 2.3 Endereamento: O problema de endereamento consiste em permitir que vrias conexes sejam estabelecidas, por uma mesma mquina, com uma ou mais mquinas simultaneamente. Isso implica em que cada conexo dever ter endereos especficos, que permitam camada de transporte diferenciar entre uma conexo e outra. Isso feito atravs de endereos de portas de servio, conhecidas por TSAP (Transport Service Access Point). As entidades que querem trocar informaes devem, ento, especificar endereos TSAP em que efetivaro tais trocas. Em situaes especficas, como acesso a um sistema de arquivos, esse processo de endereamento no funciona corretamente. Nesses casos, o que se faz obter o endereo TSAP do sistema de arquivos atravs de uma conexo estabelecida entre a entidade que quer se conectar a ele e a um servidor de nomes, que realiza suas conexes em uma TSAP previamente conhecida, como ocorre, por semelhana, ao servio de telnet, que funciona na porta 22.

3. Conexes
3.1 Estabelecimento de uma conexo: Estabelecer uma conexo pode ser algo bastante complicado, uma vez que neste processo podem ocorrer perdas ou duplicaes de pacotes. Em uma sub-rede congestionada, onde as confirmaes quase no chegam a tempo, o pacote pode ser transmitido vrias vezes. Onde se utiliza datagrama, podem ocorrer retardos em alguns ns e s surgirem no destino minutos depois. A pior situao a criao de um circuito virtual, a transmisso de informaes ocorre, mas alguns pacotes ficaram retidos em algum roteador, houve sua duplicao e aps encerrada a conexo esses pacotes continuam chegando.
47

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Para solucionar esses problemas, uma soluo utilizar endereos de transporte descartveis ou atribuir a cada conexo um identificador de conexes, no sendo to eficiente uma vez que h a necessidade da entidade de transporte manter um histrico das conexes por tempo indeterminado. Para cuidar dessa questo foi criado o protocolo de handshake de trs vias no estabelecimento da conexo. Isso deve ocorrer antes que quaisquer dados sejam transferidos entre os dois hosts. A figura representa o cliente ou host de origem iniciando uma conexo com o servidor ou host de destino. O termo cliente usado para significar o host que solicita algum tipo de servio de outro host. Um servidor um host que atende, em um nmero de porta conhecido, requisies de um servio especfico. O TCP exige que uma porta de destino ou servio sejam especificados. Exemplos de portas de destino podem ser 23 (Telnet), 25 (correio eletrnico) ou 80 (tambm conhecida como a porta de servidor HTTP ou Web). O handshake de trs vias acontece da seguinte maneira: O cliente envia um flag SYN para sinalizar uma requisio de uma conexo TCP com o servidor. Se o servidor estiver em execuo e oferecer o servio desejado (e se puder aceitar a conexo chegando), ele envia ao cliente sua prpria requisio de conexo sinalizada por um novo SYN e acusa o recebimento da requisio de conexo do cliente com um flag ACK. Tudo isso feito em um nico pacote. Finalmente, se o cliente receber os flags SYN e ACK, e ainda quiser continuar a conexo, ele envia um nico ACK final ao servidor. Isso avisa que o cliente recebeu a requisio de conexo do servidor. Aps o handshake de trs vias (Tomlison, 1975) ter sido executado dessa maneira, a conexo est estabelecida. Agora os dados podem ser trocados entre os dois hosts.

3.2 Encerramento de uma conexo: Encerrar uma conexo um tanto mais fcil que estabelec-la. Isto pode acontecer de duas maneiras: do modo elegante ou do modo grosseiro. O mtodo elegante seria o mesmo que dizer em uma conversa telefnica: "Obrigado, mas no estamos interessados", e desligar o telefone. Isso informa operadora de telemarketing que a conversa acabou, e que ela agora deve desligar e efetuar outra ligao inconveniente na hora do jantar. O mtodo grosseiro seria simplesmente desligar o telefone. Quando o trmino elegante da sesso TCP utilizado, um dos hosts, o cliente ou o servidor, sinaliza, com um flag FIN para o outro, que ele deseja terminar a sesso. O host receptor sinaliza de volta com um flag ACK (ou seja, acusa o recebimento da
48

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

requisio). Isso finaliza apenas metade da conexo. Ento, o outro host tambm precisa iniciar um FIN, e o host receptor precisa acusar seu recebimento. O mtodo grosseiro, o segundo mtodo de trmino um encerramento abrupto da conexo. Isso feito com um host enviando ao outro um flag RESET, que sinaliza o desejo de terminar abruptamente a conexo.

3.3 Multiplexao: A multiplexao de vrias conversaes em conexes, circuitos virtuais e enlaces fsicos tem um papel importante em diversas camadas da arquitetura de rede. Ela pode surgir de diversas formas, como por exemplo, se houver apenas um endereo de rede disponvel em um host, todas as conexes nessa mquina tero que utiliz-la. So classificadas de duas formas: Ascendente: Vrias conexes de transporte na mesma conexo de rede. Motivo: Tarifao. Descendente: Vrias conexes de rede e distribuio do trfego por uma conexo de transporte. Motivo: Necessidade de grande largura de banda.

49

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

3.4 Recuperao de Falhas: Na recuperao de falhas a primeira considerao a ser feita sobre qual o tipo de sub-rede: se datagrama ou circuito-virtual. Se a camada de rede prov um servio de datagramas as entidades de transporte esperam a todo o momento os TPDUs perdidos, e mesmo por rotas distintas eles sempre chegaro. Se a conexo for orientada a servio a perda do circuito ser manipulada estabelecendo uma nova conexo para receber os TPDUs perdidos. Problemas como este mostra questo de uma implementao de confirmao fim a fim. Em princpio, o protocolo de transporte fim a fim, pois no encadeado como as camadas inferiores. Imaginemos um usurio que solicita transaes relativas a um banco de dados remoto. Vamos supor que a entidade de transporte remota estiver programada de modo a passar primeiro as TPDUs para a camada imediatamente superior e s ento enviar a confirmao. Mesmo nesse caso, o fato de uma confirmao ter sido recebida na mquina do usurio no quer dizer necessariamente que o host remoto funcionou por tempo suficiente para atualizar o banco de dados. Uma confirmao fim-a-fim verdadeira, cujo recebimento indica que o trabalho foi realmente realizado e cuja falta indica que ele no foi cumprido, talvez seja algo impossvel de se alcanar.

4. UDP (User Datagram Protocol)


Muito usado por aplicaes de multimdia contnua (streaming): Tolerantes perda; Sensveis taxa; O conjunto de protocolos da Internet admite um protocolo de transporte sem conexes, UDP (User Datagram Protocol). Este oferece um meio para as aplicaes enviarem datagramas IP encapsulados sem que seja necessrio estabelecer uma conexo.

50

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

O UDP transmite segmentos que consistem em um cabealho de 8 bytes, seguido pela carga til, ou seja, o UDP basicamente o IP com um pequeno cabealho. As duas portas indicadas na figura acima servem para identificar os pontos extremos (mquinas de origem e destino). A porta de origem usada principalmente quando uma resposta dever ser devolvida origem. O campo UDP length inclui o cabealho de 8 bytes e os dados. O campo UDP checksum opcional e armazenado como 0 se no for calculado (um valor 0 verdadeiro calculado armazenado com todos os bits iguais a 1). importante saber que UDP no realiza. Ele no realiza controle de fluxo, controle de erros ou retransmisso aps a recepo de um segmento incorreto. Tudo isso cabe aos processos do usurio. O que ele faz fornecer uma interface para o protocolo IP com o recurso adicional de demultiplexao de vrios processos que utilizam as portas. Uma rea na qual o UDP especialmente til a de situaes cliente/servidor. Com freqncia, o cliente envia uma pequena solicitao ao servidor e espera uma pequena resposta de volta. Outra aplicao muito comum para o UDP o DNS (Domain Name System), um programa que precisa pesquisar o endereo IP de algum nome de host - por exemplo, www.dfiori.com.br - pode enviar um pacote UDP contendo o nome do host a um servidor DNS. O servidor responde com um pacote UDP que contm o endereo IP. 4.1 Demultiplexao no orientada a conexo: Cria sockets com nmeros de porta, exemplo: DatagramSocket mySocket1 = new DatagramSocket(99111); DatagramSocket mySocket2 = new DatagramSocket(99222); Socket UDP identificado por dois valores: (endereo IP de destino, nmero da porta de destino). Quando o hospedeiro recebe o segmento UDP: Verifica o nmero da porta de destino no segmento. Direciona o segmento UDP para o socket com este nmero de porta Datagramas com IP de origem diferentes e/ou portas de origem diferentes so direcionados para o mesmo socket.

51

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

5. TCP (Transmission Control Protocol)


5.1 Modelo de Servio TCP: O servio TCP obtido quando tanto o transmissor quanto o receptor criam pontos extremos chamados soquetes. Cada soquete tem um nmero de soquete (endereo) que consiste no endereo IP do host e em um nmero de 16 bits local para esse host, chamado porta. Para que o servio TCP funcione, necessrio que uma conexo seja explicitamente estabelecida entre um soquete da mquina transmissora e um soquete da mquina receptora. Cabe ressaltar que um soquete pode ser utilizado por vrias conexes ao mesmo tempo. Em outras palavras, duas ou mais conexes podem terminar no mesmo soquete. As portas com nmeros abaixo de 1024 so denominadas portas conhecidas e so reservadas para servios padro. Por exemplo, qualquer processo que deseje estabelecer uma conexo com um host para transferir um arquivo usando FTP pode se conectar porta 21 do host de destino e entrar em contato com seu daemon de FTP. A lista de portas conhecidas dada em www.iana.org.

5.2 Caractersticas do Servio TCP: Todas as conexes TCP so Full-duplex e ponto a ponto O TCP no admite os processos de multidifuso e difuso. Uma conexo TCP um fluxo de bytes e no um fluxo de mensagens. Quando uma aplicao repassa dados para a entidade TCP, ela pode envi-las imediatamente ou armazen-las em um buffer (para aguardar outros dados e enviar um volume maior de uma s vez). Entretanto, h ocasies em que a aplicao realmente quer que os dados sejam enviados de imediato. Por exemplo, um usurio que tenha se conectado a uma mquina remota. Depois que uma linha de comandos preenchida e a tecla Enter (ou Carriage Return) pressionada, essencial que a linha seja transportada mquina remota imediatamente. Outro recurso do servio TCP o dos dados urgentes. Quando um usurio interativo pressiona a tecla DEL ou as teclas CTRL- C para interromper um processo remoto j iniciado, a aplicao transmissora adiciona algumas informaes de controle ao fluxo de dados e o entrega ao TCP juntamente com um flag URGENT. Isso faz com que o servio TCP pare de acumular dados e transmita tudo imediatamente. Uma caracterstica fundamental do TCP que domina o projeto do protocolo que cada byte em uma conexo TCP tem seu prprio nmero de seqncia de 32 bits. As entidades transmissoras e receptoras do TCP trocam dados na forma de segmentos. O protocolo bsico utilizado pelas entidades TCP o protocolo de janela deslizante. Quando enviado um segmento, o transmissor tambm dispara um timer. Quando o segmento chega ao destino, a entidade TCP receptora retorna um segmento (com

52

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

ou sem dados, de acordo com as circunstncias) com um nmero de confirmao igual ao prximo nmero de seqncia que espera receber. Se o timer do transmissor expirar antes da confirmao ser recebida, o segmento ser retransmitido. 5.3 Primitivas do Socket TCP:

5.4 O Quadro TCP:

5.5 Demultiplexao (DEMUX) orientado a conexo: Socket TCP identificado por 4 valores: Endereo IP de origem End. porta de origem Endereo IP de destino End. porta de destino O Hospedeiro receptor usa os quatro valores para direcionar o segmento ao socket apropriado. O Hospedeiro servidor pode suportar vrios sockets TCP simultneos:

53

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Cada socket identificado pelos seus prprios 4 valores Servidores Web possuem sockets diferentes para cada cliente conectado HTTP no persistente ter um socket diferente para cada requisio.

6. Questes Relativas a desempenho de UDP e TCP em redes sem Fio


Na teoria, os protocolos de transporte deveriam ser independentes da tecnologia da camada de rede em que se baseiam. O TCP no deveria se preocupar com o fato do IP estar sendo executado sobre fibra ou rdio. Na prtica, isso importante, pois a maioria das implementaes do TCP foi otimizada com todo o cuidado, de acordo com suposies que so verdadeiras para as redes fisicamente conectadas, mas que falham no caso das redes sem fios. Ignorar as propriedades da transmisso sem fio pode levar a uma implementao do TCP logicamente correta, mas que tem um desempenho catastrfico. O principal problema o algoritmo de controle de congestionamento. Quase todas as implementaes do TCP atuais pressupem que os timeouts ocorrem devido a congestionamentos e no a pacotes perdidos. Conseqentemente, quando um timer expira, o TCP diminui o ritmo e comea a transmitir de modo mais lento. A idia por trs dessa abordagem reduzir a carga da rede e assim diminuir o congestionamento. No entanto, os enlaces de dados das transmisses sem fios no so confiveis. Apesar de o UDP no ter os mesmos problemas do TCP, a comunicao sem fio tambm cria algumas dificuldades para ele. O principal problema que os programas utilizam o UDP esperando que ele seja altamente confivel. Para programas que conseguem se recuperar de mensagens UDP perdidas h apenas um custo considervel. Porm, a passagem repentina de um ambiente no qual as mensagens teoricamente podem se perder, mas raras vezes se perdem, para um ambiente em que a perda de mensagens constante pode ter um efeito catastrfico sobre o desempenho.

54

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Parte 8: A Camada de Aplicao

1. A Camada de Aplicao
Depois de estudar todas as camadas preliminares, chegamos camada onde so encontradas todas as aplicaes. As camadas situadas abaixo da camada de aplicao tm a funo de oferecer um servio de transporte confivel, mas, na verdade, elas no executam qualquer tarefa para os usurios, dependem de algum software capaz de dar suporte a algum tipo de servio.

2. DNS Domain Name System


Sabe-se que quando se deseja algum recurso, este precisa ser referenciado atravs de seu endereo binrio, ou seja, seu endereo IP, que so dif ceis de memorizar. Exemplo: Enviar um e-mail usando o domnio do e-mail um nmero binrio, como aluno@201.10.20.31. Conseqentemente, foram introduzidos nomes em ASCII para desacoplar os nomes das mquinas dos endereos desses endereos numricos. Para isso, necessrio um mecanismo que faa este mapeamento. Na ARPANET o mapeamento era realizado atravs de um arquivo chamado hosts.txt, que listava todos os hosts e seus endereos IP, no entanto para uma rede demasiadamente grande esta abordagem invivel. Diante dessa mudana de perspectiva foi criado o DNS (Domain Name System Sistema de Nome de Domnios). A essncia do DNS a criao de um esquema hierrquico de atribuio de nomes baseado no domnio e em um sistema de bancos de dados distribudos para implementar esse esquema de nomenclatura. Ele usado principalmente para mapear nomes de hosts e destinos de mensagens de correio eletrnico em endereos IP, mas tambm pode ser usado para outros objetivos. O DNS definido nas RFCs 1034 e 1035. Para mapear um nome em um endereo IP, um programa aplicativo chama um procedimento de biblioteca denominado resolvedor e repassa a ele o nome como um parmetro. O resolvedor envia um pacote UDP a um servidor DNS local, que procura o nome e retorna o endereo IP ao resolvedor. Em seguida, o resolvedor retorna o endereo IP ao programa aplicativo que fez a chamada. Munido do endereo IP, o programa pode ento estabelecer uma conexo TCP com o destino ou enviar pacotes UDP. Uma analogia que pode ser feita com relao ao sistema postal. Conceitualmente, a Internet dividida em mais de 200 domnios de nvel superior, onde cada domnio cobre muitos hosts. Cada domnio particionado em subdomnios, que tambm so particionados e assim por diante. Todos esses domnios podem ser representados por uma rvore, como na figura abaixo. As folhas da rvore representam domnios que no tm subdomnios (mas que contm mquinas, claro). Um domnio folha contm um nico host ou pode representar uma empresa e conter milhares de hosts. Existem dois tipos de domnios de nvel superior: genricos e de pases. Os domnios genricos originais eram com (comercial), edu (instituies educacionais), gov (inst ituies governamentais), int (certas organizaes internacionais), mil (rgos das foras armadas), net (provedores de rede) e org (organizaes sem fins lucrativos). Os domnios de pases incluem uma entrada para cada pas, conforme a definio da ISO 3166.

55

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Em geral, fcil obter um domnio de segundo nvel, como <nome-daempresa.com>. Isso exige apenas um registro do domnio de nvel superior correspondente (nesse caso, com) para verificar se o nome desejado est disponvel e no marca registrada de outra pessoa. Para que um novo domnio seja criado, necessria a permisso do domnio no qual ele ser includo. um Servidor de Nomes pelo menos na teoria, um nico servidor de nomes poderia conter o banco de dados DNS inteiro e responder a todas as consultas referentes ao banco. Na prtica, esse servidor ficaria to sobrecarregado que seria intil. Alm disso, caso esse servidor viesse a ficar fora do ar, toda a Internet seria atingida. Para evitar os problemas associados presena de uma nica fonte de informaes, o espao de nomes do DNS dividido em zonas no superpostas.

Parte 9: A Segurana das Redes

1. Segurana das Redes


A maior parte dos problemas de segurana causada intencionalmente por pessoas maliciosas que tentam obter algum benefcio, chamar a ateno ou prejudicar algum. Para tornar uma rede segura, com freqncia necessrio lidar com adversrios inteligentes, dedicados e, s vezes, muito bem subsidiados. Os problemas de segurana das redes podem ser divididos nas seguintes reas interligadas: Confidencialidade;
56

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Integridade; Disponibilidade; Autenticidade; No repdio. Muitas so as solues apresentadas sobre a camada de aplicao, no entanto importante considerar a que parte da pilha de protocolos pertence a segurana de redes. Provavelmente no existe uma parte especfica. Todas as camadas contribuem de alguma forma. Na camada de enlace de dados, os pacotes de uma linha ponto a ponto podem ser codificados medida que saem de uma mquina, e decodificados quando entram em outro sistema. No entanto, essa soluo se mostra ineficiente quando os pacotes tm de atravessar vrios roteadores, pois necessrio decriptografar os pacotes em cada roteador, o que os torna vulnerveis a ataques dentro do roteador. Na camada de rede, podem ser instalados firewalls para manter ou descartar pacotes. A segurana do IP tambm funciona nessa camada. Na camada de transporte, possvel criptografar conexes inteiras fim a fim, ou seja, processo a processo. Para obter segurana mxima, necessrio que ela seja fim a fim. Finalmente, questes como autenticao do usurio e no repdio s podem ser tratadas na camada de aplicao.

2. Problemas na comunicao:

2.1 Interrupo: Ataque passivo, isto no manipula a informao tragegada. Realiza o que chamamos de DoS (Deny of service) ou negao de servios. Se for um DDoS o ataque distribudo de negao de servios. 2.2 Modificao: Ataque ativo, no qual h manipulao de informao, o atacante ouve o canal e realiza as modificaes das informaes enviando ao destinatrio as informaes manipuladas. Esse ataque recebe o nome de man in the middle (MIM). 2.3 Interseco: Ataque passivo, atacante no manipula as informaes porm as escuta e verifica seu contedo. Esse ataque chamado de sniffer. 2.4 Fabricao: Ataque Ativo, no qual h manipulao de informaes, o atacante gera informaes se fazendo como o remetente para o destinatrio.

57

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

3. Criptografia
A palavra criptografia tem origem no grego e significa Palavra Oculta. Jlio Csar escrevia textos criptografados para Ccero e para seus generais a mais de 2.000 anos atrs, usando um cifrador onde cada letra era substituda por uma deslocada trs posies no alfabeto. Thomas Jefferson utilizou um equipamento chamado Roda Criptogrfica para manter comunicaes privadas quando foi representante junto ao governo Francs (1784-1789) porque na poca, os servios de correio abriam toda a correspondncia enviada ou recebida. No sculo 20 a mquina Enigma foi um dos segredos mais bem guardados na Segunda Grande Guerra, usada pelos Alemes para proteger as comunicaes entre o comando e as embarcaes navais. Na figura abaixo podemos visualizar um exemplar de uma mquina Enigma.

3.1 Conceitos de Criptografia Quando alguns profissionais falam de criptografia, eles costumam fazer distino entre cifras e cdigos. Cifra uma transformao de caractere por caractere ou de bit por bit, sem levar em conta a estrutura lingstica da mensagem. Cdigo substitui uma palavra por outra palavra ou smbolo. Os cdigos no so mais utilizados, embora tenham uma histria gloriosa. Criptografia: o processo de converter um texto aberto em um texto cifrado; Criptografia Reversa ou Decriptografia: o processo de reconverter um texto cifrado em texto aberto; Chave: Conceito relacionado ao cdigo (segredo) do processo criptogrfico. Tanto a criptografia, quanto a decriptografia utilizam chave(s) e um algoritmo(s). Dois so os tipos de criptografia quanto utilizao da chave: Simtrica; Assimtrica 3.2 Criptografia simtrica

58

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Este modelo de criptografia requer uma chave compartilhada. Sua performance rpida e segura, contudo no prtico para um nmero grande de usurios devido a necessidade de se compartilhar a chave. importante notar que nas aplicaes apresenta melhor resultado, porm s deve ser usada sempre que a performance for o fator determinante . Exemplos: DES, IDEA, Blowfish, Twofish, RC2, RC4.

3.3 Criptografia Assimtrica: Assinaturas de chave pblica Um problema estrutural com o uso da criptografia de chave simtrica para assinaturas digitais que todos tm de confiar. Alm disso, tem de ler todas as mensagens assinadas. Os candidatos mais lgicos execuo do servidor so o governo, os bancos, os contadores e os advogados. Infelizmente, nenhuma dessas organizaes inspira total confiana a todos os cidados. Da, seria interessante se o ato de assinatura de documentos no exigisse a presena de uma autoridade confivel. Felizmente, a criptografia de chave pblica pode trazer uma importante contribuio para esse caso. Vamos supor que os algoritmos de criptografia e descriptografia de chave pblica tenham a propriedade de que E(D(P)) = P alm, claro, da propriedade habitual de que D(E(P)) = P . (O RSA tem essa propriedade; portanto, a suposio no irracional.) Supondo-se que seja esse o caso, Alice pode enviar uma mensagem de texto simples assinada, P, para Bob transmitindo EB(DA (P)). Observe que Alice conhece sua prpria chave de descriptografia (privada), DA, assim como a chave pblica de Bob, EB ; portanto, a criao dessa mensagem algo que Alice pode fazer. Quando recebe a mensagem, Bob a transforma usando sua chave privada e produz DA (P), como mostra a Figura abaixo. Ele guarda esse texto em um lugar seguro e depois aplica EA para obter o texto simples original. A figura exibe as assinaturas digitais com o uso da criptografia de chave pblica

59

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Para ver como a propriedade de assinatura funciona, suponha que posteriormente Alice negue ter enviado a mensagem P para Bob. Quando o caso chegar aos tribunais, Bob poder produzir tanto P quanto DA (P). O juiz pode confirmar com facilidade que Bob certamente tem uma mensagem vlida criptografada por DA simplesmente aplicando EA mensagem. Como Bob no sabe qual a chave privada de Alice, a nica forma de Bob ter adquirido uma mensagem criptografada por essa chave seria se Alice de fato a tivesse enviado. Enquanto estiver presa por perjrio e fraude, Alice ter bastante tempo para inventar novos algoritmos de chave pblica muito interessantes. Apesar da utilizao da criptografia de chave pblica para assinaturas digitais ser um esquema elegante, existem problemas relacionados ao ambiente no qual elas operam e no ao algoritmo bsico. De um lado, Bob s poder provar que uma mensagem foi enviada por Alice enquanto DA permanecer secreta. Se Alice revelar sua chave secreta, o argumento deixar de existir, pois qualquer um poderia ter enviado a mensagem, inclusive o prprio Bob. Por exemplo, pode ocorrer um problema se Bob for o corretor de aes de Alice. Alice solicita a Bob que ele compre aes ou ttulos de uma determinada empresa. Logo depois disso, o preo cai abruptamente. Para repudiar a mensagem que enviou a Bob, Alice vai polcia afirmando que sua casa foi assaltada, e o PC que continha sua chave foi roubado. Dependendo das leis do estado ou do pas onde mora, ela poder ou no ser legalmente processada, em especial se afirmar que s descobriu o roubo quando chegou em casa aps o trabalho, muitas horas depois do ocorrido. Outro problema com o esquema de assinatura o que acontecer se Alice decidir alterar sua chave. Isso legal, e provavelmente uma boa idia faz-lo de vez em quando. Se mais tarde surgir um caso jurdico, como descrevemos antes, o juiz aplicar a EA atual a DA (P) e descobrir que ela no produz P . Nesse momento, a situao de Bob ficar complicada.

4. Gerenciamento de chaves pblicas


A criptografia de chave pblica torna possvel a comunicao segura para pessoas que no compartilham uma chave comum, e tambm possibilita a assinatura de mensagens sem a presena de uma terceira parte confivel. Finalmente, os sumrios de mensagens assinados permitem verificar com facilidade a integridade de mensagens recebidas. Porm, existe um problema que ignoramos at aqui: se Alice e Bob no conhecem um ao outro, como ele iro obter as respectivas chaves pblicas para iniciar o processo de comunicao? A soluo bvia colocar a chave pblica no Website no funciona pela seguinte razo: suponha que Alice queira pesquisar a chave pblica de Bob em seu Web site. Como ela far isso? Bem, Alice comea digitando o URL de Bob. Seu navegador ento pesquisa o endereo DNS da home page de Bob e envia a ele uma solicitao GET. Infelizmente, Trudy intercepta a solicitao e responde com uma home page falsa, talvez uma cpia da home page de Bob, exceto pela substituio da chave pblica de Bob pela chave pblica de Trudy. Quando Alice codifica sua primeira mensagem com ET, Trudy a decodificar, ler e recodificar com a chave pblica de Bob, enviando a mensagem a Bob, que no sabe que Trudy est lendo suas mensagens recebidas. Pior ainda, Trudy poderia modificar as mensagens antes de recodific-las para Bob. claro que h necessidade de algum mecanismo para garantir que as chaves pblicas possam ser trocadas em segurana.

60

Prof. Ms. Diego Fiori de Carvalho Apostila da disciplina: Fundamentos e Infra-estrutura em Redes de Computadores.

Bibliografia:

- Tanenbaum Andrew S. e Wetherall, Redes de Computadores, Editora PEARSON, 5 Edio, edio traduzida (2010). - Tanenbaum Andrew S., Redes de Computadores, Editora Campus, 3 Edio, Verso traduzida (1997). - Kurose James F.,Ross Keith W., Computer Networking: A Top-Down Approach, Addison-Wesley Publishing Company, USA, 5th edition (2009). - Comer E. Douglas, Stevens L. David, Interligao em rede com TCP/IP Projeto, implementao e detalhes internos, Volume II, Editora Campus, Verso traduzida, 3 Edio (1998). -Aulas do Professor Ricardo Rodrigues Barcerlar http://www.ricardobarcelar.com.br

61

Você também pode gostar