Baixe o app para aproveitar ainda mais
Prévia do material em texto
REDES DE COMPUTADORES E SISTEMAS DISTRIBUÍDOS Luciano Rossi , 2 SUMÁRIO 1 INTRODUÇÃO ÀS REDES E SUAS PRINCIPAIS CAMADAS DE APLICAÇÃO .. 3 2 TIPOS DE TOPOLOGIAS LAN, MAN E WAN E SUAS LOCALIZAÇÕES ........ 19 3 PROTOCOLO IP E PADRÕES DE REDE ..................................................... 35 4 REDES DE COMPUTADORES NO MERCADO CORPORATIVO ................... 51 5 SISTEMAS DISTRIBUÍDOS ....................................................................... 66 6 SEGURANÇA EM REDES DE COMPUTADORES ........................................ 81 , 3 1 INTRODUÇÃO ÀS REDES E SUAS PRINCIPAIS CAMADAS DE APLICAÇÃO Caro estudante, seja bem-vindo ao curso de Redes de Computadores e Sistemas Distribuídos. Neste bloco inicial, faremos uma introdução a respeito das redes de computadores, passando pela conceptualização da internet e pela forma como os dados são transmitidos pela rede. Além disso, analisaremos os tipos de redes, de acordo com sua topologia, e finalizaremos com o estudo de possíveis arquiteturas de redes. A área redes de computadores é muito importante para o âmbito de tecnologia da informação. Há uma demanda de mercado relevante para profissionais que atuam nessa área. Assim, o estudo das redes de computadores pode se tornar um caminho para a atuação profissional em um mercado crescente e altamente competitivo. 1.1 Introdução às Redes de Computadores Conceitos Básicos No âmbito corporativo, em um passado não muito distante, era comum haver um único computador, com grandes dimensões físicas, como responsável por todo o processamento de dados realizado em uma organização. Este modelo centralizado era concorrido pelos usuários, que levavam seu trabalho até o computador e aguardavam para processar seus dados. Mesmo quando os computadores começaram a se popularizar por diferentes setores da organização, havia um contexto de desconexão entre os dispositivos. Assim, era comum a utilização de fitas ou discos magnéticos para transportar os dados de um computador para outro. O modelo de computação centralizada foi substituído pela utilização de vários computadores interconectados, capazes de compartilhar: poder de processamento, banco de dados, itens de hardware, dentre outras possibilidades (TANENBAUM, 2010). , 4 Nesse contexto, as redes de computadores são sistemas formados por um conjunto de computadores autônomos que compartilham uma mesma tecnologia. A organização atual dos sistemas computacionais foi fortemente influenciada pela conjunção dos computadores e da comunicação. Os processos de comunicação envolvem cinco elementos básicos: (i) a fonte da informação, (ii) o transmissor, (iii) o canal de comunicação, (iv) o receptor e (v) o destinatário. A fonte da informação e o destinatário são as entidades que iniciam e finalizam o processo de comunicação, respectivamente. O canal de comunicação é responsável pela conexão entre a fonte de informação e o destinatário. A depender do canal considerado, podem existir diferentes níveis de incidência de ruído, o qual pode comprometer a integridade da mensagem que é transmitida. O transmissor, ou codificador, e o receptor, ou decodificador, são responsáveis por codificar e decodificar a mensagem, respectivamente. Esse processo considera um conjunto de atributos e de regras de combinação desses atributos, que é influenciado pelo canal de comunicação que é utilizado. Um exemplo histórico do processo de comunicação, descrito anteriormente, foi o correio Pony Express (TANENBAUM, 2010). Esse sistema de correio ligava os Estados Missouri e Califórnia, nos EUA, e cobria uma distância de mais de três mil quilômetros. Como o próprio nome indica, as mensagens eram levadas a cavalo e cada viagem durava entre 10 e 12 dias. Além disso, esse sistema contava com postos de coleta a cada trecho de dezesseis quilômetros. No exemplo da Pony Express, a fonte da informação poderia ser uma pessoa no Missouri e o destinatário outra pessoa na Califórnia, por exemplo. A codificação e a decodificação, nesse caso, eram realizadas por meio da escrita. A fonte codifica a mensagem, na forma de palavras escritas, em uma carta, a qual será recebida pelo destinatário e decodificada, na forma da leitura das palavras. Note que é preciso haver um consenso, entre a fonte da informação e o destinatário, a respeito do processo de codificação para que a comunicação seja, de fato, efetivada. O agente do correio que levará as mensagens codificadas é o canal de comunicação. Veja que no trajeto pode , 5 ocorrer alguma intercorrência, por exemplo, a perda de uma ou mais mensagens, o que compromete o processo de comunicação. A Pony Express teve um curto período de operação, de abril de 1860 até outubro de 1861, sendo substituída pelo telégrafo. O telégrafo foi uma invenção do norte americano Samuel Finley Breese Morse (1791-1872) e é baseado na transmissão de sinais elétricos que codificam letras do alfabeto em sinais intermitentes. Esses sinais trafegavam por meio de linhas de transmissão, ou telegráficas, ligando os pontos de emissão e de recepção das mensagens. Nesse processo, a codificação das mensagens utilizava o código Morse, em homenagem ao seu criador, o qual considera sinais e intervalos de duração diferentes. O próximo passo evolutivo do processo de comunicação é a transmissão de voz. O britânico naturalizado norte-americano Alexander Graham Bell (1847-1922) e Thomas Watson (1854-1934), são os responsáveis pela transformação de som em corrente elétrica e, após a transmissão via cabo, reproduzir o som para o destinatário. Assim, nascia a telefonia, um sistema de telecomunicação eletroacústico que transforma a energia acústica em elétrica e vice versa (FOROUZAN, 2010). Um sistema de telefonia necessita que os telefones de origem e destino estejam conectados em uma mesma linha, o que é um problema visto que não é viável supor que um aparelho de telefonia possa estar conectado a todos os outros aparelhos existentes. A solução para este problema foi obtida a partir do desenvolvimento de centrais de comutação. Uma central de comutação é responsável por estabelecer a conexão entre dois dispositivos que necessitem estabelecer um processo de comunicação. Com o crescimento das redes de telefonia houve a possibilidade de conectar computadores utilizando essa infraestrutura. Assim, tornou-se possível conectar computadores que estivessem geograficamente distantes, de modo que as redes de computadores pudessem ser estendidas por grandes distâncias. , 6 1.2 Internet Conceito e Histórico O que conhecemos hoje como Internet não é, de fato, uma rede, mas sim um conjunto de redes que se interligam a partir do uso de protocolos de comunicação que são comuns (CORMER, 2016). Note que não há um momento histórico no qual a Internet foi criada, pelo contrário, ela é o resultado de uma evolução natural de tecnologias que possibilitam sua existência. O sistema de telefonia norte-americano, no final da década de 1950, era organizado por um conjunto de centrais de comutação que interligavam diversos telefones. Nesse contexto, não havia muita redundância, o que tornava todo o sistema frágil. O departamento de defesa norte-americano se preocupava com essa fragilidade, visto que o mundo estava imerso no que chamamos de guerra fria, e não era difícil supor que um ataque pontual a determinadas centrais de comutação pudesse fragmentar toda a rede, tornando o sistema em um conjunto de ilhas que não poderiam se comunicar entre si. A Figura 1.1 apresenta uma ilustração a respeito da organização da rede de telefonia norte-americana no período discutido. Note que há, no centro da figura, uma central de comutação que interliga outras centrais. No caso de algum evento de ataque a essa central, toda estrutura ficarádesconexa, comprometendo a comunicação. , 7 Figura 1.1 Exemplo ilustrativo alusivo ao sistema de telefonia norte-americano em 1950 Fonte: adaptado de TANENBAUM (2011). Uma parceria entre o departamento de defesa norte-americano e a RAND Corporation resultou em projeto tolerante às falhas. Paul Baran (1926-1955), funcionário da RAND, propôs um sistema distribuído que resolvia o problema da vulnerabilidade da rede. O projeto era baseado na tecnologia digital de comutação de pacotes. Assim, a empresa AT&T ficou responsável pela execução do projeto e julgou que a ideia de Baran era inviável, abandonando sua execução. Quando os EUA perceberam que estavam perdendo espaço na disputa com a URSS pela conquista do espaço, houve a criação de uma organização centralizada de pesquisa de defesa. A ARPA (Advanced Research Projects Agency) tinha o objetivo de avaliar projetos que eram propostos por universidades e empresas e financiar aqueles que acreditavam ser os mais promissores. Por volta de 1967, a ARPA se engaja no desenvolvimento de uma sub-rede que integrava minicomputadores denominados Processadores de Mensagens de Interface , 8 (IMP Interface Message Processors) que trabalhavam conectados a um host. O principal diferencial da sub-rede proposta era o fato de as mensagens serem divididas em pacotes de dados que eram encaminhados pela rede de forma independente. Para o caso de algum IMP ser destruído, o pacote poderia ser roteado por outro caminho. Veja na Figura 1.2 um exemplo de um sistema distribuído baseado nas ideias propostas por Baran. Figura 1.2 Exemplo ilustrativo do sistema distribuído de comutação proposto por Baran Fonte: adaptado de TANENBAUM (2011). Em 1968, a ARPA selecionou uma empresa chamada BBN para estruturar a sub-rede e desenvolver o software que seria utilizado na rede. O software para os hosts foi desenvolvido por um grupo de estudantes universitários. Uma rede inicial foi apresentada em 1969, essa rede era composta por somente quatro nós que representavam a Universidade da Califórnia em Los Angeles (UCLA), a Universidade da , 9 Califórnia em Santa Bárbara (UCSB), a Stanford Research Institute (SRI) e a Universidade de Utah. A escolha dessas quatro instituições considerou o grande número de contratos que elas tinham com a ARPA e os parques de computadores host eram incompatíveis entre si, de modo que o desafio era ainda maior. A rede desenvolvida a partir dos investimentos da ARPA foi denominada como ARPANET. O crescimento da ARPANET foi rápido e em um breve intervalo já se estendia por todo o território norte-americano. Outro desafio veio a partir da observação de que os protocolos utilizados pela ARPANET não eram adequados para execução em redes diferentes. Assim, a ARPA investiu, também, na pesquisa de novos protocolos que pudessem contemplar redes diferentes. Em 1974 surge o modelo TCP/IP, cujo objetivo era tratar da heterogeneidade das redes interligadas à ARPANET. A ARPANET estava impactando, de maneira importante, o desenvolvimento de pesquisa entre as universidades que estavam conectadas. Os pesquisadores podiam compartilhar seus resultados com outros pesquisadores de outras universidades. O problema é que poucas universidades podiam se conectar à ARPANET, visto que havia a necessidade de existir um contrato com o departamento de defesa, o que poucas universidades tinham. Como resposta ao novo desafio, a NSF (National Science Foundation) patrocinou a criação da CSNET (Computer Science Network) que conectava tanto os departamentos de Ciência da Computação quanto os laboratórios de pesquisa industrial à ARPANET. Além disso, a NSF iniciou a construção da sucessora da ARPANET, de modo que a nova rede pudesse conectar todas as universidades no país. Considerando o ambiente propício à evolução no âmbito das redes de computadores, o NFS ainda financiou dezenas de redes regionais, conectando-as ao backbone1, de modo que promovesse o acesso de diferentes usuários aos supercomputadores que eram disponíveis na rede. Essa estrutura foi chamada NSFNET e conectava, além das redes regionais, a ARPANET. 1 Backbone é a palavra em inglês para espinha dorsal e, em termos de computação, caracteriza e representa o esquema de ligação entre as redes que compõem o sistema. , 10 A possibilidade de se conectar com outros computadores fez com que a NSFNET crescesse muito rapidamente. Não demorou para que os EUA tomassem ciência de que não poderiam realizar a gestão e o financiamento daquela infraestrutura por muito mais tempo. Além disso, havia o interesse de organizações comerciais, que estavam fora da rede por conta do estatuto da NFS. Assim, foi formada uma empresa, sem fins lucrativos, chamada ANS (Advanced Networks and Services) que assumiu a NSFNET e formou a ANSNET. Essa rede ficou em operação por cinco anos, sendo posteriormente vendida à America Online. Assim, o governo acabou por não participar mais do negócio e outras empresas já estavam operando no mercado, oferecendo o serviço de IP comercial. Em outros lugares do mundo, o desenvolvimento das redes se deu de maneira similar àquela observada nos EUA. No começo da década de 1990, a Internet ganha uma escala muito grande com a criação da Word Wide Web (www), que se caracteriza por um conjunto de documentos hipermídia que são interligados e executados na Internet (CORMER, 2016). 1.3 Transmissão de dados Sinais Analógicos e Digitais No mundo real, os processos de comunicação são analógicos. Quando conversamos com alguém, nossas cordas vocais são acionadas, pelo ar que é expelido dos pulmões, e vibram de uma maneira bem específica. As vibrações das cordas vocais são propagadas pelo ar, em forma de ondas, até que cheguem ao sistema auditivo do interlocutor. Assim, as ondas sonoras fazem com que os componentes do sistema auditivo do interlocutor vibrem e essa vibração possa ser interpretada pelo cérebro. As ondas analógicas apresentam uma variação contínua de frequência e amplitude. A frequência de uma onda é o número de oscilações observadas em um determinado intervalo de tempo. A amplitude de uma onda é representada pela sua altura em relação ao ponto de equilíbrio. , 11 Os sinais analógicos podem ser convertidos em sinais digitais. O processo de conversão considera a obtenção de amostras em intervalos de tempo pré-definidos, as quais são convertidas em um valor numérico. Considere o exemplo da Figura 1.3, veja que a curva apresentada em (a) representa um sinal analógico, cujo comportamento, conforme discutido anteriormente, é contínuo em relação à frequência e amplitude. Figura 1.3 Exemplo de conversão de sinal analógico em digital Fonte: elaborado pelo autor. O processo de conversão do sinal analógico para digital tem início com a medição da amplitude do sinal analógico em intervalos regulares (MENDES, 2020). A amplitude pode ser representada, por exemplo, em volts. Veja que em cada intervalo de tempo, regular e pré-estabelecido, é feita a medição, essa etapa do processo é definida como amostragem. O sinal representado em (b), na Figura 1.3, consiste dos valores medidos na etapa anterior. A etapa seguinte é a transformação dos valores de amplitude em cada , 12 intervalo em valores binários, de modo que possam viabilizar a transmissão digital desses valores, conforme apresentado em (c). Uma questão importante na conversão de um sinal analógico para digital é a definição do intervalo de tempo que será considerado para a coleta das amostras. Quanto maior for esse intervalo, menor será a fidelidade no momento de realizar a recomposição do sinal pelo destinatário. Por outro lado, intervalos menores aumentam a fidelidade ao sinal original na recomposição. O fato é que sempre haverá alguma perda nesse processode conversão. Outra questão no processo de conversão e transmissão de sinais é a distorção. A transmissão de um sinal digital, sobre um meio físico que esteja sujeito a alguma interferência, pode resultar em alguma alteração e, consequentemente, no recebimento de um sinal corrompido pelo destinatário. As principais fontes de interferência na transmissão de sinais são: (i) o ruído térmico, que ocorre quando as cargas elétricas geram calor durante a transmissão; (ii) a intermodulação, que é a interferência de sinais de frequências diferentes; (iii) a linha cruzada, que ocorre quando canais diferentes se misturam; (iv) a atenuação, em grandes distâncias o sinal pode perder potência ao longo da linha de transmissão; e (v) o eco, que é um fenômeno de reflexão do sinal. Com relação ao modo de transmissão, os dados podem ser transmitidos sequencialmente, um bit por vez, ou simultaneamente, todos os bits de uma única vez. O modo serial, em que os dados são transmitidos sequencialmente, é mais comumente observado em canais de transmissão de longas distâncias (FOROUZAN, 2010). Por outro lado, o modo de transmissão paralela, em que os dados são transmitidos simultaneamente, é mais comum em canais de curta distância. No âmbito dos ritmos de transmissão de dados, a comunicação pode se dar de forma síncrona ou assíncrona. A comunicação síncrona considera um fluxo de dados contínuo e constante entre o emissor e o receptor, enquanto na comunicação assíncrona, são considerados blocos de dados delimitados que são transmitidos sem sincronismo (FOROUZAN, 2010). , 13 Quanto aos meios de transmissão, existem, fundamentalmente, dois tipos. Os meios de transmissão guiados são aqueles que utilizam algum meio físico, a partir do qual o sinal será transmitido. Esses meios físicos podem ser, por exemplo, um cabo coaxial ou de fibra óptica. Os meios de transmissão não guiados são aqueles que não utilizam um meio físico para a transmissão de sinal. Podemos considerar processos de transmissão não guiados aqueles que utilizam o infravermelho, as ondas de rádio ou as micro- ondas (MENDES, 2020). 1.4 Tipos de Redes/Topologias de Redes Quando pensamos em hardware de redes de computadores, podemos considerar uma classificação baseada na escala e na forma pela qual os dispositivos se conectam. A escala de uma rede é classificada em oito categorias principais. As chamadas redes pessoais ou PANs (Personal Area Network) são aquelas em que os dispositivos estão próximos uns dos outros. Um exemplo é o próprio computador que é conectado ao teclado, ao mouse e a impressora, seja por meio de cabos ou Bluetooth. As chamadas redes locais ou LANs (Local Area Network) são redes particulares que podem ser utilizadas em um único cômodo ou em um prédio ou, até mesmo, cobrir um campus universitário. A grande vantagem da utilização de uma LAN é a possibilidade de compartilhar recursos entre diferentes computadores na rede, por exemplo, uma impressora, e a troca de informação entre eles. Apesar de existirem LANs cabeadas, a conexão sem fio é a forma mais popular de formar uma LAN, principalmente no ambiente doméstico. O padrão considerado para as LANs sem fio é o IEEE 802.11, também conhecido como WiFi. Por outro lado, as LANs com fio seguem o padrão IEEE 802.3, que é chamado de Ethernet. Uma rede metropolitana, também conhecida como MAN (Metropolitan Area Network), abrange uma cidade inteira. Podemos considerar um exemplo básico de MAN a partir da infraestrutura de TV a cabo que é disponível em, praticamente, todas as cidades. Esse tipo de serviço é fornecido por empresas que possuem concessões governamentais para distribuir uma infraestrutura de cabos em toda a cidade e, a , 14 partir dela, realizar a transmissão de programação de televisão. Com a popularização da Internet, as empresas passaram a fornecer serviços de conexão em partes ociosas do espectro. Outro tipo de MAN que oferece internet de alta velocidade sem fio é padronizada como IEEE 802.16, também conhecida como WiMAX. As redes que conectam um país ou até mesmo um continente é chamada de rede de longas distâncias ou WAN (Wide Area Network). Nesse tipo de rede os computadores são ligados a uma sub-rede. As sub-redes são compostas por linhas de transmissão e elementos de comutação. As linhas de comunicação são, comumente, alugadas de empresas de telecomunicações. Os elementos de comutação são computadores cujo objetivo é conectar três ou mais linhas de transmissão. Quando um comutador recebe dados ele deve escolher uma das linhas de transmissão para rotear os dados. Assim, os comutadores são popularmente conhecidos como roteadores. Conforme a descrição anterior, uma WAN pode ser definida como uma grande LAN cabeada, porém, existem algumas diferenças importantes a serem consideradas. Em uma WAN a sub-rede e os computadores, interligados a ela, são administrados por diferentes pessoas. Poderíamos ter a sub-rede administrada pela operadora de telefonia e uma rede local administrada pela empresa proprietária dessa rede. Isso implica na separação entre as características da comunicação e da aplicação, o que facilita o projeto. Outra diferença é que em uma WAN há diferenças entre as tecnologias que são conectadas, podemos ter redes locais, que utilizam diferentes tecnologias de rede, interligadas em uma mesma WAN. Finalmente, podemos conectar à sub-rede um único computador ou uma rede local completa. Há algumas variações possíveis para uma WAN. Uma empresa, por exemplo, poderia optar por utilizar a infraestrutura da Internet ao invés de alugar linhas de transmissão dedicadas. Nesse caso, há uma maior flexibilidade em conectar outros computadores ou redes locais à WAN. Essa configuração é denominada rede privada virtual ou VPN (Virtual Private Network). Outra variação possível é a utilização de uma sub-rede operada por um provedor de serviço, que também está conectada a outras redes que compõem a Internet. Esse operador é chamado de provedor de serviço de Internet ou ISP (Internet Service Provider). Quando temos um conjunto de redes interconectadas, , 15 comumente, nos referimos a esse tipo de configuração como sendo uma rede interligada ou internet. Note que esse é um termo genérico e contrasta com a rede mundial, Internet, pelo uso da inicial em letra maiúscula. No contexto da topologia de rede, consideramos a organização dos computadores quanto à interligação que é observada. Por exemplo, quando não há uma diferenciação a respeito do papel desempenhado pelos computadores na rede e os computadores podem estar conectados a um ou mais computadores, dizemos que essa arquitetura corresponde a uma rede ponto a ponto. Quando os computadores estão conectados por meio de um barramento físico, o qual é compartilhado por todos, de forma concorrente, dizemos que essa arquitetura corresponde a uma topologia em barramento. Outras topologias possíveis são: estrela, malha, árvore, dentre outras. 1.5 Redes ponto a ponto versus cliente-servidor Existem diferentes possibilidades de organização de sistemas computacionais. Por exemplo, um sistema monolítico considera todos os componentes do sistema de forma não compartilhada, ou seja, é permitido o acesso ao sistema de um único usuário por vez. Assim, há a centralização dos dados, dos recursos e do processamento, o que implica em simplicidade de desenvolvimento e de operação do sistema. Por outro lado, nessa organização há pouca flexibilidade para o atendimento às solicitações dos usuários. Contrastando com os sistemas monolíticos, existem os sistemas distribuídos, nos quais os processos em execução são concorrentes e distribuídos em diferentes pontos da rede. Nesse tipo de organização, a partir da comunicação entre os processos, temos, como características principais a otimização de hardware, a reutilização de softwaree a distribuição dos dados. Além de o software ser constituído em camadas. Esse tipo de organização oferece ao usuário maior flexibilidade no atendimento às suas solicitações. , 16 O sistema cliente-servidor, que é uma especialização de sistema distribuído, considera três componentes básicos para o compartilhamento de recursos de computação: (i) computadores clientes; (ii) computadores servidores; e (iii) redes de transmissão. Os computadores clientes e servidores têm, comumente, funções distintas. O cliente é responsável pela interface com o usuário e por alguma lógica básica da aplicação. Por outro lado, o servidor é responsável pelo gerenciamento do acesso aos recursos e pelas funções relativas ao banco de dados. De maneira mais aprofundada, o cliente é responsável por gerenciar a apresentação, que inclui a interação com o usuário e a entrada e consulta de dados. Além disso, o cliente cuida do funcionamento da aplicação e executa partes simples da lógica do negócio. Adicionalmente, o cliente oferece aplicações de produtividade pessoal, como processador de textos e navegador Web. O papel do servidor, nesse contexto, é realizar a comunicação e a autenticação de usuários e o atendimento às solicitações dos clientes. Todo o gerenciamento do banco de dados, também, é responsabilidade do servidor, o que inclui o acesso, organização, seleção e atualização dos dados ou registros. Além disso, o servidor é responsável pela execução de regras do negócio da aplicação. Finalmente, o papel da rede de comunicação inclui o fornecimento da infraestrutura necessária para a comunicação entre o cliente e o servidor, submetendo as solicitações do cliente para o servidor e transportando as respostas do servidor para o cliente. Em um sistema ponto a ponto, que também é uma especialização de sistema distribuído, não há a definição de papéis observada no sistema cliente-servidor. Assim, não há uma hierarquia evidente entre os computadores na rede, sendo que todos os computadores na rede desempenham papéis de mesmo nível. Os processos que são executados em diferentes computadores, em um sistema ponto a ponto, são clones uns dos outros, não havendo uma gestão global dessa execução em toda a rede. , 17 Conclusão Prezado estudante, neste bloco inicial discutimos alguns aspectos introdutórios sobre redes de computadores, considerando suas principais camadas de aplicação. Estudamos as características fundamentais das redes de computadores e seus objetivos e aplicações. Além disso, conhecemos sobre a história da Internet, desde os primeiros passos no desenvolvimento de tecnologias e protocolos de comunicação até a expansão global da rede mundial. A transmissão de dados, por meio da transformação de sinais analógicos em digitais, também, foi tema de discussão neste bloco. Vimos que este processo de transformação considera amostras coletadas em intervalos de tempo constantes e, seus valores, são convertidos para uma representação digital que pode ser transmitida, por exemplo, via cabo. Além disso, estudamos as classificações das redes de computadores quanto às suas escaladas e, também, quanto a organização e conexão de seus nós. Em particular, aprofundamos os contrates existentes entre as redes ponto a ponto e cliente-servidor. No próximo bloco trataremos mais detalhadamente sobre o tráfego de dados na Internet e sobre a classificação de redes como: Internet, Intranet e Extranet. Além disso, vamos estudar as tecnologias de conexão e os modelos e padrões considerados. REFERÊNCIAS COMER, D. E. Redes de Computadores e Internet. Porto Alegre: Bookman, 2016. (e- book). FOROUZAN, B. A. Comunicação de Dados e Redes de Computadores. Porto Alegre: Bookman, 2010. (e-book). MENDES, D. R. Redes de computadores: teoria e prática. São Paulo: Novatec Editora, 2020. , 18 TANENBAUM, A. S; WETHERALL, D. Redes de Computadores. São Paulo: Pearson Prentice Hall, 2011. , 19 2 TIPOS DE TOPOLOGIAS LAN, MAN E WAN E SUAS LOCALIZAÇÕES Caro estudante, neste segundo bloco vamos estudar, mais detalhadamente, a respeito das características das redes de computadores, considerando suas diferentes escalas. Inicialmente, vamos investigar os conceitos que baseiam a transmissão de dados via rede, mais especificamente a Internet. Abordaremos, também, outra forma de caracterização das redes de computadores, que abrange as categorias: (i) Internet, (ii) Intranet e (iii) Extranet, explorando seus conceitos e suas diferenças. Além disso, vamos conhecer mais a respeito das tecnologias e dispositivos de conexão, que compõem a infraestrutura de uma rede de computadores. Vamos explorar, também, os modelos de protocolos em camadas OSI e TCP/IP, evidenciando a importância, aplicabilidade, vantagens de desvantagens de cada um. Finalizaremos com o estudo dos padrões ISO e IEEE, aplicados a redes de computadores. 2.1 Como ocorre o tráfego de dados na internet No bloco anterior, analisamos o método de conversão de sinais analógicos em digitais. Assim, os dados podem ser transmitidos a partir da variação de alguma propriedade física, como, por exemplo, tensão ou corrente (MENDES, 2020). O processo de transmissão de informações via rede considera algumas etapas. A primeira etapa é descrição do objeto da comunicação, o qual pode ser uma ideia, um padrão, ou uma imagem, na origem ou emissor. Em seguida, esse objeto da comunicação deve ser codificado de uma forma adequada ao meio físico disponível. No contexto das redes, a codificação é feita, comumente, na forma de sinais binários. Um sinal binário, ou digital, é simples de ser transmitido via rede. Considerando intervalos de tempo regulares, a presença ou a ausência de tensão pode simbolizar os es possíveis para a , 20 transmissão de sinais digitais que podem ser consideradas, inclusive em função do meio de transmissão. A etapa final, após a recepção da informação pelo receptor, é a reconstituição do objeto da comunicação original. Note que, a depender da escolha de parâmetros específicos, como, por exemplo, o intervalo de tempo, a reconstituição do objeto da comunicação pode ser mais ou menos fiel ao objeto original. Considerando os tipos de transmissão de informações, podemos ter três tipos de transmissões específicas (TANENBAUM, 2011). Uma comunicação unidirecional, ou seja, em que o transmissor e o receptor têm seus papéis fixos, não havendo a possibilidade de inversão de papéis, é chamada de simplex. Um exemplo de transmissão simplex é aquela que ocorre entre uma emissora de televisão e um aparelho de TV (que não disponibilize acesso à Internet). Nesse modelo de transmissão, as informações são enviadas da emissora para o aparelho, sem nunca haver uma inversão de papéis. O tipo de transmissão chamado de half-duplex é bidirecional, ou seja, os sujeitos envolvidos no processo de comunicação podem assumir diferentes papéis. Esse tipo de transmissão considera o compartilhamento de um mesmo canal de comunicação e, assim, o fluxo das informações deve considerar um único sentido em um mesmo momento. Como exemplo, considere uma conversa entre duas pessoas por meio do uso de walkie-talkies. Nesse caso, quando uma pessoa está falando a outra deve aguardar a finalização da fala do interlocutor para que possa iniciar a sua fala. Finalmente, a categoria de transmissão chamada de full-duplex considera a transmissão bidirecional simultânea, ou seja, os sujeitos no processo de comunicação podem realizar a transmissão ao mesmo tempo. Um exemplo é o uso do telefone, em que as pessoas podem falar, de forma simultânea, e ouvir o que o interlocutor está falando. Conforme dito anteriormente, uma questão importante é sobre a fidelidade do objeto da comunicação reconstituído comparado ao original. Existeuma brincadeira chamada , 21 Nessa brincadeira, há uma fila de pessoas e a primeira recebe uma mensagem que deve ser transmitida, ao pé do ouvido, para a próxima pessoa na fila. Esse processo se repete até que a mensagem chegue à última pessoa, que deve pronunciá-la em voz alta. A graça da brincadeira está na própria degradação da mensagem que, na maioria das vezes, chega ao destino completamente desfigurada. A degradação de uma mensagem, transmitida por algum meio, está ligada a dois fatores principais. O primeiro é relativo ao próprio meio de transmissão, que pode incluir algum ruído à mensagem original comprometendo sua integridade. O segundo está ligado à forma de codificação que é utilizada. Considere, por exemplo, dois tipos de mídias que armazenam som, o disco em vinil e o disco digital (Compact Disk CD). O vinil captura um intervalo de representação do som muito maior que aquele considerado pelo CD. Isso ocorre pois o vinil é uma mídia analógica e, por conta disso, pode abranger mais detalhes sonoros, inclusive ruídos. Quando há a conversão de uma música, por exemplo, para o formato digital, muitos destes detalhes sonoros não são considerados e, a depender de um conjunto de parâmetros, a música é representada, em uma determinada faixa de representação, de forma mais precisa sem a presença de ruídos. No contexto da transmissão de informações via rede, os sinais analógicos são inviáveis. Devido à existência de diversas fontes de interferência eletromagnética, os sinais analógicos podem sofrer degradação que não é possível de ser verificada pelo receptor da mensagem. Por outro lado, um sinal digital é passível de verificação, o que o torna especialmente adequado para sistemas de computadores. Os computadores realizam todo o seu trabalho considerando o sistema de informação digital. Desse modo, tudo o que eles conhecem são sequências numéricas compostas seja, o que tra Quando um computador receptor recebe uma série binária ele deve ser capaz de recompor aquela série na informação original. Tanto a decomposição quanto a recomposição de um objeto da comunicação em séries numéricas binárias são feitas a , 22 partir de protocolos de rede. Na computação, protocolo significa um conjunto de regras que possibilita a eficiência e a corretude na execução de diferentes processos. Especificamente no âmbito da transmissão de informações, um protocolo estabelece a forma pela qual o objeto da comunicação será decomposto em representações binárias e recomposto, posteriormente. A transmissão de sinais digitais pode ser realizada considerando pulsos elétricos, ópticos ou na forma de ondas de rádio. Essa transmissão é possível a partir de um processo chamado modulação. Esse processo possibilita que um determinado sinal seja transmitido por meio de uma onda portadora que atenda às características do meio de transmissão. Assim, a modulação é a alteração de uma onda portadora, de modo que ela possa conter a mensagem original. A Figura 2.1 apresenta um exemplo de um sinal digital modulado a partir da amplitude e da frequência. Figura 2.1 Exemplo de modulação de sinais Fonte: elaborado pelo autor. Na Figura 2.1 (a) temos uma representação de um sinal digital, note que a variação de contexto, é necessário considerar uma onda portadora para a representação do sinal digital. Veja que, na Figura 2.1 (b), a onda portadora sofre uma alteração em sua amplitude. Nos intervalos de tempo em que a amplitude é menor, temos a , 23 o, na Figura 2.1 (c), o parâmetro de variação é a frequência da onda portadora. Note que frequências menores são denominados, respectivamente, de amplitude modulada (AM) e frequência modulada (FM). O dispositivo responsável pela modulação e demodulação de sinais digitais é chamado de modem. A partir do modem é possível transformas um sinal digital em um sinal analógico que pode ser transmitido, por exemplo, pela linha telefônica. Conforme discutido no bloco anterior, existem duas formas de transmissão, a paralela e em série. Particularmente nas redes locais, a transmissão é, comumente, serial. Assim, a velocidade com que os bits são transmitidos é dada em bps (bits por segundo). O bit é a menor unidade de representação de dados e pode assumir dois valor 2.2 Internet, Intranet e Extranet: Conceitos e diferenças No bloco anterior analisamos uma forma de classificação de redes de computadores a partir de suas respectivas escalas. Porém, existes outras denominações que são cotidianamente utilizadas para classificar as redes de computadores. Sabemos que uma internet (não confundir com a rede mundial Internet) é uma rede formada a partir da conexão de outras redes geograficamente distantes (CORMER, 2016). Quando consideramos um contexto corporativo, seja no segmento comercial ou empresarial, podemos nos deparar com outras denominações para a classificação das redes de computadores. As denominações intranet e extranet são, ambas, referentes às redes de computadores e consideram as mesmas características pertinentes à internet. O que diferencia um termo do outro é a forma pela qual o acesso é realizado. , 24 A intranet é uma rede particular que pode ser acessada somente por um grupo de pessoas pré-definido. Esse tipo de rede é muito comum em empresas e fornece aos funcionários acesso aos diferentes recursos e informações que não são compartilhados com outros usuários estranhos à organização. Uma intranet pode, ou não, estar ligada à Internet de modo a ampliar a abrangência de rede privada. Em um contraste com a Suponha uma empresa que utilize uma intranet como forma de integrar suas equipes e compartilhar recursos. Quando essa empresa deseja que parte de seu acervo documental seja compartilhado com os clientes, via rede, teremos, então, uma extranet. Nesse contexto, o compartilhamento externo pode ser com clientes ou ainda com parceiros. A diferença fundamental entre uma intranet e uma extranet está na administração da rede. Uma intranet é administrada por uma única empresa que necessita compartilhar recursos internamente. Por outro lado, uma extranet é administrada por mais que uma empresa, de modo que alguns recursos sejam compartilhados por todos os envolvidos. Note que, do ponto de vista técnico, não há diferenças entre internet, intranet e extranet, todas fazem referência às redes de computadores e possuem as mesmas características. A diferenciação entre os conceitos é possível a partir do seu respectivo uso, ou seja, a classificação da rede é feita a partir da forma como o acesso é realizado e por quem acessa. 2.3 Tecnologias de conexão Dispositivos de conexão As redes de computadores, assim como outras tecnologias, têm seu desenvolvimento baseado na evolução de componentes de hardware. Mais especificamente, há um conjunto de componentes que são necessários para a construção de uma rede de computadores. Além do próprio computador, os componentes de conexão são protagonistas quando o objetivo é o compartilhamento de recursos e de informações. , 25 Podemos considerar os meios de transmissão agrupados em duas categorias principais (FOROUZAN, 2010). Os meios de transmissão guiados são aqueles que concentram o fluxo de dados, transmitindo a informação de um ponto a outro. São exemplos de meios de transmissão guiados os fios de cobre ou os cabos de fibra óptica. Outra categoria concentra os meios de transmissão não guiados, a partir dos quais a informação é transmitida sem que haja um meio físico. São exemplos de meios de transmissão não guiados as ondas de rádio e o raio laser. Os meios de transmissão de dados apresentam diferentes características que podem ser úteis para a escolha do meio em cada contexto. Assim, os meios de transmissão variam em termos de largura de banda, atraso, custo e facilidade de instalação e demanutenção. A largura de banda é a medida da capacidade que um meio de transmissão apresenta em trafegar os dados em um determinado intervalo de tempo. Nesse sentido, maior largura de banda é indicativo de maior velocidade de transmissão, visto que um maior volume de dados é transmitido. A unidade de medida de largura de banda é representada em bits por segundo, ou bps. O atraso está ligado ao tempo que levará para a transmissão de um pacote de dados de um ponto a outro. No contexto das redes de computadores, o termo latência é mais utilizado para a representação de atraso. O custo de transmissão de dados é, comumente, descrito em termos de volume de dados por unidade monetária (quantidade de bits por dólar, por exemplo). Note que essa característica é interessante pois pode ser mais vantajoso transportar caixas de fitas magnéticas, utilizando um caminhão para tal, do que construir uma rede ligando dois pontos extremos. Esse exemplo ilustra que a escolha do meio de transmissão deve ser feita baseada no contexto da implantação. O cabo coaxial é um meio de transmissão guiado composto por um fio de cobre central envolvido por uma camada de material isolante que, por sua vez, é protegido por um condutor em forma de malha entrelaçada. A camada exterior do cabo coaxial é uma cobertura de plástico protetor. , 26 As características do cabo coaxial resultam em algumas vantagens, como, por exemplo, ser longo, permitir o uso de redes multicanal, menor custo e menor atenuação de sinal. Por outro lado, o cabo coaxial não é muito flexível, o que dificulta a instalação, e, comumente, é utilizado em uma topologia linear, o que, em caso de falhas, obriga a substituição de todo o segmento. O par trançado é um tipo de cabo muito utilizado em redes de computadores. Esse cabo é oferecido em dois tipos básicos: com ou sem blindagem. Como o próprio nome faz referência, o par trançado é composto por dois fios de cobre encapados, um para a transmissão e outro para a recepção de dados. Assim, o par trançado pode ser utilizado para transmissão full-duplex. Hoje em dia, as redes de computadores são construídas utilizando a fibra ótica. Esse meio de transmissão é feito de vidro e, de maneira semelhante aos cabos coaxiais, possui um revestimento interno, também, de vidro com um menor índice de refração que o núcleo. Há, ainda, uma cobertura plástica de proteção. Normalmente, os cabos de fibra ótica são agrupados em feixes e protegidos por um revestimento externo. Além da velocidade de transmissão de dados, os cabos de fibra ótica são imunes à interferência eletromagnética e não apresentam atenuação de sinal. Cada cabo de fibra ótica transmite dados em um único sentido, assim, para a transmissão full-duplex são necessários, no mínimo, um par de cabos. Os meios de transmissão de dados não guiados, ou sem fio, foram motivados pela dificuldade geográfica em utilizar cabos. Nesse formato, os dados são transmitidos pela atmosfera na forma de ondas. As ondas de rádio são muito utilizadas para a transmissão de dados, pois são fáceis de gerar e percorrem grandes distâncias. Além disso, as ondas de rádios penetram em ambientes fechados e são propagadas em todas as direções, a partir de sua origem. Além do rádio, outras formas de transmissão não guiadas podem ser consideradas, como micro-ondas, infravermelho e via luz. , 27 2.4 Modelo OSI e TCP/IP O modelo de referência OSI (Open Systems Interconnection) descreve um protocolo em camadas, proposto pela ISO (International Standards Organization), e é uma iniciativa rumo à padronização internacional dos protocolos em camadas (TANENBAUM, 2011). Apesar de os protocolos baseados no modelo OSI serem pouco utilizados hoje em dia, o modelo é importante devido às características descritas por suas camadas. O modelo OSI é composto por sete camadas para as quais existem objetivos específicos. Veja na Figura 2.2 uma ilustração que descreve as camadas que compõem o modelo OSI. As representações centrais, para as quais se observa apenas três camadas, referem-se ao protocolo para a sub-rede interna. A camada da aplicação disponibiliza uma série de protocolos que são importantes para o usuário. Dentre esses protocolos podemos destacar o HTTP (Hipertext Transfer Protocol) que é a base para a comunicação de dados na World Wide Web e é utilizado para sistemas que consideram hipertexto, o FTP (File Transfer Protocol) que é um protocolo para a transferência de arquivos, o SMTP (Simple Mail Transfer Protocol) que é o protocolo padrão de envio de mensagens de correio eletrônico e o SSH (Secure Shell) , que é um protocolo para serviços de rede seguros em um ambiente inseguro. , 28 Figura 2.2 Modelo OSI Fonte: adaptado de TANENBAUM (2011). A camada de apresentação é responsável pela formatação dos dados que serão apresentados ao usuário na camada da aplicação. Essa camada é responsável por converter os dados de modo que eles tenham um formato adequado tanto na apresentação quanto para o envio pela rede. Dentre as responsabilidades da camada de apresentação estão a conversão de caracteres de código, a conversão de dados, a compactação de dados e a criptografia dos dados. A camada de sessão é responsável por estabelecer uma sessão (conexão) entre os processos em computadores diferentes. Nesse contexto, a camada de sessão gerencia todo o ciclo de vida da sessão, desde o seu estabelecimento até o encerramento. As operações necessárias para que os processos se comuniquem são todos de responsabilidade desta camada, como, por exemplo, a realização das tarefas de segurança, o reconhecimento de nomes, registros em log, dentre outros. , 29 A camada de transporte recebe os dados da camada superior, os divide em unidade menores e os envia para a camada de rede. Além disso, a camada de transporte deve assegurar que todas as partes que compõem a informação cheguem ao seu destino de forma correta. A camada de transporte também é responsável por absorver qualquer tipo de mudança de hardware que possa ocorrer, não permitindo que essas mudanças afetem as outras camadas. Quando uma conexão é estabelecida, a camada de transporte precisa definir o tipo de serviço que será ofertado à camada de sessão. Esses serviços podem ser um canal ponto a ponto, que mantem a ordem das partes enviadas, mensagens isoladas, que não garantem nenhum tipo de ordem no envio, e a difusão de mensagens que serão enviadas para múltiplos destinos. A camada de rede é responsável pelas operações que são realizadas na sub-rede. Essa camada determina a forma pela qual os pacotes de dados serão roteados da origem até o destino. As rotas definidas para os pacotes podem ser estáticas ou dinâmicas. As rotas estáticas são aquelas pré-definidas e as rotas dinâmicas podem apresentar variações durante o trajeto em função da carga atual da rede. Além disso, a camada de rede gerencia o endereçamento diferente que pode ser observado entre as redes conectadas, as diferentes definições para o tamanho dos pacotes de dados e diferença entre protocolos. A camada de enlace de dados cuida para que um canal de transmissão de dados seja livre de erros de transmissão não detectáveis pela camada de rede. Determina que o transmissor particione o pacote de dados em quadro de dados, de modo que eles possam ser transmitidos sequencialmente com confirmação de recebimento. Além disso, a camada de enlace de dados regula o tráfego na rede, equalizando a diferença de velocidade entre o emissor e o receptor. Finalmente, a camada física é responsável pela transmissão de bits brutos por um canal de comunicação. Dentre as questões que a camada física tem de lidar, podemos destacar a voltagem que será utilizada para a representação de um bit, o tempo de duração de um bit, o gerenciamento de possíveistransmissões bilaterais, ou seja, transmissões que são realizadas em dois sentidos simultaneamente. Além disso, a camada física cuida das interfaces mecânicas, elétricas e de sincronização. , 30 O modelo TCP/IP tem sua importância definida de maneira oposta àquela apresentada pelo protocolo OSI. O modelo TCP/IP é pouco utilizado, contrastando com a importância do modelo OSI. Por outro lado, os protocolos baseados no modelo TCP/IP são muito utilizados, o que não se observa para os protocolos baseados no modelo OSI. O modelo de referência TCP/IP tem sua origem associada aos primórdios da internet, mais especificamente a ARPANET. Como vimos anteriormente, a ARPANET é a rede ancestral da internet, que foi desenvolvida a partir da integração entre redes, principalmente, acadêmicas. À medida que a escala da ARPANET crescia, cresciam, também, os problemas de padronização entre as diferentes redes. Assim, devido a necessidade de integração e padronização foi criado o que hoje conhecemos como modelo de referência TCP/IP. Veja na Figura 2.3 um comparativo entre as camadas dos modelos OSI e TCP/IP. Figura 2.3 Comparação entre os modelos OSI e TCP/IP Fonte: adaptado de TANENBAUM (2011). , 31 O modelo TCP/IP apresenta somente quatro camadas, sendo que a camada da aplicação substitui as camadas da aplicação, apresentação e sessão do modelo OSI e a camada host/rede do modelo TCP/IP substitui as camadas de enlace e física do modelo OSI. A camada inter-redes é responsável pela integração de redes sem conexões, assim, ela permite que os hosts insiram seus pacotes de dados em qualquer rede e assegura que esses pacotes irão trafegar, de maneira independente, até o seu destino. Assim como no sistema de correios, os pacotes são endereçados e inseridos na rede de maneira independente e simultânea, isso é possível por conta de um endereço IP (Internet Protocol) que é atribuído a todo host na rede. Além disso, a camada inter-redes é responsável por rotear os pacotes na rede e evitar o seu congestionamento. A camada de transporte é responsável por estabelecer e manter a conversação entre as entidades pares dos hosts de origem e destino. Essa camada implementa dois protocolos, o TCP (Transmission Control Protocol) que é orientado a conexões confiáveis e é responsável por fragmentar o fluxo de bytes e enviá-los para a camada inter-redes. Além disso, o TCP cuida do controle de fluxo de dados. Outro protocolo, implementado pela camada de transporte, é o UDP (User Datagram Protocol) que é um protocolo sem conexão e não confiável. Esse protocolo é utilizado quando a entrega de um determinado pacote de dados deve ser realizada de maneira imediata, mesmo que em detrimento da precisão. A camada da aplicação, assim como no modelo OSI, disponibiliza todos os protocolos de nível mais alto, importantes para o usuário, como o TELNET (terminal virtual), o FTP (transferência de arquivos) e o SMTP (correio eletrônico). Note que o TCP/IP não tem as camadas de sessão e de apresentação, pois são pouco utilizadas na maior parte das aplicações. Finalmente, a camada host/rede apresenta-se como um grande vácuo. O modelo de referência TCP/IP não especifica em detalhes o que ocorre nesta camada. A única especificação feita pelo modelo é que o host deve se conectar à rede por meio de algum protocolo, de modo que o host possa enviar pacotes IP pela rede. O protocolo , 32 referido não é especificado e pode variar em função do host ou da rede. Na literatura raramente há algum tipo de descrição mais detalhada a respeito da camada host/rede. 2.5 Padrões ISO e IEEE de redes de computadores Conforme discutido anteriormente, as redes de computadores originam-se em um contexto de heterogeneidade. Nesse sentido, um desafio importante é a busca de uma padronização que possibilite a comunicação entre redes com características diferentes. Existem diferentes organizações que trabalham no sentido de padronizar as redes de computadores, sendo as principais o IEEE (Institute of Electrical and Electronics Engineers), o ANSI (American National Standards Institute) e a ISO (International Organizations for Standardization). No contexto das redes locais, o IEEE 802 é o padrão mais importante, o qual foi adotado como base padrão a elaboração do padrão ISO 8802. O IEEE 802 teve início no ano 1980 e seu objetivo era a definição de padrões para as redes locais (LAN) e metropolitanas (MAN), focando, inicialmente, as camadas física e de enlace, descritas pelo modelo OSI. O padrão IEEE 802 apresenta uma importante característica que é o desmembramento da camada de enlace, do modelo OSI, em duas subcamadas; o controle de enlace lógico (LLC) e o controle de acesso ao meio (MAC). Desse modo, o mecanismo considerado para o acesso ao meio é independente do processo considerado para o enlace lógico entre os hosts. Com isso o padrão apresentado para o enlace lógico pode ser aplicado a diferentes tipos de redes. O projeto IEEE 802 é bastante amplo e abarca uma série de padrões especializados para redes de computadores. Veja na Tabela 2.1 a composição completa do projeto IEEE 802. , 33 Tabela 2.1 Projeto IEEE 802 Padrão Aplicação 802.1 Interface de alto nível 802.1Q LANs com pontes virtuais (VLAN) 802.2 Controle de link lógico 802.3 CSMA/CD 803.3µ Ethernet rápida 802.3x Full Duplex 802.3z Gigabit Ethernet 802.4 Barramento de passagem de token 802.5 Anel de passagem de token 802.6 Rede de Área Metropolitana 802.7 Grupo Consultivo Técnico de Banda Larga 802.8 Grupo Consultivo Técnico de Fibra Ótica 802.9 Redes Integradas de Voz e Dados 802.9a IDoENET 802.10 Segurança de rede 802.11 LANs sem fio 802.15.4 Redes de área pessoal sem fio de baixa taxa Fonte: Compartilhando. Disponível em: <http://jkolb.com.br/padroes- ieee-802/>. Acesso em 29 jan. 2021. Conclusão Caro estudante, neste bloco analisamos as principais características físicas das redes de computadores, desde a forma pela qual as informações são transmitidas entre os computadores na rede até os padrões utilizados para a padronização da comunicação entre redes heterogêneas. Além disso, vimos outra forma de classificação de redes de computadores, muito relevante no âmbito de aplicações corporativas. Do ponto de vista do hardware, , 34 estudamos os canais de comunicação de dados, explorando suas características, vantagens e desvantagens. Finalmente, conhecemos os modelos fundamentais de protocolos de comunicação em redes. No próximo bloco vamos nos aprofundar no estudo dos protocolos de comunicação, mais especificamente, trataremos do protocolo IP, muito importante para a identificação de hosts em redes de computadores. REFERÊNCIAS COMER, D. E. Redes de Computadores e Internet. Porto Alegre: Bookman, 2016. (e- book). FOROUZAN, B. A. Comunicação de Dados e Redes de Computadores. Porto Alegre: Bookman, 2010. (e-book) Compartilhando. Disponível em: <http://jkolb.com.br/padroes-ieee-802/>. Acesso em 29 jan. 2021. MENDES, D. R. Redes de computadores: teoria e prática. São Paulo: Novatec Editora, 2020. TANENBAUM, A. S; WETHERALL, D; Redes de Computadores. São Paulo: Pearson Prentice Hall, 2011. , 35 3 PROTOCOLO IP E PADRÕES DE REDE Prezado estudante, como discutimos anteriormente, no nível mais baixo do processo de transmissão de dados digitais, são transmitidos sinais que representam estados informação é transformada em sequências binárias de modo que seja possível enviá- las a partir de algum meio de transmissão. O processo de transformação de alguma informação, seja ela um texto, uma imagem ou um som, em uma sequência de bits, deve ser conhecido e aplicado da mesma forma pelo emissor e pelo receptor da mensagem ou informação. Esse acordo sobre a transformação da informaçãoentre os envolvidos no processo de transmissão é chamado de protocolo (FOROUZAN, 2010). Além do processo de transformação da informação, um protocolo de comunicação define um conjunto de parâmetros que serão utilizados para a preparação, controle e verificação de erros no envio de dados via rede de computadores. Neste bloco, trataremos especificamente de aspectos relativos ao protocolo de internet, ou Internet Protocol IP, que é utilizado para a identificação de hosts em uma rede. Além disso, vamos analisar o processo de roteamento de informações em uma rede de computadores, ou seja, a forma pela qual são definidos os caminhos entre o emissor e o destinatário para o envio de dados. 3.1 Endereçamento de Internet Protocol IP de máquina Considerando a Internet como um conjunto de sub-redes conectadas entre si, via backbones compostos por linhas de grande capacidade de transmissão (largura de banda) e roteadores muito rápidos, o IP é responsável por manter a união da Internet (CORMER, 2016). , 36 A transmissão de dados via Internet, por exemplo, não é feita de forma contínua e linear. O conjunto de bits é decomposto em subconjuntos menores, chamados de datagramas. Esses datagramas são roteados, de maneira independente, da origem até o destino, percorrendo diferentes caminhos. Os datagramas IP, ilustrados na Figura 3.1, são compostos por um cabeçalho e por uma parte de texto. O cabeçalho de um datagrama IP é composto pelos seguintes elementos ou campos: Version: indica a versão do protocolo, por enquanto vamos considerar a versão IPv4 para a descrição inicial; IHL: informa o tamanho do cabeçalho em palavras de 32 bits, visto que esse tamanho não é fixo; Type of service: define as diferentes classes de serviço podendo referenciar combinações de confiabilidade e segurança; Total length: descreve o tamanho do datagrama completo, incluindo o cabeçalho e os dados; Identification: os datagramas podem ser roteados de forma segmentada, o campo identification permite ao host de destino identificar os fragmentos de um mesmo datagrama; DF (D : campo de um bit que informa aos roteadores que o datagrama não deve ser fragmentado; MF (More Fragments): campo de um bit que indica se o fragmento é o último ou não; Fragment offset: informa a que ponto do datagrama atual um determinado fragmento pertence; , 37 Time to live: é um contador que determina a vida útil de um fragmento, se, por algum motivo, um fragmento se perde pela rede, o contador é zerado e um aviso é enviado à origem do datagrama; Protocol: quando todo o datagrama é recomposto no destino, é preciso definir o que se fazer com ele. O campo protocol define para qual processo de transporte o datagrama deve ser enviado, por exemplo, o TCP ou o UDP; Header checksum: confere a integridade do cabeçalho identificando erros no processo de transmissão; Source address: indica o número da rede; Destination address: indica o número do host; Options: permite que informações não contempladas no protocolo original sejam incluídas. Figura 3.1 Cabeçalho IPv4 Fonte: adaptado de TANENBAUM (2011). , 38 3.2 Cálculo de endereços IP Os roteadores e hosts na Internet possuem um endereço específico de IP, esses endereços identificam, respectivamente, seu número de rede e de host. Inicialmente, os endereços IP foram divididos em cinco categorias distintas (CORMER, 2016). Os IPs são números de 32 bits escritos em notação decimal e cada sequência de quatro bytes representa um valor entre 0 e 255. Os endereços da classe A são as séries de 32 bits que iniciam com o Essa classe permite até 128 redes com 16 milhões de hosts cada, visto que o primeiro bit identifica a classe, os demais sete bits identificam a rede e os três bytes restantes identificam hosts. A classe B é composta por séries de 32 bits qu Essa classe pode identificar 16.384 redes com mais 65 mil hosts cada. Para essa classe, os dois primeiros bits da série identificam a própria classe, os 14 bits seguintes identificam a rede e os dois bytes restantes identificam os hosts. Essa classe pode referenciar dois milhões de redes com até 256 hosts cada. Essa classe de endereços reserva os 21 bits iniciais para identificar as redes e um byte para identificar os hosts. Veja na Figura 3.2 uma ilustração sobre estes formatos. , 39 Figura 3.2 Formatos de endereços IPv4 Fonte: adaptado de TANENBAUM (2011). Nesse contexto inicial, a classe A concentra os endereços de 1.0.0.0 até 127.255.255.255, a classe B varia de 128.0.0.0 até 191.255.255.255, os endereços da classe C variam de 192.0.0.0 até 223.255.255.255, a classe D reúne os endereços entre 224.0.0.0 até 239.255.255.255 e, finalmente, a classe E concentra os endereços no intervalo de 240.0.0.0 até 255.255.255.255. No contexto das redes de computadores utiliza-se o termo sub-rede para a definição de duas ideias distintas. Vimos que uma sub-rede é o conjunto de roteadores juntamente com as linhas de transmissão. Outra ideia, expressa pelo termo sub-rede, é a referência às redes Ethernet que são componentes integrantes da Internet. Nesse ponto, utilizaremos o termo sub-rede para referenciar uma rede local. Um problema que surgiu com o tempo foi a expansão das sub-redes em diferentes ambientes. Por exemplo, uma universidade poderia contar com uma sub-rede para um determinado departamento e, devido a criação de outros departamentos ou do interesse de departamentos já existentes em compor a rede, os limites de expansão da sub-rede logo são atingidos. A solução para o problema poderia ser obtida pela obtenção de um novo endereço IP, porém, os endereços são muitos escassos e, considerando a classe B, a universidade já , 40 contava com endereços suficientes para referenciar mais de 60 mil hosts. Outra solução, mais viável, foi obtida a partir da utilização de máscaras de sub-redes. Uma máscara para sub-rede consiste na divisão do endereço IP em três partes distintas, a primeira referenciando a rede e, a partir da segmentação dos bits reservados para a identificação do host, reservar alguns bits para identificar a sub-rede interna e os demais para os hosts. Note que, para o mundo exterior, há uma única rede, que é subdividida internamente. Considere os seguintes exemplos de endereços IP que utilizam máscaras de sub-redes. Sub-rede 1: 10000010 00110010 00000100 00000001 Sub-rede 2: 10000010 00110010 00001000 00000001 Sub-rede 3: 10000010 00110010 00001100 00000001 Os bits, destacados em vermelho nos endereços IP anteriores, referem-se à rede. Veja que os pacotes de dados externos serão roteados para essa mesma rede. Os bits, destacados em azul, representam uma organização interna, não observável externamente, e indicam uma sub-rede interna. Deste modo, os pacotes podem ser roteados, internamente, para a sub-rede de destino. Por fim, os bits destacados em verde, referem-se a um host na sub-rede específica. Veja que, no exemplo, todos os hosts podem ter o mesmo número, visto que pertencem a sub-redes distintas. 3.3 O que é o IPv6 Atualmente, o IPv4 não é suficiente para contemplar a magnitude da Internet. A organização dos endereços IP em classes gerou um desperdício de endereços, particularmente para os endereços que compõem a classe B. A grande adesão das organizações pela classe B se deve ao fato que a classe A referência poucas redes e muitos hosts, por outro lado, a classe C pode identificar muitas redes e poucos hosts. Intuitivamente, a classe B parece aquela que mais equilibra a proporção entre redes e hosts. , 41 A estratégia utilizada para a escolha da classe B resultou em um grande número de endereços que não são utilizados. Estudos realizados sobre o assunto mostram que a maior parte das organizações possui até 50 hosts, o que deixaum grande volume de endereços não utilizados. Diferentes soluções foram implementadas no sentido de resolver a subutilização dos endereços IP e o seu consequente esgotamento. No entanto, uma solução definitiva só é possível a partir da criação de uma nova forma de endereçamento na rede. Neste contexto, em 1990, iniciaram-se os trabalhos para o desenvolvimento de uma nova versão do IP que fosse capaz de resolver os vários problemas observados com o IPv4 (CORMER, 2016). Este novo protocolo deveria atender aos seguintes requisitos: Atender bilhões de hosts; Permitir tabelas de roteamento menores; Agilidade no processamento dos pacotes pelos roteadores, a partir da simplificação do protocolo; Aumentar a segurança no tráfego de dados; Oferecer uma diferenciação a partir dos tipos de serviço; Suportar multidifusão; Permitir a mobilidade do host sem a alteração do endereço; Ser flexível às evoluções futuras; Coexistir com os protocolos antigos por um longo período. O protocolo IPv6 foi baseado em duas propostas combinadas que foram publicadas na IEEE Network, as quais originaram no SIPP (Simple Internet Protocol Plus). Esse novo protocolo atendia todos os requisitos estabelecidos e era compatível com todos os protocolos auxiliares da Internet. , 42 O IPv6 possui endereços com 16 bytes, oferecendo um número ilimitado de endereços. Outra evolução foi a simplificação do cabeçalho, que conta apenas com sete campos, melhorando a capacidade de processamento dos pacotes de dados pelos roteadores. Inicialmente, o protocolo IPv6 resolveu o problema de segurança na Internet por meio de autenticação e privacidade, essa característica foi, posteriormente, incorporada ao protocolo IPv4. Conforme destacado anteriormente, o cabeçalho do protocolo IPv6 conta com uma quantidade de campos reduzida. A seguir, são destacados os campos que compõem o cabeçalho e suas respectivas funções: Version: define o protocolo para que o roteador determine o tipo de pacote correspondente, visto que os protocolos IPv4 e IPv6 irão coexistir por algum tempo; Traffic class: diferencia os requisitos de entrega dos pacotes de dados; Flow label: utilizado para a configuração de uma pseudoconexão entre a origem e o destino, definindo, por exemplo, uma largura mínima de banda que deve ser considerada para a transmissão dos dados; Payload length: define o número de bytes que compõe o pacote, exceto o cabeçalho que tem um tamanho fixo de 40 bytes; Hop limit: similar ao campo time to live do protocolo IPv4, com ajustes para a representação fiel ao processo de decrementação; Source address: endereço de 16 bytes da origem da transmissão, esse endereço é representado por oito grupos de quatro dígitos hexadecimais; Destination address: endereço de 16 bytes do destino da transmissão, esse endereço é representado por oito grupos de quatro dígitos hexadecimais. A forma pela qual o IPv6 referência os hosts na Internet pode resultar em uma representação composta por muitos zeros. Por conta disso, os endereços podem ser representados de maneira otimizada, omitindo os zeros à esquerda dentro de um , 43 grupo de quatro dígitos. Outra otimização considerada é a omissão de grupos compostos somente por zeros. Veja um exemplo de endereço IPv6 sem otimização na representação: 8000:0000:0000:0000:0123:4567:89AB:CDEF. Considere, agora, o mesmo endereço sendo representado a partir das otimizações definidas para o protocolo: 8000::123:4567:89AB:CDEF. Note que os três grupos formados somente por zeros foram substituídos por um par de sinais de dois pontos. Além disso, o quinto grupo foi representado sem o zero mais à esquerda. Tendo em vista que o novo protocolo possibilita a coexistência com o IPv4, os pacotes de dados, que consideram este último, têm o endereço representado no formato usual, mas, é adicionado um par de sinais de dois pontos no início do endereço, conforme exemplo abaixo. ::192.31.20.46. Para se ter uma ideia da potencialidade de representação do protocolo IPv6, é possível fornecer 7x1023 endereços por metro quadrado para toda a superfície terrestre, incluindo terra e água. Essa observação é válida para concluir que o esgotamento do número de endereços IPv6 é muito remota. A fartura de endereços IPv6, disponíveis para referenciar hosts, está na base de outra evolução no campo da Internet. Outros tipos de devices, que não apenas os computadores, podem receber um endereço IPv6 e, assim, conectarem-se à Internet. Essa possibilidade está em franca expansão e é conhecida como Internet das Coisas, ou IoT (Internet of Things). Nessa nova etapa, é possível conectar qualquer dispositivo à Internet, como, por exemplo, eletrodomésticos e sensores. , 44 3.4 Utilizando um roteador Conforme discutimos anteriormente, a Internet é um conjunto de redes de computadores que são interligadas entre si. O elemento de interligação entre as redes é chamado de roteador. O papel de um roteador é receber um pacote de dados, verificar seu endereço de destino, calcular o próximo salto (hop) que deixará o pacote mais próximo do seu destino e enviar o pacote para o próximo salto. Veja que, a partir de um roteador, existem diferentes caminhos possíveis para o envio do pacote de dados. Assim, cabe ao roteador indicar qual é o melhor caminho que deve ser utilizado (MENDES, 2020). Para executar sua função, um roteador conta com dois elementos fundamentais: as tabelas de roteamento e os protocolos de roteamento. As tabelas de roteamento são conjuntos de registros de endereços de destino associados à quantidade de saltos necessária para chegar até esse destino. Os protocolos de roteamento definem a forma pela qual os pacotes de dados serão roteados e, por consequência, definem o conteúdo das tabelas de roteamento. Há uma diferença sutil, mas importante, entre rotear e encaminhar pacotes de dados pelas redes. O processo de encaminhamento consiste em tomar uma decisão a respeito de qual rota deverá ser utilizada. Essa decisão é baseada no conteúdo das tabelas de roteamento. O roteamento, ou os algoritmos de roteamento, consiste na atualização das tabelas que serão utilizadas para o encaminhamento dos pacotes de dados. Os algoritmos de roteamento devem atender à algumas propriedades importantes (TANENBAUM, 2011). As primeiras propriedades são elementares e autoexplicativas, o algoritmo deve ser correto e simples, ou seja, devem atender às características de correção e simplicidade. Outra propriedade, menos óbvia, é a robustez. Espera-se que uma rede funcione continuamente durante muito tempo, sem que haja algum tipo de falha na entrega dos pacotes. Porém, é natural que ocorram falhas de hardware e de software durante o tempo de operação da rede, o que alterará a topologia da rede. Assim, um algoritmo de roteamento robusto é aquele que mantém a operação em , 45 funcionamento, mesmo que haja uma falha em algum roteador. O algoritmo deve ser capaz de encontrar rotas alternativas, sem que haja a necessidade de reiniciar toda a rede. Outras características importantes para os algoritmos de roteamento são a estabilidade, a equidade e a otimização. Existem duas classes principais de algoritmos de roteamento. Os algoritmos não adaptativos não consideram o tráfego na rede nem a topologia no momento da transmissão de pacotes. Esse tipo de algoritmo realiza o cálculo da rota previamente e, no momento do envio dos pacotes, é transferida para os roteadores. Os algoritmos de roteamento adaptativos são aqueles que mudam as rotas de acordo com o tráfego observado e a topologia da rede. Nesse caso, as decisões sobre as rotas que serão consideradas são tomadas à medida que o tráfego ou a topologia da rede muda. Um algoritmo de roteamento é responsável por encontrar as rotas ótimas entre os roteadores em uma sub-rede. Umarota ótima é aquela que apresenta o menor número de enlaces entre os roteadores de origem e destino. O conjunto de todas as rotas ótimas entre todas as origens e um destino específico é denominado de árvore de escoamento. A Figura 3.3 apresenta um exemplo de árvore de escoamento (b) em que todos os roteadores (origem), representados por vértices, estão conectados ao roteador B (destino). Note que a sub-rede (a) possui muitos enlaces entre os roteadores e a árvore de escoamento possui somente aqueles enlaces que formam um caminho mínimo entre as origens e o destino. , 46 Figura 3.3 Exemplo de sub-rede (a) e de uma árvore de escoamento para o roteador B (b) Fonte: adaptado de TANENBAUM (2011). Existem diferentes algoritmos de roteamento. O roteamento pelo caminho mais curto consiste na criação de um grafo da sub-rede, ou seja, uma estrutura onde o número de enlaces é o menor possível de modo que se mantenha a conexão entre todos os roteadores. Veja que o número de enlaces entre um par de roteadores é, também, o menor possível. A escolha do menor caminho em uma sub-rede pode ser feita a partir de diferentes características. Se o objetivo for minimizar o número de enlaces, entre dois roteadores, seleciona-se o caminho de modo que haja o menor número de enlaces possível. Por outro lado, se o objetivo for minimizar a distância percorrida, é possível selecionar caminhos com mais enlaces, desde que a distância seja mínima. Por exemplo, do ponto de vista do número de enlaces, o caminho ABC tem o mesmo distância geográfica e supondo que a Figura 3b é representada em escala, o caminho ABC é mais longo que o caminho ADH. De forma geral, é possível considerar as seguintes medidas para o roteamento: a distância, a largura de banda, o tráfego médio, o custo da comunicação, o comprimento médio da fila, o retardo medido, dentre outras possibilidades. Note que, o algoritmo pode calcular o caminho mais curto considerando qualquer uma dessas medidas ou uma combinação entre elas. , 47 O algoritmo de Dijkstra é um dos algoritmos utilizados para a identificação do caminho mais curto entre dois vértices. Considere o grafo, representado na Figura 3.4 a, o qual descreve uma sub-rede onde os vértices representam os roteadores e as arestas ponderadas representam os enlaces. Suponha que os valores que acompanham as arestas são as distâncias entre os vértices. O objetivo, nesse exemplo, é identificar o menor caminho entre os vértices A e D. O passo inicial é a marcação do vértice A, evidenciando que ele compõe o caminho mínimo. O próximo passo, identificado na Figura 3.4 b, é a verificação de todos os vértices adjacentes ao vértice A, ou seja, os vértices B e G. Veja que esses vértices adjacentes são identificados com a respectiva distância a partir do vértice A. Figura 3.4 Os passos iniciais para o cálculo do caminho mais curto de A até D Fonte: adaptado de TANENBAUM (2011). Existem dois caminhos possíveis a partir de A, AB com custo igual a dois e AG com custo igual a seis. Assim, como estamos interessados no menor caminho, selecionamos o vértice B que apresenta menor custo. Repetiremos o passo anterior, agora a partir do vértice B, para o qual existem os adjacentes C e E. Veja que o custo acumulado no , 48 vértice B é igual a dois, esse custo deve ser somado ao custo das arestas candidatas, ou seja, BC tem custo acumulado igual a nove e BE tem custo acumulado igual a 4, então o vértice selecionado será o E. A partir do vértice E, na Figura 3.4 c, existem dois adjacentes que serão rotulados com os custos das respectivas arestas. Note que neste ponto ocorre uma atualização no caminho para chegar em G. Anteriormente, o menor caminho para G era a partir de A, com um custo igual a seis. Porém, é possível notar que a partir de E o custo é igual a cinco, o que é menor que o custo anterior e, assim, o vértice G é atualizado, veja a Figura 3.4 d. O processo se repete até que todos os vértices sejam rotulados com a distância até o vértice origem A e o antecessor utilizado. O registro do antecessor é importante para que o caminho possa ser refeito posteriormente. 3.5 Simuladores de rede de computadores Um simulador é um sistema baseado em software ou hardware que tem como objetivo auxiliar na análise de um determinado problema, considerando uma escala menor. No contexto das redes de computadores, os simuladores possibilitam a representação de equipamentos físicos reais. Os simuladores são capazes de reproduzir as características dos dispositivos de redes reais, com o objetivo de realizar experimentos sobre o funcionamento da rede. Como vantagem, o uso de simuladores permite inferir características reais do sistema simulado. Existem diferentes simuladores de redes de computadores, como, por exemplo, (i) o Cisco Packet Tracer, (ii) o NS2, (iii) o NS3, (iv) o Castalia, (v) o OMNET++ e (vi) o OPNET. Os simuladores são especialmente úteis nas etapas iniciais de desenvolvimento de projetos de redes, possibilitando a averiguação de requisitos do sistema antes mesmo de sua materialização. Além disso, os simuladores podem ser considerados para a análise de mudanças em sistemas existentes. , 49 Como exemplo, o Cisco Packet Tracer é um simulador desenvolvido pela Cisco Systems e possibilita a visualização das topologias física e lógica de uma rede de computadores. Além disso, é possível criar demonstrações do tráfego de pacotes na rede e sobre o funcionamento de diferentes protocolos. O Cisco Packet Tracer permite a visualização de cabeçalhos de pacotes de dados e a reprodução do processo de configuração de dispositivos de rede reais. Conclusão Caro estudante, neste bloco discutimos a respeito das principais características do protocolo IP, contrastando as versões 4 e 6 deste protocolo. Vimos que a lógica para a utilização do IPv4 resultou no esgotamento dos endereços desta versão e que o IPv6 resolveu esse problema com uma estratégia de endereçamento que dificilmente se esgotará. Além disso, analisamos o papel dos algoritmos de roteamento, mais especificamente sobre o funcionamento do algoritmo de Dijkstra. Vimos como é possível identificar o menor caminho entre dois roteadores em uma sub-rede, representada na forma de um grafo. No próximo bloco, trataremos a respeito das redes de longa distância e os aspectos de gerenciamento de redes. Adicionalmente, discutiremos a respeito do processo de certificação na área de redes de computadores. REFERÊNCIAS COMER, D. E. Redes de Computadores e Internet. Porto Alegre: Bookman, 2016. (e- book). FOROUZAN, B. A. Comunicação de Dados e Redes de Computadores. Porto Alegre: Bookman, 2010. (e-book). , 50 MENDES, D. R. Redes de computadores: teoria e prática. São Paulo: Novatec Editora, 2020. TANENBAUM, A. S; WETHERALL, D. Redes de Computadores. São Paulo: Pearson Prentice Hall, 2011. , 51 4 REDES DE COMPUTADORES NO MERCADO CORPORATIVO Caro estudante, neste bloco vamos analisar as redes de computadores em um contexto corporativo. Assim, vamos nos aprofundar nas características das redes de computadores que impactam as organizações. Esses impactos podem ser analisados por diferentes pontos de vista, especialmente no âmbito dos processos de negócio. Inicialmente, as redes de longa distância são nosso objeto de estudo. Vamos analisar suas características e aplicabilidade, principalmente, no contexto corporativo. Adicionalmente, serão apresentados os principais conceitos inerentes ao gerenciamento de redes de computadores. As redes de fornecimento de conteúdo, ou CDN (Content Delivery Network), são sistemas de computadores interligados, via Internet, que tem como objetivo fornecer conteúdo aos usuários de maneira transparente. Esse
Compartilhar