Baixe o app para aproveitar ainda mais
Prévia do material em texto
ESCOLA SUPERIOR ABERTA DO BRASIL – ESAB CURSO DE PÓS – GRADUAÇÃO LATO SENSU EM ENGENHARIA DE SISTEMAS ANDRÉ LUÍS DE OLIVEIRA FONSECA A UTILIZAÇÃO DO MICROCONTROLADOR ARDUINO PARA CONTROLE DE COMPUTADOR DE MESA À DISTÂNCIA VILA VELHA (ES) 2013 ANDRÉ LUÍS DE OLIVEIRA FONSECA A UTILIZAÇÃO DO MICROCONTROLADOR ARDUINO PARA CONTROLE DE COMPUTADOR DE MESA À DISTÂNCIA Monografia apresentada ao Curso de Pós- Graduação em Engenharia de Sistemas da Escola Superior Aberta do Brasil como requisito para obtenção do título de Especialista em Engenharia de Sistemas, sob orientação do Prof.Me.: Hudson Ramos. VILHA VELHA (ES) 2013 ANDRÉ LUÍS DE OLIVEIRA FONSECA A UTILIZAÇÃO DO MICROCONTROLADOR ARDUINO PARA CONTROLE DE COMPUTADOR DE MESA À DISTÂNCIA Monografia aprovada em de 2013. Banca Examinadora VILA VELHA (ES) 2013 DEDICATÓRIA Dedico este trabalho primeiramente a Deus, pois sem ele não seria possível estar aqui. Dedico às pessoas que eu amo e que me apoiaram para completar esta longa caminhada. RESUMO Atualmente a Internet conecta milhares de dispositivos a grandes distâncias. O que facilita ao usuário poder trabalhar à distância (área de trabalho remota). Como o computador é um meio indispensável de trabalho, muitos usuários precisam deixá-lo ligado direto para ter acesso aos seus serviços. Entretanto os computadores contribuem significativamente para o consumo global de energia e com frequência estão subutilizados ou ociosos. Através da internet ou na sua rede local, o usuário pode ligá-lo ou desligá-lo por meio do protótipo (dispositivo microcontrolador). O Arduino é um dispositivo barato para prototipação de hardware com desempenho muito inferior ao computador onde não necessita de um consumo alto para seu funcionamento. É um dispositivo usado por pessoas não especialistas para desenvolver rapidamente seus projetos em um espaço curto de tempo, com um custo bem baixo e com um vasto material para consulta e aprendizado. O computador é máquina dinâmica em relação a consumo, pois depende muito da utilização dos recursos computacionais. Duas formas para avaliar o consumo dele são: por estimativa, somando potência em Watts de cada dispositivo que compõe o computador; e por monitoramento da energia total consumida com auxílio de equipamentos (multímetro ou wattímetro) ou por ajuda de software como “PowerChute Personal Edition” da APC. O objetivo principal deste trabalho é demonstrar como ligar um computador de mesa à distância utilizando microcontrolador Arduino. A pesquisa é do tipo exploratório-descritiva com abordagem qualitativa, sendo a coleta de dados feita em obras bibliográficas e na Internet para apresentar mais detalhes sobre o conteúdo abordado. Visando a conscientização a respeito da economia de energia, este trabalho apresenta resultados de consumo (por estimativa e monitoramento) entre quatro computadores candidatos e demonstra o calculo do consumo energético de cada um deles, para o usuário tomar consciência do gasto desnecessário. Com o controle disciplinado pode-se garantir a economia no consumo de energia e uma eficiência maior no seu uso, dando ao usuário o poder de escolha sobre seu equipamento, tornando uma forma sustentável de qualquer computador ser controlado à distância. Palavras-chave: Rede de computadores. Arduino. Arquitetura de Microcomputador. Monitoramento do consumo de energia. LISTA DE FIGURAS Figura 1: Um protocolo humano e um protocolo de rede .......................................... 22 Figura 2: Modelo OSI com as setes camadas. .......................................................... 25 Figura 3: Modelo TCP/IP ........................................................................................... 27 Figura 4: Comparação entre modelos ....................................................................... 28 Figura 5: Fluxo da informação no processo de transmissão ..................................... 30 Figura 6: Espaço nomes hierárquicos ....................................................................... 31 Figura 7: Classes do endereço IP ............................................................................. 35 Figura 8: Cabo de par trançado ................................................................................. 37 Figura 9: Cabo coaxial .............................................................................................. 38 Figura 10: Fibra ótica ................................................................................................ 40 Figura 11: Arquitetura de Von Neumann.................................................................... 45 Figura 12: Componentes do computador .................................................................. 47 Figura 13: Camadas de abstração ............................................................................ 48 Figura 14: Hierarquia de memórias ........................................................................... 50 Figura 15: PowerChute Personal Edition da APC ..................................................... 58 Figura 16: Descrição da placa Arduino Uno .............................................................. 61 Figura 17: Botão Upload na Barra de Utilitários da IDE ............................................ 69 Figura 18: Diagrama do projeto ................................................................................. 71 Figura 19:Comparativo entre a estimativa e o monitoramento .................................. 75 LISTA DE QUADROS Quadro 1: Tipos de redes baseado na escala ........................................................... 29 Quadro 2: Código Fonte do Blink .............................................................................. 69 LISTA DE TABELAS Tabela 1: Computadores para medição do consumo ................................................ 73 Tabela 2: Estimativa do consumo máximo e mínimo (Watts) .................................... 73 Tabela 3: Valores monitorados dos candidatos (Watts) ............................................. 74 Tabela 4: Cálculo de consumo dos computadores .................................................... 76 LISTA DE ABREVIATURAS E SIGLAS ACPI – Advanced Configuration and Power Interface BBN – Bolt, Beranek and Newman(Empresa) AMD – Advanced Micro Devices (Empresa) APC – American Power Conversion (Empresa) APM – Advanced Power Management ASCII – American Standard Code for Information Interchange (Código Padrão Americano para o Intercâmbio de Informação) BIOS – Basic Input/Output System (Sistema Básico de Entrada/Saída) CPU – Central Processing Unit (Unidade de Processamento Central) DNS – Domain Name System DRAM – Dynamic random access memory FTP – File Transfer Protocol HP – Hewlett-Packard (empresa) HTML – HyperText Markup Language HTTP – Hypertext Transfer Protocol IBM – International Business Machines (Empresa) ICSP – In-Circuit Serial Programming (Programação Serial no Circuito) IDE – Integrated Development Environment (Ambiente Integrado de Desenvolvimento) IMAP – Internet Message Access Protocol LAN – Local Area Network (Rede de Área Local) LED – Light-Emitting Diode (Luz Emitida por Diodo) LLC – Logical Link Control MAC – Media Access Control MIME – Multipurpose Internet Mail Extensions NPC – Network ControlProtocol OSI – Open Systems Interconnection PCB – Printed Circuit Board (Placa de Circuito Impresso) POP – Post Office Protocol RAID – Redundant Array of Independent Drives RAM – Random Access Memory (Memória de acesso aleatório) RDP – Remote Desktop Protocol RFB – Remote Frame Buffer ROM – Read Only Memory (Memória somente de leitura) SMTP – Simple Mail Transfer Protocol SRAM – Static Random Access Memory SSL – Secure Sockets Layer TCP – Transmission Control Protocol TDP – Thermal Design Power (Projeto de Energia Térmica) UDP – User Datagram Protocol URL – Uniform Resource Locator USB – Universal Serial Bus (Barramento Serial Universal) WAN – Wide Area Network (Rede de longa distância) WOL – Wake On Lan SUMÁRIO 1 – INTRODUÇÃO .................................................................................................... 13 1.1 – PROBLEMA ..................................................................................................... 14 1.2 – METODOLOGIA ............................................................................................... 14 1.3 – OBJETIVO ........................................................................................................ 14 1.3.1 – Objetivo geral .............................................................................................. 15 1.3.1 – Objetivos específicos .................................................................................. 15 1.4 – JUSTIFICATIVA (MOTIVAÇÃO) ....................................................................... 15 1.5 – ESTRUTURA DO TRABALHO ......................................................................... 16 2 – REDE DE COMPUTADORES ............................................................................. 18 2.1- HISTÓRIA DA INTERNET .................................................................................. 18 2.2 – CONCEITO DE PROTOCOLO ......................................................................... 20 2.3 – MODELOS DE REFERÊNCIA ......................................................................... 22 2.3.1 – Modelo OSI ................................................................................................... 22 2.3.2 – Modelo TCP/IP ............................................................................................. 25 2.3.3 – Comparação entre os modelos .................................................................. 27 2.4 – TIPOS DE REDE .............................................................................................. 28 2.5 – FLUXO DOS DADOS NA REDE ...................................................................... 29 2.6 – SERVIÇOS E APLICAÇÕES DA INTERNET ................................................... 30 2.6.1 – Sistema de nomes de domínios ................................................................. 31 2.6.2 – Servidor Web ............................................................................................... 31 2.6.2.1 – URL ............................................................................................................ 32 2.6.3 – Transferência de arquivo ............................................................................ 32 2.6.4 – Correio eletrônico........................................................................................ 33 2.6.5 – Acesso Remoto ........................................................................................... 33 2.7 – ENDEREÇAMENTO IP .................................................................................... 34 2.8 – PROTOCOLOS INTERFACE COM A REDE .................................................... 36 2.9 – MEIOS DE TRANSMISSÃO ............................................................................. 37 2.9.1 – Cabo de par trançado .................................................................................. 37 2.9.2 – Cabo coaxial ................................................................................................ 38 2.9.3 – Fibra ótica .................................................................................................... 39 2.9.4 – Transmissão sem fio ................................................................................... 40 2.10 – EQUIPAMENTOS DE REDE .......................................................................... 41 3 – ARQUITETURA DE COMPUTADORES ............................................................. 45 3.1 – PROCESSAMENTO DE DADOS ..................................................................... 45 3.2 – HARDWARE ..................................................................................................... 46 3.3 – SOFTWARE ..................................................................................................... 47 3.3.1 – Sistema Operacional ................................................................................... 48 3.4 – PROCESSADOR ............................................................................................. 48 3.5 – MEMÓRIAS ...................................................................................................... 49 3.5.1 – Hierarquia de memórias .............................................................................. 50 3.5.2 – Memória cache ............................................................................................ 51 3.5.3 – Memória principal ........................................................................................ 52 3.5.4 – Memória secundária .................................................................................... 54 3.6 – BARRAMENTO ................................................................................................ 55 3.7 – DISPOSITIVOS DE ENTRADA E SAÍDA ......................................................... 56 3.8 – CONSUMO DO COMPUTADOR DE MESA ..................................................... 57 4 – ARDUINO ............................................................................................................ 59 4.1 – HARDWARE ..................................................................................................... 60 4.1.1 – Shields .......................................................................................................... 62 4.2 – SOFTWARE ..................................................................................................... 62 4.2.1 – Instalando o software do Arduino no seu computador............................ 64 4.2.2 – Instalando o software do Arduino no Linux .............................................. 64 4.2.3 – Instalando Drive no Windows..................................................................... 65 4.2.4 – Instalando Drive no Mac OS X .................................................................... 67 4.2.5 – Selecionando a placa e a porta .................................................................. 68 4.2.6 – Executando o primeiro teste ...................................................................... 68 5 – DESENVOLVIMENTO ......................................................................................... 70 5.1 – ARQUITETURA DO PROJETO ........................................................................ 70 5.2 – WAKE ON LAN ................................................................................................. 71 5.3 – ESTUDO DE CASO ......................................................................................... 72 5.3.1 – Estimativa .................................................................................................... 73 5.3.2 – Monitoramento ............................................................................................ 74 5.3.3 – Comparação entre a estimativa e o monitoramento ................................ 74 5.3.4 – Calculandoa economia de energia............................................................ 75 6 – CONCLUSÃO ..................................................................................................... 77 REFERÊNCIAS ......................................................................................................... 78 13 1 – INTRODUÇÃO Segundo Albiero (2010, p.1), hoje em dia, o computador vem sendo utilizado em qualquer área do conhecimento para a realização das mais diferentes tarefas. A dependência e demanda por novas tecnologias na Sociedade referente a este fato, se torna cada vez mais alta. Principalmente com os custos de hardware reduzindo, contudo o consumo energético do mesmo aumentando (BERL; MEER, 2011). Este fato se deve ao número total de computadores em crescimento, deixando de lado o consumo especifico de cada um. Sendo de maior preocupação da indústria fabricar equipamentos com ótimo desempenho e grande eficiência energética. Os computadores fabricados atualmente possuem bastante desempenho em relação aos seus antecessores, assim o poder de processamento é virtualmente gratuito (STALLINGS, 2010). As novas unidades de processamento possuem tecnologias que procura maximar a utilização dos recursos, reduzindo consumo energético e diminuindo a necessidade de resfriamento. De acordo com Berl e Meer (2011), os computadores contribuem significativamente para o consumo global de energia e com frequência estão subutilizados (taxa de utilização da CPU) ou completamente ociosos (mesmo ligados). Além disso, pode-se dizer que muitos deles ficam ligados 24h por dia para se trabalhar à distância (área de trabalho remota). Observando o cenário global na utilização abusiva de muitas fontes de energia (Petróleo, gás natural, urânio, etc.) sem o mínimo de controle. É importante dizer que para a eficiência energética exige-se um controle disciplinado dos recursos utilizados. Um bom exemplo para controle é automação seja na área da indústria ou na área doméstica. Segundo Sena (2005, p. 13): “O papel da automação vai além do aumento da eficiência e qualidade de vida, ele está intimamente ligado ao uso eficaz da energia e dos demais recursos naturais, sendo importante para a economia e o meio ambiente”. Uma tecnologia barata e eficiente para controle, de acordo com citado acima, é o microcontrolador Arduino. Segundo Mcroberts (2011) existem muitos modelos no 14 mercado e é uma plataforma eletrônica de prototipagem open-source, ou seja, você pode desenvolver projetos em pouco tempo, com um custo bem baixo e com um vasto material para consulta e aprendizado. Banzi (2009, p. 1) descreve o mesmo como: “Trata-se de hardware e software de fonte aberta, se desejar, você pode baixar o esquema do circuito, comprar todos os componentes, e fazer o seu próprio, sem pagar nada para os fabricantes de Arduino”. 1.1 – PROBLEMA Muitos usuários necessitam ter controle do computador de mesa com acesso remoto, através dos protocolos RDP (protocolo de área de trabalho remota), SSH (Shell Segura), VNC (Virtual Network Computing). Porém, para esse propósito, o computador de mesa necessita ficar ligado direto com acesso à Internet. Não observando o quanto de energia gasto desnecessariamente. Sendo assim como ligar e desligar um computador à distância de forma simples? Como quantificar o consumo energético do mesmo? 1.2 – METODOLOGIA Consiste em fazer uma pesquisa qualitativa sobre como utilizar o computador à distância com mais controle, sem a necessidade de deixá-lo ligado 24h para acesso remoto. Para esse fim será feito coletas de dados em obras bibliográficas e na Internet relacionada ao tema abordado. O equipamento desenvolvido nesse trabalho permite o usuário escolher quando ligar e desliga qualquer computador de mesa. Neste contexto, será mostrado os resultados da econômica que usuário pode ter utilizando o mesmo. 1.3 – OBJETIVO 15 1.3.1 – Objetivo geral O objetivo geral deste trabalho consiste em demonstrar como ligar ou desligar um computador de mesa à distância utilizando microcontrolador Arduino. Fazendo uma comparação do consumo entre um computador ligado 24h por dia e um computador utilizando o equipamento. 1.3.1 – Objetivos específicos Descrever outros métodos para liga ou desligar o computador à distância; Apresentar o microcontrolador Arduino; Analisar o consumo diário do computador de mesa; Descrever os protocolos de rede para acesso remoto; 1.4 – JUSTIFICATIVA (MOTIVAÇÃO) A Justificativa deste trabalho tem base em dois aspectos: • Controle de recurso baseado na economia de energia: Um ponto importante deste trabalho é criar uma forma eficiente de qualquer computador poder ser controlado à distância, sem deixar de lado um fator crítico indispensável – economia de energia. Tornando uma forma sustentável e dando controle ao usuário (poder de escolha), sobre o equipamento que o mesmo possui. Segundo Murugesan (2008, p. 27) muitas pessoas acreditam que se ficar ligando e desligando o computador, pode-se reduzir a vida útil da máquina por repetir esse processo enumera vezes. Sendo o fator principal que degrada o equipamento depende do seu uso continuo e da temperatura produzida. E de acordo com mesmo 16 autor, os usuários preferem acreditar que deixando o computador ligado, poderá economizar de 2 a 3 minutos (tempo referente à inicialização do Sistema Operacional) do seu tempo. • Sustentabilidade na área da informática: Vem-se implementando soluções no aumento do consumo e na otimização de recursos computacionais. Com a preocupação voltada neste contexto, a utilização da palavra verde vem inclusa em muitos trabalhos científicos como Gupta (2010), Albiero (2010), Murugesan (2008), entre outros. Termos como Green-Grid (Computação de Alto Desempenho Sustentável) ou Green Computing (Computação verde). A preocupação voltada para esse meio discute o computador sendo utilizada de forma eficiente e sustentável, trazendo benefícios como redução no consumo de energia (eficiência energética), redução nos custos operacionais (controle de custo) e menor impacto ambiental (MURUGESAN, 2008, p. 26). O autor Albiero (2010, p. 20) deixa bem claro o motivo para se pensar em sustentabilidade: Vivemos em uma era de preocupação ambiental, na qual a sociedade passou a se preocupar com as interferências que impõe sobre os sistemas naturais e com os impactos irreversíveis que estas podem causar: aquecimento global, ocorrência de grandes desastres ecológicos, má distribuição da riqueza natural, etc. Tais constatações motivaram a busca de um novo paradigma capaz de contribuir para superar os problemas atuais. Dessa forma nasceu o paradigma do desenvolvimento sustentável. O escopo deste trabalho não é discutir com mais detalhes os termos citados acima, portanto somente referenciá-los como tendência em estudos atuais. 1.5 – ESTRUTURA DO TRABALHO Este trabalho é constituído em cinco capítulos descritos abaixo: • Capítulo 1 – Descreve o trabalho em contexto geral, baseado na metodologia científica. Introduzindo as informações sobre o tema, o problema tratado, os 17 objetivos deste projeto e a justificativa. • Capítulo 2 – Informa sobre a grande teoria de rede de computadores, pois sem ela não tem entendimento de como nosso projeto poderia ter efeito à distância para controle do computador. Descreve o modelo OSI, o modelo TCP/IP, os protocolos baseados na internet e protocolos usados para acesso remoto. •Capítulo 3 – Descreve a arquitetura, estrutura principal, do computador em unidades mais especificas. Entendendo suas partes, pode-se entender o todo. Uma parte importante para saber mais detalhadamente como seu consumo é feito e como analisar o mesmo neste contexto. • Capítulo 4 – Informa a peça chave para sucesso deste trabalho. O que se tornou muito popular entre designers, artistas, engenheiros, hobistas, entre outros. Um capítulo que dá uma descrição detalhada desta famosa plataforma open-source, tanto em hardware quanto em software. • Capítulo 5 – Informa detalhes específicos de como é arquitetura deste projeto e como ele funciona. Aplicando toda teria adquirida nos capítulos anteriores. Da providencia a outros métodos que possa cumprir o objetivo deste trabalho. E também informa análise precisa a comparação entre um computador ligado 24h e um utilizando o equipamento para controle do mesmo. 18 2 – REDE DE COMPUTADORES O termo rede serve para descrever um emaranhado de coisas que se ligam uma as outras, seja fios, estradas ou até mesmo computadores. Tanenbaum (2003) descreve redes de computadores como um conjunto de computadores autônomos interligados entre si por um tipo de tecnologia, sendo seu propósito a troca de informações. Esta conexão é feita por um meio físico: fio de cobre, fibra ótica, micro- ondas, ondas de infravermelho e satélites de comunicação. As redes de computadores evoluíram bastante durante os últimos 50 anos, desde o surgimento da ARPANET. O motivo de sua evolução foi o crescente interesse de fazer os computadores se comunicarem entre si. As pesquisas sobre rede de computadores gerou um grande produto utilizado por milhões de pessoas no mundo inteiro. Assim como as grandes invenções, rádio e televisão, a Internet se tornou comum no cotidiano. Ficar desconectado da rede mundial virou sinônimo de exclusão digital. Vencendo as barreiras geográficas (grandes distâncias), atualmente a Internet conecta milhares de dispositivos como Smartphones, PDAs, TVs, videogames, laptops, automóveis, vários outros itens diferentes. Kurose e Ross (2010, p.2) enfatiza: “o termo redes de computadores está começando a soar um tanto desatualizado, dados os muitos equipamentos não tradicionais que estão sendo ligados a Internet”. Este capítulo informa com detalhes o surgimento desta grande invenção e como as suas engrenagens funcionam. 2.1- HISTÓRIA DA INTERNET A história começa no final da década de 50, no colapso da guerra fria. Quando a união soviética lançou o primeiro satélite artificial Sputnik 1 em 1957. Despertando a preocupação dos Estados Unidos em algum ataque vindo do céu por bombas atômicas, ficando vulneráveis suas redes de telecomunicação pelo país. Então na década de 60 foi criada a ARPA — Advanced Research Projects Agency, referencia por Murhammer (2000) como DARP – Defese Advanced Research Projects Agency 19 (Agência de Projetos de Pesquisas Avançadas de Defesa). (TANENBAUM, 2003) A ARPA com um conjunto de universidades e empresas consorciadas desenvolveram uma rede chamada a ARPANET, em 1969 foi iniciada a rede experimental baseada em comutação de pacotes. O sistema de comutação transforma as informações em pequenas partes chamada de pacotes que contêm trechos dos dados, onde cada pacote continha o endereço de destinatário e as informações o qual permitiam a remontagem da mensagem original. Contudo com o aumento proporcional da rede criado pela ARPA, houve um momento que as linhas excederam sua capacidade o qual era necessário substituir as transmissões por novas tecnologias, sendo papel principal para um backbone (espinha dorsal). Desde então foram feitos testes com redes de satélite e redes móveis. Na década de 70, o protocolo TCP/IP emergiu e segundo Kurose e Ross (2010) em 1983 o mesmo se tornou padrão para rede ARPANET substituindo o protocolo NPC (Network Control Protocol). Murhammer (2000) e Tanenbaum (2003) afirmam que a ARPA fez contrato com a BBN e a Universidade da Califórnia em Berkeley para distribuir o Sistema Operacional UNIX com uma implementação do protocolo TCP/IP. No final da década de 80 o BSD (Berkeley Software Distribution – distribuição de software da Berkeley) era distribuído gratuitamente com código fonte e um conjunto de ferramentas para acesso à rede. Tornou-se popular e padrão de fato por ser rapidamente aceito em várias universidades e centros de pesquisa. Nesta mesma década foi desenvolvido DNS (Domain Naming System), pelo fato de um grande número de redes conectado a ARPANET. Ficava difícil encontrar um computador através do seu endereço IP de 32 bits, pois o ser humano memoriza melhor nomes como net.berkeley.edu do que números como por exemplo 10.0.0.1. De acordo com Kurose e Ross (2010) a ARPANET era uma rede fechada onde poucos participavam e conforme Tanenbaum (2003) precisava ter um contrato de pesquisa com o Departamento de Defesa dos EUA sendo necessário um roteador para se conectar a mesma. No final da década de 1970, a National Science Foundation (NSF) criou uma rede chamada NSFNET, uma rede aberta a todas universidades e centros de pesquisa em resposta da burocracia criada pela ARPA. A 20 NSFNET foi desenvolvida parecida com a ARPANET, sendo conectada por linhas telefônicas privadas com velocidade máxima de 56 Kbps. Segundo Murhammer (2000) e Tanenbaum (2003) a NSFNET fez atualização nas velocidades de seus backbones à medida que a rede crescia e o tráfico aumentava. NFS fez contratos com outras empresas substituindo seus backbones por fibra ótica e aumentando a velocidade gradativamente. A partir disso, a NFSNET abriu espaço para comercialização e em 1995 o governo deixou de financiá-la abrindo espaço para as empresas. Até inicio da década de 1990, a maioria dos usuários utilizavam a Internet para transferência de arquivo, login remoto, correio eletrônico (e-mail), newsgroups (grupo de notícias mais conhecido como Usenet). Entretanto Tim Berners-Lee em 1989 deu inicio a WWW (World Wide Web) que deixou possível a navegação de sites contendo texto, figuras, sons e até mesmo vídeos. Junto com navegador Mosaic criado por Marc Andreessen (primeiro navegador gráfico), possibilitava ao usuário se locomover pela internet através das páginas de hipertexto como se fosse um barco navegando pelo mar, não sabendo onde chegará e sem saber o inicio da partida. Fazendo o usuário navegar por um mundo de produtos, vendas, suporte técnico, comunicação com funcionários, informações para acionistas e muito mais. (TANENBAUM, 2003) Na década de 90, a internet cresceu muito mais que em seus anos anteriores. Principalmente pelas empresas denominadas provedores de serviços da Internet (ISPs – Internet Service Providers). Kurose e Ross (2010) explica que entre 1995 e 2005 houve inúmeras inovações e deu origem a grandes empreendimentos como Yahoo, Google, Amazon, e-Bay, Cisco, entre outros. Empresas que movimentam bilhões na maior rede mundial, mudaram a forma como os usuários acessam a Internet de hoje e talvez mude a forma como ela vai ser no futuro. 2.2 – CONCEITO DE PROTOCOLO 21 O termo de protocolo é muito usado em rede de computadores e principalmente empregado na Internet. Protocolo é classificado como o software de rede responsável por definir o padrão da mensagem e transmitir a informação referente a camada em que o mesmo atua. Um protocolo está intimamente ligado com a camada que representa, para mais detalhes veja a seção 2.3. Murhammer (2000, p.12) informa: “Como a maioria dos softwares de rede, o TCP/IP é modelado em camadas. Esta representaçãoem camadas leva ao termo pilha de protocolos, que é sinônimo de conjunto de protocolos”. De acordo com Tanenbaum (2003, p.29): A camada n de uma máquina se comunica com a camada n de outra máquina. Coletivamente, as regras e convenções usadas nesse diálogo são conhecidas como o protocolo da camada n. Basicamente, um protocolo é um acordo entre as partes que se comunicam, estabelecendo como se dará a comunicação. Como uma analogia, quando uma mulher é apresentada a um homem, ela pode estender a mão para ele que, por sua vez, pode apertá-la ou beijá-la, dependendo, por exemplo, do fato de ela ser uma advogada americana que esteja participando de uma reunião de negócios ou uma princesa europeia presente a um baile de gala. A violação do protocolo dificultara a comunicação, senão a tornar completamente impossível. Para melhor entendimento de protocolo, fazendo uma analogia com o ser humano (Figura 1). Um simples diálogo entre duas pessoas que começam a conversar. Como por exemplo, começando um “oi” no inicio da conversa, abre o caminho para começar o diálogo. Neste sentido, para cada pergunta requisitada há uma resposta que será emitida. Ou até mesmo, se a pessoa não quiser estabelecer um diálogo, não existirá alguma resposta para a pergunta requisitada.(KUROSE; ROSS, 2010) Com relação ao diálogo humano, o computador faz o mesmo utilizando a pilha de protocolos para requisitar um serviço. Por exemplo, quando um computador necessita acessar um site, ele primeiro requisita a conexão com servidor Web. O servidor abre a conexão e então o computador requisita a página. Assim por final o servidor envia a página para o computador exibir no browser e ambos fecha a conexão. Para todo esse processo seja o computador ou servidor, ambos utilizam protocolos de cada camada para efetuar a comunicação. 22 Segundo Tanenbaum (2003, p.30): Um conjunto de camadas e protocolos é chamado arquitetura de rede. A especificação de uma arquitetura deve conter informações suficientes para permitir que um implementador desenvolva o programa ou construa o hardware de cada camada, de forma que ela obedeça corretamente ao protocolo adequado. Nem os detalhes da implementação nem a especificação das interfaces pertencem a arquitetura, pois tudo fica oculto dentro das máquinas e não é visível do exterior. Não é nem mesmo necessário que as interfaces de todas as máquinas de uma rede sejam iguais, desde que cada uma delas possa usar todos os protocolos de maneira correta. 2.3 – MODELOS DE REFERÊNCIA 2.3.1 – Modelo OSI Figura 1: Um protocolo humano e um protocolo de rede Fonte: (KUROSE; ROSS, 2010) 23 Segundo Murhammer (2000), o modelo OSI (Open Systems Interconnection – Interconexão de Sistemas Abertos), Modelo de Referência ISO 7498, foi proposto pelas entidades: • CCITT (Consultative Committee for International Telephony and Telegraphy, traduzido para Comitê Consultivo em Telefonia e Telegrafia Internacional), tornou-se ITU-T (Internacional Telecommunications Union – Telecommunications Standardization Sector, traduzido para União Internacional de Telecomunicações – Setor de Padronização de Telecomunicações); • ISO (International Organization for Standardization, traduzido para Organização Internacional para Padronização); Tanenbaum (2003) afirma que o padrão trata da interconexão de sistemas abertos, ou seja, sistemas que estão abertos à comunicação com outros sistemas. De acordo com Tanenbaum (2003, p.40-41) o modelo OSI é descrito como: O modelo OSI tem sete camadas. Veja a seguir um resumo dos princípios aplicados para se chegar às sete camadas: 1. Uma camada deve ser criada onde houver necessidade de outro grau de abstração adicional. 2. Cada camada deve executar uma função bem definida. 3. A função de cada camada deve ser escolhida tendo em vista a definição de protocolos padronizados internacionalmente. 4. Os limites de camadas devem ser escolhidos para minimizar o fluxo de informações pelas interfaces. 5. O número de camadas deve ser grande o bastante para que funções distintas não precisem ser desnecessariamente colocadas na mesma camada e pequeno o suficiente para que a arquitetura não se torne difícil de controlar. Murhammer (2000) enfatiza que cada camada fornece um conjunto de funções para dar suporte a camada de nível acima, sendo assim a camada abaixo fornece as funções necessárias para camada atual. As mensagens trocadas pelas camadas são passadas verticalmente, em forma de pilha. Contudo cada camada só pode se comunicar diretamente com a outra equivalente através do protocolo responsável pela comunicação. Cada camada possui seu protocolo específico. O modelo OSI é composto por sete camadas (Figura 2): • Aplicação: Camada responsável pelas aplicações de rede, mais próxima ao 24 usuário. Um Exemplo é o protocolo HTTP (HyperText Transfer Protocol) utilizado para navegação na Internet, ou o FTP (File Tranfer Protocol) que serve para transmissão de arquivos.. • Apresentação: Camada responsável pela sintaxe e semântica das informações transmitidas, ou seja, estruturas de dados abstratas como formatação dos dados e a criptografia; • Sessão: Camada responsável pelo estabelecimento e a manutenção de uma sessão entre as diferentes máquinas na rede. • Transporte: Camada responsável pela provisão de entrega da informação entre os nós da rede de forma confiável e não confiável. • Rede: Camada responsável pela entrega de pacotes e roteamento dos mesmos. • Enlace de Dados: Camada responsável pelo enquadramento de unidades de informação e verificação de erros. • Física: Camada responsável para transmitir o dado físico na forma binária 0 e 1 através de um meio físico (cabo de par transado, fibra ótica, cabo coaxial, etc.). Kurose e Ross (2010, p.39) afirmam: O modelo OSI tomou forma quando os protocolos que iriam se tornar protocolos da Internet estavam em amadurecimento; e eram um dos muitos conjuntos de protocolos em desenvolvimento; na verdade, os inventores do modelo OSI original provavelmente não tinha a Internet em mente ao criá-lo. No entanto, no final dos anos 1970, muitos cursos universitários e de treinamento obtiveram conhecimento sobre a existência da ISO e organizaram cursos voltados para o modelo de sete camadas. Em razão de seu impacto precoce na educação de redes, o modelo de sete camadas continua presente em alguns livros sobre redes e em cursos de treinamento. 25 2.3.2 – Modelo TCP/IP Segundo Murhammer (2000) o modelo TCP/IP foi nomeado assim por cauda de dois protocolos principais: TCP – Transmission Control Protocol (protocolo de controle de transmissão) e IP – Internet Protocol (protocolo de Internet). Kurose e Ross (2010) informa que estes dois protocolos são os mais importantes da Internet. De acordo com Tanenbaum (2003), com a criação do projeto ARPANET — era uma rede de pesquisa patrocinada pelo Departamento de Defesa dos Estados Unidos (DoD). A medida que ARPANET crescia com centenas de universidades conectadas a ela, começarão a surgir problemas com os protocolos utilizados na época. Forçando a criação de uma nova arquitetura denominado o Modelo de Referência TCP/IP. Figura 2: Modelo OSI com as setes camadas. Fonte: (GOOGLE, 2013) 26 Conforme Murhammer (2000) e Tanenbaum (2003), o Modelo TCP/IP (Figura 3) é definido em quatro camadas: • Camada de Aplicação: Onde reside as aplicações do usuário que utiliza os protocolos TCP/IP. Por exemplo, o correio eletrônico (E-mail)que provém mensagens através do protocolo SMTP ou a transferência de arquivos entre computadores através do protocolo FTP ou o acesso de páginas HTML na Internet através de do protocolo HTTP. Mais exemplos de aplicação são: Telnet, SSH (Acesso Remoto), DNS (Domain Name Service – Serviço de Nome de Domínio), entre outros. • Camada de Transporte: A Camada que fornece a transferência dos dados entre máquinas na rede (de uma ponta a outra). É constituída de dois protocolos principais, o TCP e o UDP (User Data Protocol – protocolo de datagrama do usuário). Contudo existe um ponto importante: onde o protocolo TCP é orientado à conexão e o UDP não é orientado à conexão, ou seja, o TCP fornece um controle de fluxo ponta a ponta, o qual garante a entrega do pacote de forma sincronizada; ao contrário do UDP que por ser mais simples não garante confiabilidade (os pacotes poderão chegar fora de ordem ou até mesmo não chegar ao destino) sendo destinado para aplicação de tempo real, como transmissão de áudio e vídeo. • Camada de Inter-redes: também é chamada de camada de internet ou camada de rede, ela é responsável pelo roteamento de pacotes na rede, onde seu objetivo é entregar os pacotes IP ao seu destino independente da rota traçada. O protocolo responsável nessa camada é o IP (Internet Protocol), mesmo que o pacote seja entregue fora da ordem, as camadas superiores ficam responsável pela organização e tratamento de erro referente a pacote de dados. • Camada de Interface de Rede: também chamada de camada de enlace ou camada de enlace de rede. Segundo Murhammer (2000, p.13): “… é a interface com o verdadeiro hardware de rede. Esta interface pode ou não fornecer entrega confiável, podendo ser orientada para pacotes ou fluxo”. O modelo TCP/IP não especifica direito como o pacote deve ser entregue nesta camada, somente defende que ele deve ser entregue por algum protocolo existente (não especifica qualquer protocolo, podendo usar qualquer interface de rede disponível como ATM, FDDI, X.25, entre outros). 27 2.3.3 – Comparação entre os modelos O modelo TCP/IP em comparação ao modelo OSI possui algumas características em comum, porém não se pode fazer comparações funcionais entre os modelos já que ambos tem seus conjunto de protocolos específicos (MURHAMMER, 2000). Em relação as setes camadas do modelo OSI (Figura 4), o modelo TCP/IP não possui as camadas de apresentação e sessão (ambas são incorporadas na camada de aplicação no modelo TCP/IP). Tanenbaum (2003) afirma que a diferença básica entre os modelos está no número de camadas, sendo que ambos têm as camadas de (inter-) rede, transporte e aplicação, mas as outras camadas são diferentes. Segundo Tanenbaum (2003) o modelo OSI foi concebido antes da criação dos seus protocolos correspondentes. O que deixou o modelo flexível e genérico, entretanto os projetistas não tinha muita noção (experiência no assunto) sobre a funcionalidade a ser incluída em cada camada. Em relação ao modelo TCP/IP, aconteceu ao contrário: os protocolos foram desenvolvidos antes da criação do modelo. O único problema era que ele não tinha utilidade para descrever outras redes que não usavam o protocolo TCP/IP. Figura 3: Modelo TCP/IP Fonte: (GOOGLE, 2013) 28 2.4 – TIPOS DE REDE Uma rede pode ser classificada segundo alguns critérios: Dimensão, Topologia, Meios de transmissão, Padrão (Tecnologia), etc. Porém nesta seção será descritos os tipos de redes se caracterizam pela distância (escala) que se comunicam e pelo padrão que os mesmos compartilham. Como por exemplo, uma rede Bluetooth o qual os celulares utilizam o ar para transmitir a informação, porém em curta distância. Outro exemplo é a rede Wifi ou rede sem fio, muito comum no dia a dia, o que é parecida com o Bluetooth, contudo as distâncias, velocidades e protocolos variam. Tanenbaum (2003) descreve os tipos de rede de acordo com a escala (Quadro 1): • PAN (Personal Area Network, ou rede pessoal). Uma PAN é uma rede usada para comunicação entre computadores e dispositivos pessoais como smartfones, câmeras digitais, tablets, entre outros. Este tipo de rede trabalha a distâncias muito curtas. A tecnologia muito utilizada neste tipo de rede é o Bluetooth. • LAN (Local Area Network, ou Rede Local). É uma rede onde seu tamanho se limita a alguns quilômetros de extensão. A LAN é bastante usada nas empresas, universidades e casas domésticas para compartilhar recursos e troca de informações. A arquitetura mais empregada nesta rede é Ethernet. • MAN (Metropolitan Area Network, ou rede metropolitana). É uma rede que é Figura 4: Comparação entre modelos Fonte: (GOOGLE, 2013) 29 empregada nas cidades. Um exemplo é rede por TV a cabo, disponibiliza serviços de TV por assinatura junto com acesso à Internet. Além da TV a cabo, outro exemplo é o padrão WiMax, uma rede sem fio que pode opera a grandes distâncias superiores a 10 quilômetros (KUROSE; ROSS, 2010). • WAN (Wide Area Network, ou rede de longa distância). Uma WAN abrange distâncias referentes a países e continentes. Integrando computadores (hosts e servidores) em uma malha de roteadores e gateways, referenciada por Tanenbaum (2003) como subrede. Um exemplo de tecnologia utilizada nesta rede é a ADSL, Frame Relay, ATM, entre outros. Internet pode ser considerada como várias redes WANs interligadas. 2.5 – FLUXO DOS DADOS NA REDE Em um processo de transmissão, a informação do usurário segue por um trajeto na pilha de protocolos, em cada camada que a informação passa se acrescenta um cabeçalho e os dados que permite o controle e recuperação da mesma (geralmente nas camadas de nível mais alto). De uma forma ampla a mensagem do usuário é fatiada em pequenos pedaços para que sejam transmitidos na rede através da camada física e depois ser remontado no destino como um quebra-cabeça. Esse processo é auxiliado por equipamentos de redes como o roteador e o switch (comutador),mais detalhes veja a seção 2.10. Portanto para cada camada existe um pedaço de informação: na camada de aplicação é referenciada como mensagem, TIPO DISTÂNCIA COMPARAÇÃO PAN 1 m Tapete LAN 10 m Sala 100 m Prédio 1 km Universidade MAN 10 km Cidade WAN 100 km País 1000 km Continente Internet 10000 km Planeta Quadro 1: Tipos de redes baseado na escala Fonte: Tanenbaum (2003) 30 na camada de transporte se chama seguimento, para a camada de rede se chama pacote ou datagrama, na camada de enlace se chama quadro. Observe na Figura 5 como o processo de transmissão é realizado. 2.6 – SERVIÇOS E APLICAÇÕES DA INTERNET A maioria dos serviços da internet usam o modelo cliente/servidor. Segundo Murhammer (2000, p.14) “um servidor é um aplicativo que oferece serviços aos usuários; um cliente é um solicitador de um serviço”. O cliente e servidor trabalham trocando solicitações e respostas usando o TCP/IP como veículo de transporte. Os servidores trabalham com portas ou soquetes específicos para que os clientes possam direcionar suas solicitações. Nesta seção será abordado resumidamente os principais serviços da internet: Sistema de nomes de domínio, correio eletrônico, transferência de arquivo, servidor Web, acesso remoto. Figura 5: Fluxo da informação no processo de transmissão Fonte: (KUROSE; ROSS, 2010) 31 2.6.1 – Sistema de nomes de domínios O DNS é sistema hierárquico e distribuído com banco de dadosque guarda os nomes dos servidores e host conectados na Internet. Cada servidor possui caches de nomes para não sobrecarregar os servidores principais e diminuir o tempo de conversão entre um nome em um endereço IP ou vice-versa. Segundo Murhammer (2000) o protocolo DNS trabalha na porta 53 por padrão e pode usar o protocolo UDP e TCP para a troca de informações. O registro de nome na Internet exige que você cadastre na autoridade responsável pelo domínio, como “Registro.br” responsável belo domínio “.br”. A hierarquia dos altos níveis (Figura 6) é representada em Domínios Genéricos (três letras): “.com”, “.net”, “.org”, “.info”, “.edu”, etc.; e Domínios de País (duas letras): “.br”, “.ar”, “.pt”, “.uk”, etc. A leitura de nome é feita de traz para frente, por exemplo o nome: “www.google.com.br” significa que é um endereço do Brasil (“.br”) com um domínio comercial (“.com”) cujo o nome é “google” e hospeda um servidor Web (“www”). 2.6.2 – Servidor Web Segundo Kurose e Ross (2010) a partir de 1990, a Internet se tornou mais conhecida por causa da criação do World Wide Web (WWW), o servidor Web. O protocolo HTTP faz parte de enviar os documentos HTML para o usuário visualizar no seu cliente Web (browser). O servidor mais popular para hospedagem de páginas Web é o Apache, um software livre. O HTTP usa por padrão a porta 80 e envia as Figura 6: Espaço nomes hierárquicos Fonte: Elaboração própria (2013) 32 informações através do protocolo TCP. Segundo Murhammer (2000) o HTML é a linguagem usada para criar documentos de texto com imagens, vídeos e áudios; o que deixa a página Web bem atrativa para o usuário navegar. O HTTP é considero um protocolo sem estado porque não retém informações sobre as conexões realizadas, entretanto isso fica a cargo dos “cookies” o qual os navegadores Web trocam com o servidor em uma transação HTTP. 2.6.2.1 – URL Um Uniform Resource Locator (URL), em português significa Identificador de Recursos Uniformes. Seu conceito foi introduzida pela World Wide Web (WWW) a partir de 1990. Segundo Tanenbaum (2003) o URL se divide em três partes: o protocolo, o nome da máquina e o caminho que se localiza a página ou arquivo. Ficando na seguinte estrutura: “protocolo://máquina/caminho/arquivo”. Como por exemplo: http://www.google.com.br usa o protocolo HTTP para servidor Web; ftp://ftp.slackware-brasil.com.br usa o protocolo FTP para Transferência de arquivos. 2.6.3 – Transferência de arquivo Embora você possa transferir arquivos com outros protocolos, o mais simples e utilizado na Internet é o FTP. Segundo Murhammer (2000) tanto o cliente quanto o servidor podem enviar ou receber arquivos. O FTP utiliza o TCP como protocolo para transporte de arquivos de forma confiável. De acordo com Kurose e Ross (2010) ele trabalha com a porta 20 para transferência de arquivo e a porta 21 usada para controle como login e senha, troca do diretório e comandos para enviar e receber arquivos. Para acessa o servidor FTP, o usuário precisa de um login e uma senha. O mesmo manipula os arquivos através do cliente com uma interface por linhas de comando: open, close, quit, help, get, put, mget, mput, pwd, entre outros. O servidor pode ser configurado para acesso anônimo, com o login anonymous e a senha o e-mail do usuário; ou não exige login e senha para o acesso. 33 2.6.4 – Correio eletrônico Segundo Tanenbaum (2003, p.626): O correio eletrônico — ou e-mail, como é chamado por muitos de seus fãs — já existe há mais de duas décadas. Antes de 1990, ele era empregado principalmente nos meios acadêmicos. Durante os anos 90, ficou conhecido para o público em geral e seu uso cresceu exponencialmente, até alcançar um número de mensagens de correio eletrônico enviadas por dia imensamente maior que o número de cartas remetidas pelo correio convenciona (isto é, cartas escritas em papel). Conforme Murhammer (2000) o correio eletrônico tem base em três protocolos: • SMTP: Simple Mail Transfer Protocol é o protocolo padrão para envio de e- mails na Internet. Ele usa o protocolo TCP na porta 25 para transmitir as informações pela rede, ou a porta 465 para conexão criptografada via SSL. No começo os e-mails era somente enviado em texto puro(ASCII), atualmente é possível mandar mensagem com arquivos através do padrão MIME. • POP: Post Office Protocol é o protocolo mais antigo de correspondência eletrônica. Ele usa conexões TCP na porta 110 ou a porta 995 (criptografada via SSL) para transferir as mensagens do usuário e depois as removem do servidor. Desta forma, os e-mails ficam armazenados no computador do usuário impossibilitando dele acessá-lo de outro lugar da Internet. • IMAP: Internet Message Access Protocol é o protocolo mais moderno que o POP, pois ele mantém as mensagens de e-mail no servidor mesmo depois que o usuário sincronize com o servidor. Assim há a possibilidade para ele acessar via Internet os seus e-mails de qualquer lugar e ainda mantém uma copia de segurança no servidor. O IMAP usa o TCP na porta 143 ou usa a porta 993 para conexão criptografada via SSL. 2.6.5 – Acesso Remoto Segundo Oliveira (2013) o acesso remoto provém ao usuário a possibilidade de 34 acessar o computador a distância criando um ambiente de trabalho remoto. Isso é mais comum no ambiente de uma empresa quando seus funcionários acessa a intranet de casa. A conexão à distância é feita com criptografia para garantir segurança de dados transmitidos. De acordo com Oliveira (2013) os principais aplicativos que implementam um protocolo de controle remoto são: • SSH: Seu nome é Secure Shell, substituto do RSH com algumas melhorias. O SSH possui as mesmas funcionalidades do Telnet, entretanto é muito mais seguro com a vantagem da criptografia com chave publica e privada de 1024 bits para conexão à distância. A porta 22 é padrão para acesso ao servidor auxiliado pelo TCP para transporte da informação. • VNC: Definido como Virtual Network Computing, foi desenvolvido pelas empresas Olivetti & Oracle Research Labs (ORL). A ideia dos seus criadores era criar um ambiente desktop completo com a possibilidade de ser acessado com qualquer computador conectado à Internet. O protocolo principal é RFB (Remote Frame Buffer) e usa o TCP como camada de transporte. Este protocolo permite somente a transmissão de imagens e não permite de transmissão de som ou arquivos. O VNC pode ser usado com criptografia para maior segurança. • RDP: O Remote Desktop Protocol é protocolo padrão usado para acesso área de trabalho do Windows, trabalha por padrão na porta 3389 com o TCP. Ele dá suporte a 24 bits de cor, possibilidade de transmitir áudio e redirecionamento de arquivos com uma criptografia de 128 bits para uma conexão segura. 2.7 – ENDEREÇAMENTO IP O IP oferece um serviço de entrega não confiável, de melhor esforço e sem conexão. O termo melhor esforço significa que os pacotes enviados pela rede podem ser perdidos, chegarem fora da ordem (desordenados) ou até mesmo duplicados. O cargo de recuperar uma informação perdia e controlar os erros envolvendo os problemas citados acima fica a parte da camada de transporte, atuação dos protocolos TCP e UDP. (MURHAMMER, 2000) 35 Endereço IP é formado por um número de 32 bits na versão 4 denominado IPv4. Este número é representado por quatro octetos (palavra de 8 bits) separados por ponto, como por exemplo o IP: “216.27.61.137”. Os IPs são expressos em cada octeto no formato decimal, pois fica mais fácil de lembrá-los. Porém osdispositivos da rede entendem em sua forma binária: “11011000.00011011.00111101.10001001”. Segundo Murhammer (2000) o endereço IP é dividido em duas seções: a rede e o host (computador ou roteador). De acordo com essa divisão, conforme Murhammer (2000, p.28), o endereço IP possui classes pré-definidas (Figura 7): Classe A: O primeiro bit (0) é reservado para esta classe, representando 7 bits para rede que dá um total de 126 (27-2) redes e 24 bits para os hosts que da 16.777.214 (224-2)1 endereços para cada rede. A faixa de endereçamento fica entre 1.0.0.0 até 127.0.0.0. • Classe B: Os primeiros dois bits (10) são reservados para esta classe, representando 14 bits para a rede que dá um total de 16382 (214-2) redes e 16 bits para os hosts que da 65534 (216-2) endereços para cada rede. A faixa de endereçamento fica entre 128.0.0.0 até 191.255.0.0. • Classe C: Os primeiros três bits (110) são reservados para esta classe, representando 21 bits para a rede que dá um total de 2097150 (221-2) redes e 8 bits para os hosts que da 254 (28-2) endereços para cada rede. A faixa de 1 O total de endereço é diminuindo por dois porque exitem dois endereços reservados: um para representar a rede e outro para o broadcast. Como por exemplo: o endereço de classe C “200.20.1.0” representa a rede e o endereço de classe C “200.20.1.255” representa o broadcast. Figura 7: Classes do endereço IP Fonte: Elaboração própria (2013) 36 endereçamento fica entre 192.0.0.0 até 223.255.255.0. • Classe D: Os primeiros quatro bits (1110) são reservados para multicast. A faixa de endereçamento fica entre 224.0.0.0 até 239.255.255.255 • Classe E: Os primeiros quatro bits (1111) são reservados para o futuro e para testes. A faixa de endereçamento fica entre 240.0.0.0 até 255.255.255.255. 2.8 – PROTOCOLOS INTERFACE COM A REDE Segundo Murhammer (2000) o Modelo TCP/IP não explica com muitos detalhes como essa camada é implementada e só descreve que os dados são transmitido pela rede através de um hardware específico, geralmente envolvendo alguma tecnologia como a Ethernet, ATM, Frame Realy, etc. Em diferentes redes para essa camada os dispositivos possui um endereço físico. Conforme Tanenbaum (2003) no padrão Ethernet esta camada é dividida em duas partes: • Controle de ligação lógica: Chamado de LLC (Logical Link Control) na língua inglesa, esta parte fornece uma interface para camada de rede, onde atua o protocolo IP. Ela é responsável pelo enquadramento: transforma a informação em pedaços menores chamados de quadros; controle de fluxo: garantir que o dispositivo que demoram mais para processar sinais recebidos não sejam sobrecarregadas pelos que transmitem o sinal rapidamente; e controle de erros: procura recuperar o quadro caso haja ruídos, falhas de sincronização, colisões, entre outros. • Controle de acesso ao meio físico: Também chamado Media Access Control ou MAC. Ele permite o acesso diretamente o meio físico e faz o controle da transmissão de dados. Consiste em um código único onde cada dispositivo de rede faz o envio dos quadros para um destino especificado. O endereço MAC é formado por 12 algarismos hexadecimais separados por dois pontos (“:”) ou hífen (“-”), número binário de 48 bits ou 6 bytes. Um exemplo de endereço MAC é “00:19:B9:FB:E2:57”, os seis primeiros dígitos hexadecimais representa código do fabricante e os últimos seis dígitos hexadecimais é definido pelo fabricante. 37 2.9 – MEIOS DE TRANSMISSÃO Os meios de transmissão são a base para os bits dos computadores trafegarem. Equivale a camada física do modelo OSI. O conhecimento empregado aqui varia desde a transmissão de computador até a telefonia móvel. Segundo Kurose e Ross (2010) os meios de transmissão, também chamado de meios físicos, se enquadram em duas categorias: meios guiados e meios não guiados. Nos meios guiados a transmissão segue um caminho pré-determinado, como na fibra ótica ou no cabo de par trançado. Nos meios não guiados os dados seguem em forma de ondas eletromagnéticas pela atmosfera e no espaço como as redes sem fio ou redes via satélite. Os meios de transmissão descritos aqui são: cabo de par trançado, cabo coaxial, cabo de fibra ótica, transmissão sem fio. 2.9.1 – Cabo de par trançado O cabo de par trançado (Figura 8) é constituído por fios de cobre e tem esse nome devido aos fios serem enrolados em forma de espiral, portanto reduzem o ruído e mantém constantes as propriedades elétricas em todo o seu comprimento. Segundo Tanenbaum (2003, p.96): “A aplicação mais comum do par trancado é o sistema telefônico. Quase todos os telefones estão conectados a estação central da companhia telefônica por um par trancado”. Existem dois tipos: UTP (Unshielded Twisted Pair – Par trançado sem blindagem) e STP (Shielded Twisted Pair – Par trançado com blindagem) com blindagem simples ou com blindagem par a par. De acordo com o Wikipedia (2013) o cabo de par trançado é categorizado em: • Categoria 1: feito para sistema de telefonia; • Categoria 2: é UTP tipo 3 definido pela IBM. Baixa transmissão; Figura 8: Cabo de par trançado Fonte: (GOOGLE, 2013) 38 • Categoria 3: frequência de até 16 MHz e Velocidade de até 10 Mbps; • Categoria 4: frequência de até 20 MHz e Velocidade de até 16 Mbps; • Categoria 5: frequência de até 100 MHz e Velocidade de 100 Mbps; • Categoria 5e: frequência de até 125 MHz e Velocidade de 1000 Mbps • Categoria 6: frequência de até 250 MHz e Velocidade de 1000 Mbps. • Categoria 6a: frequência de até 500 MHz e Velocidade de 10 Gbps (equivalente 10000 Mbps) em até 55 metros, caso esteja acima desse medida a velocidade é reduzida. As categorias de 1 a 4 já estão obsoletas. Atualmente se usa mais a Categoria 5 e 5e por serem mais baratos. Não obstante o mercado está migrando para a Categoria 6 e 6a, pois está se tornando popular. Segundo Wikipedia (2013) a norma EIA/TIA- 568-B está recomendando mais o Categoria 6 e 6a. Atualmente estão criando a Categoria 7 alcançando velocidade de 40 Gbps em cabos de 50 metros e Categoria 7a alcançando velocidade de 100 Gbps em cabos de 15 metros. Entretanto ainda não estão inclusos na norma EIA/TIA-568-B. Embora novas categorias tenha surgido atualmente, todos eles são compatíveis, caso tenha substituição. Portanto equipamentos antigos que é compatível com a categoria 3 podem utilizar a Categoria 5 normalmente, porém com a velocidade reduzida. 2.9.2 – Cabo coaxial Um cabo coaxial (Figura 9) é utilizado muito para distribuição de TV a cabo. A primeira rede local de computadores, a thinnet, utilizava esse cabo para transmissão de dados. Em termos de flexibilidade o cabo de par trançado é pouco superior ao cabo coaxial. Ele não é tão maleável quanto o de par transado, mas permite a transmissão de dados à longa distância e sua blindagem é superior ao cabo de par transado o que evita interferências ou ruídos. Figura 9: Cabo coaxial Fonte: (GOOGLE, 2013) 39 Segundo Tanenbaum (2003, p.98): Um cabo coaxial consiste em um fio de cobre esticado na parte central, envolvido por um material isolante. O isolante é protegido por um condutor cilíndrico, geralmente uma malha sólida entrelaçada. O condutor externo é coberto por uma camada plástica protetora. Existem dois tipos de cabo coaxial que são amplamente utilizados: o cabo coaxial grosso de 75 ohms muito utilizado em transmissões analógicas, de televisão a cabo e Internet a cabo; o cabo coaxial fino de 50 ohms empregado nas transmissõesdigitais. (TANENBAUM, 2003) 2.9.3 – Fibra ótica Uma das principais estruturas utilizada na Internet é a fibra ótica (Figura 10), milhares de redes são interconectadas em milhas de distância através dela. Redes locais também a utilizam, pois é um meio de transmissão tolamente ausente de interferência eletromagnética. Embora uma rede de computadores somente feita de fibra ótica, encontrada principalmente conectando supercomputadores ou data centers, necessita de equipamentos de alto valor agregado e o custo para implementação e manutenção da mesma é muito alto. A fibra ótica é um meio guiado que permite a propagação da luz, feita de vidro ultrapuro revestida de plástico ou outro isolante elétrico. Sua estrutura é fina e flexível, permitindo a luz se propagar em curvas suaves. Segundo Kurose e Ross (2010) a fibra ótica possui a atenuação de sinal muito baixa que permite alcançar até cem quilômetros sem repetidor e possui velocidade elevadíssima. Segundo Tanenbaum (2003) teoricamente ela pode ultrapassar uma velocidade de 50.000 Gbps (50 Tbps), mas pelo material o qual ela é produzida sua velocidade atualmente alcança 100 Gbps. Para produzir a luz dentro da fibra é preciso do fotoemissor: o diodo emissor de luz (LEDs — Light Emitting Diodes) e o laser semicondutor. 40 Segundo Tanenbaum (2003, p.99): Um sistema de transmissão óptica tem três componentes fundamentais: a fonte de luz, o meio de transmissão e o detector. Por convenção, um pulso de luz indica um bit 1, e a ausência de luz representa um bit zero. O meio de transmissão e uma fibra de vidro ultrafina. O detector gera um pulso elétrico quando entra em contato com a luz. Quando instalamos uma fonte de luz em uma extremidade de uma fibra óptica e um detector na outra, temos um sistema de transmissão de dados unidirecional que aceita um sinal elétrico, converte o sinal e o transmite por pulsos de luz; depois, na extremidade de recepção, a saída e reconvertida em um sinal elétrico. Existem dois tipos de fibra ótica: • Multímodo: o diâmetro é de 50 micrômetros. Chama-se assim por possuir vários modos de propagação, onde os raios de luz percorram diferentes caminhos no interior da fibra. A distância máxima de propagação é muito menor que o monomodo, porém é mais barata que sua concorrente. • Monomodo: possui um diâmetro muito menor que a fibra multímodo, na ordem de 8 a 10 micrômetros. O fotoemissor utilizado é lazer para alcançar distâncias maiores. Seu custo é muito maior que fibra multímodo, porém a distância máxima de propagação na faixa de 100 km. 2.9.4 – Transmissão sem fio A transmissão sem fio usam as ondas eletromagnéticas para transmitir os dados Figura 10: Fibra ótica Fonte: (GOOGLE, 2013) 41 dentro do espectro. Kurose e Ross (2010) afirma que a transmissão sem fio não precisa de um cabo para guiar o sinal, assim o mesmo pode atravessar paredes e longas distâncias. As transmissões sem fio se dividem em: • Ondas de rádio: o sinal é fácil de produzir e as ondas são omnidirecionais, o sinal viaja em todas as direções. Sendo assim não precisa ter uma posição especifica para se instalar o transmissor e o receptor, o qual é ótimo para projetos que não utilizam cabeamento. É utilizado na comunicação de redes sem fio, nas redes de celulares, no rádio e na televisão. • Micro-ondas: o sinal caminha em linha reta, neste caso o transmissor e o receptor precisam ter as antenas perfeitamente alinhadas. É muito sensível a fenômenos eletrônicos, magnéticos e atmosférico, como por exemplo a chuva. A partir da faixa de 4 GHz sofre interferência pela água, pois as micro-ondas são absorvidos por ela. É usada em redes de longa distância, nas redes de celulares, na comunicação de satélites de baixa orbita e geoestacionários. • Infravermelho: muito utilizado em comunicação em uma curta distância. O infravermelho não atravessa parede, o que é mais seguro em lugares fechados. Tanenbaum (2003, p.113-114) afirma: “Todos os dispositivos de controle remoto utilizados nos aparelhos de televisão, videocassetes e equipamentos estereofônicos empregam a comunicação por infravermelho”. • Lazer: muito usado em conexão ponto a ponto, entre prédios separados. Quase idêntico ao Infravermelho, usado em ambientes internos, diferenciando-se apenas na distância entre os pontos de conexão. É adequado à longa distância funcionando bem em dias claros, mas sujeita a interrupções por receber interferências climáticas como chuvas e nevoeiros. 2.10 – EQUIPAMENTOS DE REDE Além dos meios de transmissão propriamente dito, as redes de computadores funcionam com dispositivos de hardware e software que controlaram a comunicação entre os diversos componentes da rede. Vários periféricos são utilizados para 42 compor uma rede, cada um deles possuindo funções específicas. Alguns deles tem a finalidade de interpretar os sinais digitais gerados pela camada física e distribuí-los ao seu destino, obedecendo um protocolo específico.(PINHEIRO, 2004) Os equipamentos que compõem uma rede são: • Repetidor: Quando o sinal do meio físico começa a ficar fraco devido as barreiras impostas pela natureza, onde a distância para o mesmo é maior que recomendado. Um dispositivo é necessário para ampliar os sinais eletrônicos da rede, chamado Repetidor. Ele atua na camada física do Modelo OSI o qual é regenerador de sinal entre dois segmentos da rede. • Hub: O termo Hub (traduzido do inglês como pivô) é utilizado em rádio, telecomunicações e informática. Também denominado de concentrador, pois todos os seguimentos da rede se conectam a ele. É um equipamento idêntico ao repetidor, porém possui mais portas com relação ao mesmo. Sua principal função é retransmitir a informação para todos conectado a ele, como se transmissão fosse enviada por muitos repetidores ao mesmo tempo. Ele trabalha na camada física do modelo OSI. Segundo Pinheiro (2004, np): “Com o uso do Hub o gerenciamento da rede é favorecido e a solução de problemas facilitada, uma vez que o defeito fica isolado no segmento da rede”. • Brigde: Traduzido do inglês como ponte, é um equipamento designado para ligar dois ou mais seguimentos de redes. É parecido com o repetidor, porém a Bridge filtra as informações transmitidas entre os seguimentos através do MAC (Media Access Control). Portando além da camada física, esse equipamento também trabalha com a camada de enlace (segunda camada) no Modelo OSI. Isso permite que dados de um segmento trafegue de forma independente, mantendo outro segmento da rede livre. Desta forma ambos seguimento trabalham isolados, evitando a colisão de pacotes o desempenho aumenta o que permite a maior ampliação da rede (PINHEIRO, 2004). • Switch: Também chamado de comutador, porém é comutador de pacotes diferente do comutador de telefonia que é de circuitos. Segundo Tanenbaum (2003) a comutação de pacotes é mais tolerante a falhas que o a comutação de circuito, portando se houver uma falha e comutador de circuito fica inoperante, todos os 43 circuitos que o utilizam serão encerrados onde transmissão será interrompida em todos eles. Já na comutação de pacotes as informações podem ser roteadas de modo a contornar os Switches inativos. O Switch trabalha na segunda camada do Modelo OSI, camada de enlace. Assim como a Brigde efetua uma filtragem pelo MAC dos dispositivos conectado a ele. • Roteador: Este equipamento permite que uma rede local se comunique com outra rede local próxima ou remota. Ele atua na terceira camada do Modelo OSI, na camada de rede.Roteadores possuem softwares que permitem eles escolherem o melhor caminho, sendo o mais curto ou com o menor tráfego. Eles utilizam tabelas de rotas para decidir sobre o encaminhamento de cada pacote de dados recebido. A tabela pode ser configurada estaticamente por um administrador ou deixar que o próprio equipamento atualizá-la dinamicamente. O equipamento possuem mecanismos para verificação de erros evitando que algum pacote defeituoso trafegue pelas redes. Os Roteadores são muito utilizados na Internet o qual usa o protocolo IP e outros para fazer comunicação entre redes geograficamente distantes. • Modem: A palavra Modem vem da junção das palavras modulador e demodulador. A modulação consistem em converter os dados digitais (padrão binário 0 ou 1) em uma onda eletromagnética através da amplitude, frequência e fase. O processo de demodulação é ao contrário a modulação, transformando a onda em dados digitais. Os primeiros Modens utilizavam a linha discada para transmitir informação, atingindo a velocidade máxima de 56 Kbps. Segundo Tanenbaum (2003) a velocidade da linha telefônica é muito lento porque foi projetada para transportar a voz humana. Atualmente os Modems utilizam tecnologias que permitem usar toda a banda que o fio de cobre tem, como a tecnologia ADSL (Asymmetric Digital Subscribe Line). O Modem atua na camada física do modelo OSI. • Gateway: Segundo Tanenbaum (2003) esse equipamento trabalha na camada de transporte e aplicação do Modelo OSI. Ele permite que duas redes de arquitetura diferentes se comunicam. • Placa de rede: Também chamada de Network Interface Card (NIC). A placa de rede é o dispositivo que conecta o computador a rede. É a interface entre o hardware do computador com as mídias de transmissão a cabo ou sem fio (wireless). Os computadores e impressoras atualmente já vem incluída uma placa de 44 rede embutida (on-board). Sua função é mover os dados dos computadores para rede, gerando o sinal elétrico que trafega através do cabo da rede e controlar o fluxo entre o hardware e rede. Segundo Pinheiro (2004) as placas de rede possuem um buffer que armazena dados por um período de tempo para estabilizar o trafego gerado, já que a velocidade do hardware e da rede são distintos. • Trasceiver: Dispositivo responsável por converter o sinal elétrico em sinal óptico e vice-versa. • Servidores: Computadores com grande poder de processamento cuja a função é disponibilizar serviços integrados como correio eletrônico, páginas da Web, etc. • Host: Também chamado Workstation (estação de trabalho). Computador utilizado pelo usuário para acessar algum tipo de serviço pela rede local ou Internet. 45 3 – ARQUITETURA DE COMPUTADORES Segundo Stallings (2010) um computador é sistema hierárquico interconectado em uma estrutura de componentes com uma função coletiva em cooperação. Cada componente possui sua estrutura interna e uma função. Segundo Tanenbaum (2007) os computadores entendem somente a linguagem de máquina. Os primeiros computadores não existia uma forma amigável para o usuário interagir com o mesmo, pois ele tinha que passa manualmente os dados e sequencia lógica de como o computador iria manipulá-los. O computador é definido por ser uma máquina virtual, onde para cada nível existe um interpretador ou tradutor que converte a linguagem de nível mais alto. Análogo a redes de computadores no qual cada camada possui protocolos que dão suporte a camada de nível superior. A maior parte dos computadores da atualidade possui uma arquitetura baseada na máquina de Von Neumann. Esta máquina passa o conceito de programa armazenado. Sua estrutura principal (Figura 11) era feita em quatro componentes: a unidade aritmética e lógica (ALU), a unidade de processamento (CPU), a memória principal e os equipamentos de E/S (Entrada e Saída). 3.1 – PROCESSAMENTO DE DADOS Todo computador de hoje em dia usa este princípio básico, como os laptops, os celulares, máquinas de lavar, etc. Isto está incluso na nossa vida diária. Explicar Figura 11: Arquitetura de Von Neumann Fonte: (GOOGLE, 2013) 46 esse conceito não é fácil, todo processamento necessita de uma informação inicial para uma finalidade. Processo tem conceito abstrato, pois não existe no mundo real. É uma ação que ocorre em período de tempo. No contexto da informática, o ato de processar é somente para informações e dados. Mas para que isso acontecesse, precisa-se de uma entrada inicial, um ponto de partida. Essa entrada inicial sofre uma transformação e produz um resultado. (MONTEIRO, 2007) DADOS INICIAIS + PROCESSAMENTO = RESULTADO ENTRADA ---> PROCESSAMENTO ---> SAÍDA O computador utiliza o princípio do processamento de dados, necessitando de dados de entrada e transformando em informação de saída. O computador é dividido em dois itens básico: Hardware e Software. 3.2 – HARDWARE O computador possuem peças interconectadas entre si, formando uma rede interna e externa em relação ao gabinete. Uma definição muito grosseira de hardware é tudo que se chuta ou se pega, pois o mesmo são circuitos eletrônicos que manipula os dados existindo no mundo real. Segundo Monteiro (2007) e Stallings (2010) os componentes do computador (Figura 12) são: • Processador: Unidade responsável por transformar os dados de entradas. Também chamado de CPU (Center Processing Unit), Unidade de Processamento Central. • Memórias: Guardam temporariamente ou permanentemente a informação processada. Classificadas em armazenamento primário (memória principal) e armazenamento secundário (memórias auxiliares). Exemplo: disco rígido (HD), pendrive, memória RAM. 47 • Dispositivos de Entrada e Saída: Itens responsáveis pela entrada e saída de dados para central de processamento. Exemplo de dispositivo de entrada: teclado e mouse; e dispositivo de saída: monitor e impressora. • Barramento: Meio pelo qual trafegam os dados entre os componentes do computador. Exemplo: As trilhas na placa-mãe. 3.3 – SOFTWARE Se o corpo do computador é o hardware, sua alma seria o software. O software coexiste com hardware para o computador ficar completo. A maior parte das informações é exibida de forma amigável para o usuário por causa do software. Segundo Monteiro (2007) as instruções interpretadas pelo hardware em sua maioria forma um software. Definição grotesca para o software é tudo que se fala mal, pois o software é virtual, não existe no mundo real. Classifica-se o software em: • Software aplicativos: São softwares utilizados pelo usuário para executar suas tarefas no trabalho ou lazer. Exemplo: Processadores de texto (Word e Notepad), Browsers (Morzilla Firefox e Internet Explorer), Planilhas Eletrônicas (Excel), Manipulador de imagem (Photoshop e Gimp), entre outros. • Software de sistema: São os utilitários do sistema necessários para os Figura 12: Componentes do computador Fonte: Elaboração própria (2013) 48 aplicativos do usuário funcionar. Exemplo: Sistema Operacional (Windows e Linux), protocolos de redes (TCP/IP). 3.3.1 – Sistema Operacional Segundo Tanenbaum (2010) o Sistema operacional é um conjunto de softwares ou programas o qual gerencia os recursos de hardwares como memória, dispositivos de entrada e saída. Os aplicativos do usuário são gerenciados por ele de forma oculta. O Sistema Operacional se comunica diretamente com o hardware, criando uma camada para facilita o uso do computador, é chamado
Compartilhar