apostila de arquitetura de redes de com put adores

Upload: eduardo-guilherme

Post on 10-Jul-2015

1.417 views

Category:

Documents


0 download

TRANSCRIPT

CURSO DE PS-GRADUAO EM CINCIA DA COMPUTAO

PROFa ELIZABETH SPECIALSKI INE - UFSC [email protected]

FLORIANPOLIS, MARO DE 2000

Apresentao

Profa. Elizabeth Sueli Specialski, MSC. UFRGS (Brasil, 1981)Elizabeth Sueli Specialski graduou-se em Matemtica pela Pontifcia Universidade Catlica do Rio Grande do Sul em 1978, obteve o ttulo de Mestre em Cincias da Computao pela Universidade Federal do Rio Grande do Sul em 1981 e o ttulo de Doutora em Engenharia pela Universidade Federal de Santa Catarina em maro de 2000. professora no nvel Adjunto IV da Universidade Federal de Santa Catarina e vem atuando em pesquisa e formao na rea de Redes de Computadores e de Gerncia de Redes de Computadores e de Telecomunicaes junto ao Departamento de Informtica e de Estatstica da UFSC nos cursos de Graduao em Computao e PsGraduao em Computao e em Engenharia de Produo. Seu desempenho traduzido pela publicao de mais de 50 trabalhos em Congressos Nacionais e Internacionais, palestras convidadas e consultorias realizadas junto a empresas fornecedoras de produtos e servios de telecomunicaes.

Endereo para contato:

Prof. Elizabeth Sueli Specialski Departamento de Informtica e de Estatstica Universidade Federal de Santa Catarina Campus Universitrio Trindade 88040-900 Florianpolis SC Tel.: (048) 331-9498 Fax: (048) 331-9566 E-mail: [email protected]

Arquiteturas de Redes

2

Sumrio

Captulo 1 - Introduo s Redes de Comunicao ............................................................. 6 1.1 INTRODUO ........................................................................................................................... 6 1.2 HISTRICO DAS REDES DE COMUNICAO ................................................................................ 7 1.3 IMPORTNCIA DAS REDES DE COMUNICAO ........................................................................... 8 1.4 O HARDWARE DE REDE ........................................................................................................... 9 1.4.1 As diferentes topologias................................................................................................... 9 1.4.2 Topologia fsica X topologia lgica ............................................................................... 11 1.4.3 Categorias de redes....................................................................................................... 11 1.5 O SOFTWARE DE REDE ........................................................................................................... 12 1.5.1 Servios necessrios comunicao.............................................................................. 12 1.5.2 A organizao de funes .............................................................................................. 14 1.5.3 A estruturao em camadas ........................................................................................... 15 Captulo 2 - Conceitos Bsicos do Software de Rede ........................................................ 17 2.1 2.2 2.3 2.4 2.5 2.6 2.7 INTRODUO ......................................................................................................................... 17 HIERARQUIA DE PROTOCOLOS ................................................................................................ 17 DIFERENAS ENTRE SERVIO E PROTOCOLO ........................................................................... 19 QUESTES DE PROJETO RELACIONADAS S CAMADAS.............................................................. 19 INTERFACES E SERVIOS ........................................................................................................ 20 SERVIOS ORIENTADOS CONEXO E SEM CONEXO .............................................................. 21 PRIMITIVAS DE SERVIO ........................................................................................................ 22

Captulo 3 - Arquiteturas de Redes ..................................................................................... 25 3.1 INTRODUO ......................................................................................................................... 25 3.2 CLASSIFICAO DAS REDES DE COMPUTADORES .................................................................... 25 3.2.1 Redes Locais ................................................................................................................. 25 3.2.2 Redes Metropolitanas .................................................................................................... 26 3.2.3 Redes Geograficamente Distribudas ............................................................................. 26 3.2.4 Redes Sem Fio............................................................................................................... 27 3.2.5 Ligao entre Redes ...................................................................................................... 28 3.2.6 Parmetros de comparao ........................................................................................... 28 3.3 AS ARQUITETURAS DE REDE .................................................................................................... 29 3.4 A ARQUITETURA DO RM/OSI................................................................................................. 30 3.5 A ARQUITETURA TCP/IP INTERNET .................................................................................... 30 3.6 AS REDES LOCAIS.................................................................................................................. 31 3.6.1 O RM-OSI e as redes locais ........................................................................................... 31 3.6.2 O padro IEEE 802 ....................................................................................................... 32 3.6.3 Interconexo de redes locais.......................................................................................... 33 Captulo 4 - Modelos de Referncia..................................................................................... 35 4.1 INTRODUO ......................................................................................................................... 35 4.2 O MODELO DE REFERNCIA OSI ............................................................................................. 35 4.2.1 As camadas do RM-OSI................................................................................................. 37 4.3 O MODELO DE REFERNCIA TCP/IP ........................................................................................ 39 4.3.1 As camadas do TCP/IP.................................................................................................. 39 4.4 ATM E O MODELO DE REFERNCIA B-ISDN .......................................................................... 42 4.4.1 Elementos bsicos ATM................................................................................................. 43 4.4.2 Camadas de Adaptao ATM......................................................................................... 44

Arquiteturas de Redes

3

4.4.3 Estrutura da AAL .......................................................................................................... 46 4.4.4 Meio de Transmisso..................................................................................................... 46 4.4.5 Camada fsica do modelo de referncia B-ISDN............................................................. 47 4.5 OUTROS EXEMPLOS DE REDES ................................................................................................ 47 Captulo 5 - A Camada Fsica............................................................................................... 50 5.1 INTRODUO ......................................................................................................................... 50 5.2 OS SUPORTES DE TRANSMISSO .............................................................................................. 50 5.2.1 O par de fios tranados ................................................................................................. 50 5.2.2 Os cabos coaxiais.......................................................................................................... 50 5.2.3 As fibras ticas.............................................................................................................. 51 5.2.4 As redes sem fio (radiodifuso)...................................................................................... 51 5.3 ASPECTOS DA TRANSMISSO DE DADOS .................................................................................. 52 Captulo 6 - A Camada de Enlace de Dados........................................................................ 55 6.1 INTRODUO ......................................................................................................................... 55 6.2 AS CLASSES DE SERVIOS DE ENLACE .................................................................................... 55 6.3 AS PRIMITIVAS DE ENLACE..................................................................................................... 56 6.4 O CONCEITO DE QUADRO........................................................................................................ 57 6.5 O CONTROLE DE ERRO............................................................................................................ 58 6.5.1 Os cdigos de correo de erro ..................................................................................... 59 6.5.2 Os cdigos de deteco de erro...................................................................................... 60 6.5.3 Procedimentos para controle de erro ............................................................................. 61 6.6 O CONTROLE DE FLUXO ......................................................................................................... 64 6.7 O CONTROLE DE ACESSO AO MEIO .......................................................................................... 65 6.8 ALGUNS EXEMPLOS DE PROTOCOLOS DE ENLACE..................................................................... 66 Captulo 7 - A Camada de Rede........................................................................................... 68 7.1 INTRODUO ......................................................................................................................... 68 7.2 SERVIOS OFERECIDOS PELA CAMADA DE REDE ...................................................................... 68 7.3 ORGANIZAO INTERNA DA CAMADA DE REDE ....................................................................... 70 7.4 AS PRIMITIVAS DE SERVIO DE REDE....................................................................................... 71 7.5 O ENDEREAMENTO DE REDE................................................................................................. 73 7.6 A FUNO DE ROTEAMENTO .................................................................................................. 74 7.6.1 Algoritmo do caminho mais curto .................................................................................. 74 7.6.2 Roteamento multicaminhos ............................................................................................ 75 7.7 O CONTROLE DE CONGESTIONAMENTO ................................................................................... 76 7.7.1 A pr-alocao de buffers .............................................................................................. 76 7.7.2 A destruio de pacotes ................................................................................................. 77 7.7.3 O controle de fluxo ........................................................................................................ 77 7.7.4 Outras tcnicas.............................................................................................................. 77 7.8 LIGAES INTER-REDES ......................................................................................................... 77 Captulo 8 - A Camada de Transporte ................................................................................. 79 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 INTRODUO ......................................................................................................................... 79 SERVIOS OFERECIDOS PELA CAMADA DE TRANSPORTE ........................................................... 79 AS PRIMITIVAS DE SERVIO DE TRANSPORTE .......................................................................... 80 OS PROTOCOLOS DE TRANSPORTE .......................................................................................... 82 ENDEREAMENTO.................................................................................................................. 84 MULTIPLEXAO E SPLITTING................................................................................................. 87 ESTABELECIMENTO E ENCERRAMENTO DE CONEXES .............................................................. 87 CONTROLE DE FLUXO E BUFFERIZAO .................................................................................. 87

Captulo 9 - A Camada de Sesso ....................................................................................... 88 9.1 9.2 9.3 9.4 9.5 9.6 INTRODUO ......................................................................................................................... 88 SERVIOS OFERECIDOS PELA CAMADA DE SESSO ................................................................... 88 SESSO X TRANSPORTE: SIMILARIDADES E DIFERENAS .......................................................... 89 A GESTO DO DILOGO .......................................................................................................... 90 A SINCRONIZAO................................................................................................................. 91 GERENCIAMENTO DE ATIVIDADES........................................................................................... 92 4

Arquiteturas de Redes

9.7

AS PRIMITIVAS DE SERVIO DE SESSO ................................................................................... 93

