== Redes de Computadores e Internet .Objetivos do capítulo ____ Ao final deste capítulo você deverá ser capaz de: * Apresentar a utilidade das redes de computadores * Apresentar a rede mundial de computadores, a Internet * Apresentar os componentes de hardware e software que compõem as redes de computadores * Introduzir o conceito de protocolos de redes * Apresentar alguns serviços da Internet ____ Imaginem um computador sem acesso aos recursos da Internet. Os 'tablets' da moda seriam apenas leitores digitais, os 'smartphones' seriam apenas telefones iguais aos orelhões da esquina. A Internet dá ``vida'' ao trazer informações, diversão, serviços entre outros, de locais remotos em frações de segundos para uma máquina cujo objetivo original é calcular. A possibilidade de conectar vários computadores resulta em tantos benefícios que se tornou uma das áreas de maior crescimento no mercado de microcomputadores. Uma rede de computadores é formada por um conjunto de módulos processadores capazes de trocar informações e compartilhar recursos interligados por um sistema de comunicação. Estes módulos processadores (computadores) comunicam-se de duas maneiras importantes: por meio de modens e de placas deredes. Os modens permitem que os computadores usem linhas telefônicas ou conexões celulares para trocarem dados, ao passo que as redes conectam os computadores diretamente, seja por intermédio de fios especiais ou de alguma forma de transmissão sem fio. Nas empresas, universidades, escolas e em muitos tipos de organização, as redes de computadores de todos os tipos oferecem tremendos benefícios: // FIXME Ajustar as listas abaixo: Compartilhamento de informação:: vários funcionários precisam acessar os mesmos dados simultaneamente. Aqui, entra a questão de integridade dos dados, e os funcionários mantém cópias separadas em seus discos pessoais, e haverá um problema na atualização dos mesmos, gerando inconsistência nos dados. Compartilhamento de recursos:: talvez o maior incentivo para as empresas pequenas ligarem seus computadores em rede seja o compartilhamento de dispositivos periféricos, especialmente os de custo elevado, que podem ser utilizados ocasionalmente por cada funcionário individualmente. Prover comunicação entre pessoas:: uma das principais evoluções geradas pelas redes de computador está na área das comunicações pessoais, através de inúmeras aplicações as distâncias diminuíram, tornando muito mais acessíveis à maioria da população, a exemplo do 'email', redes sociais, bate-papo e conferência de áudio e vídeo. Neste capítulo iremos abordar os princípios básicos das redes de computador e a famosa Internet. === Internet A Internet caiu no domínio público em meados da década de 1990. A taxa de crescimento de sites e usuários pode ser descrita como algo sem precedentes na história das mídias de comunicação. Mas o efeito sobre a vida das pessoas é, e será ainda mais impressionante. O comércio eletrônico está crescendo. Pessoas atarefadas podem fazer seu supermercado pela tela de um navegador ('browser'). Segundo algumas estimativas, as tecnologias da informação e o desenvolvimento baseado na Internet foram responsáveis por mais da metade do crescimento econômico dos Estados Unidos na década de 90. A principal característica da Internet é trazer para si (convergência) funções e atividades que estavam consolidadas por outras mídias ou sistemas, como por exemplo, o fato do correio ter deixado de ser usado como mecanismo de comunicação pessoal, já que mais simples é a utilização do 'email'. As transações bancárias já são efetuadas, em grande parte, na Internet. As operadoras de telefone tentam impedir a popularização do VOIP (voz pela internet), pois iriam prejudicar seus lucros, uma vez que os usuários poderiam telefonar entre si sem custos adicionais, pagando somente a taxa fixa do acesso a internet. E a próxima mídia nos olhares da Internet é a TV. Certamente, o futuro da TV não está no VHF ou UHF (sinais de 'broadcast'), mas sim em uma TV personalizada e acessível pelo computador, utilizando o IP (IPTV) como protocolo de comunicação. ==== O que é a Internet? Podemos defini-la como uma rede mundial de computadores, que interconecta milhões de equipamentos computacionais. Entretanto, atualmente dispositivos como 'smartphones', 'tablets', geladeiras, carros, impressoras, entre outros, se conectam à Internet, tirando um pouco a corretude deste termo ``redes de computadores''. Sendo assim, um termo mais correto para os dispositivos da Internet seria *sistemas finais* ou *hospedeiros*. Os *((sistemas finais))* incluem os clientes de algum serviço, ou os servidores deste serviço que se interligam por meios de acesso de diversas tecnologias, a exemplo do cabo, fibra ótica e rádio, sendo cada uma delas diferente na velocidade de transmissão, que tem como unidade básica os bits por segundo. Seria impossível que cada sistema final se ligasse a todos os outros sistemas finais através de enlaces individuais. Até 2003 existiam 233 milhões de sistemas finais, imaginem o número de possíveis ligações entre eles. [NOTE] ==== Nas antigas centrais telefônicas analógicas, quando um usuário telefonava para outro, as centrais conectavam os circuitos intermediários entre os dois usuários para estabelecer a comunicação. Você pode imaginar que se formava um grande fio (um ((enlace)) individual) ligando os dois usuários, que se mantinha *reservado* para eles durante toda a realização da ligação (inclusive nos momentos de silêncio, onde não há informação útil sendo enviada). Nenhum outro usuário tinha acesso à linha enquanto eles estivessem ocupando-a. Nas centrais digitais as vozes são convertidas em bits e enviados em *((pacotes))* (conjunto de bits). Um enlace possibilita transmitir pacotes de usuários diferentes, possibilitando atender mais usuários simultaneamente, sem degradar o serviço de voz oferecido pela operadora. ==== [[fig_redes1]] .Rede de sistemas finais interligado por ISPs. image::images/redes/ISPs.png[scaledwidth="70%"] Na internet, ao invez de interligar os sistemas finais de forma direta (como nas centrais telefônicas analógicas), existem dispositivos computacionais intermediários conhecidos como *((comutadores))* de pacotes. Podemos observar esta interligação entre os dispositivos na <>, que é responsável por encaminhar mensagens recebidas em um enlace de entrada para outro enlace de saída que se liga ao destino. As mensagens enviadas na rede são chamadas de pacotes e os comutadores de pacotes são chamados de *((roteadores))* (ou 'switches'), que são dispositivos melhor elaborados com algoritmos específicos para criação de rotas durante a comunicação de pacotes em uma rede. A *((rota))* ou caminho, é um conjunto de enlaces de acesso entre o sistema final emissor do pacote e o sistema final receptor. Vários pacotes de distintas rotas podem passar pelo mesmo comutador de pacotes ao mesmo tempo devido à técnica adotada pela Internet de comutação de pacotes desenvolvida na década de 70. Todo sistema final precisa de um provedor de acesso à Internet, chamado Provedor de Serviço de Internet (Internet Service Provider - ISP), que faz o papel de primeiro comutador de seus pacotes. Existem vários tipos de ISPs, os residenciais como IG e provedores locais de TV a cabo ou rádio, ISPs de universidade públicas, no Brasil provido pela Rede Nacional de Pesquisa (RNP) entre outros. A <> traz uma possível configuração de ISPs e seus sistemas finais interligados por *((enlaces))* de acesso e concentrados pelos *((comutadores))* de pacotes. Cada ISP é gerenciado de forma independente, executa as regras do protocolo IP obedecendo à convenções na atribuição de endereço IP e nome de cada sistema final. Tanto os sistemas finais quanto os comutadores de pacotes devem seguir os protocolos (<>) da Internet para controlar o envio e recebimento dos pacotes. O conjunto de protocolos TCP/IP são os mais importantes da Internet, sendo o protocolo IP responsável pelo funcionamento do *((encaminhamento))* dos pacotes pelos roteadores através do tratamento dos endereços de cada sistema final conectado na rede. [[sec_protocolo]] ==== Protocolo Computadores, placas de redes, fios de cobre, roteadores, todos são dispositivos físicos que compõem uma rede, entretanto, igual ao corpo humano, estes dispositivos precisam de uma consciência para torná-los úteis. Podemos chamar esta ``consciência'' de protocolos de rede, ou protocolos de Internet. Kurose define um protocolo como: ____ Um protocolo define o formato e a ordem das mensagens trocadas entre duas ou mais entidades comunicantes, bem como as ações realizadas na transmissão e/ou recebimento de uma mensagem ou outro evento. ____ Todas as atividades na rede que envolvam duas entidades comunicantes (hospedeiros e/ou comutadores de pacotes) remotos são governadas por um protocolo. Para a comunicação de uma sequência de bits através de um fio de cobre, entre duas placas de rede contidas em dois computadores que se comunicam, há a necessidade da implementação de protocolos de comunicação em seus hardwares, permitindo assim a codificação/decodificação da informação durante a transmissão no meio físico. Existem diversos outros protocolos com funções distintas, protocolos de controle de congestionamento que controlam a taxa com que os pacotes são transmitidos, evitando assim o congestionamento nos comutadores de pacotes. Os protocolos contidos nos roteadores determinam as rotas de um pacote de sua fonte a seu destino. Alguns protocolos são simples e diretos enquanto outros possuem uma complexidade devido a vários possíveis estados em que a comunicação pode se encontrar. A Internet e as redes de computadores fazem uso intenso de protocolos com diferentes tarefas durante a comunicação, dando ``vida'' aos equipamentos nelas contidos. ===== Comunicação em rede na sala de aula Proponha em sala ou com grupo de estudos uma atividade para estimular o conceito de protocolo através da comunicação de mensagens. Com isto, vocês terão a oportunidade de executar as atividades do roteador e dos 'hosts' de origem e destino. Massificando suas funções, regras de comunicação, problemas encontrados com o roteador, soluções para problemas como falha na entrega, pacotes fora de ordem e etc. Para esta atividade propomos a divisão da turma em grupos, que passamos a chamar de rede de alunos. A <> apresenta uma configuração com cinco redes cada uma contendo 5 alunos, sendo um intitulado roteador e identificado por R da sua rede e os outros quatro numerados de 1-4 dentro da sua própria rede. A quantidade de alunos em cada rede pode variar de acordo com o tamanho da turma. Como pode observar na <> a comunicação entre as redes só pode ser feita entre os alunos roteadores, pois estes devem ser os alunos que possuem o conhecimento dos outros alunos roteadores. A regra de conhecimento dos roteadores pode ser variada: todos os roteadores conhecem todos; apenas o roteador da rede C conhece os outros e os outros roteadores só conhecem o roteador C, permitindo assim, complicar um pouco o esquema de criação de rotas das mensagens. [[fig_redes3]] .Redes de comunicação entre alunos. image::images/redes/redes_roteamento.png[scaledwidth="70%"] Para trabalhar o conceito de protocolo das mensagens propomos a utilização de cartões como o apresentado na <>, trazendo no cabeçalho os dados a serem preenchidos pelos alunos emissores de mensagens e tratados pelos alunos roteadores e receptores de mensagem. O cartão proposto traz os dados de endereço de origem e destino, numeração da mensagem e conteúdo da mensagem, permitindo assim apresentar aos alunos os conceitos de criação de rotas, controle de recebimento ordenado das mensagens e resposta da mensagem ao emissor. [[fig_redes4]] .Formato do pacote contendo a mensagem entre os alunos. image::images/redes/mensagem.png[scaledwidth="70%"] Procure variar a função dos alunos durante a atividade, permitindo que todos tenham a chance de realizar o papel de cada elemento nesta rede de comunicação. Proponha que os alunos resolvam os seguintes problemas: * Roteador da rede B deixa de funcionar; * Chega um pacote ao destino com numeração superior à esperada; * Chega um pacote com endereço de destino errado a um aluno não roteador; * Quero ter certeza que minha mensagem chegou. === Tecnologias de Acesso e Meios de Comunicação ==== Tecnologias de Acesso As redes de acesso são a infraestrutura necessária para conectar os hospedeiros clientes ao seu primeiro roteador, denominado roteador de borda, permitindo assim que estes sistemas finais possam se comunicar com outros sistemas finais conectados na rede. ==== Acesso residencial A rede responsável pelo acesso de pessoas em suas casas à Internet, a tecnologia que a popularizou nos primórdios do acesso residencial foi o modem discado, dispositivo que modula e demodula informações binárias através de uma linha telefônica analógica, que utiliza o mesmo meio de acesso que o telefone residencial, sendo muito inconveniente devido ao uso não simultâneo do telefone, logo, a linha fica ocupada durante a conexão, além do alto custo cobrado por minuto como se fosse uma ligação comum. As ISPs provedores residenciais conseguiam devido à qualidade do fio de telefone (par trançado) uma velocidade de transmissão no máximo de 56kbps (kilobits por segundo). A tecnologia conhecida como banda larga, trouxe mais velocidade à transmissão e tirou a necessidade de dedicar a linha telefônica durante a transmissão. Existem, basicamente, dois tipos de tecnologia de acesso residencial por banda larga: linha digital de assinante (digital subscriber line - DSL) e cabo híbrido coaxial/fibra (hybrid fiber-coaxial cable - HFC). No mundo todo, desde 2003, estas tecnologias estão se popularizando, sendo seu preço ainda um empecilho para muitas famílias no Brasil. A tecnologia DSL foi inicialmente provida por companhias telefônicas e depois outras empresas se especializaram neste serviço (por exemplo, GVT ou Oi Brasil Telecom). O DSL também utiliza um modem para sua transmissão e também aproveita a linha telefônica já existente, entretanto, por restringir a distância ente o equipamento do cliente e seu ISP de acesso, permite velocidades mais altas de transmissão. As taxas de transmissão são assimétricas nas duas direções, sendo a velocidade maior para as informações que chegam no cliente e mais lentas para a transmissão do cliente ao ISP. Esta abordagem é possível, pois a maioria dos clientes são consumidores de informações e não produtores. Com estas duas abordagens a proximidade do cliente ao ISP e assimetria de transmissão, o DSL pode chegar a 10 Mbps do ISP ao seu cliente e de 1 Mbps no sentido inverso. ==== Acesso corporativo Empresas e universidades utilizam redes locais (LAN) interligando os sistemas finais a um roteador de borda. A principal tecnologia para redes LAN é o Ethernet que opera em 10Mbps, 100Mbps, 1Gbps e até 10 Gbps. A conexão dos sistemas finais se dá por pares de fios de cobre trançados ou via cabo coaxial. É de responsabilidade dos roteadores de borda o roteamento dos pacotes que tenham destino sistemas finais externos à instituição. ==== Acesso sem fio As tecnologias de rede sem fio ('wireless') permitem a conexão de dispositivos eletrônicos sem o uso de cabos. As distâncias variam de acordo com a tecnologia empregada e a potência dos dispositivos. As redes sem fio usam ondas de rádio para transmissão dos sinais. A tecnologia é padronizada pelo IEEE - 'Institute of Electrical and Electronics Engineers', uma associação técnica de profissionais de Engenharia Elétrica e Eletrônica dos Estados Unidos com membros de todo o mundo sob a identificação 802.11. Os equipamentos certificados de acordo com esta norma geralmente tem o selo Wi-Fi, que é uma marca registrada da Wi-Fi 'Alliance', associação de fabricantes. No Brasil os padrões são validados pela Anatel, que também homologa os equipamentos para uso no país. Os padrões IEEE 802.11 são identificados por letras e cada um deles define como as informações são codificadas para transmissão entre os equipamentos, as frequências e canais disponíveis para uso, e as velocidades de transmissão possíveis. O IEEE 802.11a, que trabalha com frequência de 5 Ghz e possibilita uma velocidade de transmissão de até 54 Mbps, este padrão não é comum nos equipamentos fabricados no país; IEEE 802.11g, que trabalha com frequência de 2,4 Ghz e possibilita uma velocidade de transmissão de até 54 Mbps e é o padrão mais utilizado em equipamentos Wi-Fi; o IEEE 802.11n, que tanto pode trabalhar a 2,4 Ghz como a 5 Ghz e possibilita, na configuração mais comum, velocidades de transmissão de até 150 Mbps. Existe ainda o padrão IEEE 802.11b, que trabalha com frequência de 2,4 Ghz e possibilita velocidades de transmissão de até 11 Mbps. A infraestrutura da rede compreende equipamentos de controle e pontos de acesso (AP – 'Access Point'). Os Aps são equipamentos que transformam os dados transmitidos pela rede comum, cabeada, em ondas de rádio. Ao contrário dos equipamentos domésticos, os 'Aps' não possuem a função de roteador, o que permite que vários equipamentos dispersos em uma instituição formem um único domínio de mobilidade. Esta característica técnica permite que seus usuários se movimentem dentro das áreas cobertas sem perda da conexão, como acontece com as redes de telefonia móvel. ==== Meios de Comunicação Quando falamos sobre armazenamento de dados, o termo meio significa o meio de armazenamento usado, por exemplo, os discos e pen drive. Mas na comunicação, meio refere-se ao fio, cabo e outros recursos usados pelos dados para viajar de sua origem para seu destino. ===== Fio de Par Trançado O fio de par trançado, ilustrado na <>, consiste em dois fios de cobre, envolvidos individualmente em plástico e depois entrelaçados um em torno do outro. Ele é comumente conhecido como fio telefônico. Devido ao seu baixo custo e ampla disponibilidade, o fio telefônico foi logo eleito o veículo de comunicação de dados no início das redes pessoais. Seu principal problema é a alta interferência a ruídos eletromagnéticos no meio. [[fig_redes5]] .Fio de Par Trançado image::images/redes/par_trancado.png[scaledwidth="30%"] ===== Cabo Coaxial O cabo coaxial, ilustrado na <>, é amplamente usado em TVs a cabo e há algum tempo suplantou o fio de par trançado como meio de conexão. Há dois condutores em um cabo coaxial. Um deles é um fio simples no centro do cabo, o outro é uma blindagem que envolve o primeiro cabo com um isolante no meio. Embora tenha o mesmo condutor do par trançado, o cabo coaxial, devido a sua proteção, consegue transportar mais dados. [[fig_redes6]] .Cabo Coaxial image::images/redes/coaxial.png[scaledwidth="80%"] ===== Cabo de Fibra Óptica É um fino fio revestido internamente de vidro que transmite raios de luz em vez de frequências elétricas. Como a luz viaja muito mais depressa do que a eletricidade, a velocidade de transmissão através de fibras ópticas é muito maior que os meios antecessores de transmissão. Um problema com a fibra é o trajeto físico do cabo, devido a sua parede interna ser composta de pedaços de vidro, o mesmo não deve se curvar muito, evitando assim uma reflexão do sinal à origem. Outra vantagem da fibra óptica é sua capacidade de isolamento a interferências eletromagnéticas, já que a luz não sofre influência das mesmas. ===== Conexões Sem Fio Com a popularização da comunicação de dados e a evolução dos dispositivos móveis (celulares, notebooks), houve um impulso na direção de meios mais flexíveis, com isso, criou-se vários tipos de conexões para comunicação sem fio. O meio utilizado neste tipo de conexão é o ar, e diferente dos outros meios vistos, a comunicação entre os computadores é realizada competindo com outros usuários deste meio, a exemplo do rádio, do telefone celular e etc. Por este motivo sua capacidade de transmissão é limitada. As microondas, que são um tipo de ondas de rádio, são muito usadas quando há necessidade de enviar dados para uma distância de vários quilômetros. Quando os elos de comunicação cobrem milhares de quilômetros, os satélites de comunicação podem entrar em ação. Como ilustrado na <>, os dados saem de um ponto da terra até o satélite e o mesmo repassa estes dados para outro ponto remoto na superfície da terra. [[fig_redes7]] .Transmissão Via Satélite image::images/redes/satellite.png[scaledwidth="30%"] === Topologia da Rede Topologia de rede é o layout físico dos fios que conectam os nós da rede. Há três topologias comuns: barramento linear, estrela e anel. ==== Barramento Linear A rede em barramento linear assim como o barramento do próprio computador, é um veículo a qual todos os nós e dispositivos periféricos da rede estão conectados entre si, como ilustrado na <>. Os nós transmitem dados e esperam que eles não colidam com os dados transmitidos pelos outros nós. Em caso de colisão, cada nó espera um determinado tempo pequeno e aleatório, e depois tenta retransmitir os dados. Apesar de ser uma das mais comuns, a topologia de barramento linear tem desvantagens inerentes. A prevenção e a correção das colisões requerem implementações de circuitos e software extra, e o rompimento de uma conexão pode fazer cair toda a rede. [[fig_redes8]] .Topologia de Barramento Linear image::images/redes/barramento.png[scaledwidth="30%"] ==== Estrela A rede em estrela coloca um hub (concentrador de conexões de rede) no centro dos nós da rede como ilustrado na <>. [[fig_redes9]] .Topologia Estrela image::images/redes/estrela.png[scaledwidth="30%"] Os dados são encaminhados por meio do hub central para os pontos de destino. Esse esquema tem a vantagem de que o hub monitora o tráfego impedindo colisões, e o rompimento de uma conexão não afeta o restante da rede. Se você perder o hub, porém, toda a rede cairá. ==== Anel A topologia de anel conecta os nós da rede em uma cadeia circular, cada nó é conectado ao nó seguinte, e o nó final da cadeia é conectado ao primeiro para fechar o anel. Esta topologia esta ilustrada na <>. [[fig_redes10]] .Topologia em Anel image::images/redes/anel.png[scaledwidth="30%"] Com essa topologia, cada nó examina os dados que estão sendo enviados pelo anel, e se os dados não estão endereçados ao nó que os está examinando, eles são enviados ao nó seguinte. A implementação da comunicação de dados nesta topologia utiliza o conceito de *token*, quem possui o token naquele momento é o responsável pela transmissão, impedindo com isso possíveis colisões. Se uma das ligações do anel cair, o sentido da comunicação pode ser invertido permitindo que a rede permaneça ativa. === Camadas de protocolos e seus serviços A arquitetura das redes de computador é formada por níveis, interfaces e protocolos. Cada nível oferece um conjunto de serviços através de uma interface ao nível superior, usando funções realizadas no próprio nível e serviços disponíveis nos níveis inferiores. Cada nível deve ser pensado como um programa ou processo, implementado por hardware ou software, que se comunica com o processo no nível correspondente em outra máquina. Os dados transferidos em uma comunicação de um nível não são enviados diretamente ao processo do mesmo nível em outra máquina, mas descem verticalmente através de cada nível adjacente em sua máquina até o nível 1 (nível físico, responsável pela única comunicação entre as estações de fato), para depois subir através de cada nível adjacente na estação receptora até o nível de destino. Esta forma de comunicação entre níveis está ilustrada na <>. Este mecanismo de comunicação é conhecido como protocolo de nível N, logo, o protocolo de nível N é um conjunto de regras e formatos, através dos quais informações ou dados do nível N são trocados entre as entidades do nível N, localizados em sistemas distintos com o intuito de realizar as funções que implementam os serviços do nível N. ==== O Modelo OSI da ISO A ISO ('Internation Organization for Standardization') é uma organização internacional fundada em 1946 que tem por objetivo a elaboração de padrões internacionais. Existem 89 países membros, sendo o Brasil representado pela ABNT e os EUA pela ANSI. O principal modelo para o desenvolvimento de padrões para interconexão de sistemas é o modelo OSI ('Open Systems Interconnection'), que está descrito em um documento da ISO. O objetivo deste modelo é fornecer uma base comum que permita o desenvolvimento coordenado de padrões para interconexão de sistemas remotos. O Modelo OSI possui sete níveis de protocolos, que são ilustrados na <>, e descritos nas seções seguintes. [[fig_redes11]] .Níveis do Modelo OSI da ISO. image::images/redes/camadas_ISO.png[scaledwidth="70%"] ===== Nível Físico O protocolo de nível físico dedica-se à transmissão de uma cadeia de bits. Ao projetista desse protocolo cabe decidir como representar 0´s e 1´s, quantos microssegundos durará um bit, como a transmissão será iniciada e finalizada, bem como outros detalhes elétricos e mecânicos. ===== Nível de Enlace O objetivo deste nível é detectar e opcionalmente corrigir erros que por ventura ocorram no nível físico. O nível de enlace assim converte um canal de transmissão não confiável em um canal confiável entre dois hospedeiros interligados por um enlace (meio físico) para uso do nível de rede. Outra questão tratada pelo nível de enlace é como evitar que o transmissor envie ao receptor mais dados do que este tem condições de processar. Esse problema é evitado com um mecanismo de controle de fluxo. ===== Nível de Rede O objetivo do nível de rede é fornecer uma independência quanto as considerações de chaveamento e roteamento associados ao estabelecimento de conexões entre hospedeiros remotos na rede e a troca de mensagens entre os hospedeiros em qualquer local dentro da rede. Existem duas filosofias quanto ao serviço fornecido neste nível: datagramas e circuito virtual. No serviço datagrama (não orientado à conexão) cada pacote (unidade de dados) não tem relação alguma de passado ou futuro com qualquer outro pacote, devendo assim carregar de forma completa seu endereço de destino. No serviço de circuito virtual (orientado à conexão) é necessário que o transmissor primeiro envie um pacote de estabelecimento de conexão. Cada conexão possui um identificador que irá marcar todos os pacotes pertencentes a esta conexão. ===== Nível de Transporte No nível de transporte a comunicação é fim a fim, isto é, entidade do nível de transporte se comunica com a entidade do nível de transporte da máquina destino, fato que não ocorria nos outros níveis. Até o nível de rede, o protocolo atuava em todos hospedeiros e comutadores de pacotes que se encontravam no caminho entre a origem e o destino da mensagem. O nível de transporte realiza controle de fluxo da origem ao destino, podendo este fluxo passar por diversos comutadores no caminho. Diferente do nível de enlace que realiza o controle entre as máquinas ligadas apenas no mesmo enlace. Podemos ainda citar como funções o controle de sequência de pacotes fim a fim, a detecção e recuperação de erros de transmissão, a blocagem de mensagens e a multiplexação (controle do compartilhamento de uso) do acesso ao nível de rede. ===== Nível de Sessão Os principais serviços fornecidos pelo nível de sessão são: O gerenciamento de token:: define a permissão a um dos nós onde a conexão foi estabelecida para começar a transmitir dados, evitando assim concorrência no diálogo. O controle de diálogo:: é uma forma de interromper uma conversação por um instante de tempo qualquer e voltar este diálogo do ponto interrompido. O gerenciamento de atividade:: pode garantir que atividades de maior prioridade executem sua atividade e no final a sessão irá retornar a atividade interrompida do ponto em que se encontrava. ===== Nível de Apresentação Neste nível são realizadas transformações adequadas aos dados, por exemplo, compressão de textos, criptografia, conversão de padrões de terminais e arquivos para padrão de rede e vice-versa. Este nível precisa conhecer a representação da informação (sintaxe dos dados) no seu sistema local e a representação no sistema de transmissão, podendo realizar as devidas conversões, como, formatação de dados e transformação de dados. ===== Nível de Aplicação Neste nível são definidas funções de gerenciamento e mecanismos genéricos que servem de suporte à construção de aplicações distribuídas. Dá suporte às chamadas de procedimentos remotos, ou seja, para a aplicação que utiliza esta camada não fará diferença onde o procedimento será implementado, o importante é que a computação seja realizada e sua saída fornecida localmente. ==== Arquitetura da Internet TCP/IP A arquitetura Internet TCP/IP dá uma ênfase toda especial à interligação de diferentes tecnologias de redes, pela simples constatação que não existe nenhuma tecnologia de rede que atenda às necessidades de todos os usuários da Internet. Esta arquitetura é organizada em quatro camadas conceituais: aplicação, transporte, inter-rede e interface de rede. ===== Nível de aplicação Neste nível usuários utilizam aplicações que interagem com o nível de transporte para enviar e receber dados. Abaixo algumas aplicações disponíveis na Internet TCP/IP: File Transfer Protocol (FTP):: fornece o serviço de transferência de arquivos. Hiper Text Transfer Protocol (HTTP):: fornece acesso a conteúdos web e recursos como arquivos de texto, fotos e etc. Protocolo adotado pelo navegadores da WEB, rede de conteúdos interligados através de hipertextos. Simple Mail Transfer Protocol (SMTP):: fornece um serviço store-and-forward de mensagens de email. Domain Name System:: oferece um serviço de mapeamento de nomes em endereços IP. ===== Nível de Transporte Permite a comunicação fim a fim entre as aplicações. Existem dois protocolos usados neste nível TCP (Transport Control Protocol) e UDP( Datagram Protocol). Se o protocolo for o TCP, os seguintes serviços são fornecidos: controle de erro, controle de fluxo, sequenciamento da entrega de pacotes e multiplexação do acesso a inter-rede, ou seja, controle de acesso concorrente ao meio. No UDP o serviço é mais simples, fornecendo apenas a multiplexação do acesso a inter-rede, ou seja, as informações de dois clientes que utilizam esta camada não terão seus dados misturados, sendo responsabilidade da camada a entrega correta do dado a seu processo destinatário dentro do mesmo computador. ===== Nível de Inter-Rede Responsável por enviar dados através da inter-rede desde a máquina origem até a máquina destino. Cada pacote é encapsulado em um datagrama IP (Internet Protocol) que define um endereço IP para cada nó de destino, este endereço funciona como um endereço residencial para os correios. O protocolo IP possui ainda um algoritmo de roteamento que será executado para determinar se o datagrama pode ser entregue diretamente, ou se deve ser repassado a um gateway (máquina que liga a rede atual com outras redes de diferentes tecnologias). ===== Nível de Interface de Rede A arquitetura Internet TCP/IP não faz nenhuma restrição às redes que são interligadas para formar a inter-rede. Portanto qualquer tipo de rede pode ser ligada, bastando para isso que seja desenvolvida uma interface que compatibilize a tecnologia específica da rede com o protocolo IP. Essa compatibilização é tarefa do nível de interface de rede. ==== Prof. Leonard Kleinrock Durante seu doutorado no Instituto de Tecnologia de Massachusets (MIT), o prof. Leonard Kleinrock elaborou os princípios da comutação de pacotes, tecnologia básica da Internet que substituiu a comutação de circuitos, maciçamente utilizada pelas empresas de telecomunicação da época, para a comunicação de dados digitais. Ele é engenheiro elétrico, mestre e doutor em engenharia elétrica pelo MIT. [[fig_redes12]] .Leonard Kleinrock diante do primeiro Interface Message Processor (IMP), precursor dos roteadores de mensagens atuais. image::images/redes/leonard_kleinrock.png[scaledwidth="50%"] No final de 1969, seu computador foi considerado o primeiro nó de uma rede de computadores, realizando um login entre a Universidade da Califórnia em Los Angeles e a Standford Research Institute em Santa Bárbara. Em entrevista, Leonard Kleinrock disse que diferente de pessoas como o astronauta Neil Armstrong que tinha a noção histórica de seus feitos, dedicando tempo a criação de frases de efeito, no caso de Armstrong ao pisar na lua falou ``Este é um pequeno passo para o homem, mas um grande salto para a humanidade'', a primeira frase enviada entre dois computadores foi um simples comando que fez o sistema remoto ser derrubado. Na <> podemos observar o prof. Leonard Kleinrock e o primeiro equipamento computacional exclusivo para processar mensagens através da tecnologia de comutação de pacotes. === Práticas ==== Traceroute: Investigando as rotas na internet No <> há uma prática para conhecer as rotas de pacotes trocados entre dois hosts. ==== Wireskark: Observando mensagens numa rede No <> é possível encontrar uma prática para observar as trocas de mensagens realizadas numa rede. === Recapitulando Neste capítulo abordamos os vários componentes de hardware e software que compõem uma rede de computadores e em particular a Internet. Identificamos os sistemas finais da rede, suas aplicações e funções. Fazendo analogias humanas, identificamos o que é um protocolo e sua essencial utilidade para a comunicação de dois computadores interligados por algum meio físico de transmissão, ou interligados por uma rede de computadores com diversas tecnologias distintas. Abordamos a arquitetura das redes, descrevendo as camadas que a compõem como: camada de redes, enlace, camada física, transporte e etc. Examinamos a estrutura global da Internet e aprendemos que ela é a rede das redes, compostas de ISPs de níveis mais altos e mais baixos, permitindo assim sua expansão sem sobrecarga de toda a rede. Por fim, esperamos que você leitor, tenha adquirido uma noção das peças que formam uma rede de computadores e permitem que nós tenhamos informações tão ricas de tantos lugares remotos a qualquer hora de forma tão rápida. === Atividades 1. Quais os benefícios da instalação de redes de computadores na vida das pessoas? 2. Defina sistemas finais e hospedeiros. 3. Cite as tecnologias de acesso as redes de computador. Classifique as mesmas quanto ao acesso residencial, coorporativo e móvel. 4. Quais são as cinco camadas da pilha de protocolos da Internet? Quais as principais responsabilidade de cada uma dessas camadas? 5. Sobre o uso das camadas da arquitetura TCP/IP durante o transporte de mensagem de um host até outro host utilizando comutadores no caminho é *correto* afirmar que: + -- a. Todas as camadas são processadas no host de origem, no host de destino, e no comutadores e roteadores que estão no meio do caminho. b. Todas as camadas são processadas no host de origem, no host de destino e nos roteadores, as camadas de enlace são processadas em alguns comutadores no meio do caminho. c. Todas as camadas são processadas no host de origem e no host de destino, as camadas de enlace são processadas em alguns comutadores, e as camadas de enlace e de rede são processadas em alguns comutadores (roteadores). d. Todas as camadas são processadas no host de origem e no host de destino, somente as camadas de enlace são processadas em alguns comutadores no meio do caminho. --