Revista Científica COMPUTAÇÃO EM EVOLUÇÃO 2011 FACULDADES INTEGRADAS ICE INSTITUTO CUIABANO DE EDUCAÇÃO CIÊNCIA DA COMPUTAÇÃO REVISTA CIENTÍFICA COMPUTAÇÃO EM EVOLUÇÃO CUIABÁ 2011 Apresentação As iniciativas pela democratização do conhecimento é um benefício ímpar na tarefa de aperfeiçoamento e evolução da humanidade. Atualmente, a Ciência da Computação tem sido um suporte essencial ao desenvolvimento das profissões e do conhecimento em diversas áreas da Tecnologia da Informação. A Revista Científica Computação em Evolução, conta com publicação de artigos produzidos pelos alunos curso de Ciência da Computação do ICE, avaliados e selecionados pelo Comitê Cientifico formados por professores do próprio curso e professores convidados. Assim, a difusão do conhecimento fará com que o nosso corpo acadêmico marche rumo ao excelência. É com este espírito que lançamos a Computação em Evolução, a Revista Científica da Computação do ICE. A Computação em Evolução será mais um veículo de disseminação do conhecimento em Ciência da Computação especialmente aquele produzido no seio de nossa Faculdade. Atenciosamente, Prof º Andersown Becher Paes de Barros Coordenador do Curso de Ciência da Computação - ICE Sumário Realização ................................................................................................................................... 1 Comissão organizadora............................................................................................................. 2 Comitê Científico ........................................................................................................................ 3 Cronograma e previsão dos trabalhos do comitê científico ................................................. 4 Artigos Aceito .............................................................................................................................. 5 Realização Comissão organizadora Prof. Andersown Becker Coordenador do Curso Faculdades ICE http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4533019T5 Prof. Orlando P. S. Júnior Professor do Curso Faculdades ICE http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4233733D2 Comitê Científico Prof. Andersown Becker Coordenador do Curso Faculdades ICE http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4533019T5 Prof. Orlando P. S. Júnior Professor do Curso Faculdades ICE http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4233733D2 Profª. MSc. Luciano Barco Assessor de Eventos e Coordenador de Horas Atividades do Curso de Ciência da Computação UNEMAT/Barra do Bugres http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4757591Y6 Profª. Aline de Souza Coordenador do Curso de Ciência da Computação Coordenador do Curso de Tecnologia em Análise e Desenvolvimento http://lattes.cnpq.br/1769107479459896 Jeanine Ferrazza Meyer Psicologa Mestre em Educação Professora FEMA http://lattes.cnpq.br/8099934441402102 Cronograma e previsão dos trabalhos do comitê científico Data limite para envio dos resumos: 20/05/2011 Notificação de Aceite dos Resumos: 30/05/2011 Professores Orientadores Prof. Andersown Becker Coordenador do Curso Faculdades ICE http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4533019T5 Prof. Orlando P. S. Júnior Professor do Curso Faculdades ICE http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4233733D2 Artigos Aceito SEGURANÇA DA INFORMAÇÃO FACULDADES INTEGRADAS MATO GROSSENSES DE CIÊNCIAS SOCIAIS E HUMANAS CIÊNCIA DA COMPUTAÇÃO – 3º SEMESTRE ANNE KAROLINE PEREIRA SILVA PROFª. IEDA MARIA BRIGHENTI PROF.ª ANDERSOWN BECHER INTRODUÇÃO Desde os anos noventa vivemos em um mundo mais organizacional. Surge uma era completamente nova, conhecida como a era da Informação, que aparece com um grande impacto em nossas vidas atraindo o desenvolvimento tecnológico e trazendo com junto o que conhecemos como tecnologia da Informação. Nossa nova riqueza passa a encontrar-se no conhecimento, um recurso cuja importância possui uma consideração maior que o capital financeiro já que em seu lugar nasce o capital intelectual. A segurança da Informação constitui um instrumento poderoso dentro das organizações, pois a ligação com a Internet e a adoção da Intranet expande de forma intensa. A Informação torna-se a principal fonte de energia dentro das organizações e, portanto, a mais cobiçada também. Na época da Informação tudo muda muito rápido e constantemente, logo quem possui Informação passa a ter o poder. Poder de conhecimento, poder de conhecer o concorrente, poder de resolver mais rápidos os problemas e também o poder de aprender com os seus erros mais facilmente. E este bem tão precioso, não deixa de ser perseguido de forma correta ou de forma ilícita com a conseqüência de que precisa ser protegido. SEGURANÇA DA INFORMAÇÃO A Segurança da Informação está relacionada com a proteção de um conjunto de dados, no sentido de preservar o valor que possuem para um indivíduo ou para as empresas que por sua vez esta segurança não esta restrita somente a sistemas computacionais, informações eletrônicas ou sistemas de armazenamento. Os conceitos de segurança se aplicam a todos os aspectos de proteção de informações e dados. O conceito de Segurança da Informática está firmemente relacionado com o de Segurança da Informação, incluindo não apenas a segurança dos dados/informações, mas também a dos sistemas em si. Atualmente o conceito de Segurança da Informação está padronizado pela norma ISO/IEC 17799:2005, influenciada pelo padrão inglês (British Standard) BS 7799. A série de normas ISO/IEC 27000 foram reservadas para tratar de padrões de Segurança da Informação, incluindo a complementação ao trabalho original do padrão inglês. A ISO/IEC 27002:2005 continua sendo considerada formalmente como 17799:2005 para fins históricos. São características básicas da segurança da Informação: Confidencialidade: propriedade que limita o acesso a informação tão somente às entidades legítimas, ou seja, àquelas autorizadas pelo proprietário da informação. Integridade: propriedade que garante que a informação manipulada mantenha todas as características originais estabelecidas pelo proprietário da informação, incluindo controle de mudanças e garantia do seu ciclo de vida (nascimento, manutenção e destruição). Disponibilidade: “A Informação deve estar disponível para a pessoa certa e no momento em que ela precisar” (MOREIRA, 2001), propriedade que garante que a informação esteja sempre disponível para o uso legítimo, ou seja, por aqueles usuários autorizados pelo proprietário da informação. A IMPORTANCIA DA SEGURANÇA DA INFORMAÇÃO Atualmente vivemos em um mundo globalizado, com mudanças geográficas juntando o mundo, mas fortemente articulado pelas redes, onde a informação é um dos maiores patrimônios de uma organização moderna, tornando-se vital para qualquer nível hierárquico. A segurança da Informação também é considerada um ativo importantíssimo para a realização de o negócio porem deve ser protegida e gerenciada. Nos últimos anos as tecnologias de informação e comunicação evoluíram rapidamente, fazendo com que as empresas tenham maior eficiência e rapidez nas tomadas de decisão, devido a este fato as chances de uma empresa não usar sistemas de informação tornou-se praticamente nula. Neste contexto a importância de se utilizar mecanismos de segurança e de armazenamento das informações é de total importância para a sobrevivência e competitividade destas organizações. Antigamente a questão segurança da informação era muito mais simples, pois os arquivos contendo inúmeros papéis podiam ser trancados fisicamente, mas com a chegada das tecnologias da informação e comunicação a questão ficou muito complexa, hoje grande parte dos computadores conecta-se a internet e conseqüentemente a internet conecta-se a eles, porem, sabemos que dados em formato digital são portáteis, este fato fez que estes ativos tornassem atrativos para ladrões. Mas isto não é tudo, existem inúmeras situações de insegurança que podem afetar os sistemas de informação como incêndios, alagamentos, problemas elétricos, poeira, fraudes, uso inadequado dos sistemas, engenharia social, guerras, seqüestros, etc. Por isso dizemos que não existe segurança absoluta, torna-se necessário agirmos no sentido de descobrir quais são os pontos vulneráveis e a partir daí avaliar os riscos e impactos, e rapidamente providenciar para que a segurança da informação seja eficaz. Infelizmente o que vemos na prática é que muitas empresas não dão o devido valor a esta questão e por muitas vezes o preço é muito alto, portanto o melhor caminho é reduzir ao máximo quaisquer riscos às informações, seguindo um trajeto no sentido único de manter a integridade e a disponibilidade dos sistemas de informação. Para que a eficiência da segurança reine dentro de uma organização devemos ficar atentos para algumas questões como uma boa análise de riscos, a definição da Política de Segurança e por fim um plano de contingência. A análise de riscos basicamente visa à identificação dos pontos de riscos que a que a informação está exposta, identificando desta maneira quais os pontos que necessitam de maior empenho em proteção. A política de segurança da informação é a formalização explícita de quais ações serão realizadas em um sentido único de garantir a segurança e disponibilidade dos mesmos, esta política é de extrema importância uma vez que descreve as regras necessárias para o uso seguro dos sistemas de informação. Os planos de contingência também possuem papel fundamental, pois descrevem o que deve ser feito em caso de problemas com as informações. Nota-se que normalmente as pessoas são o elo mais frágil quando o assunto é segurança da informação, as soluções técnicas não contemplam totalmente sua segurança, desta forma torna-se necessário que os conceitos pertinentes a segurança sejam compreendidos e seguidos por todos dentro da organização, inclusive sem distinção de níveis hierárquicos. Uma vez identificados quais os riscos que as informações estão expostas deve-se imediatamente iniciar um processo de segurança física e lógica, com o intuito de alcançar um nível aceitável de segurança. A SEGURANÇA DA INFORMAÇÃO: A RAIZ DO PROBLEMA É interessante observar como o apelo da mídia em torno de acontecimentos espetaculares envolvendo fraudes, espionagens, hackers, worms, cavalos de tróia, vírus eletrônicos e outros bichos, tem causado impacto no comportamento de executivos da maioria das organizações atualmente. A preocupação com a segurança das informações entrou para a ordem do dia de instituições como bancos, empresas de informática, cadeias de supermercados, órgãos governamentais, entre outras. A informação surge, finalmente, como o mais valioso ativo da nossa sociedade pós-industrial. É claro que o foco dado as conseqüências do problema, ajudam na conscientização: algo precisa ser feito, e rápido. No entanto, a ansiedade para se resolver a questão, está levando muitas companhias desesperadas a adotarem o que vou chamar de “analgésicos tecnológicos”, que de forma similar aos utilizados na medicina, atuam somente na dor, que na verdade é somente um sintoma da doença. Aplicando-se a alegoria ao caso específico da segurança, dar importância excessiva à questão de tecnologia e/ou abusar de ações de restrição de acesso descoordenadas sem o suporte de uma metodologia, não atingem a raiz do problema e, conseqüentemente, não o resolvem. O pior é que algumas ações equivocadas acabam por mascarar pontos críticos dando margem a um falso sentimento de segurança, que na verdade é pior do que a insegurança constatada. A grande dificuldade de se implementar qualquer sistema que vise a mudança cultural é que o trabalho deve ser cíclico, contínuo e persistente. Os verdadeiros resultados aparecem somente de médio a longo prazo. Não existem fórmulas mágicas de efeito rápido. É primordial considerar que de forma análoga a uma corrente, uma boa estratégica para se abordar a problemática da segurança da informação, passa, invariavelmente por sua visão holística, ou seja, pelo cuidado com todos os seus pilares fundamentais: Pessoas, Processos e Tecnologia: Pessoas: São parte integrante e o elo fraco de qualquer sistema de segurança: Será necessário muito trabalho para a conscientização, treinamento e educação dos colaboradores. Processos: Adoção de melhores práticas descritas em normas como a ISO 17799, COBIT entre outras: Indispensável para definição dos processos que vão balizar os requisitos adequados para a companhia avaliar sua operação sob o ponto de vista da segurança dos seus ativos de informação. Tecnologia: Utilização e configuração adequada das ferramentas de proteção e dos ativos de informação: Esses ativos (servidores, banco de dados, sistemas operacionais, etc.) suportam os negócios da companhia, seu uso deve considerar políticas consistentes previamente definidas. Agora você já sabe, quando solicitarem sua atuação em questões que abordem segurança da informação, lembre-se de ir a "raiz do problema" e não ficar por aí só arrancando as “folhas” geradas por ele. De uma forma ou de outra, elas sempre voltarão na próxima estação... ADMINISTRANDO OS RISCOS A administração dos riscos da segurança da informação e um processo de identificação e classificação de um conjunto de medidas que permitam conferir dentro das empresas o nível de integridade de suas informações. Este processo é composto por uma seqüência de fases nas quais os riscos são determinados e classificados formando um conjunto equilibrado de medidas de segurança, conhecidas como controles. Segundo SILVA, (2003 p.34), as etapas de um processo de gestão para eliminar os riscos são: Identificação dos riscos: é conseguida por meio de levantamento do contexto de risco em que a empresa atua; Análise de risco: tem por objetivo identificar os riscos de segurança presentes na sua Empresa, fornecendo conhecimento para que sejam implementados controles eficazes de Segurança Identificação de controles: é uma referência à prática de permitir o acesso a uma propriedade, prédio, ou sala, apenas para pessoas autorizadas. O controle físico de acesso pode ser obtido através de pessoas (um guarda, segurança ou recepcionista); através de meios mecânicos como fechaduras e chaves; ou através de outros meios tecnológicos, como sistemas baseados em cartões de acesso. Seleção de controles: utilizado para analisar os riscos, que por ventura, vem a ocorrer dentro de um ambiente na segurança de informação. Um cenário de risco em que a empresa esta presente é necessário ter um sistema no qual verifique quais os riscos e ameaças a mesmo este vulnerável. Um ponto importante a reter, ao realizar qualquer levantamento, e o fato do levantamento e posterior analise de risco não constituírem um fim por si só uma vez que o objetivo do levantamento de risco e permitir a analise e o da analise é permitir a implementação consistente das medidas de proteção. É, então, que todo o processo não devera consumir uma quantidade inusitada de recursos, o que requer alguma reflexão e espírito pratico na escolha do método de analise (qualitativa ou quantitativa), que deverá ter em conta o esforço requerido para a escolha da informação necessária. Apesar de teoricamente ser preferível realizar uma analise quantitativa, os recursos que esta requer poderão não ser justificados sendo preferível optar pela realização de uma analise qualitativa. Em qualquer caso, o processo de recolha preliminar de informação e posterior analises não deverão nunca levar mais de uns dias uma vez que, num universo empresarial em constante mutação, uma desatualizada. analise com demasiado detalhe ficara rapidamente CONCLUSÃO Atualmente as empresas estão entrando em novos mercados onde os negócios estão se direcionando cada vez mais para a Internet e Intranets. Tornando assim, necessário o conhecimento e análise dos riscos e vulnerabilidades a que estamos expostos, de forma que possamos definir os melhores modos de mecanismos adequados para a segurança de nossas informações. Apesar dos problemas, podemos afirmar que o uso adequado da tecnologia de segurança e dos mecanismos de proteção e controle na Internet e Intranet permitem realizar operações comerciais em condições mais seguras do que os meios de transações e comunicações convencionais. REFERÊNCIAS • da CASSA, Mônica. A importância e a implementação da segurança informação no âmbito das atividades de negócios, https://docs.google.com/viewer?a=v&pid=gmail&attid=0.1&thid=127d53d86672 6f2e&mt=application/pdf&url=https://mail.google.com/mail/%3Fui%3D2%26ik% 3Df279e688e2%26view%3Datt%26th%3D127d53d866726f2e%26attid%3D0.1 %26disp%3Dattd%26realattid%3Df_g7os7a100%26zw&sig=AHIEtbRkdu0dybD gUdYuFHFVzTegGicWTg&pli=1 consultado em 06/04/2010. • JARVINEM, Peterri. Segurança da informação para empresas, www.cibernarium.tamk.fi/tietoturva2_pr/yrityksen_tietoturva_2.htm consultado em 06/04/2010. • OLIVEIRA GONÇALVES, Luis Rodrigo. O surgimento da norma nacional de segurança de www.lockabit.coppe.ufrj.br/rlab/rlab_textos.php?id=85 informação, consultado em 26/05/2010 • STEFANINI. Segurança da Informação, training.com.br/novosite/?page_id=273, consultado em 06/04/10. www.stefanini- • VIEIRA, Luis (crash). Mas o Que é Segurança da Informação? www.istf.com.br/vb/gestao-da-seguranca/4417-seguranca-da-informacao.html, consultado 22/04/10. Cloud Computing Bruno Yshizuka Beserra ¹ {[email protected]} Andersown Becher 2 ¹Unirondon Centro Universitário 2 Prof. Andersown Becher Paes de Barros - ICE. Av. Beira Rio, 3001 Jardim Europa – Cuiabá MT Abstract. This paper presents a new tool in computing the Cloud Computing or Computing in the clouds, the idea is that wherever the user be, using only the Internet, access them with the same ease of having them installed on our own computers, people do not need to install more software, everything will revolve around the Internet, which will be a platform complete applications. Providing increased scalability, efficiency and quickly. Resumo. O objetivo deste artigo é apresentar uma nova ferramenta na área da computação a Cloud Computing ou Computação em nuvens, á ideia é que em qualquer lugar que o usuário esteja, usando somente a internet, acessá-las com a mesma facilidade de tê-las instaladas em nossos próprios computadores, as pessoas não precisarão instalar mais softwares, tudo girará em torno da internet, que será uma plataforma completa de aplicações. Proporcionando maior escalabilidade, eficiência e rapidez. 1-INTRODUÇÃO Computação em nuvem é a interligação de vários servidores que fornecem recursos computacionais como armazenamento de dados, capacidade de processamento, conectividade, aplicativos e serviços disponibilizados na Internet. O usuário precisa ter apenas um computador capaz de acessar a Internet e a partir daí utilizar os aplicativos que necessitar, sem instalá-los em seu computador, todos os aplicativos poderiam ser executados na nuvem. O usuário pode acessar de qualquer lugar e a qualquer hora os dados e aplicações. Hoje há várias empresas investindo maciçamente neste campo. Esse artigo irá abordar os principais benefícios da computação em nuvem escalabilidade, redução de despesas operacionais, diminuição de gastos com equipamentos, independência de dispositivos e equipamentos. Além disso, permite que as organizações de TI aumentem significativamente as taxas de utilização do hardware, sem ter que constantemente investir em novas infraestruturas ou em licença de software. 2-COMPUTAÇÃO EM NUVEM 2.1-Como surgiu a Computação em Nuvem A computação em nuvem é uma evolução dos serviços e produtos de tecnologia da informação, também chamada de Utility Computing. O objetivo da Utility Computing é fornecer componentes básicos como armazenamento, processamento e largura de banda de uma rede, através de provedores especializados, com um baixo custo por unidade utilizada. Usuários de serviços baseados em Utility Computing não precisam se preocupar com espaço, pois a capacidade de armazenamento fornecida é praticamente infinita. A Utility Computing propõe fornecer disponibilidade total, isto é, os usuários podem ler e gravar dados a qualquer tempo, sem nunca serem bloqueados, os tempos de resposta são quase constantes e não dependem do número de usuários simultâneos, do tamanho do banco de dados ou de qualquer parâmetro do sistema. Os usuários não precisam se preocupar com backups, pois se os componentes falharem, o provedor é responsável por substituí-los e tornar os dados disponíveis em tempo hábil por meio de réplicas[1]. Uma razão importante para a construção de novos serviços baseados em Utility Computing é que provedores de serviços que utilizam serviços de terceiros pagam apenas pelos recursos que recebem, ou seja, pagam pelo uso. Não são necessários investimentos iniciais em TI e o custo cresce de forma linear e previsível com o uso. Dependendo do modelo do negócio, é possível que o provedor de serviços repasse o custo de armazenagem, computação e de rede para os usuários finais, já que é realizada a contabilização do uso. 2.1.1-Conceito de Computação em nuvem “A computação em nuvem está se tornando uma das palavras chaves da indústria de TI. A nuvem é uma metáfora para a Internet ou infraestrutura de comunicação entre os componentes arquiteturais, baseada em uma abstração que oculta à complexidade de infraestrutura. Cada parte desta infraestrutura é provida como um serviço e, estes são normalmente alocados em centros de dados, utilizando hardware compartilhado para computação e armazenamento” [2]. Para utilizarem os serviços, os usuários necessitam apenas ter em suas máquinas um sistema operacional, um navegador e acesso a Internet. Todos os recursos computacionais estão disponíveis na nuvem e as máquinas dos usuários não necessitam ter altos recursos computacionais, diminuindo o custo na aquisição de máquinas. Todo hardware pode ser utilizado para realizar alguma tarefa que seja adequada ao seu poder de processamento. Novos recursos de hardware podem ser adicionados a fim de aumentar o poder de processamento e cooperar com os recursos existentes. A infraestrutura do ambiente de computação em nuvem normalmente é composta por um grande número, centenas ou milhares de máquinas físicas, conectadas por meio de uma rede como ilustra a Figura 1. Cada máquina física tem as mesmas configurações de software, mas pode ter variação na capacidade de hardware em termos de CPU, memória e armazenamento em disco. Dentro de cada máquina física existe um número variável de máquinas virtuais em execução, de acordo com a capacidade do hardware disponível na máquina física. Figura 1 – Como a computação em nuvem funciona Fonte: http://blog.corujadeti.com.br/cloud-computing-e-suas-compras-primeirotrimestre-aquecido/ O modelo de computação em nuvem foi criado com o objetivo de fornecer serviços de fácil acesso, baixo custo e com garantias de disponibilidade e escalabilidade. Este modelo visa fornecer, alguns benefícios. O primeiro benefício é reduzir o custo na aquisição e composição de toda infraestrutura requerida para atender as necessidades das empresas, podendo essa infraestrutura pode ser composta sob demanda e com recursos de menor custo. O segundo é a flexibilidade que esse modelo oferece no que diz respeito à adição e substituição de recursos computacionais, podendo escalar tanto em nível de recursos de hardware quanto software para atender as necessidades das empresas e usuários. O último benefício é prover uma abstração e facilidade de acesso aos usuários destes serviços. Neste sentido, os usuários dos serviços não precisam conhecer aspectos de localização física e de entrega dos resultados destes serviços. 2.2-Modelos de serviços A Computação em Nuvem está ligada a três áreas da TI: infraestrutura, plataforma e software. O que muitas vezes pode ser referenciado como formas, segmentos, estilos, tipos, níveis ou camadas de computação em nuvem. Ao invés de se falar em diferentes funcionalidades providas, é melhor pensar em diferentes camadas, porque infraestrutura, plataforma e software logicamente construídos e subsequentemente interligados dão um caráter mais arquitetural e de integração entre os níveis. Como a entrega dos recursos de TI ou capacidades como um serviço é uma característica importante de Cloud Computing, as três camadas de arquitetura de Cloud Computing são: 1. Infraestrutura como serviço (IaaS); 2. Plataforma como Serviço (PaaS); 3. Software como Serviço (SaaS). Figura 2 - As três camadas de computação em nuvem: SaaS, PaaS e IaaS 2.2.1-Infraestructure as a Service – IaaS Característica provida para o cliente que faz o processamento, rede e outros recursos computacionais fundamentais onde o cliente está apto a implantar e rodar qualquer software, o que pode incluir sistemas operacionais e aplicações. O cliente não gerencia ou controla os recursos por trás dessa infraestrutura; contudo, tem controle sobre o sistema operacional, aplicações e possibilidade de controle limitada a alguns tipos de componentes de rede como, por exemplo, firewall. IaaS oferece recursos computacionais como processamento ou armazenamento, os quais podem ser obtidos como se fossem um serviço. Ao invés de vender infraestrutura de hardware, provedores de IaaS oferecem infraestrutura virtualizada como um serviço. Denomina o nível de hardware puro, como computação, armazenamento e recursos de rede como camada de fábrica. Virtualizando, recursos de hardware que são abstraídos e encapsulados e consequentemente ser expostos à próxima camada e aos usuários finais através da padronização de interfaces como recursos unificados na forma de IaaS[3]. Já antes do advento da computação em nuvem, a infraestrutura já tinha sido colocada à disposição como um serviço por um bom tempo. Ela era referenciada como computação utilitária, o que é usada por muitos para denotar a camada de infraestrutura de computação em nuvem. Para as recentes ofertas de mercado de computação utilitária, ficou claro que para seus provedores terem sucesso, eles precisarão fornecer uma interface fácil de acessar, entender, programar e usar, como, por exemplo, uma API que habilita a fácil integração com a infraestrutura de clientes potenciais e desenvolvedores de aplicações SaaS. Os centros de dados de provedores de computação utilitária serão utilizados suficientemente somente se tiverem abaixo de si massas críticas de dados de clientes e provedores de SaaS. Como uma consequência de requisitos para o fácil e abstrato acesso à camada física da nuvem, virtualização da camada física e plataformas programáveis para desenvolvedores emergem como principais características das nuvens. 2.2.2-Platform as a Service – PaaS Característica provida pela nuvem que possibilita ao usuário portar dentro da nuvem aplicações produzidas pelo cliente ou de terceiros, usando linguagens de programação e ferramentas suportadas pela nuvem. O cliente não gerencia ou mesmo controla os ativos que compõem essa infraestrutura; entretanto, tem controle sobre a aplicação implantada dentro da nuvem e configurações de ambiente dentro da mesma. Plataformas são camadas de abstração entre aplicações de software e a infraestrutura virtualizada. As ofertas de PaaS são alvo dos desenvolvedores de software que podem escrever suas aplicações de acordo com as especificações de uma plataforma em particular sem a necessidade de se preocuparem com a camada subjacente de infraestrutura de hardware. Os desenvolvedores fazem o upload de seus códigos para a plataforma, o que deve aumentar o alerta pela monitoração e gerenciamento automático quando o uso da aplicação cresce. As funcionalidades providas pelo PaaS podem cobrir todas as fases de desenvolvimento de software ou talvez especializada em uma dada área como o gerenciamento de conteúdo A camada PaaS da nuvem tem como base a padronização de interface da camada IaaS que virtualiza o acesso a recursos disponíveis, provê interfaces padronizadas e plataforma de desenvolvimento para a camada SaaS. 2.2.3-Software as a Service – SaaS Serviço disponibilizado aos clientes que permite o uso de aplicações no provedor que rodam dentro da infraestrutura de nuvem. As aplicações estão acessíveis a qualquer cliente através de vários tipos de dispositivos, como uma interface web. O consumidor não gerencia ou controla o que há por baixo da infraestrutura como rede, servidores, sistemas operacionais ou até mesmo algumas aplicações específicas. SaaS é o software de um provedor que é possuído, integrável e gerenciável de forma remota e negociado de forma pay-per-use. SaaS é a camada mais visível em cloud computing para usuários finais, porque são as aplicações de software que são acessadas e usadas. Da perspectiva dos usuários, obter um software como serviço é mais motivador pelas vantagens de custo ao modelo de pagamento baseado em utilitário. Os usuários mais comuns do SaaS normalmente não têm conhecimento nem controle sobre a camada abaixo, seja ela a imediatamente abaixo à plataforma como serviço ou os hardwares da infraestrutura como serviço. Entretanto, essas camadas abaixo são de grande relevância para o provedor de SaaS, porque elas são a base da infraestrutura, podendo ser vendidas e terceirizadas. Como exemplo típico, cita-se que uma aplicação pode ser desenvolvida em uma plataforma qualquer e rodar em infraestrutura de terceiros. Ter-se uma plataforma e infraestrutura como serviço é um atrativo para os provedores de SaaS, pois pode aliviá-los de pesadas licenças de software e custos de investimentos em infraestrutura, além da flexibilidade. Isso também possibilita a corporação a focar em suas competências principais, que estão intimamente relacionadas ao negócio da empresa. De acordo com os analistas de mercado, o crescimento pela inserção dentro do modelo de SaaS pelas empresas e a alta pressão de reduzir custos de TI são os maiores drivers pela alta demanda e crescimento do SaaS, também pelo crescimento por Cloud Computing nos próximos anos. 2.3-Sistemas Comerciais A seguir alguns exemplos de sistemas comerciais disponível: Dropbox É um serviço de armazenamento e sincronização de arquivos disponível em versão gratuita tem limite de espaço em 2GB e paga. Funciona a partir de um aplicativo instalado na maquina do usuário que realiza o upload de todos os arquivos de uma determinada pasta para os servidores da empresa, a partir daí, seus documentos estarão disponíveis online e sincronizados com outros computadores que tenham o determinado acesso. Google AppEngine É uma plataforma de hospedagem e desenvolvimento de aplicativos na web disponibilizada em versões gratuita, limitada e paga pela Google. Opera em um nível mais alto que o caso anterior, com a plataforma como serviço PaaS, rodando nos datacenters do Google. Google Docs O Google Docs é da categoria de software como serviço (SaaS), oferece uma gama de aplicativos de escritório (Office) como editor de texto, planilha e apresentação, tudo online. Além de manter todos os dados na Nuvem, podendo ser acessado de qualquer lugar com conexão à Internet, possibilita o compartilhamento e a colaboração de outros usuários. Google Chrome OS Produto em fase de desenvolvimento que pretende oferecer um Sistema Operacional voltado para computadores do tipo netbooks rodando aplicativos da web. Expandindo o princípio do Google Docs, o Chrome OS quer levar todas as atividades realizadas em um sistema operacional para a Nuvem, funcionando apenas como interface para todos os aplicativos que rodam em datacenters. Tanto seus dados quando seus programas não estão instalados em sua máquina, o que cria uma dependência total da Internet levando ao seu principal problema, onde nada poderia ser feito em um local sem conexão com a rede. 2.4-Vantagens Algumas das vantagens do sistema computação em nuvem, detectadas inicialmente são: Disponibilidade – O usuário pode acessar aplicações e dados de qualquer lugar e a qualquer hora. Escalabilidade – O usuário pode a qualquer momento aumentar ou diminuir os recursos alocados (memória, processamento e Espaço de armazenamento) de acordo com suas necessidades. Economia – O usuário diminuirá seus gastos como por exemplo: com infraestrutura, equipamentos, licenças de aplicativos proprietários, energia elétrica e manutenção de equipamentos. 2.5-Desvantagens Sendo a computação em nuvem uma forma de centralizar aplicações e armazenar dados, há uma grande preocupação no que diz respeito à segurança e privacidade. Ao utilizar o sistema, o usuário entrega seus dados e informações importantes aos cuidados de outra empresa, o que para muitos é uma questão bastante complicada, causa uma sensação de vulnerabilidade, ao contrário de hoje que estes dados e informações são bem guardadas por seus proprietários. A privacidade pode ser comprometida já que um cliente pode se logar de qualquer local e acessar aplicações, para este fim as empresas que fornecem os serviços da computação em nuvem estudam uma forma de proteção, como técnicas de autenticação o usuário e a senha, outra forma é empregar um formato de autorização por níveis de permissões, onde cada usuário acessa somente o que lhe é permitido. A IBM recentemente divulgou uma nova oferta de segurança a qual descreve como a Plataforma de Segurança de Rede Virtualizada, um dispositivo virtual que consolida aplicativos de segurança como prevenção contra intrusos, além de proteger aplicativos web e oferecer a política de rede em uma única solução. 3.0-CONCLUSÃO A computação em nuvem é uma tecnologia que proporcionará grandes avanços na de conexões em rede. Apesar de ainda não ser muito conhecido, já se pode ter uma visão de como se comportará no futuro, é uma espécie de aprofundamento da Internet. Ela proporciona uma nova forma de conexão na rede mundial. Se imaginarmos que os aplicativos e os dados armazenados estarão sempre disponíveis onde quer que estejamos, e não em um local resguardado e de difícil acesso, haverá um ganho considerável de portabilidade e eficiência. Os gastos em infraestrutura cairão sem contar que a dependência de atualizações e aquisições de softwares diminuiria. Fica claro que a computação em nuvem tem tudo para dar certo, evidentemente tomando as devidas precauções em relação à segurança, que é o ponto a ser mais estudado e meio indefinido. Porém as vantagens do uso dessa tecnologia podem ser um grande fator para sua expansão, já que com ela estaria diminuindo esta corrida de sempre aumentar o potencial dos computadores e os lançamentos incessantes de novos softwares, além de diminuir os custos de manutenção e suporte técnico. Diante disto, pode-se esperar um crescimento considerável daqui por diante. Em curto prazo, talvez o que realmente chama atenção são as vantagens, posteriormente, com certeza pesará a confiabilidade e segurança. REFERÊNCIAS [1] - Brantner, M., Kossmann, D (2008). Building a database on s3. In Proceedings of the 2008 ACM SIGMOD international conference on Management of data - New York. [2] - Buyya, R., Broberg, J., and Brandic, I. Cloud computing and emerging it platforms, (2009). [3] - FOSTER, I. What is the Grid? A Three Point Checklist. Argonne National Laboratory & University of Chicago, julho 2002. AMAZON. Elastic Compute Cloud. Disponível <http://aws.amazon.com/ec2/>. Acesso em: 27 abril de 2011. Cezar Taurion CLOUD COMPUTING – Transformando o mundo da tecnologia. (2009). Computação em em: nuvem: Computação nas nuvens – Disponível em: <http://www.oficinadanet.com.br/artigo/923/computacao_nas_nuvens> Acesso em: 29 de abril de 2011. Computação nas nuvens – Disponível em: <http://www.infowester.com/cloudcomputing.php> Acesso em: 29 de abril de 2011. Computação em nuvem: Conceitos, Técnologias, Aplicações e Desafios – Acessado em 09/04/2010 <http://www.ufpi.br/ercemapi/arquivos/file/minicurso/mc7.pdf>. Gerard Blokdijk, Ivanka Menken Cloud Computing - The Complete Cornerstone Guide to Cloud Computing Best Practices – (2009). O que é Cloud Computing (Computação nas Nuvens)? – Disponível em: <http://www.infowester.com/cloudcomputing.php> Acesso em: 29 de abril de 2011 O que é Computação em Nuvens?– Disponível em: http://www.tecmundo.com.br/738-o-que-e-computacao-em-nuvens-.htm> Acesso em: 01 de maio de 2011. < Robinson D. (2008). Amazon Web Services Made Simple. Taurion Cezar. Cloud Computing: Computação em Nuvem: Transformando o mundo da tecnologia da informação. Rio de Janeiro: Brasport, 2009. Yigitbasi, N., Epema D., (2009). A framework for performance analysis of computing clouds. (2009). IPv6 como contribuição a proteção da Propriedade Intelectual na Internet Rogério Antonio Duarte Batista1 Rodrigo Elias de Souza1 Andersown Becher Paes de Barros² 1 Unirondon – Centro Universitário Cândido Rondon 2 Faculdades Integradas ICE [email protected], [email protected] Resumo. Este artigo tem como objetivo apresentar o já existente protocolo IPv6 como alternativa para proteção do conteúdo que é propriedade intelectual do autor, tutelado segundo o Direito. A implantação do protocolo também será uma solução para o tão próximo esgotamento dos endereços IP na Internet, através de novos endereços fixos para uma quantidade muito maior de usuários no atual protocolo IPv4. Palavras-chave: IPV6, ESGOTAMENTO IP, PROPRIEDADE INTELECTUAL. Abstract. This article aims to present the existing IPv6 protocol as an alternative to protect the content of the intellectual property of the author, protected under the law. The implementation of the protocol will also be a solution as close to the depletion of IP addresses on the Internet, through new fixed addresses for a much larger number of users in the current IPv4 protocol. Key Words: IPV6, DEPLETION IP, INTELLECTUAL PROPERTY. 1 INTRODUÇÃO Com o crescimento do uso da internet em todo o mundo, o esgotamento dos endereços IP para o protocolo IPv4 fica mais próximo. A preocupação com a falta de endereços IP existe desde 1990, quando um novo protocolo passou a ser cogitado por alguns e outros criaram soluções alternativas que fariam a solução do esgotamento dos endereços ser adiada por um tempo. Além da limitação de endereços, a ausência da camada de segurança contribui com o anonimato na Internet, o que cria um contexto mais favorável à prática de delitos virtuais. Ao analisarmos o contexto atual (esgotamento dos endereços IP, falta da camada de segurança e restrições no acesso a informações sobre a conexão dos usuários), o já existente protocolo IPv6 possui os requisitos técnicos para contornar tais itens que podem ser de grande preocupação quando o assunto é acesso a Internet. As novas funcionalidades serão delimitadas como recursos que poderão ser alternativas para o combate ao descumprimento dos Direitos do Autor do Programa de Computador, que é produto intelectual do mesmo e está amparado segundo o Direito. 2 O protocolo IPv6 Martínez define IPv6 como “a nova versão do protocolo de redes de dados nos quais a Internet está baseada”, acrescentando que “a principal motivação para o desenvolvimento e lançamento do IPv6 foi a expansão do espaço de endereços disponíveis na Internet, permitindo assim que se conectem bilhões de novos dispositivos (PDAs, telefones celulares, etc), novos usuários e tecnologias sempre-conectada (xDSL, cabo, Ethernet ou fibra direto na residência, comunicação via rede elétrica, etc)”. Outro conceito, desta vez segundo o Núcleo de Informação e Coordenação (NIC), diz que o “IPv6 traz para a Internet um espaço de endereçamento capaz de suportar o crescimento da rede indefinidamente ou, pelo menos, em qualquer futuro que pudemos imaginar até agora. Além de resolver o problema de espaço, o novo protocolo também apresenta avanços em áreas como segurança, mobilidade e desempenho”. O NIC elencou os objetivos da criação do IPv6 que serão capazes superar as principais falhas do IPv4 e introduzir novas funcionalidades, dos quais destacamos: a. O aumento do número de endereços na Internet. b. Prover melhor segurança, criar mecanismos de proteção no próprio protocolo. Confidencialidade e privacidade: algo que falta no IPv4 e que é implementado a nível de aplicação é justamente a confidencialidade. Torna-se necessário codificar os dados a nível de IP. c. Fazer o possível para que um host tenha mobilidade sem mudar seu endereço. d. Permitir que o protocolo evolua no futuro. e. Permitir que protocolos antigos e novos coexistam por anos. A solução para a limitação de endereços na Internet que o referido protocolo oferecerá está baseada em uma prática que colaborará com outros dois aspectos apresentados (falta da camada de segurança e restrições no acesso a informações sobre a conexão dos usuários), tendo em vista que cada usuário terá um IP fixo, caracterizando uma identidade na Internet. 2.1 Dia Mundial do IPv6 No dia 08/06/2011 aconteceu o “Dia Mundial do IPv6” (World IPv6 Day), coordenado por The Internet Society1 (ISOC). A proposta foi feita para que nesse dia o protocolo IPv6 fosse testado amplamente durante 24 horas. Grandes provedores de serviços na Internet, como Google, Facebook, Yahoo, dentre outras, utilizaram o protocolo durante as 24 horas, conforme publicado no dia 08/06/2011 no site da coordenação do Dia Mundial do IPv6. 1 A ISOC (Internet Society), como definido em seu próprio site, “é uma associação sem fins lucrativos, criada em 1992, com atuação internacional, que tem por objetivo promover liderança no desenvolvimento dos padrões Internet, bem como fomentar iniciativas educacionais e políticas públicas ligadas à rede mundial entre computadores. A repercussão foi de um dia de sucesso. De acordo com a publicação feita pelo Google em 08/06/2011, podemos perceber que o protocolo atendeu as expectativas em geral. A Federação Nacional da Informática (FENAINFO) divulgou no dia 09/06/2011 que o dia de testes do novo protocolo aconteceu sem nenhum incidente. Também publicou no mesmo dia que a Polícia Federal foi o único órgão público do Brasil que participou do Dia Mundial do IPv6. A participação da Polícia Federal, também responsável por investigações de crimes virtuais e afins, nos convida a perceber que há interesse por parte do órgão na migração para o novo protocolo, e para tal migração pretendem estar com sua infraestrutura apta. 3 Proteções do Direito a Propriedade Intelectual 3.1 O bem Segundo Grau-Kuntz, “o direito de propriedade intelectual é um fenômeno jurídico moderno, fruto do antropocentrismo e do liberalismo econômico, e para bem compreendermos o que vem a ser é necessário esclarecer as diferenças entre o direito de propriedade sobre as coisas e o direito de propriedade intelectual”. A definição nos evidencia a importância daquilo que o Homem produz através de sua capacidade intelectual e dos cuidados jurídicos para com tal, que tem por denominação “propriedade” de alguém. No Brasil, a Propriedade Intelectual teve seu ápice com a Constituição Federal de 1988 que a define como Direito Humano Fundamental, passando a fazer parte de direitos como à vida, à saúde, segurança, dentre outros. Com tal garantia constitucional, o cidadão passa ser seguro de que o seu direito de propriedade será resguardado. 3.2 Aspectos jurídicos do bem O tratamento jurídico ao bem é esclarecido segundo Dewes ao dizer que “a maioria das teorias que relacionam direitos de propriedade intelectual com desenvolvimento considera que o sistema de mercado é crucial para que haja desenvolvimento, havendo respeito para com direitos de propriedade em geral e com direitos de propriedade intelectual em particular”. Proteger o bem intelectual do Homem é uma valorização ao desenvolvimento de frutos do seu intelecto, podendo também ser expandido como produto no mercado. Uma vez que a proteção legal já existe, aspectos técnicos que contribuem com a tutela ao bem trazem melhores condições para execução da proteção que o Direito assegura. O portal de notícias G1 publicou que o download ilegal poderá deixar 1,2 milhão de pessoas desempregadas somente na União Europeia até 2015, e que a perda será em torno de 240 bilhões de euros caso nada seja feito a respeito. São números expressivos por tratar-se apenas de um dos continentes do mundo. 3.3 Tratamento legal dado ao bem O Instituto Brasileiro de Propriedade Intelectual assevera que “alguns tipos de criações, como o ‘design’, o ‘software’, os circuitos integrados, as variedades vegetais, passaram a ser objeto de leis especiais, que lhes conferem um tratamento ‘sui generis’2 e que se preocupam com salvaguardas que impeçam sua exploração de forma abusiva”. O crescimento do uso da Internet em todo o mundo é uma estatística do sucesso da informatização. O jornal Folha de São Paulo divulgou no dia 26/01/2011 que o número de usuários da Internet chegou a marca de 2 bilhões, segundo a União Internacional de Telecomunicações, e fez um comparativo com a população mundial, indicando que estamos próximos a estatística de que a cada 3 pessoas no mundo, uma tem acesso a Internet, já que a população mundial está alcançando 6,8 bilhões. Tal número de usuários é resultado de um constante crescimento nos últimos anos, o que tende a continuar crescendo com o aumento das facilidades do uso da Internet, e um dos meios de crescimento é demonstrado através da alta na aquisição de tecnologia móvel, complementa a matéria da Folha de São Paulo. O aumento constante no número de usuários nos leva a análise do atual protocolo de Internet, o IPv4. Segundo o Núcleo de Informação e Coordenação (NIC), o esgotamento dos endereços de IP já é uma preocupação desde 1990, quando foram iniciados passos para o desenvolvimento de um novo protocolo para suprir a necessidade de novos endereços de IP com o crescimento de usuários na Internet. 2 O DireitoNET, dicionário jurídico online recomendado pelo Supremo Tribunal Federal, define que “sui generis é uma expressão em latim que significa „de seu próprio gênero‟ ou „único em sua espécie‟. Muita utilizada no Direito indica algo que é particular, peculiar, único. Reporta-se a um fato singular, por exemplo.” Em paralelo aos estudos para um novo protocolo, soluções alternativas surgiram para contornar temporariamente o problema. Uma delas chama-se NAT (Network Adress Translation), o qual possibilita uma rede de endereços privados serem autenticados na Internet utilizando apenas um endereço de IP válido, alternativa essa que ainda é muito utilizada, mas que de fato não resolve o esgotamento de endereços no protocolo IPv4. Outra estatística que aumentou com o grande número de usuários na Internet foi a de crimes virtuais. O Estadão publicou no dia 17/01/2010 que de acordo com o Centro de Estudos, Resposta e Tratamento de Incidentes de Segurança no Brasil, somente no Brasil as fraudes aumentaram em 6,513% entre 2004 e 2009. No decorrer da matéria o delegado Araújo, da Unidade de Inteligência Policial do Departamento de Investigações sobre o Crime Organizado (Deic), diz que "O crime é online. A legislação, offline. Se temos suspeitas e precisamos colher informações de um provedor de acesso, temos de pedir mandado à Justiça, que decide se aceita ou não. (Temos de)esperar a Justiça notificar o provedor, o provedor responder à Justiça e só aí recebemos a informação. Nesse tempo, o suspeito já sumiu". O que Araújo relata como dificuldade é uma característica de falta de segurança e limitações do protocolo IPv4. A ausência da camada de segurança é afirmada, segundo Vaz Campos e Fernandes, do Grupo de Teleinformática e Automação da Universidade Federal do Rio de Janeiro, ao dizerem que o protocolo IPv4 "foi 'desenvolvido para ser usado em redes onde as pessoas confiam umas nas outra' e não em um ambiente anárquico como a Internet atual". A mais recente preocupação mundial com crimes virtuais foi lançada pelos Estados Unidos ao divulgar um documento com 25 páginas com o título "Estratégia Internacional Americana para o Ciberespaço" (International Strategy for Cyberspace). Segundo a revista Veja, publicado no dia 17/05/2011, a estratégia é baseada em sete medidas, das quais destacamos a defesa do direito autoral. O site do Departamento de Defesa dos Estados Unidos (U. S. Departamentof Defense) ao publicar também no dia 17/05/2011 sobre a estratégia, acrescenta que o país já possui aliados para execução da mesma e elenca passos que serão dados para execução. 3.4 O Programa de Computador De acordo com o artigo 1° da Lei 9.609/98 (Lei de Software), Programa de Computador “é a expressão de um conjunto organizado de instruções em linguagem natural ou codificada contida em suporte físico de qualquer natureza, de emprego necessário em máquinas automáticas de tratamento da informação, dispositivos, instrumentos ou equipamentos periféricos, baseados em técnica digital ou análoga, para fazê-los funcionar de modo e para fins determinados”. A Lei do Software nos permite entender que a tutela não abrange somente programas já concebidos. Até mesmo ideias do autor no processo de idealização do programa estão protegidas pela lei, sejam elas dispostas em qual forma. 3.5 A responsabilidade jurídica Após ter conhecimento de alguns pontos da definição jurídica em torno do programa de computador, é possível perceber através da experiência de internauta que existe uma difusão ilegal de conteúdo intelectual através de um dos principais meios de acesso a conteúdos: a Internet. O protocolo IPv6, por suas funcionalidades, permite que os entes envolvidos no procedimento de publicação de conteúdo, que por ventura infringe o direito do autor, tenham informações técnicas do usuário que praticou o delito, pois o mesmo terá o seu endereço de IP fixo e através análises de relatórios de ações desse usuário na Internet, permitirá identificá-lo como infrator com mais facilidade, permitindo então que a responsabilidade jurídica seja aplicada. Um importante passo para a ampliação da responsabilidade foi dado pelo Governo do Estado de São Paulo com a publicação da Lei nº 12.228, de 11 de janeiro de 2006, na qual todos os estabelecimentos que comercializam um período de acesso a Internet por qualquer usuário (intitulados como Lan House) são obrigados a cadastrar informações pessoais de todos que utilizarem seus serviços de acesso à Internet, bem como registrar os períodos de acesso para o caso de ser necessária qualquer auditoria pelas autoridades competentes. Tais informações serão de grande valia para que as investigações apontem para o usuário que esteve no estabelecimento e cometeu certa infração. 4 IPv6 e sua aplicação em defesa da Propriedade Intelectual Com um protocolo que permite a cada usuário ter seu endereço IP fixo, a garantia de uma identidade, o anonimato na Internet poderá ser reduzido, e as ações nas Internet poderão ser relacionadas mais facilmente até um infrator, com ajuda de análises feitas pelos provedores de Internet e também pelos responsáveis por servidores que hospedam conteúdo na web. O envio e download do conteúdo disponibilizado ilegalmente na Internet já é visto através de estudos como um impacto negativo na economia, gerando prejuízo e desemprego. Um avanço importante para a migração do IPv4 para o IPv6 foi o Dia Mundial do IPv6 que, por ter sido apoiado por grandes empresas e ter resultado na utilização que atendeu ao que esperava-se, já pode ser visto com mais credibilidade no seu funcionamento. Foi transposta a barreira de um protocolo que era antes somente uma proposta. Agora o mesmo já pode ser prática para usuários e empresas na Internet. 5 CONCLUSÃO Tratando-se tecnicamente e legalmente, evidenciamos o uso do protocolo IPv6 como uma alternativa para melhoria no primeiro aspecto e auxílio no cumprimento do segundo. O esgotamento dos endereços IP no protocolo IPv4 é uma preocupação que os dados mostram aproximar-se cada dia mais. Além do aumento dos endereços de IP, utilizar o protocolo IPv6 fará com que os usuários possam ter identidade na Internet, através principalmente do seu IP que será fixo. Identidade em um ambiente como a Internet nos permite ter mais segurança do conteúdo que será disposto na mesma e também das ações dos usuários. A camada de segurança que o protocolo IPv6 provê nos permite completar o sentido de ambiente seguro. Infrações na Internet poderão ser combatidas com mais facilidade por aqueles a que competem tal função, acrescentando a melhor condição para proteção aos Direitos do Autor. 6 REFERÊNCIAS BIBLIOGRÁFICAS RIBEIRO, Bruna. Jornal da Tarde. Disponível em: <http://www.estadao.com.br/noticias/cidades,crimes-virtuais-cresceram-6513-no-pais-emcinco-anos-diz-estudo,539721,0.htm>. Acesso: 16/06/2011. PELLERIN, Cheryl. U.S. Department of Defense. Disponível em: <http://www.defense.gov/news/newsarticle.aspx?id=63966>. Acesso: 16/06/2011. FRANCE-PRESSE. Veja – Vida Digital. Disponível em: <http://veja.abril.com.br/noticia/vida-digital/eua-prometem-intensificar-combate-a-crimesvirtuais>. Acesso: 16/06/2011. NOTÍCIAS, Agência de. Jornal Folha. Disponível em: <http://www1.folha.uol.com.br/tec/866276-numero-de-usuarios-de-internet-alcanca-os-2bilhoes-no-mundo.shtml>. Acesso: 17/06/2011. COORDENAÇÃO, Núcleo de Informática e. Artigo. Disponível em: < http://www.ipv6.br/IPV6/ArtigoEsgotamentoIPv4>. Acesso: 17/06/2011. MARTÍNEZ, Jordi Palet. Portal IPv6. Disponível em: < http://portalipv6.lacnic.net/pt-br/ipv6/novedades/o-que-ipv6>. Acesso: 17/06/2011. E-MATO GROSSO. Portal de Serviços e Informações do Estado de Mato Grosso. Disponível em: <http://www.mt.gov.br/wps/portal?cat=Ind_stria&cat1=com.ibm.workplace.wcm.api.WCM_C ategory%2FPropriedade+Industrial%2F85151d804fe4af0280b09494d1d615af%2FPUBLISHED& con=com.ibm.workplace.wcm.api.WCM_Content%2FPropriedade+Industrial%2Ffd124d804fe4 b0928cf09c94d1d615af%2FPUBLISHED&showForm=no&siteArea=In_cio&WCM_GLOBAL_CON TEXT=/wps/wcm/connect/portalmt/eMatoGrosso/Estado/Informa__es/Propriedade+Industrial>. Acesso: 17/06/2011. INTELECTUAL, Instituto Brasileiro de Propriedade. Disponível em: < http://www.ibpi.org.br>. Acesso: 18/06/2011. REUTERS, Da. G1. Disponível em: <http://g1.globo.com/Noticias/Tecnologia/0,,MUL1533735-6174,00PIRATARIA+NA+INTERNET+AFETA+MERCADO+DE+TRABALHO+DIZ+ESTUDO.html>. Acesso: 16/06/2011. CIBILS, Ana Inés. AFP – Google. Disponível em: <http://www.google.com/hostednews/afp/article/ALeqM5iNH1b-Xu1sQQR_Pm5PFoflrWk1g?docId=CNG.f070719cdf81de3809072bed2a7ed276.971>. Acesso: 14/06/2011. DIREITONET. Disponível em: <http://www.direitonet.com.br/dicionario/busca?palavras=sui+generis&x=0&y=0>. Acesso: 27/06/2011. INFORMÁTICA, Federação Nacional da. Artigo “Dia do IPv6 transcorre sem incidentes”. Disponível em: <http://www.fenainfo.org.br/info_ler.php?id=37370>. Acesso: 22/06/2011. INFORMÁTICA, Federação Nacional da. Artigo “Polícia Federal é o único órgão público do Brasil no ‘Dia do IPv6’”. Disponível em: <http://www.fenainfo.org.br/info_ler.php?id=37366>. Acesso: 22/06/2011. FEDERAL, Supremo Tribunal. Guia de Direito Constitucional - Dicionários Jurídicos Online. Disponível em: <http://www.stf.jus.br/portal/cms/verTexto.asp?servico=bibliotecaConsultaProdutoBiblioteca GuiaDC&pagina=dicionariojuridico>. Acesso: 27/06/2011. SOCIETY, Internet. Disponível em: <http://www.worldipv6day.org>. Acesso: 27/06/2011. DEWES, Mariana de Freitas. Artigo “Desenvolvimento e Propriedade intelectual: uma relação possível?”. Revista Eletrônica do IBPI, ANO I – Número 1. GRAU-KUNTZ, Karin. Instituto Brasileiro de Propriedade Intelectual. Disponível em: <http://www.ibpibrasil.org>. Acesso: 11/05/2011. INDUSTRIAL, Instituto Nacional de Propriedade. Disponível em: <http://www.inpi.gov.br>. Acesso: 12/05/2011. LEGISLAÇÃO – GOVERNO DO ESTADO DE SÃO PAULO. Disponível em: <http://www.legislacao.sp.gov.br>. Acesso: 14/05/2011. Considerando uma ferramenta ORM: Hibernate Lucas Kenji Ono Cardoso¹, Andersown Becher 2 Centro Universitário Candido Rondon – UNIRONDON¹ 2 Prof. Andersown Becher Paes de Barros - ICE. Abstract. Resumo. Este artigo visa demonstrar sobre a lacuna existente entre o paradigma Orientado Objeto e o Relacional, e apresentar uma alternativa para solucionar este problema, demonstrando as facilidades quando se adota uma ferramenta de Mapeamento Objeto Relacional justificado através de comparativos entre a ferramenta e o uso do Java Data Base Connection (JDBC). 1. Introdução Nos últimos anos, as linguagens de programação orientadas a objetos (OO) se propagam cada vez mais, e é grande o número de sistemas que têm sido desenvolvidos em linguagens que seguem este paradigma. Quando falamos de aplicações estamos quase sempre falando em armazenamento de dados, resultando então em sistemas gerenciados de banco de dados relacional (SGBD). Entretanto quando se utiliza estes dois modelos nos deparamos com uma lacuna (impendence mismatch), que são as diferenças técnicas entre estes dois paradigmas. Embora já existam SGDB Orientados Objeto, que de forma transparente evitam conversões explicitas dos tipos de dados entre a linguagem e banco de dados, o qual não se aplica ao modelo mais usando atualmente, modelo relacional. Para que uso destes seja transparente, é necessário então dispor de mecanismos que mapeiem estes objetos (classe/tabela) em memória. Este processo não é nativo entre as linguagens OO. Então o surgimento das ferramentas de mapeamento objeto relacional do inglês Object Mapping Relational (ORM). 2. Modelo Relacional O conceito do modelo relacional foi definido em 1970 por Edgar Frank Codd, no qual este modelo se baseia em álgebra relacional e na teoria dos conjuntos. Este modelo é baseado na percepção de um mundo real que consiste numa coleção de objetos básicos chamados de entidades [ARENGA 2007]. Podemos dizer que a estrutura base para este modelo é a relação, ou nomeada como tabela. Ou seja, um banco de dados relacional é composto por um conjunto de relações. O modelo de dados lógico relacional é atualmente o mais utilizado nos SGBDs comerciais. Entretanto, este modelo possui um sistema de tipos simples e restrito, o que dificulta a descrição de algumas aplicações atuais que necessitam tipos mais complexos e características do modelo Orientado a Objetos [SILVA 2005]. Devemos citar as seguintes vantagens no uso do modelo relacional [RODRIGUEZ e FERRANTE 2007]: A Estrutura dos dados é bastante flexível, diferente dos modelos anteriores. Visão simplificada dos dados. Permite a integração com o dicionário de dados. Normalização das tabelas, eliminando a fragmentação dos dados. Redução da duplicação de dados. Aumento na integridade dos dados. Acesso aos dados simplificados. 3. Modelo Orientado Objeto Orientação objeto, é um conceito que aprendemos muitos antes do que imaginamos, exemplificando, podemos citar uma professora do jardim, demonstrando uma maça (objeto) e sua cor (atributo). Este é um exemplo bem simples, mas que demonstra como este conceito esta presente no dia a dia. Surgimento do conceito surgiu no fim dos anos 60, a primeira linguagem a seguir o paradigma foi Simula 67, criada em 1967 por Ole Johan Dahl e Kristen Nygaard. Mas o termo programação orientada objeto foi criado por Alan Kay, criador da linguagem Smalltalk. Embora seja antigo este modelo só nos últimos 20 anos fortificou seu conceito e nos últimos 15 anos vem sendo aceita realmente. Atualmente linguagens como JAVA, CSHARP, RUBY, SCALA e muitas outras adotaram esta idéia. Embora nem todas utilizem totalmente o conceito de orientação objeto como c e c++ que usam modelo procedural com orientação a objetos. A idéia fundamental da programação orientada objeto (POO) é tentar simular o mundo real dentro do virtual, ou seja, aproximar o mundo real dentro da linguagem, pois se analisarmos, concluídos que o mundo real é feito de objetos. POO o programador deve moldar o mundo dos objetos, definirem suas propriedades, características, e como elas se relacionam entre si. Este paradigma baseia-se nos seguintes conceitos: classes, objetos, herança, polimorfismo, coleções. 4. O Problema Impendance Mismatch O paradigma orientado a objeto é baseado em princípios da engenharia de software enquanto o paradigma relacional é baseado nos princípios matemáticos, ocasionando então impedance mismatch [AMBLER 2002]. Este problema é caracterizado pelas diferenças técnicas encontradas entre o mundo orientado objeto e o mundo relacional. Ou seja, quando dois paradigmas subjacentes são diferentes, e em conjunto não funcionam perfeitamente [AMBLER 2002]. Seguinte exemplo para ilustrar essas diferenças [PANDA ET AL 2009]. Modelo OO (Java) Modelo Relacional Objeto, classes Tabelas, Linhas Atributos, Propriedades Colunas Identidade Chave Primária Relacionamento/Referências a outra Entidade Chave Estrangeira Herança/Polimorfismo Não suportado Métodos Paralelo, indireto à lógica SQL, procedimentos armazenados, gatilhos (triggers) Código é portável Não necessariamente portável, depende do fornecedor Tabela 1. Representação das diferenças entre modelo OO e Relacional Modelo relacional trabalha com linhas e colunas, no qual cada linha representa um registro. Se estes dados forem complexos, são criadas novas tabelas para conter essas informações relacionadas. Por sua vez, o modelo orientado objeto, não se limita em manter as informações em linhas e colunas. Cada registro (objeto) é uma instancia salva em memória. Assim cada registro contém informações para um registro. 5. Mapeamento Objeto Relacional O termo mapeamento Objeto Relacional (MOR) refere-se à técnica de mapear o registro do banco de dados em objetos e persistir as informações contidas nos objetos em forma de linhas e colunas [SILVA 2005]. É a persistência automatizada e transparente de objetos para tabelas em um banco de dados relacionais usando metadados que descreve o mapeamento entre objetos e o banco de dados. Possibilitando também a transformação dos dados das tabelas em dados representados por objetos [KING e BAUER 2007]. Toda solução ORM deve ter alguns recursos básicos, como refletir conceitos de chaves de herança, relacionamento e polimorfismo, alem disso deve também fornecer os principais recursos dos bancos de dados relacionais como manter os dados na forma normalizada [ANUJA 2007]. 6. Motivos para Adoção de uma Ferramenta MOR Devemos considerar uma ferramenta ORM pelo motivo de não existir um mapeamento direto dos tipos de dados entre as linguagens de programação e RDBMS, como por exemplo, Java [ANUJA 2007]. Alem disso, enquanto objetos são percorridos através de referencias diretas na memória, as tabelas dos bancos de dados são relacionadas através de chaves, primarias e estrangeiras. É necessário citar também, que os bancos de dados relacionais não suportam herança, algo muito comum em linguagem orientadas objeto. Ferramentas ORM devem ser capazes de fazer ponte entre mundo entidade relacional e orientado objeto, diminuindo o abismo entre as duas [PAULO, 2010]. Um exemplo citado pelo autor são as tabelas cumpridas que apareçam geralmente no mundo relacional. Mas classes com muitos atributos não são bem vistos no mundo orientado objeto. As ferramentas MOR devem possibilitar que mais classes possam representar uma tabela, e vice-versa. Outros benefícios com uso da ferramenta seriam: Produtividade: Eliminação de códigos de persistência, focando na regra de negocio. Usando ferramentas corretas você consegue ter um tempo de desenvolvimento rápido, mesmo utilizando bancos existentes, é possível mapear de tal maneira que se torne Orientada Objeto [BAUER E KING 2007]. Manutenção: Com menos linhas de códigos, o sistema se torna mais compreensível resultando em uma refatoração mais tranqüila [BAUER E KING 2007]. Portabilidade: Com uso do hibernate é possível migrar a base de dados alterando apenas alterando as configurações de conexão. Entretanto devemos atentar que ao uso de SQL Query, a portabilidade pode não ocorrer como esperado, pois para este caso, o comando é especifico, para cada base de dados [Manual]. Desempenho: De acordo com Silva (2007), “Tarefas manuais nem sempre tem melhor desempenho do que as tarefas automatizadas, considerando limitações de tempo e custo. Além disso, com o potencial aumento da produtividade o desenvolvedor poderá gastar mais tempo em possíveis gargalos.” Alem disso a finalidade dessas ferramentas é aliviar o desenvolvedor em 95% das tarefas de programação associadas à persistência dos dados, eliminando assim, à necessidade de processamento de dados manual usando SQL e JDBC. 7. Hibernate Hibernate teve seu inicio em 2001 por Gavin King como uma alternativa ao uso dos entity beans do Enterprise Java beans (EJB). Sua função na época era oferecer melhores recursos de persistência e alternativas que ejb2 não oferecia. Alem disso, é uma ferramenta de mapeamento objeto relacional de código aberto para linguagem de programação Java. Possibilitando o desenvolvimento de classes persistentes, utilizando recursos como associação, herança, polimorfismo e principalmente o uso de coleções. Porem não fornece somente estes recursos, também cuida da conversão dos tipos de dados SQL. Figura 1. Utilização completa dos recursos A figura 1 demonstra a camada onde se encontra o hibernate, entre a aplicação e o banco de dados. 7.1 Classes Persistentes São aquelas que implementam as entidades do problema do negócio. Por exemplo, Produto de uma aplicação gerencial como demonstrado na figura a seguir. Imagem 2. Exemplo classe utilizando modelo POJO Hibernate trabalha melhor se estas classes seguirem algumas regras, mas não são obrigatórias. Como seguir um modelo POJO (Plain Old Java Object). Antes da inclusão das anotações no java 5, Hibernate utilizava arquivos XML para mapeamento objeto-relacional(classe-tabela). Atualmente utilizamos anotações, para fazer tal mapeamento. Esta escolha fica a critério do desenvolvedor. A imagem 3 demonstra um exemplo de mapeamento O/R. Imagem 3. Mapeamento de uma classe para tabela 7.2 Estados dos Objetos Persistentes Uma instancia de uma classe de persistência pode estar associado em um de três estados diferentes, são eles: Transiente (Transient): é o estado não associados a qualquer banco de dados, linha de uma tabela, e assim sendo seu estado é perdido assim que não são mais referenciados pela aplicação [BAUER E KING 2007]. Essa instancia não é e nunca foi associada a uma sessão. Ou seja, não existe chave primária que a identifique [ANUJA 2007]. Persistência (Persistent): uma instância persistente possui uma representação no banco de dados e um identificador. Este identificador está associado com a chave primária que possivelmente corresponde a uma linha no banco de dados [ANUJA 2007]. Desatachado (Detached): A instância foi associada a uma sessão, mas a mesmo foi fechado, ou a instancia foi serializada por outro processo [ANUJA 2007]. 7.3 Tipos de Relacionamento Existem duas categorias de relacionamento de objetos. O primeiro baseado na multiplicidade, que incluem três tipos [ANUJA 2007; SILVA 2007]: Um para Um (One to One): Onde se faz uso da chave estrangeira relacionando duas tabelas. Um para Muitos (One to Many): Igual ao relacionamento anterior, a diferença é que a chave é colocada na tabela que possui objetos múltiplos. Muitos para um (Many to One): Existe uma tabela intermediaria que armazena as chaves das duas tabelas relacionadas. Segunda categoria inclui outros dois tipos: Unidirecional: Quando o um objeto contém referencia de outro objeto, mas o mesmo não contém referencia do primeiro. Bi-direcional: Quando objetos se referenciam. É possível ter seis diferentes tipos de relações. Entretanto o mundo relacional não suporta o conceito unidirecional. Em base de dados relacionais todos os relacionamentos são bidirecionais. 7.4 Análise do Código O uso da ferramenta ORM deve fornecer produtividade, manutentabilidade [BAUER e KING 2007], abaixo segue um exemplo de inserção de dados. Imagem 4. Persistência com JDBC A imagem 4 demonstra a maneira de persistência de dados utilizando o modo nativo (JDBC). É notável que quanto maior o número de campos persistidos, maior se tornará o código. Imagem 5. Persistência com Hibernate Já na imagem 5 demonstra a persistência de dados utilizando a ferramenta ORM. Ao contrario da figura 4, independentemente do número de campos a serem persistidos o código se manterá inalterável. Deixando todo trabalho de persistência para ferramenta, e não para o desenvolvedor, ocasionando em um ganho considerável na produtividade. Imagem 6. Select entre três tabelas usando JDBC Na imagem anterior estamos retornando uma coleção de dados contento o objeto cidade, objeto estado e o objeto pais. Percebe-se que para desenvolvimento dessa consulta, se gasta um tempo razoável em comparação ao uso da ferramenta demonstrado na figura 6. Imagem 7. Select entre 3 tabelas utilizando HQL Imagem 7 demonstra o poder do Hibernate Query Language (HQL), fornecendo uma linguagem mais enxuta, encapsula toda a construção dos objetos, deixando o código limpo e com fácil manutenção. Em comparativo com a figura 6 visualizamos uma redução drástica em número de linhas, ocasionando em produtividade e manutentabilidade. Foi utilizado nas figuras 3, 4, 5 e 6 um framework que cuida da parte de gerenciamento da sessão e conexão, não havendo necessidade de fechá-la após seu uso, pois a mesma encarrega-se de cuidar destes procedimentos. 7.5 Testes de Carga Para os teste, foi utilizando banco de dados postgre 8.4, Java Developement Kit 6 com suas configurações padrões. Máquina utilizada para teste foi Core 2 Duo 2.9 GHz, 2 GB de RAM. Alem disso, nosso banco para testes é composto por três tabelas que se relacionam de forma simples, pais – estado – cidade, na qual a tabela cidade contém um milhão de registros. Imagem 8. Consulta retornando 1milhão de registros A imagem 8 demonstra tempo em segundos, para retornar um milhão de registros, utilizando comando de consulta simples (select c.nome from cidade). Imagem 9. Consulta em 2 tabelas retornando 50 mil registros A imagem 9 foi adicionada um relacionamento com outra tabela (estado) utilizando comando simples de join (select c.nome, e.nome from cidade c left join estado e on (e.id = c_estado_id)). Imagem 10. Consulta em 3 tabelas retornando 10 mil registros Imagem 10 demonstra uma consulta simples retornando três dados, utilizando o comando de join entre cidade, estado e pais. Pode-se notar que quando temos consultas com mais de uma tabela o hibernate tem um desempenho melhor. Imagem 11. Inclusão de registros Imagem 11 demonstra a inclusão de um registro simples contendo sete campos. Embora o exemplo demonstre que o hibernate, foi mais rápido para persistência dos dados, p resultado é praticamente igual pois estão abaixo de 0,2 segundos. O Hibernate utiliza as melhores práticas para otimizações de consultas e persistência de dados. Embora em alguns casos o uso do JDBC seja mais vantagioso que o da ferramenta. 8. Conclusão Este artigo demonstrou as diferenças de incompatibilidade entre o paradigma orientado objeto e relacional. A solução corrigir esta lacuna é criar uma ponte entre esses dois mundos. Nota-se que o mapeamento objeto/relacional soluciona de maneira simples e transparente as diferenças técnicas. Foram realizados testes simples de carga, como consulta e inclusão de dados, utilizando SQL/JDBC e hibernate. Embora os testes estejam rodando em maquina local podemos ver claramente as diferenças. É visível que com uso do JDBC em alguns casos o desempenho é maior que com uso do hibernate. Apesar de que os testes demonstram queda de desempenho com a ferramenta, a diferença entre os resultados é muito pouco, alem disso é preciso levar em consideração que a ferramenta possui uma camada a mais, que sobrepõe o JDBC. Outro ponto forte ao se adotar alguma ferramenta de mapeamento objeto/relacional é a redução no código de persistência, dando foco ao desenvolvedor as regras de negócio. Devemos citar que a aplicação torna-se portável para qualquer SGBD. Vale ressaltar que não foi realizada nenhuma otimização no uso da ferramenta, como por exemplo, sistemas de cachê de segundo nível, o que torna as consultas mais rápida evitando buscas dos registros no banco de dados. Porém a arquitetura de uma aplicação deve ser analisada e forma coerente, pois hibernate não solucionará todos os problemas de uma aplicação, ficando a cargo do arquiteto definir se é viável sua adoção no desenvolvimento do software. É claramente visível que o uso de uma ferramenta ORM, é minimizado mais de 90 por cento de código de persistência, mas o resto fica a cargo do desenvolvedor resolver, que é o caso de consultas mais complexas e especificas. O que neste caso é aconselhável o uso do SQL/JDBC para ganho de desempenho nas consultas. Para que a adoção da ferramenta tenha sucesso, é necessário considerar fatores importantes como a documentação para utilização, tipo de comercialização, conhecimentos sobre a ferramenta, integração com quais bancos de dados, tipo de suporte fornecido, entre outros, caso contrário acarretara em problemas ao invés de solução. Podemos concluir que com uso do hibernate o ganho de produtividade é extraordinário, mas por outro lado, há perda de desempenho em relação ao uso do SQL/JDBC. Porem cabe a cada arquiteto definir o que é prioridade no projeto, analisar se desempenho é um ponto critico, como por exemplo, low-latency applications, onde milissegundos fazem diferença. 9. Referências ARENGA Mario (2007). “Modelação de Base de Dados. Modelo Relacional”, monografia, Universidade Autônoma de Lisboa. FERRANTE Agustin Juan, RODRIGUEZ Martius Vicente (2004). “Tecnologia de Informação e Gestão Empresarial”. COSTA J. Carlos (2007) “Desenvolvimento para web”. BAUER Christian, KING David (2004) “Hibernate in Action”. AMBLER, Scott (2002) “Mapping Objects to Relational Databases”. AGILE DATA “The O/R Impendance Mismatch” site na internet em http://www.agiledata.org/essays/impedanceMismatch.html, acessado em 28/03/2011. TAKAI O. K, ITALIANO Isabel C, FERREIRA João E. Introdução a Banco de Dados. 2005 BLOCH, Joshua (2008) “Effect Java” Segunda edição Alta books, Rio de Janeiro. FOWLER Martim (2006) “Padrões de Arquitetura de Aplicações Corporativas”. Bookman, Rio de Janeiro. MACÁRIO, Carla. BAURO, Stefano. “O Modelo Relacional”. SILVA, Anderson (2005). “Mapeamento Objeto-Relacional”, monografia. AGILE DATA. “Object-Relational Mapping – An Essay” site na internet em http://www.agiledata.org/essays/mappingObjects.html, acessado em 28/03/2011. SILVA, Carolina Fernanda (2007). ”Análise e Avaliação do framework Hibernate em uma aplicação cliente/servidor”, monografia. PANDA Debu, RAHMAN Reza e LANE Derek (2009). “EJB 3 Em Ação” Segunda edição, Alta Books. Rio de Janeiro. SILVEIRA, Paulo (2010). “Arquitetura de Aplicações Java”. Preview. SCHMITZ Daniel P (2010). “Dominando Flex e Java”. Sistema de Computação em Grade Adrien Ricardo Soares Catule Centro Universitário Cândido Rondon (UNIRONDON) Av. Beira Rio n° 3001 Jardim Europa Cuiabá – MT - Brasil Orientador: Andersown Becher Paes de Barros {Adrien} [email protected] [email protected] Abstract. This article will address the concepts, technologies, applications and bring a vision of using Grid computing today, one that arose with the evolution of processors, memory, operating systems, among other computing components. Helped to solve complex problems such as simulation of scientific models, computational biology, data mining, and among other. Currently there are several technologies that support grid computing, such as TeraGrid, Legion, Globus and SETI@Home. And for monitoring these grids, is used in this article, Ganglia. Resumo. Este artigo irá tratar dos conceitos, tecnologias, aplicações e trará uma visão do uso da Computação em Grade nos dias atuais, essa que surgiu com a evolução dos processadores, memórias, sistemas operacionais dentre outros componentes computacionais. Ajudou a resolver problemas complexos como simulação de modelos científicos, biologia computacional, mineração de dados, e outros mais. Na atualidade existem várias tecnologias que suportam a computação em grade, como o TeraGrid, Legion, Globus e SETI@Home. E para monitoramento destas grades computacionais, utiliza-se neste artigo, o Ganglia. 1-Introdução Existe um número imenso de computadores no mundo, vários podem estar desligados ou em estado ocioso (idle), e através de um sistema distribuído como o da computação em grade, os recursos como processamento, vídeo e memória desses computadores poderiam ser utilizados, trazendo benefícios e agilidade para a execução de diversos processos mais complexos no qual uma máquina comum não teria a capacidade de executar, como por exemplo, o tratamento de conjunto de imagens, biologia computacional, mineração de dados e simulação de modelos científicos e de engenharia. Sendo assim, pode-se ao invés de se obter um supercomputador, ter um conjunto de computadores compartilhando seus próprios recursos para a execução de um processo complexo. Para empresas que buscam sempre o melhor rendimento, menor custo, aumento na produtividade, compartilhamento de recursos ou informações, utilizar deste sistema é o mais viável. Na década de 90 foi concebido o termo Grade para uma infra-estrutura de distribuição de recursos computacionais como base de dados, servidores de armazenamento, rede de alta velocidade para solucionar problemas de grande escala, sendo essa infra-estrutura usada por engenheiros e cientistas da computação. Hoje, espera-se que através desta infra-estrutura, atualmente voltada para tecnologia de informação, que haja uma transformação na forma de comunicação, computação e colaboração. 2-História da Computação em Grade A computação em grade resulta de décadas de pesquisa das áreas de computação distribuída e processamento paralelo, onde sempre se procurou melhoria no desempenho computacional, sendo estes através de redes especializadas de alta velocidade, de máquinas dedicadas com vários processadores ou memória compartilhada. Todo esse trabalho levou a criação de supercomputadores como o IBM e NEC conhecidos por MPPs, que eram feitos para executarem tarefas especificas e tinham um custo muito elevado, também a criação dos NOWs, que por sua vez tinham um custo baixo e era composto por hardware e softwares comuns e se tratava de aglomerados de computadores. Em meios aos estudos e pesquisas realizadas para a melhoria no desempenho computacional, e o surgimento da internet, a comunicação entre os computadores se tornou global, o que possibilitou a criação de redes de compartilhamento de arquivos, comércio eletrônico, entre outros. Com isso foram criadas as redes P2P (peer-to-peer), que se por sua vez, trabalha também com o “compartilhamento” de qualquer tipo de arquivo, onde temos como exemplo o Ares, kazaa, Emule, Gnutella e Limewire. No entanto, existe a diferença entre as redes de compartilhamento P2P e a computação em grade, enquanto as redes P2P visam o compartilhamento de arquivos distribuídos geograficamente e o processamento dos mesmos é realizado em computadores de pequeno porte. Já a computação em grade visa agregar supercomputadores também distribuídos geograficamente, porém, para o processamento de uma grande quantidade de dados com o menor tempo possível. 3-Definições Para entender o que é computação em grade, temos mais algumas definições, como: “Computação em Grade é uma coleção de recursos heterogêneos e distribuídos possibilitando que sejam utilizados em grupo para executar aplicações de larga escala.” [LASZEWSKI 2002] "Grid é uma infra-estrutura emergente, que faz o processamento e o acesso a dados serem possíveis de qualquer lugar e a qualquer horário, sem que alguém seja obrigatoriamente notificado". [GriPhyN 2002] “Uma grade computacional é uma infra-estrutura de software capaz de interligar e gerenciar diversos recursos distribuídos geograficamente, com o objetivo de oferecer ao usuário da grade acesso transparente a esses recursos, independente de sua localização” [Goldchleger 2004] Muitos processos de grande escala, que exigem um tamanho de armazenamento e processamento muito alto como, operações de pesquisa, projetos de remédios e mineração de dados, podem ser divididos em sub-processos e solucionados individualmente. Sendo que algumas destas aplicações estão relacionadas ao termo eScience, que envolvem uma pesquisa realizada de forma colaborativa em escala global. “Este ambiente de eScience envolve o compartilhamento de instrumentos científicos, dados distribuídos, visualização remota e interpretação colaborativa de dados e resultados, se adequando perfeitamente às características de uma infra-estrutura de computação em grade.”[Buyya 2002] Portanto em uma grade computacional devemos lidar com seis aspectos principais para suportar esses tipos de aplicações: [Buyya 2002] Heterogeneidade: uma grade envolve uma grande quantidade de hardwares e softwares com tecnologias diferentes. Escalabilidade: uma grade deve ter a capacidade de expandir seus recursos de acordo com o que o processo necessite sem que haja perda de desempenho. Compartilhamento de Recursos: uma grade não pode ser dedicada a uma aplicação especifica. Múltiplos Domínios Administrativos: uma grade pode congregar recursos de várias instituições. Controle Distribuído: uma grade não deve conter uma única sala de controle ou somente um computador ou controlador com poder total sobre ela, sendo assim cada componente da grade deve ser autônomo. Dinamicidade e Adaptabilidade: uma grade deve ter a capacidade de se adaptar aos recursos disponíveis no momento, pois se houver falha em algum componente, qualquer perda de desempenho ou dados pode ser fatal. 4-Modelos de arquitetura da computação em grade Como citado já acima, a computação em grade necessita de recursos como processadores, memórias e todo recurso físico para o processamento de alguma aplicação, sendo estas compartilhadas e com grande heterogeneidade. Da junção deste corpo físico de hardwares, vem a execução da aplicação com menor tempo de resolução. Esta aplicação paralela tem variações em diversos aspectos, nos quais diference entre a conectividade, heterogeneidade, compartilhamento, imagem de sistema único e escalabilidade. A conectividade está ligada aos meios de comunicação entre os processadores que formam a grade. A heterogeneidade diz respeito a diferença entre os recursos físicos, como os processadores, usados na aplicação, diferenças estas que podem ser de velocidade ou a própria arquitetura. O compartilhamento está voltado para a possibilidade de recursos usados em uma aplicação serem compartilhados e usados por outra aplicação. A imagem de sistema único é a oclusão de toda arquitetura heterogênica, como processadores, memórias, espaços de armazenamentos, processos, memórias virtuais, sistemas de arquivos, tarefas, que por sua vez são de diferentes instituições, porém que formam uma única grade, sendo essa única arquitetura somada através da junção de todo corpo físico e lógico que deve ser mostrada, formando assim a ilusão de um supercomputador. A escalabilidade está voltada ao ganho de desempenho a medida que mais recursos vão sendo disponibilizados na grade. Com os modelos de grade existentes, alguns com maior poder de processamento, outros com maior conectividade, deve-se saber para cada aplicação, qual se adapta melhor, e para isso, dividiremos estes modelos em 4(quatro) grupos: SMPs – também conhecidos por multiprocessadores simétricos, tomaram um grande espaço no mercado de computação paralela, pois possuem alta conectividade, porém sua escalabilidade é limitada, seus recursos de processamento na maioria das vezes são de no máximo 32 processadores, e em várias aplicações são usados um número médio de 4 (quatro) processadores efetivos. Além do problema de escalabilidade, os SMPs tem também o problema da adaptabilidade, qualquer falha em algum componente, para todo sistema. Possíveis congestionamentos por falta de memória. MPPs – também conhecidos como processadores maciçamente paralelos, os MPPs poder ser desde supercomputadores paralelos até aglomerados de computadores comuns. Possuem uma boa conectividade e distintos Sistemas Operacionais, porém, cada nó possui a mesma visão do sistema. Trabalha através de alocação por escalonador, ou seja, o escalonador é quem irá escolher quais nós executarão cada tarefa, podendo escolher um conjunto de nós para exclusivamente executará a tarefa escolhida, sendo assim, corre-se o risco de ao chegar uma nova aplicação, não ter nós disponíveis para execução da mesma, e para isso ele trabalha com a fila de espera, onde está aplicação ficará esperando até que haja um quantidade de nó disponível para sua execução. NOWs – também conhecidos como redes de estações de trabalho, possuem uma conectividade pouco menos veloz que a dos MPPs, mais ainda assim boa. Também trabalham com alocação por escalonador, porém sua arquitetura difere-se a de um MPP pelo fato de seus nós possuírem um escalonador separado para cada nó, estes nós são interligados através de uma rede comum e computadores comuns, ao contrário dos MPPs que possuem uma rede exclusiva. Grades – uma Grade simplesmente é composta por qualquer tipo de computador, podendo ser tanto um supercomputador ou um computador de prateleira, possuem uma conectividade mediana, não possuem uma visão única do sistema, sistemas operacionais distintos ou não, podem ser controlados por diversas entidades, ou seja, possui uma alta heterogeneidade. Como a grade pode conter toda essa massa de heterogeneidade de hardwares e softwares, possui alta dinamicidade e adaptabilidade, procurando manter sempre o melhor desempenho possível com os recursos físicos e virtuais disponíveis no momento. Segue abaixo, na figura ilustrativa 1.0 os modelos de arquitetura demonstrados até agora: Figura 1.0: modelos de arquitetura de grid computing e suas respectivas características 5-Arquitetura da computação em grade A arquitetura do grid é baseada em um modelo de sistema distribuído, onde se virtualiza os recursos computacionais de uma infra-estrutura de comunicação composta por vários computadores, usando um middleware para a realização de operações entre sistemas heterogêneos, sendo que seus nós podem ser de qualquer tipo, desde uma simples estação até um amplo ambiente computacional. [Maldonado 2004]. Pelo fato de não haver ainda uma arquitetura padrão da computação em grade, baseado nas arquiteturas propostas em [Casanova 2002], [Baker 2002] e [Chatty 2002], traz-se na figura 2.0 um modelo dividido em camadas de um ambiente grid computing, composta pela camada de conectividade, middleware do sistema e do usuário, e aplicação. A seguir, tem-se a explicação de cada uma de suas camadas, com suas respectivas funções no ambiente distribuído. Figura 2.0: arquitetura em camadas de computação em grade (Fonte: Samuel Henrique Bucke Brito - Monitoramento Distribuido de Clusters e Grids Computacionais Utilizando o Ganglia ) Como já dito, cada uma das camadas expostas e suas respectivas explicações: Camada de aplicação: é uma camada de fácil entendimento para o usuário final, que pode ser acessado através de um front-end que na maioria das vezes são portais elaborados com tecnologia web e é responsável por distribuir às aplicações paralelas que efetivamente podem ser executadas de forma distribuída em um ambiente de computação em grade. Camada de middleware do usuário: essa camada da ao usuário a capacidade de interação direta com o grid, podendo ele atribuir novas tarefas para serem executadas paralelamente no sistema, permite ao usuário gerenciar os recursos distribuídos e desenvolver novas aplicações web services. Camada de middleware do sistema: tem como exemplo de atribuições o gerenciamento remoto dos processos, a alocação de recursos, regras de segurança, entre outros. É responsável pela transparência da grade computacional, onde toda operação interna do sistema não devem ser visíveis aos usuários. Camada de conectividade: é responsável pelo compartilhamento e distribuição de todo recurso espalhado em cada nó em todo o mundo, podendo ser acessado via internet. Estes recursos podem ser tanto computadores rodando diferentes sistemas operacionais, ou supercomputadores, ou instrumentos científicos. 6-Aplicações da computação em grade Uma das principais fontes do surgimento de novas grades computacionais têm sido projetos acadêmicos e pesquisas cientificas ou de empresas. Existem diversos tipos de sistemas para computação em grade, mesmo alguns obedecendo à parte do que realmente é um grid, e outros não contínuos, ou seja, assim que o objetivo do projeto for alcançado o sistema se dissolve, ou em alguns casos um novo projeto de mesma ordem ou objetivo semelhante entra em seu lugar. Como o “Comparação Genoma”, um projeto de pesquisa comparando seqüências de proteínas de mais de 3.500 organismos, começou em 20 de dezembro de 2006. Em 21 de julho de 2007, o projeto atingiu seu objetivo usando um sistema de computação em grade. Embora cada projeto tenha objetivos e funções especificas e unitárias, no geral o processo de participação da grade computacional desses projetos é semelhante a todos. O interessado faz o download do software no site do projeto de interesse. Após a instalação deste software a aplicação contata o nó de controle do projeto, este por sua vez envia um bloco de dados para o novo ponto onde foi instalado o software analisar, utilizando recursos ociosos da sua máquina. O software possui prioridade de execução muito baixa, sendo assim, em caso em que o usuário queira rodar um aplicativo ou processo em sua máquina que exija maior poder de processamento, o software para nesse intervalo de tempo. Assim que a máquina voltar ao estado comum, os dados voltam a ser analisados pelo software. Após todo esse processo, quando os dados enviados no bloco pelo nó de controle terminar de ser analisado, é enviado pelo computador do usuário de volta ao nó de controle, que se responsabiliza pela entrega desses dados ao dispositivo de armazenamento adequado. Em seguida retorna ao computador do usuário um novo pacote de dados para novamente serem analisados. Esse ciclo se repete de modo que, se em tal projeto, houver uma parceria com vários usuários, seu poder de processamento será muito maior e conseqüentemente seu tempo de execução diminuirá drasticamente. 7-Sistemas que suportam a tecnologia da computação em grade O TeraGrid é um GRID que integra 4 centros de super computação norteamericano através de canais de altíssima velocidade, aproximadamente 40 giga bits/s, cada um dos centros contendo milhares de processadores dedicados ao terra GRID, tendo o poder de 13,6 terra flops. O SETI@Home é uma continuação do projeto da NASA de busca de inteligência extra-terreste, através de um software disponível para download na internet, um microcomputador pode analisar sinais de rádios e telescópios. Atualmente conta com mais de Quatro milhões de assinantes nos 224 países, criando um computador virtual com uma capacidade de 20Tflops.O SETI@Home, utiliza a capacidade computacional ociosa de computadores que se juntam voluntariamente ao sistema através da instalação de software cliente do projeto. Segundo o autor, o TeraGrid é muito mais acoplado que o SETI@Home. Este presta serviço apenas para aplicações leves enquanto o TeraGrid pode apresentar suporte para aplicações pesadas. Globus Toolkit é um conjunto de código aberto baseado na escrita em C, que atualmente só roda em sistema UNIX, foi desenvolvido por Ian Foster e tem como objetivo facilitar a computação em grade por meio de APIs e SDKs. O sistema já esta na sua terceira versão e conta com serviços e bibliotecas para monitoração, descobrimento e gerenciamento de recursos, tais como segurança e gerenciamento de arquivos. Tendo como campos de atuações: Gerenciamento de recursos, gerenciamento de acesso a dados, ambiente de desenvolvimento de aplicações, serviços de informação e segurança. Legion é um sistema de grade desenvolvido pela Universidade de Virginia. Tem como paradigma a utilização de orientação a objeto. Em Legion todos os elementos da grade são representados por objetos sejam eles dados ou objetos reais. Suas classes possuem responsabilidades como: criação de objetos, ativação/desativação e agendamento da execução. Legion fornece suporte nativo a algumas linguagens paralelas como Java, C++ e BFS. Sendo que outras linguagens que não fornece suporte para essa biblioteca pode ser encapsulada dentro de objetos legion. 8-Ganglia Sistema de Monitoramento Distribuido O Ganglia é um sistema de monitoramento distribuído, desenvolvido para ser executado em ambientes como clusters e grid’s. O sistema é open-source, e foi originado em Berkeley, uma Universidade da Califórnia. Utiliza multicast para comunicação entre os nós do ambiente monitorado. Para a representação das conexões ponto-a-ponto da rede, faz uso de uma estrutura de arvore. [Massie 2004]. Aproveita grandes tecnologias como XML para representação de dados, XDR para transporte de dados compactos e portáteis, e RRDtool para visualização e armazenamento de dados. A aplicação é leve, escalável e robusta, foi portada para um extenso conjunto de sistemas operacionais como Linux, Unix, Solaris, MacOS, Windows entre outros. Também para diversas arquiteturas de processadores. Atualmente vem sendo utilizado em diversos campos que utilizam a grade computacional. Principalmente em campos universitários, ligando clusters em ambiente grid. Formado por um par de daemons, respectivos gmond e gmetad, um programa onde são definidos os comandos (gmetric), outro programa de estado (gstat), e bibliotecas instaladas na máquina cliente. Como demonstrado na figura abaixo, na parte superior, onde se tem o menu de definições, onde serão estabelecidas as métricas, que aparecem na parte central da figura, e na parte inferior, mostra-se o estado de cada nó, perpendicular a métrica escolhida no menu superior. Figura 2.0 – (Fonte: José Luís Zem e Samuel Henrique Bucke Brito - MONITORAMENTO DISTRIBUÍDO DE CLUSTERS E GRIDS COMPUTACIONAIS UTILIZANDO O GANGLIA) O daemon gmond roda em cada nó no qual se deseja monitorar, é responsável pelo controle da grade, envia os dados já monitorados ao local destinado, responde às solicitações dos clientes, anunciam mudanças relevantes. O daemon gmetad viabiliza o agrupamento de clusters em ambientes de grid, implementando uma árvore hierarquizada. Por padrão o sistema já possui métricas, porém com o gmetric, o administrador do sistema pode inserir suas próprias métricas conforme o que deseja que o sistema realize. 9-Everquest EverQuest é um MMORPG (RPG online multiplayer massivo) em 3D, desenvolvido pela Sony Online Entertainment (SOE), lançado originalmente em 16 de março de 1999. O jogo foi conhecido por popularizar o gênero do MMORPG e se tornou um vício entre os jogadores. É necessário efetuar pagamento para usufruir desta jogabilidade. O Everquest já passou a marca de 200 mil assinantes, e mesmo após doze anos de seu lançamento continua com um elenco de jogadores muito alto. O jogo utiliza servidores como centro de todos os dados, desta maneira a computação em grid minimiza o problema de muitos usuários tentando acessar o servidor ao mesmo tempo, já que é um MMORPG, disponibilizando recursos à medida que a demanda aumenta. Desta maneira ao invés de ter apenas um servidor hospedando certo número de jogadores, o Grid se torna o próprio host. A natureza do grid também possibilita a transferência de demanda de um nó para outro, ou seja, sabe-se qual servidor do nó esta respondendo. Portanto quando um servidor (nó) precisa de manutenção ou ser trocado, todos os recursos que ele estava cuidando passa para outro nó do grid. Isso possibilita a continuação do jogo sem que seja preciso desconectar os usuários do jogo para realizar esse tipo de serviço. O Everquest também possibilita que o computador do usuário se torne parte do grid para processar alguns ciclos do jogo do próprio usuário e de outros. O que beneficia o jogo e o jogador já que como se trata de um jogo online muitos usuários permanecem por muito tempo conectados no jogo e muitas vezes alguns deles, em determinada partes do jogo, não estão usando todo recurso da máquina para rodá-lo, desta maneira fazendo parte do grid se pode “emprestar” recursos da própria máquina para outros jogadores onde a demanda destes por dados do jogo é maior. Além disso, a tecnologia Grid também facilita o trabalho dos desenvolvedores a disponibilizar atualizações do jogo, chamadas de patch, sem sobrecarregar os servidores. Figura 3.0 – jogo Everquest (Fonte: http://www.youtube.com/watch?v=nb4nuKJ2d4s) 10-Conclusão É notável o crescimento do sistema em Grid na computação, e também notável os benefícios que o mesmo impõe. Para que este sistema consiga alcançar seu objetivo de ter uma funcionalidade global necessita-se definir seus padrões e protocolos. Mesmo com todas essas definições ainda existem pessoas que chama um cluster de grid, e de acordo com Rajkumar Buyya com a seguinte definição tenta-se esclarecer um pouco mais sobre o assunto: quando há um gerenciamento do compartilhamento de recursos por um sistema único chamamos de cluster, onde todos os nós têm o mesmo objetivo e possui um gerente centralizado, já no Grid temos um gerente de recursos para cada nó. Um exemplo que é bem confundido com Grid é o caso da web que apesar de utilizar do compartilhamento de informações, o faz de forma exposta, de forma descoordenada a qualidade de serviços. E em Grid precisa-se de acesso direto aos dados, recursos, software, computadores. Referências [Buyya] - Dr. Rajkumar Buyya: <http://www.gridcomputing.com/gridfaq.html, http://gridbus.org/press/EA03/EAInterview.pdf > [Ian Foster] - Foster, T. Ian - Sistema Grid- < http://www.mcs.anl.gov/about/people_detail.php?id=285 > [Vinicius Dal Bem] - Computação em Grid – <www.inf.ufrgs.br/~asc/sodr/pdf200602/vdalbemsodr.ppt > [Gabriele Jacques da Silva] - Computação em Grid e tolerância a falhas – <http://www-usr.inf.ufsm.br/~gabijs/grid.pdf > [J. M. Wozniak, B. Jacobs, R. Latham, S. Lang, S. W. Son, and R. Ross] - A DHT Implementation for Grid and HPC Environments – < http://www.mcs.anl.gov/uploads/cels/papers/P1746.pdf > [Manish Parashar] – Grid Computing: Introduction and Overview <http://nsfcac.rutgers.edu/TASSL/Papers/proc-ieee-intro-04.pdf > [Otavio Rodolfo Piske] – Computação em Grid – <www.angusyoung.org/arquivos/artigos/grid_computing.pdf> [José Luís Zem] – Monitoramento Distribuído de Clusters e Grids Computacionais Utilizando o Ganglia [José Homero Damico Junior, Gabriel Henrique Pereira, Lia Carrari Rodrigues] Aplicações em Grid [Samuel Henrique Bucke Brito] – Monitoramento Distribuído de Clusters e Grids Computacionais Utilizando o Ganglia [José Luís Zem, Samuel Henrique Bucke Brito] – Monitoramento Distribuído de Clusters e Grids Computacionais Utilizando o Ganglia [BAIRD, 2002] Baird, I - "Understanding Grid Computing", <http://www.platform.com/pdfs/whitepapers/understanding_grid.pdf > [BUYYA, 2002] Buyya, R - "Grid Computing Info Centre (GRID Infoware)", <http://www.gridcomputing.com/> [Ian Foster] – What is the Grid? A Three Point Checklist – Capturado no dia 3 de fevereiro de 2011, no Web site: <dlib.cs.odu.edu/WhatIsTheGrid.pdf> Documento disponível on-line. O que é a Computação em Grelha (Grid Computing). Capturado no dia 4 de fevereiro de 2011, no Web site: <http://visibilidade.net/tutorial/computacao-Grid.html> Documento disponível on-line. Ganglia Monitoring System. Capturado no dia 12 de fevereiro de 2011, no Web site: <http://ganglia.sourceforge.net/> Implementação de Cluster Usando Heartbeat FERNANDO DEBACKER LAUREMBERG DE FIGUEIREDO SALES MARLON JACKSON DE SOUZA MATEUS GERONIMO DOS SANTOS RESUMO Este trabalho tem como objetivo a implementação de um Cluster de alta disponibilidade utilizando softwares livre, bem como apresentar o conceito de cada programa utilizado. Neste trabalho foram utilizados o Heartbeat e o servidor apache no sistema operacional Linux distribuição Ubuntu. Na primeira parte do projeto fez-se necessário descrever o conceito dos software para que o leitor possa compreender o que está utilizando e para que está utilizando, na segunda parte disponibilizamos as configurações necessárias para a construção do Cluster de alta disponibilidade. Como resultado podemos perceber a importância do Cluster, seja nas empresas ou na administração pública, para acesso as informações garantindo assim maior confiabilidade e disponibilidade no serviço prestado. ABSTRACT This stuy aims to implement a hugh availability cluster using free software as well as introduce the concept of each program used. In this work we used the heartbeat and the Apache server in Linux Ubuntu distribution. In the first part of the project it was necessary to describe the concept of software so that the reader can inderstand what you're using and you are using, in the second part we provide the settings required for the construction of hugh-availability cluster. As a result we can see the importance of the cluster, whether in business or public administration, access to the information thus ensuring greater reliability and service availability 1 . INTRODUÇÃO É cada vez mais frequente aplicações que necessitam de enorme capacidade computacional, que não pode ser obtida em simples máquinas sequenciais com uma única unidade de processamento. Apesar de ainda ser possível melhorar o desempenho dos processadores, a atual evolução acabará por se deparar com diversas restrições como, por exemplo, a dimensão física dos componentes, a velocidade da luz e o custo, que poderá se revelar excessivo com a aproximação desses limites. Por isso, a uma solução alternativa econômica e tecnologicamente viável consiste na interligação de múltiplos processadores de forma a permitir a execução mútua de tarefas em paralelo com um objetivo comum. Devido a essas circunstâncias decidimos implementar um cluster de alta disponibilidade para mostrar que é totalmente viável trabalhar de maneira mútua entre unidades de processamento para obter um resultado a contento no serviço prestado. Como por exemplo a utilização de um cluster desse tipo em uma administradora de cartões ou uma empresa que necessita de dados 24 horas dia sem interrupção, seja ela por qual motivo for. Portanto será explicado desde a sua montagem a sua execução na prática para que seja de fácil assimilação, onde foi utilizado como sistema operacional Linux distribuição Ubuntu. 1.1 APRESENTAÇÃO Este trabalho relata como foi criado um Cluster de Alta Disponibilidade utilizando software livre, com o objetivo de mostrar que é possível utilizar de ferramentas gratuitas que atendem as mesmas especificações que outras ferramentas pagas, e atingir o mesmo resultado. Demostrar que o Cluster de alta Disponibilidade pode ser uma alternativa para manter seu sistema operando de forma continua, com o máximo tempo em disponibilidade. Serão abordados os seguintes temas: Disponibilidade das Informações, Cluster de Alta Disponibilidade, Heartbeat. 1.2 JUSTIFICATIVA Um sistema que garanta acesso a informação o maior tempo possível é primordial para empresas que queiram iniciar seu ramo on-line ou mantê-las. E o Cluster de Alta Disponibilidade torna-se uma alternativa para atingir esse resultado, porém o uso desses sistemas podem ter um custo elevado que pode vir a desestimular empresas de pequeno porte a investir nessa área promissora, mas, há possibilidade de usar software software livre que desempenham a mesmas função e com a mesma qualidade, o que torna viável entrar nesse mercado e competir com outras empresas. Este projeto tem importância de expor essa alternativa, que utilizando-se de software gratuitos é possível construir sistemas de qualidade, tais quais sistemas pagos. 1.3 OBJETIVOS GERAIS. Num primeiro momento fez-se necessário conceituar tópicos que são relevantes para o assunto, como: Disponibilidade das Informações; Cluster de Alta Disponibilidade, HeartBeat, Apache. Heartbeat e Apache forma os software utilizados que serão descrito posteriormente. Em seguida será demonstrada a implementação do projeto. 1.4 OBJETIVOS ESPECÍFICOS 1.1 Mostrar a possibilidade do uso combinado de software livre como forma de construir sistema de alta disponibilidade. 1.2 Mostrar as configurações dos software utilizados. 1.5 TIPO DE PESQUISA Esta pesquisa foi desenvolvida utilizando a pesquisa bibliográfica, extraídas de livros, publicações, artigos e pesquisas na internet sobre assuntos relevantes para tema abordado. Foi utilizada a pesquisa exploratória de campo, uma vez que o sistema foi configurado, implementado e testado no laboratório, testando a arquitetura Heartbeat, verificando se o mesmo seria oportuno e conveniente para o caso. 1.5.1 UNIVERSO DA PESQUISA Fontes coletadas via WEB, pesquisa em livros e revistas pertencentes ao acervo da biblioteca da Unirondon campos de Cuiabá. 1.5.2 INSTRUMENTOS DA PESQUISA Como instrumentos de pesquisa e coleta de dados, foram escolhidos a observação, análise de documentos, questionamentos durante as entrevistas. Os mesmos são sugeridos em Gil (1996) e permitem uma abordagem qualitativa dos dados coletados. 2 CLUSTER Cluster é um sistema de processamento paralelo ou distribuído, que consiste de uma coleção de varios computadores interligados trabalhando juntos como um unico computador. Um cluster geralmente se refere a dois ou mais computadores (nós) ligados entre si. Os nós podem existir em um único gabinete ou ser fisicamente separado e ligado através de uma LAN. Tal sistema pode fornecer uma relação custo benefício menor do que um unico computador com todos os recursos, o cluster pode trazer mais recursos e benefícios (serviços rápidos e confiaveis) que têm sido encontrados somente em sistemas proprietários mais caros de memória compartilhada. O hardware de interface de rede e responsavel por transmitir e receber pacotes de dados entre os nós do cluster atravez da rede utiliza-se protocolos de comunicação. Os nós do cluster pode trabalhar coletivamente, como um recurso de computação integrada, oferece disponibilidade de uma conjunto de computadores independentes, mas interligados. A tecnologia de cluster permite que as organizações para aumentar o poder de processamento utilizando a tecnologia de cluster podem ser adquiridos a um custo relativamente baixo. Isto proporciona a expansibilidade, as organizações aumentam o seu poder de computacional, e ao mesmo tempo preserva seus investimentos sem incorrer em um gasto extra. 2.1 TIPOS DE CLUSTER Cluster HA são construídos para disponibilizar serviços da maneira que tenha o máximo de redundância possível. Este tipo de cluster e utilizado para que um serviços que tem que estar o maior tempo possível disponível, são utilizados geralmente em bancos, correios. Balanceamento de carga distribui as serviços entre os nodos que executam os mesmos programas, com o balanceamento ele divide para todos os nodos controlar os serviços. Caso um nodo falhe a uma nova redistribuição dos serviços, para que o serviço sempre esteja ativo e trabalhando com um bom desempenho, geralmente e usado em servidor web. Processamento Distribuído ou Paralelo, ele divide uma grande tarefa computacional em varias tarefas distribuídas entre os nodos, simulando um supercomputador, porem são alguns ou vários computadores dividindo as tarefas, geralmente esse tipo de cluster e utilizados para algo que precise de um alto nível de processamento. 2.2 DISPONIBILIADE DAS INFORMAÇÕES A disponibilidade das informações hoje em dia tem grande impacto seja nos negócios para as empresas seja no atendimento ao serviço publico, cujo o sucesso ou não, pode depender muito desse fator. A falta de acesso pode causar sérios prejuízos, um exemplo, seria o caso de sites de compras on-line, como ebay, amazon.com, que poderiam deixar de faturar muito com poucas horas sem acesso, para a administração publica a ausência de disponibilidade das informações poderia ocasionar prejuízo pra sociedade, exemplo, a indisponibilidade de checagem de veículos com busca e apreensão ou a falta de acesso ao banco de dados de pessoas com prisão preventiva no momento da abordagem policial, ocorreria nestas situações prejuízo para coletividade, a Administração Publica trabalharia de forma ineficiente deixando de cumprir um de seus princípios expressos na constituição, que é o principio de eficiência. Prevendo situações como estas, o Cluster de alta disponibilidade torna-se uma alternativa, garantindo a disponibilidade dos serviços prestados. 3 HEARTBEAT Heartbeat trabalha com pulsos de máquina para máquina, enviando pacotes do servidor principal para o secundário, e vice-versa, serve para gerenciar o Cluster e detecta a morte de um host, caso o host principal ficar indisponível o secundário assume. A escolha deste software se deu com o propósito de identificar e recuperar um host secundário, que esteja trabalhando no nó do Cluster quando o computador primário obtiver uma falha ficando indisponível, proporcionando assim, um serviço de alta disponibilidade em um Servidor Web. O Servidor Web utilizado neste projeto foi o Apache, podendo ser implementado na web ou ate mesmo em uma intranet para que se tenha uma alta disponibilidade em um sistema interno. 4 INICIANDO O AMBIENTE Descrição nodo 1: S.O.: Ubuntu 9.10 Karmic Coala Nome: ubuntu-server (para saber o nome exato digite no terminal uname-r) ip: 192.168.56.101 ipvirtual: 192.168.56.103 Descrição nodo 2: S.O.: Ubuntu 9.10 Karmic Coala Nome: ubuntu-server2 (para saber o nome exato digite no terminal uname-r) ip: 192.168.56.102 ipvirtual: 192.168.56.103 4.1 INSTALANDO APACHE sudo apt-get install apache Apos instalado o apache iremos configurar o ipvirtual. 4.2 CONFIGURANDO IPVIRTUAL Para criar um ipvirtual basta apenas digitar no terminal: ifconfig eth0:1 192.168.56.104/24 após este comando ja esta criado o ip virtual, porem se ocorrer de precisar reiniciar a maquina este ip virtal precisa ser configurado novamente, pois quando reinicia a maquina ela perde o ip virtual, por isto, vamos criar o ip virtual direto no arquivo para não perder as configurações, isso e feito da seguinte maneira no nodo 1: nano /etc/network/interfaces apos este comando abrira a tela de interfaces, configure conforme a figura abaixo: Figura 1: Configuração interfaces no nó 1. Ja no nodo 2 da seguinte maneira: nano /etc/network/interfaces apos este comando abrira a tela de interfaces, configure conforme a figura abaixo: Figura 2: Configuração interfaces no nó 2. 4.3 INSTALANDO E CONFIGURANDO HEARTBEAT Instalar heartbeat: sudo apt-get install heartbeat apos instalado o heartbeat e preciso configurar tres arquivos: authkeys, ha.cf, haresources. Configurando arquivo authkeys no nodo 1 e nodo 2: nano /etc/ha.c/authkeys apos executar este comando, aparecera a tela de authkeys do heartbeat, faça conforme a figura abaixo: Figura 3: Configuração authkeys nos dois nós. 1 sha1 'Senha' Configurando arquivo ha.cf no nodo 1: Figura 4: Configuração ha.cf no nó 1. ping 192.168.56.102 //ip do nodo de comunicação do no 2 bcast eth1:0 // endereço de broadcast da rede. warntime 5 //tempo que o heartbeat deve aguardar por atraso de comunicação. deadtime 08 // tempo minimo para declarar a outra maquina como morta. initdead 20 //tempo limite para declarar a outra maquina como inoperante. keepalive 2 //tempo em segundos de verificação das maquinas para saber o seu estado. node ubuntu-server //nome do no 1 node ubuntu-server2 //nome do no 2 udpport 694 //porta de comunicação dos heartbeat auto_failback on //define que quando o servidor máster volta o secundário devolve os serviços para o máster Configurando arquivo haresources no nodo 1: Figura 5: Configuração haresources no nó 1. Configurando arquivo ha.cf no nodo 2: Figura 6: Configuração ha.cf no nó 2. ping 192.168.56.101 //ip do nodo de comunicação do no 1 bcast eth1:0 // endereço de broadcast da rede. warntime 5 //tempo que o heartbeat deve aguardar por atraso de comunicação. deadtime 08 // tempo minimo para declarar a outra maquina como morta. initdead 20 //tempo limite para declarar a outra maquina como inoperante. keepalive 2 //tempo em segundos de verificação das maquinas para saber o seu estado. node ubuntu-server //nome do no 1 node ubuntu-server2 //nome do no 2 udpport 694 //porta de comunicação dos heartbeat auto_failback on //define que quando o servidor máster volta o secundário devolve os serviços para o máster Configurando arquivo haresources no nodo 2: Figura 7: Configuração haresources no nó 2. Apos configurado os três arquivo, para os serviços do Heartbeat com o comando sudo /etc/init.d/heartbeat stop, e ira mostrar a seguinte mensagem: Stopping High-Availability services: Done após apresentado esta mensagem o heartbeat esta parado, agora iniciaremos o servico com o seguinte comando sudo /etc/init.d/heartbeat start. Apos iniciado o heartbeat e só testar, entrar no navegador e digitar o ipvirtual, no nosso caso 192.168.53.103, e ira aparacer no navegador: It Works! Que e a pagina padrão do apache, e pronto esta funcionando. Aparecera a seguinte tela, que e padrão do apache a minha esta modificada pois esta informando que esta no servidor máster, pois alterei a pagina padrão para saber quando esta no máster e no secundário, na figura 8 mostra a máster e na figura 9 mostra o secundário: Figura 8: Pagina padrão do Apache no nó Máster. Figura 9: Pagina padrão do Apache no nó Secundário. 5 CONCLUSÃO Concluímos que o uso de alternativas na parte computacional, nesse caso utilizando cluster em plataforma livre, é uma solução bastante viável para empresas que necessitam de um serviço que esteja o maior tempo acessível, tendo uma alta disponibilidade do serviço e recursos de forma que venha sanar o problema de quanto e necessita algum serviço que não usa a alta disponibilidade o serviço pode parar e demorar horas ou dias para voltar a estar ativo, e já usando o cluster de alta disponibilidade este problema diminui de semanas para horas ou ate minutos dependendo da quantidade de computadores e a configuração deles. E oferece também softwares livres que não precisam gastar uma quantidade alta em valores comprando supercomputadores com isso o cluster oferece um custo beneficio baixo. REFERÊNCIAS BIBLIOGRÁFICAS 1. Cluster de Alta Disponibilidade. http://www.4learn.pro.br/guarino/sd/HA.pdf > ACESSADO EM: 21/06/2011. Disponivel em< 2. BUYYA, RAJKUMAR, HIGH PERFORMANCE CLUSTER COMPUTING – VOLUME 1 3. FERREIRA, Filipa et. al. Clusters de alta disponibilidade – uma abordagem Open SOURCE. DISPONÍVEL <HTTP://MOSEL.ESTG.IPLEIRIA.PT/FILES/ARTIGO.PDF>. EM ACESSADO EM: 21/06/2011. 4. HEARTBEAT. Introdução. Disponível em:< http://replicacao.no.sapo.pt/heartbeat.htm#Alta>. Acessado em: 17 de novembro de 2008. 5. HeartBeat - Web server com Alta Disponibilidade (HA). Disponivel em: < http://www.vivaolinux.com.br/dica/HeartBeat-Web-server-com-Alta-Disponibilidade-(HA) > Acessado em 12/06/2011. 6. Instalação do DRBD + Heartbeat + Samba. Disponivel em: < http://www.hardware.com.br/tutoriais/drbd-heartbeat-samba/pagina2.html >. Acessado em 18/06/2011. Balanceamento de carga com Apache http Server e ModJK em ambiente corporativo distribuído Leandro M. Dorileo, Hugo Nakano,Jorge Alberto S. Leite,Eduardo Scheidet {ldorileo,hugokn,jorgecop08,eduardoscheidet}@gmail.com Abstract . The current technology access growtn and the need of data, tasks and enterprise processes digitalization have motivated the development of technologies for easy access and aplicability for clustering and applications load balancing. For high availability and balancing it's used Java as base plataform its tools, application servers and the AJP/ModJK intra applications plotocol. Keywords. Load Balancing; Enterprise Applications; Distributed Plataform; Resumo. O crescente acesso a tecnologia e a necessidade de digitalização dos dados, atividades e processos corporativos tem levado ao desenvolvimento de tecnologias acessíveis de aglomeração(clustering) e distribuição de carga computacional dos aplicativos. Para o atendimento de disponibilidade tecnológica e a sua distribuição é usado como plataforma base o Java, suas ferramentas, servidores de aplicação e o protocolo de comunicação intraaplicação AJP/ModJK. Palavra chaves. Balanceamento de Carga; Aplicações Corporativas; Plataforma distribuída; 1.Introdução O objetivo deste artigo é descrever uma infra-estrutura de aplicações corporativas desenvolvidas em java, com o uso não intrusivo de tecnologias que propiciem o balanceamento da sua carga computacional bem como seu funcionamento distribuído. O conceito de computação distribuída tem sido aplicado cada vez mais em ambientes corporativos, devido as necessidades emergentes. As empresas tomam medidas para tentar obter uma infra-estrutura capaz de suportar o fluxo intenso de informações que trafegam por meio de seus sistemas, tal realidade serviu como inspiração para construção deste artigo. Segundo BIRMAN(2005)[1] um sistema computacional distribuído é um conjunto de programas de computador, executando em um ou mais computadores cuja coordenação de ações é data através de trocas de mensagens. Uma rede de computadores é a coleção de computadores interconectadas por hardware que suporta diretamente a passagem de mensagem. A maioria de sistemas computacionais distribuídos operam sobre redes de computadores, embora seja possível construir sistemas computacionais distribuídos cujos componentes sejam executados em um único computador multi-tarefas. De acordo com BEG(2009)[2] o uso da computação distribuída para fornecer serviços de software tem se tornado comum em grandes empresas devido a disponibilidade de hardware e arquiteturas de software de baixo custo. É bem comum encontrar um grande número de servidores de aplicações em combinação com um ou vários servidores de banco de dados para prover serviços de software para um número muito grande de usuários internos ou externos. CUNHA e MEDEIROS(2005)[3] descreveram a importância do balanceamento de carga como um componente crítico para o alcanço de alta performance em cluster e sistemas em grid por permitir uma efetiva e eficiente utilização de todos os recursos computacionais disponíveis. Neste artigo mostramos como construir um ambiente computacional distribuído e balanceado usando tecnologias livres e de baixo custo. Software livre é um conjunto de práticas para a criação distribuída e colaborativa de códigos fonte de software que em essência sejam disponíveis livremente através de uma inteligente lei de direitos de cópia KELTY(2008)[4]. 2.O ambiente proposto 2.1.Escalabilidade Entre os principais objetivos deste ambiente estão a distribuição da carga computacional, o processamento paralelo e a utilização de recursos que sejam de baixo custo e ao mesmo tempo não sejam intrusivos do ponto de vista da aplicação. Sobre o contexto de intrusão tecnológica é visado o desenvolvimento das aplicações sem grandes preocupações na instrução da aplicação quanto o seu ambiente. Não devemos forçar a aplicação a funcionar ou cooperar em um ambiente especificamente projetado, seu comportamento deve ser o mesmo em uma infraestrutura distribuída ou não. O conceito de portabilidade é um princípio básico da linguagem Java, conceito esse que tende a ser levado a níveis mais altos como os de plataforma e infra-estrutura. A característica forma portável do Java é descrita na especificação da linguagem por GOSLING(2000)[4], onde diz que o Java é uma linguagem de programação de propósito geral concorrente baseado em classes, orientada a objetos e projetada para possuir mínimas dependências de implementação. O que permite que desenvolvedores escrevam seus programas uma única vez e possa executálos em qualquer lugar. Com a aplicação dos conceitos de portabilidade é possível chegar a níveis seguros de escalabilidade, que permitirá o redimencionamento da infra-estrutura de acordo com a demanda. Esta infra-estrutura pode ser incrementada ou decrementada dependendo da realidade de cada aplicação. Em aplicações com uso moderado na maior parte de uma fração temporal e fortemente utilizada em um curto espaço de tempo pode ter seus recursos projetados para atender duas realidades, sendo incrementado no espaço de tempo de franco uso e decrementado após tal período. Uma aplicação de folha de pagamento é um exemplo de caso de uso, ao final de cada mês durante o fechamento da folha de pagamento seu uso é intenso, no entanto, durante os dias restantes seu uso é mínimo ou moderado. 2.2.Distribuidor de Carga Além da retaguarda projetada com componentes Java uma infra-estrutura balanceada/distribuída necessita de um distribuidor de carga, componente fundamental na arquitetura. Existem inúmeros componentes e algorítimos pré-existentes para a distribuição de carga, sendo a escolha do componente altamente ligada à escolha do algorítimo a ser usado, uma vez que nem todos componentes implementam todos e quaisquer algorítimos. Neste artigo será utilizado o Apache Http Server em conjunto com o módulo conhecido como mod_jk(ou ModJK). O mod_jk implementa o protocolo especificado pela Apache Foundation conhecido como AJP(Apache Java Protocol). A escolha destes mecanismos estão ligados ao fato do protocolo AJP ser optimizado para aplicações em Java e seu suporte nativo do servidor de aplicação ou web container. O servidor de aplicação escolhido foi o Apache Tomcat. Este servidor é a implementação referência de web container desde as primeiras especificações para JSP e Servlet. Sua primeira denominação foi jServ que se limitava a implementação de um motor de servlet e se integrava ao servidor Http da apache. Em 1999 a Sun Microsystems doou o código fonte de sua implementação(o Java Web Server) para a Apache Software Foundation, dando origem ao servidor tomcat MOODIE e MITTAL(2007)[7]. Seu longo histórico não deixa dúvidas quanto a sua maturidade. Figu ra 1. Ilustr ação do bala ncea ment o de carg a. (Pro duçã o dos auto res) A figur a 1 demo nstra visualmente o comportamento e a integração entre os componentes da arquitetura bem como o acesso dos clientes às aplicações. O acesso é indireto e controlado pelo balanceador de carga. 3.Construção e configuração 3.1Configuração do balanceador O balanceador de carga em termos de recursos de software consiste no servidor http apache em conjunto com o módulo mod_jk. O módulo mod_jk pode ser obtido pelo site da Apache Foundation[5]. A sua configuração é feita em três etapas, instalação do módulo, configuração do carregamento e a configuração dos workers sendo que um worker é a representação dos nodos e o algorítimo de balanceamento. 3.2Instalação e carregamento do módulo ModJK Em um ambiente Unix a cópia do arquivo descarregado a partir do site da Apache Foudation é feita para /etc/httpd/modules/. Após a cópia do arquivo do módulo é necessário configurar o seu carregamento, para tanto, o arquivo mod_jk.conf é criado em /etc/httpd/conf.d/ com o seguinte conteúdo: LoadModule jk_module modules/mod_jk.so JkWorkersFile conf/workers.properties JkLogFile logs/mod_jk.log JkLogLevel debug JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories JkRequestLogFormat "%w %V %T" JkMountFile conf/uriworkermap.properties JkShmFile logs/jk.shm <Location /jkstatus/> JkMount status Order deny,allow Deny from all Allow from 127.0.0.1 </Location> Neste arquivo é dada a instrução de carregamento do módulo, informado o caminho da configuração dos workers, a localização dos logs gerados pelo módulo, o nível de log, formato da saída de logs, opções de funcionamento do protocolo AJP, formato dos logs de requisições atendidas, arquivo de montagens de aplicação, localização do arquivo de mapeamento de memória e a configuração da aplicação de status do módulo. 3.3Configuração dos workers Como descrito na configuração principal de carregamento do módulo JK o arquivo de configuração dos workers está localizado em /etc/httpd/conf/workers.properties, e seu conteúdo deve aparecer como a seguir: worker.list=loadbalancer,status worker.node1.port=8009 worker.node1.host=tomcat01 worker.node1.type=ajp13 worker.node1.lbfactor=2 worker.node2.port=8009 worker.node2.host=tomcat02 worker.node2.type=ajp13 worker.node2.lbfactor=1 worker.node3.port=8009 worker.node3.host=tomcat03 worker.node3.type=ajp13 worker.node3.lbfactor=1 worker.loadbalancer.type=lb worker.loadbalancer.balance_workers=node1,node2,node3 worker.loadbalancer.sticky_session=1 worker.status.type=status Neste arquivo foi configurado cada um dos 3 nodos discriminando a porta a ser usada para conexão do ajp, o nome do host na rede, o tipo do protocolo e o fator de balanceamento. O qual trata-se de um ajuste que permite a distribuição de maior ou menor carga para nodos específicos, dada características de hardware ou infra-estrutura de rede. 3.4Montagem das aplicações Além da configuração e descriminação dos recursos computacionais usados na arquitetura proposta, é importante entender que as aplicações ou recursos de software que serão usadas ou liberadas precisam também ser discriminadas. Isto é realizado através do mapeamento de URI(Universal Resource Identifier) para os workers, que é indicado pelo parâmetro JkMountFile no carregamento do módulo. Este arquivo possui o formato de mapa, ou chave para valor, onde, as chaves são as URI's das aplicações e os valores o worker responsável. Como exemplifiado abaixo: /aplicacao01=loadbalancer /aplicacao01/*=loadbalancer /aplicacao02=loadbalancer /aplicacao02/*=loadbalancer No exemplo acima temos duas aplicações - aplicacao01 e aplicacao02. A quantidade de aplicações é ilimitada e, dependendo do cenário pode-se instruir para que todas URI's solicitadas sejam encaminhadas para os servidores de aplicação java(web containers), ficando o mapeamento da seguinte maneira: /*=loadbalancer /*/=loadbalancer 4 Configuração do Servidor de Aplicação 4.1 Configuração do Connector AJP Como mencionado anteriormente o servidor de aplicação escolhido - Apache Tomcat possui implementação nativa do protocolo AJP, não sendo necessário a instalação de qualquer módulo adicional. Para o seu funcionamento basta adicionar o seguinte conector ao arquivo de configuração $CATALINA_HOME/conf/server.xml: <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> Este conector especifica qual porta será usada para a conexão TCP/IP, a versão do protocolo, bem como a porta de redirecionamento para HTTPS. A implementação deste conector está disponível na instalação padrão do Apache Tomcat. Sem essa instrução não é possível estabelecer a comunicação entre o balanceador de carga e o web container, essa comunicação se restringe às mensagens de status trocadas entre os dois pontos para determinar a situação dos nodos(ativo ou inativo, por aplicação ou por protocolo - TCP/IP especificamente) e para o repasse das requisições HTTP. A inteligência algorítmica é mantida apenas no balanceador de carga, os servidores de aplicação apenas recebem o repasse das requisições originais. Do ponto de vista da aplicação é feita apenas uma requisição simples, desconhecendo a arquitetura inerente a ela. 4.2Configuração da rota da JVM Uma característica importante em um ambiente balanceado é a chamada afinidade de sessão ou session affinity. Essa afinidade identifica cada cliente da aplicação e qual nodo atendeu suas requisições anteriores, com esse par de informações é possível sempre direcionar o mesmo cliente para o nodo que o atendeu anteriormente. Este modelo é importante para o racionamento do uso de recursos computacionais, se um cliente é direcionado sempre para o mesmo nodo seus dados de estado precisam ser mantidos apenas em um servidor sem a necessidade de migração para outros computadores. Para chegar ao funcionamento citado o protocolo AJP solicita que o web container informe um cabeçalho chamado jvmRoute, se esse cabeçalho for informado o balanceador não saberá para qual nodo direcionar a requisição de um determinado cliente tornando a distribuição aleatória. Para que o servidor de aplicação informe o seu jvmRoute é preciso modificar a configuração do Engine principal, também presente no arquivo $CATALINA_HOME/conf/server.xml, deixando a instrução da seguinte maneira: <Engine name="Catalina" defaultHost="localhost" jvmRoute="node01"> O valor do jvmRoute deve ser coerente com as chaves informadas anteriormente na especificação dos workers no servidor http apache, no caso node01 para primeiro nodo, node02 para o segundo e assim sucessivamente. 5.Conclusão É importante voltarmos aos objetivos principais escolhidos a serem analisados neste artigo. Com a arquitetura demonstrada ao longo do estudo realizado foram utilizadas somente tecnologias livres o que implicou em um baixíssimo custo, nenhum dos softwares aplicados implicam no pagamento de licensas ou royalties. Outro ponto importante foi o uso de tecnologias não intrusivas à aplicação. Em ponto algum foi feita qualquer modificação a aplicação executada sobre a plataforma, o que nos leva ao entendimento de que qualquer aplicação construída com a linguagem Java(implementando as especificações de aplicação web - JSP e Servlet) poderão ser operadas na infra-estrutura em questão. Por último mas não menos importante temos as características do balanceamento de carga e distribuição das aplicações por diversos recursos computacionais. Essas características são implementadas com o mínimo de acréscimo à plataforma base, sendo primordialmente feito o uso das possibilidades já oferecidas pela arquitetura multi-plataforma do Java que permite a mesma aplicação ser executada em um ou mais computadores da mesma arquitetura ou não podendo escalar o seu uso de acordo com as necessidades e os cenários impostos à aplicação em questão. Referências [1]BIRMAN,K. P. (2005) Reliable Distributed Systems : Technologies Web Services and Applications, Springer . [2]BEG, A. (2009) Load Balancing for Corporate Software Services. [3]CUNHA, J. C. , MEDEIROS, P. D. (2005) Euro-Par 2005 parallel processing : 11th International Euro-Par Conference, Lisbon, Portugal, August/September 2005 proceedings, Springer. [4]KELTY, C. M. (2008) Two bits: The cultural significance of free software, Duke University Press. [4]GOSLING, J. (2000) The Java language specification,2° edição, Addison-Wesley Professiona. [5]The Apache Software Foundation (1999-2011) Apache ModJK. Disponível em: <http://tomcat.apache.org/download-connectors.cgi>. Acesso em : 20/06/2011. [6]CHOPRA, V. , LI, S. , GENENDER, J. M. (2007) Professional: Apache Tomcat 6, Wrox/Wiley Pub. [7]MOODIE, M. , MITTAL, K. (2007) Pro Apache Tomcat 6, Apress. [8]TITTEL, E. (2002) Rede de Computadores, Bookman. [9]COULOURIS, G. , DOLLIMORE, J. , KINDBERG, T. (2007) Sistemas Distribuídos: Conceitos e Projeto, 4º edição,Bookman. [10]DANTAS, M. (2005) Computação Distribuída de Alto Desempenho: Redes, Clusters e Grids Computacionais, 2° edição, São Paulo: Axcel Books. [11]KINNER, C., MENDES, SUELI, B.T. (1988) Sistemas Operacionais Distribuídos: Aspectos Gerais e Análise de Suas Estruturas.Campus. [12]TANENBAUM, A., STEEN, M.V. (2007) Sistemas distribuídos: Princípios e Paradigmas, 2° edição, São Paulo. [13]DANTAS, M. (2002) Tecnologias de Redes de Comunicação e Computadores, Axcel Books. [14]KUROSE, J. F., ROSS, K. W. (2003) Redes de computadores e a Internet : uma nova abordagem, São Paulo : Addison Wesley. Computação Distribuída Usando Socket com Java Victor Hugo Souza Nunes Bruno Balbinot dos Anjos Polyana dos Santos Rodrigues RESUMO Este trabalho apresenta os conceitos de computação distribuída utilizando a tecnologia socket utilizando a linguagem de programação java, assim tornando possível o desenvolvimento de aplicações que precisam se comunicar de forma acoplada com troca de informações. Palavra-Chave: Artigo científico, computação distribuída, socket, redes, java. INTRODUÇÃO A computação distribuída trouxe para a área de rede de computadores um novo paradigma computacional permitindo à possibilidade que o processamento entre computadores diferentes pudesse ser possível. Segundo Imre Simon da USP este paradigma permite a repartição e a especialização das tarefas computacionais conforme a natureza da função de cada computador. De uma forma mais clara temos como exemplo a arquitetura de cliente/servidor, onde os clientes se comunicam com os servidores que tem como papel disponibilizar determinado serviço, podemos citar como exemplo servidores web e banco de dados. “O modelo de computação distribuída, realizada através da separação de aplicações entre servidores aplicações que fornecem serviços a serem consumidos” - Java Magazine – Guilherme de Cleva Farto – 2011, pg. 34. A busca pelo o alto desempenho de computadores deixando-os o processamento de dados de forma mais rápida pode ser chamada de uma divisão para conquistar o melhor desempenho. Ao invés de você ter um único processador executando tarefas pesadas podemos ter vários computadores fazendo essa mesma tarefa porem com mais processadores e isso quer dizer que o resultado vem de forma mais rápida do que com um único processador. Deixando os processamentos mais rápidos temos um ganho maior de produtividade. A computação distribuída entra nesse processo de “alto processamento” o que leva o aproveitamento e o poder computacional de vários processadores, homogêneos ou heterogêneos para um melhor desempenho processual. Para Prof. João Bosco Mangueira Sobral o sistema distribuído tem as seguintes características: a) Processos concorrentes acessando recursos distribuídos, os quais podem ser compartilhados ou replicados, através de passagem de mensagem em ambiente de rede. b) É uma coleção de computadores autônomos, ligados por uma rede, com software projetado para produzir uma facilidade de computação integrada (Segundo Coulouris, Dollimore, Kindberg). Nos anos 1990 a computação distribuída foi à principal arquitetura de distribuição, baixando os custos e aumentando a confiabilidade, tornando um fator importante, mesmo que um processo houvesse falhas o sistema não se invibializava como um todo. O seu funcionamento é um conjunto de distribuição de ciclos computacional de um ou mais processadores (computadores – Figura 1.1) e depois reúne os resultados, assim podem-se processar grandes quantidades de dados em poucos segundos. Existem os aplicativos do lado servidor e do lado cliente eles trocam informações por meio das redes de computadores, o cliente requisita ao servidor serviços que estão disponíveis no mesmo e para que essa requisição seja bem sucedida precisa existir do lado cliente um apontamento para o servidor, o cliente precisa ter conhecimento do protocolo para realizar essa solicitação. Uma característica importante é que os dispositivos utilizados nesse processo, devem utilizar o mesmo protocolo e a mesma linguagem, como em uma rede de computadores existem diversos protocolos é preciso haver uma organização no qual irá ser utilizado, como em sua maior parte a arquitetura de redes de computadores é estabelecida pelo TCP/IP, operando por meio de um software oferecido pelo sistema operacional. Figura 1.1 – Troca de dados e agrupamento. O TCP/IP segundo Gabriel Torres não é um protocolo e sim um conjunto de protocolos no qual sua arquitetura (Figura 1.2) tem quatros camadas, aplicação, transporte, internet e interface a rede. Figura 1.2 – Arquitetura TCP/IP Seguindo o modelo de arquitetura TCP/IP podemos dizer que os programas se comunicam com a camada de aplicação, no qual podemos dizer que na camada de aplicação você pode encontrar os protocolos como por exemplo HTTP (HyperText Transfer Protocol) para navegação web, também pode existir o protocolo de SMTP (Simple Mail Transfer Protocol) para comunicação de e-mail, entre outros. Cada aplicação se comunica com um tipo de protocolo. Logo após a camada de aplicação processar a requisição do programa o protocolo da camada de aplicação irá se comunicar com o protocolo da camada de transporte, essa camada é responsável por pegar os dados enviados pela a camada superior dividi-los em pacotes e enviá-los para a camada inferior, a camada de internet. Na camada internet têm o Internet Protocol mais conhecido como IP. O IP fica responsável por pegar os pacotes recebidos da camada de transporte e adicionar informações de endereçamento, isso é adicionar o endereço da máquina que está enviando dados para a outra máquina, logo em seguida que já existe um endereço para aqueles pacotes eles são imediatamente é enviado para a camada de interface de rede. A camada de interface de rede fica responsável por receber os pacotes enviados pela a camada de internet e enviar para a rede (Figura 1.3). O que está dentro dessa camada vai depender do tipo de rede que sua máquina está usando. Atualmente praticamente todas as máquinas utilizam o tipo de rede Ethernet, então você pode encontrar na interface a rede a camada Ethernet que são os controle do link lógico (LLC), controle de acesso ao meio e física (MAC). Figura 1.3 - Transferência de dados. Segundo Andrew Tanenbaum existe três tipos de modelo de computação distribuída que são: a) Cliente/Servidor b) Peer-to-Peer c) Objetos Distribuídos O modelo de computação distribuída que segue o modelo de cliente e servidor faz a separação dos dois ambientes, sendo que eles são interligados via redes de computadores. Cada instância do cliente pode solicitar uma requisição de informações (dados) para um determinado servidor, sendo que na instância do cliente exista um apontamento para o endereço disponível do servidor. A principal características do Peer-to-Peer é a descentralização, características comum na computação distribuída. Cada nodo do Peer-to-peer realiza tanto a tarefa de ser o cliente, quanto o servidor. Podemos exemplificar o compartilhamento de músicas, vídeos, onde existe vários peers servindo tanto como clientes e servidor. Os objetos distribuídos são semelhantes ao peerto-peer mas com um mediador chamado middleware fazendo o processo de comunicação. Hoje existe vários projetos que utilizam a tecnologia da computação distribuída para facilitar o serviço do processamento de dados, exemplo; Seti@Home, segundo a enciclopédia livre Wikipedia o projeto Seti@Home que significa Search for Extra-Terrestrial Intelligence tem como o seu objetivo analisar o máximo de sinais de rádio captados por radiotelescópios terrestres. Ele utiliza dos dados coletados, dividindo-os em pequenos pacotes para que possam ser analisados por computadores pessoas comuns. Esse projeto conta com a participação de voluntários do mundo todo, que emprestam o tempo de processamento de suas máquinas pessoas para a análise de sinais. O projeto Seti@Home utiliza da plataforma BOINC (Berkley Open Infrastructure For Network Computing) na forma de framework, facilitando a implementação de sistemas distribuídos. O BOINC usa a capacidade ociosa de processamento dos computadores, para analisar dados. Quando os computadores não estão usando toda a sua capacidade de processamento, o programa BOINC utiliza-a. Socket é um conceito ou abstração, utilizado para representar um ponto de conexão para uma rede de computadores que utiliza do conjunto de protocolos TCP/IP. Quando é necessário que dois computadores necessitem manter uma comunicação cada computador utiliza um socket. O computador servidor fica aguardando o recebimento de uma solicitação de conexão, enquanto o cliente executa o socket para se comunicar com o servidor (Figura 1.4), para que essa conexão seja estabelecida é necessário o apontamento para o endereço do servidor e uma porta que esteja liberada. Figura 1.4 – Solicitação de conexão. O servidor aceita a conexão gerando um novo socket com uma porta aleatória do seu lado, criando um canal de comunicação entre o servidor e o cliente. As portas representam conexões individuais dentro do endereço IP, porém os dados passam por um processo de roteamento dentro de cada computador, segundo H.M Deitel e quando um socket é criado ele necessita estar associado a uma determinada porta e somente um socket deve estar associado a mesma. A principal característica do servidor é somente receber a solicitação do cliente, portanto seu comportamento é de um loop aguardando novas conexões e criando sockets para atender o cliente (Figura 1.5). Figura 1.5 – Fluxo de solicitação. O socket pode ser utilizado em qualquer linguagem de programação, nesse artigo vamos trabalhar com a linguagem de programação Java. No java existe um pacote especifico para que possamos trabalhar com o socket, pacote java.net. As classes responsáveis pela a comunicação socket no Java é SocketServer e Socket que estão dentro do pacote java.net. Para que possamos estabelecer um servidor simples é preciso criar um objeto ServerSocket, segundo P.J Deitel é preciso uma chamada para esse construtor ServerSocket (Exemplo 1.1). ServerSocket srv = new ServerSocket(porta,fila); Exemplo 1.1 – Conexão Simples. O parâmetro fila especifica um número máximo de clientes que podem esperar para se conectar ao servidor, o número da porta é usado pelos clientes para localizar o aplicativo servidor no computador servidor. Chamado ponto de handshake. Caso a fila esteja cheia o servidor tem como objetivo recusar as conexões solicitadas pelos clientes. Os programas gerenciam cada conexão de cliente com um objeto Socket. Depois de vincular o servidor a uma porta com um ServerSocket, o servidor espera indefinidamente uma tentativa de se conectar por parte de um cliente. Para esperar um cliente, o programa chama o método accept de Socket. ServerSocket srv = new ServerSocket(porta, fila) Socket con = srv.accept(); Exemplo 1.2 – Aceitando Conexão. Para que seja possível ler uma determinada informação, um programa abre uma stream sobre uma fonte de dados (Figura 1.6), por exemplo, um socket, e lê essa informação seqüencialmente, byte a byte ou caractere a caractere. Figura 1.6 – Stream de informações. Inversamente, um programa pode enviar informações para um destino externo abrindo um stream de escrita e escrevendo dados de modo seqüencial no fluxo de informações. Para a leitura seqüencial de bytes utiliza-se um objeto da classe InputStream, obtido como retorno do método getInputStream(). Para transferência de texto, a ponte ObjectInputStream pode ser utilizada para usar um reader. Similarmente, para a transferência de dados no sentido deste socket para o outro extremo da conexão, utiliza-se um objeto da classe OutputStream. Para transferência de texto neste sentido, a ponte utilizada é ObjectOutputStream, permitindo a obtenção de um writer associado a esse stream. A vantagem de estabelecer esse relacionamento é que qualquer coisa que o servidor grave no ObjectOutputStream é enviada através do OutputStream e está disponível no InputStream do cliente, e qualquer coisa que o cliente grave em seu OutputStream (com um ObjectOutputStream correspondente) está disponível através do InputStream do servidor. O desenvolvimento de uma aplicação envolvendo socket em Java é bem tranqüila, a separação das classes e o que cada um faz deixa bem fácil o desenvolvimento da aplicação. O exemplo que demos acima foi usando o TCP/IP, mas também podemos usar o protocolo UDP. Quando existe uma necessidade de utilizar o protocolo UDP utiliza-se da classe DatagramSocket e DatagramPacket, a classe DatagramSocket é responsável pelo o envio e o recebimento de datagramas. Para o especialista em redes de computadores Andrew Tonenbaun datagramas é uma rede de computadores, uma estrutura unitária utilizada para transmitir uma seqüência de dados em um canal de comunicação que utiliza comutação de pacotes (Figura 1.7) . Uma informação a ser transmitida geralmente é quebrada em inúmeros pacotes, facilitando e agilizando seu envio pela a rede de computadores. Juntamente com a informação, o datagrama possui um cabeçalho, contendo informações que auxiliam sua transmissão, com os endereços do destinatário e remetente, soma para checagem de erros (checksum), definição de prioridades, entre outros dados. O socket envolvendo datagramas é utilizados tanto para aplicação servidora quanto para a aplicação cliente. Como não há controle de seqüência de envio e recebimento de datagramas, múltiplos pacotes enviados de uma máquina para outra podem ser roteados de uma forma diferente e até chegar em ordens diferentes, além de que a entrega do pacote não é garantida por nenhum dos lados. A classe DatagramPacket é responsável pela a inserção de dados na forma de bytes em um pacote UDP denominado datagrama. Os pacotes de datagramas são utilizados para implementar um serviço de entrega de pacotes sem conexão. Cada mensagem é roteada da máquina remetente a destinatária baseando-se na informação contida dentro do datagrama. Figura 1.7 – Envio de Datagrama. Para que possamos desenvolver uma aplicação socket utilizando datagramas por meio do protocolo UDP devemos instanciar as duas classes DatagramSocket e DatagramPacket. Você declara a instância praticamente da forma que é instanciada na TCP/IP, porem no DatagramSocket você define somente a porta que vai ser utilizada para o recebimento e envio de pacote. Enquanto a classe DatagramPacket é responsável para a montagem de uma datagrama a ser enviado, informando o endereço e a porta do cliente. Para que se possa estabelecer um socket em UDP devemos instanciar a classe DatagramSocket (Exemplo 1.3). DatagramSocket dtm = new DatagramSocket(porta); Exemplo 1.3 – Declaração de Instância. Para que possamos armazenar o host precisamos recuperar una instância de InetAddress. E para que isso seja feito precisamos então declarar InetaAdress ad = InetAddress.getByName(IP); com o parâmetro string contendo o endereço ip da máquina. E a troca de dados é feito por um array de bytes pré-definidos para a utilização de buffer durante a troca de dados. Utilizando-se do DatagramPacket para o envio e recebimento de dados, ela pode ser instancianda de duas formas, sendo elas; DatagramPacket(byte[] buffer, int tamanho), dessa forma as informações recuperadas serão armazenadas em um array de bytes, passado como parâmetro para o construtor, juntamente com o seu tamanho. Também podendo utilizar-se da seguinte declaração; DatagramPacket(byte[], int tamanho, InetAdress host, int porta), onde já podemos passar o endereço da máquina e a porta para estabelecer a conexão, incluindo o array de bytes e o tamanho do buffer. Tendo desenvolvido a aplicação do lado servidor, basta implementar a aplicação do lado cliente, responsável por aguardar o recebimento de dados e transmitir um datagrama de resposta. Utilizando da classe DatagramSocket e DatagramPacket podemos implementar o lado cliente. O Socket em java permite não só a troca de informações por canais de comunicação mas também o compartilhamento de arquivos lógicos como texto, imagens, músicas, vídeos, entre outros formatos de dados. E para que possa ser desenvolvida essa aplicação capaz de trafegar qualquer tipo de dados, devemos utilizar a classe ServerSocket e Socket, é por meio delas que a conexão e é estabelecida com um canal de comunicação entre a máquina servidora e o cliente. Mas não podemos esquecer que para essas transmissão seja concluída com sucesso devemos passar o arquivo lógico para um array de bytes isso do lado servidor já para o lado que vai receber o array de bytes acontece de forma ao contrária passando de bytes para arquivo lógico, o java disponibiliza de várias classes para esse tipo de transformação. Como podemos ver a computação distribuída tem vários campos a serem pesquisados, as vezes deixado de lado por empresas corporativas e acadêmicas. Não é um conceito recente, mas muito utilizado para vários projetos mesmo tendo o seu campo não muito estudo. Cabe a pessoa, empresa ou mesmo o meio acadêmico definir para qual fim será utilizado esse conceito e realizar as pesquisas utilizadas da mesma. REFERÊNCIAS ABNT. NBR 6022: informação e documentação: artigo em publicação periódica científica impressa: apresentação. Rio de Janeiro, 2003. 5 p. ABNT. NBR6023: informação e documentação: elaboração: referências. Rio de Janeiro, 2002. 24 p. DEITEL, Dr. Harvey M.: Java Como Programar. 4. ed. 2002, Bookman. DEITEL, Paul J. Deitel: Java Como Programar. 4.ed. 2002, Bookman. DEITEL, Dr. Harvey M.: Java Como Programar. 6. ed. 2005, Prentice-Hall. DEITEL, Paul J. Deitel: Java Como Programar. 6.ed. 2005, PrenticeHall. DEITEL, Dr. Harvey M.: Java Como Programar. 8. ed. 2010, Person. DEITEL, Paul J. Deitel: Java Como Programar. 8.ed. 2010, Person. SIERRA, Katy Sierra: Certificação Sun para Programador Java 6. 2. ed. 2008, Alta Books. BATES, Bert Bates: Certificação Sun para Programador Java 6. 2. ed. 2008, Alta Books. TORRES, Gabriel Torres: Redes de Computadores. 1. ed. 2001, Axcel Books. TANENBAUM, Andrew Stuart: Redes de Computadores. 4. ed. 2003, Campus. SOBRAL, Prof. João Bosco Mangueira: Computação Distribuída. Disponível em: http//www.inf.ufsc.br/~bosco/CaracterizacaoSD.ppt, acesso em 2011. CLARO, Daniela Barreiro: Computação Distribuída. Disponível em: http//www.inf.ufsc.br/~bosco/CaracterizacaoSD.ppt, acesso em 2011. FARTO, Guilherme de Cleva: Easy Java Magazine 6, Junho, 2011. COULOURIS, George: Sistemas Distribuídos: Conceitos e Projeto, 1. ed. 2007, Bookman. DOLLIMORE, Jean: Sistemas Distribuídos: Conceitos e Projeto, 1. ed. 2007, Bookman. KINDBERG, Tim: Sistemas Distribuídos: Conceitos e Projeto, 1. ed. 2007, Bookman. Jogos Eletrônicos e seus Impactos no Modo de Agir das Pessoas JOSÉ RUBENS DA SILVA [email protected] CUIABÁ-MT/ 2011 JOSÉ RUBENS DA SILVA JOGOS ELETRÔNICOS E SEUS IMPACTOS NO MODO DE AGIR DAS PESSOAS Trabalho apresentado ao Curso de Ciência da Computação, do Instituto Cuiabano de Educação, como um dos requisitos para obtenção de notas na disciplina de Métodos e Técnicas de Pesquisa. Orientador (a): Renata Romero. CUIABÁ-MT/ 2011 Resumo: tem como objetivo principal, mostrar aos leitores um pouco da história dos jogos eletrônicos, suas consequência no modo de agir e pensar das pessoas, e uma possível solução para fazer as leis de classificação indicativa cumprir de maneira rígida. Levando em consideração também o aprimoramento do conhecimento na área a ser tratada. PALAVRAS - CHAVE: JOGOS ELETRÔNICOS E AS CONSEQUÊNCIAS. HISTÓRIA DOS JOGOS ELETRÔNICOS Escavações arqueológicas encontraram diversos jogos que datam centenas de anos antes de cristo, mas a ideia de jogo pode ser relacionada às primeiras brincadeiras que os pais faziam ou ainda fazem com os bebês, ou mesmo as crianças quando brincam de pega-pega ou esconde-esconde, e tais jogos sempre existiram na humanidade como forma de educar o corpo e a mente para sobrevivência. Desde 1970, os jogos eletrônicos interessam jogadores de todas as idades. Vamos lembrar os primeiros videogames e suas evoluções. Em 1958, o primeiro jogo eletrônico intitulado “Tênis para dois” foi criado usando um osciloscópio3 e um computador analógico4. Em 1961, Spacewar foi programado para rodar em um DEC PDP-1, um computador que ocupava praticamente um quarto inteiro e tinha o processamento de 5 MHz5. Spacewar foi criado com o desafio de utilizar toda a capacidade do computador sendo interativo e divertido. O maior problema para a criação de um entretenimento digital na época era a viabilidade de venda, já que computadores pessoais não eram comuns. 3 Osciloscópio: Aparelho que serve para tornar visíveis as variações periódicas de uma corrente elétrica. Computador analógico: Computadores que executam suas tarefas usando elementos físicos (Hardware). 5 Mega-hertz (megaciclo/segundo). Mede a quantidade de megaciclo por segundo. Velocidade do processador. 4 Então em 1971 foram criadas 1500 máquinas de árcade6 operadas através de fichas com o jogo Spacewar sem conseguir sucesso e popularidade por causa da dificuldade do jogo. Em 1972 foi criado Pong pela Atari, vendendo mais de 19000 máquinas com o jogo sendo considerado o primeiro sucesso comercialmente viável em videogames. Pong foi um jogo aonde uma bolinha ia de um lado ao outro da tela, quicando em barras controladas pelos jogadores. Perdia aquele que não rebatesse a bolinha. III Spacewar Fonte: Google Imagens Foi então que a Magnavox criou o Odyssey em 1972, o primeiro console doméstico. Muitas pessoas compraram para ter o mais próximo possível de Pong no seu próprio lar. Em 1977 é lançado o Atari 2600, um console doméstico com cartuchos de jogos que começava a segunda geração dos vídeo games, se tornando rapidamente o mais popular da época. E em 1982 surgiu o primeiro computador para jogo, o Commodore 62 – Apple II. Porém em 1983 aconteceu o “Crash norte americano de videogames”, que dentro de muitas causas, a supersaturação de jogos de baixa qualidade no mercado se destacou, sendo que a produção superou em muito o interesse do consumidor. Outro fator foi a 6 Arcade é um videogame profissional usado em estabelecimentos de entretenimento, por vezes também chamado no Brasil de fliperama. concorrência de vendas com os computadores pessoais que tinham outras funções além da executar jogos. Em 1985, o mercado retomou forças com o lançamento do Nintendo Entertainment System (NES), com o jogo Super Mario Bros que foi um sucesso imediato, dominando o mercado Norte Americano como o console de terceira geração (8 bits). Ele só encontrou rivalidade no Brasil e na Europa, onde o Master System da Sega conseguiu espaço no mercado. É interessante notar que o Master System tinha processamento e memória superior ao NES pelo mesmo preço e mesmo assim perdeu a disputa no mercado. Como nota especial, a versão japonesa do NES, o Famicon só foi descontinuado no Japão em outubro de 2007 por falta de peças e pela concorrência de trabalho com o Wii, que é o console de última geração da Nintendo. No início dos anos 90 os computadores pessoais ficaram mais acessíveis e populares com o baixo preço dos processadores modernos para a época e com placas de aceleração 3D, abrindo novamente espaço os jogos para essa plataforma. Mais tarde, com o inicio da internet, os jogos tiveram a possibilidade de ser multijogador, possibilitando ser jogado na rede. Os vídeo games com mais sucesso de vendas da quarta geração (16 bits) foram o Mega Drive da Sega (1989) e o Super Nintendo (SNES – 1991) da Nintendo. O Mega Drive começou sua campanha de marketing com o sua mascote Sonic, forçando-o a ser uma versão mais “legal” do seu concorrente da Nintendo, Mario, mas mesmo assim não venceu a Nintendo na liderança de vendas. Mais uma vez o processamento do console da Sega era superior ao da Nintendo. Os árcades decaíram em popularidade nessa época e muitos foram descontinuados por causa da concorrência com os consoles domésticos que tinham processamento semelhante, não necessitando de fichas para jogar em casa. Árcades criados antes dos consoles FONTE: Google Imagens. A quinta geração é conhecida pela geração 32 bits, apesar de nela estar inclusa o Nintendo 64 que tinha 64 bits. É também conhecida por ser a geração 3D, já que boa parte dos seus jogos utilizava essa tecnologia. Dessa vez a Sony debutou no mercado de vídeo games com o Playstation (1994), competindo inicialmente com o Sega Saturn (1994) e depois com a Nintendo 64 (1996), mas ganhou em vendas disparadamente. Tanto o console da Sega quanto o da Sony utilizavam CDs para executar os jogos que tinham menor custo de produção e possuíam mais espaço para dados. Os jogos para computadores pessoais ganharam mais força nessa época por serem comercialmente mais acessíveis. Com a internet veio à popularização dos computadores pessoais. E como muitas pessoas começaram a possuir computadores em casa tornava-se desnecessária a compra de um console para jogar. Em 1997 o jogo Ultima Online alastrou o gênero MMORPG (Massive multiplayer online RPG – Jogo de RPG de muitos jogadores na rede), difundindo os jogos online como um todo. Então veio a sexta geração, de 128 bits, tornando o Playstation 2 (2000) da Sony o console mais vendido na história dos vídeo games. Seus rivais foram o Sega Dreamcast (lançado em 1999 e descontinuado em 2001), o Nintendo Game Cube (2001) e o primeiro console da Microsoft, o Xbox (2001). Nessa mesma época, os computadores pessoais já possuíam capacidade de processamento suficientes para emularem jogos de 8 bits e 16 bits, incentivando os produtores de jogos a refazerem sucessos da terceira e quarta geração para a sexta geração. Foi na sexta geração também foi possível a conexão para internet, permitindo o jogo na rede. Essa geração não foi lançada no Brasil, sendo que sua compra era possível apenas por importadoras. Até que por fim os consoles de da sétima geração surgirem em 2006, com o Microsoft Xbox 360, Playstation 3 e o Nintendo Wii, sendo que o último revolucionou os jogos eletrônico com o seu controle sensível a movimentos. Os jogos para computadores pessoais acompanharam a evolução dos consoles, com jogos sendo lançados para ambas as plataformas. Porém como estava sendo exigido mais processamento das máquinas, o computador foi perdendo a popularidade como estação para jogos, pois consoles domésticos custavam menos do que uma atualização do hardware. Em contrapartida, o aumento da banda de tráfego de dados na internet permitiu e incentivou a produção e distribuição de jogos caseiros feitos em Flash ou Java, abrindo um novo mercado para jogadores casuais. PROCESSOS BÁSICOS NA PRODUÇÃO DE JOGOS ELETRÔNICOS Desenvolvedores de jogos eletrônicos buscam hoje atingir certo patamar na sociedade de inúmeras concorrências, divergências e assim atingir o máximo de sua excelência e satisfação das pessoas que se englobam nesse mundo virtual. No entanto, as empresas que hoje são responsáveis pela produção em massa dos jogos eletrônicos, que existem no mercado, buscam estratégias na produção desses jogos, vamos relatar algumas delas. Pose-se dizer então que as atividades básicas que compõem a produção dos jogos são: Design, Criação Artística, Desenvolvimento Tecnológico, Teste e processos de Qualidade. O processo de Design, referido na indústria como Game Design, compreende a definição dos elementos básicos de um jogo, tais como a mecânica (princípios de interação que definem a maneira como se joga – o chamado: gameplay), os estilos áudio - visuais a ser respeitado, o conceito dos desafios propostos em cada fase do jogo e a forma de comunicação (interface), com o usuário. O design torna-se a espinha dorsal do projeto e suas definições geram impacto direto nas demandas criativas e tecnológicas. A etapa de criação artística envolve a produção visual do jogo, como o desenho e modelagem gráfica em três dimensões de personagens, cenários e animações. Também compreende a produção de efeitos sonoros e trilhas musicais. Nessa etapa, o conteúdo do jogo é normalmente construído a partir das premissas definidas no design, preservando assim a unidade e o propósito do produto. O desenvolvimento tecnológico representa essencialmente a programação do software do jogo. É nesse momento que o universo proposto pelo design, e ilustrado pela criação, passa a ter vida com movimento e interatividade. Essa etapa pode contemplar o simples uso de uma tecnologia de software pronta para a criação de jogos, chamada engine, como também envolver o desenvolvimento de tecnologias tais como programação de efeitos visuais, inteligência artificial, simulação de fenômenos físicos, rede para múltiplos jogadores na internet e visualização em três dimensões. ATIVIDADES ENVOLVIDAS NA PRODUÇÃO DE JOGOS. Fonte: Johns (2006) e Tschang (2005). AS CONSEQUÊNCIAS TRAZIDAS PELOS JOGOS ELETRÔNICOS E A FORMA EDUCATIVA Os jogos eletrônicos no mundo de hoje vêm trazendo assuntos que muito interessa, não somente para os fanáticos em diversão virtual, mas as pessoas que, de um jeito ou de outro, englobam-se nesse mundo da tecnologia, trazendo em si, um universo de criação, inovação e conceito moral para sociedade. Contudo, os jogos virtuais por sua vez, trazem para a vida das pessoas duas versões, sendo elas o uso dos jogos eletrônicos para trazer uma nova forma de educação para os jovens, e é claro que não podemos esquecer que, muitos dos jogos existentes apenas incentivam a prática de violência. Mas se tratando de jogos de violência, não podemos deixar de citar um dos pioneiros em incentivos na prática dessas atrocidades, sendo assim iremos tratar de apenas um jogo que por si só traz a reunião de todas as práticas ilegais, nada mais do que „Grand theft auto’ ou mais conhecido como (GTA) que em português (Grande Roubo Auto), que pelo próprio nome já incentiva a prática de roubos para poder subir de fase no game, contendo pornografia, assassinato roubo de carros e residência, tudo em busca de ser o melhor bandido da cidade onde são tratadas as senas de violência, dentro do game. Um exemplo das violências na vida real, vista no game, são o modo que os criminosos adotam os seus variados estilos de pratica de atrocidade, perante a sociedade. O jogo é uma atividade que tem valor educacional intrínseco. Leif diz que "jogar educa, assim como viver educa: sempre sobra alguma coisa”. [LEI 78] Também cita que, a utilização de jogos educativos no ambiente escolar traz muitas vantagens para o processo de ensino e aprendizagem, entre elas: O jogo é um impulso natural da criança funcionando assim como um grande motivador A criança através do jogo obtém prazer e realiza um esforço espontâneo e voluntário para atingir o objetivo do jogo. O jogo mobiliza esquemas mentais: estimula o pensamento, a ordenação de tempo e espaço. O jogo integra várias dimensões da personalidade: afetiva, social, motora e cognitiva. O jogo favorece a adquisição de condutas cognitivas e desenvolvimento de habilidades como coordenação, destreza, rapidez, força, concentração, etc. Jogos como os de tabuleiro, estratégia, é de plena concentração, assim faz com que nossos jovens consigam absorver mais dos conteúdos a eles passados. Muitos dos jovens de hoje, não conseguem mais ficar longe das telinhas onde se encontram a interatividades, assim deixando os afazeres seculares para o segundo plano, ou seja, dando prioridade a diversão e deixando as obrigações de lado. Contudo, esse não é o grande problema, tratando-se dos jogos eletrônicos, mas sim, o modo em que os jovens vêm trazendo isso para o mundo a fora, não se importando com os princípios morais da sociedade. O avanço das tecnologias transforma cada vez mais o cotidiano das crianças e adolescentes. É comum que os pais e pesquisas recentes constatem que as crianças e adolescentes desenvolvem uma capacidade notável de se relacionar intimamente com os computadores e com o ritmo veloz da era da informação. Esse processo tem se refletido na forma como as crianças aprendem a se comunicar, e a exercer uma das atividades mais importantes para a infância: o brincar. Bicicletas, bonecas e piões hoje são crescentemente preteridos em função de outro entretenimento: os jogos eletrônicos, popularmente conhecidos como “games”, e os jogos de computadores. Se essa é uma tendência real, sobretudo entre a classe média, há uma nova necessidade que diz respeito aos pais e ao Estado: acompanhar mais de perto quais são os conteúdos presentes nos games. A análise dos conteúdos assume uma importância única, pois é a partir dela que se podem evitar abusos, como o acesso de crianças a conteúdos inapropriados, e por outro lado potencializar o que há de positivo nos meios de comunicação e entretenimento eletrônico, como a TV, Internet e os próprios jogos eletrônicos. Enfim, existe um grupo de pessoas responsáveis pela classificação indicativa dos jogos por faixa etária, algo exigido pelo Ministério da justiça, que conta com esse grupo para as análises de todos os produtos audiovisuais. Qualquer produto audiovisual é preciso passar por análise para depois ser comercializado. Contudo, os jovens de hoje não olham a classificação indicativa dos jogos, e os pais nem se importam com esses quesitos impostos pelas autoridades, que por meio de vários testes, decidem qual o melhor conteúdo para cada idade, sendo assim, não tendo uma monitoração constante dos conteúdos impostos nos jogos, vetados pelas autoridades, trazendo consequências que muitos perguntam de onde e qual o motivo para tanta violência e criminalidade. È simples, os motivos são a não monitoração dos adolescentes que se interagem com jogos que a maioria das vezes não é de sua classificação de idade. Mas, como solucionar esse problema, que é eminente em nossa sociedade, e que os adolescentes e pais banalizam a hipótese de que a violência de hoje pode estar diretamente ligada a conteúdos impróprios acessíveis pelos jovens de hoje? Uma solução que poderia ser tomada será apresentada a seguir. SOLUÇÃO PARA COIBIR O ACESSO A JOGOS ELETRÔNICOS IMPRÓPRIOS PARA JOVENS Com base na tecnologia existente hoje, torna-se fácil à coibição de jogos impróprios para jovens infratores da Lei. Recentemente, a Microsoft Corporation lançou um controle para um console já existente no mercado, ou seja, construído pela própria empresa, o Xbox 360, já fazia parte da vida dos fanáticos por jogos eletrônicos, mais com uma brilhante invenção, a empresa construiu um controle que, com movimentos de seu próprio corpo, você poderá controlar seu “avatar”, nome dado aos personagens dos jogos. De maneira básica, o controle faz um escaneamento de toda sua sala, incluído você, sendo possível interagir de maneira que não necessite de qualquer controle físico nas mãos, sendo você o próprio controle. Levando em consideração a tecnologia criada, desenvolvedores de jogos eletrônicos deveriam criar um mecanismo nos jogos, que somente quem tivesse a faixa etária certa para aquele tipo de conteúdo pudesse ter acesso a ele próprio. Como isso iria funcionar? A partir de um aparelho que pudesse se ter acesso aos jogos, deveria se ter certa câmera de segurança, que juntamente com os jogos eletrônicos pudessem trabalhar em sincronismo, para que no momento em que algum jovem, acessasse o jogo, teria que informar sua faixa etária ao próprio game. É claro que esses mecanismos seriam em vão, pois o jovem poderia mentir sua idade para ter acesso ao game. Pensando nisso, além de ter que informar sua idade, o equipamento com base em um banco de dados, pudesse fazer o escaneamento da face do jogador, e só assim liberar o game, mais algo também poderia ser facilmente burlado, pois um jogador com faixa etária correta ao acesso do conteúdo do jogo poderia colocar sua idade e sua face, para que o equipamento pudesse liberar o game, e uma pessoa com menor idade de acesso ao game pudesse jogar livremente. Pensando nisso, o equipamento para rodar o game, juntamente com o jogo, teria que ficar em constante escaneamento de face, assim reconhecendo que o jogador realmente tenha a idade permitida para aquele certo tipo de jogo. Isso realmente poderia vetar quase 100% da falta de monitoração a conteúdos impróprios. É claro que, as soluções propostas aqui, não passam de ideias na tentativa de solucionar os problemas do mundo contemporâneo. Para esses mecanismos funcionarem, seria preciso que qualquer equipamento para rodar jogos, tivesse a tecnologia de escaneamento e sequencialmente tivesse o acesso remoto à internet, para que o game pudesse buscar os dados do jogador, no banco de dados do governo, onde se encontra os dados cadastrais de todo o cidadão. E isso também envolveria um preço altíssimo na construção desses processos. Outra forma que poderíamos abordar na conscientização dos jovens, não é apenas coibir conteúdos impróprios a idade de cada um, mais mostrando a eles que a tecnologia dos jogos eletrônicos não é apenas diversão, mais compromisso com o dever de educar, assim colocando-os para organizar campeonatos usando os jogos educativos, na forma de brincadeira e de competividade, assim movendo os métodos de educação, para um lado fascinante de aprender e com certeza movendo o mundo ao patamar jamais visto, trabalhando dessa forma, com dedicação, seriedade, investimento e o mais interessante, fazendo o que gosta. CONCLUSÃO Conclui-se que, jogos eletrônicos podem trazer vários benefícios, entre eles uma nova forma de educação, diversão e interatividade entre as pessoas que gostam de tecnologia. Porém, levam à prática de violência quando usados fora da lei, ou seja, fora dos parâmetros estabelecidos pelas autoridades de classificação indicativa, sendo assim, fica o livre arbítrio para as pessoas usarem da forma que julgam certo. BIBLIOGRAFIA ALVARENGA, Mauro Celso Mendonça de – Jogos Antigos http://www.jogos.antigos.nom.br/mancala.asp, identifica-se como blogueiro. Acesso em: 8 / 05 /2011 NEVADA, Universidade – History of vídeo games http://en.wikipedia.org/wiki/History_of_video_games. Acesso em: 10 / 05 / 2011 Gamesport – História dos consoles http://www.gamespot.com/gamespot/features/video/hov/p3_02.html em: 10 / 05 / 2011 Acesso INCLUSÃO DIGITAL Resumo: O nosso país precisa e muito de escolas publicas que tenha um projeto de inclusão digital porque o mundo de hoje se movimenta em cima da tecnologia(computador), as pessoas que não tem nenhum conhecimento de computador estão sendo discriminadas essas pessoas são chamadas de analfabetas digitalmente e isso é muito ruim. Palavras – chaves: Inclusão Digital e Telecentros. Abstract: Our country needs a lot of public schools and that has a digital inclusion project because the world today is moving up the technology (computer), people who have no computer knowledge are being discriminated against these people are called digitally illiterate and is very bad. Keywords: Digital Inclusion and Telecentres. Autor: Jhonathan Malinski da Silva INTRODUÇÃO Como alfabetizar digitalmente a maioria das pessoas? Vamos criar mecanismo que possibilite o acesso a alfabetização digitalmente a maioria da população. Porque muitas pessoas são discriminadas por não serem alfabetizados digitalmente. Hoje em dia a maioria das empresas está buscando profissionais que tenham no mínimo conhecimento básico em informática. A grande maioria da população não sabe utiliza as ferramentas do computador, pois não recebem informação sobre elas. Contudo, sua utilização não pode ser isolada e devemos também estar atentos às demais Tecnologias de Informação que podem ser muito úteis nesse processo. A Sociedade da Informação está baseada em tecnologias de informação está baseado em tecnologias de informação e comunicação que envolve a aquisição, o armazenamento, o processamento e a distribuição da informação por meios eletrônicos. A Sociedade da Informação conforme SOUZA (2003, p.5) “essas tecnologias não transformam a sociedade por si só, mas são utilizadas pelas pessoas em seus contextos sociais, econômicos e políticos, criando uma nova comunidade local e global”. A Sociedade da Informação está se construindo em meio a diferentes condições e projetos de desenvolvimento social, econômico e político, segundo estratégias adequadas a casa contexto; os princípios e metas de inclusão social e econômica de diversidade e identidade culturais, de sustentabilidade do padrão de desenvolvimento, às diferenças, de equilíbrio regional de participação social e de democracia política, devem ser respeitados na construção de uma sociedade da informação que possa incluir todos brasileiros. De acordo com ISABEL (2007, p.8) “Inclusão Digital é gerar igualdade de oportunidade na sociedade da informação a partir da Constatação de que o acesso aos modernos meios de comunicação, especialmente a Internet, gera para o cidadão um diferencial no aprendizado e na capacidade de ascensão financeira”. Muitos brasileiros não teriam condições de adquirir equipamentos e serviços para gerar este acesso, há cada vez mais o reconhecimento e o empenho governamental, social, técnico, econômico de se encontrar soluções para garantir tal acesso. A metodologia empregada nesse artigo é a pesquisa bibliográfica. simples , que não trazem um benefício significativos utilizado de maneira tão ineficaz. Então o estudo desse material tem que fazer uma introdução a informática de modo geral não ficando presos aos conceitos e práticas superficiais do conteúdo, temos que partir do pressuposto que a informática na era digital é uma necessidade e não um acessório; ou seja sempre haverá alguém que saiba apenas manusear o básico no entanto temos que lembrar que a ousadia de saber mais especificamente sobre esse conteúdo . Um profissional com poucas saídas é considerado mão de obra comum levando em consideração a inovação, qualificação, capacitação em áreas adversas que o mercado busca como profissional de uma empresa. Desenvolver softwares para melhor ministrar aulas de acordo com a necessidade do educando, utilizando modelos específicos para cada módulo de aprendizagem facilitando o processo de aprendizagem do conteúdo curricular. A Inclusão Digital pode ser considerada como um processo facilitador no desenvolvimento e auxílio da promoção da educação, inserção social e desenvolvimento de economias locais da comunidade assistida. É que inclusão digital significa, antes de tudo, melhorar as condições de vida de uma determinada região ou comunidade com ajuda da tecnologia. A expressão nasceu do termo digital divide, que em inglês significa algo como divisória digital. Hoje, a depender do contexto, é comum ler expressões similares como democratização da informação, universalização da tecnologia e outras variantes parecidas e politicamente corretas. “Atualmente apenas cerca de 20% da população brasileira tem acesso à Internet. Considera-se a partir do percentual apresentado, que o acesso às VIII Tecnologias de Informação e Comunicação não contempla toda a sociedade. Desta maneira, torna-se necessário criar estratégias que propiciem o acesso de forma universal, ou seja, abranger e promover democraticamente a inclusão digital e a capacitação para a utilização dessas tecnologias de acordo com a necessidade do indivíduo.”, (REBÊLO, 2005). INCLUSÃO DIGITAL A Inclusão Digital acontece quando utilizamos recurso da informática para oferecer a todos que por sem classificar por classes socioeconômicas , a princípio se importando com o conhecimento das ferramentas; de alternativas Como uma das estratégias que pode vir a contribuir de forma significativa para a amenização deste quadro, identifica-se a educação como o principal elemento na formação de uma sociedade fundamentada na informação, no conhecimento e no aprendizado. A inclusão digital na educação, atualmente, ainda é sonho devido a vários motivos, dentre eles, se destacam a utilização de técnicos em informática, que são contratados com a função de ensinar a utilização correta do computador, e os recursos (programas), que não são desenvolvidos pelos educadores, e sim por profissionais de informática que apresentam os aplicativos de uma forma generalizada, e em sua maioria sem adequação as particularidades dos diversos métodos pedagógicos existentes, ou simplesmente traduzem, para língua portuguesa, os softwares de uma outra realidade educacional, como exemplo os softwares desenvolvidos para educação norte americana, mas as instituições de caráter público é que sentem maior dificuldade em realizar a inclusão digital, seja na aquisição de equipamentos, ou mesmo na capacitação de seu corpo docente para lidar com essa tecnologia. “Inclusão Digital ou infoinclusão é a democratização do acesso às tecnologias a informação, de forma a permitir a inserção de todos na sociedade da informação. Inclusão digital é também simplificar a sua rotina diária, maximizar o tempo e as suas potencialidades. Um incluído digitalmente não é aquele que apenas utiliza essa nova linguagem, que é o mundo digital, para trocar e-mails. Mas aquele que usufrui desse suporte para melhorar as suas condições de vida.”(WIKIPEDIA,2010). “A Inclusão Digital, para acontecer, precisa de três instrumentos básicos que são: computador, acesso à rede e o domínio dessas ferramentas pois não basta apenas o cidadão possuir um simples computador conectado à internet que iremos considerar ele, um incluído digitalmente.” (WIKIPEDIA,2010).A pessoa precisa saber no que esta mexendo. Entre as estratégias inclusivas estão projetos e ações que facilitam o acesso de pessoas de baixa renda às Tecnologias da Informação e Comunicação (TIC). A inclusão digital volta-se também para o desenvolvimento de tecnologias que ampliem e facilite acessibilidade para usuários com deficiência. “Na escola inclusiva o processo educativo é entendido como um processo social, onde todas as crianças portadoras de necessidades especiais e de distúrbios de aprendizagem têm o direito à escolarização o mais próximo possível do normal. O alvo a ser alcançado é a integração da criança portadora de deficiência na comunidade.”(BARBOSA,2007). A inclusão deve atingir todos os alunos dentro de uma classe e não somente os alunos portadores de necessidades especiais. A inclusão não difere, ela tem como foco o aluno e precisa atingir a todos, com o objetivo de desenvolvimento de aprendizagem para todos. Cabe ao professor, ser o facilitador desta inclusão, direcionando um novo olhar e ouvindo atentamente a cada um deles. Com os esforços de inclusão digital outros públicos também compõem o alvo de seu trabalho: idosos, pessoas com deficiência, população de zonas de difícil acesso, dentre outros. A idéia é que as Tecnologias da Informação vieram para ficar e, no futuro, quem não estiver "incluído digitalmente" viverá sob uma limitação social importante, perdendo inclusive direitos garantidos à cidadania, aliado a isto existe a necessidade do acesso pleno à educação. A atuação e a forma de tratamento do aluno da Escola Inclusiva é diferente na sua forma de tratamento em relação as escolas tradicionais. Uma das diretrizes elaborada para essa instituição é a de que os professores mantenham uma maior proximidade com os alunos, focando, assim, a captação das suas maiores dificuldades, como por exemplo, qual o facilitador para um maior entendimento das aulas. Onde o resultado esperado é um maior nível de aprendizagem. A inclusão representa um grande desafio, mas a superação pode ocorrer com o entrosamento dos pais, escola e funcionários, com a troca dos professores de classe regular e dos educadores especializados, revisão das estratégias de ensino, formação continuada para os educadores e a consolidação da inclusão através da elaboração de políticas públicas de formação em serviço pelos órgãos governamentais. “Aprender é adquirir conhecimentos, construir saberes que são ferramentas para desenvolver seu trabalho. O professor vai aprendendo a ensinar enfrentando cotidianamente diversas situações que lhe possibilitam ferramentas.”(TARDIF, 2002). construir tais várias empresas privadas nacionais, multinacionais e órgãos multilaterais. Dessa forma, toda a sociedade pode ter acesso a informações disponíveis na Internet, e assim produzir e disseminar conhecimento. A inclusão digital insere-se no movimento maior de inclusão social, um dos grandes objetivos compartilhados por diversos governos ao redor do mundo nas últimas décadas. A Inclusão Digital (ID) é uma ação positiva e tem, nesse contexto, um papel importante a desempenhar visto que cada vez mais o conhecimento é considerado riqueza e poder. É bom lembrar que ID não se restringe apenas ao acesso às tecnologias e seu respectivo uso, mas sim à capacitação para a utilização das TICs, fazendo concomitantemente com que o indivíduo possa decidir como e para que utilizá-la. Sem falar que o domínio da informática hoje vira peça fundamental no mundo do trabalho, mesmo nos cargos mais simples.Num país de contrastes como o nosso, no qual somos uma das 15 potências econômicas do mundo, estamos no quesito desigualdade sociais numa situação muito sofrida, somos a quarta nação mais desigual do mundo, segundo o Relatório de Desenvolvimento Humano de 2002. Dois novos conceitos são incorporados as políticas de inclusão digital: a acessibilidade de todos às TIs, neste caso, não somente a população deficiente; e a competência de uso das tecnologias na sociedade da informação. “O termo inclusão digital, de tão usado, já se tornou um jargão. É comum ver empresas e governos falando em democratização do acesso e inclusão digital sem critérios e sem prestar atenção se a tal inclusão promove os efeitos desejados. O problema é que virou moda falar do assunto, ainda mais no Brasil, com tantas dificuldades – impostos, burocracia, educação – para facilitar o acesso aos computadores.”, (REBÊLO, 2005). Inclusão Digital tem sido uma expressão muito utilizada nos últimos tempos. Sua importância passou a ser percebida pelos órgãos governamentais, iniciativa privada e organizações da Sociedade Civil. Mas a Inclusão Digital passou a ser conhecida nos quatro cantos do país graças a uma iniciativa, fruto de uma idéia que passou a se difundir e ganhar notoriedade, que se concretizou a constituição do Comitê para Democratização da Informática (CDI), criada em 1995 por Rodrigo Baggio, uma Organização Não Governamental (ONG), que tem como objetivo promover a Inclusão Digital em comunidades carentes, utilizando-se das Tecnologias da Informação e da Comunicação (TIC) como instrumento para a construção e o exercício da cidadania. Hoje estão espalhados comitês nas várias cidades do país, mais especificamente em comunidades de baixa renda, mobilizando a comunidade local. Seu crescimento só foi possível graças a ajuda de Para se obter de forma consistente a Inclusão Digital (ID), e conseqüentemente diminuir a distância entre ricos e pobres, deve haver por parte das iniciativas governamentais três preocupações básicas, “Nos últimos anos, tem sido apregoado aos quatro cantos do Brasil a necessidade de se fazer a inclusão digital para aqueles indivíduos que não têm acesso às tecnologias de informação e comunicação ou simplesmente TIC‟s, como são mais comumente conhecidas. Três pilares formam um tripé fundamental para que a inclusão digital aconteça: TIC‟s, renda e educação. Não é difícil vaticinar que sem qualquer um desses pilares, não importa qual combinação seja feita, qualquer ação está fadada ao insucesso. Atualmente, segundo o Mapa de Exclusão Digital divulgado no início de Abril/2003 pela Fundação Getúlio Vargas (FGV-RJ) juntamente com outras entidades, aproximadamente 12% dos brasileiros têm computador em suas residências e pouco mais de 8% encontram-se conectados à Internet. Até quando continuará a inépcia do governo brasileiro? (se é que „ele‟ tem qualquer real intenção de promover a inclusão digital). “(MENDES,2003). que para alcançar a Inclusão Digital são necessários -: Tecnologias de Informação e comunicação (TICs), renda e educação. Segundo o autor do texto: "É preciso que os formuladores de política pública do governo percebam que a exclusão sócio-econômica desencadeia a exclusão digital ao mesmo tempo em que a exclusão digitala profunda a exclusão socioeconômica".(MENDES,2003). Para ampliar o universo de pessoas com acesso às novas tecnologias, ou seja, participante ativa e de forma sustentável desse processo de Inclusão Digital, é essencial melhorar as condições de vida, dando uma educação de qualidade, tornando possível um uso efetivo e consciente do porquê estão aprendendo a usá-la e quais os benefícios que pode usufruir para melhorar sua realidade. A renda seria um item básico, o indivíduo deve ter condições mínimas de manter uma linha telefônica, um computador com acesso à internet, fazendo uso para obter informações das mais diversas na rede, ampliando ainda mais seu mundo. Aí sim aprender as mais variadas formas de uso das Tecnologias da Informação e Comunicação à disposição da sociedade hoje. Sendo assim, computadores e conexões são insuficientes se não usadas de forma efetiva, sendo as pessoas envolvidas, estimuladas no seu uso, com condições de pagar pelo mesmo e mais importante,que saibam porque estão usando.Nos países em desenvolvimento, como é o caso do nosso, os projetos de Inclusão Digital (ID) só serão bem sucedidos no momento em que forem integrados a ações que contemplem este tripé: Educação de qualidade, Renda e Acesso aos conhecimentos em TICs. Para tanto, é fundamental o empenho do Estado na execução de políticas públicas com este objetivo. Só assim pode haver uma real melhoria da qualidade de vida e uma construção de uma sociedade mais justa. Inclusão Digital e Telecentros “A evolução tecnológica avança em velocidade tamanha,mas ainda insuficiente em vista da quantidade de pessoas que são excluída digitalmente principalmente nos últimos tempos, que é inconcebível ao ser humano acompanhá-la, ou seja, a capacidade de invenção do ser humano jamais vai chegar a acompanhar a capacidade de desenvolvimento tecnológico, sendo que eles nunca andaram juntos.” (VASCONCELOS,2010). Existem predição de estudiosos na área da sociologia, que acreditam que no ano de 2015 a grande maioria das pessoas, diante da tamanha e veloz evolução tecnológica, não terão o que fazer no mercado de trabalho, por não conseguirem, ou na grande maioria das vezes não terem chances, de andar passo a passo com o desenvolvimento. Diante de tamanha evolução, é de caráter urgente as medidas que devem ser tomadas no sentido de dar oportunidade e tempo para que pessoas excluídas do mundo da informação possam se qualificar. Vivemos em uma época que o ser com capacidade de raciocinar que ignora ou indispõe de possibilidades para o uso de um micro-computador, estará a total exclusão digital e conseqüentemente, em um futuro próximo, sofrerá a exclusão social. Com o quadro que se apresenta na atualidade, qual seja, a evolução frenética da tecnologia, com enfoque maior na área dos computadores, vem se falando cada vez mais em inclusão digital. Qual o significado deste termo? Para que serve? Isto diminuirá ou aumentará o índice de pessoas excluídas do avanço tecnológico? Primeiramente é bom esclarecer que a inclusão digital está intimamente ligada a inclusão social, pelo fato de haver uma democratização do acesso à informação disponibilizando tecnologia à população. Cabe ressaltar que o principal objetivo não é disponibilizar a tecnologia em si, mas sim a integração perfeita do indivíduo excluído digitalmente na sociedade. Diante do exposto, quando se terá um resultado para reverter a situação do analfabetismo digital? Simples: A exclusão digital acabará quando o "usuário aprende que o computador é um meio de acesso à educação, ao trabalho, ao contato e troca com a sua comunidade, ao pensamento crítico e ao exercício pleno de sua cidadania"(VASCONCELOS,2010). Impossível falar em inclusão digital sem sabermos o que são os Telecentros. Segundo o autor Sérgio Amadeu da Silveira, Telecentro é considerada a "forma mais ampla de acesso físico ao computador e à Internet. Completando o significado, relata ainda o mesmo autor que "telecentro é um espaço físico em que são colocados alguns computadores conectados à Internet para uso comunitário, em geral gratuito."(ANTUNES,2004). Como forma de esclarecer melhor o significado de telecentro, "um centro de alta tecnologia que oferece serviços totalmente informatizados à população em geral e ao segmento econômico, além de ser um grande apoio ao processo educativo local."(EDUARDO,2002).Em outro sentido, pode-se dizer que serve como um item de tecnologia alavancador sócio-econômico-cultural de determinada região urbana ou área remota. Lúcio Eduardo Darelli, um dos fundadores do primeiro Telecentro da América Latina. Pelo exposto acima, é indiscutivel a necessidade da inclusão digital de grande parte da população excluída deste universo tecnológico. Precisam ser tomadas medidas de urgência por estarmos à beira de um colapso revolucionário social, diante do elevando número de cidadãos desconhecedores de informações vitais, que dão condições de trabalho e sobrevivência no mudo capitalista em que vivemos. Falando em números, podemos citar algumas estatísticas para comprovar que grande parte da população brasileira é digitalmente excluída. Se não vejamos: “18,5 milhões de pessoas com mais de 16 anos, aproximadamente 10%, acessa a Internet de qualquer local – casa, trabalho ou escola. Quando focalizamos na questão renda, a exclusão fica mais explícita: 80% da população das classes A e B têm acesso à Internet. Já na classe C, este percentual cai para 23%, enquanto nas classes D e E, temos ínfimos 6%.”(ANTUNES,2004). Conclusão Embora existam empedimentos ao incremento da inclusão digital em nosso país, é necessária a adoção de políticas públicas voltadas a este objetivo, sob pena de criarmos em pouco tempo um abismo quase intransponível entre a população brasileira, ou seja, os alfabetizados digitalmente e os excluídos digitais. Não se trata aqui de políticas "faz-de-conta" que circundam o meio em que vivemos, e sim de medidas efetivas que disponibilizem e capacitem pessoas para sua inserção no mundo digital e aos serviços dele decorrentes, básicos para o exercício de sua cidadania. Aqui, cabe ainda a participação da sociedade organizada, preenchendo lacunas deixadas pelos órgãos estatais, como também, participando efetivamente deste processo com a adoção de medidas que façam com que a população seja informada a importância deste tema para o seu crescimento individual, bem como para a evolução social, educacional, cultural e econômica do Brasil como um todo. Fazendo a relação entre a inclusão digital e o analfabetismo, chegamos à conclusão de que na realidade existem duas espécies principais de exclusão digital que devem ser analisadas. A exclusão das pessoas alfabetizadas e a exclusão dos analfabetos. Procuramos destacar essas duas espécies de indivíduos, justamente por haver um tratamento diferenciado no que toca a inclusão digital. Vejamos: Para pessoas que sabem ler e escrever, sem sombra de dúvida será mais viável e atrativo o uso, interesse e incentivo ao computador. Tratando das pessoas analfabetas, a passagem pelo processo educacional tradicional é condição primordial para que aconteça sua inclusão futura no mundo digital. Acreditamos que os recursos para inclusão digital deverão partir principalmente de entes privados, posto que o Estado deve se preocupar muito mais com outras necessidades básicas da população esquecidas ao longo do tempo. Deste modo para que possamos futuramente acabar com o analfabetismo digital, precisamos primeiramente erradicar o analfabetismo que assola e predomina no Brasil. REFERÊNCIAS ANTUNES, Simone. “CDI – Semana da Inclusão Digital”. http://simoneaaantunes.wordprerss.com/, 2004, acessado 18 de maio de 2010. BARBOSA, Pericles. “Educação inclusiva ou escola inclusiva.”, http://pt.shvoong.com/socialsciences/sociology/1627047-educa%C3%A7%C3%A3o-inclusiva-escola-inclusiva/, julho de 2007, acessado 03 de maio de 2010. DARELLI, Lúcio Eduardo. “Telecentro como instrumento de inclusão digital para o e-gov brasileiro.” http://www.tede.ufsc.br/teses/PEPS2533.pdf, Julho de 2002, acessado 30 de maio de 2010. ISABEL, Ana B. B. Paragua. “Ajudas técnicas = inclusão digital?”. http://portal.mj.gov.br/corde/arquivos/pdf/palestrasSeminario.pdf, São Paulo, abril de 2007, acessado 11 de maio de 2010. LOFY,Willian.”Inclusão Digital ou Apartheid Digital?”. http://www.raphaell.info/?p=380, 10 de maio de 2010. MENDES, Antonio da Silva Filho. “Os três pilares da inclusão digital”. http://www.espacoacademico.com.br/024/24amsf.htm, Ed. 24, maio de 2003, acessado 10 de maio de 2010. MENDES, Antonio da Silva Filho. “Inclusão Digital: Em Busca do Tempo http://www.espacoacademico.com.br/040/40amsf.htm, 2003, acessdo 01 de junho de 2010. Perdido”. REBÊLO, Paulo. “Inclusão digital: o que é e a quem se destina?”. http://webinsider.uol.com.br/2005/05/12/inclusao-digital-o-que-e-e-a-quem-se-destina/, maio de 2005, acessado 01 maio de 2010. SOUZA, Martinho de Leite. “Interação humano-computador no contexto da inclusão digityal”.http://www.cinform.ufba.br/7cinform/soac/papers/be3115a2c400590dad23c7507797.pdf, 2003, acessado 11 de maio de 2010. TARDIF, Maurice.” Saberes profissionais dos professores e conhecimentos universitários: elementos para uma epistemologia da prática profissional dos professores e suas conseqüências em relação à formação para o magistério.” Revista Brasileira de Educação, n. 13, p. 5-24, jan/fev/mar/abr. 2000. VASCONCELOS, Everton de Mendes. “Inclusão Digital em Comunidades”. http://www.artigonal.com/tec-de-informacao-artigos/inclusao-digital-em-comunidades-carentes2456215.html, acessado 01de maio de 2010. Wikipedia, http://pt.wikipedia.org/wiki/Inclus%C3%A3o_digital acessado dia 02 de maio. INTRODUÇÃO A INTELIGÊNCIA ARTIFICIAL 1 2 Christopher Jorge Paes de Barros Silva Prof. Msc Ieda Maria Brighenti 3 Instituto Cuiabano de Educação – ICE Ciência da Computação – Metodologia Científica 30/05/2010 3.1.1.1.1.1 RESUMO 3.1.1.1.1.2 Introdução a Inteligência Artificial diz respeito ao estudo dos principais fundamentos como o homem e maquina sendo um só, bem como seus objetivos e os recursos utilizados para alcançá-los. Este estudo esclarece algumas dúvidas a respeito da inteligência artificial, através de uma análise simplificada de sua estrutura, dando ênfase a questões, relacionadas com o nível de complexiade, de emprego de softwares e máquinas em nosso cotidiano. Chegando a conclusão de que máquinas sozinhas não são suficientes para alcançar seus próprios objetivos. Elas necessitam da intervenção da humana no sentido de evolução, para estarem mais proximas da realidade. Palavras-chave: Metas – Inteligência - Humanidade. 4 1 INTRODUÇÃO Quem estuda Inteligência Artificial, parte em busca de aprender sobre seu emprego, logo espanta com a disparidade entre o que se discute e o que se vê no mercado (nas empresas desenvolvedoras) são ilimitadas as suas possibilidades de uso em nossas vidas. Fala-se em resolusão de problem as, simulação de com portamento hum ano. Por exem plo, do que realm en te se trata Inteligência Artificial? Por que é tão im portante? Que tipos de problem as ela irá resolver? Quais não podem resolver? E o que vem a ser inteligência? Neste estudo, pretende-se estabelecer os fundam entos da Inteligência Artificial, bem com o seus objetivos e os recursos utilizados para alcançá-los. 2 I N T E L I G Ê N C I A V S . I N T E L I G Ê N C I A A R T I F I C I AL Para poderm os compreender do que trata Inteligência Artificial, precisam os prim eiro entender o significado do term o inteligência. Segundo Piaget, é a capacidade adaptativa de um ser em relação a alterações no am biente físico ou social (PIAGET, apud RABUSKE, 1995, p. 19). Esta definição é bastante am pla e envolve tanto ações conscientes quanto inconscientes de um ser. Já Rabuske aquisição, informação” conceitua de define triagem, (RABUSKE, inteligência como de “ ordenação 1995, como sendo p. 18). o processo e de Bem envolvendo contínuo de interpretação da o fato todos os de que ele processos necessários para a aquisição de um novo conhecimento, desde dados coletados até sua interpretação. A fim de complementar as duas definições já propostas, consideraremos aqui que inteligência trata-se também da capacidade de um ser de tomar decisões, reativa ou proativamente, em relação a algum fato ou acontecimento, recente ou não. Na computação, podemos afirmar que temos inteligência artificial quando um dispositivo eletrônico é capaz de demostra alguma “inteligência” a fim da resolução de algo, em outra palavras, “se podemos imaginar um dispositivo capaz de colecionar, de selecionar entre, de compreender, de distinguir e de saber, então temos inteligência artificial” (FEIGENBAUM e MCCORDUCK, apud RABUSKE, 1995, p. 21). Assim sendo, Inteligência Artificial estuda form as de resolver problem as com o o com portam ento a fim de rep licá-lo em m eio artificial a fim de auxiliar o homem na execução de tarefas. A Inteligência Artificial utiliza as capacidades de processam ento de sím bolos da computação com o fim de encontrar métodos genéricos para autom atizar actividades perceptivas, cogn itivas e m anipulativas, por via do com putador. É uma vertente, tecnológica, as quais, em conjunto, estão a prom over um a revolução industrial: a da autom atização de faculdades mentais por via da sua m odernização em com putador. Onde observamos Inteligência Artificial? Não é muito difícil obtermos exemplos de IA: sempre que temos a necessidade de que o computador tome decisões forma relativa em relação às informações apresentadas pelo ambiente ou a de resolver um problema, tenho alguns exemplos de inteligência artificial. Dos robôs industriais aos jogos de computadores, vários são as aplicações onde podemos aplicar Inteligência Artificial a fim de conseguirmos melhores resultados. Dentre as diversas aplicações de IA, podemos destacar: Processamento de linguagem natural – por meio do processamento dos sinais de voz ou de texto, o computador é capaz de identificar a informação enviada pelo usuário, processá-la e responder-lhe de forma coerente. Atendentes/assistentes virtuais são um excelente exemplo onde o emprego de processamento de liguagem natural pode ser usado a favor das pessoas; Reconhecimento de padrões – de forma similar ao anterior, por meio de análise de um conjunto de dados (que podem ser visuais, sonoros, elétricos, etc.) o computador é capaz de classififar a informação e encontra aquilo que lhe é relevante. Um exemplo de seu uso é na segmentação e interpretação de placas de automóveis em fotografias de radares, ou o funcionamento de sistemas de OCR para escanear e identificar texto em imagens; Desenvolvimento de sistemas especialistas – sistemas especialistas são sistemas desenvolvidos com intuito de auxiliar o ser humano em uma tarefa específica. São conheceidos como especialistas porque geralmente são elaborados com uma grade base de dados sobre o assunto, o que os torna “especialistas no assunto”; Criação de simuladores – o uso de simuladores, principalmente na educação, treinamento e/ou entreterimento, tem chamado a atenção de diversos pesquisadores. Por meio do emprego de um ambiente capaz de “aprender”, de reagir às ações do usuário, podemos melhor avaliar o desempenho do mesmo. Hoje, até mesmo em análises de ambiente podemos encontrar o uso de simuladores com IA, um exemplo disso é em análises periciais e com os que NASA, usa para simular o ambiente lunar. Na verdade qualquer tarefa que exija a necessidade de classificação de dados e inferência de novas informações apartir deles pode ser melhor automatizada quando aplicados conhecimentos da área de Inteligência Artificial. 5 3 MODELO E APRENDIZADO Para atingir as m etas citadas anteriorm ente a Inteligência Artificial possui alguns m odelos e teoria com o instrum entos de aprendizagem . São elas, que criam o vinculo entre o hom em e m áquina. Seria possivél, aprender Física apenas observando a natureza, sem se apoiar em qualquer teoria já elaborada a respeito. Não foi assim que a Física se desenvolveu , m ais sim com idéias ou m odelos. No entanto, os cientistas mais im portantes, como Isaac Newton (1642 -1727) tiveram que usar sua criatividade – m ais do que um sim p les aprendizado – para formular a lei da gravidade. De façanhas com o essas, os computadores não são capazes hoje. 4 EMOÇÃO E CONSCIÊNCIA Na realidade, a capacidade de aprender é apenas uma das definições ou aspectos da inteligência. Este é o critério mais aceito, apenas porque é uma maneira de as pessoas se diferenciaren socialmente umas das outras. Pode-se considerar a maturidade de um indivíduo, por exemplo, com o um critério válido de inteligência, com o algo que tam bém pode levar um a pessoa ao sucesso. Porém , alguns especialistas já usam o term o de “inteligência em ocional”. E existem, ainda, outros aspectos da inteligência, como a consciência ou a capacidade de julgamento, que devem ser levadas em consideração. Outra utilização forma do de cérebro. definir Para inteligência ententer a é cons iderar atividade a cerebral medida é da preciso considerar o cérebro com o um a rede de neurônios onde apenas um grupo deles está ativo durante cada atividade mental. com posto de cerca de 100 bilhões d e neurônios O nosso cérebro é que se conectam por meio de um fenôm eno denom inado sinapse e em médida, cada neurônio efetua 100 sinapses. 5 REDE NEURAIS Nesta, atua sobre sistemas computacionais estruturados numa aproximação à computação baseada em ligações, sendo em que nós simples (processadores, neurônios ou unidades) são ligados entre si para forma uma rede de nós. A inspiração para essa técnica vem da propria estrutura do cérebro em particular os neurônios As redes neurais artificiais são uma das técnicas para solucionar problemas relacionados a simulação do cérebro humano, inclusive em seu comportamento, ou seja, apredendo, errando e fazendo descoberta. Quando se anseia modelos computacionais que apresentam uma teoria inspirada na estrutura neural de organismos inteligêntes e que adquirem conhecimento através da experiência. A maioria dos pesquisadores concorda em que, as redes neurais são muito diferentes, do cérebro em termo de estrutura. No entanto , como o cérebro, uma rede neural é uma coleção massivamente paralela de unidades de processamento pequenas e simples, onde as interligações formam a maior parte da inteligência da rede. Enquanto o cérebro em termos de escala, é muito maior que qualquer rede neural, além disso, as unidades usadas na rede neural são tipicamente inferiores aos neurônios e o processo de aprendizado do cérebro. 5.1 Tipos de redes neurais O exemplo mais antigo de rede neurais são as redes perceptron, com uma camada de nós de saída, conectados às entradas por conjunto de peso, neurônios como esse comportamento são chamados de McCulloch-Pitts ou neurônio com limiar. Essa topologia pode ser considerada a forma mais simples de rede em avanço. Perceptron pode ser instruidos por um algoritmo de aprendizagem simples, chamado de regra-delta. Esse algoritmo calcula os erros entre saída dos dados calculados e a saída desejada e utiliza isso para ajustar os pesos, assim executando um formulário da descida do gradiente. Perceptron com uma camada Os perceptrons de uma camada são capazes de aprender somente sobre problemas linearmente separáveis (que pode ser separados por uma reta em um hiperplano). Perpectron multicamadas Esta classe de rede consiste de múltiplas camadas de unidades computacionais, geralmente interconectadas em uma forma de alimentação avante. Isso significa que cada neurônio em uma camada tem conexões diretas a neurônios da próxima camada. Em muitas aplicações, as unidades dessas redes utilizam uma função sigmóide (em forma de S), como a função de ativação. 5.2 CTRNN Outros tipos de redes neurais, em particular redes neurais recorrente de tempo contínuo (CTRNN), são usadas em conjunto com algoritmos genéticos para produzir controladores robóticos. O genoma é então constituído dos parâmetro de rede e a apitidão de uma rede é a adequação do comportamento exibido pelo robô controlado (ou freqüentemente simulado o comportamento). 5.3 Aplicações reais Em aplicações reais , as redes neurais se saem particularmente bem nas seguinte tarefas: Aproximação de funções; Previsão de séries temporais; Classificações; Reconhecimento de padrões. 6 6 IMPORTÂNCIA ECONOMICA DA TECNOLOGIA ARTIFICIAL A im portância científica, industrial e económ ica da IA, bem com o o seu previsível im pacto social têm crescido muito nos últimos anos, estim ando-se que cresça muito m ais, apoiada quer na banalização da potência de cálculo (necessária à com plexidade das suas operações) quer nos progressos reais verificados na investigação fundam ental, cujos resultados saem agora dos laboratórios para a indústria. Na sua vertente tecnológica, a IA com porta um a im portante faceta de engenharia. Na verdade, pretende em últim a análise programar com putadores (a que poderão estar acoplados sensores e actuadores) de forma que desem penhem com êxito e eficiência tarefas que requerem inteligência. Tal desempenho tem com o suporte a com binação racional de métodos gerais e autom atizados de abordagem à form ulação e resolução lógica de problemas. com binabilidade lógica É pela desses generalidade, métodos que a computabilidade, IA se dist ingue e como disciplina científica. Em contraste, outras disciplinas científicas usam técnicas inteligentes m as específicas do seu domínio; técnicas gerais m as sem explicitação do raciocínio; técnicas m últiplas m as não articuladas num todo automatizado. 5 CONCLUSÃO Embora o estudo da Inteligência Artificial dá ênfase a questões de longo prazo ou relacionadas com um nível de com plexidade m uito grande. No sentido de m inim izar as flutuações relativas a essas questões foi enfatizado, especificam ente, o papel d os instrum entos, tecnológico e modelo de aprendizagem. Por sua vez, as máquinas necessitam da intervenção do hom em no sentido de regular a atividade lógica e levar em consideração ao pleno argumento de com o introduzir pensam ento e em oções. Daí observa-se o grande paradigm a da Inteligência Artificial que tem sido o im passe para essa evolução tecnológica ou se podem os cham ar de revolução é o quanto às m áquinas farão parte de nossas vidas de que forma afetara a vida do hom em. Ainda há um enorme caminho a ser pecorrido para o desenvolvimento da IA. Assim sendo, levando-se em conta, a estrutura em que se apoia essa tecnologia, ainda de não possuir fundamentos em si concretos, que condicionara mesmo assim a vários benefícios que trará ao homem são inemagináveis. Pois quanto mais apoiamos na idéia que à necessidade do homem, se torna maior quando queremos resolver tudo ao mesmo tempo. Como a abordagem do desenvolvimento sobre os fundamentos da Inteligência Artificial, recomenda-se uma análise mais aprofundada nas questões referentes à emoções e julgamentos, em relação ao crescimento dessa tecnologia, a determinação para obter uma melhor compreensão no que se refere ao estudo da IA. 6.1.1 6 REFERÊNCIAS Wikipédia. “Inteligência Artificial”, http://pt.wikipedia.org/wiki/Intelig%C3%AAncia_artificial, 2010. CLP- CONTROLADOR LÓGICO PROGRAMÁVEL PROGRAMMABLE LOGIC CONTROLLER Resumo: Este artigo tem por objetivo descrever funcionalidade do CLP (Controlador Lógico Programável.) um dispositivo eletrônico digital. Palavra - Chave: Controlador Lógico Programável Abstract: The objective of this article is to describe functionality of CLP (programmable logic controller.) an electronic device. Keyword: programmable logic controller. Autora: Marilourdes da Silva Mello INTRODUÇÃO Globalização versos Tecnologia, Industrialização versos Produção em grande escala; estes são os fatores que levaram a necessidade de desenvolver um dispositivo que substituísse os painéis de controle a reles e que fosse possível alterar uma produção sem ter que refazer toda a lógica dos reles, e contadores. Assim sendo, foi desenvolvido um sistema que desenvolvesse tais funções, e que desde então, ganha mais funções e aplicações, e que hoje é conhecido como controlador lógico programável (CLP). O dispositivo mais utilizado que tornou possível este tipo de sistema foi o CLP. O CLP surgiu na década de 60, e ainda existem muitas empresas do ramo da indústria, que envolve a automação, que possuem poucas experiências com eles. A grande vantagem desse dispositivo esta na possibilidade de reprogramação, sem necessidade de realizar modificações de hardware. Mais o que impulsionou a saída da automação das indústrias, para os prédios e residências, foi à popularização e o desenvolvimento dos computadores pessoais. De fato, atualmente o que se busca é a conectividade entre os diversos dispositivos, que integram um sistema automatizado e os computadores pessoais. FUNCIONALIDADE DO LÓGICO PROGRAMÁVEL. CONTROLADOR Controlador Lógico Programável ou Controlador Programável, conhecido também por suas siglas CLP ou CP e pela sigla de expressão inglesa PLC (Programmable Logic Controller), é um computador especializado, baseado num microprocessador que desempenha funções de controle - controle de diversos tipos e níveis de complexidade. Geralmente as famílias de Controladores Lógicos Programáveis são definidas pela capacidade de processamento de um determinado numero de pontos de Entradas e/ou Saídas (E/S). Controlador Lógico Programável é um equipamento eletrônico digital com hardware e software compatíveis com aplicações industriais. Segundo a NEMA (National Electrical Manufacturers Association), é um aparelho eletrônico digital que utiliza uma memória programável para armazenar internamente instruções e para implementar funções específicas, tais como lógica, seqüenciamento, temporização, contagem e aritmética, controlando, por meio de módulos de entradas e saídas, vários tipos de máquinas ou processos. ”Segundo MORAES e CASTRUCCI (p.31, 2001), é responsável pela execução do programa do usuário, atualização da memória de dados e memória de imagem”. I/O(módulos de entrada e saídas), onde se comunica com os sensores e contadores. Interface Homem Maquina (IHM), Memória (para armazenamento de dados).CLP é o controlador indicado para lidar com sistemas caracterizados por eventos discretos (SEDs), ou seja, com processos em que as variáveis assumem valores zero ou um (ou variáveis ditas digitais, ou seja, que só assumem valores dentro de um conjunto finito). Podem ainda lidar com variáveis analógicas definidas por intervalos de valores de corrente ou tensão elétrica. As entradas e/ou saídas digitais são os elementos discretos, as entradas e/ou saídas analógicas são os elementos variáveis entre valores conhecidos de tensão ou corrente.Os CLP's estão muito difundidos nas áreas de controle de processos ou de automação industrial. No primeiro caso a aplicação se dá nas industrias do tipo contínuo, produtoras de líquidos, materiais gasosos e outros produtos, no outro caso a aplicação se dá nas áreas relacionadas com a produção em linhas de montagem, por exemplo na indústria do automóvel.Num sistema típico, toda a informação dos sensores é concentrada no controlador (CLP) que de acordo com o programa em memória define o estado dos pontos de saída conectados a atuadores.Os CLPs tem capacidade de comunicação de dados via canais seriais. Com isto podem ser supervisionados por computadores formando sistemas de controle integrados. Softwares de supervisão controlam redes de Controladores Lógicos Programáveis.Os canais de comunicação nos CLP´s permitem conectar à interface de operação (IHM), computadores, outros CLP´s e até mesmo com unidades de entradas e saídas remotas. Cada fabricante estabelece um protocolo para fazer com seus equipamentos troquem informações entre si. Os protocolos mais comuns são Modbus (Modicon - Schneider Eletric), Profibus (Siemens), Unitelway (Telemecanique - Schneider Eletric) e DeviceNet (Allen Bradley), entre muitos outros.Redes de campo abertas como PROFIBUS-DP são de uso muito comum com CLPs permitindo aplicações complexas na indústria automobilística, siderurgica, de papel e celulose, e outras.O CLP foi idealizado pela necessidade de poder se alterar uma linha de montagem sem que tenha de fazer grandes modificações mecânicas e elétricas.O CLP nasceu praticamente dentro da industria automobilística, especificamente na Hydronic Division da General Motors, em 1968, sob o comando do engenheiro Richard Morley e seguindo uma especificação que refletia as necessidades de muitas indústrias manufatureiras.A idéia inicial do CLP foi de um equipamento com as seguintes características resumidas: Facilidade de programação, Facilidade de manutenção com conceito plug-in, Alta confiabilidade, Dimensões menores que painéis de Relês, para redução de custos, Envio de dados para processamento centralizado, Preço competitivo, Expansão em módulos;Mínimo de 4000 palavras na memória.Podemos didaticamente dividir os CLP's historicamente de acordo com o sistema de programação por ele utilizado: 1ª Geração: Os CLP's de primeira geração se caracterizam pela programação intimamente ligada ao hardware do equipamento. A linguagem utilizada era o Assembly que variava de acordo com o processador utilizado no projeto do CLP, ou seja, para poder programar era necessário conhecer a eletrônica do projeto do CLP. Assim a tarefa de programação era desenvolvida por uma equipe técnica altamente qualificada, gravando-se o programa em memória EPROM, sendo realizada normalmente no laboratório junto com a construção do CLP. 2ª Geração: Aparecem as primeiras “Linguagens de Programação” não tão dependentes do hardware do equipamento, possíveis pela inclusão de um “Programa Monitor “ no CLP, o qual converte (no jargão técnico, “compila”), as instruções do programa, verifica o estado das entradas, compara com as instruções do programa do usuário e altera o estados das saídas. Os Terminais de Programação (ou maletas, como eram conhecidas) eram na verdade Programadores de Memória EPROM. As memórias depois de programadas eram colocadas no CLP para que o programa do usuário fosse executado. 3ª Geração: Os CLP's passam a ter uma Entrada de Programação, onde um Teclado ou Programador Portátil é conectado, podendo alterar, apagar, gravar o programa do usuário, além de realizar testes (Debug) no equipamento e no programa. A estrutura física também sofre alterações sendo a tendência para os Sistemas Modulares com Bastidores ou Racks.4ª Geração: Com a popularização e a diminuição dos preços dos microcomputadores (normalmente clones do IBM PC), os CLP's passaram a incluir uma entrada para a comunicação serial. Com o auxílio dos microcomputadores a tarefa de programação passou a ser realizada nestes. As vantagens eram a utilização de várias representações das linguagens, possibilidade de simulações e testes, treinamento e ajuda por parte do software de programação, possibilidade de armazenamento de vários programas no micro, etc.5ª Geração: Atualmente existe uma preocupação em padronizar protocolos de comunicação para os CLP's, de modo a proporcionar que o equipamento de um fabricante “converse” com o equipamento outro fabricante, não só CLP's, como Controladores de Processos, Sistemas Supervisórios, Redes Internas de Comunicação e etc., proporcionando uma integração a fim de facilitar a automação, gerenciamento e desenvolvimento de plantas industriais mais flexíveis e normalizadas, fruto da chamada Globalização. Existem Fundações Mundiais para o estabelecimento de normas e protocolos de comunicação. A grande dificuldade tem sido uma padronização por parte dos fabricantes.Com o avanço da tecnologia e consolidação da aplicação dos CLPs no controle de sistemas automatizados, é frequente o desenvolvimento de novos recursos dos mesmos.O CLP monitora o estado das entradas e saídas, em resposta às instruções programadas na memória do usuário, e energiza ou desenergiza as saídas, dependendo do resultado lógico conseguido através das instruções de programa. O programa é uma seqüência de instruções a serem executadas pelo CLP para executar um processo. A tarefa do CLP é ler, de forma cíclica, as instruções contidas neste programa, interpreta-las e processar as operações correspondentes. Um CLP deve realizar basicamente as seguintes funções: a) Processamento do programa e b) Varredura das entradas e saídas. Os principais pontos de aplicações dos CLP‟s são: a) Máquinas: Máquinas operatrizes, máquinas têxteis, máquinas para fundição, máquinas para indústria de alimentos, etc. Indústria: Mineração, siderúrgicas, aciarias, laminadoras, etc. O HOMEM X A MÁQUINA Na automação industrial, as máquinas substituem tarefas tipicamente mentais, tais como memorizações, cálculos e supervisões. Os CLP‟s dominam os dispositivos pneumáticos, hidráulicos, mecânicos e eletroeletrônicos. Os CLP‟s substituem a ação do homem como sistema de controle, e podem controlar grandezas tais como vazão, temperatura, pressão, nível, velocidade, torque, densidade, rotação, voltagem e corrente elétrica, ou seja, as variáveis de controle de um processo industrial. O primeiro projeto de CLP foi desenvolvido pela General Motors para substituírem os sistemas de relés e reduzir os custos de modificações e sucateamento dos controladores das linhas de produção, devido a alteração nos modelos de carros (1968). Sendo os primeiros CLP‟s fabricados para a indústria automobilística com total equivalência da lógica a relés (1969). Já em 1971 surgem os primeiros CLP‟s controladores de outros processos. Em 1973 os CLP‟s começam a ficar inteligentes e ter processamento aritmético, controle de impressora, transferência de dados e operações matriciais. No mesmo ano de 1973, é introduzido os controles de PID‟s analógicos, permitindo a sua difusão para áreas de fornos, controles hidráulicos e pneumáticos. Em 1976 inicia-se a utilização de CLP‟s em configurações hierárquicas, integrando todo o sistema de fabricação. Em 1977 começa a diminuir o tamanho físico dos CLP‟s com novas e modernas técnicas de microprocessamento. Em 1978 começa a popularização dos CLP‟s que contribui muito para o aumento das vendas. Em 1980 inicia uma nova geração de módulos inteligentes que passam a dar mais velocidade ao gerenciamento dos processos utilizando CLP. No inicio da década de 80 começa uma grande evolução quanto ao hardware, surgem novas tecnologias nos processadores que os tornam mais rápidos, proporcionando maior eficácia nos controles de processos, diminuição no tamanho do equipamento com circuitos híbridos, barateando muito o custo final do equipamento chegando a compensar a aplicação de CLP‟s quando fossem utilizar de 4 a 6 relés. Essa prática diminui muito também o custo da manutenção e ou alteração dos sistemas para atender variações do processo. Apesar de todas essas mudanças na estrutura física não houve mudanças no seu funcionamento lógico básico. Hoje, podemos encontrar os mais vários modelos disponíveis no mercado que se diferenciam de fabricante para fabricante em relação ao seu formato, tipos de cartões (módulos de entradas e saídas) usados, quantidade de pontos nos cartões, configurações gerais e softwares de configurações, mas a lógica de programação é muito semelhante entre eles, principalmente a programação em Ladder, que veremos mais adiante. Processamento do trabalho: O CLP processa o programa do usuário em ciclo fechado. O programa do usuário tem um inicio e um fim, o processador começa o processamento no início do programa e quando chega ao fim, atualiza as entradas e saídas e inicia novamente o processamento do programa. O CLP somente executa aquilo que foi programado a executar. O tempo de ciclo do CLP é de alguns milissegundos por 1024 bytes de instruções. Ao ser energizado, o CLP cumpre uma rotina de inicialização gravada em seu sistema operacional. Essa rotina realiza as seguintes tarefas: Limpeza das memórias imagens , Teste da memória RAM , Teste de executabilidade do programa. Após a execução dessas rotinas, a CPU passa a fazer uma varredura constante, ou seja, uma leitura seqüencial das instruções em "loop". Após o CLP fazer a varredura no programa do usuário, este transfere os dados da memória-imagem das saídas para o módulo de saída, realiza a leitura do módulo de entrada e atualiza a memória-imagem das entradas. Estas entradas e saídas são pontos de comunicação dos equipamentos de processo com o CLP. A primeira varredura passa pelas entradas para verificar seus estados lógicos e armazenar esses dados. Após ter verificado o estado lógico da última entrada, ela atualiza a tabela imagem de entrada com esses dados. A varredura das entradas normalmente gira em torno de 2 ms. Uma vez gravados os estados lógicos das entradas na respectiva tabela-imagem, o microprocessador inicia a execução do programa de acordo com as instruções gravadas. Após o processamento do programa, o microprocessador armazena os dados na tabela-imagem da saída. Após a atualização da tabela-imagem, o microprocessador transfere esses dados para o módulo de saída a fim de ligar ou desligar os elementos que se encontram no campo. O tempo de processamento das instruções depende da quantidade de passos do programa, podendo variar entre 1 e 80 ms. Após a transferência dos dados da tabela-imagem da saída para os módulos de saída, o ciclo do CLP termina e a varredura é reiniciada. Os CLP‟s contém uma proteção para garantir que o ciclo seja executado em menos de 200 ms. Se o controlador não executar o ciclo em menos de 200 ms por algum erro de programação, ele se desliga e reseta as saídas. Essa proteção se chama time watch dog (cão de guarda do tempo). A memória EPROM contém o programa que inicia o CLP, armazena os programas executivos (sistema) e gerencia o roteiro de dados e a seqüência de operação. A CPU trabalha junto com este programa já em EPROM, elaborado pelo fabricante que apresenta dados referentes a este CLP e ao seu desempenho. programmable logic controller É uma memória de aplicação, que armazena o programa do usuário. Esta área, reservada ao programa do usuário, contém alguns Kbytes de palavras-livres que serão processadas pela CPU. Nesta área, entra-se com o programa que se deseja executar em relação ao equipamento. A CPU processa este programa, atualiza a memória de dados internos e imagem E/S e retorna novamente para esta área de memória. A posição da seletora RUN e PROG indica se o CLP está ou não operando o programa de aplicação RUN: O CLP está operando o programa de aplicação. A varredura do programa de aplicação é cíclica, o CLP faz a varredura e a execução do programa de aplicação. As saídas serão energizadas ou desenergizadas de acordo com o programa de aplicação. PROGR: O CLP não está operando o programa de aplicação. Neste caso, o programador realiza a programação, inserindo as instruções do programa de aplicação na memória do CLP através do terminal de programação. As saídas serão desenergizadas nesta posição. É uma área reservada para o controle do programa do usuário. Nesta área se encontram dados referentes ao processamento do programa do usuário. Todos os bytes desta área são de controle. É uma tabela de valores manipuláveis. É uma área de memória reservada para interligação entre CLP e equipamentos. São do tipo RAM, pois têm seus dados constantemente alterados. A CPU, após ter efetuado a leitura de todas as entradas, armazena o estado lógico dessas informações na área denominada status das entradas (ou imagem das entradas). Uma vez memorizado o estado lógico das entradas, o programa processará esses níveis e os resultados serão armazenados na área denominada status das saídas (ou imagem das saídas).Os níveis lógicos da memória-imagem da saída só são transferidos para as respectivas saídas após o término da seqüência de operações contidas no programa. Do mesmo modo, os níveis lógicos das entradas só são transferidos para a memória-imagem das entradas após a verificação de todas as entradas. Observação: Os níveis lógicos da memória-imagem podem ser monitorados pelo usuário e também podem ser forçados a um nível desejado através do terminal de programação. Linguagem de Programação: Os CLP‟s, assim como os computadores, necessitam de um programa para seu funcionamento. Como sabemos, um programa é uma lista de instruções que coordenam e sequenciam as operações que o microprocessador deve executar. Qualquer programa requer uma linguagem de programação através da qual o usuário pode se comunicar com a máquina. As diversas linguagens de programação são classificadas em dois grupos: § Linguagem de baixo nível § Linguagem de alto nível. Considera-se linguagem de baixo nível aquela cujas instruções são escritas em código binário que o microprocessador interpreta. Para se programar nessa linguagem, o programador necessita ter conhecimento da arquitetura do microprocessador. Os programas escritos em código binário são trabalhosos e difíceis de serem interpretados e manipulados. Para minimizar esse problema, os programas podem ser escritos em linguagem de máquina ou linguagem assembler. A linguagem de máquina utiliza o código hexadecimal para escrever os programas. Um codificador entre o teclado e o microprocessador traduz o código hexadecimal para o binário correspondente. A linguagem de alto nível é aquela que se aproxima da linguagem utilizada pelo homem. Nessa linguagem, o computador usa compiladores ( ou interpretadores ) poderosos que traduzem as instruções de um programa para a linguagem de máquina. As instruções dos programas são direcionadas para área onde vai ser aplicada. Por exemplo, a linguagem STEP 5 é direcionada para a operação dos CLP‟s e suas instruções são contatos de relés e blocos lógicos. Entre as linguagens de alto nível podemos destacar: § Linguagem BASIC § Linguagem FORTRAN § Linguagem COBOL § Linguagem LADDER 3.4.3. LINGUAGEM LADDER A linguagem ladder é a linguagem utilizada pela maioria dos CLP‟s. Ela foi criada para solucionar os problemas da área da automação e se divide em três tipos de representação: diagrama lógico, lista de instruções, diagrama de contatos A programação em linguagem Ladder é uma ferramenta usada para descrever o formato de diagramas esquemáticos introduzidos num PLC. A linguagem usa dois elementos básicos: instruções lógicas de relé e instruções para transferência de dados. Nesta secção será examinada a utilização de instruções lógicas de relé discretas. Este conjunto de instruções lógicas permite que a linguagem Ladder possa substituir, de uma forma eficaz, o controlo realizado exclusivamente com relés.Um circuito de lógica Ladder consiste numa rede formada por linhas, nas quais deve existir continuidade para que se possa ativar a respectiva saída. Estas saídas são controladas pela combinação de estados das entradas e saídas. As condições podem ser ligadas em série, paralelo, ou série-paralela, a fim de construir a lógica necessária.Desta forma, uma rede Ladder define a estratégia de comando que controla as saídas do PLC. Ao contrário da lógica de relé, uma rede Ladder não representa ligações físicas. . CONSIDERAÇÕES FINAIS Não se pode falar em automação sem que envolva o CLP, pois bem espero com esta pesquisa estar contribuindo, pois com o embasamento aplicado já se pode ter uma idéia genérica de CLP. Dessa forma o CLP é importante na evolução tecnológica substituindo muitos elementos por apenas um, poupando trabalho ao homem. REFERÊNCIAS : CAPELLI, Alexandre.”CLP Controladores lógicos programáveis na prática”.São Paulo: Antenna. 2007. FIALHO, Arivelto Bustamante. “ Automação Pneumatica.”. São Paulo: Érica. 2003. MORAES, Cicero Couto; CASTRUCCI, Plinio de Lauro. “ Engenharia de Automação Industrial”. São Paulo: LTC. 2001. PRUDENTE,Francesco.”Automação Industrial – PLC”.São Paulo: LTC. 2007. Segurança da Informação 3. Acadêmica Evelyn Kely Santos Nascimento - aluna do 3° semestre do curso de Ciência da Computação do Instituto Cuiabano de Educação. Professora Orientadora: Ieda Maria Brighenti Introdução O tema escolhido é de extrema importância, não só para cada usuário das inúmeras tecnologias, como, principalmente para pessoas jurídicas. Devido ataques, cada vez mais freqüentes de hackers, os dados individuais de cada pessoa correm riscos freqüentes, devido a falta de segurança. O tema está diretamente ligado à cada individuo, e é de muita valia para a sociedade. Espero que com essa pesquisa, possa contribuir com a conscientização dos usuários com respeito a segurança de seus dados. Ultimamente as pessoas têm dado a devida importância à segurança da informação, que é inteiramente ligada tanto a nossa vida pessoal ou comercial. Podese dizer fundamental, para um bom andamento virtual. O gerenciamento de segurança da informação, é uma atividade importante que visa controlar a oferta de informação e impedir o seu uso não-autorizado. Durante muitos anos o gerenciamento de segurança da informação foi amplamente ignorado. Contudo isso está mudando. Atualmente se considera que a segurança será um dos principais desafios da administração nos próximos anos. Na organização de T.I. (Tecnologia da Informação) o gerenciamento de segurança integra a segurança do ponto de vista do provedor. O padrão internacional da ISO 17799 fornece a orientação para o desenvolvimento, introdução e avaliação das medidas de segurança. O que se visa é proteger o valor das informações. Esse valor depende da confidencialidade, da integridade e da disponibilidade. “No entanto todos são importantes em um sistema. Todas são chamadas, em algum ponto de alguma forma, de segurança do sistema.” (RIBEIRO, Bruno. 2002, p.2.) De acordo com o Jamie Miller. 2009, p.1 se têm a seguinte observação: “Técnicas de segurança incluem aspectos do hardware computacional, rotinas programadas e procedimentos manuais, bem como os meios físicos usuais de segurança local e segurança de pessoal, fechaduras, chaves e distintivos.” Segurança da Informação As industrias de softwares vêm enfrentando um difícil momento, relacionado à segurança de dados. O problema é maior do que parece, pois, de uma certa forma está ligado ao problema social. As novas tecnologias de informação parecem ter feito nascer um novo vírus social – “mania de dados”. Seus sintomas são: falta de ar e palpitações cardíacas diante de uma nova aplicação do computador, um sentimento de possessão em relação à informação e um profundo ressentimento em relação aqueles que não a revelam, a ilusao de que todos os possuidores de informações podem caminhar sobre as águas, e um caso bem avançado de astigmatismo que impede a vitima de perceber qualquer coisa que não o valor intrínseco dos dados. Felizmente, somente alguns membros da fraternidade dos manipuladores de informações foram apanhados pela doença. (MILLER, 1971, p. 37) [Digite o conteúdo da barra lateral. Trata-se de um suplemento independente do documento principal. Em geral fica alinhado do lado esquerdo ou direito da página, ou situa-se na parte superior ou inferior. Use a guia Ferramentas de Caixa de Texto para alterar a formatação da caixa de texto da barra lateral. Digite o conteúdo da barra lateral. Trata-se de um suplemento independente do documento principal. Em A nossa sociedade é baseada em informações, e cadadovez pretensão de coletar geral fica alinhado ladoaesquerdo ou direito da página, ouser situa-se na parte superiorde ousegurança, inferior. Use a dados é maior. Devidas informações, deveriam restritas à agencias guia Ferramentas Caixa dea Texto para alterar a fiscalização, estatística, etc. mas geralmente tem livredeacesso todos. Com o uso formatação da caixa de texto da barra lateral.] efetivo dos computadores, aumentaram o alcance das pessoas à coleta de dados. Antigamente, as barreiras físicas como arquivos, paredes,, eram suficientes para proteger as informações. Com a informatização de dados, independente da natureza da informação, ela pode ser alcançada. “A segurança de dados pode ser definida como a proteção de dados contra a revelação acidental ou intencional a pessoas não autorizadas, e contra alterações não autorizadas”.(“The Considerations of Data Security in a Computer Enviroment”, White Plains, N.Y., IBM Corporation, Form G520 – 2169, p.1) Muito embora as considerações sobre segurança de dados em um ambiente computacional estejam em seus primeiros passos, vários cientistas de computação fizeram progressos substanciais no desenvolvimento de princípios, métodos e técnicas para obtenção de vários níveis de segurança de dados em um sistema computacional. É ideal que se faça um projeto de segurança, um que envolva a especificação de objetos, sujeito a regras de proteção. Um mecanismo satisfatório de proteção deve ter a capacidade para isolar completamente um programa de outro, a capacidade de fazer com que um usuário permita acesso controlado a seus segmentos, a capacidade de perceber diversas camadas de proteção no mesmo programa e a capacidade de permitir que os procedimentos sejam chamados através de diferentes chamadas de proteção. Um ambiente operacional usado para apresentação de estrutura em anel inclui o conceito de uma memória virtual segmentada, que é determinada para cada usuário ativo. Cada memória virtual é composta de segmentos contíguos identificados por um numero. Podemos citar também, mecanismos de segurança lógica tais como: Mecanismos de criptografia(faz a informação se tornar inteligível a terceiros), Assinatura Digital(não garante a confidencialidade, mas a integridade e autenticidade de um documento devido), Mecanismos de Garantia da Integridade da Informação(usa funções de hashing), Mecanismos de Controle de Acessos (palavras-chave, firewalls), Mecanismos de certificação (Verifica a validade de um documento), Integridade (Está protegido contra personificação de intrusos), Honeypot (um software que impede a ação de um cracker no sistema, ou engana-o de que achou uma vulnerabilidade do sistema), Protocolos Seguros (Protocolos que garantem um grau de segurança e usam alguns dos emcanismos acima citados). A ameaça da informação está diretamente ligada a perca de suas três principais características: Perda de Confidencialidade (quando acontece quebra de sigilo de uma determinada informação), Perda de Integridade (quando uma pessoa não autorizada tem acesso a fazer modificações numa determinada informação) e Perda de Disponibilidade (ocorre quando uma determinada informação deixa de estar acessível por quem necessita dela). Geralmente quando acontecem ataques, os mesmos são feitos por crackers, que o fazem geralmente por dinheiro, auto-estima ou vingança. Isso faz com que as empresas invistam mais em segurança em sua rede privada (sua intranet). Se pararmos pra analisar, toda questão da segurança é voltada ao objetivo de que pessoas não autorizadas, não acessem informações de um determinado sistema. Perca de dados podem ocorrer de varias maneiras, através de eventos naturais(terremotos, enchentes, etc.), erros de hardwares ou softwares (erro na transmissão de dados, bugs em programas, etc.) ou erros humanos (entrada de dados incorreta, erros humanos, etc.), mas, podemos evitar esses danos fazendo um backup em uma unidade separada da que usamos. A dependência nos sistemas de informação e serviços significa que as organizações estão cada vez mais vulneráveis as ameaças de segurança. A interconexão de redes públicas e privadas e o compartilhamento e recursos de informação aumentam a dificuldade de se controlar o acesso. A tendência da computação distribuída dificulta a implementação de um controle de acesso centralizado realmente eficiente. (ISSO/IEC 17799, 2001, p.2). A maioria dos sistemas, não foram projetados para garantir a segurança, até porque muitos deles foram projetados em uma época em que não existia essa interconexão de redes. A NBR (Norma Brasileira) ISO/IEC 17799 - Tecnologia da Informação – Código de prática para a gestão da segurança da informação, é originada da Norma Britânica BS7799 Parte 13, desenvolvida pela British Standards Institute (BSI), com inicio em 1995, e depois padronizada pela International Organization for Standardization (ISO) em 2000, como ISO/IEC 17799. Esta norma tem como objetivo fornecer recomendações para a gestão da segurança da informação para uso dos departamentos responsáveis pela introdução, implementação ou manutenção da segurança em suas organizações. Proporcionando uma base comum para o desenvolvimento das normas de segurança organizacional e das práticas efetivas de gestão da segurança, e prover confiança nos relacionamentos entre as organizações. É importante observar que essas recomendações descritas na norma estejam de acordo com a legislação e regulamentação vigente. O objetivo da política de segurança da informação é prover à direção uma orientação e apoio para a segurança da informação. Segundo a NBR ISO/IEC 17799 (2001, p. 4) “Convém que a direção estabeleça uma política clara e demonstre apoio e comprometimento com a segurança da informação através da emissão e manutenção de uma política de segurança da informação para toda a organização”. Para que seja possível a implantação da política é necessário que a alta direção tenha aprovado, comunicado e publicado, de maneira adequada para os funcionários. É necessário que a alta direção esteja sempre preocupada com o processo e estabeleça as linhas mestras para a gestão da segurança da informação. Uma das principais portas de entrada para incidentes de segurança em uma organização é a Internet. Pelo motivo de que as organizações não possuem controle dos acessos feitos pelos seus funcionários, permitindo o acesso total. E também permitem acessos de outras corporações via extranets 5 e e-businnes 6 através de links dedicados ou web. Com o avanço da tecnologia e o acesso a Internet, está aumentando a cada ano o número de ataques por meio de redes de computadores, as organizações ainda não possuem um plano de ação para evitar os riscos. O grande problema apresentado não é o tecnológico e sim o cultural. A falta de conscientização do publico interno da organização, tanto dos executivos como dos funcionários em geral, podem colocar em risco suas estratégias de negócios e a credibilidade no mercado. Para minimizar esses problemas é importante que seja estabelecida uma política de segurança utilizando controles que possam nortear um sistema de informação segura. Conclusão É observado que sejam estabelecidas responsabilidades e que haja o apoio da alta direção da organização, criando uma política de segurança eficaz e que seja norteada pelas diretrizes da NBR ISO/IEC 17799:2001. Deve ser criado uma comissão de segurança com o devido gestor de segurança, onde serão estabelecidos e fiscalizados os sistemas de informação da organização. Utilizando as diretrizes de segurança no sistema de informação nas redes de computadores, é possível ter um bom nível de proteção. Sendo que com a aplicação da NBR ISO/IEC 17799:2001 é resolvido o problema de gerenciamento de segurança das redes de computadores em relação à invasão nas redes internas (meios controlados pela organização) e redes externas (meios não controlados pela organização). Nas redes de computadores é conclusivo que a criptografia possui um papel fundamental, porém deve ser observada as diretrizes da norma em relação à implantação e responsabilidades. Com a política de segurança é possível estabelecer regras do bom uso da informação de forma confidencial e segura, levando em consideração que essa informação é um ativo de grande importância para a organização. Com a aplicação da NBR ISO/IEC 17799:2001, é possível atingir um alto nível de proteção no sistema de informação e nas redes de computadores. E são garantidos os três princípios básicos da segurança da informação: confiabilidade, integridade e disponibilidade. Chega-se a conclusão que a NBR ISO/IEC 17799:2001 funciona nas organizações que estão preocupadas com uma política de segurança utilizando as diretrizes da norma para garantir a segurança da informação. A implantação da norma não é tão simples, pois é necessário o comprometimento de todos, ou seja, executivos, alta direção e funcionários administrativos, que devem ser incentivados para garantir a qualidade da segurança da informação. E através das diretrizes descritas na norma é possível organizar as atividades relativas à segurança da informação, estabelecendo um ambiente seguro para a organização. Referências SÊMOLA, M. Gestão da Segurança da Informação – Uma visão executiva. 3. Ed. Rio de Janeiro: Elsevier, 2003. 160p. NBR/ISO/IEC 17799. Tecnologia da Informação – Código de prática para a gestão da segurança da informação. Rio de Janeiro: Associação Brasileira de Normas Técnicas, 2001. 56p. DE SORDI, J.O. Tecnologia da Informação Aplicada aos Negócios. 1. Ed. São Paulo: Atlas, 2003. 185p. NICCOLAI, M.; BEZERRA, M.; VERAS, F. Tudo pela Segurança da Informação. São Paulo, Junho. 2004. Disponível em: <http://www.nextgenerationcenter.com/br/>. Acesso em: 30 mai. 2010. VIEIRA, S. Segurança da Informação com selo de qualidade. São Paulo, Junho. 2004. Disponível em: <http://www.nextgenerationcenter.com/br/>. Acesso em: 30 mai. 2010. RIGATIERI, V.; DOLENC, L.; DUARTE, M.; ZARZA, C. ; CAMPOY, E. Segurança. São Paulo. Maio. 2004. Disponível em: <http://www.nextgenerationcenter.com/br/>. Acesso em: 30 mai. 2010. INSTITUTO CUIABANO DE EDUCAÇÃO FACULDADES INTEGRADAS MATOGROSSENSES DE CIÊNCIAS SOCIAIS E HUMANAS Hugney Welliton Rodrigues Ieda Maria Brighenti REDES DE COMPUTADORES RESUMO Este artigo apresenta a aborgem sobre de redes de computadores, suas vantagens e desvantagens, topologias, rede sem fio, softwares que gerencia uma rede, hardware e também como melhor maneira de utilizar uma rede. Palavras-chave: Redes de Computadores. ABSTRACT This article presents the aborgem on computer networks, their advantages and disadvantages, topologies, wireless networking, software that manages a network, hardware and also how best to use a network. Keywords: Computer Networks. INTRODUÇÃO O uso de redes de computadores vem se tornando cada vez mais indispensável em todos os locais onde há mais de um computador, isso esta ocorrendo, pois estava aumentado o acesso a internet em todos os ramos de atividade, como empresas, indústrias, etc. Neste contexto em importante compreender as formas de sua utilização, beneficio e é claro a forma de montar uma rede que depois não de trabalho para manutenção. PLANEJAMENTO DE UMA REDE Um planejamento de uma rede bem estruturada é uma condição básica para sua durabilidade e para seu funcionamento, devemos escolher o que há de melhor para atender diversos requisitos seja um comercio ou empresa, pois nisso garantimos sua durabilidade, performace, seu baixo custo e principalmente que tenha uma grande segurança contra invasores (Hackers e Vírus). Projetando uma boa rede, teremos um alto desempenho, como a velocidade nas distribuições das informações (dados), facilidade de instalação, manutenção e possibilidade de expansão da rede. A REDE EM SI A rede nada mais é que um meio compartilhamento de vários equipamentos de comunicação, como por exemplo, computadores, impressoras, etc. Através de computadores interligados em rede, qualquer pessoa em qualquer computador poderá ter acesso aos dados armazenados em qualquer equipamento que faça parte da rede. Um único periférico pode ser compartilhado por toda a rede, diminuindo assim custos e equipamentos instalados. Através de uma única conexão a um provedor de acesso e o uso de um computador, qualquer pessoa poderá conectar a rede, ter acesso a Internet. Como exemplo, uma empresa com 10 funcionários com necessidade de proporcionar acesso Internet a todos simultaneamente, não necessitará possuir 10 contas de acesso nem 10 linhas telefônicas. Com apenas uma conexão ao provedor de acesso e uma linha telefônica, todos os 10 funcionários poderão acessar a Internet simultaneamente. Uma pequena rede pode ser tão simples quanto a conexão de dois computadores através de um cabo. Uma grande rede, através da utilização de equipamentos apropriados, poderá conectar centenas de milhares de computadores e periféricos simultaneamente. Os tipos de equipamentos de rede que são utilizados são definidos pelo tamanho da rede e suas características operacionais. A necessidade de informações faz com que uma rede não seja um luxo e sim uma necessidade. Devido ao seu baixo custo comparado com os benefícios / economia de tempo e dinheiro que ela proporciona, faz com que desde instalações residenciais de computadores, computadores em pequenas, médias e grandes empresas utilizem o recurso de redes. TOPOLOGIAS UTILIZADAS EM UMA REDE A topologia da rede define a forma física como a rede é projetada, os tipos de topologias mais comuns são: Rede Local ou LAN, Topologia Estrela, Topologia Barramento e Anel. REDE LOCAL (LAN) É uma rede situada em local determinado (não remoto), que permite o compartilhamento de informações, equipamentos e recursos entre os seus usuários. TOPOLOGIA ESTRELA Uma configuração de rede que utiliza cabeamento e um HUB, Cada item da rede é conectado ao HUB, lembrando o desenho de uma estrela. TOPOLOGIA EM BARRAMENTO É uma configuração de rede na qual um único cabo, como um cabo coaxial de rede, é usado para conectar os computadores em série permitindo assim o tráfego de informações na rede. REDES PONTO A PONTO Nesta configuração de rede, um servidor não e‟ utilizado, sendo baseada nos computadores que estão conectados na rede. Cada nó da rede tem a capacidade de conversar diretamente com qualquer nó da rede que tenha as informações de que necessita. Este tipo de rede permite a otimização de vários recursos, compartilhando-os dentro da rede. PLACA DE REDE A placa de rede, também conhecida como placas de interface de rede ou NICs, fornece o enlace necessário entre o computador e sua rede. As placas de rede convertem o formato das informações enviadas pelo sistema para formato compatível com a rede, as placas de rede contem também os conectores necessários para a ligação do sistema na rede através de cabos. HUB Também conhecido como concentrador ou repetidor, tem a função básica de receber e enviar sinais entre os dispositivos conectados a ele através da rede. Toda a comunicação feita através do Hub é transmitida simultaneamente para todos os nós conectados na rede, os nós conectados fornecem sua própria energia, e o Hub tem sua própria fonte de energia. SWIT Um Switch e um dispositivo mais sofisticado que o HUB, com a diferença de que aprende os endereços da rede automaticamente, fornecendo uma linha privada para a rede. Um nó ou Hub totalmente utilizado pode ser conectado a um switch, o switch é um componente fundamental para a rede, pois divide uma grande rede em segmentos menores, seu uso ajuda a melhorar a velocidade e desempenho da rede, eliminando também erros,o switch também permite que uma transmissão de informações seja dirigida a um nó específico da rede, ao invés de ser transmitida a todos os usuários da rede. BRIDGES Os Bridges são utilizados para conectar grupos de trabalhos separados (sub-redes), orientando o destino e a fonte de informação. ESTACAO DE INTERNET Através do uso de uma Estação Internet, com uma única linha telefônica ou linha dedicada e uma única conta de acesso em Provedora Internet, todas as estações de uma rede poderão ter acesso a Internet. VANTAGENS DE USAR UMA REDE DE COMPUTADORES Compartilhamento de arquivos de trabalho: Recurso muito utilizado, pois permite que os usuários acessem trabalhos armazenados em outros computadores, evitando assim o transporte da informação em pen-drivers, CD ou relatórios impressos. Compartilhamento de programas: Nos computadores podemos acessar programas que estão instalados fisicamente em outros computadores, evitando desperdícios de espaço no HD e padronizando a versão do programa em uso, alem disso podemos economizar no custo dos programas. Compartilhamento de drivers de disco: Com as grandes quantidades de mídias existentes, como CD-R, CD-RW, DVDs, havendo um driver desse na rede, todos os usuários poderão ler e gravar arquivos nestes dispositivos. Compartilhamento de impressoras: Um dos itens mais utilizados em empresas é a impressora. Permitir que todo usuário imprimam nas impressoras compartilhadas, economizado espaço físico e evitando colocar uma impressora em cada computador, evitando assim um grande custo para empresa. Compartilhamento de acesso a internet: O uso de internet hoje em dia se tornou indispensável, principalmente serviços de E-mail, pelo seu recurso, rapidez e facilidade de uso. Podemos comunicar com uma pessoa do outro lado do mundo em tempo real, a um custo bastante baixo. Podemos escrever texto e nesse texto mandar fotos, sons, imagens e arquivos em um único e-mail. Acesso a dados (atualização em tempo real): A rede local é fundamental para que todos os envolvidos possam atualizar os dados para uso próprio e também de terceiros. Serviços de mensagem interna: Outro recurso interessante, que acaba com os famosos bilhetinhos internos, não preciso se deslocar ate a mesa de um colega para perguntar se já terminou o serviço, basta passar uma mensagem internamente e ela será vista ao mesmo instante no computador do colega, que respondera pela mesma via. DESVANTAGEM DE USAR UMA REDE DE COMPUTADORES Alem de trazer benefícios para a empresa o uso de redes traz alguns efeitos desagradáveis, como; 2. Vírus: Um arquivo infectado trazido pelo usuário pode se espalhar por toda a rede na mesma hora, fazendo todo o sistema entrar em pane. 3. Panes Gerais: Alem do vírus, outros fatores podem fazer com que a rede pare de funcionar, como problemas em servidores, nos cabeamentos, etc. Podendo assim tornar o sistema inoperante, como conseqüência haverá diminuição das atividades do grupo de trabalho. 4. Acesso a usuários desastrados: Os usuários desastrados podem facilmente apagar arquivos vitais do sistema ou desconfigurar totalmente uma rede ou computador por mexer onde não deve. REDES SEM FIO As redes sem fio vêm sendo bastante estudadas. Muitos produtos vêm sendo lançados no mercado devido as facilidades que tais redes podem oferecer como, mobilidade e facilidade de instalação, já que utilizam uma infra-estrutura bem mais simples, ao contrario das redes convencionais, que exigem uma infra-estrutura mais complexa. Essa característica facilita o acesso a dados e a própria Internet em qualquer ponto onde haja cobertura de uma rede sem fio, fornecendo flexibilidade de acesso, uma rede sem fio é um sistema flexível de comunicação implementado como uma extensão ou uma alternativa para as tradicionais redes fixas. Esse tipo de rede vem ganhando forte popularidade e cada vez mais vem sendo utilizada em empresas, dispensa dos cabos é um dos principais que leva a diversas vantagens como: redução de custos, a variedade de topologias, entretanto pode trazer algumas desvantagens como taxas inferiores às redes convencionais, ausência de segurança e interferências externas. Numa rede sem fio os dados são enviados através do ar em canais de freqüências de rádio, infravermelho ou laser. O infravermelho é pouco usado, sua faixa de freqüência fica logo abaixo da freqüência da luz visível. Podem-se conseguir altas taxas de transmissão chegando a 10 Mbits. O Laser pode alcançar distâncias entre 200 a 300 metros com visada direta, podendo ser usado para cobrir duas redes sem fio, por exemplo, cada uma em um prédio. As freqüências de rádio são as mais utilizadas em redes de computadores, caracterizando-se por ser uma alternativa viável onde é difícil ou mesmo impossível a instalação de cabos metálicos ou de fibra óptica [CAM05]. Se há necessidade de implantação de uma rede em uma região de difícil acesso, a rede sem fio provavelmente é a melhor saída. Nesse cenário, desponta o padrão IEEE 802.11 que foi criado para normalizar esse tipo de rede. Cada padrão apresenta características peculiares para tentar aperfeiçoar sua utilização do meio e assim poder atingir taxas mais elevada e de maior alcance. As faixas destinadas para essas aplicações são conhecidas como ISM - Industrial, Cientifica e Médica. Esta faixa é considerada "livre", pois não precisa de autorização para ser utilizada, sendo adotadas por diversos países, tendo sido a primeira em 900MHz (902 até 928MHz), a segunda em 2.4 GHz (2400 até 24831.5 MHz) e a última em 5 GHz. Atualmente o Brasil está atualizando a Resolução 305 da ANATEL (Agência Nacional de Telecomunicações), nas partes referentes a 2.4 e 5 GHz [MAT00]. Esses sinais da rede sem fio passam via roteadores, no qual capitam e transmitem o sinal para outros roteadores, pegando principalmente dados que trafegam via sinal, distribuindo para varias redes e nessas redes distribuindo para varias maquinas. Sem eles o que seria da internet de sem fio hoje, uma desvantagem é que é mais complicado de configurar em relação a rede com cabo. SOFTWARES DE REDE Existem muitos software que melhoram uma administração de redes, pois ele são altamente estruturado no qual sua estrutura denomina de algoritmos. SEGURANCA DA REDE A segurança abrange inúmeros tipos de problemas, como por exemplo, a modificação de mensagens enviadas a outras pessoas, sendo que a maior parte dos problemas é causado por pessoas maliciosas que tentam tirar proveito, muitos fazem só por brincadeira, mais isso prejudica muita gente que precisa desse ferramenta para trabalhar no qual a internet. Existem softwares específicos para essas ocasiões que tentam inibir esses tipos de serviços, eles são denominados antivírus, programas que tentam bloquear a entrada de intrusos nas maquinas, também em sistemas operacionais como Windows, a um bloqueador chamado de firewall, que também inibi a entrada de inclusos. Ataques ocorrem freqüentemente no mundo, pois certo disso, por causa de usuários que clicam, baixam programas sem ter algum conhecimento, esses programas maliciosos se instalam da maquina, fazendo mudança ou ate bloqueando alguma ação no computador tem alguns que vai mandando informações ao seu criador, como por exemplo, senha de cartões de credito, email, entre outro. CONCLUSAO Por fim tudo isso que foi descrito no artigo só seria possível e feito graças administrador de redes, responsável por projetar e manter uma rede de computadores em funcionamento, também não se esquecendo da segurança, pois vários administradores especializam na área de segurança de rede. Esses administradores trabalham geralmente em empresas ou órgãos públicos. Normalmente, os administradores de rede possuem conhecimentos avançados em protocolos de rede, Internet entre outros. Geralmente trabalham em equipe, pois só uma pessoa não consegue administra uma rede sozinho, mas isso depende da rede que ele fará o suporte, ou seja, a manutenção. 4. REFERÊNCIAS BIBLIOGRÁFICAS [1] TANEBAUM, Andew S. Redes de Computadores. São Paulo. Campus. 2003. [2] MAURICO, José. Guia Complemento de Cabeamento de Redes. São Paulo. Campus. 2003. [3] ASSOCIADOS, Diretores. PCS Rede de Computadores. Rio de Janeiro. Lucano. 1998. [4] APARECIDA, Débora. Redes e Serviços de Telecomunicações. São Paulo. 2002. [5] ASSOCIADOS, Diretores. Planejamentos de Redes. Rio de Janeiro. Lucano. 1999.. [6] FURUKAWA, Introdução a Tecnologia de Redes. São Paulo. Furukawa. 2003. [7] ALVES, Vieira, Hardware. São Paulo. Escala. 2000. [8] INFO, Guia Tech. São Paulo. Abril. 2007 INSTITUTO CUIABANO DE EDUCAÇÃO – ICE CURSO DE GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO Impacto das Redes Sociais na Economia José Benedito CUIABÁ-MT/ 2011 José Benedito da Conceição O Impacto das Redes Sociais na Economia Trabalho apresentado ao Curso de Ciência da Computação do Instituto Cuiabano de Educação como um dos requisitos para obtenção de nota na disciplina Metodologia de Pesquisa Sob a orientação da Professora Renata CUIABÁ-MT/ 2011 Resumo Atualmente as empresas se aliaram à tecnologia numa tentativa de aumentar o alcance ao público e demonstração de seus produtos e serviços. As Redes Sociais estão se tornando as ferramentas mais utilizadas pelas empresas como canal de interação e em contrapartida ocorrem os ganhos das empresas e o crescimento da economia. Palavras chaves: Redes sociais, economia e tecnologia. Introdução Assim como a internet gerou novos processos e modelos corporativos no começo da década, hoje Redes Sociais estão alterando o perfil do mundo empresarial. Define-se Rede Social como uma estrutura social composta por pessoas ou organizações, conectadas por um ou vários tipos de relações, que partilham valores, objetivos, informações, conhecimentos e interesses comuns. Duas características marcam as redes sociais: sua abertura, o que possibilita a criação de relacionamentos horizontais e não hierárquicos entre os participantes e sua habilidade de se fazer e desfazer rapidamente, onde a conexão fundamental entre as pessoas se dá através da identidade. O primeiro site de Rede Social surgiu em 1995, com o endereço classmates.com. Ele foi criado com o intuito de conectar antigos amigos do colégio ou da faculdade. Em 1997 a Sixdegress foi a primeira rede social que permitiu a criação de um perfil virtual, bem como a publicação e listagem de contatos, revolucionando esta forma de comunicação. As redes sociais podem operar em diferentes níveis, por exemplo, redes de relacionamentos como Facebook, Orkut, e Twitter, redes profissionais LinkedIn, dentre outras, sendo estas as principais Redes Sociais existentes atualmente. O Impacto das Redes Sociais na Economia Se utilizando de criatividade, conhecimento e empreendedorismo, verdadeiros gênios estão acumulando fortunas e ao mesmo tempo mostrando caminhos para as empresas que inovam sua forma de oferecer serviços e produtos através das redes sociais. As empresas divulgam produtos e serviços em espaços de variados tamanhos dentro das redes sociais, gerando uma possível venda. Assim ganha o retentor do domínio e as empresas. O primeiro site de Rede Social surgiu em 1995, o Classmates, ele é mais utilizado no Canadá e nos Estados Unidos, o lado ruim do Classmates, é que para ter acesso ilimitado ao site o usuário tem que pagar uma taxa. Uma década depois os sites de Redes Sociais começaram a se popularizar. Ordem Cronológica das Redes Sociais 1995 classmates Craigslist 1997 Six Degrees AsianAvenue 1998 Care2 Xanga 1999 LiveJournal BlackPlanet 2000 MiGente mixi 2001 Cyworld Ryze StumbleUpon Meetup 2002 Friendster Fotolog Plaxo MyLife 2003 Skyblog Couchsurfing MySpace LinkedIn 2004 Facebook Orkut Basecamp 2005 Youtube Yahoo Cyworld 2006 MyChurch Windows Live Spaces Twitter 2007 Tumblr Raverly 2008 Kaixin001 Yammer 2009 Foursquare Gowalla Renren Plurk 2010 Google Buzz http://socialmediaempresarial.wordpress.com/2010/04/08/saiba-qual-foi-a-primeira-rede-social-da-internet/ Aqui listamos algumas redes sociais em ordem cronológica. Os dados foram obtidos por meio de um vídeo desenvolvido pelo profissional de mídias sociais Jesse Thomas. O site Compete divulgou a lista das Redes Sociais mais acessadas do mundo. Os números são referentes a janeiro de 2009. Números de acessos 1.400.000.000 1.200.000.000 1.000.000.000 800.000.000 600.000.000 Números de acessos 400.000.000 200.000.000 0 Facebook MySpace Twitter Linkedin Classmates Acervo do Autor Os valores de mercado do Facebook e do Twitter estão triplicando anualmente, mas não poderão crescer para sempre. valor de mercado em bilhões¹ 70 60 50 40 30 valor de mercado em bilhões 20 10 0 Twitter Facebook Linkedin Acervo do Autor ¹ Obs: Não obtivemos valores reais de outras empresas. Os preços altos explicam a ausência de qualquer pressa para vender as ações das companhias publicamente. Mas como as modas são superadas rapidamente, os donos das redes sociais não deveriam ser tão ambiciosos. Supondo que o valor do Facebook continue a triplicar anualmente, a rede social estaria avaliada em muito mais de 500 bilhões no início de 2013. Mas, é claro, esse tipo de coisa quase nunca acontece. O ritmo de crescimento de grandes empresas normalmente diminui muito antes de elas atingirem tal tamanho. É verdade que quantidades enormes de usuários ainda estão aderindo ao serviço, anunciantes estão se acostumando mais com ele e investidores não se satisfazem com as poucas ações disponíveis na rede social. Mas o fundador Mark Zuckerberg deve ter em mente que até mesmo o Google foi à bolsa quando foi avaliado em apenas 23 bilhões. A Altime Group mostrou recentemente numa pesquisa que, as empresas que investem mais em redes sociais apresentam resultados muito melhores do que aqueles que ainda não fazem uso dessa mídia. As organizações apresentaram um crescimento de 18% em seu faturamento após iniciar a interação na internet, enquanto outras que não investem recursos em novas mídias mostraram uma queda de 6% na receita, no mesmo período analisado. Uma nova pesquisa da Nielsen, divulgada na Website Magazine, trouxe resultados interessantes sobre a importância das empresas criarem networking em redes sociais e blogs. A quantidade de investimentos em propaganda nessas redes cresceu 119% indo de $49 milhões para $108 milhões. O estudo divulgou que o tempo que o consumidor passa em redes sociais e blogs são de 17% do total da internet, três vezes mais do que há um ano. O Facebook é o site de preferência, recebendo investimentos em propaganda de 10 em cada 13 indústrias. Propaganda dirigida, customização e diferentes tipos de anúncios fazem com que investimentos em redes sociais se tornem atrativos para os empresários. Anúncios no Facebook permitem que as empresas alcancem 300 milhões de usuários, direcionando suas campanhas por área, sexo, idade, nível de educação, língua, etc. Também podem escolher por campanhas pay-per-click(PPC) ou custo por impressão (CPI), além de poder editar seus anúncios a qualquer hora. Porém, é fundamental que as empresas descubram onde estão seus usuários. Nem sempre a rede que possui maior número de cadastrados é a comunidade mais forte entre seu público. Conclusão Concluímos que a grande ferramenta para as empresas que querem aumentar seu rendimento e sua divulgação é sem dúvida a internet e as Redes Sociais têm se mostrado como o canal mais rentável, versátil e útil para a realização de negócios. Há ferramentas, nestas Redes Sociais, que atendem a todas as necessidades das empresas na hora de expor seus produtos e serviços. Assim elas se tornam o meio mais procurado, alavancando a economia que, neste setor, muda suas sifras com uma velocidade gigantesca, graças à grande aceitação e popularização das Redes. Bibliografia AZAMOR, Thales. As 10 maiores redes sociais do mundo, http://lista10.org/tech-web/as-10-maiores-redes-sociais-do-mundo/. Acesso em 05/05/2011. Saiba qual foi à primeira Rede Social da Internet, http://socialmediaempresarial.wordpress.com/2010/04/08/saiba-qual-foi-aprimeira-rede-social-da-internet/. Acesso em 05/05/2011. OLIVEIRA, Natanael. A história das Redes Sociais, http://www.natanaeloliveira.com.br/a-historia-das-redes-sociais/. Acesso em 05/05/2011. VITALE, Candice. Investimentos em propaganda nas redes sociais crescem 119%. http://www.heat.com.br/blog/marketing-digital/investimentosem-propaganda-nas-redes-sociais-cresce-119/. Acesso em 05/05/2011. SÁTIRO, Valdirene. Rede Social pode melhorar o negócio e deixar a empresa 2.0. http://www.administradores.com.br/informe-se/artigos/rede-socialpode-melhorar-o-negocio-e-deixar-a-empresa-2-0/54175/. Acesso 12/05/2011. SAMPAIO, Luciano. Como as redes sociais estão se tornando os SACs mais eficientes. http://www.tecmundo.com.br/7698-como-as-redes-sociaisestao-tornando-os-sacs-mais-eficientes.htm. Acesso em 19/05/2011. SAMPAIO, Luciano. Empreendedorismo online: como ganhar dinheiro na internet. http://www.tecmundo.com.br/3661-empreendedorismo-online-comoganhar-dinheiro-na-internet.htm. Acesso em 19/05/2011. Valor de redes sociais não vai crescer para sempre. http://tecnologia.terra.com.br/noticias/0,,OI4974288-EI15608,00Valor+de+redes+sociais+nao+vai+crescer+para+sempre.html. Acesso em 19/05/2011. Leilão de ações do Twitter sugere valor de US$7,7 bilhões para o site. http://g1.globo.com/tecnologia/noticia/2011/03/leilao-de-acoes-do-twittersugere-valor-de-u77-bi-para-o-site.html. Acesso em 19/05/2011. INSTITUTO CUIABANO DE EDUCAÇÃO – ICE CURSO DE GRADUAÇÃO EM CIENCIAS DA COMPUTAÇAO Inclusão Digital nas Empresas ALUNO: Giovan Lima dos Santos CUIABÁ-MT, 26 DE MAIO/2011 Inclusão Digital nas Empresas Trabalho Acadêmico para obtenção de nota para o 1º Bimestre do 3º semestre de Ciência da computação, sob Orientação da professora Renata, disciplina Metodologia e Pesquisa. CUIABÁ-MT, 26 DE MAIO/2011 SUMÁRIO Resumo ................................................................................................................................................ 04 Inclusão Digital nas Empresas ...................................................................................................... 05 Conclusão ................................................................................................................................... 08 Bibliografia .................................................................................................................................. 09 INCLUSÃO DIGITAL NAS EMPRESAS Giovan Lima dos Santos* RESUMO: Hoje em dia, o termo ―Inclusão Digital‖, é tão usado que já se tornou um termo comum entre as pessoas. É natural ver a mídia, empresas e políticos falando em inclusão digital, que sem dúvida, é muito útil e necessário para a propagação da era digital, e é claro, necessário também para a melhora da qualidade de vida das pessoas, que vivem em um mundo moderno, um mundo que chegou à tão falada ―Era Digital‖. Mas, o que é a Inclusão Digital? A quem se destina? Como Incluir Digitalmente os funcionários de uma empresa, que ainda não foram incluídos no ―mundo digital‖? Esse artigo abordará, de forma objetiva, as indagações levantadas nessa introdução, e levará o leitor a entender, porquê as empresas precisam se preocupar com a inclusão digital de seus funcionários. PALAVRAS-CHAVE: Inclusão Digital. Empresas. Conhecimento * Acadêmico no 3º Semestre em Ciências da Computação pelo ICE – Instituto Cuiabano de Educação INCLUSÃO DIGITAL NAS EMPRESAS Os autores do Blog caminhoinclusaodigital.wikidot, pensam assim: “Inclusão Digital, pode ser considerada como democratização das tecnologias. Esse assunto tem sido muito repercutido no Brasil pelas dificuldades encontradas para a implantação. Incluir uma pessoa digitalmente não é apenas "alfabetizá-la" em informática, mas sim fazer com que o conhecimento adquirido por ela sobre a informática seja útil para melhorar seu quadro social. Somente colocar um computador na mão das pessoas ou vendê–lo a um preço menor não é, definitivamente, inclusão digital. Desde o início de 2005, foi implantado pelo Governo Federal um projeto de inclusão digital: Computador para todos. Esse projeto é voltado para a classe C e permite a oferta de computador e acesso à Internet a preços subsidiados. O equipamento deve utilizar obrigatoriamente software livre, ou Seja, Programas gratuítos. Os projetos de inclusão social implantados pelo governo podem ser conhecidos mais profundamente pela página do Governo sobre o assunto.‖ Pensam errado, aqueles que entendem ―Incluir Digitalmente‖ como somente dar computadores a uma pessoa que o não tem, ou mesmo, levar internet àqueles que têm o computador, mas que não têm acesso à internet. Isso é válido, mas não é a essência da Inclusão Digital. A inclusão digital, para acontecer, precisa de três instrumentos básicos que são: computador, acesso à rede, e o domínio dessas ferramentas, pois não basta apenas o cidadão possuir um simples computador conectado à internet, que já estará incluído digitalmente. Ele precisa saber o que fazer com essas ferramentas. As pessoas leigas ao mundo digital, ou até mesmo aquelas sem acesso por falta de recursos, precisam, acima de tudo, aprender a manipular um computador ou qualquer outro aparelho eletrônico, como uma ferramenta de trabalho ou como um instrumento de uso no dia-adia, isso para facilitar suas vidas. Dentre vários outros exemplos de como a inclusão digital melhora a vida das pessoas, temos o uso do email, antigamente uma correspondência (Carta) demorava dias para chegar do remetente ao destinatário, dependendo a distância demorava até meses, com o uso do email, isso se tornou muito prático e ágil, onde, com alguns segundos, uma pessoa se comunica através de email com outra pessoa que esteja em qualquer lugar do mundo. Com o Avanço da tecnologia, muitos padrões começam a mudar, a exemplo disso temos o uso do Cartão de Crédito/Débito, que limita o uso de dinheiro impresso, e passa a utilizar o dinheiro virtual. Temos também o Internet banking, onde o cliente, através do acesso via Web, resolve problemas que outrora lhe custava tempo de espera numa fila do banco, e que agora resolve da sua própria casa. Outro exemplo muito usual, é o uso das compras on-line, onde, de casa qualquer pessoa pode comprar e já pagar algo de qualquer lugar do mundo, tudo em tempo real. Com tanta tecnologia surgindo, as pessoas/organizações devem se preocupar em adequar-se a essas mudanças, pois existem pessoas, principalmente a grande massa de funcionários do setor produtivo, que ainda não estão incluídos no quadro dos preparados para tais mudanças. Há no Brasil, várias empresas que já estão inovando e fazendo muito mais que as rotinas tradicionais, elas estão aderindo a programas sociais como o de inclusão digital. Como muitas outras iniciativas, essas empresas não devem esperar que tudo seja resolvido pelo governo — até porque este nem sempre (ou quase nunca) tem sido capaz de dar solução aos grandes problemas nacionais. Um Exemplo de Empresa que já aderiu a programas de inclusão Digital, é o São Paulo Alpargatas S/A, que está oferecendo o curso básico de informática a 100 de seus funcionários. Em uma empresa, há vários perfis de usuários digitais, existem aqueles que dominam a área, utilizam de forma objetiva, e que já se adequaram ao novo modelo do mundo digital. Há também aqueles que sua capacidade se limita ao uso da internet, que geralmente aprenderam em ―Lan Houses‖, e que seu conhecimento não vai além de acessar sites de relacionamentos como Orkut, Facebook, etc., mensageiros Instantâneos como MSN, Skype, Google Talk , entre outros. Existem ainda outros que são ignorantes no assunto, pois nem sequer sabem ligar um computador, As empresas devem estar preparadas para lidar com essa situação, pois muitas vezes, isso é encarado pelos próprios funcionários como algo de inovação sem necessidade. A seguir uma entrevista com o Sr José (nome fictício), funcionário no setor de serviços gerais de uma empresa do ramo de beneficiamento de couros bovinos em Mato Grosso: Giovan - Qual sua opinião, no que diz respeito à empresa fornecer um curso de informática básica, após o expediente de trabalho? Sr. José – ―Acho que isso é perda de tempo, pois já saio do trabalho cansado (Por Ser um trabalho braçal, e que exige esforço físico) e preciso descansar, e também já estou velho (O mesmo só tem 41 anos) para aprender essas coisas‖. Giovan – O ‗Senhor‘ é ciente dos benefícios e facilidades no dia-a-dia, que o uso de um computador pode lhe trazer? Sr. José – Não, na verdade, até onde eu sei, o computador é usado pela rapaziada para jogar e ver besteiras. Giovan – Digamos que o ‗Senhor‘ precise ver se a empresa depositou o seu salário do mês na conta, o que o Senhor faz? Sr. José – Preciso ir ao banco e consultar o saldo. Giovan – E se o Banco estiver cheio de pessoas, e uma fila enorme? Sr. José – Tenho que esperar na fila, para que ao chegar a minha vez, eu consulte meu saldo. Giovan – Agora o ‗Senhor‘ imagine ver o seu saldo sem sair de casa, não seria melhor? Sr. José – Sim, com certeza. Giovan – Pois bem, isso é possível, e é um exemplo muito prático dos benefícios que podemos ter com o uso da tecnologia em nosso dia-a-dia. Sr. José – (Ficou Surpreso). Existem várias pessoas como o Senhor José, que não estão incluídos no mundo digital, e que impõe certos empecilhos para que isso aconteça, muitas vezes, isso se deve ao fato da falta de informação, e por conta disso, acham que não tem capacidade para acompanhar essas mudanças que parecem tenebrosas. Essas pessoas devem ser informadas dos benefícios que a tecnologia lhes proporciona, e é claro, devem ser preparadas para a utilização das ferramentas, mas estarem aptos também para proteger seus dados. Conclusão Conclui-se, que as empresas devem se preocupar com a inclusão digital de seus funcionários, instruindo-os, conscientizando, etc., isso por que faz parte do novo contexto mundial que está sendo modelado, em contrapartida, deve haver empenho dos funcionários, pois, por mais que as empresas sem empenhem à levar a inclusão para dentro do seu legado, nada será feito se as pessoas que dela necessitam não se empenharem para abraçar essa causa, que sem dúvida é um grande avanço para a igualdade social. Bibligrafia http://caminhoinclusaodigital.wikidot.com/o-que-e-inclusao-digital, acesso em 20 de maio de 2011, às 2:45 Hs. http://www.fiepb.com.br/noticias/2008/11/19/inclusao_digital_na_empresa, Acesso em 24 de maio de 2011, às 12:45 Hs. INSTITUTO CUIABANO DE EDUCAÇÃO – ICE CURSO DE GRADUAÇÃO EM CIÊNCIA DACOMPUTAÇÃO INOVAÇÃO E TECNOLOGIA ISABELLA MARIANO DOS SANTOS [email protected] JOSÉ RUBENS DA SILVA [email protected] CUIABÁ-MT/ 2011 ISABELLA MARIANO DOS SANTOS JOSÉ RUBENS DA SILVA INOVAÇÃO E TECNOLOGIA Trabalho apresentado ao Curso de Ciência da Computação, do Instituto Cuiabano de Educação, como um dos requisitos para obtenção de notas na disciplina de Noções de Economia e Finanças. Orientador (a): Débora Simony Leventi. CUIABÁ-MT/ 2011 Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação INTRODUÇÃO Muitos leitores quando ouvem dizer de invenção e inovação, vem em mente conclusões de que se trata da mesma coisa, que apenas a forma de dizer é que muda. Porém na verdade se trata de palavras e conceitos totalmente distinto um do outro. Mas então do que se trata invenção e inovação? É com objetivo claro e lógico que falaremos no decorrer deste artigo os conceitos detalhados do que se trata cada uma dessas palavras tão confundida pelos leitores. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O que é Inovação? A Inovação é uma forma de se criar novas ideias, em alguns casos, baseado em algo já existente. É uma renovação, novidades, invenção de algo para o mercado de consumo. Existem vários conceitos sobre inovação e vai depender muito de como se aplica. Ela pode se classificar em muitas formas, mas as duas mais focadas são: o Foco da inovação e o impacto que ela gera. O foco é a quem ela atingirá e de que forma isso será recebido pelas pessoas, alguns de seus benefícios, as mudanças, a forma como algo é oferecido para o mercado. Isso tudo em foco com relação à Inovação de produtos, processos e modelos de negócios. O impacto incremental é visto como pequenas melhorias, avanços em alguns produtos que de alguma forma haja um beneficio percebido pelo consumidor, porém, não modifica a forma de como ele é consumido. Já o impacto radical traz a mudança na estrutura do mercado, modificando o modelo de negócios vigentes, um exemplo disso é a evolução do CDmultimídiapara os arquivos digitais em MP3. Mas, qual o motivo que leva a inovação? O site da Inventta cita que “as inovações são capazes de gerar vantagens competitivas a médio e longo prazo, inovar torna-se essencial para a sustentabilidade das empresas e dos países no futuro”. Basicamente inovar significa crescimento para uma empresa, aumento de seu capital e ajuda a enfrentar a concorrência na busca por espaço no mercado, pois a competição entre as empresas estão cada vez maiores. Qual a diferença entre Inovação e Invenção? Michael Porter (1990, p. 780) também havia deduzido à necessidade de se distinguir a invenção da inovação. Ele escreveu que a inovação se define como: „uma nova maneira de fazer as coisas (chamada de invenção por alguns autores) que seja comercializada‟. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Muitas pessoas confundem inovação com invenção, embora as duas caminhem juntas. A invenção é a criação de algo novo, ou seja, cria algo que não existe. Já a inovação envolve algo que possa fazer com que o que foi criado (uma invenção) seja comercializado e utilizado. O que é tecnologia? “A economia mundial cresce segundo Duas grandes forças: globalização e “Mudança tecnológica” (Doyle, 1998). A tecnologia é o encontro entre a ciência e a engenharia onde a junção das duas gera instrumentos para que se crie algo que tecnologicamente possa auxiliar pessoas e empresas na construção de algo. Geralmente tem como objetivo facilitar a vida, economizar tempo e custo - beneficio. É claro que quase sempre vai existir seu lado ruim que no caso é o desemprego, a poluição e algumas outras questões ecológicas, filosóficas e sociológicas. O que é transferência de tecnologia? Segundo o Enterprise Europe Network, a transferência de tecnologia pode ser entendida como o processo de transferência de propriedade intelectual (patentes, copyrights, know-how, etc.) desde o laboratório até ao mercado. Este é um processo que abrange todo o ciclo de vida de um produto, desde a ideia inicial até ao marketing e venda do produto. Podemos entender que a transferência de tecnologia tem o intuito de facilitar para as pessoas, empresas e etc. a forma de acesso a conteúdos, conhecimentos e tecnologia. Ela faz com que o desenvolvimento cientifico seja acessível para que algumas pessoas possam explorar, desenvolver, utilizar a tecnologia a seu favor. A transferência de tecnologia pode ser classificada como vertical ou horizontal. A transferência de tecnologia vertical pode ser definida como o processo de transferir atividades de I&D (Investigação e Desenvolvimento) para um Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação ambiente comercial.A transferência de tecnologia horizontal é o processo de obter uma dada tecnologia que existe num dado mercado e transferi-la para outro mercado, normalmente menos desenvolvido. O curso de CCO integra a inovação e a tecnologia? Os cursos de tecnologia em si, sempre se espera ter inovação, e é claro que a tecnologia não fica fora disso, trazendo consigo varias descobertas, a fim de melhorar o desempenho de uma corporação, assim fazendo com que as pessoas que a compõe, desempenham suas funções de maneira mais efetiva e com muito mais entretenimento. Foi por esses e outros motivos que o curso de Ciência da Computação surgiu, a fim de poder ajudar as inúmeras corporações a resolverem seus determinados tipos de problemas, assim sendo aplicando a inovação juntamente com a tecnologia, para a qualificação dos profissionais que atuam na área, para desempenhar suas funções de maneira eficiente e eficaz. O Manual de Oslo O Manual de Oslo tem o objetivo de orientar e padronizar conceitos, Metodologias e construção de estatísticas e indicadores de pesquisa DeP&D (Pesquisa e Desenvolvimento) de países industrializados. (DO CANTO, Odilon Marcuzzo, publicações).Dainstituição parte de intergovernamental uma série Organização de para CooperaçãoEconômica e Desenvolvimento – (OCDE). A primeira edição do Manual de Osloédatada de 1990 e sua primeira tradução para o português foi produzida e divulgada pela FINEP (Financiadora de Estudos e Projetos) em meio eletrônico, em 2004. Em que pese o fato de se ter como fonte padrões de países desenvolvidos, oManual de Oslo é bastante abrangente e flexível quanto a suas definições emetodologias de inovação tecnológica e, por isso mesmo, tem sido uma dasprincipais referências para as atividades de inovação na indústria brasileiraque se quer cada vez mais competitiva. Enfim, o Manual de Oslo, tem como objetivo no auxilio das variadas pesquisas de inovação tecnológicas das corporações, assim traçando um método rígido Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação em questão de inovação e facilidade na hora das variáveis dúvidas existentes em uma pesquisa e, também servindo como auxilio para diversos segmentos acadêmicos. CONCLUSÃO Inovação vem de criação de novas ideias baseado em algo já existente. É uma renovação, uma novidade principalmente para o mercado consumista. O meio como ela gera impacto, quem ela atinge, os seus benefícios, tudo é levado em conta na hora se inovar algo. Inovar não quer dizer necessariamente inventar, apesar de algumas pessoas confundirem e acharem que as palavras por serem parecidas, tenham o mesmo enfoque. A invenção é a criação de algo novo a partir do nada, já a inovação você recria algo para que ele ganhe uma nova visão e uma comercialização melhor dentro do comercio em questão. A tecnologia é a junção, o encontro entre a ciência e a engenharia. Juntas elas formam instrumentos, meios para que se crie algo tecnologicamente utilizável para que facilite o dia-dia nas empresas, economizar tempo e custo-benefício. Já a transferência de tecnologia tem o intuito de facilitar para as pessoas, empresas e etc. a forma de acesso a conteúdos, conhecimentos e tecnologia. O manual de Oslo tem como objetivo auxiliar as pessoas sobre inovação e tecnologia de corporações para que eles tenham facilidade na hora das duvidas com relação à pesquisa. Ele foi escrito para especialistas com 30 países que coletam e analisam todos os dados sobre inovação. Na maioria das vezes, a inovação no setor tecnológico é maior destaque, pois a tecnologia envolve muito a questão de buscar sempre facilitar o modo de vida das pessoas. As mudanças tecnológicas, as mudanças de conceitos, de opções de mercadorias, inovar meio que se tornou quase uma obrigação para as empresas que buscam crescimento no mercado. Uma empresa que busca crescimentoaumento de capital, reconhecimento e ser forte no setor que atua, precisa sempre se reinventar, inovar. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Bibliografia 6.2 NETWORK, Enterprise Europe - Transferência de Tecnologia.http://www.enterpriseeuropenetwork.pt/info/investigacao/Pagin as/transftec.aspx 6.3 Acesso em: 4 / 05 / 2011 6.4 6.5 INOVAÇÃO, InventtaInteligência - Radar Inovação. http://inventta.net/radar-inovacao/a-inovacao/Acesso em: 5 / 05 / 2011 6.6 LEARN,Open - 1 Invenção e inovação. 6.7 http://labspace.open.ac.uk/mod/resource/view.php?id=374454 6.8 Acesso em: 5 / 05 / 2011 6.9 6.10 INOVADO, Brasil – Manual de Oslo. 6.11 http://www.finep.gov.br/dcom/brasil_inovador/arquivos/manualdeoslo/pref acio.html Acesso em: 31 / 05 / 2011 6.12 Inovação e Tecnologia Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Isabella Mariano dos Santos7 José Rubens da Silva8 Profª Orientadora: Débora Simony Leventi Aleixes Gonçalves 7 Estudante de Ciência da Computação ICE – Instituto Cuiabano de Educação E-mail: [email protected] 8 Estudante de Ciência da Computação ICE – Instituto Cuiabano de Educação E-mail: [email protected] Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Resumo É com objetivo claro e lógico que falaremos no decorrer deste artigo os conceitos detalhados do que se trata a inovação e a tecnologia. Abordaremos também as diferenças existentes entre Inovação e Invenção. Falaremos o que é a tecnologia, transferência tecnológica e se o Curso de Ciência da Computação se integra a inovação e a tecnologia. Palavras Chave: Inovação, Invenção, Tecnologia. INTRODUÇÃO Muitos leitores quando ouvem dizer de invenção e inovação, vem em mente conclusões de que se trata da mesma coisa, que apenas a forma de dizer é que muda. Porém na verdade se trata de palavras e conceitos totalmente distinto um do outro. O que é Inovação? A Inovação é uma forma de se criar novas ideias, em alguns casos, baseado em algo já existente. É uma renovação, novidades, invenção de algo para o mercado de consumo. Existem vários conceitos sobre inovação e vai depender Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação muito de como se aplica. Ela pode se classificar em muitas formas, mas as duas mais focadas são: o Foco da inovação e o impacto que ela gera. O foco é a quem ela atingirá e de que forma isso será recebido pelas pessoas, alguns de seus benefícios, as mudanças, a forma como algo é oferecido para o mercado. Isso tudo em foco com relação à Inovação de produtos, processos e modelos de negócios. O impacto incremental é visto como pequenas melhorias, avanços em alguns produtos que de alguma forma haja um beneficio percebido pelo consumidor, porém, não modifica a forma de como ele é consumido. Já o impacto radical traz a mudança na estrutura do mercado, modificando o modelo de negócios vigentes, um exemplo disso é a evolução do CDmultimídiapara os arquivos digitais em MP3. Mas, qual o motivo que leva a inovação? O site da Inventta cita que “as inovações são capazes de gerar vantagens competitivas a médio e longo prazo, inovar torna-se essencial para a sustentabilidade das empresas e dos países no futuro”. Basicamente inovar significa crescimento para uma empresa, aumento de seu capital e ajuda a enfrentar a concorrência na busca por espaço no mercado, pois a competição entre as empresas estão cada vez maiores. Qual a diferença entre Inovação e Invenção? Michael Porter (1990, p. 780) também havia deduzido à necessidade de se distinguir a invenção da inovação. Ele escreveu que a inovação se define como: „uma nova maneira de fazer as coisas (chamada de invenção por alguns autores) que seja comercializada‟. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Muitas pessoas confundem inovação com invenção, embora as duas caminhem juntas. A invenção é a criação de algo novo, ou seja, cria algo que não existe. Já a inovação envolve algo que possa fazer com que o que foi criado (uma invenção) seja comercializado e utilizado. O que é tecnologia? “A economia mundial cresce segundo duas grandes forças: globalização e “Mudança tecnológica” (Doyle, 1998). A tecnologia é o encontro entre a ciência e a engenharia onde a junção das duas gera instrumentos para que se crie algo que tecnologicamente possa auxiliar pessoas e empresas na construção de algo. Geralmente tem como objetivo facilitar a vida, economizar tempo e custo-benefício.É claro que quase sempre vai existir seu lado ruim que no caso é o desemprego, a poluição e algumas outras questões ecológicas, filosóficas e sociológicas. O que é transferência de tecnologia? Segundo o Enterprise Europe Network, a transferência de tecnologia pode ser entendida como o processo de transferência de propriedade intelectual (patentes, copyrights, know-how, etc.) desde o laboratório até ao mercado. Este é um processo que abrange todo o ciclo de vida de um produto, desde a ideia inicial até ao marketing e venda do produto. Podemos entender que a transferência de tecnologia tem o intuito de facilitar para as pessoas, empresas e etc. a forma de acesso a conteúdos, conhecimentos e tecnologia. Ela faz com que o desenvolvimento cientifico seja acessível para que algumas pessoas possam explorar, desenvolver, utilizar a tecnologia a seu favor. A transferência de tecnologia pode ser classificada como vertical ou horizontal. A transferência de tecnologia vertical pode ser definida como o processo de transferir atividades de I&D (Investigação e Desenvolvimento) para um Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação ambiente comercial.A transferência de tecnologia horizontal é o processo de obter uma dada tecnologia que existe num dado mercado e transferi-la para outro mercado, normalmente menos desenvolvido. O curso de CCO integra a inovação e a tecnologia? Os cursos de tecnologia em si, sempre se espera ter inovação, e é claro que a tecnologia não fica fora disso, trazendo consigo varias descobertas, a fim de melhorar o desempenho de uma corporação, assim fazendo com que as pessoas que a compõe, desempenham suas funções de maneira mais efetiva e com muito mais entretenimento. Foi por esses e outros motivos que o curso de Ciência da Computação surgiu, a fim de poder ajudar as inúmeras corporações a resolverem seus determinados tipos de problemas, assim sendo aplicando a inovação juntamente com a tecnologia, para a qualificação dos profissionais que atuam na área, para desempenhar suas funções de maneira eficiente e eficaz. O Manual de Oslo O Manual de Oslo tem o objetivo de orientar e padronizar conceitos, Metodologias e construção de estatísticas e indicadores de pesquisade P&D (Pesquisa e Desenvolvimento) de países industrializados. (DO CANTO, Odilon Marcuzzo, parte de uma série de publicaçõesdainstituição intergovernamental Organização para CooperaçãoEconômica e Desenvolvimento – OCDE). A primeira edição do Manual de Osloédatada de 1990 e sua primeira tradução para o português foi produzida e divulgada pela FINEP (Financiadora de Estudos e Projetos) em meio eletrônico, em 2004. Em que pese o fato de se ter como fonte padrões de países desenvolvidos, oManual de Oslo é bastante abrangente e flexível quanto a suas definições emetodologias de inovação tecnológica e, por isso mesmo, tem sido uma dasprincipais referências para as atividades de inovação na indústria brasileiraque se quer cada vez mais competitiva. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Enfim, o Manual de Oslo, tem como objetivo no auxilio das variadas pesquisas de inovação tecnológicas das corporações, assim traçando um método rígido em questão de inovação e facilidade na hora das variáveis dúvidas existentes em uma pesquisa e,também servindo como auxilio para diversos segmentos acadêmicos. CONCLUSÃO Inovação vem de criação de novas ideias baseado em algo já existente. É uma renovação, uma novidade principalmente para o mercado consumista. O meio como ela gera impacto, quem ela atinge, os seus benefícios, tudo é levado em conta na hora se inovar algo. Inovar não quer dizer necessariamente inventar, apesar de algumas pessoas confundirem e acharem que as palavras por serem parecidas, tenham o mesmo enfoque. A invenção é a criação de algo novo a partir do nada, já a inovação você recria algo para que ele ganhe uma nova visão e uma comercialização melhor dentro do comercio em questão. A tecnologia é a junção, o encontro entre a ciência e a engenharia. Juntas elas formam instrumentos, meios para que se crie algo tecnologicamente utilizável para que facilite o dia-dia nas empresas, economizar tempo e custo-benefício. Já a transferência de tecnologia tem o intuito de facilitar para as pessoas, empresas e etc. a forma de acesso a conteúdos, conhecimentos e tecnologia. O manual de Oslo tem como objetivo auxiliar as pessoas sobre inovação e tecnologia de corporações para que eles tenham facilidade na hora das duvidas com relação à pesquisa. Ele foi escrito para especialistas com 30 países que coletam e analisam todos os dados sobre inovação. Na maioria das vezes, a inovação no setor tecnológico é maior destaque, pois a tecnologia envolve muito a questão de buscar sempre facilitar o modo de vida das pessoas. As mudanças tecnológicas, as mudanças de conceitos, de opções de mercadorias, inovar meio que se tornou quase uma obrigação para as empresas que buscam crescimento no mercado. Uma Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação empresa que busca crescimento aumento de capital, reconhecimento e ser forte no setor que atua, precisa sempre se reinventar, inovar. Bibliografia 6.13 NETWORK, Enterprise Europe - Transferência de Tecnologia.http://www.enterpriseeuropenetwork.pt/info/investigacao/Pagin as/transftec.aspx 6.14 Acesso em: 4 / 05 / 2011 6.15 6.16 INOVAÇÃO, InventtaInteligência - Radar Inovação.http://inventta.net/radar-inovacao/a-inovacao/Acesso em: 5 / 05 / 2011 6.17 LEARN,Open - 1 Invenção e inovação. 6.18 http://labspace.open.ac.uk/mod/resource/view.php?id=374454 6.19 Acesso em: 5 / 05 / 2011 6.20 6.21 INOVADO, Brasil – Manual de Oslo.http://www.finep.gov.br/dcom/brasil_inovador/arquivos/manualdeoslo /prefacio.html Acesso em: 31 / 05 / 2011 REALIDADE VIRTUAL E AUMENTADA – CONCEITOS, TECNOLOGIAS E APLICAÇÕES. Itamar Albertino de Campos Ciência da Computação – 3º Semestre Instituto Cuiabano de Educação Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Faculdades Integradas Matogrossenses de Ciências Sociais e Humanas Email: [email protected] ABSTRACT This article concerns the study of a new computer technology: Virtual and Augmented Reality, which covers the fundamentals and concepts which are the areas that currently are being applied. Through the evolution of generations of interfaces between humans and computer systems, we conclude that on account of these developments, Augmented Reality has been able to more acceptance and occupying a larger space, because, Augmented Reality has evolved from the Virtual Reality, however, still today both are seen as a single technology. Keywords: Virtual Reality, Augmented Reality. RESUMO O presente artigo é relativo ao estudo de uma nova tecnologia da informática: Realidade Virtual e Aumentada, no qual aborda os fundamentos e conceitos e quais são as áreas que atualmente vem sendo aplicadas. Através da evolução das gerações das interfaces entre o homem e os sistemas computacionais, concluiremos que por conta dessa evolução, a Realidade Aumentada vem conseguindo maior aceitação e ocupando um maior espaço, até porque, Realidade Aumentada evoluiu a partir da Realidade Virtual, porém, ainda hoje ambas são vistas como uma única tecnologia. Palavras-chave: Realidade Virtual; Realidade Aumentada. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 1. INTRODUÇÃO. A Realidade Virtual e Aumentada é um campo da computação que estuda a percepção do mundo real com informações e dados gerados eletronicamente por meio de um computador. Essa nova tecnologia vem ganhando campo seguindo a evolução da informática. Dessa forma, vamos desvendar de forma sucinta o que é essa tecnologia, quais são as ferramentas que atualmente são usadas para a implementação tanto da realidade virtual quanto da realidade aumentada, as tecnologias dos equipamentos usados e de que forma ela está sendo empregada nos diversos setores que necessitam dela para dar mais agilidade ou conforto às pessoas ou resolver certos problemas. Com isso, pretendemos buscar o possível de informações relativas ao novo campo da computação que vem sendo falado tanto no meio acadêmico quanto para o público em geral. 2. CONCEITOS E DEFINIÇÕES. Analisando a evolução das diversas interfaces ao longo das décadas, percebemos que antes as pessoas tinham que adaptar-se às máquinas, porém, felizmente com os vários esforços dos pesquisadores, professores, estudantes, empresas, etc, aliados à grande corrida evolutiva dos softwares, hardwares e meios de telecomunicações, esse processo se inverteu, hoje as tecnologias da informática tornaram-se uma ferramenta indispensável e até mesmo invisível aos diversos tipos de usuários. ”Realidade Virtual e Aumentada são duas áreas relacionadas com gerações de interfaces com o usuário, facilitando e potencializando as interações do usuário com as aplicações computacionais” (KIRNER e SISCOUTTO,2007, p.02). Ao longo dos anos, as interfaces entre homem e máquina foram melhorando consideravelmente, isso teve início nas décadas de 40 e 50 com as linguagens de máquina, através de chaves e lâmpadas, na década de 60 surgiram as primeiras interfaces gráficas ainda rudimentares, através dos consoles de vídeo, na Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação década de 70 e 80 com o advento dos microcomputadores e por meio dos comandos, surgiu o DOS evoluindo para o Windows, que perdura até hoje, porém, há aqueles que entendem que há limitações, tanto nas telas de vídeo quanto nas representações como os menus, janelas e ícones que o Windows proporciona. Diante desse contexto, surgiu a Realidade Virtual e Aumentada, como uma nova interface, usando representações tridimensionais rompendo com as limitações das interfaces existentes, possibilitando interações mais naturais. Porém, na Realidade Virtual há limitações, principalmente se levarmos em conta o custobenefício dos equipamentos usados tais como luvas, óculos estereoscópicos, e mouses 3D, etc, além do transporte do usuário para o ambiente virtual o qual causava a princípio um certo desconforto e também dificuldades de interações e até mesmo treinamento, salientando também que na maioria das vezes o ambiente virtual é projetado em locais fechados. Por conta disso, a tecnologia ainda não se popularizou. Para suprir essa deficiência e na tentativa de popularizar a nova tecnologia, criou-se uma nova concepção com intuito de priorizar aquilo que já existia de melhor e criando mecanismo que pudessem ser mais simplificado e de fácil acesso por conta do usuário, denominou-se então de Realidade Aumentada. Uma vez que esta projeta objetos virtuais no meio físico, por exemplo: pode-se projetar um vaso com flores em uma mesa real, em um ambiente físico, esse processo é conhecido como sobreposição (KIRNER e SISCOUTTO,2007), isso vem tornando possível graças às melhorias dos sistemas computacionais que permitem a execução de objetos mais tangíveis e naturais e desprezando o uso de equipamentos mais caros e priorizando mais os equipamentos com um custo-benefício mais acessível. Lembrando que para executar o exemplo dado acima, é imprescindível que haja uma webcam que captura a imagem de um figura contendo a codificação encapsulada da linguagem que implementa a realidade aumentada e as imagens que serão vistas no monitor são a junção do mundo real com um objeto virtual. Tanto a Realidade Virtual quanto a Realidade Aumentada podem ser usadas para fins individuais e coletivos, locais ou remotos, porém a Realidade Aumentada tem uma certa vantagem tendo em vista que pode ser usada tanto em ambientes fechados quanto em abertos, não depende de equipamentos caros e não depende de treinamentos por parte dos usuários, por isso está sendo mais aceito. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Assim, a tendência aponta para uma nova interface que seria a realidade aumentada o qual poderia ser implementada nas mais diversas áreas desde entretenimento até experimentos científicos e isso é um dos objetivos deste estudo, ou seja, entender como essa nova tecnologia vem contribuindo no melhoramento da execução dos trabalhos nas áreas afins. A Realidade Virtual e Aumentada engloba outras disciplinas como multimídia, hiper-realidade, rastreamento e interação. Multimídia seria de maneira resumida uma técnica para apresentar informações que mesclam texto, som, imagens fixas e animadas. Já a Hiper-realidade seria uma interface ainda mais avançada, segundo (Tiffim,2001 Apud Kirner E Siscoutto,2007,p.12): “Hiper-realidade é a capacidade tecnológica de combinar realidade virtual, realidade física, inteligência artificial e inteligência humana, integrando-as de forma natural para acesso do usuário “. O Rastreamento dá ao usuário a sensação do controle em ambientes virtuais ou aumentados, podendo agarrar, mover e soltar objetos, há também os equipamentos para desenvolvidos para uso em realidade virtual, são equipamentos mecânicos, magnéticos, de ultra-som, etc. Por fim, a Interação é a capacidade de o usuário atuar em ambientes virtuais e aumentados e para que isso ocorra de maneira eficaz, faz-se necessário um controle do posicionamento do usuário, aqui entra o rastreamento. A interação pode ser observada com freqüência nos jogos de computador. Assim, como se pôde observar, a realidade virtual e aumentada é uma tecnologia multidisciplinar que engloba outros conceitos importantes e que merecem seus respectivos conhecimentos. 5. FERRAMENTAS PARA O DESENVOLVIMENTO. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação A Realidade Virtual e Aumentada, assim como outras áreas, desenvolveram-se através da evolução das tecnologias e a convergência de diversos fatores, incluindo pesquisas, a disponibilidade de produtos acessíveis entre outros. Os pesquisadores tiveram papel importante, pois disseminaram de maneira gratuita à sociedade esses recursos que são usados para o desenvolvimento da realidade virtual. A linguagem VRML – Virtual Reality Modeling Languagem ou Linguagem para Modelagem em Realidade Virtual, (Site dc-ufscar, 2010),“É uma linguagem independente de plataforma que permite a criação de cenários 3D, por onde se pode passear, visualizar objetos por ângulos diferentes e interagir com eles”. Já para o desenvolvimento da realidade aumentada é usada uma biblioteca chamada Artoolkit. Ambas linguagens são gratuitas, além disso há outras disponibilizadas por pesquisadores e até empresas. O desenvolvimento das ferramentas de RV e RA tem sido contínuo e tendem a se tornar cada vez mais sofisticadas e graças ao melhoramento de hardwares gráficos. As ferramentas de RV e RA vem apresentando melhoramentos importantes, no entanto, ainda há problemas, mas esses problemas estão sendo pesquisados e aprimorados para o bom desenvolvimento dos projetos. Podemos citar algumas ferramentas disponíveis atualmente para o desenvolvimento da RV e RA, essas ferramentas ou são engine (KIRNER e SISCOUTTO,2007,p.115)”...engine é uma coleção de módulos de simulação que não especifica diretamente o comportamento ou o ambiente do jogo” ou um framework (KIRNER e SISCOUTTO,2007,p.243),”...framework é um conjunto de classes abstratas e concretas usadas para o desenvolvimento de uma aplicação para o desenvolvimento de uma aplicação com domínio específico” ou ainda um editor gráfico e conforme (KIRNER e SISCOUTTO, 2007, p.115 a 125), a começar pela RV temos: Ferramenta Editor Biblioteca Engine Gráfico Panda 3D SIM OGRE SIM Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Framework OpenSceneGraph SIM OpenSG SIM Crystal Space SIM IrrLicht SIM SIM VRJuggler Blender SIM FluxStudio SIM Para a Realidade Aumentada temos as seguintes ferramentas: Ferramenta Editor Gráfico ARToolKit SIM ARToolKit Plus SIM ARTag SIM DART SIM ARSTudio SIM JARToolkit SIM Essas são as ferramentas usadas atualmente para a implantação da Realidade Virtual e Aumenta e elas vêm sofrendo constantes atualizações no intuito de melhorar cada vez mais os trabalhos que venham ser implementados. Tais ferramentas estão disponibilizadas para o público que tenha interesse no aprofundamento da tecnologia, seja através da internet ou através de livros. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 4. TECNOLOGIAS. Atualmente o que ainda mais limita a popularização da Realidade Virtual e Aumentada tem sido ainda o custo da tecnologia, porém, as tendências apontam que num futuro próximo a tecnologia se popularize, no entanto, já há setores que já vem usufruindo desta nova tecnologia. Para entender como a tecnologia é aplicada, primeiramente se faz necessário o entendimento do conceito do sistema hepático. Hepático deriva da palavra grega hapthai que quer dizer toque e esta relacionada ao contato físico.”Em mundos virtuais esta situação pode ocorrer. Neste caso, é necessário o uso de sistemas hepáticos acoplados aos sistemas de RV e RA para que a identificação dos objetos seja possível” (KIRNER e SISCOUTTO, 2007, p.153). Assim, o sistema hepático são os dispositivos usados pelo usuário para a percepção do mundo virtual com o real, através do tato, toque, etc. Esses dispositivos são divididos conforme a parte do corpo e o seu uso, há dispositivos para as mãos, braços e pernas e para o corpo inteiro. Podemos citar exemplos de alguns dispositivos: 1. Para as mãos: 1.1 Atuador pneumático – embutido em uma luva oferece sensação tátil. 1.2 Atuadores vibratórios – emitem vibrações durante o contato com algum objeto, encontrados em luvas e dispositivos 2D como mouses. 1.3 Luvas com sistema de captura de movimento e emissão de força. 1.4 Prancha de pinos para reconhecimento de texturas de objetos. 2. Para as pernas: 2.1 Joysticks. 2.2 Braços mecânicos. 3. Para o corpo: 3.1 Plataformas móveis para jogos. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 3.2 Simuladores – para jogos. Sabe-se que há vários outros dispositivos no mercado como o popular “vídeo capacete” ou head-mounted display(HMD) que é um dos dispositivos que mais isola o usuário do mundo, muito usado pela NASA e também vários outros projetos em desenvolvimento. 5. APLICAÇÕES. Atualmente várias áreas já usam os benéficos da RV e RA, tendo em vista que a demanda da necessidade de oferecer sistemas mais realistas, fez com que setores como a medicina, a engenharia a aviação entre outros buscassem formas de auxílio e resolução de alguns problemas. A medicina é uma das áreas que mais vêm se beneficiando com os avanços tecnológicos nos últimos anos apresentados pela RV e RA. Segundo (Costa e Ribeiro,2009.p.55): “Especialmente, em cirurgias minimamente invasivas, que envolve uma pequena câmera de vídeo e instrumentos específicos para conduzir a cirurgia. Acredita-se que neste cenário as técnicas de Realidade Virtual e Aumentada podem ter uma significativa parcela de contribuição ” Dessa forma, projetos estão sendo desenvolvidos com o auxílio da realidade virtual para realização de cirurgias à distancia. Por exemplo, num possível campo de batalha um médico poderia realizar uma cirurgia em um soldado usando técnicas de realidade virtual, como controlando os braços de um robô. A realidade virtual tem sido utilizada para treinar e realizar vários tipos de cirurgias como da medula, artroscopias e endoscopias, isso reduz o custo do treinamento e da própria cirurgia além dos riscos cirúrgicos dos próprios pacientes. Assim, a RV e RA tem atraído cada vez mais pesquisadores e profissionais da área de saúde devido as técnicas que a tecnologia possui de objetos reais. “Recentemente, um sistema de Realidade Aumentada foi apresentado para apoiar casos de traumatologia e cirurgia ortopédica, o sistema EVI (Easy Visualization Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação In-Situ)”. (COSTA e RIBEIRO,2009.p.55), este sistema serviu para para fortalecer ainda mais a aliança entre a classe médica e a Realidade Virtual e Aumentada. A indústria do petróleo e gás também vem sendo beneficiada com o auxílio da RV e RA, uma vez que, nesses setores há diversos profissionais como geólogos, engenheiros, físicos, profissionais da computação entre outros que necessitam de algum tipo de simulação e RV e RA se encaixou perfeitamente para resolução de algum tipo de problema relacionado, como comunicação, redução de erros e tomada de decisões, aumentando a eficiência. Conforme (Costa E Ribeiro,2009.p.59): “É na sede da Petrobrás, empresa brasileira que possui 13 centros de Realidade Virtual espalhados por suas unidades, que está o mais moderno na área de exploração e produção de petróleo. É por meio dessa tecnologia que os geólogos e geofísicos analisam as propriedades do fundo do oceano, reconhecendo com precisão os pontos onde se deverá perfurar para chegar ao petróleo. Identificados os reservatórios, a Realidade Virtual também ajuda a aproveitar ao máximo a extração de cada um deles, o que ajuda a economizar tempo e dinheiro.” A Petrobrás é uma das empresas que mais investe na tecnologia, tendo em vista que a maior beneficiária, pois é através da RV que são feitos os treinamentos e simulações para se chegar aos poços de petróleo. A aviação também tem um forte vinculo com a RV e RA, pois é por dessa tecnologia que são realizados as simulações dos vôos, treinamento de pilotos e desenvolvimento de aviões. Na indústria automobilística a realidade aumentada vem sendo implantada de forma iminente principalmente na simulação dos motores dos automóveis, como é o caso da empresa BMW, na qual existe um projeto de realidade aumentada que projeta o que está no painel no vidro do veículo. No ensino, a Realidade Virtual e Realidade Aumentada vêm contribuindo de forma surpreendente uma vez que nos últimos anos foram desenvolvidos diversos sistemas de Realidade Virtual e Realidade Aumentada específicos para as áreas científicas como matemática, química e física. Há projetos como o ScienceSpace para aqueles interessados nas disciplinas de física e química, o Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Construct3D é voltado para os seguidores da geometria além de outros projetos voltados para o desenvolvimento matemático para crianças. Por fim, vale ressaltar que existe também a Tele presença, um tipo de realidade virtual que está sendo muito falado atualmente no qual uma pessoa pode manipular um robô à distância para que realize alguma tarefa. Através da tele presença forças policiais podem efetuar o desarmamento de minas ou bombas preservando a integridade da pessoa responsável por aquela operação. Assim, a Realidade Virtual e Aumentada vem despertando interesse nas mais diversas áreas na proporção que a tecnologia vem sendo aperfeiçoada. 6. CONCLUSÃO. A Realidade Virtual e a Realidade Aumentada são tecnologias que vem sendo aprimoradas com o avanço da tecnologia da informática. Num primeiro momento pressupõe-se que é uma única tecnologia, no entanto, conforme vai se aprofundando nos conceitos e na forma que elas são aplicadas percebe-se nitidamente que são tecnologias análogas. A tendência é que ambas as tecnologias venham a se popularizar, pelo menos é isso que os especialistas no assunto acreditam, todavia, podemos perceber que o assunto está sendo divulgado na mídia e já foi tema de reportagem nos maiores veículos de comunicação. Assim, a finalidade foi conhecer os conceitos, as ferramentas, as tecnologias e onde essa tecnologia vem sendo aplicada para subsidiar de alguma forma na resolução de algum problema ou tornar-se mais simples uma solução. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação RFERÊNCIAS: http://www2.dc.ufscar.br/~grv/tutrv/tutrv.htm, Acessado em 15/05/2010. http://www.google.com.br/imgres?imgurl=http://g1.globo.com/Noticias/Tecnologia/foto/0,,1 9806160-EX,00.jpg&imgrefurl=http://g1.globo.com/Noticias/Tecnologia/0,,MUL10603926174,00TECNOLOGIA%2BJA%2BESTA%2BPRONTA%2BPARA%2BAUMENTAR%2BO%2BMUNDO%2BCO M%2BREALIDADE%2BVIRTUAL.html&usg=__tjfL2GS-ARMFruoYVsm3Wv9TBU=&h=335&w=535&sz=31&hl=ptBR&start=11&itbs=1&tbnid=yl5r_nUYaUq88M:&tbnh=83&tbnw=132&prev=/images%3Fq%3D realidade%2Bvirtual%2Baumentada%26hl%3Dpt-BR%26sa%3DG%26rlz%3D1I7RNWZ_ptBR%26prmdo%3D1%26tbs%3Disch:1, Acessado em 20/05/2010. KIRNER, Cláudio e SISCOUTTO, Robson. Realidade Virtual e Aumenta. Conceitos Projetos e Aplicações.IX Simpósio de RV e RA .Petrópolis-RJ:SBC,2007. COSTA, Rosa Maria e RIBEIRO, Marcos Wagner S. Aplicações de Realidade Virtual e Aumentada. XI Simpósio de RV e RA.Porto Alegre:SBC,2009. http://www.youtube.com/watch?v=50uPrai5WoE , Acessado em 20/05/2010 http://www.slideboom.com/presentations/113709/Realidade-Virtual, Acessado 29/05/2010 http://www.gizmodo.com.br/conteudo/cinco-motivos-para-robos-humanoides-algum-diatravarem-nossas-guerras, Acessado em 29/05/2010 INCLUSÃO DIGITAL Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação em JACKSO N ALMIR SARAIVA BARBOSA Resumo Este artigo é resultado de um esforço empreendido para conceituar uma pesquisa que aborda sobre o assunto Inclusão digital, do que se trata, panorama social, o que é preciso para acontecer, no Brasil como está, o que o governo planeja e quais projetos implementados, se esta tendo resultados ou não, educar para incluir, como anda a Inclusão Digital, analfabetismo tecnológico, Resultados, que é vinculada a matéria de Metodologia Científica do Curso de Graduação em Ciência da Computação do Instituto Cuiabano de Ensino – ICE. ABSTRACT This article is the result of an effort undertaken to conceptualize a research focusing on the subject Digital Inclusion of this is, social scene, what needs to happen in Brazil as it is, what the government plans, including projects implemented, if is having results or not, to include educating, and goes to the Digital Inclusion, technological illiteracy, Income, which is linked to the field of Scientific Methodology of the Undergraduate Computer Science Education Institute Cuiabano - ICE. 1- Inclusão digital Inclusão digital é a democratização do acesso ás tecnologia da informação de forma a inserção de todos da sociedade da informação para que possa ter conhecimento e ser integrada a essa tecnologia de informações. Dar condições para que um número cada vez maior de pessoas possa ter acesso às novas tecnologias. Um esforço ou busca de implementar eficazes ações que levam a sociedade a terem acesso ao conhecimento. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Por outros meios, Inclusão Digital, refere-se à disponibilidade, acesso e uso das tecnologias computacionais, especialmente a Internet, visando à construção do conhecimento e a consolidação da autonomia. De acordo com Fernandes C. 2006: “Tecnologias computacionais defasadas, “soluções populares” e Internet de baixa velocidade, por exemplo, nivelam por baixo e cristalizam as desigualdades, limitando o desenvolvimento de milhões de pessoas e condenando-as à sub cidadania.” Fonte <www.cori.unicamp.br/foruns/saude/evento24/guanis.ppt> Para que a Inclusão Digital ocorra temos 3 instrumentos fundamentais, o computador o acesso a rede e o domínio dessas ferramentas, não basta ter um computador e uma internet para que os mesmo só possam ter acessos a redes sociais, emails e salas de bate papo, temos que ter um planejamento para incluir socialmente e fazer com que os mesmos saibam manuseá-los devidamente, devido a esses parâmetros a sociedade ainda não será um incluído digitalmente. A sociedade tendo acesso a computadores e internet tem que haver um planejamento econômico para que a inclusão digital entre em vigor, sendo assim terá um plano a educação digital para que a sociedade possa fazer melhor aproveitamento e usabilidade das Tecnologias de Informação e Comunicação (TIC‟s). Isso se faz necessário, pois estamos entrando em uma nova realidade social onde o conhecimento, a informação e a aprendizagem assumem uma importância substancial nesta sociedade globalizada em que vivemos, onde exclusão social se estabelece. Há diversos impactos sociais que já estão sendo criados por este novo formato de sociedade e o acesso ao conhecimento para aqueles que hoje vem amenizar, ou ate mesmo democratizar o acesso ao conhecimento, para aqueles que hoje excluídos deste processo de aquisição ao conhecimento. As mídias digitais e as convergências tecnológicas têm uma função social importante no acesso e apropriação das Tecnologias de Informação e Comunicação (TIC‟s) pela população. Elas podem representar fonte de renda, Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação de valorização da identidade e da cultura local que contribuem para definir a comunicação como um direito humano. Particularmente quando se leva em consideração de que há indícios preocupantes de que os novos recursos de informação e comunicação podem ampliar a brecha entre os atores sociais que têm acesso a informação e aqueles de que dela são privados. Na rede a cada dia lança um projeto de Inclusão Digital sendo elas por meio de softwares educacionais, CDs ou Banco de dados, enciclopédias, bibliografias, documentos, relatórios de pesquisas, catálogos, mapas, fóruns e listas de discussão, bibliotecas, museus, institutos de pesquisa, aulas mais ilustradas, e/ou interativas, infográficas, vídeos, animação, simulação, programas educativos a distância, entre outros. No Brasil a cada dia surge Tecnologias de Informação e Comunicação (TIC‟s), o governo federal recebendo novos projetos de implantações de Inclusões Digitais para que as sociedades num todo tenham acesso. Inclusões no Brasil vem sendo ocorrida a cada dia que se passa, um documentário foi lançado em tribos indígenas de varias etnias, as tribos estão se comunicando utilizando meios da tecnologia para troca de informações por meio de celulares, câmeras digitais, filmadoras, computadores, internet que o maior meio de comunicação utilizado nos dias de hoje para a troca de culturas e aprendizagem. “O documentário revela como tribos brasileiras vivenciam a inclusão digital. Para marcar as comemorações do Dia Nacional do Índio, o curta-metragem Indígenas Digitais estréia nacionalmente no dia 19 de abril no Oi Futuro em Ipanema. O documentário retrata como indígenas de várias etnias estão utilizando a tecnologia para troca de informação e aprendizado. Resultado da parceria da ONG Thydewá com a Cardim Projetos, o filme conta com o patrocínio da Oi e apoio do Oi Futuro, através do Programa Oi de Patrocínios Culturais Incentivados e do Programa Estadual de Incentivo ao Patrocínio Cultural do Governo da Bahia, o Fazcultura.” Fonte <http://www.inclusaodigital.gov.br/noticia/lancamentonacional-do-curta-metragem-indigenas-digitais”> Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Nesse tópico podemos mostrar como a Inclusão Digital vem percutindo no cotidiano no Brasil fazendo com que a sociedade cada vez mais tenha acesso a essa grande rede de Tecnologias e Informações e Comunicações (TIC‟s), fazendo com que a sociedade cada vez mais e mais tenha acesso a essa nova globalização e democracia de uma iniciativa do governo em Incluir Digitalmente todos do Brasil numa era em que tudo que desejamos aprender “basta apenas um clique” que estamos na internet. 2 – Políticas de Governo Ganha atenção especial, no projeto, o crescimento e esforço por meio do governo federal para se estabilizar o chamado governo eletrônico, à universalização da inclusão digital. Sem “cidadãos digitais”, não há “governo eletrônico”. Dessa premissa, busca-se saber se as propostas governamentais e seus condicionantes sociais são de conhecimento das organizações devotadas à inclusão digital e se elas utilizam as informações disponibilizadas no portal do governo. As políticas de Governo em Inclusão Digital vêm percutindo a cada dia com o crescimento da Sociedade em busca a ser Incluso Digitalmente e por meio dessa o governo vem orçando e desenvolvendo planejamentos fazendo com que a cada dia mais a grande sociedade e num todo tenha acesso cada vez mais a essa grande rede de Tecnologias de Informações e Comunicação (TIC‟s). "A inclusão digital está em ações pontuais do governo federal, mas com pouca integração entre os projetos em curso. O Brasil precisa de uma política pública unificada que inclua a cidadania na sociedade da informação." Carta de Porto Alegre, V Oficina de Inclusão Digital, junho de 2006. AFONSO, Carlos. Uma estratégia brasileira de inclusão digital enfrenta grandes desafios, pois o espaço a cobrir o Brasil é amplo não se mede somente por geografia e demografia. De outra forma os gastos de política pública no Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação crescimento das TICs para o desenvolvimento humano não são custos, são investimentos essências para o crescimento, contribuindo significativamente para saltos de etapas nas possibilidades de desenvolvimento local e participação no conjunto de economia nacional. Considerando ainda que há muitas iniciativas que nasceram do governo, da ONGs, do setor privado, e mesmo de Institutos de Ensino, muitas dela tendo contribuição para pelo menos servir de exemplo de boas prática para uma estratégia abrangente. Pode-se citar, entre outras: tele centros nas comunidades carentes; conectividade achegar via satélite (GESAC) para escolas, serviços públicos e tele centros; extensões programas de eletrificação por painéis fotovoltaicos em escolas rurais (PRODEEM); implantação de uma política de governo que prioriza padrões abertos e software livre; ações de e governo a nível federal e estadual, inclusive serviços online, entre outros que se encontra nos planejamento do governo federal. Outro ponto nos planejamentos do Ministério e Tecnologias, Instituto Nacional com Ministério de Planejamento das comunicações, Implantações como espaços multifuncionais de conhecimento e aperfeiçoamento de inclusos digitalmente de baixa renda, por meio de parceiros e instituições fazendo certo grupo de ajudas as pessoas mais carentes e promovendo e implantando iniciativas voláteis para que os planejamentos entrem em vigor e a sociedade em geral tenha o certo embasamento sobre como ser incluída digitalmente nessa era de Tecnologias de Informações e Comunicações, para que todos no Brasil saibam como é e porque existe essa grande rede. Planejamentos como a Casa Brasil com 90 centros de inclusões digitais são elaborados como incluir a sociedade digitalmente fazendo com que a sociedade excluída digitalmente tenha acesso a Inclusão Digital por meio de salas informatizadas e equipadas com computadores e acessos a internet, com tele centros, auditórios digitais, rádios comunitárias, espaços multimídias, e um modulo de presença do governo federal. No final de novembro de 2005 o governo implantou um projeto de inclusões digital, Computador para todos a ponto que a exclusão social não exista, nesse projeto o Governo Federal abaixou os custos e definindo varias Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação opções de forma que a sociedade possa adquirir computadores e acesso a rede “Internet”. Isto é um resultante do Governo Federal juntamente com Bancos para que a sociedade de baixa renda seja inclusa digitalmente. Entre os lançamentos de centros tecnológicos vem progredindo ao longo dos dias com a elaboração de “Telecentro.br” de acordo ao Decreto Publicado Nº 6.991 - que institui o programa Nacional de Apoio à Inclusão Digital na Comunidades. Um projeto com aceito do Presidente da República Luis Inácio Lula da Silva, pelo ministro do Planejamento, e por outras devidas entidades de Inclusão Digital para todos seja executada no Brasil em todo território. De acordo com o IBGE2006 “Em 2006, a Munic fez um levantamento inédito da existência de planos ou políticas de inclusão digital nos municípios. A pesquisa identificou que em metade deles (52,9%) foi implantada uma iniciativa deste tipo. A preocupação com a inclusão digital esteve presente em 33 dos municípios com mais de 500 mil habitantes (91,7%), índice superior à média nacional (52,9%). Entre as grandes regiões, o destaque foi para o Sul (59,4%), seguido do Sudeste (57,9%) e Centro-Oeste (52,6%). O Norte e o Nordeste ficaram abaixo da média nacional, com 35,6% e 48,4%, respectivamente. A pesquisa também investigou a implantação de pontos de inclusão 1 digital, ou telecentros , essenciais ao desenvolvimento de redes. Em todo o país, a rede pública municipal de ensino foi a que mais concentrou computadores em rede, visando a inclusão digital (61,8%). Dentre as prefeituras com plano ou política de inclusão digital, 45,7% optaram pela criação de Telecentros, e 40,7% disponibilizaram computadores com acesso à internet para uso do público em geral.” Fonte <http://www.inclusaodigital.gov.br/noticia/metadedos-municipios-tem-politicas-de-inclusao-digital> A implantação de dois a três mil centros será inserida para aumentar o crescimento do já existente que estão entre cinco a dez mil centros. O projeto e uma ampliação para pessoas que são desprovidas renda para adquirir computadores juntamente com acessos à internet, que terá auxílios de monitores extremamente abordar o devido treinamento para capacitar a sociedade para o acesso a Inclusão Digital. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Os resultados dos planejamentos e inserções das Inclusões Digitais a cada dia vêm mostrando excelentes resultados no Brasil. As casas de jogos mais conhecidas como “Lan Houses”, que eram conhecidas apenas por jogos de diversão através de redes locais ou por meio da internet, agora já estão sendo ambiente de Inclusões digitais no Brasil contam com 457 inscritos na educação via rede, segundo aos parlamentares será estabelecida em lei que as Lan Houses prestam serviços complementares a Educação, sendo então estabelecimento de Inclusões Digitais. Por meio desses aspectos vem crescendo a cada dia a integração da sociedade com a inclusão social no Brasil, com os projetos implantados e concretizados muitos da sociedade hoje em dia já tem acesso a rede, “Internet” com o intuído de se incluído digitalmente e aprender a utilizar as ferramentas, que são disponibilizadas pelo governo. Com o crescimento da sociedade e a usabilidade da popularização da Internet, obviamente que os governos também terão de gerar informações dar mais importância ao mundo digital fazendo por isso a utilização de computadores e gerando ferramentas para melhor comodidade e melhor atendimento ao cidadão por meio de informações de interesse público, alem do que também as clarezas de um Governo expostas para a sociedade. 3 – Educar para incluir. Educar para incluir a sociedade digitalmente não basta apenas o governo executar melhorias para que todo e qualquer cidadão tiver a facilidade de adquirir computadores com acesso à internet, alem de facilitar para que todos tenham acesso a essa grande rede temos também que educar os cidadãos a usar o computador. A Ciência da Informação esta associada a todas as áreas do conhecimento tendo o avanço tecnológico como aliado, tendo vista a metodologia, o acesso eficaz dessa fonte que geram informações, a uma Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação preocupação com o surgimento em todas as formas, ainda mais por meio eletrônico. Saber utilizar estas informações é fator preocupante no exercício da cidadania e da inclusão social através das mídias digitais. Para educar e incluir socialmente requer preparar a sociedade para se adaptar a nova era tecnológica e operacional de qualificações múltiplas, ensinarem como operar tecnologias de informações e comunicação, ter cautelas no que apresentar e na forma de passar a sociedade para não descaracterizar as telecomunicações e as informações através da informática como únicos propulsores da inclusão econômica e social na sociedade da informação. O acesso ao computador e a internet é o primeiro passo para Inclusão Digital, sendo o primeiro passo também para a criação de riqueza e a tecnologia coletiva da população, sendo utilizada desta forma podemos reforça, multiplicar e transformar a sociedade em uma sociedade Incluída Digitalmente. Este processo de evolução da sociedade caminha cada vez para tenha uma liberdade mais solida com um crescimento potencial individual para os seus membros, a informação representa uma forma para que um ser adquira embasamentos. Um plano de alfabetização da tecnologia é o GESAC, um programa de inclusão social do Governo Federal, coordenado pelo ministério das comunicações, sendo uma linha de desenvolvimento de formas digitais, estruturar um documento eletrônico em rede a metodologia para a produção de documentos, para a sociedade possa ser inclusa e divulgue seu próprios conteúdos. O analfabetismo digital é um dos tipos mais recentes. Vários projetos governamentais tentam diminuir esse índice, mas vários fatores não contribuem como os preços das redes de internet e/ou computador (como muitas pessoas pobres não tem condição nem para se alimentar, como e muitos locais não possui acesso a energia piorou internet, como a Amazônia, ou o Sertão Nordestino. Um dos projetos que o governo fez para tentar melhorar esses Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação índices foi o PAC- Programa de Aceleração do Crescimento- que é um projeto que investe no crescimento econômico do país, que esta incluído a tecnologia.Com esse projeto o governo pretende baixar os preços dos computadores e fazer um acordo com as redes de internet para haver uma diminuição nos preços, onde as pessoas possam adquiri-las com mais facilidades. A oferta de serviços do Governo Federal e das organizações em geral por meio da internet encontra desafios o de favorecer o acesso ao cidadão ao mundo virtual e reduzir o alfabetismo social, que implica em atribuir conhecimentos de informática a sociedade a melhorar a interface gráfica disponibilizada a adaptação ao público alvo. A questão a se colocar é que o aumento de acessos por meio da sociedade a estas informações estão no nosso cotidiano e temos que contribuir para essa melhoria, não temos que ir tão longe para vermos essa ocorrência, dois exemplos de sucessos são o Receita Net da Receita Federal e a Concessão de Benefícios da Previdência Social. Organizações como estas atendem uma clientela heterogênea no que se refere à idade e o grau de instrução, nível econômico e familiaridade com sistemas informatizados. A sociedade com baixa escolaridade tendo assim que pedir ajuda a terceiros para efetuar a devida atividade. 3.1 - Esquema como Educar para Incluir a Sociedade Digitalmente. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Fonte < http://www.scielo.br/scielo.php?script=sci_arttext&pid=S167656482003000200002> Um pequeno diagrama como é a forma de Inclusão social a sociedade, primeiramente temos que ter Estratégias Operatórias, como será feita e como fazer uma inserção a todos, depois da estratégia pronta temos que fazer Representações como essa ação ira persuadir na sociedade, levando isso em consideração tem que identificar os Critérios Ergonômicos e a Funcionalidade, depois tem que gerar Competência para ação e como será a Usabilidade, depois temos que definir a Interface Gráfica como iremos mostrar a grafia para a sociedade e por ultimo Incluir Digitalmente a sociedade nas Tecnologias de Informação e Comunicação. O conceito de adaptar interface gráfica e a inclusão digital pode ser operanializado pelo esquema gráfico de competência para ação e de usabilidade. A competência do usuário e construída a partir das representações que ele tem da situação e da utilização de interfaces como softwares, internet e terminais de auto-atendimento, bem como estratégias e modos como operar as informações e o serviço desejado no site. A usabilidade, aferida pelos critérios ergonômicos e de funcionalidade, indica o grau de facilidade que a pagina oferece ao ser acessada. 4.0 - Conceitos finais Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Por parte desse desenvolvimento com o grande mérito de Incluir Digitalmente a sociedade nas novas Tecnologias através de Informações e Comunicações as consideradas TIC‟s, fazendo com que todos sejam capacitados através das melhorias do Governo Federal e de seus auxiliares Ministério de Planejamento e de Infra-Estrutura para capacitação da sociedade através da Inclusão social e digital para todos terem acesso a essa grande rede sendo ela a internet. Conscientiza que a sociedade da Informação necessita de três ferramentas para serem inclusas digitalmente o computador o acesso a rede “Internet” e saber como utilizar esta ferramenta que e de tão grande importância na era digital onde “tudo”, sendo a maior parte do que tens que fazer pode ser resolvido através do computador. O governo com suas implantações de novas técnicas, a cada dia que passa vem desenvolvendo métodos de incluir cada vez mais a sociedade num todo na transformação que o mundo vem passando de Incluir para educar digitalmente toda a sociedade. 4 – Bibliografia. AFONSO, Carlos A. Políticas Públicas e Inclusão Digital. In: CGI.br (Comitê Gestor da Internet no Brasil). Pesquisa sobre o uso das tecnologias da informação e da comunicação 2006. São Paulo, 2007, pp. 47-53. <http://www.cgi.br/publicacoes/artigos/artigo48.htm> <www.cori.unicamp.br/foruns/saude/evento24/guanis.ppt> <http://www.inclusaodigital.gov.br/noticia/lancamento-nacional-do-curta-metragemindigenas-digitais”> <http://www.inclusaodigital.gov.br/noticia/metade-dos-municipios-tem-politicas-deinclusao-digital> Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação SOFTWARE LIVRE – SEGURANÇA Academico João Bosco Alvarenga Alves Ferreira – Aluno do 3º semestre do curso de Ciencia da Computação do Instituto Cuiabano de Educação. Professora Orientadora: Ieda Maria Brighenti Introdução Os software livre faz parte em nosso dia a dia na nossa vida profissional, a vulnerabilidade de ataques em programas quando não a segurança, pode causar vários problemas, e dependendo do nivel do ataque poderemos perder todas as informações importantes do dados. Por tanto a segurança das informações tera que ter maior prioridade,isso dependendo do projeto na hora de desenvolver o software livre para a disponibilização para usuario final. O buffer overflow ocorre quando um programa ou processo tenta armazenar mais dados em Um buffer (área de armazenamento temporário) do que ele realmente suporta. O buffer é criado para armazenar as informações até certo limite, os dados extras, que Têm de ir para algum lugar, acabam sendo inseridos (overflow) em buffers adjacentes, sendo Corrompidos ou até mesmo sobrescrevendo dados válidos. Entretanto, isso só ocorre Acidentalmente por erros de programação. O buffer overflow é um tipo de ataque que vem se tornando muito utilizado por Hackers, nesse tipo de ataque, as informações extras podem conter código designado para alcançarem certas ações, por exemplo, danificar arquivos, alterar dados ou tornar Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação públicas informações confidenciais. É muito comum existirem brechas em programas feito em C, isso, se for contratar alguns programador, busque por alguém com bons conhecimentos de programação e segurança. Algumas vulnerabilidades em software livre foram encontradas, e uma falha de programação acabou por deixar brecha na qual um invasor consegue comprometer a integridade dos dados pelo envio de dados através de software. Os hackers geralmente buscam por alguma vulnerabilidade em um sistema remoto, em programas, bugs de configuração ou mesmo códigos malfeitos para, então, executar ações que não foram planejadas pelo usuário- alvo. Segurança em comunicação para a comunicação segura a melhor alternativa é utilizar a criptografia,mas quando se pensa em usar a criptogradfia o custo sera mais altosabendo-se que por simples que seja a solução de criptografia ela é a mais cara. Podemos tambem usar uma placa que pode criptografar e descriptografar as informações pero da casa dos 500 bits, fazendo isso de forma rapida, essa placa é colocada em uma maquina que envia as informações e uma outra placa na maquina que recebe essas informaçoes, mas uma solução dessa pode custar muito cara para uma empresa, e mesmo assim, não seria uma solução definitiva para o problema dos sniffers(virus), pois ainda não existe uma maneira de se evitar que o racker capture o pacote. A unica coisa que a criptografia faz é evitar que, ao capturar o pacote, o racker pode ter acesso rapido as informações nele transmitida, sendo bom lembrar que chaves de critografia podem ser quebradas. Scripts em segurança em programação um script é um programa ou sequencia de instruções que são interpretadas ou executadas por outro programa ou mesmo pelo processador. Scripts de irc scripts de irc são versoes modificadas de cliente irc. Ele normalmente alteram algumas caracteristicas dos programas irc, desde o display do programa, o uso de comandos avançados do irc, ate açoes para prejudicar terceiros. Os scripts são usados normalmente por tres motivos: 1ª GUERRA: normalmente esses scripts vem preparados para definitivamente para o ircwar(guerra do irc). No irc encontramos usuarios que desconectam outros usuarios do irc ou ate mesmo derrubam a conexao da internet. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 2ª PROTEÇÃO: esses scripts são usados para proteger contra os scripts de guerras, os melhores protegem de praticamente todo tipo de ataque flood, algumas alem de oferecer a proteção para o usuario tambem oferece a proteção para o canal, mas, para isso, voce tem que ser OP(operador de canais). Os scripts mais sofisticados possibilitam a modificação do nivel de proteção a ser usado. Segurança em pagina – quais paginas explorar as paginas que fazem conexao com banco de dados são mais faceis para explorar. As paginas que tem login, submits, search, inserção de dados como cadastro, enfim essencialmente paginas que possuem codigos dinamicos como ASP,PHP,JSP,CGI etc. E os racker começam a investida buscando por paginas que recebem paramentros. Ex: user e senha. 6. Modelo de Maturidade para Segurança de Software 10, março, 2009 Como já se sabe, a (in)segurança no desenvolvimento de software tem sido o ponto fraco de praticamente todas as organizações direta ou indiretamente ligadas a este ramo. A quantidade de vulnerabilidades e incidentes de segurança relacionados comprova esta fraqueza histórica. Uma razão para a persistência deste cenário é que não existem padrões efetivos para o desenvolvimento de software seguro, ou melhor, não existem processos bem definidos visando este objetivo. Na verdade, apesar dos problemas, boa parte das organizações nem mesmo discute esta necessidade. Por outro lado, várias empresas relevantes no mercado já se posicionaram num sentido positivo. A Microsoft, por exemplo, aplica desde 2005 a metodologia SDL (Security Development Lifecycle), de autoria própria. Felizmente, muitos desenvolvedores e gerentes de desenvolvimento já entendem a necessidade da segurança de software, e as iniciativas em busca da aplicação de modelos, guias e padrões têm sido crescentes. Um exemplo claro é o crescimento da comunidade em torno do projeto OWASP (Open Web Application Security Project). Paralelamente, ao longo dos anos, tem se tornado cada vez mais evidente que desenvolver software seguro depende do resultado conjunto de pessoas e processos, e não somente de tecnologia. Outras experiências também mostraram que, mesmo sendo únicas, as organizações podem tirar bom proveito de práticas bem sucedidas de outras organizações, ao invés de simplesmente se basear em metodologias teóricas. Tendo tudo isso em mente, um grupo de especialistas em segurança de software das empresas Cigital (Gary McGraw, Sammy Migues) e Fortify (Brian Chess) publicou o BSIMM (Building Security In – Maturity Model), um modelo de maturidade focado em segurança de software. O modelo foi elaborado com base em iniciativas de segurança de 9 empresas diferentes, entre elas Adobe, EMC, Google e Microsoft. Utilizando um arcabouço de sua autoria denominado SSF (Software Security Framework), que aponta domínios e práticas comuns Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação das iniciativas em segurança de software, o grupo conduziu pesquisas nas empresas participantes e utilizou os dados obtidos para construção do modelo. O modelo lista 110 atividades divididas em 12 práticas dos 4 domínios do SSF. Cada prática pode receber até o nível 3 de maturidade. Totalmente livre (licença Creative Commons), o modelo pode ser obtido neste link (requer registro), ou acessado interativamente aqui. Para entender e considerar o BSIMM positivo, deve-se levar em consideração pelo menos dois fatores: 5. Apesar de utilizarem métodos diferentes, as empresas envolvidas na pesquisa empregam iniciativas de segurança que compartilham melhores práticas. O BSIMM condensou as atividades e boas idéias comumente aplicadas. 6. Modelos de maturidade têm sido aplicados em diferentes áreas há muito tempo, com bom nível de disseminação. O BSIMM se apresenta num formato já consolidado e aceito internacionalmente. O BSIMM não é um guia completo ou um “how-to”, mas pode ser um bom começo para aqueles que lidam com desenvolvimento e implantação de software, ou que de alguma forma dependem da confiabilidade dos aplicativos e programas que suportam o negócio de sua organização. SEGURANÇA EM DESENVOLVOMENTO DE SOFTWARE AGENDA: Por segurança em Desenvolvimento O SLD (SECURE DEVELOPMENT LIFEcycle) Abordagem de testes com base na segurança de Software Cliando Planos de testes com base em modelagem de ameaças Conclusão Referencias POR QUE SEGURANÇA EM DESENVOLVIMENTO É mais barato Identificar e corrigir de forma proativa. Custo para corrigir uma vulnerabilidade A maioria das aplicaçoes possuem falhas de segurança: NIST: 92% das vunerabilidades de segurança estao em software, GARTNER: 75% dos incidentes são causados por falhas de software. REQUISITOS PARA UMA SEGURANÇA DE SOFTWARE Oportunidade de considerar segirança desde o inicio são definidos os requisitos de seguraça que devem ser atendido pelo software, normas e exigencia regulatorias, certificaçoes(Common Criteria, PCI) Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação atendimento a politica de segurança interna. Design Definir e documentar a arquitetura de segurança, usar principios de design seguro, uso de camadas, codigo gerenciado, menor previlegio, redução de superficie de ataques. Documentar superficies de ataques e reduzir a exposição das configuraçoes Default, criar modelos de ameaças e mitigar ameaças usando controles, Definindo metas de segurança e adicionias que sejam especificas para os produtos. Implementação para os software livres: Uso de normas de codificação e testes Uso de checklits para aplicação das normas, cartilhas de boas praticas usar aplicação de ferramentas de testes “fuzzing” e analise de codigo estatico e condução de revisao de codigo. Software livre Quando se fala em Software Livre, muitos defensores nos passam a imagens de que eles são perfeitos, “nos dando a ideia de que podemos ir para guerra de peito aberto, que nem bala vai nos deter”. Afinal de contas, o que é verdade e o que mentira? Joilson O site SourceForge é destinado a hospedar projetos de código aberto. Lá, softwares de todo o tipo podem ser encontrados. (Foto: Reprodução) Software é software, Joilson. Todos têm problemas de sobra. O computador e os programas que executam nele são fantásticos, mas não deixam de ser complexos. Por isso, erros e defeitos existem de forma abundante na indústria de desenvolvimento de software. A “Lei de Linus” (Torvalds, criador do kernel do Linux) é a de que “com olhos suficientes, todos os bugs (erros) são rasos”. O que quer dizer que, como o software de código aberto pode ser analisado por todas as pessoas, erros podem ser facilmente encontrados e corrigidos. E isso é verdade para programas populares de código aberto. O próprio kernel – o coração do sistema operacional – se beneficia muito com isso. Mas projetos com menos popularidade ou com pouca relevância comercial não agregam tantos interessados, e o fato de o programa ter seu código aberto não traz as mesmas vantagens que podem ser percebidas em projetos grandes. Há projetos de software livre que há anos não recebem uma atualização, por exemplo, enquanto outros projetos têm as chamadas “forks”, que são versões “alternativas” com modificações específicas. Em projetos comerciais, de código fechado, dificilmente se vê a mesma situação. Enquanto o software é vendido, existe alguém o mantendo. De modo geral, o programa que está abandonado também não está mais no mercado. É claro que, com os freewares, a situação é diferente e existem muitos freewares Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação abandonados – e a comparação de softwares de código aberto com freewares é mais justa, considerando que, assim como os freewares, o software livre também costuma ser uma “atividade extra”. Por outro lado, muitos freewares estão ligados à empresas comerciais, como no caso de antivírus. Também os softwares de código aberto ligados a empresas, como o ClamAV, o Snort e o OpenOffice, estão em constante desenvolvimento. O que se vê, então, é que, em muitos casos, a situação de um freeware e de um projeto de código aberto é semelhante. No entanto, é claro que o software livre permite contribuições. A tendência de um projeto de software livre, quando ganha popularidade, é de crescer bastante. Na questão específica da segurança, o software livre costuma ser melhor para usuários domésticos porque não é tão visado por criminosos. As ameaças são diferentes, e fica difícil fazer uma análise de segurança de um sistema que nem sofre ataques. Em servidores, onde o mercado é dividido e competitivo, Linux e Windows são atacados de forma parecida. Sistema adota regras de desenvolvimento seguro. É fato: se você utilizar o Linux hoje, você simplesmente não será atacado. Não vai precisar de antivírus. Mas se isso é mérito do sistema, não cabe a esta coluna afirmar. Com certeza não é mérito do software livre, porque todos os programas têm falhas e o Firefox, por exemplo, que não era atacado quando era pouco usado, hoje já é considerado pelos criminosos na realização de ataques web. Um software seguro é aquele cujo desenvolvimento foi pensado desde o início considerando a segurança. O modelo hoje para isso é o OpenBSD. É um sistema muito seguro. Mas não simplesmente porque é de código aberto, mas porque tem segurança como prioridade em seu desenvolvimento. A Microsoft, com programa de SDL (Security Development Lifecycle), está tentando fazer o mesmo. Mas muitas empresas – e praticamente todos os projetos de código aberto – carecem de estrutura semelhante. 7. segurança Afirmar que o software livre é melhor apenas para usuários domésticos é errado, hoje sistemas como Apache (servidor WEB), Squid, Postfix (servidor de email), ssh (serviço de acesso remoto) rodam em 80% dos servidores mais acessados da Internet, o que mostra que o software de código aberto é sim uma ótima opção para ambientes críticos. E sistemas como esse além de muito usados são também alvo dos maiores ataques da rede. Pesquisas comprovam que os servidores de internet com menor downtime no ano passado foram os que rodam Linux ou aplicações do código aberto. Quanto a dizer que Linux e Windows concorrem no mercado corporativo é outro engano o Windows pode até concorrer no mercado de pequenas empresas com o Active Directory, mas para médias e grandes corporações com mais de 2.000 hosts em rede o Linux concorre com os Unix, tipo FreeBSD, AIX da IBM, Solaris da SUN mas o Windows nem de longe tem estabilidade suficiente para sequer entrar nessa concorrência. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação A plataforma windows foi criada objetivando flexibilidade ao usuário final e a flexibilidade é um vetor inversamente proporcional a segurança. No dia em que a segurança for o foco da Microsoft o Windows deixará de ser tão popular pois ficará muito mais complexo de usar. Quanto a informar que usuário doméstico não é alvo de ataque, posso garantir como especialista em segurança da informação que hoje mais de 50% dos ataques de malwares na rede tem como objetivo o phishing que é a coleta de informações de pessoais (numero de cartao de crédito e conta bancaria) dos usuários finais, e usuário final é usuário doméstico. Quanto ao software livre, seria melhor considerá-lo antes como uma reação a este estado de coisas. A Microsoft, se quisesse, poderia tentar ganhar dinheiro com software livre, como fazem a IBM, a HP, e a Novell, que também fornecem software proprietário. Pelo que não seria legítimo considerar o modelo livre uma ameaça a empresa alguma, principalmente às que se dispõem a acompanhar a evolução do mundo. O movimento do software livre pode ser considerado, em seu próprio mérito, como a fruição da mais nova etapa evolutiva das formas do saber e da propagação do conhecimento, possibilitadas pela revolução digital. Formas de se fazer software com eficiência, economia e autonomia dos interessados em seu uso. Penso, portanto, que a pergunta está invertida, e invertida só serve ao sensacionalismo. O monopólio da Microsoft é que deve ser considerado uma ameaça real. Não diretamente pelos seus negócios, mas pelo seu poder de lobby sobre Estados. Pela forma como vem assim agindo, ela ameaça a liberdade do cidadão controlar as condições da sua própria comunicação digital, cada vez mais entranhada à sua identidade civil. Identidade esta cada vez mais refém, por isso, de um regime de propriedade intelectual cada vez mais radical, esotérico e dogmático, onde 60 mil dólares e um sofisticado discurso legalês patenteiam praticamente qualquer coisa. De idéias por trás de trechos de programas, inclusive publicadas há mais de 2000 anos, a modelos de negócio. Tal qual os indultos papais que antes vendiam proteção divina à alma contra riscos infernais, as patentes esotéricas hoje vendem proteção jurídica ao investimento especulativo, contra quem esteja no caminho dos seus lucros. Se a Microsoft prefere manter todos os seus ovos no cesto do modelo proprietário, e bancar uma luta titânica contra a marcha do tempo, ela mesma pode ser considerada uma ameaça ao seu próprio poder no futuro. Conclusao: Os software livre a cada vez tem de ser melhorado para uma segurança das informaçoes de cada usuario. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Nunca teremos um software livre 100% livre, mas sempre melhorando a seu codigo, e investir no profissional da area de tecnologia da segurança da inforção referencias bibliograficas: Marcelo Souza http://marcelosouza.com/2009/03/modelo-de-maturidade-paraseguranca-de-software/ Agner Elias: Gerente de pesquisa http://www.slideshare.net/conviso/segurana-emdesenvolvimento-de-software-presentation REDES SEM FIOS 8. Acadêmica Kardec Ribeiro Duarte Filho – aluno do 3° semestre do curso de Ciência da Computação do Instituto Cuiabano de Educação. Professora Orientadora: Ieda Maria Brighenti RESUMO O objetivo deste trabalho é demonstrar o impacto negativo no desempenho, provocado pelo uso do protocolo de transporte Transmission Control Protocol (TCP) sobre redes sem fios. Esta redução significativa de desempenho se dá principalmente pela grande perda de pacotes ocasionada pelas condições de transmissão neste ambiente de rede, uma vez que é suscetível a diversos tipos de interferências, dentre outros fatores. Este problema ocorre no TCP devido ao seu mecanismo de congestionamento, o qual interpreta erroneamente a alta taxa de erros presentes nestas redes como situações de congestionamentos, o que faz com que o mecanismo específico para a situação seja ativado, reduzindo assim consideravelmente o desempenho. Neste contexto, se faz necessário o entendimento das características do protocolo bem como da tecnologia de transmissão em redes sem fios para compreensão do problema. Existem atualmente algumas propostas para otimização do desempenho nestas condições, as quais também estão abordadas neste estudo. INTRODUÇÃO As redes sem fios, ou wireless, como também são conhecidas, caracterizam uma forma de acesso complementar em ambientes corporativos, além de soluções Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação domésticas. Tudo isso se dá principalmente pela mobilidade oferecida, onde em apenas alguns instantes são montadas redes estruturadas ou ad hoc capazes de oferecer acesso através da transmissão de rádio freqüência, dispensando assim a utilização de cabos. A diferença entre redes sem fio (wireless) e redes cabeadas (wired) se dá basicamente no meio físico, onde em uma a transmissão é feita por meio do spectro (wireless), e na outra é direcionada através de cabos metálicos ou de fibras óticas (wired). A utilização do spectro como meio de transmissão, possibilita que os equipamentos dispensem a utilização de cabos, o que favorece a mobilidade. Em contrapartida, traz uma série de problemas não presentes nas redes cabeadas, principalmente no que tange em relação ao desempenho. A transmissão realizada através do spectro sofre uma série de interferências e perdas de potência do sinal causadas por diversos fatores, dentre eles a presença de paredes e outros equipamentos utilizando a mesma faixa de freqüência. Isto causa grande perda de pacotes, o que afeta drasticamente o desempenho da rede. Ainda existe o problema da desconexão e handoff dos equipamentos causados pela mobilidade, o que caracteriza uma pausa temporária na transmissão. Junto a estes problemas, surge um outro derivado do protocolo de transporte da rede, o TCP (Transmission Control Protocol). Neste caso, a rede interpreta as perdas de pacote da rede wireless, sejam causadas por erros de transmissão ou por desconexões, como congestionamentos, pois a versão padrão do protocolo não consegue distinguir estas situações. O objetivo deste trabalho é estudar a queda de desempenho em redes wireless, causada pelo mecanismo de congestionamento do protocolo TCP,serão abordadas as características do protocolo, a fim de entender os princípios básicos de transmissão, principalmente do mecanismo de congestionamento, será dada uma visão geral das redes sem fio, procurando estabelecer diferenciais com as tecnologias existentes de redes cabeadas, serão demonstradas as soluções existentes para otimizar o desempenho sobre redes wireless. Ao final serão apresentadas as conclusões sobre o estudo e apresentada uma nova proposta para otimização do protocolo. PROTOCOLO DE TRANSPORTE TCP Em alguns modelos de referência utilizados por protocolos de rede, como por exemplo no Open Systems Interconection (OSI), existe uma série de camadas com Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação funções distintas, mas que empregam um objetivo final único, prover a transmissão de pacotes entre dois pontos caracterizados como transmissor e receptor, interligados por um meio físico. Algumas camadas, geralmente de nível mais baixo, aplicam o conceito de transmissão não confiável, tendo a obrigação apenas de enviar o pacote, deixando de se preocupar se este foi ou não entregue, ou como foram as condições de entrega. Neste caso, atrasos, congestionamentos da rede, perdas, duplicidades, ou até mesmo rompimento do pacote devem ser considerados, porém, não são tratados, o que não possibilita confiança na transmissão. Do outro lado, em camadas superiores, aplicativos necessitam de mecanismos para controlar o fluxo da transmissão, uma vez que há grande volume de dados a serem transmitidos. Uma solução para isso é implementar meios no próprio aplicativo, mas com a grande diversidade de sistemas clientes/servidor, se torna uma tarefa árdua e redundante. Neste contexto, se torna essencial o uso de um protocolo que ofereça principalmente controle de fluxo e confiabilidade na transmissão. O Transmission Control Protoco (TCP) emprega uma série de mecanismos para oferecer estas funções, dentre eles está o controle de fluxo através do gerenciamento do tamanho de segmentos e janelas, além da confiabilidade alcançada pela utilização da técnica de confirmação positiva com retransmissão. Todas estas características fazem do TCP atual um excelente protocolo de transporte, o qual foi projetado para se adaptar aos mais variados tipos de redes, com diferentes taxas de erros e capacidade de transmissão. Além disso, o TCP suporta diversas tecnologias, tais como conexões por linha discada, rede local com par trançado, redes de fibra ótica e redes wireless. Segundo TANENBAUM (1997), a primeira implementação do TCP foi definida através da RFC 793. Conforme erros foram detectados e as tecnologias de redes evoluíram, outras versões como a definida na RFC 1122 surgiram. Outras extensões Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação do protocolo foram definidas na RFC 1323. Derivadas destas definições surgiram também versões como o TCP Tahoe e TCP Reno. Atualmente existem diversas versões do protocolo, muitas delas com características específicas para operar sob uma determinada tecnologia de rede, como por exemplo em redes wireless. A versão mais utilizada no mundo atualmente é a TCP Reno, por apresentar melhor desempenho e adaptação nos mais variados tipos de redes. No decorrer do capítulo, serão apresentadas algumas características do protocolo TCP, para fim de melhor entendimento dos mecanismos que envolvem todo o processo de controle de fluxo e confiabilidade, os quais são os objetos de estudo deste trabalho por afetar drasticamente o desempenho de uma rede sem fio ou heterogênea. O principal ponto em estudo é o mecanismo de controle de congestionamento, o qual será apresentado em maiores detalhes. Confiabilidade na Transmissão dos Segmentos Como visto anteriormente, o TCP é um protocolo que oferece confiabilidade na transmissão. Para que isso seja possível, são empregadas algumas características que também são comuns a outros protocolos de transporte, são elas: - Orientação de Stream - Circuito Virtual - Transmissão buferizada - Stream Desestruturado - Conexão Full Duplex A orientação pode ser resumida como o sincronismo dos dados, ou seja, os serviços de transmissão de ambas as partes são sincronizados de forma que a seqüência de envio e recebimento dos dados seja a mesma para o transmissor e receptor. Assim, o problema do recebimento de segmentos desordenados é resolvido. Já a conexão através de circuito virtual tenta estabelecer, de forma lógica, um circuito ponta a ponta, ou seja, entre o transmissor e receptor. A função básica do Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação circuito é controlar a transmissão, desde o estabelecimento até o encerramento, por meio de mensagens de controle. Inicialmente, informações são trocadas de forma a estabelecer o circuito. Posteriormente, outras mensagens informam tanto o transmissor quanto o receptor sobre o estado da conexão. Isso se dá até a finalização do circuito, seja com consenso de ambas as partes ou por falha de algum hardware. No caso da transmissão buferizada, os aplicativos passam os dados ao protocolo e este se encarrega de dividi-los em segmentos de tamanho variado, sempre buscando a eficiência na transmissão. Assim, mesmo que o aplicativo envie um octeto por vez ou um conjunto elevado de octetos, o protocolo poderá ajustá-lo em um tamanho de segmento que proporcione maior eficiência na transmissão dos dados. Uma outra característica é a desestruturação dos segmentos de dados, onde não é possível identificar particularidades nos dados transmitidos. Diante disso, os aplicativos que devem entender o formato e se adaptar, e não o contrário. O mecanismo de conexão permite também ao TCP implementar conexões do tipo full duplex. Assim, existe na verdade duas conexões fluindo dados simultaneamente, o que permite que haja maior throughput na rede. O TCP implementa ainda uma técnica de transmissão conhecida como confirmação positiva com retransmissão, juntamente com o protocolo de janela deslizante. Com estes recursos, a transmissão deixa de ser realizada por pacotes isolados e passa a ser composta por um conjunto de pacotes, o que forma a idéia de uma janela. Desta forma, a capacidade da rede pode ser melhor utilizada, uma vez que o throughput aumenta devido à redução ou extinção do tempo de inatividade da rede. O funcionamento do protocolo de janela deslizante do TCP segue a idéia inicial apresentada sobre janelas TCP. O que se pode acrescer é em relação ao tamanho da janela, a qual é variável dependendo do tamanho do buffer disponível no lado do receptor. O tamanho é definido através das confirmações que chegam do receptor, as quais possuem um campo denominado notificador de janela, o qual informa o tamanho atual do buffer do receptor. Muitas vezes estas confirmações chegam juntamente com segmentos de Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação dados, utilizando-se de uma técnica conhecida como Piggyback (carona). O TCP se utiliza desta técnica para enviar confirmações e o tamanho do buffer. Na realidade esta técnica é utilizada nos casos onde os aplicativos não trafegam dados em full duplex, ou seja, através de conexão simultânea. Em um momento crítico, em que o buffer do receptor se encontra totalmente cheio, o notificador de janela que é enviado para o receptor pode conter o valor zero (ZWA – Zero Window Advertisement) para que a transmissão seja encerrada momentaneamente. Enquanto se mantém com a transmissão interrompida, sinais de controle ZWP (Zero Window Probles) são enviados pela rede, na medida em que o buffer vai se esvaziando, o valor do notificador aumenta para possibilitar o reinício da transmissão. Este mecanismo de controle possibilita ao TCP empregar eficientemente o controle de fluxo e a transferência confiável. É importante que haja este controle de fluxo para permitir que aplicativos rodando em máquinas de diferentes portes, como por exemplo um computador pessoal e um outro com grande poder de processamento, consigam estabelecer uma comunicação eficiente e confiável. Outro ponto fundamental do controle de fluxo está na interação com máquinas intermediárias, como por exemplo roteadores. Neste caso, estas máquinas devem ser capazes de se comunicar com o transmissor quando tiverem em sobrecarga, informando assim uma possível situação de congestionamento. A situação de congestionamento é tratada pelo TCP através do mecanismo de janelas deslizante, simplesmente causando uma redução no tráfego através da diminuição do tamanho da janela. Maiores detalhes sobre este controle serão apresentados em sessões seguintes. Estabelecimento e Encerramento de Conexões TCP O estabelecimento de conexões no protocolo TCP é realizado através de handshakes de três vias. Esta técnica utiliza-se de apenas três mensagens para estabelecer uma conexão entre o transmissor e receptor. Durante o estabelecimento, mensagens são trocadas para que ambos conheçam que a conexão está sendo iniciada, bem como a seqüência dos octetos Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação que serão transmitidos. Para que a conexão seja iniciada, um segmento com o campo SYN marcado e com um número de seqüência gerado aleatoriamente é enviado pela máquina solicitante da conexão, informando o pedido de conexão. Ao receber o segmento SYN, o receptor também envia um segmento SYN informando sua seqüência, além da confirmação do pacote SYN recebido da máquina solicitante, através do número de seqüência recebido acrescido de um, informado através do campo ACK. Após o recebimento do pacote de SYN/ACK na máquina origem, o TCP envia novamente um segmento, agora contendo a confirmação de recebimento informada através do número de seqüência do próximo octeto que espera receber do destino. Assim, a conexão é efetuada e a seqüência passa a ser conhecida tanto pelo transmissor como pelo receptor. TECNOLOGIAS DE REDES SEM FIOS Devido a grande expansão das redes sem fio em ambientes locais, motivada principalmente pela sua facilidade de uso e praticidade, cresceram os esforços aplicados para alcançar melhorias em aspectos como segurança e desempenho, quesitos que são cruciais nesta tecnologia de redes, além de buscar uma padronização mundial no desenvolvimento de equipamentos. Atualmente, o mais conhecido padrão de redes sem fio para ambientes locais (Wireless Lans) é o IEEE 802.11 (Institute of Electrical and Eletronics Engineers), também conhecido como Wi-Fi (Wireless Fidelity). Existem também diversas outras tecnologias proprietárias para redes sem Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação fios, porém, muitas delas já aderiram ao padrão IEEE motivadas pelas diversas vantagens de se utilizar este padrão aberto, sendo entre elas a interoperabilidade, baixo custo e principalmente demanda do mercado. Neste trabalho, devido às vantagens acima apresentadas e sua marcante presença no mercado, foi adotado o padrão IEEE como a tecnologia de rede sem fio a ser apresentada, atuando em um ambiente local (WLAN). Ao longo do capítulo serão apresentadas algumas características desta tecnologia de redes, padrões existentes e principalmente características técnicas que identifiquem os problemas causados pela grande perda de pacotes, o que é um fator marcante nestas redes. Todos os pontos a serem discutidos serão apresentados através de um comparativo entre redes wireless e cabeadas, isso para destacar os principais pontos que as diferenciam, justificando assim o propósito do trabalho. O padrão IEEE 802.11 Nos últimos anos, a tecnologia de transmissão de dados por meio de conexões sem fio tem deixado de fazer parte apenas de comunicações de longa distância através de satélites, para fazer parte também de conexões em redes locais. Esse avanço despertou interesse de muitas corporações para desenvolverem soluções e investirem em pesquisas. Segundo SANTANA (2003, p.24), em 1990 o Institute of Electrical and Eletronics Engineers (IEEE) constituiu um grupo de pesquisas com o intuito de criar padrões abertos que pudessem disseminar a tecnologia wireless para redes locais sem fios (WLANS). Com isso, a primeira especificação surgiu em 1997, e foi denominada como IEEE 802.11. O objetivo da especificação era principalmente estabelecer padrões para a camada de acesso ao meio Medium Access Control (MAC) e para a camada física PHY (Physical). A primeira especificação estabeleceu todas as necessidades estruturais para a utilização de redes sem fio, tendo como principais fatores o Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação protocolo de acesso ao meio (CSMA/CA), tipos de codificação utilizados (FHSS e DSSS), sistemas de segurança como criptografia através do Wireless Equivalent Protoco (WEP), além de definições sobre componentes. Ao longo dos anos diversas outras especificações derivadas do 802.11 surgiram, sempre visando melhorias em termos de velocidade e segurança. No Brasil, os padrões mais utilizados atualmente são o 802.11b e 802.11g, ambos operando na freqüência de 2,4 até 2,4835 Ghz, que é uma faixa de freqüência não licenciada (ISM – Industrial Scientific and Medical). As técnicas de transmissão empregadas pelo padrão 802.11 são por rádio freqüência e infravermelho. No caso da transmissão por rádio freqüência, a mais utilizada, a técnica utilizada é a spread spectrum, que será apresentada na sessão seguinte. Já a transmissão por infravermelho, embora seja mais segura em relação à interceptação de dados, é limitada por necessitar que o sinal seja direcionado. Embora haja esta limitação, ela é útil em casos onde a transmissão é realizada entre aparelhos em redes pessoais. PROPOSTAS EXISTENTES PARA OTIMIZAÇÃO DO PROTOCOLO TCP SOBRE REDES SEM FIOS Neste capítulo serão apresentadas algumas das propostas existentes atualmente para amenizar o problema em questão. Para tanto, serão apresentadas as características de cada proposta, bem como aspectos que favorecem ou limitam sua utilização. Existem propostas que empregam características distintas entre si, algumas até fugindo dos princípios básicos do protocolo, como as que oferecem quebra de conexão. Basicamente, podemos classificar as propostas de acordo com três modalidades, que são os Protocolos de camadas inferiores ao TCP, os Protocolos Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação com quebra de conexão e finalmente os Protocolos fim-a-fim, afirma SANTANA (2003, p.47). Protocolos de Camada Inferior ao TCP A principio existem duas versões do TCP que fazem parte desta gama de protocolos, um é o Snoop e o outro uma versão modificada deste, o Snoop Otimizado. Os dois protocolos empregam a idéia de buferização aplicada sobre os pacotes que passam sobre um determinado ponto, que é o AP. CONCLUSÕES A queda de desempenho provocada pelo mecanismo de congestionamento do protocolo TCP, operando sobre enlaces sem fios, apresenta perdas significativas de desempenho na transmissão se comparadas a outras redes onde o meio é orientado, ou cabeado. Atualmente é grande a quantidade de pesquisas voltadas para esta questão, uma vez que as redes sem fios ainda estão em pleno processo de desenvolvimento. Isso faz com que muitas propostas de melhorias surjam, sempre visando solucionar ou pelo menos amenizar o problema. Como se pode notar na maioria das soluções apresentadas, o principal foco é a aplicação em redes heterogêneas, ou seja, onde há presença de redes sem fios e redes cabeadas, como em ambientes corporativos. As redes ad hoc acabam por não terem maior atenção pela sua baixa utilização, sendo estas consideradas apenas em casos específicos. O protocolo TCP mais utilizado atualmente, a versão Reno, está presente em diversos sistemas de rede espalhados por todo o mundo. Alterações nesta estrutura Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação apresentariam altos custos, o que inviabiliza qualquer solução que tem como proposta a alteração do protocolo padrão, o qual opera eficientemente sobre redes cabeadas. Dentre as soluções citadas, as que apresentam necessidade de alteração do protocolo padrão são as de mecanismos de notificação explicita, a técnica de reconhecimentos múltiplos (Multiple Acknowledgements), o TCP Sack e o TCP Westwood. Assim, fica evidente a total inviabilidade destas soluções, uma vez que a alteração na versão Reno se torna inviável pelos motivos já apresentados. Um outro ponto que deve ser considerado para avaliação destas propostas é a questão da confiabilidade provida pela proposta do protocolo TCP padrão, o qual emprega conceitos de conexão orientada e controle de fluxo para prover segurança na transmissão. A quebra destes conceitos implica em deficiências e insegurança, o que também descaracteriza a proposta. Uma proposta cujo foco principal é prover a quebra da conexão é o TCP Indireto (Indirect TCP). Nesta, cada segmento recebido pelo AP já é confirmado sem ao menos ser retransmitido ao seu destino, descaracterizando assim a semântica fima-fim. Além de propor soluções para os problemas gerados pelas altas taxas de erros presentes em redes sem fios, a qual chega ser mil vezes superior às das redes cabeadas, segundo SANTANA (2003), qualquer solução proposta deve ainda oferecer mecanismos de soluções para as freqüentes desconexões, sejam por handoffs ou até mesmo por desconexões causadas pelo não alcance do sinal pela estação. Um outro ponto fundamental a ser considerado é a questão de suporte a criptografia em camadas inferiores, pois muitas das soluções, por exigir um ponto intermediário entre o transmissor e o receptor, como é o caso do Snoop, impede este tipo de serviço e limita apenas à camadas superiores, como à de aplicação INCLUSÃ0 DIGITAL 9. Academica Kássia Regina Naves Silva Braga - aluna do 3° semestre do curso de Ciência da Computação do Instituto Cuiabano de Educação. Professora Orientadora: Ieda Maria Brighenti Introdução Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Nos programas de inclusão social que são desenvolvidos pelo governo uma das prioridades deveria ser a inclusão digital visto ser uma das formas de promover o acesso das populações menos favorecidas à informações tecnológicas. É também uma maneira de oferecer a esta classe social aquilo que a elite já desfruta integralmente. A inclusão digital ou infoinclusão é a democratização do acesso às tecnologias da informação, de forma a permitir a inserção de todos na sociedade da informação. Com o uso da tecnologia podemos simplificar a rotina diária, podemos afirmar que um incluído digitalmente é aquele que usufrui desse suporte para melhorar as suas condições de vida. Entre as estratégias inclusivas podemos desenvolver projetos e ações que facilitam o acesso de pessoas de baixa renda às tecnologias da informação. Dentre os projetos não podemos deixar de lado a inclusão digital volta-se também para o desenvolvimento de tecnologias que ampliem a acessibilidade para usuários com deficiência. Por tanto o nosso problema é demonstrar como criar mecanismo que possibilitam a inclusão digital? Para resolver este problema recorremos a consulta de referências bibliografia, onde por meio de analise buscamos, idéias,sugestões e argumentos que nos ajudem nesta reflexão. Inclusão Digital 55 A viabilização do acesso à Internet é uma demanda emergente que precisa ser trabalhada e para que possa amenizar a distância entre a chamada brecha digital que é a separação entre os que têm e os que não possuem acesso à Internet, ou seja, existem aqueles que desfrutam das facilidades, possibilidades e novidades propiciadas pelo acesso a Internet e os outros que compõem a parcela majoritária que Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação apenas ouvem falar das ferramentas virtuais que facilitam a vida dos que tem oportunidade de acesso. A inclusão digital significa melhorar as condições de vida de uma população com ajuda da tecnologia. “A inclusão social não é apenas uma questão referente à partilha adequada dos recursos, mas também de “participação na determinação das oportunidades de vida tanto individuais como coletivas.” (WARSCHAUER, 2006, p.24). Em palavras certas, incluir digitalmente não é só alfabetizar as pessoas em informática, é também melhorar a estatística social a partir do uso dos computadores, e mostrando para elas como ganhar dinheiro e melhorar as condições de vida com ajuda dessa maravilhosa tecnologia. Muitos acham que incluir digitalmente é colocar computadores na frente das mesmas e apenas ensiná-las a usar Windows, esta ideia é errada, como é o caso de comunidades e escolas que recebem computadores novinhos, mas que nunca são utilizados porque não tem telefone para conectar à internet ou porque faltam professores qualificados que tenham conhecimentos necessários. Colocar um computador na mão das pessoas ou vendê-lo a um preço menor não é definitivamente inclusão digital. É preciso ensiná-las a utilizá-lo em benefício próprio e coletivo. A inclusão social a partir da digital ainda é pouco estudado no Brasil. Toda e qualquer mudança sofre a influência da cultura. “Uma vez que cultura e economia tendem cada vez mais a se tornarem indistinguíveis, a riqueza, assim como o poder político e a influência social, passa a concentrarse nas estruturas que exercem alguma forma de controle sobre o acesso, mediado pelos equipamentos informáticos, à experiência cotidiana da cibercultura”. (CAZELOTO, 2008, p.111). Ações de inclusão digital devem estimular parcerias entre governos, empresas privadas, organizações não governamentais, escolas e universidades. Governos e empresas privadas devem atuar principalmente na melhoria de renda, suporte à educação bem como tornar disponíveis equipamentos à população. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 57 Algumas ações que podem ser promovidas pelos governos e empresas privadas incluem: Disponibilizar acesso a terminais de computadores a toda a população, oferecer tarifas reduzidas para uso dos sistemas de telecomunicações, criar mecanismo de isenção fiscal, sem burocracia, para o recebimento de doações de computadores e equipamentos de infra-estrutura. “A inclusão digital passa, então, a ser prioridade em programas oficiais de governo. Em risco está o investimento vazio e a preocupação é não gerar uma sociedade desigual.” (BRITTOS e CABRAL, 2004, p.154). Para que tudo isso aconteça é necessário o desenvolvimento de redes públicas que possibilitem a oferta de meios de produção e de conhecimentos. De nada adianta acesso às tecnologias e renda se não houver acesso à educação. “A educação é vista como ponto de partida no desenvolvimento da alfabetização digital, possibilitando que as pessoas tenham acesso às ferramentas tecnológicas da sociedade de informações, respeitando os princípios básicos do conhecimento de informática.”. (GUERREIRO, 2006, p.231). Para que unidades de inclusão digital utilizem software livre, é importante o apoio de profissionais com conhecimentos técnico em informática e redes, e também a formação dos próprios a inclusão digital para garantir a solução local de problemas, em processo de aprendizagem constante e colaborativa. Isso porque o aspecto principal do software livre é a maneira compartilhada de seu desenvolvimento, em que cada programador pode pegar o código-fonte de um software, modificá-lo e disponibilizá-lo alterado para a comunidade que os próximos usuários e desenvolvedores aproveitem as melhorias realizadas, e proponham as suas sugestões a partir destas e das seguintes modificações, num processo contínuo e coletivo das aplicações. “Utilizar programas para computador considerados livres garante uma economia na aquisição de licenças de uso. E, portanto, facilita a Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação implementação de projetos de inclusão digital”. (SILVEIRA e CASSINO, 2003, p.187). É também imperativo que a inclusão digital esteja integrada aos conteúdos curriculares e isto requer uma reforma no projeto pedagógico e grade curricular atuais de ensino fundamental e médio. É pré-requisito considerá-lo também na formação de profissionais dos cursos de Pedagogia, Licenciaturas e outros. 58 Os indivíduos, que por condições de insuficiência de renda, não têm como dispor de computador e linha telefônica em casa, poderiam ter a exclusão diminuída, caso tenham acesso através de empresas, escolas ou centro de cidadãos. Esses recursos destinariam-se prioritariamente àqueles que não têm acesso em suas residências. Vale ressaltar que este tipo de solução tem natureza paliativa. Adicionalmente, poderíamos ainda considerar o uso do software livre em computadores o qual seria sem qualquer custo. Entretanto, deve-se considerar a facilidade de operação, suporte e manutenção existentes. Há ação abafada de usuários de sistemas de telecomunicações, em especial, o sistema de telefonia fixa que pode e precisa ser expandido a fim de fornecer a população com esse serviço básico além de permitir que ela tenha acesso a Internet. O nosso país tem condições de superar esse atraso, para que isso de fato ocorra, é preciso começar a fazê-lo hoje. Do contrário, as gerações que vierem continuarão com índice muito grande de excluídos da era digital. A falta de qualquer uma dessas colunas significa deixar quase 90% da população brasileira ficando na condição de mera pretendente a inclusão digital. Considera-se que a inclusão digital é necessária a fim de liberar a toda a população, por exemplo, o usufruto dos mais variados serviços prestados via Internet. Hoje em dia, ter acesso a Internet significa acesso a um vasto banco de informações e serviços. Este imenso repositório de conteúdo e serviços merece e deve ser utilizado por toda população brasileira. É preciso que o governo, como ator principal, assuma o papel de coordenador e trabalhe em conjunto com a sociedade organizada a fim de certificar a inclusão digital. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Um desafio que se acrescenta à ausência de solução é que, quando existentes, tem dificuldade de se concretizar o adequado pagamento e condições de trabalho de profissionais de inclusão digital.Até o momento não tem solução que permita a formação de profissionais locais e usa futura sustentação como multiplicadores. Há experiência de instituir cooperativas sociais de profissionais de inclusão digital para prestar serviço às iniciativas, outras decidiram pela contratação de empresas do ramo qualificada. Tem alternativas de repasse dos lucros para que o 59 pagamento fique a critério da entidade responsável, outras que oferecem bolsas de pesquisa, voluntariado ou formação a profissionais, principalmente jovens. Não há como falar em cultura, ou em direito à informação, se deixarmos de lado o poderoso e já indispensável papel da internet no desenvolvimento intelectual dos jovens e da população. Para tanto, medidas de democratização do uso da internet têm sido tomadas por parte dos Estados, apesar de a operacionalidade técnica em nível federal ainda não estar totalmente concluída. A tarefa essencial do poder público é cumprir bem o seu papel de ator principal na direção e execução dos programas, até porque existe uma rigorosa relação entre comunicação cultural e instrumentos digitais. “A organização social e as diversas representações políticas são dominante de base local e a identidade cultural é, freqüentemente, construída por meio do compartilhamento da experiência histórica em um dado território físico e simbólico ” (Lemos, 2005, p.18). É muito comum unirmos o avanço das ciências da informação e novas tecnologias aos jovens. O grande avanço do mundo informatizado tem se tornado um grande desafio para todas as fases da vida. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O progresso da tecnologia tem sido no decorrer da evolução socioeconômica das nações o elemento importante que impulsiona as sociedades para a melhoria dos padrões de sustento; um instrumento que conduz à expansão das oportunidades. Nossa vida está marcada pelo período da informática, cada vez mais estamos dependentes das máquinas eletrônicas e daí a necessidade da criação de novas ideias que viabilizem a inclusão do idoso no mundo tecnológico. O avanço tecnológico, ao mesmo tempo em que promove melhorias para a população, também propicia uma forma de exclusão digital. A exclusão digital acontece de acordo com as diferenças das regiões, acompanhado da desigualdade social e serviços de cada região do país. Um dos segmentos mais antigos é a população idosa. “Embora existam muito mitos e preconceitos que estigmatizam os idosos como incapazes de aprender, uma nova consciência está surgindo em relação a integração dessa população na sociedade. É importante frisar que não existe nenhum estudo que comprove que os idosos são incapazes de aprender o novo.” (FERREIRA, 2008, p.12). 60 Embora sejam raros os projetos de formação para inclusão digital para os velhos, existem programas de extensão que oferecem cursos de informática para idosos que costumam ter demanda significativa em instituições não-governamentais e nas Universidades Abertas à Terceira Idade. A relação entre envelhecimento e a inclusão digital se dá por razões demográficas, uma vez que o processo de envelhecimento se torna cada vez mais acentuado no cenário mundial e por razões sociais. Com o aumento da população idosa e o alcance da longevidade torna-se necessário ampliar à inclusão digital. A inserção rápida de jovens no mundo informatizado pode sociabilizar os idosos com a tecnologia. Em qualquer faixa etária a inclusão digital traz benefícios, t como, informação rápida, aquisição de novos conhecimentos, atualização de conhecimentos gerais, ampliação das redes de relações, sociabilidade, melhoria da auto-estima. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Temos que estar atentos com os prejuízos como falta de exercícios físicos, isolamento de amigos, problemas de saúde por postura inadequada no computador, que deve ser visto com grande atenção. O acesso da população idosa no mundo digital possibilita a conservação de seus papéis sociais, do exercício de cidadania, o acesso a uma sociedade dinâmica e complexa, mantendo a mente ativa. “É importante dar ênfase a condições que propiciem a inclusão digital, pois a partir do momento em que os idosos passam a ter acesso aos meios informatizados, eles começam a perceber que as tecnologias não são tão complexas como antes imaginavam e que podem aprender e se atualizar, sentindo-se mais valorizados e tornando-se cidadãos”. (FERREIRA, 2008, p.45). Muitos idosos não têm motivação para entrar no mundo informatizado, às vezes por achar que são um obstáculo, outras por não perceberem a importância da inclusão digital e também por achar que o conhecimento do uso de aparelhos eletrônicos é uma tarefa que é mais fácil ser designada aos jovens. Têm os que ficam constrangidos por não saber usar os equipamentos eletrônicos e correm o risco de passar por situações violentas, como os que são assaltados nos caixas eletrônicos. Há ainda o preconceito refletido em todas as idades, de que o aprendizado de coisas novas não ocorre na velhice. O que é um engano, pois o aprendizado de 61 coisas novas, a agilidade mental não é uma característica típica do jovem. O processo de aprendizagem não se interrompe na velhice. Quando se constata falha na aprendizagem dos idosos para a informática, estes estão relacionados mais a fatores emocionais, como insegurança, baixa autoestima, fatores psíquicos, pedagógicos e a fatores pessoais, do que ao processo de envelhecer. Precisamos perceber as pessoas idosas como sujeitos ativos e a educação como um processo contínuo, que não ocorre somente no período escolar, nos anos da infância e juventude, mas da infância à vida adulta e à velhice. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação A inclusão digital é um problema de toda a vida, requer políticas educacionais que permitam a alfabetização digital, pois as inovações tecnológicas avançam de uma forma acelerada, o que vai exigir um processo de atualização cada vez mais rápido da sociedade, para acompanhar as mudanças que irão influenciar no nosso cotidiano, como serviços e equipamentos cada vez mais sofisticados que irão exigir conhecimento e agilidade. “A luta pela inclusão digital pode ser uma luta pela globalização contra-hegemônica se dela resultar a apropriação pelas comunidades e pelos grupos socialmente excluídos da tecnologia da informação. Caso contrário pode acabar se resumindo a mais uma forma de utilizar um esforço público de sociedades pobres para consumir produtos dos países centrais ou ainda para reforçar o domínio oligopolista de grandes grupos transnacionais.” (Silveira, 2003, p.29). Conhecimento especializado sobre o processo de envelhecer com metodologias de ensino que viabilizem estratégias para a inserção do idoso na atualidade, em especial a inclusão digital, sem deixar de lado o espírito ético do desenvolvimento do ser humano, sem perder de vista a riqueza das relações sociais ao vivo e a cores, pois uma máquina por mais inteligente que seja nunca substituirá eficazmente a atividade mental e criativa do homem. A chamada “exclusão digital” apresenta-se como uma nova face das desigualdades sociais, sendo a realidade, em todo o mundo, das bilhões de pessoas que não possuem acesso às tecnologias digitais de informação e comunicação. Isso diz respeito não somente à ausência de infra-estrutura, mas também a cada fator limitante do uso das tecnologias, sejam barreiras lingüísticas, sociais, econômicas, políticas, culturais. “‟A cibercultura provoca exclusões? é, evidentemente, uma 62 pergunta central em uma sociedade mundial na qual a exclusão (ou seja, a forma contemporânea da opressão, de injustiça social e de miséria) é uma das principais doenças” (Lévy, 1999, p.235). A impossibilidade de acesso, por quaisquer limitações e mais frequentemente por fatores combinados, é a nova face das desigualdades por originar-se nelas e, mais do que isso, por acentuá-las à medida que, cada vez mais, a estratificação social e o acúmulo de riqueza dão-se em função da capacidade de acessar e processar conhecimento. Esta compreensão tem feito da “inclusão digital” - entendida como a reversão desta nova face de “exclusão”. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O acesso cotidiano às redes, equipamentos e o domínio das habilidades relacionadas às tecnologias de informação e comunicação são cada vez mais requisitos indispensáveis à participação social, atividade econômica e fortalecimento da cidadania. Princípios fundamentais como justiça social, igualdade de oportunidades e a própria democracia passam a ser influenciados pelo acesso às tecnologias de informação e comunicação. Afinal estas são o principal meio de adquirir, interpretar, expressar, produzir e organizar o conhecimento, colocando-o a serviço de interesses e necessidades. Não se trata de contar com iniciativas de inclusão digital somente como recurso para ampliar a base de usuários para fins comerciais ou de arrecadação de impostos, nem reduzi-la a elemento de aumento da empregabilidade de indivíduos ou de formação de consumidores para novos tipos ou canais de distribuição de bens e serviços. Espera-se que o acesso às tecnologias e sua apropriação leve ao desenvolvimento local, à resolução de problemas das comunidades de modo participativo e com autonomia crítica, e a mudanças nas práticas políticas. A importância da inclusão digital passa pelo reconhecimento desse contexto e de que a situação deve ser combatida com um processo de oferta universal de acesso aos equipamentos, às redes, às linguagens, sem restringir-se a aplicativos e sistemas, mas estendendo-se à própria cultura da rede mundial. Apropriar-se das tecnologias significa desenvolver e aperfeiçoar habilidades que vão de tarefas básicas, como escrever um e-mail, a atividades complexas, como pesquisar de maneira eficaz, acessar serviços ou produzir um vídeo. Isso quer dizer que muitos aspectos inclusão digital não estão nas máquinas nem na relação com as máquinas, e sim no processo global de inclusão social. 63 A Inclusão digital pode ser considerada como um processo facilitador no desenvolvimento e auxílio da promoção da educação, inserção social e desenvolvimento de economias locais da comunidade assistida. Atualmente apenas cerca de 20% da população brasileira tem acesso à Internet. Considera-se a partir do percentual apresentado, que o acesso às Tecnologias de Informação e Comunicação não contempla toda a população. Desta maneira, torna-se necessário criar maneiras que propiciem o acesso de forma Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação universal, abranger e promover liberdade a inclusão digital e a capacitação para a utilização dessas tecnologias de acordo com a necessidade do indivíduo. A inserção social é um ponto muito importante e senão o mais importante nesse processo de ID. A inserção social passa as limitações da onde estão instalados os recursos. Para que seja concretizada a ID é necessário conhecer a comunidade assistida, é crucial nesse processo, além de profissionais que efetivamente manipulem as TIC‟s é importante também contar com a atuação de profissionais qualificados que possam dar assistência necessária à comunidade, para realizar e desempenhar suas ações dentro e fora no processo de ID. Muitos imaginam que, em países pobres, não se deveria nem falar em inclusão digital enquanto há pessoas com fome e desempregadas na rua. O problema é que são as nações pobres as quais, justamente, costumam se beneficiar melhor das ações excluídas. Comunidades de baixa renda tendem a atrair menos investimentos em infra–estruturas de telecomunicações e tecnologias, gerando menos motivação de empresas e governos. Em lugares assim, há um risco de diminuir ainda mais as ofertas de bons empregos e serviços para todos daquela comunidade Conclusão A inclusão digital é a iniciativa de fazer com que a sociedade obtenha conhecimento mínimo para utilizar os recursos da tecnologia da informação, bem como ter e utilizar os recursos físicos, como os computadores com acesso à internet. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 65 Se a inclusão digital atingir toda população aí sim podemos dizer que Construímos oportunidades iguais para todos e todas. Não é privilégio e sim oportunidade que os governante precisam dar para as pessoas menos favorecidas e um dos fatores é através do acesso a internet, não deixando de lado outros fatores, mas uma das prioridades como sendo a Inclusão digital como resposta a Exclusão Social. Para que a inclusão digital tenha sucesso, é necessário a contratação de profissionais qualificados para que a sua aula seja integrada ao uso dos computadores. Alguns exemplos de sucessos acontecem em escolas particulares, que contratam monitores que são responsáveis pela conservação dos laboratórios, ficando acessível aos laboratórios. Embora iniciativas tenham sido executadas com sucesso, ainda é necessária uma política séria ao combate a exclusão digital. Isto será realidade elaborando parcerias do governo com empresas privadas, e investimentos na educação tecnológica. A inclusão digital deve ser uma responsabilidade social, visando à inclusão dos excluídos digital, na sua integração junto à sociedade da informação. O acesso à internet deve ser livre, porque é um potente banco de informações e serviços e deve ser disponibilizado à toda sociedade. Referências ALMEIDA, Maria Elizabeth Bianconcini de. Inclusão digital do Professor:”Formação e prática pedagógica”. Falta o site e a data. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação BECKER, Maria Lucia. Inclusão digital e cidadania: as possibilidades e as ilusões da solução tecnológica.Ponta Grossa-PR: UEPG,2009. BRITTOS, Valério Cruz; CABRAL, Adilson. (org). Economia política da comunicação: Interfaces brasileiras. Rio de Janeiro: E- Papers, 2008. CAZELOTO, Edilson. “Inclusão digital” uma visão critica. São Paulo: Senac, 2008. FERREIRA, Anderson Jackle. Inclusão digital de idosos. Porto Alegre-RS: EDIPUCRS,2008. FUSER, Bruno. Comunicação para a cidadania: caminhos e impasses. 66 GUERREIROS, Evandro Prestes. Cidade digital: Infoinclusão social e tecnologia em rede. São Paulo: Senac, 2006. LEMOS, André. Ciberurbe: A cidade na sociedade da informação. Rio de Janeiro: E-Papers,2005. LÉVY, Pierre. Cibercultura. Tradução de COSTA, Carlos Irineu da.São Paulo: editora 34,1999. PELLANDA,Nize Maria Campos; SCHLUNZEN JUNIOR, Klaus; SCHLUNZEN, Elise Tomoe Moriya (orgs). Falta a cidade: DP&A, 2005. SILVEIRA, Sérgio Amadeu da; CASSINO, João. Software livre e Inclusão digital. Conrad, 2003. SILVEIRA,Sérgio Amadeu. Rio de Janeiro: E-Papers, 2008. VAN ACKER,Tereza; RABIA, Selim; PASSARELLI, Brasilina (orgs). São Paulo: Senac,2009. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação WARSCHAUER, Mark. Tecnologia e Inclusão social: a exclusão digital em debate. São Paulo: Senac, 2006. Mapeamento Wireless na cidade Pontes e Lacerda – MT José Luís Ramalho Forin 1 2 Centro Universitário Candido Rondon (UNIRONDON) Caixa Postal 78 – Cuiabá – MT – Brasil Departamento de Ciências da Computação – UNIRONDON Caixa Postal – Cuiabá – MT – Brasil [email protected] Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Abstract.This article aims to map the wireless networks in the city of Pontes e Lacerda, MatoGrosso, Brazil. After analyzing the data obtained showed the numbers, graphs, comparisons between open networks and closed networks, signal strength, among other features. Resumo.Este artigo tem como objetivo fazer um mapeamento das redes wireless dacidade de Pontes e Lacerda, estado do Mato Grosso, Brasil.Após a análise dos dados, demostrarei os números obtidos, gráficos, comparativos entre redes abertas e redes fechadas, intensidade do sinal dentre outras características. 1. Introdução Há uma grande ampliação da quantidade de redes sem fio hoje, isso se deve ao grande aumento de produtividade que as tecnologias sem fio proporcionam. Em um recente estudo, descobriram que funcionários com notebooks atingiram um aumento de produção de 30 minutos a 3 horas, comparando aos usuários de desktops. Quando a conexão sem fio é adicionada a esses notebooks, ocorre um aumento de produtividade semanal. Mas apesar da grande vantagem na produção, às redes sem fios também são acompanhadas de desvantagens significativas e talvez a segurança seja a principal delas. (GARTNER, 2009) Este artigo busca mostrar os problemas das redes sem fio nos três âmbitos de segurança, confidencialidade, integridade e disponibilidade, e fornecer informações, para que o usuário possa reduzir os ricos de uma invasão e vulnerabilidade de seus dados. (DUARTE, 2003) Atualmente na cidade de Pontes e Lacerda, pode-se notar que de alguns pontos, muitas redes são detectadas pela antena sem fio usando um computador portátil. Surgiu diante disso a ideia de desenvolver um mapeamento de diversos pontos da cidade, assim fazendo um levantamento atual da situação das redes wireless e do nível de preocupação que as empresas têm. Assim, será apresentada a pesquisa realizada, será feito uma varredura em busca de redes sem fio em diversos pontos da cidade, com o objetivo de analisar padrões de segurança sem fio utilizado atualmente pelas empresas e usuários domésticos, enfim, qualquer rede detectada. (SYMANTEC, 2003) 2.0 Como funcionam as redes wireless As redes sem fio cresceram muito nos últimos anos, pois com ela é possível montar uma infraestrutura de rede em um ambiente corporativo sem o uso de cabos e sem a necessidade de perfurar paredes. Muitas são as vantagens de usar uma rede sem fio, mais da mesma forma, algumas desvantagens também podem ser apresentadas no seu uso, como por exemplo, a diminuição do sinal pelo fato de ter que passar por obstáculos como uma parede e consequentemente a perda de desempenho da rede. A segurança neste caso é o que mais preocupa o gerente de uma rede, uma vez que o sinal pode ter capturado do lado de fora da instituição ou da residência. (SYMANTEC, 2003) Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Segundo a RNP, através da utilização de portadoras de radio ou infravermelho, as WLANS estabelecem a comunicação de dados entre os pontos da rede. Os dados são modulados na portadora de rádio e transmitidos através de ondas eletromagnéticas. Múltiplas portadoras de radio podem coexistir num mesmo meio, sem que uma interfira na outra. Para extrair os dados, o receptor sintoniza numa frequência especifica e rejeita as outras portadoras de frequência diferentes. (RNP, 2008) Os sinais de rádio se propagam por todos os espectros, para testar isso, basta ligar seu notebook e percorrer a cidade, vera que este sinal está em toda a parte. Esta é a proposta desse artigo, sair em busca de redes abertas e fechadas. As tecnologias de funcionamento em rede sem fios abrangem desde redes de voz e dados globais que permitem aos utilizadores estabelecerem ligações sem fio através de longas distâncias, ate tecnologias de luzes infravermelhas e frequências de radio optimizadas para ligações sem fio de curto alcance. Os dispositivos normalmente utilizados para o funcionamento em rede sem fios incluem computadores portáteis, computadores de secretária, computadores de mão, assistentes digitais pessoais (PDA, Personal digital assistant), telemóveis, computares com caneta e pagers. As tecnologias sem fios servem vários objetivos práticos. Por exemplo, os utilizadores móveis podem utilizar o telemóvel para acessar o correio eletrônico. Os viajantes com computadores portáteis podem ligar a internet através de terminais instalados em aeroportos, estações de cambio, entre outros locais públicos. Em casa, os utilizadores podem ligar os dispositivos ao computador de secretaria para sincronizar dados e transferir ficheiros. (TECHNET, 2008) Como podemos ver as WLANS são sinais de radio transmitidos a uma determinada frequência que podem ser capturados por qualquer receptor que use esta faixa. Sendo assim foram necessárias algumas modificações no projeto inicial de forma que pudesse ser inserida uma segurança adicional a este sinal. 3. Pesquisa Realizada 3.1 Conceitos A pesquisa teve como base de dados às redes sem fio detectadas na cidade de Pontes e Lacerda, estado de Mato Grosso, Brasil. A pesquisa foi desenvolvida usando a técnica conhecida como Wardriving. Trata-se de uma técnica conhecida, que consiste em percorrer uma cidade utilizando-se de um carro ou qualquer outro meio móvel em busca de redes sem fio, abertas (sem segurança) ou fechadas (com criptografia). A ideia focou-se em mapear a cidade de forma a identificar particularidades das redes wireless. (PETER M SHIPLEY, 1999) 3.2 Ferramentas utilizadas Para que a pesquisa pudesse ser realizada, foi necessário um computador pessoal (notebook) com uma interface wireless, alguns softwares e um carro para o deslocamento entre os pontos de coleta. (PETER M SHIPLEY, 1999) Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Computador utilizado foi um Notebook da marca Sansung, composto de um processador „I5‟, memória ram de 4 GB, interface de rede broadcom 802.11n Wireless Network Adapter, Sistema operacional utilizado foi o „Windows 7 x64. Muitas vezes somos questionados da existência de ferramentas que permitam detectar redes sem fios e formas de melhorar o sinal. Nesse sentido, devemos possuir ferramentas que nos permitam avaliar o local de ação. E também detectarmos a presença de outras redes ou outros equipamentos que operem nas mesmas gamas do Wifi e que possam vir a interferir com a nossa rede. Para detectar redes “alheias” existe o InSSIDer, semelhante ao popular Netstumbler, e que visa efetuar “site-surveys (avaliação no local)”. Fatores determinantes para a escolha do software: • Funciona em Windows 7 x64 • Usa uma API nativa do WIFI • Agrupa a informação por MAC Address, SSID , Canal, RSSI e “Time LastSeen” • Compatível com a maioria dos GPS (NMEA v.2.3 e superior) O inSSIDer é mais uma opção para que você tenha controle total e absoluto sobre o tráfego de dados que circulam em uma rede sem fio. O aplicativo faz gráficos com a força do sinal da conexão ao longo de uma timeline para simplificar a interpretação do usuário. Essas informações são a base para a identificação de problemas e, claro, a solução deles. Este utilitário faz uma varredura em busca das redes ao alcance de sua antena, capta a força do sinal em intervalos de tempo definidos e ainda determina o nível de segurança delas, inclusive se estão protegidas por senha. Comumente, muitos roteadores utilizam o mesmo canal, o que congestiona a rede e, consequentemente, deixa o sinal Wi-Fi fraco. O inSSIDer ajuda você a identificar exatamente esse tipo de problema. (PPLWARE, 2011) Fonte: http://www.baixaki.com.br/download/inssider.htm Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Figura 1.0 –Demonstrativo funçõesinSSIDer. O inSSIDer usa o aplicativo nativo para Wi-Fi e monitora a sua placa de rede, ou seja, não requer nenhum componente especial. Os resultados das análises são classificados por endereço MAC, SSID, canal, RSSI e Time LastSeen, ou seja, a última vez em que alguma conexão foi observada. (BAIXAKI, 2011) 3.3 Dados da interface O inSSIDer varre tanto sinais criptografados como não criptografados. Ele assinala aleatoriamente uma cor para cada ponto de acesso (PA). Essas cores são usadas para exibir a força do sinal de um PA, e quanto mais fortefor o sinal, maior a amplitude do gráfico. Pontos de acesso protegido/criptografados são grafados com linhas sólidas, enquanto conexões desprotegidas são representadas por linhas quebradas e pontos. (BAIXAKI, 2011) Fonte: http://www.baixaki.com.br/download/inssider.htm Figura 1.2 – Gráfico: força do sinal, e alcance da antena. 3.3 Coleta de dados Tão importante quando os equipamentos é a coleta das informações. A coleta foi feita em diversos pontos da cidade os quais serão expostos a seguir. Para que a coleta fosse feita nos pontos abaixo, o veiculo era estacionado e o computador pessoal colocado sobre ele. Os pontos de captura e seus respectivos endereções na cidade de Pontes e Lacerda, Mato Grosso, são: Ponto 01 –Rodoviária, Rua Três esquina com Av. São Paulo. Ponto 02 - Rancho Pirâmide, MT 246 esquina com Rua B. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Ponto 03 - Nossa lanchonete, MT 246 esquina com Rua Vera Lucia Ponto 04 - Minha Casa, Rua Vera Lúcia esquina com Av. Bahia Ponto 05 - Posto Texaco, MT 246 esquina com Rua Maranhão Ponto 06 - Posto Rondon, MT 246 esquina com Rua Cuiabá Ponto 07 - Dance Club, Rua Guaporé esquina com Av. José Martin Monteiro Ponto 08 - Rua Maranhão, esquina com Av. José Martins Monteiro Ponto 09 - Rua Sergipe, esquina com Av. Mato grosso Ponto 10 - Praça, Rua Vera Lúcia, esquina com Av. Marechal Rondon Ponto 11 - Honda, Av. Marechal Rondon, esquina com Rua AngeloGajardone Ponto 12 - Posto Iguaçu, Av. Marechal Rondon, esquina com Rua Um Ponto 13 - Posto São Paulo, Av. Marechal Rondon, esquina com Rua Cinco Ponto 14 - Fórum, Rua Cinco, esquina com Av. Paraná Ponto 15 - Posto Pratence, Av. Goiás, esquina com Av. Dois Ponto 16 - Campo mix, Av.Marechal Rondon, esquina com Av. Goiás Ponto 17 - Correio, Rua Vera Lúcia, esquina com Av. José Martins Monteiro Ponto 18 - Av. Florespina Azambuja, esquina com Av.Goiás Ponto 19 - Igreja Matriz, Av. Bom Jesus, esquina com Rua Pernambuco Ponto 20 – Vera Lucia, esquina com Av. Florespina Ponto 21 - Chácara Santa cruz, Av. doze, esquina com rua F Conforme descrito acima, estes são os pontos de coleta e os endereços. Com esta captura, pode-se dizer que a área urbana de maior movimento foi mapeada. Segue abaixo o mapa urbano da cidade, com os pontos de coleta indicados. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Fonte: Http://maps.google.com.br Figura 3.0 – Mapa da cidade de Pontes e Lacerda com os pontos de coleta de dados. É possível observar na figura acima os pontos que determinam o local da coleta dos dados. Pode-se dizer que 97% da área urbana faz parte dos números que serão apresentados no decorrer da pesquisa. Para determinar os pontos de coleta não foi usada nenhuma técnica de subdivisão de área. Foram percorridos os principais pontos de acesso à cidade, as ruas mais movimentadas e alguns pontos onde eventos importantes estão localizados. 3.4 Dados Coletados Como citado anteriormente, com a utilização do software inSSIDer, foi possível fazer a captura dos dados. Todos os 21 pontos de coleta, tiveram seus dados coletados, os dados foram dispostos na seguinte sequência. Mac Address, SSID, RSSI, Channel, Vendor,Privacy, Max Rate. Tabela 1: Classificação dos dados. (ARTHAS, 2004) Mac Address: Identificação do endereço MAC do equipamento Transmissor SSID: Identificação da rede, ou seja, nome dado a rede no momento de sua configuração. RSSI: (ReceivedSignalStrengthIndicator), ou seja, Indicador da força do sinal recebido. Channel: Canal que o transmissor esta utilizando. Vendor: Fabricante. Privacy: Security, Tipo de segurança utilizado. Max Rate: É a quantidade máxima de dados que o routerconsegue transmitir. É medida em megabits por segundo. Lembre-se que um megabyte equivale a oito megabits. 3.5 Análises dos dados Algumas análises puderam ser feitas em relação aos dados coletados. Inicialmente, procurou-se identificar as redes abertas, ou seja, as redes que não apresentaram nenhuma criptografia. Pode-se identificar que 51 das 165 redes capturadas, não apresentaram nenhum tipo de criptografia, ou seja, 30,90% estavam totalmente desprotegidas (ABERTAS). Inversamente a esta análise, faz-se uma análise gráfica, das Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação redes com criptografia, relacionado por ponto de coleta. Como temos 30,90% de redes abertas, teremos 69,1% de redes fechadas (PROTEGIDAS). Gráfico 01 – Redes Abertas x Redes Fechadas. 3.6 Redes com e sem criptografia x Ponto de Coleta O gráfico abaixo mostra com clareza e organização, quantidade de redes, abertas e fechadas, por ponto de coleta. Azul = Redes Abertas Preto = Redes Fechadas Gráfico 2 – Redes com e sem Criptografia x Ponto de Coleta Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Analisando o gráfico pode-se constatar que em alguns pontos, como por exemplo, 03, 07, 08, nenhuma rede aberto pode ser detectada. Observa-se que a grande parte das redes possui criptografia, em especial os pontos, 01, 10, 12, 20, com mais de 20 redes fechadas. Por conta das redes abertas, não se pode afirmar que estão acessíveis. Deve-se levar em conta também o fator SNR+ (Qualidade do sinal), ou seja, a relação entre o sinal e o ruído. (CALOS. E. M, 2009) Fazendo uma análise detalhada das redes de possível conexão, podemos obter números que caracterizam uma conexão estável entre os transmissores e o receptor nos pontos de coleta de dados. Abaixo, segue o gráfico representando o número de redes com possibilidade de troca de pacotes. Gráfico 03 – RSSI(Intensidade do Sinal) por ponto de coleta. Pode-se observar que uma grande parte das redes possibilita que pacotes sejam trocados, para entender melhor essa possibilidade, o gráfico a seguir exemplifica a intensidade do sinal x ruído: Fonte:http://under-linux.org/f105/o-que-e-rssi-121763/ Figura 3.4 – Indicador de força de sinal recebido Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Observando o gráfico nota-se que a parte verde e o sinal, e a parte vermelha e o ruído. Ex: Sinal 80 Ruido 10 SNR = Sinal - Ruido = 70 (Muito bom) Sinal 100 Ruido 80 SNR = Sinal - Ruido = 20 (ruim). (UNDER-LINUX, 2009) Dentre todas as redes capturadas, algumas se repetiram devido a intensidade e potência do transmissor. De todas as redes capturadas (165), cerca de 30% das redes apareceram no mínimo duas vezes em pontos diferentes de coleta. 4.0 Conclusão De acordo com a pesquisa realizada, verificamos que uma grande parte das redes apresentou segurança (Criptografia). Varias das redes capturadas apresentaram possibilidade de conexão, devido o sinal ser estável. Certamente o sinal poderia ser intensificado deslocando-se mais próximo a sua fonte de transmissão. Em relação à segurança das redes, posso afirmar que um número razoável de redes, está aberta, ou seja, cerca de 30,9% do total das redes. Observa-se, que essas redes abertas, podem estar associadas a usuários domésticos despreparados que instalaram os dispositivos por contra própria, sem o auxilio de um técnico. Já em relação às redes fechadas (Criptografadas), temos possibilidade de troca de pacotes. Segundo a pesquisa 61,90% das redes apresentam sinal capaz de possibilitar uma conexão, e uma possível transmissão de dados. Destas, todas possuem algum tipo de criptografia, oque impede a conexão. Para a pesquisa, ate as redes com baixa segurança (WEP) foram consideradas redes fechadas. Diante dos dados obtidos, pode-se se dizer que Pontes e Lacerda, possui uma estrutura de redes wireless confiáveis, podendo assim concluir que a maioria dos usuários e empresas, sabem dos riscos que estão correndo deixando suas redes desprotegidas ou com baixa segurança. Buscando assim conhecimento para configurar suas redes, aumentando a segurança e sigilo dos dados que são transmitidos, e trafegam por suas elas. Referências Bibliográficas BAIXAKI. Site de downloads diversos, Disponível em:<http://www.baixaki.com.br/download/inssider.htm>. Acesso em 29/04/2011 Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação CARLOS. E. M, Redes Wireless parte 5: Potencia de transmissão e alcance, Disponível em: <http://www.hardware.com.br/tutoriais/potencia-alcance-wireless/>, Acesso em: 29/04/2011 DUARTE, Luiz Otávio. Analise de Vulnerabilidades e Ataques Inerentes a Redes Sem Fio 802.11x. Trabalho de conclusão do curso de bacharel em Ciências da computação. UNESP São José do Rio Preto. 2003. Disponível em:<HTTP://www.apostilando.com/download.php?cod=230&categoria=Redes>Acesso em: 27/04/2011 GARTNER, Instituto de pesquisa, 2009. Disponível em:<http://www.gartner.com/technology/home.jsp> Acesso em 18/11/2010. 6.22 KAEL ARTHAS, Tutorial redes wireless, Disponível em: <http://www.babooforum.com.br/forum/index.php?/topic/269602tutorial-redes-wireless%26gt%3B%26gt%3Batualizado%26lt%3B%26lt%3B/> Acesso: 29/04/201 PETER M SHIPLEY, Wardriving, Disponível em:<http://www.dis.org/shipley/> Acesso em: 29/04/2011 PPLWARE, Como detectar redes sem fio, 2011. Disponível em: <http://pplware.sapo.pt/networking/inssider-1-2-5-como-detectar-redes-sem-fios/> Acesso em: 29/04/2011 RNP. Redes Wireless, Disponível <Http://www.mp.br/newsgen/9805/wireless.html> Acesso em 20/04/2011. em: SYMANTEC. Implementando Uma Lan Sem Fio Segura. 2003. Disponível em: <HTTP://www.symantec.com/region/br/enterprisesecurity/content/framework/BR_3074 .html>Acesso em: 29/04/2011 TECHNET. Tendencias Tecnológicas, Disponível em: <Http://technet2.microsoft.com/windowsserver/pt-pt/library/f2552467-f693-4c14-b4219cb2491bb362070.mspx?mfr+true>, Acessado em 20/04/2011. UNDER-LINUX. Portal Under-linux, Disponível em:<http://under-linux.org/f105/oque-e-rssi-121763/> Acesso: 30/04/2011 Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Referências Consultadas ACORDÃO TCU - 13-08-2008 - Tratamento inadequado à confidencialidade, integridade e disponibilidade das informações – Consultado em: 19/04/2011. DUARTE, Luiz Otávio. Analise de Vulnerabilidades e Ataques Inerentes a Redes Sem Fio 802.11x. Trabalho de conclusão do curso de bacharel em Ciências da computação. UNESP São José do Rio Preto. 2003. Disponível em:<HTTP://www.apostilando.com/download.php?cod=230&categoria=Redes>Acesso em: 21/04/2011 INACIO, Alexandre. Segurança de rede Wireless. 2010. <http://www.hintpc.com/2010/04/seguranca-de-rede-wireless.html> Disponível acesso em em: 22/04/2011 INFOWESTER. Redes sem fio. Disponível em: <http://www.infowester.com/wifi.php> Acesso em: 22/04/2011 KUROSE, James F.; ROSS, Keith W. Computer networking -A Top-Down Approach Featuringthe Internet, 3nd Edi., Addison Wesley Longman, 2005. RUFINO, Nelson Murilo de O, Segurança em Redes Sem Fio, Novatec2005. TANENBAUM, A. S.: “Redes de Computadores”,4.ed, Rio de Janeiro, Ed. Campus, 2003. TKOTZ, V. “Criptografia: Segredos embalados para Viagem”, São Paulo: Novatec Editora, 2005, p 27. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação BLENDER O SOFTWARE LIVRE COMPUTAÇÃO GRÁFICA Nelson de Queiroz Chagas Resumo: Software Blender, voltado para fazer ambientes em três dimensões.Destinados para profissionais: arquitetos,engenheiros, artistas gráficos e desenvolvedores.Vamos começar com a introdução quando começou a quais a suas características.Entrevista com especialista Cícero Moraes.Pesquisa sobre o Blender..Para quem gosta computação gráfica e claro o software livre.Essa é boa ferramenta para começar. INTRODUÇÃO Fonte: Apostila Cogitas3D Foi desenvolvido pelo Tom Roosendal, nos anos 90.Para quem conhece ele criou o NEO GEO.Um vídeo game que dominou o mercado de jogos eletrônicos.Empresa chamada NaN ( Not an Number ).No ano de 2002 NaN decretou estado de falência. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Surgiu o idéia de disponibilizar o código fonte do software. Muitos desenvolvedores ficaram interessados para que esse software não fosse esquecido com o tempo. Depois de certo tempo, os desenvolvedores conseguiram arrecadar fundos em torno de um montante cem mil euros. Conseguiram criar Blender Foundation. Uma empresa sem fins lucrativos, responsável por manter o Blender. Blender é um programa bastante conhecido no mundo dos artistas gráficos, a comunidade está cada vez mais adquirindo novos adeptos do software. “Parece que foi ontem que me maravilhei ao vislumbrar aquele monte de dinossauros correndo como loucos na tela da TV.O ano era 1993 e os dinossauros em questão faziam parte do filme Jurassic Park. Só muito tempo depois, conheci o 3D Max e o todo o seu poder,mas algo impedia que eu me rendesse completamente a ele: nem todos podiam possuí-lo.Como sempre, busquei o compartilhamento em vez da disputa,embrenhei-me na busca por uma solução que me permitisse trabalhar sem o temor de utilizar aplicações .Digamos...alternativas(entenda-se por piratas).A busca encerrou-se quando conheci o poderoso, o genial, o agora famoso e gratuito Blender 3D”( Cícero Moraes,p.3) DICAS PARA COMEÇAR COM BLENDER Existe tempo e dedicação por parte do usuário.Procure ler bastante livros,artigos, assistir vídeos explicativos.Buscar ajuda em comunidades espalhados na internet.Isso ajuda na compreensão do software. APROVEITA O TEMPO DISPONÍVEL COMEÇAR PRATICAR Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Outra dica muito importante, o usuário vai familiarizando com os comandos de teclados, assim chega o resultado mais rápido. Exemplos: rotacionar objetos, aumentar ou diminuir através de comandos de teclados.Figura abaixo mostra um comando para inserir um objeto. Fonte:Apostila Cogitas MODELAGEM EM 3D Blender trabalha com conjunto de ferramentas, você trabalha com um simples cubo,até o mais complexo.Exemplos: Arquitetônicos, personagens, desenhos e etc. DESENVOLVIMENTO Vem da sua imaginação modelar qualquer personagem,sejam mecânicos ou orgânicos, desde da produção criar pêlos, textura da pele, cabelo, ESCULPIR OBJETOS Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação eles Existem vários exemplos de esculpir. Com o tempo e dedicação o usuário pode detalhar o seu objeto. Exemplo: rosto,boca,olhos e etc. Fonte:forum.blenderpt.com/topic.php?id=387 ANIMAÇÃO Permite animações fantásticas, por exemplo, um movimento de um personagem. Criar um esqueleto e ter autonomia de cada parte do corpo.Um exemplo: Mexer a cabeça do personagem, abrir ou fechar os olhos etc. SIMULAÇÃO FÍSICA Um exemplo é a simulação de corpos.Muito animadores encontram dificuldade encontrar uma simulação perfeita. Veja alguns exemplos de simulação: gravidade, explosão de objetos, corpos rígidos,tecidos e líquido e colisão. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação PLATAFORMA DE DESENVOLVIMENTO DE JOGOS Trabalha com vários conjuntos de ambientes 3D em tempo real, o que possibilita o desenvolvimento de jogos.Para quem gosta está aí uma dica para desenvolvedores de jogos. Criar vários protótipos em ambientes três dimensões.Projetos arquitetônicos ultilizam esse recurso. Conta inclusive com a opção anaglífica para essas visualizações, ou seja, lançar mão de óculos 3D e ter maiores de profundidade em cenas.Movimentar no ambiente.Outros trabalhos que podem ser feitos com o auxílio dessa ferramenta são: simulações físicas em tempo real,permite o usuário interagir com o programa,visão de vários ângulos e passeios interativos. Fonte:http://www.blender.com.br/index.php?option=com_rsgallery2&page=inline&id=253&Ite mid=18 SPRIPTING Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Por meio da linguagem de programação chamado Python.Para determinar um objeto modificar um determinado tempo e etc. Exemplos: importar plantas do AutoCad ou outros aplicativos que trabalhavam com o arquivo chamado dxf:;importar,exportar arquivos para o 3D Studio Max ou outro aplicativo que utilize arquivos 3D e vários outros formatos.A vantagem do Blender ele reconhece os arquivos de outros do seus concorrentes. MULTIPLATAFORMA Trabalha com vários sistema operacionais, vários concorrentes não permitem esse recurso.Exemplo: Windows, Linux,Mac e Solaris. ATUALIZAÇÃO DO SOFTWARE Blender é atualizado em torno de seis meses, ou seja, os desenvolvedores estão acrescentando mais funções e recursos. Além do mais ele deixa o seu código para todos o que permite o usuário alterar e disponibilizar para comunidade.É ótimo o contato com vários usuários.Ajuda cada vez mais a divulgação do software. Ao contrário alguns software, o usuário precisa pagar para atualizar.Muitos utilizam meios para burlar esse processo. PESQUISA SOBRE O BLENDER Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Fonte: wille.blog.br Fonte: wille.blog.br Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Fonte: wille.blog.br * (NURBS) Non Uniform Rational Basis Spline é um modelo matemático usado regularmente em programas gráficos para gerar e representar curvas e superficies. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Fonte:wille.blog.br ENTREVISTA COM CÍCERO MORAES Ciceros Morais é design gráfico, mora na região na cidade de Sinop. Publicou uma revista Digital Workshop # 2: Blender (Editora Digerati) NELSON: O que influênciou a usar o Blender? MORAIS: Sempre me senti mal por utilizar programas alternativos e também não me apeteciam as facilidades que os programas comerciais ofereciam. Parecia tudo indigno e pouco profissional, sem contar que "piração na batatinha" quase não havia. Com o Blender era diferente, não tinha moleza e aprendê-lo era uma aventura a parte, pois nem documentação em português havia. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação NELSON:Quais as vantagens do Blender e as dificuldades o usuário pode encontrar ? MORAIS: As vantagens são a interoperabilidade, a leveza e o baixíssimo custo da implementação do Blender. As dificuldades são algumas incompatibilidades com ferramentas estabelecidas no mercado. NELSON: Poucos profissionais e amadores atuam na região de Mato Grosso.O que falta para divulgação do Blender na região ? MORAIS: Bem, não sei em relação ao Mato Grosso, mas em Sinop a maioria dos estúdios e produtoras utilizam o Blender. O que falta são entusiastas e prestadores de serviços profissionais que utiizam o Blender. NELSON: Que conselho você dá para o pessoal que está começando ? MORAIS: Estude poucos tópicos, mas com muita intensidade. Seja paciente e procure se divertir ao aprender. Só assim a ignorância vai dar lugar a sabedoria e ao domínio da ferramenta. CONCLUSÃO Vimos como o Blender é capaz de fazer trabalhos impressionantes. Pesquisas mostram, o iniciante precisa de tempo e dedicação para dominar bem.Existe alguns detalhes a serem melhorados.Por sorte existe profissionais buscando compartilhar seus conhecimentos para atender as necessidades.Usuário pode baixar o software sem pagar nada. Nunca desistir de acreditar no seu potencial.Essa ideologia trará o bem para si mesmo. REFERÊNCIAS Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação MORAIS,Cícero.Digital WorkShop,2008 SITE OFICIAL http://www.blender.org COMUNIDADE http://www.blender.com.br,2010,maio http://www.wille.blog.br, 2010, maio http://pt.wikipedia.org/wiki/Blender, 2010,maio O Sistema Operacional do Futuro Santos, Isabella Mariano. Estudante de Ciência da Computação – ICE Resumo Este artigo tem como interesse apontar diferenças, pontos negativos e positivos na obtenção de um novo sistema operacional que vem tomando espaço no mercado que é praticamente dominado pelo Windows e a Microsoft. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O artigo mostrará resumidamente o surgimento, o desenvolvimento e a situação que se encontra nos dias de hoje o Linux. Palavras Chave: Sistema Operacional, Software Livre, Linux VS Windows. Introdução O Linux é uma Plataforma de Sistemas Operacionais de código aberto, ou seja, qualquer pessoa que entenda de programação poderá modificá-lo para atender as suas necessidades ou pelo simples fato de se querer melhorar o software. Algumas pessoas ainda não têm conhecimento do Linux, de onde surgiu, como foi pensado, pois a falta de busca e de interesse delas atrapalham, de certa forma, o desenvolver desse sistema operacional. A origem O Unix é um sistema operacional que foi desenvolvido por Ken Thompson e Dennis Ritchie, baseado em linguagem C que foi também foi projetado por ambos. Ele é um sistema multiusuário e multitarefa que por assim se entende, um sistema no qual há mais de um usuário em execução (Multiusuário) e executa vários programas simultaneamente (Multitarefa), mesmo a máquina possuindo apenas um processador. Os comandos são todos por meio de Shell9, que interpreta o comando10 do usuário convertendo as chamadas, instruções, para o sistema operacional. O Linux 9 O Shell pode ser definido como o interpretador de instruções e comandos. Quando o usuário ou sistema executa qualquer comando, o Shell é responsável pela correta 'interpretação' deste. 10 Os comandos são instruções que os usuários digitam nos interpretadores do Sistema Operacional. O MS-DOS é um exemplo de interpretador baseado em comandos. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O Linux foi baseado na plataforma Minix, que é uma versão gratuita do Unix com o código fonte aberto. O nome Linux surgiu pela junção do nome de seu desenvolvedor, Linus Torvalds11 com a plataforma Unix/Minix. Linus não tinha a intenção de comercializar e ganhar lucros com o Linux, ele queria somente desenvolver um sistema operacional para o seu uso pessoal, que atendesse as suas necessidades, como diz o titulo de sua autobiografia “Just for Fun: The Story of an Accidental Revolutionary” (em português “Apenas por Diverção”: A história de um revolucionário acidental). Por esse motivo o Linux hoje é todo baseado em código aberto, usando a licença GPL (General Public License ou licença Geral Publica, em português), que permite a utilização de qualquer pessoa pelos programas que estão sobre ela, honrando o compromisso de não tornar o código fonte fechado e com fins lucrativos. Isso tudo serve para que todos os interessados possam melhorar o software, modificá-lo. Por fim o Linux também usa o GNU ( Pronuncia-se gui-noo), um sistema de software compatível com o Unix, porém não utiliza o seu código fonte. É um projeto que tem o objetivo de criar S.O. totalmente livre. O Kernel do Linux está dentro da licença GNU. Mas então por que o Windows ainda é o Sistema Operacional mais usado hoje? O Windows por ser um dos pioneiros no mercado obteve resultados mais rápidos e por assim dizer, desde sempre as pessoas usam o Windows. A sua interface gráfica realmente é um ponto muito positivo para que o Windows ainda esteja em grande maioria nas casas da população. É muito mais fácil, para algumas pessoas, ao invés de digitar 2 , 3 comandos no Linux, dar 20 cliques com o mouse no Windows. Por se um dos pioneiros a maioria dos programas criados são feitos para executar no Windows, mas como o Linux vem sendo muito usado, os desenvolvedores de programas estão modificando essa Idea. A falta de busca de informação e interesse das pessoas em relação ao Linux também é um dos grandes fatores de ele ainda ser pouco conhecido. 11 Linus Torvalds, Finlandês nascido em 28 de Dezembro de 1969, Engenheiro de Software. Desenvolvedor do Sistema Operacional Linux. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Ubuntu Desktop 10.4 - Fonte: Google Imagens Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Shell Script Ubunto - Fonte: Google Imagens O Ubunto desktop é para usuários que preferem a interface gráfica ao invés dos comandos vistos no Shell Script. Mas tanto no Linux quanto no Windows o usuário pode interagir com o sistema operacional tanto pelo modo desktop quanto pelo Shell do Linux ou o MS-DOS do Windows. Windows Seven (7) – Fonte: Google Imagens Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação MS-DOS – Windows Usar o Linux não nos impede de usarmos o Windows em casa, e nem é o objetivo aqui em questão, muito pelo contrário, os computadores hoje operam com mais de um Sistema Operacional, claro que não ao mesmo tempo, mas se pode usar o que se necessita ou agrada no momento em que se encontra. Vejamos então algumas diferenças entre o Linux e Windows: 7. O Linux é um sistema operacional Free. Seu código aberto proporciona a um programador modificá-lo, aprimorá-lo, melhorá-lo, para que um usuário comum possa usar sem alguma dificuldade. Isso também permite a correção de problemas com mais rapidez e eficiência melhorando sua performance, já que o Linux tem colaboradores em todos os cantos do país. Já o Windows tem seus próprios desenvolvedores e seu código fonte é bloqueado. 8. O Linux é totalmente grátis sendo a sua distribuição feita pela Internet. Há algumas versões em que você pode pagar para se ter um suporte ou a mídia em si, mas você poderá escolher qual atenderá melhor a sua Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação necessidade. Para se ter a versão básica do Windows 7 que seria o Windows Home Basic 7, sairia por no mínimo R$ 329,0012 e a licença expira anualmente tendo assim o usuário que pagar novamente pela licença. 9. O Linux geralmente reconhece os hardwares existentes na máquina sem a precisão de instalação de drivers. O Windows precisa de drivers de reconhecimento para a grande maioria dos hardwares instalados como placa de vídeo, som, rede, etc. 10. O Linux disponibiliza o OpenOffice ( no Brasil “BrOffice”) gratuitamente. Ele obtém todos os pacotes de setor administrativo que uma empresa necessita, como editores de textos e planilhas. O Windows disponibiliza o Microsoft Office Professional 2010 por R$ 1.399,00, e a licença expira anualmente tendo assim o usuário que pagar novamente pela licença. 11. Segurança: No Linux os programas não se auto executam e existem dois tipos de usuários: o root que seria um administrador igual ao Windows e os comuns, que não tem o controle absoluto da máquina, assim só poderão alterar a própria pasta, a pasta home. O sistema no geral é regido por permissões, ou seja, usuários comuns não podem alterar nada na raiz do sistema. Existem comentários que não há vírus para o Linux, pois o hacker‟s não tem o interesse de desenvolvê-lo, pelo simples fato do Linux ser free e pouco usado. Mas não é bem assim, os programadores que se disponibilizam a alterar o código fonte do Linux se encarregam de fazer um software com o mínimo de falhas ou brechas para que ele possa ser invadido, eles se empenham em fazer um Sistema Operacional em total perfeição. É claro que o Linux não é de total segurança, até porque para se ter qualquer sistema seguro é preciso que você tenha o total conhecimento e domínio. O Windows precisa de antivírus para proteger o sistema. Caso o usuário queira uma versão que tenha suporte e garantia, um bom antivírus sairia por mais 12 OBS: Todos os preços expostos nesse Artigo foi baseado na venda pelo site da Amazon (http://www.amazon.com/ ), podendo assim, sofrer alterações. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação ou menos R$ 120,50 conforme o nível de suporte e a licença a ser pago anualmente . O Linux devido a esses fatores é o software que vem mais se destacando, principalmente em empresas de grande porte, como o Banco do Brasil, por exemplo. Sua relação Custo x Beneficio, sua segurança, é o que mais pesa na hora de se escolher um servidor para empresa. O Linux também é usado em vários outros dispositivos como celulares, vídeo games, etc. O Linux no mercado Muitas fabricantes de computadores de mesa e notebooks ( CCE e o Positivo por exemplo ) estão aderindo o Linux como sistema operacional base. Isso faz com que o produto fique mais barato gerando assim uma renda maior para as fabricantes. Logicamente os consumidores vendo o produto com o seu preço mais acessível, compram. Alem do custo beneficio, o intuito é que com isso as pessoas reconheçam o software e passem a usar o Linux. Existem varias ramificações do Linux, porém, a mais usada é o Ubunto13 Desktop. Conclusão Por ser uma plataforma de sistemas operacionais em código aberto, o linux era usado por muitos programadores como meio de estudo. Hoje os programadores se tornaram colaboradores. Foi desenvolvido para atender as necessidades pessoais de seu criador e hoje os colaboradores modificam o software com o intuito de melhorar assim o seu desempenho, interface e utilidade. Tudo isso sem fins lucrativos em nível de mercado por ser baseado na plataforma GNU e usar a licença GPL. 13 Ubuntu é uma antiga palavra africana que significa algo como "Humanidade para os outros" ou ainda "Sou o que sou pelo que nós somos". Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O Windows ainda é o sistema operacional dominante, pois muitas pessoas usam a versão pirata em casa, ou seja, não precisam de licença para se ter instalado, mas também há o lado negativo de não se ter as atualizações de bugs e segurança que a licença paga disponibiliza. Para nos usuários é interessante que se tenha essa competição entre plataformas, pois isso disponibiliza mais opções de uso sem precisar ficar preso a um só S.O (Sistema Operacional). O site Noticia e Blog diz que “Com o lançamento da nova versão do Ubuntu sistema operacional baseado em Linux vemos que sistemas como estes podem sim dominar um mundo Windows tendo em vista que cada vez mais estes sistemas estão se tornando fáceis de utilizar e instalar, mesmo porque não é nem necessário instalar para utilizar o sistema basta apenas ter um CD ou DVD, com o S.O.” Muitas escolas, faculdades e inclusive empresas estão aderindo à plataforma Linux pelo fato de ele ser gratuito, ou seja, não precisa pagar licença para se ter instalado em sua máquina e por ser um Sistema Operacional de certa forma seguro, livre de vírus. Lembrando que pra se ter qualquer sistema seguro é preciso que você tenha o total conhecimento e domínio. Bibliografia Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação LEITÃO MENEZES, Diogo - Linux, porque não? http://www.vivaolinux.com.br/artigo/Linux-porque-nao. Acesso em 13/05/2011 COELHO, Eliab Venâncio. Ubunto - Manual do Iniciante. http://www.vivaolinux.com.br/artigo/Ubuntu-Manual-do-Iniciante/. Acesso em 13/05/2011 ESTANISLAU DA SILVA, Jefferson. Entendendo a estrutura do Linux. http://www.vivaolinux.com.br/artigo/Entendendo-a-estrutura-doLinux?pagina=1. Acesso em 13/05/2011 DUTRA C. JR. Djair. Esqueça tudo e venha para o Linux! http://www.vivaolinux.com.br/artigo/Esqueca-tudo-e-venha-para-oLinux?pagina=1. Acesso em 13/05/2011 LOURENÇO, João Ricardo. Sobre o Unix. http://jorl17.blogspot.com/2010/08/sobre-o-unix.html Acesso em 13/05/2011 Apostila sobre o Sistema Operacional Unix http://pt.scribd.com/doc/43557914/Sistema-Operacional-Unix. Acesso em 13/05/2011 PAES CORRÊA, Mauro. Apostila básica de instalação para o GNU/Linux. http://pt.scribd.com/doc/13333071/Apostila-Ubuntu-Instalacao-GPL. Acesso em 13/05/2011 VRGILIO, Jefferson. O que é Shell Script. http://www.vivaolinux.com.br/artigo/O-que-e-Shell-Script/. Acesso 22/05/2011 Microsoft Developer Network. http://msdn.microsoft.com/ptbr/library/ms752308.aspx. Acesso 22/05/2011 MOON, Peter. Especial para o Computerworld Entrevista com Linus Torvalds. http://computerworld.uol.com.br/negocios/2007/08/09/idgnoticia.2007-0808.5994055076/. Acesso 22/05/2011 Notícia e blog. http://www.noticiaeblog.com/2010/10/ubuntu-o-sistema-operacional-dofuturo.html. Acesso 22/05/2011 Os Robin Hood’s digitais Marcus Vinicius M. G. Alves Resumo Este artigo tenta fornecer uma visão educacional do submundo da pirataria de softwares, mais conhecido com Warez Scene. Pirataria de software é um assunto muito discutido hoje em dia, nesse mundo computadorizado em que vivemos onde qualquer pessoa pode baixar uma música sem pagar, devido às Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação ferramentas tecnológicas disponíveis, o que deixa as indústrias e corporações preocupadas com as suas margens de lucro, devido à obtenção ilegal de software. Palavras chaves: Pirataria, Software, Warez Scene. Introdução - Warez Scene Quando um usuário de internet faz uma busca em sites de pesquisa como Google ou Bing, sobre programas, músicas, filmes ou jogos, irá encontrar uma variedade de links para sites e alguns deles de download ilegal. O que já é de conhecimento geral a disponibilidade desses conteúdos online. O que nem todos sabem é da complexidade de processos pelos quais esses conteúdos ilegais conhecidos como “releases” passam antes de atingir as redes de compartilhamento. Como por exemplo, no dia 4 de setembro de 2007, o grupo “ARiSCO” liberou na internet o arquivo de vídeo Tropa.De.Elite.BRAZiLiAN.WORKPRiNT.XviD-ARiSCO, que estava disponível para download online em redes de chat como UseNet, IRC, eD2K e também em sites de serviços de compartilhamento como Megaupload, Rapidshare e em sites Bittorrents como ThePirateBay ou BTJunkie. Milhões de pessoas assistiram ao filme baixado da internet ou comprado de algum vendedor ambulante um mês antes do filme ir aos cinemas. Então quem são essas pessoas e o porquê eles disponibilizam programas, filmes, músicas e jogos de graça na internet e o que é Warez Scene? Desde o inicio Há muitos anos na década de 80, quando os computadores se tornaram acessíveis às pessoas, os programas da época eram passados de mãos em mãos, uma pessoa comprava o software e fazia subsequentes cópias em disquetes em seu Drive Floopy e distribuía para amigos e familiares. Claramente, isso não era um processo complicado, mas isso deixou claro para os desenvolvedores de programas que seus softwares deveriam ter algum tipo de proteção. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Assim o conceito de número serial ou código de instalação foi aplicado nos softwares pelos desenvolvedores. A maioria das pessoas está familiarizada com números seriais, que na verdade é uma combinação de números e letras que são usados como uma espécie de chave digital para destravar ou ativar um software. Em teoria, isto iria para a disseminação de softwares, restringindo sua instalação sem o devido código. No entanto, não demorou muito, após a proteção ser introduzida, que uma subcultura de Crackers fosse criada para lidar com esse obstáculo de liberar um software. Crackers são programadores com o conhecimento de reengenharia ou engenharia reversa, que é capacidade de compreender um sistema ou software de trás para frente e depois reprograma-los do jeito que bem entenderem, geralmente inutilizando os sistemas de segurança ou proteção de um software. Enquanto os Cracks iniciais eram nada mais do encontrar caminhos para burlar a proteção de um software, como fazer cópias antes da instalação ou simplesmente instalar arquivos direto para o computador, essa tentativa de desacelerar a distribuição de softwares de graça levou os desenvolvedores a criarem avançadas técnicas de proteção, como criptografar o algoritmo, ou seja, a codificação e a decodificação da informação, que no caso do algoritmo são as linhas de instruções de um software, e que somente o emissor e o receptor possam acessa-la. Na computação, as técnicas mais conhecidas envolvem o conceito de chaves, as chamadas chaves criptográficas. Trata-se de um conjunto de bits baseado em um determinado algoritmo capaz de codificar e de decodificar informações. Se o receptor da mensagem usar uma chave incompatível com a chave do emissor, não conseguirá extrair a informação. Essas chaves criptográficas possuem bits como a chave de 64 bits, chave de 128 bits e assim por diante. Esses valores expressam o tamanho de uma determinada chave. Quanto mais bits forem utilizados, mais segura será a criptografia. E também o Hardlock (Dongle), um dispositivo externo, que autoriza ou não o uso de determinado software em um Hardware, sem o hardlock, o software e hardware corretos não funcionariam. E qualquer tentativa de um Cracker invadir o software ou o hardlock ele irá se “alto destruir com algoritmos Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação inquebráveis” uma construção de caracteres e códigos de perguntas e respostas com mais de 280 trilhões de possibilidades que os computadores modernos levariam 10.125 anos para calcularem, pelo menos em teoria. O SentinelSuperPro o hardlock, mais seguro disponível, foi o sistema de segurança aplicado no software Autodesk 3D Studio MAX, e em apenas uma semana depois do lançamento o software havia sido crackeado. Então à medida que as técnicas de proteção avançam, os grupos de Cracker acompanham a evolução. E foi nessa época que a pirataria de software escolheu um nome um apelido: “Warez” obviamente relacionado com a palavra “softwares”, assim Warez se tornou uma gíria usada para descrever todo tipo de software obtido livremente através do submundo digital. A tecnologia ia avançando, os disquetes aumentando sua capacidade, e foi nessa época que a internet discada (dial-up) começou a se tornar popular e com ela o Bulletin Board System (BBS). BBS é um sistema de computador que permitia aos usuários conectar a outro computador com o mesmo sistema, através de uma linha telefônica e um modem, uma vez conectado, o usuário poderia trocar mensagens, ler noticias, salas de bate papo e fazer upload ou download de softwares e arquivos quaisquer ou simplesmente espiar o computador de outra pessoa. Agora, ao invés de contar com amigo para conseguir uma cópia do jogo da moda, só teria que conectar seu BBS e baixar o jogo da Warez. Eventualmente, o BBS evoluiria para internet que nós conhecemos hoje, entretanto esse desenvolvimento trouxe uma nova onda de ameaças aos produtores de softwares. Os usuários não mais precisavam do BBS para conectar a um outro computador remoto para baixar softwares. Ao invés disso, eles simplesmente usavam a internet através do provedor de acesso (ISP) para acessar um computador remoto, porém essa liberdade durou pouco até invenção do CD-ROM um forte golpe na “indústria pirata”, pelo menos, foi o que pareceu. O maior problema que os desenvolvedores antes do CDs, eram a limitação dos seus softwares. Por exemplo, o Windows 95 usava 30 disquetes para ser armazenado o que era muito caro produzir. No entanto, com o CDs e o aumento da capacidade, os programas iam ficando cada vez maiores Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação reduzindo assim a facilidade com que os softwares eram disseminados, imaginem o tempo que levaria baixar um software de 700MB com uma conexão discada de 12 ou 28k, simplesmente irritante, forçando assim o usuário a adquirir o CD com o software legalmente. Eventualmente, os Leitores/Gravadores de CDs e DVDs se tornariam popular, facilitando as copias ilegais de softwares, jogos, musicas e filmes, que eram/são vendidos por ambulantes nas ruas em países em desenvolvimento. Atualmente, pirataria de softwares (todo e qualquer conteúdo digital) tomou um novo rumo, e aparenta não ter um fim a vista, graças as conexões de internet atuais que podem trafegar programas, músicas, filmes, jogos em minutos e a criação de programas peer-to-peer (eMule, uTorrent, Limewire e outros) que compartilham arquivos entre os usuários tão fácil quanto selecionar e clicar, assim qualquer um pode baixar a ultima versão do Photoshop ou lançamento em DVD de algum filme e adicionar a sua coleção de arquivos, de graça. E nessa guerra entre desenvolvedores e piratas quem sai ganhando é tecnologia que vem avançando a passos largos desde então. A ironia Warez “Warez Scene” também conhecido com “The Scene” é um submundo digital onde hackers, crackers, simpatizantes e curiosos quebram leis e regras do mundo real, e o engraçado é que eles também possuem suas próprias normas e regras para governar o caos na qual toda “indústria Warez” funciona. A figura 1 mostra hierarquia do mundo Warez, no topo da imagem temos “Releases Groups” como DiAMOND, RELoADED, Razor 1911, LOL, CTU, FQM, ARiSCO e outros. Esses grupos são a essência do mundo Warez e são eles que pirateiam programas, jogos, músicas e filmes e compartilham entre a comunidade em uma competição de quem é o melhor e mais rápido. Cada grupo possui uma especialidade como grupos de músicas (MP3), filmes (XviD), e a mais Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Figura 4 http://en.wikipedia.org/wiki/File:Warez.png respeitada as de programas e jogos (Cracking). Esses grupos odeiam Bittorrents e similares peer-to-peer, porque tais programas expõem seus IPs ao público e organizações antipirataria, colocando os em grande risco. Assim por não usarem esses meios de compartilhamento, mantêm longevidade, descrição e o constante abastecimento da Warez. Esses grupos formam a “The Scene” que não possui liderança central, localização ou qualquer outra distinção que defina sua existência, mas algumas normas gerais de procedimento são aplicadas globalmente, considerando o histórico de usos e termos da comunidade, foram criadas regras que os grupos devem seguir para liberar seus “releases” piratas. The Scene é uma comunidade fechada que tenta se manter escondida devido a natureza das suas atividades então se pergunta como esses “releases” piratas chegam a redes Bittorrents, eD2K e sites de compartilhamento? The Scene cresceu tanto que os próprios membros anonimamente vazam arquivos para o público, e que quando descobertos são banidos da comunidade. Logo em seguida na hierarquia temos “Topsites” que são na verdade servers FTP (File Transfer Protocol: protocolo de transferência usado para copiar um arquivo de servidor para outro) conectados em alta velocidade de no mínimo 100mbit até 1gbit. O FTP aliado ao uso de protocolos de segurança como SSL (Secure Sockets Layers) torna muito, muito difícil alguém espiar em um Server FTP. Grupos Scene usam FTP servers também conhecido com Topsites ou Scene Sites para trocar “releases” entre eles. E é aqui, que entram os “Couriers” que também são chamados de “racers” ou “traders”, eles são usuários “confiáveis” dos sites FTP‟s, que possuem a função de trocar “releases” de um site FTP para outro site FTP. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Todo site FTP tem certa seções de acordo os grupos Scene especializados e do desejo do dono do Server (TV-XVID, TV-X264, DVDR, XVID, X264, APPS, GAMES, XBOX360, WII). Estas são seções básicas mais importantes, outros sites FTP possuem seções estrangeiras como Francês, Alemão, Espanhol, Português e etc, dependem da nacionalidade e das necessidades do site FTP. E todas as seções possuem regras, que são para manter a consistência e ignorar spam, vírus e outras pragas virtuais. As regras são criadas pelos donos de sites FTP e aprovadas pelos grupos Scene na intenção de manter um certo padrão de qualidade. Tais regras como de filmes XviD: Todos Rips (copias) de filme devem ter 700MB (1CD) ou 1,37GB (2CDs) e algumas configurações de Rip. Se um grupo Scene não seguir essas regras o “releases” do grupo ganharam o status de “nuked”. É como se fosse uma nota baixa na universidade se tiver muitas notas baixas, quer dizer que não é um aluno muito esperto. Por isso, um grupo não quer muitos “nukes” associados ao seu nome, o que destrói sua reputação e são barrados nos melhores sites FTP. Em seguida na hierarquia vêm os “Sites” ou “Dumps” que são sites e blogs de filmes, músicas, programas ou jogos que lucram com cada clique em seus links para sites de compartilhamento como Fileserve, Hotfile, Depositfiles e etc. E por ultimo na hierarquia os “Leechers” que são os usuários finais pessoas que baixam dos sites blogs, Bittorrents, peer-to-peer, arquivos os quais deveriam pagar para possuírem. E muitos não têm a noção do caminho percorrido pelo arquivo ou conteúdo no qual baixou. Robin Hood’s Eles possuem duas vidas em uma eles têm famílias, pais, esposas, filhos, trabalhão empregos comuns e vão ao supermercado, escola, shopping, cinema, levam uma vida normal aos padrões da sociedade, mas na outra vida, atrás de um computador conectado na rede mundial de computadores eles são crackers, couriers, colecionadores, simpatizantes e juntos eles criaram um Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação mundo onde pirateiam softwares, jogos, filmes, músicas. E porque eles fazem isso? Diversão? Hobby? Dinheiro? “Dinheiro nunca é uma moeda de troca em nossos fóruns”, diz California Red, membro de um grupo Warez Scene, em um dialogo no chat IRC (Internet Relay Chat) um protocolo de comunicação utilizado para bate papo e troca de arquivos. “Nós estamos do lado que não lucra na corrente Warez”, declara TAG (The Analog Guy) outro membro do grupo. “É uma troca, você da algo que tenha, e pega algo que você precisa, dinheiro não é necessário”, diz Clickety mais um membro do grupo. “Não estamos nessa por dinheiro, eu nunca venderia algo que peguei da Warez” acrescenta California Red, “Nunca fiz um centavo” diz Mad Hatter líder do grupo. “Warez crackers, couriers e colecionadores não fazem da pirataria um meio de sustento de vida, eles pirateiam porque eles podem porque quanto mais difícil, mais trabalhoso, mais complicado os números seriais e sistemas contra cópias, mais divertido fica”, assume Phill, um investigador técnico, que passa o dia disfarçado na internet caçando piratas. Phill colabora com as organizações antipirataria e o FBI, em operações como “Operation Buccaneer” na qual foram feitas mais de 70 buscas e apreensões em 12 países, incluindo incursões nos Estados Unidos, Grã Bretanha, Finlândia, Noruega, Suécia e com mais de 65 pessoas presas. A investigação acusou o britânico Hew Raymond Griffiths de pirataria, conhecido como “Bandido” líder do grupo DrinkOrDie (DoD) um dos maiores e mais importantes grupo da Warez Scene, após 3 anos preso na Austrália ele foi extraditado para EUA. “Griffiths, achava estar além do alcance da lei do EUA”, disse assistente da procuradoria geral Alice Fischer. “Nossos agentes e promotores estão trabalhando incansavelmente para prender esses ladrões de propriedade intelectual mesmo quando seus crimes transcendem os limites das fronteiras internacionais”, disse o procurador americano Chuck Rosenberg. A corte judicial declarou que o desmantelado grupo DrinkOrDie, foi estimado ter reproduzido e distribuído ilegalmente mais de $50 milhões em produtos piratas incluindo programas, jogos, filmes e músicas. Entretanto não foi provado que qualquer um dos membros houvesse lucrado com suas Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação atividades, de fato em seus julgamentos alegaram em defesa não estar envolvidos com pirataria para fazer dinheiro, mas se viam como uma espécie de Robin Hood‟s modernos, roubando dos ricos e dando aos pobres. Conclusão Este artigo descreveu como cada aplicação como programas, jogos ou filmes se tornam Warez. O que não é um simples e desorganizado “hobby” que sucessivamente fornece software de graça para o mundo. O processo que a Warez faz para liberar um software, precisa de talento e habilidades que a maioria das pessoas desconhece, e muito menos entende. Enquanto a disseminação da Warez parece um problema solúvel, o que até agora não foi provado verdadeiro. A solução não é marginalizar aqueles que fazem download ilegal, ou busca e apreensões policiais tentando criar uma atmosfera de medo como às organizações antipirataria tentam legalizar. A resposta seria encontrar um meio ou simples ideia que derrote a verdadeira natureza Warez. Por exemplo, se todas as companhias desenvolvedoras de software fornecessem seus programas de graça, a Warez não seria mais necessária. Obviamente, não é uma ideia realista e possível, no tempo em que vivemos devido à maneira convencional de como pensamos. Apesar dos esforços de governos e corporações contra pirataria, as pessoas continuam querendo seus softwares, músicas, filmes e farão o que puderem para conseguir. Se uma pessoa comete um crime ela é uma criminosa e quando milhões de pessoas cometem um crime? Tem alguma coisa errada. Veja um exemplo histórico à proibição do álcool no EUA, em vez das pessoas pararem de beber álcool aconteceu o reverso, o resultado foi uma disseminação do álcool, que eventualmente levado pela aceitação popular a lei foi mudada. Será esse um possível final para Warez? Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Referências Warez War, David McCandlees. Disponível em: http://www.wired.com/wired/archive/5.04/ff_warez.html?topic=&topic_set Scene History, Defacto2. Disponível em: http://www.defacto2.net/legacy/df2web99/scene-archive/history.html What is a Dongle?, WiswGeek. Disponível em: http://www.wisegeek.com/what-is-a-dongle.htm Criptografia, InfoWester. Disponível em: http://www.infowester.com/criptografia.php BBS – Bulletin Board System, Fazendoacontecer.net. Disponível em: http://fazendoacontecer.net/2009/07/17/lembrancas-que-o-google-nao-apagou-bbsbulletin-board-system/ The Shadow Internet, Jeff Howe. Disponível em: http://www.wired.com/wired/archive/13.01/topsite.html?pg=1&topic=topsite&topic_set Warez Leader Faces 10 Years in Jail, Torrentfreak. Disponível em: http://torrentfreak.com/warez-leader-faces-10-years-in-jail/ Operation Buccanner, Computer Crime & Intellectual Property Section, United States Department of Justice. Disponível em: http://www.justice.gov/criminal/cybercrime/ob/OBMain.htm WarezFAQ. Disponível em: Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação http://www.warezfaq.com/first.htm Redes P2P no Compartilhamento de Conteúdos Relacionado ao Torrent Giselle Marlia Pereira1 1 2 Centro Universitário Candido Rondon (UNIRONDON) Caixa Postal 78 – Cuiabá – MT – Brasil Departamento de Ciencias da Computação – UNIRONDON Caixa Postal – Cuiabá – MT – Brasil {giselle.cba}@hotmail.com Abstract. Due to the new generation of infrastructure for communication, scientists have changed the way they create, manage and conduct experiments, thus also come into existence a new way to share data and collaborate with each other. The intention of this paper is to show that social networks peer-topeer networks can be formed, provided opportunities for collaboration (eg, projects, jobs, studies, among others), but will have to obtain publication in a collaborative environment. Moreover, one of the beauties is to illustrate how the transfer is made from sharing content related the Torrent. Resumo. Devido à nova geração de infraestrutura para comunicação, cientistas têm modificado a maneira de criar, conduzir e administrar experimentos, portanto passar a existir também uma nova maneira de compartilharem dados e colaborar uns com os outros. A intenção deste artigo é mostrar que as redes sociais peer-to-peer podem ser formadas, desde que oportunidades de colaboração (por exemplo, projetos, trabalhos, estudos, entre outros), porém terá que obter publicação em um ambiente colaborativo. Além disto, um dos pontos primores é ilustrar como é feita à transferência do compartilhamento de conteúdo relacionado ao Torrent. 1. Introdução No momento que a infraestruturas surgiu na computação e comunição, pode se notar uma maior facilidade no compartilhamento e colaboraração mútuas de dados. O presente artigo se baseia em um estudo que tem a finalidade de se tornar um documento colaborativo, pois nomalmente há um intersse em comum, com consequência ocorrerá uma formação de uma rede social peer-to-peer, onde os participantes podem compartilhar recursos, com o intuito de transformar a rede em uma entidade computacional fornecendo um acesso transparente aos recursos compartilhados entre varios membros da mesma rede social. Segundo Farroq et al.(2009) aborda que tais infraestruturas computacionais, então, executam algoritmos, computando e produzindo uma quantidade massiva de dados. Além disso, a colaboração entre membros de uma comunidade científica tem sido feita por meio de bibliotecas digitais, que são mantidas por colaborativos. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O gerenciamento e a transparência de acesso aos recursos Mattoso et al (2008) menciona que em um ambiente altamente distribuído, com uma boa relação custo/desempenho, é um problema difícil, uma vez que faltam técnicas de computação distribuída que atenda os requisitos. Porém existem algumas infraestruturas distribuídas com uma grande capacidade computacional, contudo elas apresentam algumas desvantagens relacionadas à implantação ou até mesmo o uso dos recursos compartilhados. No entanto, os problemas envolventes não têm correlação necessariamente a estes tipos de infraestruturas, e sim, na forma de como se compartilham esses recursos. Este artigo demonstra o uso de redes peer-to-peer como infraestrutura computacional, além de mostrar o funcionamento de um torrent (a estrutura responsável pelo compartilhamento dos peers), apontar um algoritmo para a implementação de um torrent na forma de compartilharem conteúdos em um sistema distribuído, devido aos diversos benefícios oferecidos por esse tipo de sistema. Os seguintes benefícios podem ser citados: Compartilhamento do custo operacional da infraestrutura de computação; Aumento da oferta de recursos em sistemas de computação distribuída; Agregação e interoperabilidade de recursos entre sistemas heterogêneos; Colaboração na execução de tarefas complexas, como a manipulação de grandes quantidades de dados entre as entidades componentes do sistema distribuído. 2. Computação peer-to-peer Com o aparecimento das aplicações do compartilhamento de arquivos como Gnutella (2009), onde o seu modelo de peer-to-peer (P2P) teve uma visao pelas comunidades científicas como uma alternativa ao modelo de computação clinete-servidor. Ao contrario do modelo de computação cliente-servidor, onde os serviços e recursos computacionais (potência computacional, dados e banda de comunicação) são ofertados por uma única entidade, onde este modelo de computação permite que serviços e recursos computacionais sejam ofertados por um número muito grande de entidades, que são chamadas de peers, ou seja, se algum usuário desconectar em vez de ocorrer a interropção do recurso que esta sendo enviado, inicia-se uma varredura para encontra outro usuario (peer) contendo o mesmo arquivo, assim o usuario que esta fazer o dowload. Tais afirmações baseiam-se em algumas propriedades encontradas em sistemas P2P, a saber: descentralização, escalabilidade, balanceamento de carga, manutenção dinâmica, tolerância à falha e autoestabilização como Milojicic et al. (2002) menciona em seu modelo computação distribuída. Neste sentido, podemos entender que este modelo de computação não possui qualquer controle centralizado ou organização hierárquica, e que todos os peers do sistema distribuído têm as mesmas capacidades. Com isso podem em qualquer momento iniciar uma sessão de comunicação com o outro peer, a fim de trocar dados e acessar serviços na rede social. Como qualquer outro modelo de computação distribuída, este modelo possui características próprias. De acordo com Milojicic et al. (2002), as características são: Compartilhamento de custo: sistemas cliente-servidor servem a muitos usuários simultaneamente. Neste caso, os recursos ofertados em um servidor são compartilhados para todos os usuários que tiram proveito deles. Entretanto, à medida que a quantidade Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação de usuários cresce, deve-se aumentar proporcionalmente a oferta de recursos. Caso esta disponibilidade não seja satisfatória em relação ao crescimento de usuários, o sistema terá problemas de escalabilidade. Desta forma, quando o custo para escalar um sistema torna-se muito alto, o modelo de computação P2P pode ajudar a espalhá-lo sobre os peers de um sistema. Escalabilidade: com a perda de uma autoridade central, os peers formam uma estrutura onde cada um deles compartilha recursos com os demais integrantes. Com isso, à medida que mais destes se conectam uns aos outros, a disponibilidade de recursos aumenta. Dessa forma, um sistema distribuído não depende do compartilhamento de recursos de uma única entidade, e sim, de um conjunto amplo destas mesmas com autonomia para compartilhar recursos entre elas. Agregação de recursos: uma abordagem descentralizada proporciona naturalmente a agregação de recursos. Aplicações que se beneficiam de uma quantia enorme destes, como plataformas para simulação de sistemas ou sistemas de arquivos distribuídos, naturalmente necessitam de uma estrutura que agregue suficientemente tais recursos para resolução de problemas complexos. Autonomia: em muitos casos, usuários de um sistema distribuído não confiam em qualquer fornecedor de serviços centralizados, pois eles preferem que todos os seus dados e trabalhos sejam realizados localmente. Sistemas P2P apóiam esse nível de autonomia, pelo fato do dispositivo computacional fazer todo o trabalho para o seu usuário. Anonimato e privacidade: o usuário pode não querer qualquer um ou algum fornecedor de serviços. Com um servidor central, é difícil assegurar isso, pois tipicamente estes identificam os clientes que estão conectados a eles. Por meio de uma estrutura P2P, as atividades são realizadas localmente e, se quiserem, os usuários poderão fornecer suas informações para os demais. Dinamismo: sistemas P2P são altamente dinâmicos. Quando uma aplicação é planejada para um ambiente com tal característica, deve ser levada em consideração a freqüência de entrada e saída de peers, pois a disponibilidade de recursos e serviços pode variar com isso. Consequentemente, estes sistemas devem se adaptar às mudanças ocorridas em sua estrutura e, por isso, devem ser capazes de redistribuir tarefas para peers ativos e que possam processá-las, para assegurar que uma requisição para utilização de um serviço ou recurso não seja perdida, quando algum deste se desconectar. Comunicação ad-hoc e colaboração: sistemas P2P ajustam-se melhor do que sistemas cliente-servidor em ambientes onde as conexões e desconexões de participantes são constantes, porque eles levam em consideração as mudanças em sua infraestrutura, uma vez que esta não é estável. Dessa forma, um peer conecta-se espontaneamente em qualquer outro e, a partir disso, eles passam a colaborar com o sistema, entregando mensagens para seus destinatários ou, se for necessário, enviando mensagens para outros que conheçam os destinatários delas. Segundo Tanenbaum e Van Steen (2007) os modelos de arquitetura da computação P2P os peers que constituem o sistema são todos iguais, isto é, as funções que precisam ser realizadas no sistema distribuído estão presentes em todos os peers do sistema. Como conseqüência, grande parte da interação entre estes é simétrica, ou seja, cada um deles age como um cliente e um servidor ao mesmo tempo. Dado este comportamento, arquiteturas deste sistema desenvolvem-se em torno da questão de como organizar uma rede de sobreposição. Na literatura, existem dois tipos destas redes, aquelas que são organizadas de maneira estruturada e outras que são organizadas de maneira não estruturada. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Os sistemas P2P criados a partir de redes de sobreposição estruturadas utilizam algum procedimento para estruturação lógica dos peers, destes formam uma estrutura que respeita algum tipo de topologia. De acordo com Risson e Moors (2004), as principais topologias para sistemas estes sistemas são: Plaxton Tree, Anel, Borboleta, Torus e de Bruijn Graph. Com base nisto, algoritmos são construídos a fim de formar uma rede de sobreposição, localizar elementos nestas e rotear mensagens entre os diversos peers constituintes de tal estrutura. Figura 1: Rede de sobreposição baseada em superpeers. (Fonte: Semenov, 2005). De acordo com Semenov (2005) os sistemas criados a partir de redes de sobreposição não estruturadas dependem, em grande parte, de algoritmos aleatórios para construção desta rede e, por isso, essas mesmas são parecidas com grafos aleatórios demostrada na Figura 1. Desta forma, cada peer mantém uma lista com seus vizinhos, na qual, de preferência, cada um deles representa um dispositivo ativo escolhido aleatoriamente no conjunto de dispositivos conectados ao sistema. A razão disto é simples: como não existe nenhum modo determinístico para rotear uma requisição de consulta até um item de dado específico, a única técnica à qual um peer pode recorrer é enviar a requisição para todos os outros. Por isso, muitos sistemas P2P não estruturados usam peers especiais, com objetivo de manter um índice de dados ou atuar como intermediários. Tais peers são denominados superpeers e são organizados de forma hierárquica. 2.1 Compartilhamentos de conteúdos em relação ao Torrent Atualmente podemos afirmar que o BitTorrent é uma das aplicações mais populares para compartilhamento de arquivos, utiliza um mecanismo centralizado para gerenciar a descarga dos arquivos realizadas pelos participantes do sistema. Segundo Cohen (2003) o mecanismo de incentivo, estes participante compartilham dados somente com os parceiros que também tenham interesse em compartilhar, assim, um deles conseguirá boas parcerias e receberá os dados desejados, somente se atuar de forma altruísta e como um bom parceiro. Os participantes do sistema com altas taxas de envio de dados, provavelmente, conseguem mais recursos, realizando descargas de arquivos mais rápidas. A velocidade de descarga poderá ser reduzida caso o participante limite sua capacidade de compartilhamento. Esse mecanismo também assegura que um arquivo se espalhe mais rapidamente entre os participantes da rede do BitTorrent. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Baseado em Cohen (2003) a infraestrutura desta rede denominada “enxames” (do inglês swarms) de peers, que trocam diretamente entre si blocos de arquivos mais que são coordenados por um peer centro, que denomina-se tracker. Cada usuário que deseja obter o arquivo da rede P2P se conecta a esse participante para obter informações a respeito da rede. Supondo que um usuário interessado em disponibilizar um conteúdo para ser compartilhado, precisa preparar um arquivo (denominado torrent) que contém as propriedades a serem disponibilizadas e o endereço do tracker responsável pelo exame. Assim a busca e a recuperação do torrent é feita externamente à rede BitTorrent em si (utilizando normalmente motores de busca na web), contudo o usuário fornece-o ao software cliente, que se conecta ao tracker e este responde com uma lista aleatória de peers presente no enxame e que portanto estão interessados no mesmo conteúdo além de o estarem distribuindo. O peer requisitante então contata múltiplos usuários dessa lista, solicitando blocos do conteúdo desejado. Conforme o BiTtorrent (2011) na Figura 2 ilustrada abaixo mostra a infraestrutura do enxame, onde o elemento central representa o tracker deste, e a ele se conectam até varias centenas de peers que trocam dados entre si. Podemos notar que não há apenas um único ponto central, mas sim um número de arbitrário de trackers espalhados pela internet e que dividem a responsabilidade por milhares de torrents. Inclusive, um arquivo torrent pode especificar mais de um tracker responsável pela distribuição do conteúdo, apesar do gerenciamento ser caracterizado como um oversalay não-estruturado. Figura 2: Exemplo de busca e recuperação de conteúdos em redes Napster & BiTtorrent. (Fonte: BiTtorrent, 2011). 3. Ilustração do compartilhamento de conteúdos relacionado ao “Torrent” Baseando nas afirmações de Gonçalves (2010), além da forma do funcionamento de um torrent apresentado no capitulo anterior, segue abaixo uma ilustração de alguns algoritmos para a implementação do mesmo, onde será apresentada a fase de distribuição dos dados passo a passo e a utilidade de cada um dos algoritmos. Para iniciar a transferência de conteúdo em uma rede peer-to-peer, Gonçalves (2010) relata que os usuários de cada membro de uma mesma sociedade peer-to-peer, que já tenham compartilhado parte dos espaços livres dos discos rígidos dos seus computadores, é possível assim armazenar o conteúdo na rede social, contudo quando este usuário desejar armazenar um conteúdo em uma rede o mesmo deve requerer espaços para tal fim. Após ele selecionar o conteúdo que deseja compartilhar, será enviado um pedido de hospedagem para que aqueles membros donos do compartilhamento capazes de manter o conteúdo compartilhado. Para isto, é necessário que o usuário escolha uma rede social P2P, e de Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação requerer espaços de armazenamento para o conteúdo a ser compartilhado. Segue abaixo na Figura 3 modelo desta abordagem conceitual do armazenamento e logo em seguida segue na Figura 4 algoritmo responsável pela solicitação de armazenamento do conteúdo que será alocado no disco rígido. Figura 3: Modelagem conceitual do armazenamento de conteúdo. (Fonte: Gonçalves, 2010). Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Figura 4: Solicitação de espaço de armazenamento de conteúdo. (Fonte: Gonçalves, 2010). Menciona Gonçalves (2010), posteriormente que a rede social tenha sido escolhida, deverá ser enviado uma requisição para espaço de armazenamento de conteúdo, desde que exista pelo menos um membro que tenha compartilhado o espaço no disco para acolher o mesmo. Em seguida ocorre uma adição de cessão de uso que é recebida por cada um dos peers dos membros da rede social, a cessão de uso de espaço é registrada no compartilhamento relacionado para atualização. Se não houver esta cessão, o algoritmo tem sua execução interrompida, caso contrário é feito uma nova verificação. Desta vez, é verificado se existe o compartilhamento de hardware na informação de contexto da rede social. Se falso, o algoritmo para sua execução. Se verdadeiro, o compartilhamento de hardware é recuperado e, em seguida, a cessão de uso de espaço é adicionada. Abaixo nas Figuras 5 e 6 segue dois algoritmos mostrando minuciosamente a seção de alocação do espaço a ser armazenado no disco rígido e como é feita a parte de atualização do disco para que paralise o envio do conteúdo e passe assim a outro hardware. Figura 5: Alocação de espaço para armazenamento em compartilhamento de disco. (Fonte: Gonçalves, 2010). Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Figura 6: Atualização de compartilhamento de disco com espaço cedido para armazenamento do conteúdo. (Fonte: Gonçalves, 2010). Entretanto Gonçalves (2010) refere-se depois da finalização da alocação no compartilhamento, a transferência do conteúdo deve ser iniciada o que esta ilustrada na Figura 7, de modo que cada parte deste possa ser copiada e armazenada no espaço compartilhado, dando início à transferência de conteúdo. Embora a solicitação de armazenamento parta de um único usuário, o algoritmo de transferência de conteúdo pode se dar em outras ocasiões em que seja necessária essa transferência entre os peers. Posteriormente realizada o inicio da transferência, inicia-se a distribuição de conteúdo ilustrada na Figura 8 é realizada através dos número de partes de um conteúdo é calculado por meio da seguinte função, onde tmnCntd é o tamanho do conteúdo a ser copiado e tmnParte é o tamanho de cada parte que será copiada do conteúdo compartilhado. Para este trabalho, tmnParte é configurado com valor igual a 2 KB. Uma vez que o numero total de partes do conteúdo tenha sido calculado, deve haver um balanceamento de carga para que as partes sejam transferidas. Para este balanceamento de carga, é feito uma divisão do número de partes, de modo que cada membro mantenedor de uma cópia do conteúdo seja responsável por transferir um subconjunto de partes do conteúdo. O cálculo do número de partes para cada membro mantenedor do conteúdo é feito por meio da seguinte função onde: numPrpts é o número de usuários que possuem uma cópia do conteúdo armazenado. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Figura 7: Inicio da transferência do conteúdo. (Fonte: Gonçalves, 2010). Figura 8: Distribuição de partes do conteúdo. (Fonte: Gonçalves, 2010). Gonçalves (2010) esclarece que após à distribuição numérica de partes de cada responsável tenha sido definida, para cada um desses peers de usuários, é definido um subconjunto do conjunto dessas partes do conteúdo, ou seja, cada um desses responsáveis em transferir partes do conteúdo é criado um thread, para que esse subconjunto dos conteúdos possa ser transferido e armazenado no espaço cedido do disco pelo usuário. Para cada parte de conteúdo é identificada de 1 até o número total de partes. Na identificação é utilizada uma posição inicial e final da sequência de caracteres, quando uma parte é requerida por uma das threads, o numero de partes para cada membro mantém um conteúdo pode mudar em duas situações: (I) o peer de um membro responsável desconecta da rede peer-to-peer; (II) ocorre um aumento no número de membros contendo cópias do conteúdo. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O algoritmo de distribuição executa a fim de redistribuir o conjunto de partes de conteúdo com a quantidade necessária para que os usuários responsáveis possam manter o conteúdo evitando as duas situações, desta forma às threads, são interrompidas e removidas. Um conteúdo seria um conjunto de strings, onde uma parte é recuperada por meio de uma função que retorne um subconjunto de caracteres, seria necessário calcular a posição do primeiro e do ultimo caracteres, pois elas determinam o inicio e o fim da substring que se deseja obter. A posição do primeiro caractere é calculada por meio da seguinte função, calcPossicaoPrim(tdParte,tmnParte) – ((tmParte x tdParte) tmnParte)|1, onde: tdParte é o identificador da parte que se deseja copiar e tmmParte é o tamanho da parte, onde ao encontrar o último caractere, é utilizada a mesma fórmula da posição do primeiro caractere. Assim primeiro e o ultimo caractere são obtidos, uma substring é extraída e enviada para o peer que a requereu como parte de conteúdo, após a chegada da parte requerida são verificadas se os espaços cedidos do disco este configurado como não utilizado, se for verdade esse estado muda passando a ser utilizado. O tempo de espera para uso é configurado com valor zero, assim toda a rede social P2P é notificada e atualizada em função da atualização feita nas propriedades do espaço cedido pelo usuário proprietário do compartilhamento de disco podendo ser observada na Figura 9, após essa etapa, a parte recebida pelo peer é armazenada, assim como as outras que serão recebidas até o término da transferência do conteúdo, logo em seguida a thread atualiza seu subconjunto de partes, removendo a entrada correspondente à parte recebida e armazenada no peer. A transferência de conteúdo é finalizada quando todas as threads recebem todas as partes de conteúdo relacionadas às entradas de seus subconjuntos de partes de conteúdo. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Figura 9: Transferência parte do conteúdo. (Fonte: Gonçalves, 2010). Encerrada a transferência do arquivo de um peer Gonçalves (2010) relata que é necessário atualizar a lista de conteúdos armazenados pela rede social peer-to-peer demosntrada na Figura 10, de modo que todos os membros desta possam ser informados do novo conteúdo mantido pela rede, porem é verificado localmente se esta rede possui informações de contexto relacionadas ao conteúdo recém-armazenado. Se verdadeiro para cada peer cujos usuários são membros da rede social são requeridos à adição de um novo usuário na lista de membros responsáveis em manter o conteúdo armazenado. Caso contrário é criado uma informação de contexto relacionada ao conteúdo, tendo o requerente do armazenamento do conteúdo e o usuário cujo peer terminou a transferência como os dois primeiros membros responsáveis pelo armazenamento do conteúdo e por final é enviado um contexto para cada um desses usuários, de modo que ela seja adicionada a lista de conteúdos armazenados na rede social. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Figura 10: Atualização da informação de contexto da rede social peer-to-peer. (Fonte: Gonçalves, 2010). 3.1 Proposta de melhoria no algoritmo de transferência de recursos Analisando os dados apresentados no algoritmo que reliza a tranferencia do conteúdo apresentado na figura 9, analisei que o algoritmo poderia ter um aumento em seu desempenho, no entanto proponho uma melhoria em sua estrutura de tranferência de dados. Conforme o estudo sobre a tranferêrncia foi proposto uma estrutura de linguagem de seleção onde o autor utiliza a estrutura de algoritmo „Se‟, contudo consatei que poderiamos melhorar essa estrutura de algoritmo colocando-a em „Caso‟ conforme a Figura 11 demostra abaixo. Onde essa estrutura “Caso” traz diversas vantagens para o sistema como organização, facilidade de manutenção e principalmente previsibilidade. Conhecendo os tempos de execução de cada função é possível dizer com que frequência cada uma das funções/processos será executada. Se analisarmos essa estrutura do algortimo que realiza a transferencia do conteúdo as “strings”, essa estrutura proposta deixaria o programa mais objetivo e dinamico, tornando processamento mais eficiente e o trabalho da transmissao dos dados mais rapido. Utilizando-a poriar evitaria que o processo passe por todo o procedimento normal da estrutura “Se”, onde se fosse em uma estrutura “Caso” o algoritimo teria um melhor rendimento, pois se encaixaria em tal caso, assim fazendo a liberaçao dos dados mais rapidos, e a transferencia de dados na rede social peer-to-peer obeteria um aumento em seu desempenho, é ate a banda 10% igual foi simulada poderia ter um desenvolvimento mais eficaz. Atentendo toda a demanda de dados solicitados, libeçoes para novos dowloand, e as pessoas que tem banca mais baixa teria os arquivos compartilhados em tempo abil. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Figura 10: Dinamismo no algoritmo de transferência. Fonte: (Acervo Próprio). Subentende-se que devido essa transformação, onde os casos foram determinados, e assim poderia ter uma melhoria em seu desempenho conforme foi sugerido, pois as threads iria ser disponibilizadas frequentemente, e os dowloands seriam concluidos mais rapidamente, deixando os peers livre para que novos membro da rede social peer-to-peer possam estar recebendo as strings, com isso evitaria o congestionamento na rede de tranferencia de dados, assim numero maior de partes de contúdos sejam disponibilizado, permitindo assim que o tempo e a trenferencia dos dados desejados sejam mais rápidos. Essa proposta não obteve resultados, pois infelizmente não foi feita uma implementaçao, são sabe de estudo lógicos para tentar melhorar o algoritmo 3.2 Cenário de um simulador do compartilhamento de conteúdo Afirma Gonçalves (2010) que a implementação de um simulador na linguagem de programação Python, tendo com base o princípio de eventos de entrada de novos peers no sistema distribuído seguem uma distribuição de Poisson (2010), que por sua vez permite a configuração da média e a freqüência com que os peers chegam pela primeira vez ao sistema distribuído. Segue do principio de Weibull (2010), Stutzbach e Rejaie (2006), mostrando que o Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação gerador de eventos de desconexão distribui aleatoriamente os instantes de tempo em que os eventos de desconexão de peers irão acontecer, pois a partir dos parâmetros desta distribuição, são estipulados os tempos de vida que cada peer terá, a partir do momento em que este se conecta ao sistema distribuído. Tomando partida de Pareto (2010), Stutzbach e Rejaie (2006) para gerar os tempos em que os peers se mantêm desconectados, o módulo de geração de eventos oferece um gerador de eventos capaz de distribuir os instantes de tempo em que os peers se mantêm off-line, segundo uma distribuição. Contudo Golçales (2010) realizou a analize do comportamento do algoritmo de transferência de conteúdos, no que diz respeito aos tempos de conclusão e intervalos entre términos de downloads, é causado pelo aumento da disponibilidade de partes dos conteúdos compartilhados. Uma vez que as fontes para downloads aumentam, o algoritmo tende a balancear a carga de transferência de conteúdo, a fim de aumentar a taxa de vazão de partes por segundo. As taxas de vazão nas Figuras 11, 12 e 13 de acordo com as disponibilidades de banda dos membros de uma rede social peer-topeer. Figura 11: Número de partes por segundo na transferência de conteúdo de 2 GB com disponibilidade de banda em 10%. (Fonte: Gonçalves, 2010). Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Figura 12: Número de partes por segundo na transferência de conteúdo de 2 GB com disponibilidade de banda em 25%. (Fonte: Gonçalves, 2010). Figura 13: Número de partes por segundo na transferência de conteúdo de 2 GB com disponibilidade de banda em 50%. (Fonte: Gonçalves, 2010). O gráfico apresentado pela Figura 14 mostrado por Gonçalves (2010) apresentou um pico que representa o momento em que aumenta o número de requerentes solicitando o conteúdo compartilhado. Isto faz com que a disputa por partes de conteúdo Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação aumente, fazendo com que os intervalos entre conclusões de transferência de conteúdo na rede social peer-to-peer aumentem.Os resultados apresentados nesta seção, é possível visualizar que redes sociais podem ser utilizadas como ambiente de armazenamento de conteúdos compartilhados, pois os conteudos ficam alocados um periodo na rede social peer-to-peer. Além que a velocidade com que um conteúdo é transferido de um membro a outro em uma rede social peer-to-peer pode ser aumentada se o conteúdo compartilhado estiver armazenado de maneira colaborativa entre os membros da rede social peer-to-peer. Figura 14: Intervalos entre Conclusões de Transferência de Conteúdo de 2 GB com Disponibilidade de Banda em 50%. Fonte: (Gonçalves, 2010). Além de demonstrar o comportamento dos algoritmos de tranferencia numa rede social peer-to-peer Gonçalves (2010) segue com o mesmo principio e configuração utilizando os dados mostrado nos graficos anteriomente, onde foram realizados experimentos para avaliar o possível desempenho de uma rede social peer-to-peer como ambiente computacional para execução distribuída de tarefas, sobre os compartilhamentos de recursos computacionais disponíveis na rede social peer-to-peer. Nestes experimentos, foram consideradas quatro situações no que diz respeito à colaboração dos membros para a execução de tarefas em seus peers. Assim, em uma rede social peer-to-peer com 110 membros, foram consideradas situações em que 10%, 25%, 50% e 100% dos membros aceitam a execução de tarefas sobre seus compartilhamentos de recursos. Além destas situações, foi considerada a disponibilidade de banda, de modo que em cada uma das situações seja possível visualizar o impacto nos tempos de processamento de uma carga de trabalho. Como mencionado anteriormente, a banda de comunicação do sistema distribuído varia em 10%, 25% e 50% de sua capacidade total. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Figura 15: Tempos de execução de cargas de 1.5 Gb em redes sociais peer-to-peer. (Fonte: Gonçalves, 2010). Baseado em Gonçalves (2010) o obejetivo seria obter um ponto de referência no que tange o desempenho de uma rede social peer-to-peer, foram investigados trabalhos que fornecem informações de tempo de execução de aplicações de carga divisível sobre recursos computacionais heterogêneos. Toma como base semelhantes nas realizações de Yang e Casanova, (2003) e Assis et al. (2006), foi possível chegar a resultados próximos ao apresentados nestes trabalhos. No entanto, os resultados obtidos após as simulações de execução de tarefas não estão associados ao desempenho do algoritmo de escalonamento de tarefas. Além disto, não foi considerada a variação dos recursos computacionais cedidos pelos membros da rede social peer-to-peer, pois, uma vez que os recursos foram cedidos, parte-se do princípio que seus cedentes irão colaborar para a execução das tarefas. Observando o gráfico apresentado pela Figura 15, percebe-se que os tempos de execução diminuem à medida que uma quantidade maior de recursos é ofertada, quando membros de uma rede social peer-to-peer aceitam ceder recursos para processamento de tarefas. Apesar de diminuírem, os tempos de execução tendem a estabilizar à medida que a oferta de recursos aumenta, pois número de partes de carga de trabalho por peer diminui até que chegue a uma parte por peer. 4. Considerações Finais Este artigo apresentou um estudo sobre o uso de redes sociais peer-to-peer para compartilhamento de recursos. O objetivo foi atingido por meio da computação distribuída baseadas em redes sociais. A partir destas, foi possível criar redes P2P, agregar recursos compartilhados pelos membros da rede, compartilhar conteúdo, Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação armazenar conteúdos compartilhados de maneira colaborativa, onde varias pessoas enviam os conteudos um para os outros e executar aplicações de cargas de trabalho divisíveis. As computações distribuídas baseadas em redes sociais para compartilhamento de recursos permitem a criação de redes sociais sobre uma infraestrutura computacional formada por uma rede peer-to-peer não estruturada. Além disso, elas possibilitam a formação de um ambiente computacional cuja escala aumenta à medida que novos membros são admitidos na rede social. O ambiente computacional é formado a partir da agregação dos recursos computacionais compartilhados pelos membros de uma rede social peer-to-peer. Por fim, estas estruturas ainda oferecem meios de uma aplicação de carga de trabalho divisível a ser executada sobre os compartilhamentos de tempos de ocupação de processadores e espaços de memória. Analisando as estruturas de transmissão de dados em um compartilhando de rede social peer-to-peer, onde visualizamos como é realizada a forma de transmissão em uma rede social, como é alocado o conteúdo, assim propus um algoritmo para melhorar um dos algoritmos com intuito de melhorar o desempenho do algoritmo de transferência de parte de conteúdos, porém não implementado. Referências ASSIS, L. et al. Uma heurística de particionamento de carga divisível para grids computacionais". In: SIMPÓSIO BRASILEIRO DE REDES DE COMPUTADORES, 24., 2006. Curitiba, Anais ... Curitib:, SBC, 2006. Bittorrent. BiTtorrent website. Disponível em: htpp://www.bitorrent.com/. Acesso em abril.2011 Cohen, B. (2003). Incentives Build Robustness in BitTorrent. In Works on Economics of PeertoPeer Systems, volume 6. Berkeley, CA, USA. COULOURIS, G., Dollimore, J., Kinberg. Sistemas Distribuídos: Conceitos e Projetos. 4a. edição. Bookmann, 2007. FAROOQ, U. et al. Designing for e-science: requirements gathering for collaboration in CiteSeer". International Journal of Human-Computer Studies, London, v.67, n. 4, p. 297-312, Apr. 2009.. GONÇALVES, F. ; OLIVEIRA, C. E. T. ; BRAGANHOLO, V. Compartilhamento de dados e recursos computacionais de armazenamento em redes P2P". In: E-SCIENCE WORKSHOP. 2009, Fortaleza,. Anais ... Fortaleza: SBC/ACM, Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 2009. p. 41-48. GNUTELLA. The gnutella protocol specification v0.4. 2011. Disponível em: http://www9.limewire.com/developer/gnutella_protocol_0.4.pdf. MILOJICIC, D. S. et al. Peer-to-peer computing. Palo Alto: HP Laboratories, 2002. (Research Report, HPL-2002-57). MATTOSO, M. et al. Gerenciando experimentos científicos em larga escala. In: SEMINÁRIO INTEGRADO DE SOFTWARE E HARDWARE, 35., 2008, Belém. Anais ... SEMISH. Belém: SBC, 2008. p. 121-135. POISSON. Poisson distribution. 2010. Disponível em: http://wapedia.mobi/en/Poisson_distribution. Acesso em: 27 mai. 2010. SEMENOV, A. Evolution of peer-to-peer algorithms: past, present and future.Helsinki: Helsinki University of Technology, 2005. (Techinal Report, HUT T-110.551). STUTZBACH, D. ; REJAIE. R. Understanding churn in peer-to-peer networks. In: CONFERENCE ON INTERNET MEASUREMENT, 2006, Rio de Janeiro, Proceedings … New York: ACM SIGCOMM, 2006. p. 189-202. TANENBAUM, A. S. ; VAN STEEN, M. Sistemas distribuídos: princípios e paradigmas. 2. ed. São Paulo: Pearson Prentice Hall, 2007. YANG, Y. ; CASANOVA, H. RUMR: Robust scheduling for divisible workloads. In: IEEE INTERNATIONAL SYMPOSIUM ON HIGH PERFORMANCE DISTRIBUTED COMPUTING, 12., 2003. Seattle. Proceedings … , Los Alamitos: IEEE, 2003. p. 114-114. WEIBULL. Weibull distribution. 2010. Disponível em: http://wapedia.mobi/en/Weibull_distribution. Acesso em 07 mai. 2010. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 0 INSTITUTO CUIABANO DE EDUCAÇÃO – ICE CURSO DE GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO. 7 INOVAÇÃO E TECNOLOGIA Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação ALUNO: TONIEL LENK MORAES ORIENTADORA: DÉBORA SIMONY LEVENTI ALEIXES GONÇALVES Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 7.1 7.2 7.3 7.4 7.5 CUIABÁ - 2011 Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 7.6 TONIEL LENK MORAES 7.6.1.1.1 INOVAÇÃO E TECNOLOGIA Artigo apresentado Prof. Debora Simony Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação a da disciplina de NOÇÕES DE ECONOMIA t u r m a : 3° S e m e s tr e , t u r no : N o t ur no Do c ur s o d e C i ê n c i a d a Computação. Faculdade ICE. Cuiabá- 02/05/11 Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 7.6.1.1.2 INOVAÇÃO E TECNOLOGIA Toniel Lenk Moraes 1. INTRODUÇÃO A Inovação tecnológica está a cada dia mais nos surpreendendo com novas invenções, que há alguns tempos atrás eram consideradas impossíveis de se existir, mas que hoje já faz parte da vida cotidiana do ser humano e que aos poucos está nos trazendo para um “novo mundo”, principalmente ao “mundo digital”. Mas há uma questão que tem causado muitas divergências de opiniões entre as pessoas, quanto aos benefícios e malefícios da inovação tecnológica. 2. INOVAÇÃO O conceito de inovação é bastante variado, dependendo, principalmente, da sua aplicação. De forma sucinta, considera-se que inovação é a exploração com sucesso de novas idéias. E sucesso para as empresas, por exemplo, significa aumento de faturamento, acesso a novos mercados, aumento das margens de lucro, entre outros benefícios. Distinção de invenção e inovação O conceito de invenção envolve a aplicação do conhecimento na criação de algo novo, mas as invenções só podem levar a inovações úteis se as pessoas puderem ver como elas podem servir a seus propósitos. Outra forma de se dizer a mesma coisa é afirmar que nem todas as invenções levam a inovações. O conceito de inovação indica que as aplicações de um novo conhecimento de mercado ou tecnológico resultam em um benefício. Às vezes pode levar bastante tempo para que uma invenção leve à inovação. Tipos de Inovação Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação *Inovação de produto: Consiste em modificações nos atributos do produto, com mudança na forma como ele é percebido pelos consumidores. Exemplo: automóvel com câmbio automático em comparação ao “convencional”. *Inovação de processo: Trata de mudanças no processo de produção do produto ou serviço. Não gera necessariamente impacto no produto final, mas produz benefícios no processo de produção, geralmente com aumentos de produtividade e redução de custos. Exemplo: automóvel produzido por robôs em comparação ao produzido por operários humanos. * Inovação de modelo de negócio: Ou seja, na forma como o produto ou serviço é oferecido ao mercado. Não implica necessariamente em mudanças no produto ou mesmo no processo de produção, mas na forma como que ele é levado ao mercado. Exemplo: automóvel é alugado ao consumidor, que passa a pagar uma mensalidade pelo uso do veículo, com direito a seguro, manutenção e troca pelo modelo mais novo a cada ano; em comparação ao modelo de negócio tradicional, em que o veículo é vendido. 3. TECNOLOGIA Tecnologia é um termo que envolve o conhecimento técnico e científico em ferramentas, processos e materiais criados e/ou utilizados a partir de tal conhecimento. Fato: Qualquer componente eletrônico e mecânico que pode ser controlado, para isso existem uma infinidade de procedimentos e tecnologias de automação que fazem com que esse controle se torne mais fácil, eficiente e integrado. A Situação da Informação no Brasil A tecnologia da informação no Brasil pode ser considerada instável, pelo fato de que em cada dez lares brasileiros, três têm computador, sem contar que pelo governo existem atualmente 3.200 pontos de presença instalados em mais de 2.500 municípios, permitindo que cerca de 28 mil computadores estejam em rede e conectados à Internet. Existe acesso a Internet em alta velocidade (via satélite) funcionando em escolas, unidades militares e telecentros. Transferência de Tecnologia Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação A transferência de tecnologia pode ser entendida como o processo de transferência de propriedade intelectual (patentes, copyrights, know-how, etc) desde o laboratório até ao mercado. Este é um processo que abrange todo o ciclo de vida de um produto, desde a idéia inicial até ao marketing e venda do produto. A transferência de tecnologia pode ser classificada como vertical ou horizontal dependendo do âmbito da mesma: - A transferência de tecnologia vertical pode ser definida como o processo de transferir atividades de I&D para um ambiente comercial. Este é um processo que envolve freqüentemente a gestão de direitos de propriedade intelectual e pode também necessitar da obtenção de fundos e know-how para traduzir a pesquisa que é feita em produtos acabados. - A transferência de tecnologia horizontal é o processo de obter uma dada tecnologia que existe num dado mercado e transferi-la para outro mercado, normalmente menos desenvolvido. Isto pode ser exemplificado pela transferência de produtos com algum tipo de propriedade intelectual para mercados de exportação. Normalmente a entidade que faz a transferência tem alguma experiência de utilização e venda da tecnologia no seu ambiente de mercado sendo que a translação para um mercado diferente pode necessitar de algum desenvolvimento ou atualização do produto/processo. Três Invenções tecnológicas 1) Tecno Privacy Scarf: Para se livrar do incômodo de ter pessoas olhando sobre o seu ombro enquanto digita algo no computador, o americano Joe Malia criou uma manta que envolve a tela, impedindo que chatos vejam o que se passa. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 2) Cabine telefônica portátil para celular: Uma mochila que se transforma em uma "cabine" telefônica para ter conversas privadas ao celular. Apesar de o usuário parecer um pouco ridículo na rua ao utilizar o aparato, suas conversas ao telefone estarão 100% protegidas. 3) Time Table: O termo time table pode ser traduzido do inglês como tabela de horários ou – de uma forma mais literal – mesa de horas. Um inventor americano com senso de humor resolveu então criar uma Time Table, nada mais que uma mesa que mostra as horas. É provável que se tenha que tomar distância para ver se está na hora do almoço. Três Inovações tecnológicas 1) linha de montagem: A linha de montagem foi fundada por Henry Ford inicialmente para a fabricação dos automóveis da Ford no ano de 1913 sendo desde essa data considera uma das maiores inovações tecnológicas da era industrial, pois graças a ela, o tempo de produção de peças sofreu um decréscimo significativo (Chase et al., 1995, p. 21), permitindo dessa maneira que se produzisse em maiores quantidades o que mais tarde acabou por se refletir no preço dos produtos, tornando assim os mesmos mais acessíveis a outras classes sociais. 2) Microsoft Windows: Microsoft Windows é uma popular família de sistemas operacionais criados pela Microsoft, empresa fundada por Bill Gates e Paul Allen. Antes da versão NT, era uma interface gráfica para o sistema operacional MS-DOS. O Windows é um produto comercial, com preços diferenciados para cada uma de suas versões. É o sistema operacional mais utilizado em computadores pessoais no mundo. 3) Celular/Telemóvel: O celular/telemóvel que quando lançado ainda na tecnologia analógica era somente usado para falar, hoje já é usado para enviar SMS, tirar fotos, filmar, despertar, gravar lembretes, jogar e ouvir músicas, mas não para por aí, nos últimos anos, principalmente no Japão e na Europa, tem ganhado recursos surpreendentes até então não disponíveis para aparelhos portáteis, como GPS, videoconferências e instalação de programas variados, que vão desde ler e-book a usar remotamente um computador qualquer, quando devidamente configurado. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 4. CONCLUSÃO No século XXI a tecnologia entrou de vez na vida do ser humano, por meio disso a forma em que trabalhamos e que nos comunicamos já se tornou mais prático. Já não precisamos pagar uma “fortuna” para nos comunicar com alguém de muito longe e a informação está ao nosso alcance por fração de segundos. O computador hoje já é fundamental na vida das pessoas, precisa-se dele para estudar, entreter e se informar. Porém é importante lembrar que a tecnologia está a cada dia mais levando as pessoas ao comodismo, já não se pesquisa mais, sem contar que a cultura parece estar extinta, como os costumes de cada região, a música instrumental e as antigas diversões. Sabemos que tudo muda e tudo evolui principalmente o conhecimento humano, mas por mais a tecnologia mude, nós seremos sempre os mesmos. 5. BIBLIOGRAFIA OU REFERÊNCIAS BIBLIOGRÁFICAS Pesquisas na Internet A inovação: definição, conceitos e exemplos. Disponível em <http://inventta.net/radar-inovacao/a-inovacao/>. Acesso em: 28. Abril. 2011. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Entendendo a tecnologia. Disponível em: <http://www.conceitotecnologia.com.br/lonworks-entendendo.asp>. Acesso em: 27. Abril. 2011. Transferência de Tecnologia Disponível em: <http://www.enterpriseeuropenetwork.pt/info/investigacao/Paginas/transftec.asp x>. Acesso em: 27. Abril. 2011. INSTITUTO CUIABANO DE EDUCAÇÃO – ICE CURSO DE GRADUAÇÃO EM CIÊNCIAS DA COMPUTAÇÃO INCLUSÃO DIGITAL Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação ALUNA: KAROLINE M. TOMAZ CUIABÁ, 24 DE MAIO DE 2011 KAROLINE MOREIRA TOMAZ INCLUSÃO DIGITAL Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Trabalho Acadêmico para obtenção de nota para o 2º Bimestre das Disciplinas do 3º semestre de Ciência da Computação, sob orientação do professor Renata, disciplina Métodos e Técnicas de Pesquisas SUMÁRIO RESUMO 4 O MUNDO TECNOLÓGICO ATUAL 5 CONSEQUÊNCIAS GERADAS PELA EXCLUSÃO DIGITAL 6,7 A INCLUSÃO DIGITAL COLOCADA EM PRÁTICA CONCLUSÃO 9 REFERÊNCIAS 10 Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 8 RESUMO Este artigo possui o objetivo de descrever as principais características, conseqüências, e problemas relacionados à inclusão digital, abordando os principais assuntos e informações relacionados a esse tema. Palavras - Chaves: Igualdade Social, Tecnologia e Conhecimento. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O Mundo Tecnológico Atual Diariamente acompanhamos em noticiários, rádios, televisão, jornais, revistas, sites de internet e outros meios de comunicação, notícias relacionadas ao mundo da tecnologia, novas invenções, aprimoramentos e inovações direcionadas à área da informática. Equipamentos novos, modernos, práticos, cada vez mais melhorados para atender os usuários que sempre caminham em busca de novidades, de produtos cada vez mais atrativos, modernizar, são o que a maioria sempre busca alcançar. Mas, com tanta novidade sendo lançada no mercado da tecnologia da informática, nem sempre na maioria das vezes, todo mundo consegue adquirir os produtos, o público que adquire e que se torna cliente fixo desse mercado com grande crescimento, pertence à classe média alta e a classe média. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Imagem satirizando, representando um mendigo, que ao invés de pedir esmola, implora por um mouse. Fonte: http://pedagogia3021b.blogspot.com/ Conseqüências geradas pela Exclusão Digital As famílias de baixa renda deixam de participar dessa área da informática, os motivos são vários, e alguns deles são: a miséria extrema, educação, saúde, desemprego, renda muito baixa, alimentação e entre outros. Devido a esses fatores, a tecnologia na maioria das vezes faz falta à vida das pessoas pobres, fazendo com que essas pessoas não possam usufruir desses benefícios gerados pela tecnologia e desligando-se da atualidade do mundo digital. A falta da informática na vida dessas pessoas gera muitos problemas, que parecem insignificantes, que são desconsiderados pela sociedade, mas nem imaginam as conseqüências dessa situação que já é considerada hoje em dia comum. O mercado de trabalho hoje sobra muitas vagas de emprego, o motivo principal é a falta de qualificação profissional dos candidatos que recorrem a essas vagas, e a exigência das empresas no mínimo hoje em dia, para ocupar a vaga ofertada, é que a pessoa possua pelo menos, curso de informática básica, onde muitos não têm. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação E decorrente disso, muitos cidadãos brasileiros vivem desempregados, submetidos a passar fome, expostos à violência, e a desigualdade social. A desigualdade social é um fator que tem crescido bastante atualmente, devido às pessoas não conseguirem alcançar as oportunidades geradas diariamente no meio tecnológico. Imagem mostrando o homem que ao mesmo tempo vive em extrema miséria, mas usufrui da tecnologia, o telefone celular, exemplo claro também de uma sátira. Fonte: http://clezio20.blogspot.com/2010/09/inclusao-digital-verdade-ou-mito.html Crianças, jovens, adolescentes, também são atingidos por esses problemas, a maior parte atingida pela falta de informação tecnológica, vivem nas zonas rurais, onde o acesso ao mundo digital torna-se mais difícil, devido à distância. Essas pessoas que moram em sítios, chácaras e fazendas rurais, não convivem somente com a dificuldade de ter acesso à tecnologia, mas também muitos enfrentam a dificuldade de freqüentar uma escola, de arrumar um emprego bom, e também o acesso à uma saúde de qualidade. Vendo-se nessa situação, muitos na maioria das vezes, principalmente nas favelas, acabam-se rendendo ao mundo do crime, onde ele vê uma facilidade de crescer economicamente rápida, e na necessidade de não sofrer mais com a fome, de ficar desempregado e ter uma vida difícil. Mas aos poucos, o quadro vem sendo modificado e revertido, para amenizar os problemas gerados pela exclusão dessas pessoas à tecnologia. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Fonte: http://te5.zip.net/ A inclusão digital colocada em prática O governo está implantando projetos nas escolas, em centros comunitários, em associações, com o objetivo de levar principalmente aos jovens, crianças e adolescentes de comunidades carentes, o acesso à internet, implantando computadores novos, nas escolas, permitindo assim o acesso dessas pessoas ao mundo digital. Posso destacar aqui alguns dos programas implantados pelo governo: O Programa SERPRO de Inclusão Digital (PSID), busca promover a inclusão digital e social das comunidades excluídas do universo das Tecnologias da Comunicação e Informação - TIC. O Serviço Federal de Processamento de Dados – SERPRO, maior empresa de TIC da América Latina, utiliza sua expertise tecnológica e seu compromisso social nesse projeto de uso intensivo da tecnologia da informação, para ampliar a cidadania e combater a pobreza, visando garantir a Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação inserção do indivíduo na sociedade da informação e o fortalecimento do desenvolvimento local. Implantado em 2003, o PSID é uma das ações amparadas pela política de Responsabilidade Social e Cidadania da Empresa, em sintonia com o Programa Brasileiro de Inclusão Digital do Governo Federal. O Programa concentra-se em dois eixos principais: Utilizar efetivamente o Software Livre, viabilizando seu uso e a apropriação das novas tecnologias pela sociedade; e Propiciar o atendimento das necessidades das comunidades, a formulação de políticas públicas, a criação de conhecimentos, a elaboração de conteúdos apropriados e o fortalecimento das capacidades das pessoas e das redes comunitárias. Das ações desenvolvidas pela Inclusão Digital do SERPRO, destacamos a montagem de telecentros comunitários, iniciativa que leva o acesso ao universo tecnológico e ao mundo da informação para várias localidades do Brasil. Aqui no Mato Grosso, o Governo do Estado implantou o seguinte programa: O Projeto poderá implantar Unidades de Inclusão Digital – UNID‟S em 3 (três) modalidades: Educação – Instalado nas dependências das escolas ou Núcleos de Tecnologia/Educacionais em parceria com a Secretaria de Estado de Educação. Integração – Instalados em centros de múltiplo uso do programa Meu Lar em parceria com a Secretaria de Infra-Estrutura e Prefeituras. Superação - Instalados em locais cedidos e mantidos por prefeituras e/ou Organizações Não Governamentais, em parceria com Prefeituras Municipais. Em qualquer uma das 03 (três) modalidades, as UNID‟S se constituirão em espaços públicos para iniciação em informática e Internet, assim como proporcionar acesso aos meios de informação, de forma a promover a cidadania através da inclusão digital. A administração das UNID‟S será exercida pelos parceiros locais que se reportarão ao coordenador estadual do projeto MT Ação Digital, na SETEC, que acompanhará e avaliará as atividades desenvolvidas. Poderá ser articulada a criação de Comitês Locais que serão compostos e coordenados como seguem: Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Projeto Superação: compostos por membros indicados por parceiros, representantes da comunidade, sociedade civil organizada e ONGs com coordenação indicada pelo Comitê Estadual. Projeto Educação: compostos por professores e representantes da comunidade escolar com coordenação indicada pela SEDUC. Projeto Integração: compostos por membros indicados pela própria comunidade, sociedade civil organizada e parceiros com coordenação indicada pelo Comitê Estadual Cursos de capacitação profissional são oferecidos a todas as idades, onde o aluno aprende desde a informática básica, conhece o computador, desenvolve o conhecimento, e assim capacita-se para desenvolver no mercado de trabalho. Aos poucos, com esses projetos sendo colocados em prática, é possível ver os resultados decorrentes dessas mudanças na vida desses cidadãos que tanto lutam para alcançar seus direitos, mudanças essas que permitem à pessoa que recebe o direito e o acesso a internet, ela ganha mais conhecimento, informações, facilidades de comunicação e maior interação seja com os amigos, familiares, e esse também é um direito de todo e qualquer cidadão brasileiro. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Imagem representando o acesso de jovens e adolescentes a computadores, tendo acesso a internet Fonte: http://www.mundodastribos.com/veja-mais-sobre-o-site-inclusao-digital-gov-br.html CONCLUSÃO Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Conclui-se que realizando este trabalho é possível entender que a inclusão digital não é só mais um direito de cada cidadão, mas uma oportunidade gerada que colocada em prática, muda totalmente a vida dessa pessoa, pois ela gera a cidadania, a ética e principalmente a igualdade social. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação REFERÊNCIAS BIBLIOGRÁFICAS Inclusão Digital. Programa. Constituição. Acesso em: 10 de Maio de 2011 Disponível em: http://www.acaodigital.mt.gov.br Inclusão Digital. O Programa. Acesso em: 24 de Maio de 2011. Disponível em:http://www.serpro.gov.br/inclusao/oprograma SISTEMAS DE ARQUIVOS DISTRIBUÍDOS Professor Andersown Paes Projeto de Conclusão de Curso apresentado ao curso de Ciência da Computação do Centro Universitário Cândido Rondon – UNIRONDON, como requisito parcial para a obtenção de crédito para a disciplina de Computação Distribuída. Cuiabá - MT 06/06/2011 Este artigo foi elaborado para o Workshop de sistemas distribuídos, como parte integrante da disciplina de Computação Distribuída do Centro Universitário Candido Rondon, aborda conceitos relativos ao Distributed File System (DFS). Realizamos aqui um estudo de caso específico sobre o sistema de arquivos distribuídos do Windows, o DFS, com o objetivo de apresentar os conceitos específicos e aprofundar o conhecimento associados a esse sistema, e exemplificar sua funcionalidade na pratica. Palavras-chave: Distributed File System, Dfs, Windows, sistema de arquivos distribuído Resumo This article was prepared for the Workshop on distributed systems Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação as part of the subject of Distributed Computing, University Center Candido Rondon, addresses concepts relating to the Distributed File System (DFS). We performed here a specific case study on the distributed file system of Windows, the Microsoft Dfs, with the aim of presenting specific concepts and deepen the knowledge associated with that system, and to illustrate its functionality in practice. Resumo Keywords: Distributed File System, Dfs, Windows, Sistema de Arquivos Distribuído Índice INTRODUÇÃO Apresentação Este trabalho apresenta um dos aspectos da computação distribuída: os sistemas de arquivos baseados em múltiplos computadores. Trata-se de uma forma de disponibilizar arquivos de maneira a proporcionar um ambiente balanceado ou moderado de acordo com as necessidades no ambiente em questão e será apresentado com diferentes abordagens e métodos de aplicação. Será apresentado um resumo teórico dos sistemas de arquivos distribuídos, resumo histórico dos diversos produtos existentes, quer sejam experimentais ou não, e como parte principal, será apresentado um estudo de caso do sistema comercialmente disponível Dfs, da Microsoft. Justificativa Este é um dos temas mais pulsantes da computação distribuída, pois a demanda produtiva dos tempos modernos exige que as instituições adotem algum sistema de compartilhamento de arquivos para permitir o desenvolvimento colaborativo de projetos onde os mesmos serão dinamicamente divulgados para que todos tenham acesso aos processos de maneira unificada. Cenários Cenário 1 Podemos utilizar o SAD para replicar as informações entre os servidores dando assim o poder de manter os arquivos em lugares distintos em sua total integridade (Serviço de Arquivos Distribuidos.) Cenário 2 Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Podemos utilizar o SAD para equilibrar a carga entre servidores, evitando assim o gargalo nos dispositivos de rede (Serviço de Diretórios Distribuidos.) Cenário 3 Podemos utilizar o SAD para distribuir arquivos em um nome unificado e facilitar o processo de localização de informações um ambiente (Serviço de Nomes Distribuidos.) Objetivos Objetivos gerais O objetivo principal será apresentar os conceitos gerais de sistemas de arquivos distribuídos e apresentar ao final um dos produtos disponíveis em uso concreto. Objetivos específicos Demonstrar os conceitos de SAD e suas funcionalidades Demonstrar a eficácia das praticas exercidas pelo SAD. Relacionar o conhecimento sobre SAD adquiridos através de estudos feitos com materiais web, artigos e publicações, validando suas funcionalidades no cotidiano das organizações. Metodologia O levantamento teórico será realizado em livros (em Português e Inglês) e em material disponível em sítios de universidades, incluindo artigos a respeito do tema. O estudo de caso será baseado em uso real de sistema de arquivos distribuído com uso de arquivos compartilhados por usuários com simulação de distanciamento. Tipo de Pesquisa Esta pesquisa foi desenvolvida utilizando a pesquisa exploratória de campo e bibliográfica. Universo da Pesquisa Fontes coletadas na web, pesquisa em livros e revistas pertencentes ao acervo da biblioteca do Unirondon, campus de Cuiabá. Além disso, foram utilizados livros em edição eletrônica e manuais livremente disponibilizados. Instrumentos da Pesquisa Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Como instrumentos de pesquisa e coleta de dados, foram escolhidos a observação, análise de documentos e questionamentos durante os testes. Os mesmos são sugeridos em Websites e permitem uma abordagem teórica qualitativa dos dados coletados. Desenvolvimento Computação Distribuída O conceito de SAD é uma evolução natural da CD. A distribuição e compartilhamentos de recursos computacionais é algo tão pervasivo que os seus utilizadores sequer percebem a sua existência, e, no entanto, os utilizam rotineiramente. Para tanto, há toda uma gama de equipamentos, softwares, middlwares, todos unificados por meio de protocolos que os fazem enxergar-se e comunicar-se em ambientes que são, muitas vezes, heterogêneos. Os sistemas distribuídos modernos beneficiam-se grandemente dos chamados sistemas abertos, que são baseados em padrões públicos, divulgados livremente para toda a comunidade de desenvolvedores, o que permite agilidade e integração dos muitos produtos existentes nessa área. Exemplos de sistemas distribuídos Internet Intranets Web Características São características imprescindíveis de um sistema distribuído: Tolerância a falhas Quando não se apresenta ao utilizador se tem alguma falha ou não. Quando o utilizador não sabe se está acessando o recurso A ou o B. Quando mesmo ocorrendo uma falha não será visível ao utilizador. Acesso concorrente Quando vários utilizadores estão concorrendo aos mesmos recursos sem que seja percebido se há alguma perda de desempenho ou não. Quando o acesso a algum recurso é feito por vários utilizadores, onde, não seja visível a sua distribuição de carga sem afetar as informações contidas no recurso. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Quando os recursos devem estar iguais em ambos os SAD sem que um utilizador possa alterar o recurso do outro ou que pelo menos seja avisado se o arquivo está sendo utilizado por outro utilizador. Replicação de informações Quando um recurso precisa ser replicado entre outros SAD sem a percepção do utilizador. Quando há confiabilidade nas informações replicadas entre os SAD, mantendo a integridade das informações do meio Quando o recurso de replicação estão interligado entre os SAD e não centralizado em um único local, que no caso, não gera replicação. Segurança Quando as informações sofrem alterações e precisam ser replicadas entre os SAD mantendo a integridade da segurança do arquivo. Quando as informações precisam receber atributos que impeçam de ser alteradas ou modificada em outros servidores. A implementação do Kerberos como protocolo de segurança para a verificação de acesso a recursos alocados. Cache Quando as informações precisam ser transferidas, a mesma precisa de um ambiente rápido e de fácil gestão, facilitando o processo de transferência de arquivos entre os servidores que fazem a requisição de informações diferentes. Quando precisa fazer a verificação entre servidores no momento de que um servidor precisa fazer a replicação. Consistência Para verificação após o processo de validação e transferência dos dados entre servidores. Verificação dos volumes comuns a todos os servidores para validar se algum SAD está fora do Desconectado. Transparência Alem da tolerância a falhas, também disponibiliza a mudança de recursos sem que o usuário perceba o processo de transição. Quando se há a necessidade de acessar um recurso, fará a verificação se há servidores disponíveis e qual o seu volume de Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação carga, passando para somente o servidor com menor carga de trabalho. Funções Distribuição de arquivos Distribuição de informações entre os SAD de maneira a todos deterem uma tabela de identificação da informação. Gerenciamento dos identificadores das tabelas juntamente as informações, promovendo assim a transferência das informações entre os SAD. Controle do fluxo entre os SAD para evitar duplicação de informações saindo de diversos SAD. Fornecimento de diretórios Unificação dos diretórios existentes no grupo de SAD Compartilhamento dos diretórios existentes entre os SAD para a distribuição das cargas. Gerenciamento de diretórios informando se algum SAD está fora de operação. Verificação de disponibilidade utilizando-se de informações dentro das listas de distribuição. Módulos de Clientes Gerenciamento de conexões entre os servidores SAD para localizar a disponibilidade das informações existentes. Gerenciador de recursos utilizados que gerenciará para quem enviar os dados aos servidores que contem o SAD formalizando o gerenciamento das informações entre cliente servidor. Outras ferramentas de SAD AFS O projeto Andrew deu iniciou a um sistema que distribui-se informações a todo a faculdade de Carnegie Mellon University (CMU) em 1982, com o intuito de fornecer acesso a infra-estrutura e facilitar o processo de compartilhamento de recursos, disponibilizando-o para diversos prédios e facilitando o trabalho de diversos SAD tendo como objetivo, a disponibilidade integral dos recursos para todos da universidade, eliminando assim o problema de centralização excessiva e outros problemas referentes a performance.. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O Andrew File System é apenas um pedaço do projeto Andrew, que como um todo consistia nas seguintes ferramentas: Andrew Toolkit Andrew Messaging System Andrew File System - Este sendo o fundamento do nosso trabalho. Andrew Window Manager O AFS é uma ferramenta criada para suprir as necessidades de um ambiente distribuído voltado para um sistema de arquivo inteligente, ao ponto de fornecer informações claras a respeito do meio, suprindo as falhas e garantir um atendimento integro aos recursos disponibilizados. As suas aplicações em meio acadêmico são muitas, desde a distribuição de informações por todo um ambiente até suprir as necessidades de demanda exagerada em uma situação, sendo esse um dos motivos mais utilizados para a implementação dos SAD. Como foi explicado, o processo de implementação de um SAD, requer muito mais do que apenas a distribuição. Requer a visão do ambiente como um todo, a disponibilidade que se espera, o ponto a ser suprido, a falha que não será coberta caso haja um erro, a validação de informações caso tenha problema intermitente, dentre outras informações que devem ser analisadas. Após a validação dos requisitos básicos, só então, será possível efetuar o processo de implementação, que por sua vez, auxiliará seu ambiente a ser o mais dinâmico possível. Tornando essas características em uma poderosa e aliada ferramenta de uso. NFS - Networking File System Desenvolvido pela Sun e inicialmente criado para distribuição Unix, se tornou muito difundido entre os SADs por sua facilidade de transparência e implementações, pois todas as distribuições de S.O. já o tem como parte de suas ferramentas. Suas características de se utilizar de chamadas RPC o faz prover arquivos com grande agilidade e com controle de fluxo. Por outro lado não tem controle de integridade e nem controle de consistência. o que o torna mais vulnerável a muitos usuários terem acesso aos mesmos arquivos sem que outros saibam instantaneamente que modificações estão sendo efetuadas em seus recursos. CODA Baseado no AFS-2, esse SAD foi desenvolvido com as mesmas características inicias do AFS. Foi desenvolvido para Linux, Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação FreeBSD e NetBSD com o intuito de gerenciar habilidades como: Servidor de replicação, Liberdade para recursos moveis, boa escalabilidade, segurança mesmo quando há falhas, boa adaptação aos recursos de largura de banda. Sua distribuição é livre e se utiliza do modelo Cliente-Servidor em que o cliente depende de um software que fará a comunicação com o servidor. Seu meio de comunicação é o Venus que tem similaridade com o NFS e a comunicação entre servidores é feita pelo RPC-2 que se utiliza do protocolo UDP para comunicação. Microsoft Dfs Desenvolvido pela Microsoft, este SAD utiliza NTFS como sistema de arquivo e é desenvolvido para suprir as necessidades básicas, sendo muito utilizado pois não depende de um software cliente, o que o torna de fácil implementação e gestão. O processo de comunicação é feito dentro dos servidores utilizando RPC e SMB. Também se utiliza do protocolo Kerberos para autenticação e tem sua lista própria de autenticação, se utilizando da estrutura do Active Directory da Microsoft. VMFS - Virtual Mware File System Primeiro sistema de arquivos que compartilhou o mesmo recurso de hardware em duas maquinas distintas, sendo um sistema de arquivos de alto nível criado pela VMware para divisão de tarefas em um único ambiente onde se concentra os recursos dos servidores. Desenvolvido para as aplicações VMware de virtualização onde vários hardwares compartilham seus recursos entre si, facilitando o processo de migração online de recursos e características. NTFS 6.1 - NT File System Desenvolvido pela Microsoft como melhoria do NTFS 5 que já vem integrado com o Windows 2003, e sua utilização no Windows 2008 e 2008 R2 torna-o mais útil, sendo que esse tem a possibilidade de ser configurado como Cluster Shared Volume. A possibilidade de tornar um disco em um volume compartilhado é que o torna altamente útil no contexto abordado no trabalho. A falta de compartilhamento de recursos deixava a implementação do NTFS 5 apenas para tolerância a falhas, porem foi adicionado a característica de compartilhamento para que pudesse ser melhorado a tolerância a erros de distribuição das informações. Cenário real O cenário que será apresentado se utilizará do Microsoft Dfs, onde será implementado da seguinte maneira: 2 servidores com Windows 2008 R2 Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação 1 dos servidores terá instalado o Active directory Será criado uma pasta compartilhada em um servidor inicialmente será implementado o compartilhamento em outro servidor Será alocado o mesmo direito tanto em um quanto em outro servidor. Será efetuado a alocação de um arquivo em um servidor e será visualizado no outro. Será implementado o limite de banda para efetuar os testes Considerações finais Com base neste artigo em resumo vimos que os Sistemas de Arquivos Distribuídos (DFS) nos oferecem replicação em rede de longa distância (WAN) e também acesso simplificado a arquivos que estejam dispersos geograficamente. Aos administradores de redes que pretendem organizar e aumentar a disponibilidade de pastas compartilhadas, criando um namespace e àqueles que desejam manter com eficiência pastas sincronizadas entre servidores com o uso da Replicação Dfs ou outros produtos similares, recomenda-se o uso dessa tecnologia. Podemos observar na prática em laboratório a capacidade de localizar pastas ou destinos de pastas em um namespace utilizando recursos de pesquisas, assim como todas as facilidades no que concerne a gerenciamento, desempenho, tráfego de rede e replicação de arquivos. Referências [1] Avila, R. B. Uma proposta de distribui cão do servidor de arquivos em clusters. UFRGS - Programa de Pós-Gradua cão em Computa cão (2005). [2] Coulouris, G., Dollimore, J., and Kindberg, T. Sistemas Distribuídos - Conceitos e Projeto. Bookman, Av. Jeronimo de Ornelas, 670 - Santana - 90040-340 Porto Alegre - RS, 2007. [3] Hermann, E., Avila, R. B., Navaux, P. O. A., and Denneulin, Y. Metaserver locality and scalability in a distributed nfs. UFRGS - International Meeting on High Performance Computing for Computational Science (2006). [4] Howard, J. H., Kazar, M. L., Menees, S. G., Nichols, D. A., Satyanarayanan, M., Sidebotham, R. N., and West, M. J. Scale and performance Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação in a distributed file system. ACM Transactions on Computer Systems (TOCS) 6, 1 (February 1988). [5] Indrusiak, L. S. A framework supporting collaboration on the distributed design of integrated systems. UFRGS - Programa de Pós-Gradua cão em Computa cão (2003). [6] Lopes, E. Sistemas de arquivos distribuídos: Networking file system (nfs) e andrews file system (afs). Artigos.com (2008). [7] Simomura, B. C. Sistemas distribuídos. Artigonal (2009). USO DE SISTEMA DISTRIBUIDO NA CODIFICAÇÃO DE VIDEO Fábio Santana, Tatiane Minamiya, Douglas Thiago 8 Unirondon - Centro Universitário Cândido Rondon Departamento de Sistemas e Computação Centro Universitário Cândido Rondon(Unirondon) – Cuiabá, MT – Brasil [email protected], [email protected], [email protected] Resumo. O Presente artigo pretende dar uma visão abrangente sobre a computação distribuída, por meio de um caso de uso: o M.E.C. (Media Encoding Cluster) é uma ferramenta relativamente nova que mostra ter um enorme potencial, ela é usada na codificação de vídeo e tem como diferencial o fato de todo o seu processamento ser feito de maneira distribuída, no artigo vemos quais as vantagens e desvantagens da computação distribuída onde podemos usar e onde não devemos usar e como maximizar seu uso para que haja o melhor desempenho, o artigo tem como foco todos os profissionais da área de Tecnologia da informação que queiram aprender novas técnicas e novas tecnologias. Abstract. This article aims to give a comprehensive view of distributed computing through a use case: MEC (Media Encoding Cluster) is a relatively new tool, that shows have a huge potential, it is used in video encoding and has the differential the fact that all processing be done in a distributed way, in the article we see what advantages and disadvantages of distributed computing where we can use and where not should use and how to maximize its use for the best performance, the article focuses on all professionals in the area of Information Technology who want to learn new techniques and new technologies. 1. Introdução Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Segundo Holub (2004) nos últimos anos tem havido uma busca crescente por arquivos de vídeo disponíveis na internet que vão desde vídeos de palestras universitárias até experimentos científicos. Enfrentando assim um aumento na demanda em poder de processamento computacional e capacidade de armazenamento. De acordo com Foster (2005) a computação distribuída tem tido um papel fundamental na nova ordem da computação mundial, na qual o processamento dos dados pode ocorrer virtualmente em qualquer lugar do planeta. A nova característica da computação tem sido objeto de interesse para a pesquisa acadêmica. 2. Motivação Baseado em Coulouris(2005): Sistemas distribuídos são uma coleção de computadores autônomos interligados através de uma rede de computadores e equipados com software que permita o compartilhamento dos recursos do sistema: hardware, software e dados. Tendo em vista de ter um melhor aproveitamento de todo o parque computacional, o presente artigo debate idéia de como otimizar o uso de computadores e o beneficio do uso de computação distribuída e também os benefícios do seu uso na codificação de vídeo. LV Agostini(2007) cita que para diminuir o esforço computacional em armazenamento a melhor solução é usar a compressão de vídeo. A compressão de vídeo é essencial para aplicações que manipulam vídeos digitais, em função da enorme quantidade de informação necessária para representar um vídeo sem nenhum tipo de compressão. Mesmo resolvendo o problema de armazenamento de dados ainda precisamos de um grande poder de processamento, a melhor solução é distribuir o esforço em varias maquina assim conseguimos reduzir custo, mas mantendo a mesma robustez no sistema. 3. CONCEITOS ESSENCIAIS DE - SISTEMAS COMPUTACIONAIS DISTRIBUIDO. Muitas das diversas áreas nas quais a computação se aplica requerem cada vez mais potência computacional, em virtude dos algoritmos cada vez mais complexos que são utilizados e do tamanho do conjunto de dados envolvido no processamento. Sendo assim, a busca por melhor tempo de processamento e,conseqüentemente, melhor desempenho na execução das aplicações constitui o fator principal que impulsiona o desenvolvimento da computação distribuída. Almasi & Guttilieb (1994) explica que a computação distribuída consiste, basicamente, no uso de elementos de processamento que cooperam e comunicam-se entre si para solucionarem problemas complexos ou não, de maneira mais rápida do que se estivessem sendo solucionados seqüencialmente. Assim, a computação paralela (executada em arquiteturas Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação paralelas) surgiu com o objetivo de reduzir o tempo de processamento de aplicações específicas que demandam altas taxas de processamento. Por outro lado, o surgimento dos sistemas computacionais distribuídos deu-se, basicamente, devido à necessidade de compartilhamento de recursos, normalmente de alto custo e fisicamente separados. O desenvolvimento e disponibilidade de microprocessadores mais potentes e de menor custo, aliado ao avanço na tecnologia de comunicação de dados (propiciando a utilização de redes de computadores de alta velocidade) foram aspectos que contribuíram e estimularam consideravelmente o interesse na utilização de sistemas distribuídos. Com o avanço tecnológico foi possível a união da computação paralela e dos sistemas computacionais distribuídos, surgindo assim o que constitui a computação paralela distribuída. Conforme Tanenbaum (1992) nesse caso tem-se a computação distribuída sendo implementada sobre uma plataforma MIMD com memória distribuída podendo-se explorar características atrativas de ambas as áreas. Apesar de serem amplamente disseminados e existirem diversas linhas de pesquisa, verifica-se que não existe consenso sobre uma definição única e exata do que seja um sistema distribuído. Mesmo diante da divergência do conceito, existem alguns pontos em comum tais como interligação de computadores através de rede de comunicação e gerenciamento por um software de sistema distribuído, que sempre são apresentados quando da explanação desses sistemas. Neste trabalho, um sistema distribuído será visto como uma coleção de computadores autônomos e interligados por uma rede de comunicação, possuindo um sistema distribuído que será responsável por coordenar as atividades desenvolvidas, além de permitir o compartilhamento dos recursos existentes no sistema. Os sistemas computacionais distribuídos apresentam uma série de características que podem torná-los atrativos quando comparados às máquinas paralelas convencionais ou aos sistemas centralizados: disponibilidade, confiabilidade, expansibilidade, tolerância a falhas, transparência, abertura, concorrência, compartilhamento de recursos, e um possível aumento de desempenho [Tanenbaum, 1992; Müllender, 1993; Coulouris, 1994]. 4. Cluster O que é um Cluster? Na sua forma mais básica um cluster é um sistema que compreende dois ou mais computadores ou sistemas (denominados nodos) na qual trabalham em conjunto para executar aplicações ou realizar outras tarefas, de tal forma para que os usuários que os utilizam tenham a impressão que somente um único sistema responde para eles, criando Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação assim uma ilusão de um recurso único (computador virtual). Este conceito é denominado transparência do sistema. Como características fundamentais para a construção destas plataformas inclui-se elevação da: confiança, distribuição de carga e performance. M Pitanga(2003) define vários tipos de cluster como será visto adiante. Tipos de Clusters Alta Disponibilidade (High Availability (HA) and Failover), estes modelos de clusters são construídos para prover uma disponibilidade de serviços e recursos de forma ininterruptas através do uso da redundância implícitas ao sistema. A idéia geral é que se um nó do cluster vier a falhar (failover), aplicações ou serviços possam estar disponíveis em outro nó. Estes tipos de cluster são utilizados para base de dados de missões críticas, correio, servidores de arquivos e aplicações. Balanceamento de carga (Load Balancing), este modelo distribui o tráfego entrante ou requisições de recursos provenientes dos nodos que executam os mesmos programas entre as máquinas que compõem o cluster. Todos os nodos estão responsáveis em controlar os pedidos. Se um nó falhar, as requisições são redistribuídas entre os nós disponíveis no momento. Este tipo de solução é normalmente utilizado em fazendas de servidores de web (web farms). Combinação HA & Load Balancing, como o próprio nome diz combina as características dos dois tipos de cluster, aumentando assim a disponibilidade e escalabilidade de serviços e recursos. Este tipo de configuração de cluster é bastante utilizado em servidores de web, mail, news ou ftp. Processamento Distribuído ou Processamento Paralelo, este modelo de cluster aumenta a disponibilidade e performance para as aplicações, particularmente as grandes tarefas computacionais. Uma grande tarefa computacional pode ser dividida em pequenas tarefas que são distribuídas ao redor das estações (nodos), como se fosse um supercomputador massivamente paralelo. É comum associar este tipo de cluster ao projeto Beowulf da NASA. Estes clusters são usados para computação cientifica ou análises financeiras, tarefas típicas para exigência de alto poder de processamento. Razões para utilização de um Cluster Tanenbaum (2003) apresenta a teoria que clusters ou combinações de clusters são usados quando os conteúdos são críticos ou quando os serviços têm que estar disponíveis e/ou processados o quanto mais rápido possível. Internet Service Providers (provedores de Internet) ou sites de comércio eletrônico freqüentemente requerem alta disponibilidade e balanceamento de carga de forma escalável. Os clusters paralelos têm uma importante participação na indústria cinematográfica para renderização de gráficos de altíssima qualidade Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação e animações, relembrando que o Titanic foi renderizado dentro desta plataforma nos laboratórios da Digital Domain. Os clusters Beowulf são usados na ciência, engenharia e finanças para atuarem em projetos de desdobramento de proteínas, dinâmica de fluídos, redes neurais, analise genética, estatística, economia, astrofísica dentre outras. Pesquisadores, organizações e empresas estão utilizando os clusters porque necessitam de incrementar sua escalabilidade, gerenciamento de recursos, disponibilidade ou processamento a nível supercomputacional a um preço disponível. High-Availability (HA) ou Failover Clusters Os computadores possuem uma forte tendência a parar quando menos você espera, principalmente num momento em que você mais necessita dele. É raro não encontrar um administrador que nunca recebeu um telefonema meio da madrugada com a triste notícia Figura no 5-REDE que o sistema de missão critica ficou fora ar, ou seja, não tem jeito você tem que ir e resolver o problema. A Alta Disponibilidade está ligada diretamente a nossa crescente dependência aos computadores, pois agora eles possuem um papel crítico principalmente em empresas cuja maior funcionalidade é exatamente a oferta de algum serviço computacional, como ebusiness, notícias, sites web, banco de dados, dentre outros. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Um cluster de Alta Disponibilidade visa manter a disponibilidade dos serviços prestados por um sistema computacional replicando serviços e servidores, através da redundância de hardware e reconfiguração de software. Vários computadores juntos agindo como um só, cada um monitorando os outros e assumindo seus serviços caso algum deles venham a falhar. A complexidade do sistema deve estar no software que deve se preocupar em monitorar outras máquinas de uma rede, saber que serviços estão sendo executados, quem os está executando, e o que como proceder em caso de uma falha. Perdas na performance ou na capacidade de processamento são normalmente aceitáveis; o objetivo principal é não parar. Existem algumas exceções, como sistemas de tempo real e de missão crítica. A tolerância a falhas é conseguida através de hardware, como sistemas raid, fontes e placas redundantes, sistemas rede totalmente ligados para prover caminhos alternativos na quebra de um link. Conforme Casavant (1988) a abordagem de distribuição de tarefas e o balanceamento carga é uma área de pesquisa importante quando consideramos configurações distribuídas. O embasamento teórico desse assunto é complexo e pode ser encontrado em . 5. VIDEO Codificação de vídeo BL Wanderley (2007) afirma que a Codificação de vídeo é o processo de compressão e decodificação de um sinal de vídeo digital. O vídeo digital pode ser considerado como uma representação visual de uma cena amostrada temporalmente e espacialmente. A cena é amostrada num ponto do tempo produzindo o quadro representando a imagem completa, tal amostragem é repetida em intervalos, por exemplo, 30 quadros por segundo, para produzir um sinal em movimento. Basicamente são necessárias três componentes para representar a cena em cores, as componentes RGB (Red, Green, Blue) têm nas três cores primárias a função de proporcionar uma grande variabilidade de cores. A captura das componentes RGB envolve a filtragem de cada uma das cores capturadas cada uma por um sensor diferente. Monitores CRT (Colour Cathode Ray Tubes) e cristal líquido (LCD) exibem uma imagem RGB separadamente iluminando o vermelho, verde e azul em cada pixel de acordo com a intensidade de cada componente. O RGB pode ser convertido para o sistema de cores YCrCb (luminância, crominância vermelha e crominância azul, respectivamente) para reduzir tamanho e/ou requerimentos de transmissão separando a luminância (Y) das informações de cor. Tal conversão não afeta a qualidade visual pois o sistema de cores YCrCb é baseada na sensibilidade do sistema visual humano que é mais sensível a luminância (brilho). 6. CASO DE USO Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O M.E.C (Media Encoding Cluster) é software cliente\servidor que soluciona o problema de codificação de arquivos de vídeos, é uma maneira fácil e simples de se construir um cluster. O M.E.C tem funções bem interessante todos os clientes podem achar o servidor se esse estiver na mesma subrede. O principio dele é simples o servidor fornece blocos de arquivos para os clientes os clientes recebem os blocos de arquivos processam e devolve ao servidor o servidor então juntas todos os blocos dando a origem a um novo arquivo só que agora codificado. Figura 6- PROJETO Em um projeto de codificação, todos os dados necessários para configuração de saída do arquivo, o formato, bitrate, codecs todas essas configurações ficam armazenada no Preset sendo ele responsável por essa parte. Vamos agora entender melhor como tudo isso funciona, imagine que se tenha 4 maquinas em casa, tem se um vídeo em blu-ray, mas quer levar esse vídeo a qualquer lugar seria muito mais conveniente levar o vídeo no celular mas temos um problema a maioria dos celulares não tem capacidade de armazenamento suficiente para vídeo em fullhd e muito menos capacidade leitura de vídeos em fullhd, coloca-se o vídeo no computador e mandar codificar por exemplo para mp4 com 320p de resolução se estive usando uma solução normal de codificação esse trabalho dependendo da maquina poderia demorar mais de 24 horas para ficar pronto mas se estiver usando a M.E.C você poderia simplesmente dividir esse esforço em vez de uma única maquina fazer todo o trabalho porque não colocar todas para fazer isso essa é ideia do M.E.C agora pode se fazer o mesmo trabalho só que com tempo bem menor. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação Mas como ele faz tudo isso, o servidor pega o arquivo e divide esse arquivo em vários pedaço cada pedaço desse Figura 7- Preset é chamado de bloco de trabalho primeiramente o servidor mandar um aviso geral a todos as maquinas o que chamamos de broadcast, cada maquina que tem o arquivo cliente responde ao servidor dando sua localização o nome das maquinas que possuem um cliente instalador é nó, de posse das informações de quantidade e localização o servidor primeiramente aloca aquele nó para aquele arquivo assim ele compartilha com o nó o preset o preset é arquivo que vai nos dar informações sobre como será a saída do arquivo no nosso exemplo é ele que dirá que queremos um mp4 em 320p, com isso cada nó está alocado ao seu projeto e agora já sabe o que tem que fazer então o servidor começa a distribuir os blocos de trabalho para cada nó o nó então processa esse bloco e devolve ao servidor o servidor verifica se o arquivo está ok e então envia outro bloco de trabalho ao nó e continua assim até que tudo esteja terminado ao termina todos os blocos de trabalho, o servidor então junta toda essa informações une ela e escreve o arquivo agora já pode pegar o vídeo e sair por ai assistindo no celular. Como vimos o M.E.C é bem interessante mas apesar de seu uso domestico como vimos atrás ser fácil ele foi pensado para ser usado em ambiente comercial tendo como grande requisito ter alta performance exemplos de uso são tanto a processamento de arquivos muitos pesados como renders de grandes animações como também processamento de muito arquivos exemplo a policia tem um site onde recebe grande quantidade de arquivos e de diversos formatos mas para assistir esse arquivos a policia precisaria que esse vídeos fossem padronizado então o M.E.C entraria nisso receberia os arquivos e padronizava tudo assim a policia poderia trabalhar melhor com esses arquivos, outro exemplo eu tenho site é quero disponibilizar o vídeo para todos mas infelizmente a varias tipos de maquinas e muitos usuário e cada um iria querer o arquivo de um determinado jeito em vez de guardar vários arquivos em formatos diferente poderia simplesmente manter um arquivo original e ao usuário pedir o arquivo ele processaria o arquivo em tempo real. O M.E.C foi escrito em c/c++ e earlang o earlang é uma linguagem de programação de uso geral e um sistema para execução. Foi desenvolvida pela Ericsson para suportar aplicações Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação distribuídas e tolerantes a falhas a serem executadas em um ambiente de tempo real e interrupto. Ela suporta nativamente hot swapping, de forma que o código pode ser modificado sem a parada do sistema. Originalmente era uma linguagem proprietária da Ericsson, mas foi lançada em código aberto em 1998. A implementação da Ericsson executa um código interpretado em uma máquina virtual, mas também inclui um compilador para código nativo (ainda que não suportado para todas as plataformas). Criar e gerenciar processos é uma tarefa trivial em Erlang; de forma geral, threads são consideradas complicadas e fontes de muitos erros de programação em linguagens. A comunicação entre processos é feita por troca de mensagens ao invés de variáveis compartilhadas, o que remove a necessidade mecanismos explícitos de exclusão mútua. O nome da linguagem é uma homenagem a Agner Krarup Erlang, ainda que alguns considerem ser uma abreviação para Ericsson Toda a parte de administração do M.E.C é feito via web via api json HTTP o JSON um acrônimo para "JavaScript Object Notation", é um formato leve para intercâmbio de dados computacionais. JSON é um subconjunto da notação de objeto de JavaScript, mas seu uso não requer Javascript exclusivamente. O formato JSON foi originalmente criado por Douglas Crockford e é descrito no RFC 4627. O media-type oficial do JSON é application/json e a extensão é .json. A simplicidade de JSON tem resultado em seu uso difundido, especialmente como uma alternativa para XML em AJAX. Uma das vantagens reivindicadas de JSON sobre XML como um formato para intercâmbio de dados neste contexto, é o fato de ser muito mais fácil escrever um analisador JSON. Em JavaScript mesmo, JSON pode ser analisado trivialmente usando a função eval(). Isto foi importante para a aceitação de JSON dentro da comunidade AJAX devido a presença deste recurso de JavaScript em todos os navegadores web atuais. Na prática, os argumentos a respeito da facilidade de desenvolvimento e desempenho do analisador são raramente relevados devido aos interesses de segurança no uso de eval() e a crescente integração de processamento XML nos navegadores web modernos. Por esta razão JSON é tipicamente usado em ambientes onde o tamanho do fluxo de dados entre o cliente e o servidor é de supra importância (daí seu uso por Google, Yahoo, etc., os quais servem milhões de usuários), onde a fonte dos dados pode ser explicitamente confiável, e onde a perda dos recursos de processamento XSLT no lado cliente para manipulação de dados ou geração da interface, não é uma consideração. Enquanto JSON é frequentemente posicionado "em confronto" com XML, não é incomum ver tanto JSON como XML sendo usados na mesma aplicação. Por exemplo, uma aplicação no lado cliente a qual integra dados do Google Maps com dados atmosféricos através de SOAP, requer suporte para ambos formatos de dados. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação O uso do M.E.C. em algumas situações é bem interessante, exemplo uma empresa tem um parque computacional de 100 maquinas, mas 90% dessas maquinas usam somente uns 15% do seus processamento e ela precisa de uma solução de codificação ela poderia gastar com maquinas poderosas ou usar todo poder computacional de excedente ou até mesmo uma empresa poderia alugar um poder de processamento excedente de outra empresa ou seja as duas ganharia nessa situação uma venderia seu processamento excedente e a outra compraria de uma forma mais barata nesse caso além de toda a economia também estaríamos melhorando o rendimento energético dando um maior visão de sustentabilidade para empresa já que a mesma estaria aproveitando melhor os seus recursos usando de maneira mais eficiente evitando desperdícios. 7. Considerações finais A pesquisa tinha como foco achar uma forma de obter um menor custo e que ao mesmo tempo tivesse o mesmo desempenho de super-computadores e ao final da pesquisa vimos que isso era possível e de um forma simples concluindo assim que a solução é viável para diversas empresas. 7. Referências ACHARYA S, R. A. M. F. Broadcast disks: data management for asymmetric communication environments, 1996 AGOSTINI, L. Desenvolvimento de Arquiteturas de Alto Desempenho dedicadas à compressão de vídeo segundo o Padrão H. 264/AVC, 2007 ALVIM R, F. G. Implementação de uma Arquitetura para Serviço Distribuído com Grande Disponibilidade em Ambiente Linux. Eletrônica de Iniciação Científica da SBC. BARBOSA, J. V Simpósio Brasileiro de Linguagens de Programação. Uma linguagem multiparadigma orientada ao desenvolvimento de software. CANTÚ, E. Apostila: Redes de Computadores e a Internet. IF-SC , Campus São José, São José, 2009. CARNEIRO, P. REDES DE COMPUTADORES, 2005. Disponivel em: CHAVES, E. Multimídia: Conceituação, Aplicações e Tecnologia]. [S.l.]: [s.n.], 2006. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação COMER, D. E. Interligação em Redes com TCP/IP. Princípios, protocolos and arquitetura, Campus, v. 1, 2006. COULOURIS G, J. D. Sistemas distribuídos-conceitos e projeto. [S.l.]: [s.n.], 2001. COULOURIS, G. Sistemas Distribuídos 4ªed. Conceitos e Projeto. [S.l.]: [s.n.], 2007. DAVIE, L. L. P. A. B. S. Redes de Computadores: Uma abordagem de sistemase. Rio de Janeiro, : Campus, 2004. ELERI CARDOZO, M. M. Redes de Computadores - Arquitetura Internet. Departamento de Eng. de Computação e Automação Industrial (DCA), Faculdade de Engenharia Elétrica e de Computação (FEEC), UNICAMP, 1998. ELERI CARDOZO, M. M. Redes de Computadores - Modelo OSI / X.25. Faculdade de Engenharia Elétrica e de Computação (FEEC), UNICAMP, 2002. ESPINOZA, B. repositorio.bce.unb.br. Codificador distribuído de vídeo com complexidade variável a partir de codificação em resolução espacial mista. GRAZIOSI, D. pee.ufrj.br. CODIFICAÇÃO DISTRIBUÍDA DE VÍDEO, 2006. KUROSE, K. W. R. Redes de Computadores e a Internet. São Paulo: [s.n.], 2004. LFG SOARES, G. L. Redes de Computadores: das LANs, MANs e WANs às redes ATM. [S.l.]: Editora Campus, 2005. NOVAIS, E. São Carlos/SP- lbd.dcc.ufmg.br. Reengenharia de Software Orientada a Componentes Distribuídos, 2002. PETR, H. DISTRIBUTED ENCODING ENVIRONMENT BASED ON GRIDS AND IBP. Proceedings of Terena Networking Conference, Terena, 2004. PINHEIRO, E. Redes de Computadores, 2008. PITANGA, M. Construindo supercomputadores com Linux. Rio de Janeiro: Brasport: [s.n.], 2004. RB DE ARAÚJO, C. K. Especificação e análise de um sistema distribuído de realidade virtual, 1996. ROSS, J. F. K. A. K. W. Redes de Computadores e a Internet: Uma abordagem top-down. 3 ed. ed. São Paulo: [s.n.], 2006. RUDOFF, W. R. S. A. B. F. A. A. M. Programação de Rede UNIX: API para soquetes de rede. Porto Alegre: Bookman, 2005. TANENBAUM, A. S. Redes de Computadores. Rio de Janeiro: Elsevier, 2003. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação TANENBAUM, A. S. Sistema Distribuídos Princípios e Paradigmas. 2ª edição. ed. [S.l.]: Ed Pearson/ Prentice Hall, 2007. WANDERLEY, B. L. Codificação de Vídeo Utilizando API de Codificação MPEG-4 Visual. Marcus Vinicius M. G. Alves Acadêmico do 3º semestre de Ciências da Computação