Captulo 10 - A Camada de Apresentao........................................................................... 95 10.1 INTRODUO ......................................................................................................................... 95 10.2 AS PRIMITIVAS DE SERVIO DA CAMADA DE APRESENTAO ................................................... 95 10.3 A NOTAO ASN.1 ............................................................................................................... 96 10.4 A COMPRESSO DE DADOS ..................................................................................................... 98 10.4.1 Codificao de um alfabeto finito de smbolos................................................................ 98 10.4.2 Codificao dependente da freqncia........................................................................... 99 10.4.3 Codificao baseada no contexto................................................................................... 99 10.5 A CRIPTOGRAFIA ................................................................................................................. 100 10.5.1 A criptagem por substituio ....................................................................................... 101 10.5.2 A criptagem por transposio ...................................................................................... 101 Captulo 11 - A Camada de Aplicao ................................................................................103 11.1 INTRODUO ....................................................................................................................... 103 11.2 ESTRUTURA DA CAMADA DE APLICAO .............................................................................. 103 11.2.1 Caractersticas especficas da camada de Aplicao.................................................... 103 11.2.2 Conceitos relacionados camada de Aplicao........................................................... 104 11.2.3 Exemplos de Estruturas de AEIs .................................................................................. 105 11.3 O ELEMENTO DE SERVIO ACSE .......................................................................................... 106 11.3.1 Os servios oferecidos pelo ACSE................................................................................ 106 11.3.2 As interfaces do ACSE com os servios de Apresentao.............................................. 107 11.4 OUTROS ELEMENTOS DE SERVIO ......................................................................................... 107 11.4.1 Transferncia Confivel (RTSE) .................................................................................. 108 11.4.2 Operaes Remotas (ROSE) ........................................................................................ 108 11.4.3 Confiabilidade, Concorrncia e Recuperao (CCR) ................................................... 108 11.4.4 Processamento de Transaes (TP).............................................................................. 109 11.5 ACESSO E TRANSFERNCIA DE ARQUIVOS (FTAM) ................................................................ 109 11.5.1 O servidor virtual de arquivos ..................................................................................... 110 11.5.2 As primitivas de servio de FTAM................................................................................ 111 Captulo 12 - Bibliografia ....................................................................................................112

Arquiteturas de Redes

5

Captulo 1 - Introduo s Redes de Comunicao

1.1

INTRODUO

A histria nos mostra que cada um dos ltimos sculos foi dominado por uma tecnologia diferente. A revoluo industrial no sculo XVIII, as mquinas a vapor no sculo XIX e a tecnologia da informao no sculo XX. Exemplos disto so as redes de telefonia em escala mundial, o rdio, a televiso, os computadores e os satlites de comunicao. Com estas conquistas, o conceito de distncia geogrfica tornou-se, em alguns casos, um fator pouco importante para a soluo de problemas. Apesar da indstria da informtica ser muito jovem se comparada a outros setores (a de automveis e de avies, por exemplo), os progressos ocorridos foram espetaculares em um curto espao de tempo. Nas duas primeiras dcadas de sua existncia, os sistemas computacionais eram acondicionados em uma grande sala com paredes de vidro, atravs das quais a maior parte dos visitantes, e at usurios, podiam contemplar extasiados aquela maravilha eletrnica. Uma empresa de mdio porte ou uma universidade contava apenas com um ou dois computadores, enquanto grandes instituies tinham, no mximo, algumas dezenas. Era pura fico cientfica a idia de que, em apenas 20 anos, haveria milhes de computadores muito mais avanados, do tamanho de um selo postal, ou ainda menor. A fuso dos computadores e das comunicaes teve uma profunda influncia na forma como os sistemas computacionais foram organizados. Est totalmente ultrapassado o conceito de centro de computao como uma sala onde os usurios levam os programas para serem processados. Este conceito foi substitudo pelas chamadas redes de computadores, nas quais os trabalhos podem ser realizados por uma srie de computadores interconectados. Sendo assim, uma necessidade o conhecimento, por parte do pessoal envolvido com informtica, dos conceitos e funcionamento das redes de computadores. importante ento conceituar o que entendemos por redes de computadores. Ns usaremos o termo rede de computadores para designar um conjunto de computadores autnomos e interconectados. Dois computadores so interconectados quando podem trocar informaes atravs de algum mecanismo de comunicao. Quando dizemos que eles devem ser autnomos desejamos excluir os sistemas onde existe uma clara relao mestre/escravo. Outro esclarecimento importante fazer uma clara distino entre uma rede de computadores e um sistema distribudo. A principal diferena entre eles que, em um sistema distribudo, a existncia de diversos computadores autnomos transparente para o usurio. A transparncia de utilizao dada pelo sistema operacional. Em suma, o usurio de um sistema distribudo no tem conscincia de que h vrios processadores. Para ele como se existisse um processador virtual e todas as atividades para execuo de uma tarefa acontecem de forma o mais automatizada possvel. Por outro lado, em uma rede, o usurio necessita realizar explicitamente suas tarefas, tais como: fazer o login em uma mquina, realizar a transferncia de seus arquivos, submeter suas tarefas remotas, entre outras. Na prtica, um sistema distribudo um sistema de software instalado em uma rede, proporcionando um alto grau de coeso e transparncia ao usurio. o software, ou o sistema operacional, que determina a diferena entre uma rede e um sistema distribudo, no o hardware. No entanto os dois assuntos possuem uma srie de pontos em comum, por exemplo: os sistemas distribudos e as redes necessitam movimentar arquivos. A diferena est em quem o responsvel pela movimentao: o sistema operacional ou o usurio.

Arquiteturas de Redes

6

1.2

HISTRICO DAS REDES DE COMUNICAO

A evoluo da microeletrnica e da informtica tem possibilitado a obteno de processadores e outros componentes de computadores cada vez mais potentes e velozes, num tamanho mais reduzido e num preo cada vez mais acessvel a um maior nmero de pessoas. Os microprocessadores existentes hoje em dia, que ocupam o espao menor do que uma caixa de fsforos, substituem e ultrapassam as capacidades dos computadores de alguns anos atrs, que ocupavam salas inteiras. Estes eram mquinas bastante complexas no que diz respeito sua utilizao, sendo operadas apenas por especialistas. Os usurios daqueles computadores normalmente submetiam seus programas aplicativos como jobs (ou tarefas) sem qualquer interao com o processamento do programa. Uma primeira tentativa de interao com o computador ocorreu no incio dos anos 60, com a tcnica de time-sharing, que foi o resultado do desenvolvimento dos sistemas computacionais e da tecnologia de transmisso de dados. Nesta tcnica, um conjunto de terminais era conectado a um computador central atravs de linhas de comunicao de baixa velocidade, o que permitia aos usurios interagir com os seus programas. A necessidade de conexo de terminais para o processamento interativo foi o ponto de partida para o estabelecimento de necessidades de comunicao nos computadores. A tcnica de time-sharing permitia a um grande conjunto de usurios o compartilhamento de um nico computador para a resoluo de uma grande diversidade de problemas e as aplicaes desenvolvidas foram cada vez mais se multiplicando e se diversificando (clculos complexos, produo de relatrios, ensino de programao, aplicaes militares, etc). Este aumento na demanda implicava numa necessidade crescente de atualizaes e incremento na capacidade de clculo e de armazenamento nas CPUs, o que nem sempre era vivel ou possvel, dado que os computadores do tipo mainframes nem sempre eram adaptados para suportar determinadas extenses. O avano tecnolgico na rea dos circuitos integrados, gerando componentes mais poderosos a um custo mais baixo, foi caindo o preo da CPU. Este evento constituiu a chamada revoluo do hardware. Nos anos 70, com o surgimento dos minicomputadores, foi possvel adaptar as capacidades de processamento s reais necessidades de uma dada aplicao. Alm disso, um grande nmero de usurios operavam sobre conjuntos comuns de informaes, gerando a necessidade de compartilhamento de dados, de dispositivos de armazenamento e de perifricos entre os vrios departamentos de uma empresa. Isto deu um novo impulso aos trabalhos no sentido de resolver os problemas de comunicao entre os computadores. Este novo tipo de aplicaes exigia velocidade e capacidade de transmisso muito mais elevadas que no caso da conexo de terminais a um computador central. Assim, com a utilizao de minicomputadores interconectados, obtinha-se muitas vezes uma capacidade de processamento superior quela possvel com a utilizao dos mainframes. Outro aspecto interessante que as redes podiam ser estendidas em funo das necessidades de processamento das aplicaes. Alm disso, a modularidade natural das redes de computadores era tal que uma falha num minicomputador ou na rede tinha um efeito bastante limitado em relao ao processamento global. O surgimento dos minicomputadores e dos computadores pessoais trouxe uma nova soluo para o problema de mquinas multi-usurio pois dava uma CPU para cada um deles. As pequenas companhias e as subsidirias utilizavam-se dos minicomputadores para algum processamento local e na preparao dos dados para o bureaux de servios ou para a matriz. Os dados eram transferidos quando exigiam um grande volume de processamento ou um processamento requerendo software ou hardware especial. O uso dos minicomputadores minimizou mas no solucionou o problema da comunicao. Minimizou porque os dados podiam agora ser preparados e armazenados em fita magntica e transportados via sistema de malotes. Este sistema de transporte no , obviamente, o mais adequado para transferncia de informao pois est sujeito a acidentes, gerando atraso ou perda total do material. Por outro lado, o sistema centralizado oferecia a vantagem de compartilhar recursos caros tanto de software como de hardware, ou seja, o software e hardware especial era caro mas seu preo era amortizado pelo rateio do custo dos perifricos entre os vrios usurios. Surge, ento, a necessidade de uma nova tecnologia para compartilhamento de recursos. Paralelamente, a tecnologia de comunicaes alcanava a transmisso digital em linhas telefnicas atravs de modems. Este servio era caro e apenas suportado por grandes companhias, uma vez que utilizavam linhas telefnicas de forma dedicada. Esta situao perdurou por algum tempo (no Brasil, at maro de 1985) e era necessria outra soluo para comunicao atravs de uma nova tecnologia de comunicao. A necessidade da disseminao da informao e os avanos em tecnologia de armazenamento, propiciaram o aparecimento de discos de grande capacidade e mais baratos (exploso da informao e grandes bancos de dados). A o problema de comunicao tornou-se muito mais srio. Para acessos no Arquiteturas de Redes 7

muito freqentes, uma linha telefnica dedicada no era vivel em termos de custo e o transporte via malote era invivel em termos de velocidade. A soluo para o compartilhamento de recursos fsicos e lgicos juntamente com a vantagem de se ter um sistema descentralizado, s pode ser alcanada atravs da interconexo das CPUs entre si. a isso que se propem as redes de computadores. As solues encontradas, na poca, para a comunicao de computadores em termos de longa distncia foi a tecnologia de comutao de pacotes, que solucionou o problema da linha telefnica dedicada e o problema do transporte via malote. Num ambiente restrito a uma regio local (por exemplo, uma fbrica, um campus), o problema do compartilhamento de recursos atravs de interconexo de CPUs foi resolvido atravs da tecnologia de redes locais. Atualmente, as vantagens dos sistemas distribudos e interconectados so uma evidncia reconhecida para as aplicaes mais diversas, desde a automao de escritrios at o controle de processos, passando por aplicaes de gerenciamento bancrio, reservas de passagens areas, processamento de texto, educao distncia, correio eletrnico, WWW, entre outras to bem conhecidas. A juno de duas tecnologias comunicao e processamento de informaes veio revolucionar o mundo em que vivemos, abrindo as fronteiras para novas formas de comunicao, e permitindo maior eficcia dos sistemas computacionais. As redes de computadores so uma realidade neste nosso contexto atual.

1.3

IMPORTNCIA DAS REDES DE COMUNICAO

Um grande nmero de empresas possui atualmente uma quantidade relativamente grande de computadores operando nos seus diversos setores. Um exemplo deste fato aquele de uma empresa que possui diversas fbricas contendo cada uma um computador responsvel das atividades de base da fbrica (controle de estoques, controle da produo e produo da folha de pagamentos). Neste exemplo, apesar da possibilidade de operao destes computadores de maneira isolada, evidente que sua operao seria mais eficiente se eles fossem conectados para, por exemplo, permitir o tratamento das informaes de todas as fbricas da empresa. O objetivo da conexo dos diferentes computadores da empresa permitir o que poderamos chamar de compartilhamento de recursos, ou seja, tornar acessveis a cada computador todos os dados gerados nas diversas fbricas da empresa. Um outro ponto importante da existncia das Redes de Comunicao relacionado a um aumento na confiabilidade do sistema como um todo. Pode-se, por exemplo, ter multiplicados os arquivos em duas ou mais mquinas para que, em caso de defeito de uma mquina, cpias dos arquivos continuem acessveis em outras mquinas. Alm disso, o sistema pode operar em regime degradado no caso de pane de um computador, sendo que outra mquina pode assumir a sua tarefa. A continuidade de funcionamento de um sistema ponto importante para um grande nmero de aplicaes, como por exemplo: aplicaes militares, bancrias, o controle de trfego areo, etc. A reduo de custos uma outra questo importante da utilizao das Redes de Comunicao, uma vez que computadores de pequeno porte apresentam uma menor relao preo/desempenho que os grandes. Assim, sistemas que utilizariam apenas uma mquina de grande porte e de custo muito elevado podem ser concebidos base da utilizao de um grande nmero de microcomputadores (ou estaes de trabalho) manipulando dados presentes num ou mais servidores de arquivos. Os mainframes so dezenas de vezes mais rpidos do que alguns computadores pessoais mas tambm seu preo milhares de vezes maior. Esta situao levou os projetistas a criarem sistemas baseados em computadores pessoais para os usurios com os dados mantidos em um ou mais servidores de arquivos compartilhados, Neste modelo os usurios so chamados clientes e a organizao geral denominada modelo cliente/servidor. No modelo cliente/servidor um processo cliente envia uma mensagem de solicitao ao processo servidor para que alguma tarefa seja executada. Em seguida o processo servidor executa a tarefa e envia a resposta ao processo cliente. Geralmente existem muitos clientes usando um pequeno nmero de servidores. Ainda temos como vantagem no uso das redes a escalabilidade, que a possibilidade de aumentar gradualmente o desempenho do sistema medida que cresce o volume de carga, atravs da adio de mais processadores. Esta era uma enorme dificuldade nos sistemas centralizados. Quando o limite de capacidade era atingido, o sistema tinha que ser substitudo por um maior, o que geralmente implicava em altos custos e grandes aborrecimentos para os usurios. Outras vantagens esto relacionadas ainda a questes que no tem relao com tecnologia. Uma rede de computadores oferece um meio de comunicao altamente eficaz para funcionrios que

Arquiteturas de Redes

8

trabalham em locais muito distantes um do outro. Uma rede viabiliza, por exemplo, a possibilidade de duas ou mais pessoas escreverem um relatrio mesmo estando separadas por milhares de quilmetros. Quando algum dos participantes faz uma alterao no documento on-line, seus parceiros podem v-la imediatamente, sem que seja necessrio passar dias esperando por uma carta. Isto facilita o esprito de equipe e reduz em muito o custo de manuteno de equipes de trabalho que no esto localizadas m uma mesma cidade.

1.4

O HARDWARE DE REDE

Vamos agora dar um pouco de ateno a forma de estruturao de uma rede. Em relao estruturao, dois aspectos podem ser abordados: a fsica e a lgica. Para isso sero discutidas as vrias topologias de uma rede. O conceito de topologia, at h pouco relacionado apenas com a estruturao fsica da rede, agora abrange, tambm, a forma como a mesma definida logicamente. Existem vrias classificaes para as diferentes redes de computadores. Dentre elas, duas dimenses se destacam mais: a escala e a tecnologia de transmisso. Basicamente h dois tipos de tecnologia de transmisso: as redes em difuso e as redes pontoa-ponto. Nas redes em difuso h apenas um canal de transmisso compartilhado por todas as mquinas. Uma mensagem enviada por uma estao ouvida por todas as outras estaes. Nas redes ponto-aponto existem vrias conexes entre pares individuais de estaes. Estes dois tipos de ligao podem ser visualizados na figura 1.1 a seguir. computador cabo

(a) (b) Figura 1.1 Rede em difuso (a) e rede ponto-a-ponto (b).

1.4.1 AS DIFERENTES TOPOLOGIASUm ponto importante no que diz respeito concepo de uma rede de comunicao a definio da maneira como as diferentes estaes sero interligadas. Estes arranjos so denominados topologia da rede. Estas topologias esto relacionadas a forma como o canal de comunicao ser alocado, ou seja, atravs de canais ponto-a-ponto ou canais de difuso. Nas topologias que utilizam canais ponto-a-ponto, a rede composta de diversas linhas de comunicao, cada linha sendo associada conexo de um par de estaes. Neste caso, se duas estaes precisam comunicar-se e no h entre elas um cabo comum, a comunicao ser feita de modo indireto, atravs de uma (ou mais) estaes. Assim, quando uma mensagem enviada de uma estao a outra de forma indireta, ela ser recebida integralmente por cada estao e, uma vez que a linha de sada da estao considerada est livre, retransmitida estao seguinte. Esta poltica de transmisso tambm conhecida por store and forward. A maior parte das redes de longa distncia so do tipo ponto-a-ponto. As redes ponto-a-ponto podem ser concebidas segundo diferentes topologias. As redes locais ponto-a-ponto so caracterizadas normalmente por uma topologia simtrica; as redes de longa distncia apresentam geralmente topologias assimtricas. A figura 1.2 apresenta as diferentes topologias possveis nas redes ponto-a-ponto.

Arquiteturas de Redes

9

Figura 1.2 - Topologias ponto-a-ponto: estrela, anel, malha regular, malha irregular e rvore. Uma outra classe de redes, as redes de difuso, so caracterizadas pelo compartilhamento, por todas as estaes, de um nico canal de comunicao. Neste caso, as mensagens enviadas por uma estao so recebidas por todas as demais conectadas ao suporte de transmisso, sendo que um campo de endereo contido na mensagem permite identificar o destinatrio. Na recepo, a mquina verifica se o contedo do campo de endereo corresponde ao seu e, em caso negativo, a mensagem ignorada. As redes locais pertencem geralmente a esta classe de redes. Nas redes de difuso existe a possibilidade de uma estao enviar uma mesma mensagem s demais estaes da rede, utilizando um cdigo de endereo especial. Neste caso, todas as estaes vo tratar as mensagens recebidas endereadas para este endereo comum. Este modo de operao denominado broadcasting. Alguns sistemas de difuso tambm suportam transmisso para um subconjunto de estaes, conhecido como multicasting. A figura 1.3 apresenta algumas topologias possveis no caso das redes em difuso. Numa rede em barramento, uma nica mquina pode estar transmitindo a cada instante. As demais estaes devem esperar para transmisso caso o barramento esteja ocupado. Para isto, um mecanismo de arbitragem deve ser implementado para resolver possveis problemas de conflito (quando duas ou mais estaes querem enviar uma mensagem), este mecanismo pode ser centralizado ou distribudo.

Figura 1.3 - Topologias das redes de difuso: barramento, satlite e anel No caso das redes de satlite (ou rdio), cada estao dotada de uma antena atravs da qual pode enviar e receber mensagens. Cada estao pode escutar o satlite e, em alguns casos, receber diretamente as mensagens enviadas pelas demais estaes. No caso do anel, cada bit transmitido propagado de maneira independente em relao mensagem ao qual ele pertence. Em geral, cada bit realiza uma volta completa no anel durante o tempo necessrio para a emisso de um certo nmero de bits, antes mesmo da emisso completa da mensagem. Tambm nesta topologia, necessria a implementao de um mecanismo de acesso ao suporte de comunicao. As redes de difuso podem ainda considerar duas classes de mecanismos de acesso ao suporte de comunicao: estticas ou dinmicas. Um exemplo do primeiro caso a definio de intervalos de tempo durante os quais cada estao tem a posse do canal de comunicao, permitindo ento que esta emita a Arquiteturas de Redes 10

mensagem de maneira cclica. No entanto, esta poltica bastante ineficiente do ponto de vista do envio das mensagens, uma vez que muitas estaes no vo enviar mensagens nos intervalos a elas destinadas. J na outra classe de mecanismos, os dinmicos, o acesso dado s estaes segundo a demanda de envio de mensagens. Nos mecanismos de acesso dinmicos, pode-se ainda considerar dois casos: os mecanismos centralizados, nos quais uma estao central (ou rbitro) a responsvel pela definio do direito de acesso ao suporte de comunicao; os mecanismos distribudos, nos quais cada estao define quando ela vai emitir a mensagem.

1.4.2 TOPOLOGIA FSICA X TOPOLOGIA LGICAA topologia de uma rede ir determinar, em parte, o mtodo de acesso a rede utilizado. Mtodos de acesso so necessrios para regular a utilizao dos meios fsicos compartilhados. A forte tendncia de utilizao de hubs nas instalaes fsicas das redes corresponde, fisicamente, a implantao de uma topologia em estrela. Esta tendncia explicada pela crescente necessidade de melhorar o gerenciamento e a manuteno nessas instalaes. A topologia em estrela apresenta uma baixa confiabilidade porm os avanos da eletrnica j permitem que se construam equipamentos de alta confiabilidade, viabilizando este tipo de topologia. A utilizao de hubs no exige, necessariamente, que as interfaces das estaes com a rede o percebam como uma topologia em estrela. O funcionamento continua a ser como no acesso a um barramento ou a um anel, com os seus respectivos mtodos de acesso. Sendo assim, podemos diferenciar dois tipos de topologias: uma topologia lgica, que aquela observada sob o ponto de vista das interfaces das estaes com a rede (que inclui o mtodo de acesso), e uma topologia fsica, que diz respeito configurao fsica utilizada na instalao da rede. A construo dos hubs teve uma evoluo contnua no sentido de que os mesmos no implementem somente a utilizao do meio compartilhado, mas tambm possibilitem a troca de mensagens entre vrias estaes simultaneamente. Desta forma as estaes podem obter para si taxas efetivas de transmisso bem maiores. Esse tipo de elemento, tambm central, denominado switch. As redes ATM, por exemplo, baseiam-se na presena de switches de grande capacidade de comutao que permitem taxas de transmisso que podem chegar ordem de Gbps (gigabits por segundo).

1.4.3 CATEGORIAS DE REDESAs redes tambm podem ser classificadas por escala. A figura 1.4 mostra uma classificao das vrias redes de computadores em relao a sua abrangncia. Basicamente elas podem ser classificadas em trs grupos: LAN Local Area Network ou Rede Local, MAN Metropolitan Area Network ou Rede Metropolitana e WAN Wide Area Network ou Rede Geograficamente Distribuda (ou de Longa Distncia).Distncia entre ns Abrangncia

at 10 m at 100 m at 1 km at 10 km at 100 km at 1.000 km at 10.000 km

Sala Edifcio Campus MAN Cidade Pas Continente Planeta WAN LAN

Figura 1.4- Classificao de redes quanto a distncia fsica entre os ns.

Arquiteturas de Redes

11

A diferena na dimenso das redes introduz diferentes problemas e necessidades. No que diz respeito ao exemplo de microcomputadores, a rede classificada como sendo uma Rede Local, caracterizada particularmente por uma pequena extenso, limitando-se normalmente interconexo de computadores localizados numa mesma sala, num mesmo prdio ou num campus. Este tipo de rede invariavelmente proprietria. Uma alternativa a este tipo de rede, muito utilizada atualmente so as Redes Metropolitanas, que so utilizadas quando as distncias entre os mdulos processadores aumenta consideravelmente, atingindo distncias metropolitanas. Elas podem ser pblicas ou privadas. No exemplo de empresa possuindo diversas fbricas, a rede utilizada permitiria conectar computadores localizados em diferentes prdios numa mesma cidade ou mesmo em cidades distantes de uma dada regio. Esta caracteriza uma Rede de Longa Distncia ou Rede Geograficamente Distribuda. Esta classificao no , de maneira alguma, fechada. Por exemplo, uma rede local pode alcanar dimenses metropolitanas e ainda assim ser considerada local. Nos prximos captulos sero estudados mais detalhadamente cada um destes tipos de redes.

1.5

O SOFTWARE DE REDE

No projeto de uma rede muitos problemas precisam ser resolvidos e podem existir vrias solues para os mesmos. Primeiramente definiremos alguns problemas mais comuns encontrados no projeto de um software de rede. Em seguida apresentaremos uma definio inicial sobre a forma como os softwares de rede so estruturados, atravs de um exemplo.

1.5.1 SERVIOS NECESSRIOS COMUNICAOComo visto nas sees precedentes, as redes de computadores podem se caracterizar por diferentes configuraes e topologias. Apesar da diversidade no que diz respeito a este aspecto, todas as possveis configuraes tm um objetivo comum a transferncia de dados. O problema que se coloca ento relacionado especificao dos procedimentos e mecanismos que devem ser implementados para viabilizar o funcionamento da rede. A resoluo deste problema baseada principalmente no conhecimento prvio das funes que devem ser suportadas pela rede, assim como do ambiente no qual ela vai ser inserida. Estes aspectos sero mostrados aqui atravs de alguns exemplos. O primeiro exemplo baseado nas polticas de time-sharing j descrita anteriormente. Vamos considerar o caso em que temos apenas um terminal conectado a um computador, como mostrado na figura 1.5.

Figura 1.5 - Terminal conectado a um computador central Considerando que um usurio vai servir-se do terminal para processar informaes no computador central, para que isto seja possvel, necessrio que o computador central seja dotado do programa necessrio ao tratamento daquelas informaes. Em caso positivo, o terminal e o computador devem estabelecer um dilogo que permita o bom desenrolar das operaes de tratamento das informaes. Este dilogo dever permitir, por exemplo, que o usurio comunique sua inteno (de Arquiteturas de Redes 12

processar as informaes!) ao computador e, em seguida, envie as informaes a serem processadas. Uma vez efetuado o tratamento, o computador deve retornar os resultados ao terminal. Esta seqncia de operaes, apesar de aparentemente elementar, requer a satisfao de uma srie de condies. Vamos supor, por exemplo, que o computador central e o terminal tenham sido fabricados de forma totalmente independente um do outro, o que pode ter resultado numa diferente filosofia no que diz respeito ao formato das informaes. Um primeiro obstculo a ser vencido aquele da linguagem; o terminal deveria ento se adaptar linguagem do computador central. Resolvido o problema de compreenso, um outro problema encontrado diz respeito aos possveis erros de transmisso que podem ocorrer durante a comunicao, uma vez que as linhas de comunicao esto sujeitas a rudos e outros fenmenos podendo provocar perdas de informao. Uma outra questo pode ainda estar relacionada velocidade de funcionamento dos dois elementos. Se considerarmos que o computador central opera numa velocidade superior do terminal, por exemplo, o terminal corre o risco de ser bombardeado pelo fluxo de dados vindo do computador, o que vai exigir ento o estabelecimento de um mecanismo de controle do fluxo de informaes. Resumindo, a rede de comunicao deve, alm de suprir as funes de transmisso e tratamento de informaes, oferecer servios de adaptao, deteco e correo de erros de transmisso e controle de fluxo. Vamos considerar agora que, ao invs de um nico terminal, vamos conectar um maior nmero deles ao computador central, como mostra a figura 1.6. Aqui, cada terminal pode, a princpio e a qualquer momento, tomar a iniciativa da troca de dados com o computador. Isto significa que cada terminal ter de ser caracterizado por um endereo especfico, cuja utilizao correta vai permitir evitar que o computador central envie as informaes aos terminais de maneira indevida.

Figura 1.6 - Configurao com vrios terminais Por outro lado, se o nmero de terminais conectados ao computador central tornar-se relativamente elevado (a fim de permitir a utilizao mxima da capacidade de processamento deste), ser necessrio organizar as interaes entre terminais e o computador central em sesses, de tal forma que, ao trmino de uma sesso entre um terminal e o computador central, este ter liberados determinados elementos (envolvidos naquela sesso) que podero atender outros terminais em estado de espera. Ainda, considerando que nem todos os terminais vo efetuar o mesmo tipo de tratamento de forma simultnea, dever-se-, ento, especificar a aplicao associada. Assim, todas as necessidades vistas neste exemplo devero ser associadas s funcionalidades definidas no exemplo anterior. Mas os problemas no terminam por aqui... ( impossvel, no momento, prever onde terminaro os problemas!) Vamos considerar ainda um exemplo, mais particularmente o de uma rede contendo diversos computadores, terminais, e outros perifricos, cada um destes elementos constituindo um n da rede. A figura 1.7 mostra uma situao deste tipo. Neste exemplo, os dois elementos envolvidos numa comunicao no sero mais necessariamente adjacentes; alm disso, podem existir diversas maneiras de conect-los, o que vai corresponder a diferentes caminhos. No exemplo mostrado na figura, os ns 1 e 5 podem ser conectados por, pelo menos, uns 10 caminhos e a escolha de qual caminho utilizar dever ento ser realizada, o que no uma tarefa to simples quanto possa parecer.

Arquiteturas de Redes

13

Ainda, se a rede da classe ponto-a-ponto (ou comutao de pacotes), o sistema de comunicao deve assegurar a correta transmisso da informao de um ponto a outro. Particularmente, ser necessrio garantir que as mensagens enviadas sero recuperadas e reconstitudas na ordem correta no ponto de chegada. Um requisito tambm importante o aspecto da codificao das mensagens de modo a evitar o acesso a informaes de parte de usurios alheios ao sistema considerado. A esta funo pode-se, eventualmente, acrescentar tcnicas de compresso de dados, necessrias se a informao enviada demasiadamente redundante e o custo da comunicao alto.

4 3

1

5 2

Figura 1.7 - Configurao com vrios computadores e terminais.

1.5.2 A ORGANIZAO DE FUNESUma vez listadas as diferentes necessidades relacionadas a uma rede de comunicao, a questo que se coloca a da viabilidade de um projeto de rede, dada a quantidade de funes a implementar. Uma outra questo a do ordenamento das funes. O controle de fluxo deve ser realizado antes ou depois da correo de erros? Uma vez resolvida esta questo, que elementos da rede sero responsveis da implementao destas funes? As solues adotadas so dependentes do suporte de transmisso utilizado? Elas continuam vlidas no caso de expanso da rede? Estas questes representam, de certo modo, a necessidade de levar em conta um certo ordenamento no que diz respeito adoo das solues para cada problema. Uma ilustrao tpica do problema aquela da comunicao entre duas empresas. Vamos supor que o Diretor de uma Empresa A quer comunicar-se com o Diretor de uma Empresa B. Ele convoca a sua Secretria Administrativa e solicita, informalmente, que esta construa um texto relativo ao assunto a ser tratado. A Secretria Administrativa elabora o documento e o entrega ao Office Boy que vai envelop-lo e encaminh-lo ao Chefe do Setor de Malote. Este ltimo encaminha o documento ao Servio Postal para conduo Empresa B. Considerando que a Empresa B apresenta uma estrutura similar Empresa A, como ilustrado na figura 1.8, os mesmos elementos atuam, cada um em suas funes, para fazer com que a correspondncia chegue s mos do Diretor da Empresa. Este processo caracteriza, na verdade, a filosofia de concepo das redes de comunicao, que baseada em dois conceitos fundamentais: o da hierarquia e o da descentralizao, cuja conjuno vai permitir responder questo de ordenao na adoo das solues. Segundo esta filosofia, uma tarefa global vista como sendo decomposta a medida que se vai descendo na hierarquia e que a nica interao fsica se faz no seu nvel mais baixo.

Arquiteturas de Redes

14

Empresa A Diretor Empresa

Empresa B Diretor Empresa

Secretria Administrativa

Secretria Administrativa

Office Boy

Office Boy

Chefe Malote

Chefe Malote

Servio Postal

Figura 1.8 - Filosofia de concepo das redes, ilustrada por um processo de relaes entre empresas. Podemos considerar que a comunicao entre dois ns de uma rede uma tarefa global que afeta um sistema complexo e, consequentemente, sujeita aplicao dos princpios de hierarquizao e de descentralizao. As vantagens da adoo destes princpios so, fundamentalmente: facilidade de estudo e de implementao da rede a partir de elementos de base existentes, o que permite a reduo dos custos de instalao; simplificao de sua operao em funo da definio de regras formais; garantia de confiabilidade de um sistema que seja aceitvel, particularmente graas ao encapsulamento das funes o que permite limitar a propagao de erros e facilitar a manuteno; garantia, pela modularidade, de um grau satisfatrio de evolutividade e de extensibilidade da rede; otimizao de desempenho. Todos estes aspectos nos conduzem a conceber uma arquitetura de comunicao como sendo uma organizao de software e hardware estruturada em nveis ou camadas.

1.5.3 A ESTRUTURAO EM CAMADASOs conceitos de hierarquia e descentralizao podem ser empregados de diferentes formas, cada um podendo implicar num tipo de rede particular. Em funo desta provvel multiplicidade, surgiu ento a necessidade de uma normalizao permitindo a conexo de diferentes classes de hardware. Para possibilitar a normalizao, foi necessrio estabelecer um modelo terico capaz de representar as relaes entre as diferentes tarefas implementadas nos diferentes nveis hierrquicos. A possibilidade de interconexo de um nmero qualquer de sistemas, ou seja, de conjuntos autnomos podendo efetuar tarefas de tratamento ou de transmisso de informao, era uma caracterstica essencial para o modelo a ser estabelecido. A figura 1.9 ilustra uma arquitetura hierarquizada em 4 camadas que permitir introduzir o conjunto de conceitos relacionados ao modelo estabelecido. O objetivo de cada camada o oferecimento de um tipo de servio a sua camada superior de forma a evitar que esta necessite conhecer certos aspectos de como este servio realizado. A camada n assume que a comunicao com a camada n de uma outra mquina existe, embora no seja direta. Para que esta comunicao exista, ela se serve de um conjunto de convenes e regras que vo permitir gerenciar esta comunicao. A este conjunto de regras e convenes, d-se o nome de protocolo. Como se pode ver na figura, no existe meio de comunicao

Arquiteturas de Redes

15

direto entre as diferentes camadas (apenas o meio de transmisso na camada 1), o que significa que no existe transferncia direta de dados entre a camada n de uma mquina camada n de outra mquina. Na realidade, cada camada transfere os dados camada imediatamente inferior at a camada mais baixa; o dado ento transmitido outra mquina atravs do meio de transmisso. A comunicao entre as camadas vista ento como uma comunicao virtual e representada, na figura 1.9, pelas linhas ligando cada par de camadas.SISTEMA AProtocolo da Camada 4

SISTEMA BCamada 4Interface 3/4 Protocolo da Camada 3

Camada 4Interface 3/4

Camada 3Interface 2/3

Camada 3Interface 2/3 Protocolo da Camada 2

Camada 2Interface 1/2 Protocolo da Camada 1

Camada 2Interface 1/2

Camada 1 Meio de Comunicao

Camada 1

Figura 1.9 - Modelo hierarquizado em 4 camadas. Cada camada comunica-se com as camadas adjacentes (acima ou abaixo) atravs de uma interface que define as informaes que podem ser trocadas e os servios que a camada inferior oferece camada superior. Ao conjunto das camadas compondo uma rede d-se o nome de arquitetura da rede, e as especificaes da arquitetura devem conter informaes suficientes para permitir o correto desenvolvimento da rede, tanto do ponto de vista do software quanto do hardware. Mais detalhes relacionados ao projeto em camadas ou nveis e a nomenclatura utilizada para interfaces, servios e protocolos de comunicao sero abordados no captulo 2.

Arquiteturas de Redes

16

Captulo 2 - Conceitos Bsicos do Software de Rede

2.1

INTRODUO

Nas primeiras redes de computadores os aspectos relacionados ao hardware foram colocados como prioridade e os aspectos de software em segundo plano. No entanto logo foi percebida a fundamental importncia dos mecanismos de software de uma rede, e, em funo disto, os softwares de rede so altamente estruturados. Os conceitos relacionados a esta estruturao so de vital importncia para a compreenso de todos os aspectos relacionados arquitetura de redes como um todo.

2.2

HIERARQUIA DE PROTOCOLOS

Para reduzir a complexidade do projeto, a maioria das redes foi organizada como uma srie de nveis ou camadas, que so colocadas uma sobre a outra. O nmero, o nome, o contedo e a funo de cada camada difere de uma rede para outra. Em todas as redes, no entanto, o objetivo de cada camada oferecer determinados servios para as camadas superiores, ocultando detalhes da implementao desses recursos. Conforme j introduzido anteriormente, a figura 2.1 ilustra a arquitetura hierarquizada em 7 camadas que permitir introduzir o conjunto de conceitos relacionados a uma arquitetura multicamadas. Conforme j mencionado, o objetivo de cada camada o oferecimento de um determinado servio s camadas superiores, utilizando-se, tambm dos servios oferecidos pelas camadas inferiores, de forma a evitar que estas necessitem conhecer certos aspectos da implementao destes servios. A camada n assume a comunicao com a camada n de uma outra mquina. Para faze-lo, ela se serve de um conjunto de convenes e regras que vo permitir gerir esta comunicao. A este conjunto de regras e convenes, d-se o nome de protocolo da camada n, ou, simplesmente, protocolo n. Basicamente, um protocolo um conjunto de regras sobre o modo como se dar a comunicao entre as partes envolvidas. As entidades representando camadas correspondentes em diferentes sistemas so denominadas processos pares, ou entidades pares. Os processos pares vo se comunicar atravs dos protocolos. Como se pode ver na figura 2.1, no existe meio de comunicao fsico entre as diferentes camadas o que significa que no existe transferncia direta de dados entre a camada n de uma mquina camada n de outra mquina. Cada camada transfere os dados camada imediatamente inferior at a camada mais baixa; o dado ento transmitido outra mquina atravs do meio de transmisso. A comunicao entre as camadas vista como uma comunicao virtual e representada, na figura 2.1, pelas linhas horizontais entre as camadas. Cada camada comunica-se com as camadas adjacentes (acima e abaixo) atravs de uma interface, que define as operaes elementares e os servios que a camada inferior oferece camada considerada. No momento da definio do nmero de camadas que vai compor uma rede e do papel que cada uma delas deve cumprir, uma tarefa importante ser a definio completa das interfaces entre as camadas e isto vai implicar que na definio do servio oferecido por cada camada. Uma vantagem da correta definio das interfaces a facilidade da introduo de modificaes nas implementaes das diferentes camadas; os mecanismos podem ser implementados de forma diferente, desde que as interfaces anteriormente definidas sejam respeitadas.

Arquiteturas de Redes

17

SISTEMA AProtocolo da Camada 7

SISTEMA BCamada 7Protocolo da Camada 6 Interface 6/7

Camada 7Interface 6/7

Camada 6Interface 5/6 Protocolo da Camada 5

Camada 6Interface 5/6

Camada 5Interface 4/5 Protocolo da Camada 4

Camada 5Interface 4/5

Camada 4Interface 3/4 Protocolo da Camada 3

Camada 4Interface 3/4

Camada 3Interface 2/3 Protocolo da Camada 2

Camada 3Interface 2/3

Camada 2Interface 1/2 Protocolo da Camada 1

Camada 2Interface 1/2

Camada 1 Meio de Transmisso

Camada 1

Figura 2.1 - Modelo hierarquizado em 7 camadas. Ao conjunto das camadas compondo uma rede d-se o nome de arquitetura da rede, e as especificaes da arquitetura devem conter informaes suficientes para permitir o correto desenvolvimento da rede, tanto do ponto de vista do software quanto do hardware. Por outro lado, os detalhes de implementao dos mecanismos em cada camada, assim como as especificaes detalhadas das interfaces no fazem parte da definio da arquitetura da rede. A figura 2.2 permite ilustrar o processo da comunicao no contexto de uma arquitetura multicamadas. O processo da camada 7 gera uma mensagem M, que ser transmitida desta camada inferior segundo o que estiver definido pela interface das camadas 6/7. Considera-se que esta transmisso introduz algumas modificaes na mensagem (por exemplo, uma compresso de dados), o que justifica uma nova representao desta por m. Esta mensagem , por sua vez, transmitida camada 5, atravs da interface das camadas 5/6. No exemplo considerado na figura, a mensagem no sofre modificaes, mas esta camada efetua o controle de fluxo. A camada 4 responsvel pela decomposio da mensagem a fim de respeitar as restries de tamanho que podem ser impostas pelas camadas inferiores. Assim, m decomposta em M1 e M2. Para isto, inserido tambm na mensagem (ou nas partes da mensagem) um cabealho H4 contendo uma informao de controle, como, por exemplo, um nmero de ordem que vai permitir, posteriormente na camada 4 do sistema destinatrio, a reconstruo da mensagem a partir das partes recebidas. Outras informaes podem ainda estar contidas neste cabealho, como, por exemplo, o tamanho da mensagem ou o instante de envio. Na camada 3, feita a escolha das linhas de sada e um novo cabealho, H3, introduzido s mensagens. Na camada 2, alm de um cabealho, H2, introduzido tambm um sufixo, T2, contendo informaes especficos a esta camada, por exemplo, controle de erro. A mensagem finalmente entregue camada 1 para emisso via meio fsico. No sistema destinatrio, o processo inverso acontece, sendo que as mensagens vo subindo, de camada em camada, e os cabealhos retirados nas camadas respectivas, de modo a evitar que estes sejam transferidos s camadas que no lhes dizem respeito. Um aspecto importante mostrado na figura 2.2 o da comunicao virtual ocorrendo entre as diferentes camadas pares. As camadas em cada nvel possuem uma viso da comunicao horizontal, mesmo se as mensagens so na realidade transmitidas s camadas inferiores pertencentes ao mesmo sistema.

Arquiteturas de Redes

18

TRANSMISSOR

Protocolo

RECEPTOR

Mda Camada 7 Protocolo

M

mda Camada 6 Protocolo

m

mda Camada 5 Protocolo

m

H4 M1

H4 M2da Camada 4 Protocolo

H4 M1

H4 M2

H3 H4 M1

H3 H4 M2da Camada 3 Protocolo

H3 H4 M1

H3 H4 M2

H2 H3 H4 M1

H2 H3 H4 M2da Camada 2

H2 H3 H4 M1

H2 H3 H4 M2

Figura 2.2 - Ilustrao da comunicao virtual numa arquitetura de rede.

2.3

DIFERENAS ENTRE SERVIO E PROTOCOLO

Embora sejam freqentemente confundidos, servio e protocolo so dois conceitos distintos. O importante nesta distino de poder estabelecer a relao entre os dois conceitos. O SERVIO corresponde a um conjunto de operaes que uma camada capaz de oferecer camada imediatamente superior. Ele define o que uma camada capaz de executar sem se preocupar com a maneira pela qual as operaes sero executadas. O servio est intimamente relacionado com as interfaces entre duas camadas, sendo a inferior a fornecedora do servio e a superior a usuria deste. O PROTOCOLO define um conjunto de regras que permitem especificar aspectos da realizao do servio, particularmente, o significado dos quadros, pacotes ou mensagens trocadas entre as entidades pares de uma dada camada. A nvel de uma determinada camada, o protocolo pode ser mudado sem problemas, desde que as interfaces com a camada superior e inferior no sejam alteradas, ou seja, que elas continuem a ter a mesma visibilidade no que diz respeito aos servios realizados pela camada que foi alterada; isto corresponde, na verdade, a um certo desacoplamento entre os conceitos de servio e protocolo.

2.4

QUESTES DE PROJETO RELACIONADAS S CAMADAS

Algumas questes de projeto fundamentais das redes de computadores esto presentes em diversas camadas. A seguir sero discutidas as mais importantes. Todas as camadas precisam de um mecanismo para identificar os transmissores e receptores. Como em geral uma rede tem muitos computadores, e alguns deles tm vrios processos, necessrio um meio para que um processo de uma mquina especifique com quem ele deseja se comunicar. Como pode haver vrios destinos, h a necessidade de se criar uma forma de endereamento para definir o destino especfico. Outra preocupao recai sobre as direes do trfego. Em alguns sistemas, os dados so transferidos em apenas uma direo. Em outros, eles podem ser transferidos em ambas as direes, mas no simultaneamente. Tambm possvel transmitir em ambas as direes simultaneamente. O protocolo tambm deve determinar o nmero de canais lgicos correspondentes conexo e quais so as suas Arquiteturas de Redes 19

prioridades. Muitas redes oferecem pelo menos dois canais lgicos por conexo, um para dados normais e outro para dados urgentes. O controle de erro uma questo importante, pois os circuitos de comunicao fsica podem no ser perfeitos. Muitos cdigos de deteco e correo de erros so conhecidos e as partes envolvidas em uma conexo devem chegar a um consenso quanto ao que deve ser usado. Alm disso, o receptor deve ter alguma forma de informar ao emissor as mensagens que foram recebidas corretamente e as que no foram. Nem todos os canais de comunicao preservam a ordem das mensagens enviadas por eles. Para lidar com uma possvel perda de seqncia, o protocolo deve fazer uma proviso explcita para que o receptor possa remontar adequadamente os fragmentos recebidos. Uma soluo bvia numerar os fragmentos, mas isso ainda deixa aberta a questo do que deve ser feito com os fragmentos que chegam fora de ordem ou, pior ainda, o que fazer quando algum ou alguns se perdem. Um problema que deve ser resolvido em diversas camadas a falta de habilidade de todos os processos para aceitarem arbitrariamente mensagens longas. Esta propriedade nos leva ao uso de mecanismos para desmontar, transmitir e remontar mensagens. Uma questo o que fazer quando estas unidades se tornam to pequenas que o envio de cada uma em separado se torna ineficiente. Nesse caso a soluo reunir as pequenas mensagens com um destino comum em uma grande mensagem e desmembr-la na outra extremidade. Uma outra questo que afeta todas as camadas diz respeito velocidade dos dados, particularmente quando o emissor mais rpido que o receptor. Vrias solues foram adotadas e sero discutidas posteriormente. Algumas delas trabalham com a possibilidade do receptor determinar dinamicamente sua situao atual. Outras limitam o emissor a uma taxa de transmisso predeterminada. Quando for inconveniente, ou algumas vezes caro, configurar uma conexo para cada par de processos de comunicao, a camada inferior pode usar a mesma conexo para diversas conversaes no relacionadas. Desde que seja feita de modo transparente, a multiplexao e a demultiplexao de conexes podem ser executadas por qualquer camada. Quando houver vrios caminhos entre a origem e o destino, um deles deve ser escolhido. Algumas vezes essa deciso deve ser dividida em duas ou mais camadas. Para enviar dados de Londres para Roma, por exemplo, devem ser tomadas duas decises: uma de alto nvel, decidindo sobre o trajeto a ser escolhido (via Frana ou Alemanha, com base nas respectivas leis de privacidade) e uma de baixo nvel, escolhendo sobre quais dos circuitos fsicos disponveis os dados sero transmitidos (com base na carga de trfego atual).

2.5

INTERFACES E SERVIOS

Conforme j mencionado, a funo de cada camada oferecer servios para a camada acima dela. Os elementos ativos de uma camada, ou seja, os processos que a implementam so chamados entidades. Estas podem ser entidades de software ou de hardware. s entidades localizadas em diferentes sistemas, mas associadas a um mesmo nvel (ou camada), d-se o nome de entidades pares. As entidades recebem tambm uma denominao complementar em funo da camada qual elas esto relacionadas por exemplo, entidade de aplicao, entidade de transporte, entidade de enlace, entre outras. As entidades de uma camada N (ou entidades N) implementam um servio que utilizado pela camada N+1. Assim, a camada N dita ser um fornecedor de servio e a camada N+1 denominada usuria de servio. Por outro lado, a camada N poder utilizar os servios da camada imediatamente inferior, a camada N-1, para oferecer os servios camada superior. Ela pode ainda oferecer diferentes categorias (ou classes) de servios: servios mais eficientes e mais caros ou servios lentos e econmicos. Os servios oferecidos por uma camada so acessveis em pontos de acesso aos servios, ou SAP (Service Access Point). Os SAPs da camada N so os lugares onde a camada N+1 poder ter acesso aos servios oferecidos, cada SAP sendo identificado por um endereo nico. Por exemplo, os SAP de uma rede telefnica so as tomadas s quais podem ser conectados os aparelhos telefnicos e seus endereos so os nmeros de telefone associados tomada considerada. Para que duas camadas possam trocar informaes, existe uma srie de regras a serem respeitadas, definidas pela interface. Atravs de uma interface, a camada N+1 envia uma unidade de dados de interface, ou IDU (Interface Data Unit) entidade da camada N pelo SAP. A IDU composta Arquiteturas de Redes 20

de uma parte denominada unidade de dados de servio, ou SDU (Service Data Unit) e de outras informaes de controle. A SDU a informao transmitida via rede entidade par e, em seguida, camada N+1. A informao de controle utilizada para auxiliar a gesto da camada inferior em seu trabalho (por exemplo, o nmero de bytes compondo a SDU correspondente). Para transmitir uma SDU, a entidade da camada N pode fragment-la em diversas partes, e cada parte vai receber um cabealho, sendo enviada como uma unidade de dados de protocolo, ou PDU (Protocol Data Unit). Os cabealhos de PDU so utilizados pelas entidades pares para o transporte do protocolo. Elas identificam a PDU contendo os dados e aquelas contendo informaes de controle (nmeros de seqncia, contagens, etc). A figura 2.3 ilustra o processo descrito. As PDUs recebem normalmente uma denominao segundo a camada qual esto associadas. Por exemplo, as PDUs de aplicao so ditas APDU, assim como as de apresentao so as PPDU, as de sesso SPDU, e assim por diante.

IDU

Camada N+1

ICI

SDU

Interface

SAPCabealho

Camada N

ICI

SDU

SDU

N-PDU

Figura 2.3 - Ilustrao dos diferentes conceitos associados a interface entre camadas.

2.6

SERVIOS ORIENTADOS CONEXO E SEM CONEXO

As camadas de uma arquitetura de rede podem oferecer diferentes classes de servios s camadas superiores. Estes servios podem ser orientados a conexo ou no orientados a conexo (tambm chamada sem conexo). No que diz respeito ao servios orientados conexo, podemos citar como exemplo tpico o sistema telefnico. Para que seja possvel falar com algum no telefone necessrio, inicialmente, tirar o fone do gancho, digitar (ou discar) um nmero, esperar que o interlocutor atenda, falar com a pessoa que precisamos e, finalmente, desligar. Este o princpio de base de um servio orientado conexo: estabelecimento da conexo, utilizao do servio (ou enviar mensagem) e trmino da conexo. O aspecto principal da conexo o fato de que ela funciona como uma espcie de canal virtual atravs do qual iro transitar as mensagens envolvidas na realizao do servio. J os servios sem conexo so estruturados como o sistema postal, onde cada mensagem (ou carta, se consideramos o exemplo citado) contm o endereo do destinatrio e encaminhada no sistema, independente de outras. O princpio bsico ento apenas: enviar mensagem. Normalmente, se duas mensagens so enviadas a um mesmo destinatrio, a primeira a ser enviada deve ser a primeira a ser recebida. Por outro lado, neste modo de servio pode ocorrer que uma mensagem seja atrasada fazendo com que a segunda mensagem seja recebida primeiro. J nos servios orientados conexo, isto jamais poder acontecer. Cada servio caracterizado por uma qualidade de servio. Tendo em vista o parmetro qualidade, os servios podem ser divididos em confivel e no-confivel. Um servio dito confivel aquele em que os dados no podem ser jamais perdidos, ou melhor, jamais podem deixar de realizar o Arquiteturas de Redes 21

servio adequadamente e, por vezes, algum mecanismo de recuperao em caso de falha deve ser utilizado. Servios no confiveis so aqueles onde, eventualmente, dados podem ser perdidos e no recuperados pela camada em questo. Normalmente, a implementao de servios confiveis feita atravs da definio de mensagens de reconhecimento enviadas pelo receptor, para cada mensagem recebida do emissor. Este processo, embora extremamente benfico, introduz uma lentido na transferncia de dados, o que significa que nem sempre ele desejvel num sistema. Os servios confiveis orientados conexo apresentam duas variantes. No primeiro caso, as fronteiras das mensagens so sempre preservadas. Se duas mensagens de 1 Kbytes so enviadas, elas chegaro sob a forma de duas mensagens de 1 Kbytes e nunca como uma nica mensagem de 2 Kbytes. J na segunda variante, se uma mensagem de 2 Kbytes recebida, no h como identificar se ela foi enviada realmente como uma nica mensagem de 2 Kbytes, como duas mensagens de 1 Kbytes, ou ainda como 2048 mensagens de 1 byte. Porm em algumas aplicaes, necessrio resguardar as fronteiras entre as mensagens enviadas; por exemplo, no caso do envio de um documento a uma impressora interessante poder preservar as fronteiras entre as pginas. No que diz respeito aos dois tipos de servios (orientados conexo e sem conexo), nem todas as aplicaes requerem a utilizao de conexo. Um exemplo disto pode ser o de uma aplicao de correio eletrnico. Pode-se imaginar uma aplicao de correio em que o usurio no se interesse no estabelecimento de conexo e tampouco a uma confiabilidade de 100% no que diz respeito chegada das mensagens. Os servios sem conexo e no-confiveis so denominados servios de datagrama. Existem casos, porm, em que, apesar de no necessitar o estabelecimento de conexo, a confiabilidade essencial. O servio utilizado neste caso dito de datagrama com reconhecimento. O servio de pedido-resposta j um outro tipo de servio no qual o emissor envia um datagrama contendo um servio e o receptor envia um outro contendo a resposta a este pedido. A tabela a seguir ilustra os diferentes servios com e sem conexo, com exemplos de aplicao destes servios. SERVIOS Transferncia confivel de mensagens Transferncia confivel de bytes Transferncia no confivel Datagrama no confivel Datagrama confivel Pedido-Resposta MODALIDADES com conexo com conexo com conexo sem conexo sem conexo sem conexo EXEMPLO seqncia de pginas login remoto voz digitalizada correio eletrnico correio eletrnico registrado consulta a bases de dados

2.7

PRIMITIVAS DE SERVIO

Um servio definido formalmente por um conjunto de primitivas (ou operaes) disponveis a um usurio ou a outras entidades para o acesso quele servio. Estas primitivas permitem indicar a ao a ser executada pelo servio ou ainda um pedido de informao sobre uma ao executada previamente. As primitivas de servio so divididas em quatro classes: pedido (request), indicao (indication), resposta (response) e confirmao (confirm). A tabela a seguir mostra o significado de cada uma destas primitivas no que diz respeito execuo de um servio.

PRIMITIVA request indication response confirm

SIGNIFICADO Pedido enviado por uma entidade que solicita um servio Atravs dela, a entidade par informada de uma solicitao de servio A entidade par responde ao pedido de servio A entidade solicitante informada do resultado do servio

Arquiteturas de Redes

22

Uma analogia com o sistema telefnico pode ser de grande utilidade para que se entenda a utilizao dessas primitivas. Nesse caso considere os procedimentos necessrios para voc telefonar tia Nena e convid-la para tomar um ch em sua casa: AO Voc disca o nmero do telefone da casa de sua tia. O telefone dela toca. Ela tira o telefone do gancho. Voc ouve o al dela. Voc a convida para o ch Ela ouve o convite Ela diz que ter o maior prazer em ir a sua casa. Voc ouve a aceitao Voc coloca o telefone no gancho Ela ouve voc colocar o telefone no gancho e faz o mesmo. PRIMITIVA CONNECT.request CONNECT.indication CONNECT.response CONNECT.confirm. DATA.request DATA.indication DATA.request DATA.indication DISCONNECT.request DISCONNECT.indication

1 2 3 4 5 6 7 8 9 10

A figura 2.4 mostra essa mesma seqncia de procedimentos como uma srie de primitivas de servio, inclusive a confirmao final de encerramento de conexo. Cada procedimento envolve a interao entre duas camadas de um dos computadores. Cada request ou response provoca logo em seguida um indication ou confirm do outro lado.

Camada N+1 Camada N

1 4 1 2 3 3 2 4

5 8 5 6 7 7 6 8

9 Voc 9 1 Tempo Tia Nena

Camada N+1 Camada N

10

Figura 2.4 Mapeamento das primitivas do convite para tomar ch. Os nmeros prximos extremidade das setas fazem referncia s primitivas de servio utilizadas no exemplo anterior. Vamos agora considerar o exemplo de utilizao das primitivas de servio para o seguinte servio orientado conexo com oito primitivas de servio: CONNECT.request Solicita o estabelecimento de conexo. CONNECT.indication Sinalizao da parte para a qual foi feita a chamada. CONNECT.response Usada pelo receptor da chamada para aceit-la (ou rejeit-la). CONNECT.confirm Permite que a origem da chamada saiba que ela foi aceita. DATA.request Solicita o envio de dados. DATA.indication Sinal de chegada de novos dados. DISCONNECT.request Solicita o encerramento de uma conexo. DISCONNECT.indication Sinal do par sobre a solicitao. Para requisitar o estabelecimento de uma conexo, a entidade que quer iniciar o dilogo envia uma primitiva de servio de pedido de abertura de conexo, CONNECT.request que vai se refletir, na entidade destinatria, por uma primitiva de indicao, CONNECT.indication. A entidade que recebeu a indicao vai enviar uma primitiva de resposta, CONNECT.response, para informar se esta aceita ou no a conexo. Finalmente, a entidade emissora vai saber do resultado do seu pedido pela recepo de uma primitiva de servio de confirmao, CONNECT.confirm. Parmetros podem ser associados s primitivas; no caso do servio de conexo, por exemplo, os parmetros podem especificar os seguintes aspectos relacionados conexo desejada: a mquina com a qual se deseja dialogar, o tipo de servio desejado, o tamanho mximo das mensagens, etc... Se a entidade invocada no est de acordo com os parmetros contidos na primitiva de indicao recebida, esta pode

Arquiteturas de Redes

23

fazer uma contra-proposta, atravs dos parmetros da primitiva de resposta, que ser transmitida entidade emissora atravs dos parmetros da primitiva de confirmao. Os servios podem ser de dois tipos: confirmados ou no-confirmados. No caso dos servios confirmados, as quatro classes de primitivas so definidas, ou seja, pedido (request), indicao (indication), resposta (response) e confirmao (confirm). Isto significa que a entidade que requisitou o servio ter sempre uma informao sobre as condies de realizao deste e at se este foi realizado com sucesso ou no. Nos servios no-confirmados, apenas as duas primeiras classes de primitivas so utilizadas, ou seja, pedido (request) e indicao (indication). Neste tipo de servios, a entidade emissora do pedido no receber nenhuma informao sobre as condies de realizao do servio requisitado, nem mesmo se este foi realizado. A tabela a seguir apresenta um conjunto de primitivas associadas a um servio orientado conexo. PRIMITIVA CONNECT.request CONNECT.indication CONNECT.response CONNECT.confirm DATA.request DATA.indication DISCONNECT.request DISCONNECT.indication SIGNIFICADO pedido de estabelecimento de uma conexo indicao entidade invocada utilizada para indicar a aceitao ou no da conexo informa entidade emissora se a conexo aceita pedido de envio de dados sinalizao da chegada de dados pedido de trmino da conexo indicao do pedido entidade par

Neste exemplo, CONNECT um servio confirmado enquanto os servios DATA e DISCONNECT so no-confirmados. A figura 2.5 permite ilustrar as trocas de primitivas de servio entre as camadas no caso de um servio confirmado. O exemplo utilizado o servio CONNECT.SISTEMA ACamada N+1

SISTEMA BCamada N+1

connect_request

connect.response

connect.confirm

connect.indication

Camada N

Camada N

Figura 2.5 - Ilustrao da troca de primitivas de servio (confirmado).

Arquiteturas de Redes

24

Captulo 3 - Arquiteturas de Redes

3.1

INTRODUO

A soluo para o compartilhamento de recursos fsicos e lgicos juntamente com a vantagem de se ter um sistema descentralizado foi alcanada atravs da interconexo das CPUs entre si. a isso que se propem as redes de computadores. A soluo para a comunicao de computadores em termos de longa distncia foi a tecnologia de comutao de pacotes, que solucionou o problema da linha telefnica dedicada. Para pequenas distncias a soluo foi a implantao de redes locais. De uma forma geral, o objetivo de uma rede tornar disponvel a qualquer usurio todos os programas, dados e outros recursos independente de suas localizaes fsicas. Outro objetivo proporcionar uma maior disponibilidade e confiabilidade, dada a possibilidade de migrao para outro equipamento quando a mquina sofre alguma falha. O uso de uma rede de computadores proporciona um meio de comunicao poderoso devido a sua velocidade e confiabilidade.

3.2

CLASSIFICAO DAS REDES DE COMPUTADORES

Uma rede de computadores formada por um conjunto de mdulos processadores capazes de trocar informaes e compartilhar recursos, interligados por um sistema de comunicao. O sistema de comunicao vai se constituir de um arranjo topolgico interligando os vrios mdulos processadores atravs de enlaces fsicos, atravs dos meios de transmisso, e de um conjunto de regras com fim de organizar a comunicao, os protocolos de comunicao.

3.2.1 REDES LOCAISRedes Locais (LANs - Local Area Networks) so redes privadas contidas em um prdio ou campus universitrio, que tem alguns quilmetros de extenso. As redes locais foram definidas e utilizadas inicialmente nos ambientes de institutos de pesquisa e universidades. Elas surgiram para viabilizar a troca e o compartilhamento de informaes e dispositivos perifricos preservando a independncia das vrias estaes de processamento e permitindo a integrao em ambientes de trabalho cooperativo. So amplamente utilizadas para interconectar computadores pessoais e estaes de trabalho em escritrios e instalaes industriais. Nas redes locais as distncias entre os mdulos processadores se enquadram na faixa de alguns metros a alguns poucos quilmetros. Esta definio bastante vaga, embora as limitaes associadas s tcnicas utilizadas em redes locais no imponham limites a essas distncias. As redes locais tm trs caractersticas que as diferem das demais: tamanho, tecnologia de transmisso e topologia. Elas geralmente tem um tamanho restrito. Em algumas topologias o pior tempo de transmisso conhecido e isto permite a utilizao de determinados tipos de aplicaes. Nas LANs tradicionais os computadores so interconectados por cabos ou atravs de equipamentos tipo hub. Neste tipo de rede as velocidades geralmente variam de 10 a 100 Mbps, h um baixo retardo e pouqussimos erros de transmisso so encontrados. As LANs mais modernas podem operar em velocidades ainda mais altas, alcanando Gbps. Este tipo de rede apresenta como topologias lgicas mais usadas o barramento e o anel e como topologias fsicas a rvore e a estrela. fato que em qualquer tipo de rede duas ou mais estaes podem Arquiteturas de Redes 25

necessitar enviar informaes pelo meio de transmisso no mesmo instante. Analisando estes arranjos topolgicos verificamos que h a necessidade de um mecanismo de arbitragem para determinao de qual estao poder transmitir de forma a no existncia de conflitos e garantia de tempo para todas as estaes que tm dados a transmitir. Conforme j mencionado, estes mecanismos podem ser estticos ou dinmicos e estes ltimos ainda podem ser divididos em centralizados ou distribudos. Mais adiante sero discutidos alguns destes mtodos.

3.2.2 REDES METROPOLITANASUma Rede Metropolitana (MAN - Metropolitan Area Network) , na verdade, uma verso ampliada de uma LAN, pois basicamente os dois tipos de rede utilizam tecnologias semelhantes. Uma MAN pode abranger um grupo de escritrios vizinhos ou uma cidade inteira e pode ser privada ou pblica. Este tipo de rede pode transportar voz e dados, podendo inclusive ser associado rede de televiso a cabo local. A principal razo para se tratar as redes metropolitanas como uma categoria especial que elas tm um padro especial, o DQDB (Distributed Queue Dual Bus) ou IEEE 802.6. Atualmente as redes ATM (Asynchronous Transfer Mode) tm sido a tecnologia com maior aceitao para uso em redes metropolitanas.

3.2.3 REDES GEOGRAFICAMENTE DISTRIBUDASAs Redes Geograficamente Distribudas (WANs - Wide Area Networks), ou Redes de Longa Distncia abrangem uma ampla rea geogrfica, com freqncia um pas ou continente. Ela tambm contm um conjunto de mquinas cuja finalidade executar programas de usurios, as chamadas aplicaes. Estas mquinas so denominadas na literatura como hosts ou end systems. Estes hosts so conectados por uma sub-rede de comunicao, ou somente sub-rede. A tarefa as sub-rede transportar mensagens de um host para outro, exatamente como o sistema telefnico transporta palavras da pessoa que fala para aquela que ouve. Esta estrutura altamente simplificada pois separa os aspectos de comunicao pertencentes rede (a sub-rede) dos aspectos de comunicao. Na maioria das redes geograficamente distribudas, a sub-rede consiste em dois componentes distintos: linhas de transmisso e elementos de comutao. As linhas de transmisso, tambm chamadas circuitos, canais ou troncos, transportam os bits entre as mquinas. Os elementos de comutao so equipamentos especializados usados para conectar duas ou mais linhas de transmisso. Quando os dados chegam por uma linha de entrada, o elemento de comutao deve escolher uma linha de sada para encaminh-la. No existe uma terminologia padro para identificar estes equipamentos. Dependendo das circunstncias eles so chamados ns de comutao de pacotes, sistemas intermedirios, centrais de comutao de dados ou ainda IMP (Interface Message Processor). Mas o termo mais comum para identificar estes elementos de comutao roteador. No modelo mostrado na figura 3.1, os hosts so ligados a algum tipo de rede local onde h tambm um elemento de comutao, embora em alguns casos um host possa estar ligado diretamente a um elemento de comutao. O conjunto de linhas de comunicao e elementos de comutao forma a sub-rede.

Arquiteturas de Redes

26

Sub-rede

Host

Elemento de comutao

Figura 3.1 - Ligaes entre hosts e a sub-rede de comunicao Na maior parte das WANs, a rede contm numerosos cabos ou linhas telefnicas, todos conectados por um par de roteadores. Porm, se dois roteadores que no compartilham um cabo desejarem se comunicar eles podero faze-lo atravs de um ou mais roteadores intermedirios. Quando um pacote enviado de um roteador para outro ele recebido integralmente, armazenado e repassado pela linha de sada quando ela estiver liberada. Estas redes so tambm redes store-and-forward, ponto-aponto ou de comutao de pacotes, como j mencionado anteriormente. Quase todas as redes geograficamente distribudas (com exceo das que usam satlite) tm sub-redes store-and-forward. Em funo dos custos de comunicao serem bastante altos estas redes so, em geral, pblicas, isto , o sistema de comunicao, chamado sub-rede de comunicao, mantido, gerenciado e de propriedade pblica. Tambm em funo dos custos, as velocidades empregadas so relativamente baixas, de alguns kilobits/segundo, podendo chegar a megabits/segundo.

3.2.4 REDES SEM FIOAs Redes Sem Fio ou Wireless Networks, constituem um segmento de mercado que vem crescendo muito. Elas so necessrias quando impossvel haver uma conexo por fios, como por exemplo, a partir de carros ou avies. Outro problema que elas solucionam quando uma pessoa viaja e quer usar seu computador porttil para enviar e receber mensagens de correio eletrnico, fax, ler arquivos remotos, estabelecer login com computadores remotos, estejam eles em terra, no mar ou no ar. As redes sem fio so muito utilizadas por empresas de caminhes, txis e por funcionrios de assistncia tcnica ou de vendas, pois estes esto sempre necessitando de informaes atualizadas de bases de dados de suas empresas. Elas tambm tm sido muito utilizadas para operaes de resgate em caso de catstrofes onde o sistema telefnico foi destrudo e em operaes militares. Embora as redes sem fio e a computao mvel tenham uma estreita relao, elas no so iguais. s vezes os computadores portteis podem ser conectados por fios. Por exemplo, se uma pessoa conecta um computador porttil na tomada do telefone de um hotel temos mobilidade sem o uso de uma rede sem fio. Por outro lado alguns computadores com comunicao sem fio no so portteis. Esse o caso das empresas sediadas em prdios muito antigos nos quais no h possibilidade de passagem de cabeamento de rede. por vezes a instalao de uma rede sem fio pode ser mais barata do que instalar fiao necessria no prdio. As redes sem fios so fceis de instalar mas elas possuem algumas desvantagens: baixa velocidade e altas taxas de erro. Elas tambm possuem inmeros formatos. Elas podem variar desde LANs sem fio que cobrem um campus universitrio, para que os alunos possam usar seus computadores portteis e trabalhar sob a sombra de uma rvore, at o uso de telefones celulares para acesso remoto a redes.

Arquiteturas de Redes

27

3.2.5 LIGAO ENTRE REDESExistem muitas redes no mundo, freqentemente com hardwares e softwares especficos. Normalmente as pessoas conectadas a diferentes redes precisam comunicar-se e para que isto seja possvel so necessrias conexes entre redes que muitas vezes so incompatveis. Para que esta comunicao possa realizar-se so utilizados os chamados gateways, que estabelecem conexes e permitem a comunicao entre usurios de redes diferentes. Um conjunto de redes interconectadas chamado de ligao inter-rede, ou apenas inter-rede. A palavra inter-rede deve ser usada de modo genrico, j a Internet uma inter-rede mundial especfica, muito utilizada para interconectar universidades, rgos do governo, empresas e pessoas fsicas. As sub-redes, redes e inter-redes so freqentemente confundidas. Uma sub-rede faz mais sentido no contexto de uma rede geograficamente distribuda, onde fazem referncia ao conjunto de roteadores e linhas de transmisso do operador da rede. Por outro lado, a combinao de uma sub-rede e seus hosts forma uma rede. Uma inter-rede formada quando diferentes redes so conectadas.

3.2.6 PARMETROS DE COMPARAOA escolha de um tipo de rede para dar suporte a um dado conjunto de aplicaes uma tarefa difcil. Cada arquitetura de rede possui caractersticas que afetam sua adequao a uma aplicao em particular. Muitos podem ser os atributos que fazem parte do rol possvel a ser considerado para comparao. Dentre eles esto custo, tempo de resposta, velocidade, desempenho, confiabilidade, modularidade, compatibilidade, e facilidade de adaptao mudana de tecnologia. Estes pontos sero discutidos brevemente a seguir.

CUSTOO custo de uma rede composto pelo custo das estaes de processamento, das interfaces com o meio fsico de comunicao e o custo do prprio meio fsico. Uma vez que os custos das estaes esto cada vez menores necessrio que o custo das interfaces seja minimizado. O que ir determinar o custo das interfaces proporcional ao desempenho que se espera da rede. Redes de baixo a mdio desempenho usualmente empregam poucas estaes com uma demanda de taxas de dados e volume de trfego pequeno, permitindo o uso de interfaces de baixo custo. Redes de alto desempenho j requerem interfaces de custo mais elevado.

RETARDO DE TRANSFERNCIARetardo de acesso o tempo que uma estao espera, a partir do momento que uma mensagem est pronta para ser transmitida, at o momento em que ela consegue transmitir com sucesso esta mensagem. Retardo de transmisso o intervalo de tempo decorrido desde o incio da transmisso de uma mensagem por uma estao de origem at o momento em que a mensagem chega estao de destino. Por fim re