terça-feira, 8 de dezembro de 2015

Virtualização

O que é Virtualização?
Ao falar em virtualização, é inevitável que a maioria das pessoas a associem à ideia de vários sistemas operacionais rodando na mesma máquina. Esse é, na verdade, um dos diversos tipos de virtualização: a de hardware. Se por um lado ela não é a única, por outro é, certamente, a mais perceptível.
A VIRTUALIZAÇÃO EM SI

Para entender perfeitamente o conceito da tecnologia, deve-se traçar um paralelo entre o que é real e o que é virtual. Seguindo essa linha de raciocínio, algo real teria características físicas, concretas; já o virtual está associado àquilo que é simulado, abstrato. Dessa forma a virtualização pode ser definida como a criação de um ambiente virtual que simula um ambiente real, propiciando a utilização de diversos sistemas e aplicativos sem a necessidade de acesso físico à máquina na qual estão hospedados.

Isso acaba reduzindo a relação de dependência que os recursos de computação exercem entre si, pois possibilita, por exemplo, a dissociação entre um aplicativo e o sistema operacional que ele utiliza, como utilizar o Microsoft
Word no Linux ou usar o Whatsapp no pc.
E qual é a vantagem?

Prioritariamente, econômica. Com a iminente crise ambiental global e a crescente necessidade de diminuir o desperdício de recursos, não há nada mais natural que o surgimento de alternativas para otimizar o uso de tais recursos.

Imagine um computador no qual opere um servidor de e-mails: mesmo que o disco rígido seja plenamente utilizado, não se pode dizer o mesmo sobre sua capacidade de processamento: enquanto ela pode chegar ao ápice em horários de pico, também pode se aproximar da ociosidade durante a madrugada. E se essa “sobra” fosse usada para gerar relatórios, aproveitando melhor o tempo e processamento livres? Na teoria, surtiria a tão desejada economia de recursos; na prática, isso é obtido através da virtualização.

OS TIPOS DE VIRTUALIZAÇÃO

Virtualização de Hardware

Como mencionado no começo da matéria, a virtualização de hardware consiste em rodar vários sistemas operacionais na mesma máquina. Isso é possível com o uso de programas específicos, que geram máquinas virtuais (Virtual Machines, ou VMs): estas emulam os componentes físicos de um PC, possibilitando que um sistema operacional diferente seja instalado em cada uma delas.

Há duas grandes vantagens na adoção dessa tecnologia: uma voltada a usuários, outra a servidores. No caso dos primeiros, o trunfo consiste em eliminar a incompatibilidade entre aplicativos e sistemas operacionais; pense em um usuário cujo PC tenha o Windows Vista instalado, mas que deseje rodar um aplicativo que só é compatível com o Windows XP. Isso é possível com a criação, nesse PC, de uma VM que rode o WinXP: depois disso, basta instalar o aplicativo nessa VM e executá-lo normalmente.

Quando aos servidores, sua virtualização permite que, ao invés de se ter diversos subservidores, os processos sejam distribuídos de forma equânime entre um número menor de computadores. Isso reduz a quantidade de mão-de-obra técnica, o espaço para alocar as máquinas e o gasto com eletricidade necessários; tudo isso incorre em economia.
Virtualização da Apresentação

A maioria dos programas disponíveis no mercado funciona no mesmo local em que se encontra a instalação. Isso pode parecer óbvio para usuários tradicionais, mas tal barreira foi quebrada com o uso da Virtualização da Apresentação: trata-se do acesso a um ambiente computacional sem a necessidade de estar em contato físico com ele, por exemplo o programa TeamViewer. Isso propicia, entre outras coisas, a utilização de um sistema operacional completo de qualquer local do planeta, como se estivessem instalados no seu PC. O conceito é bem parecido com o de acesso remoto, com a diferença de que vários usuários podem se beneficiar do mesmo sistema simultaneamente.

Virtualização de Aplicativos

Cada aplicativo depende do sistema operacional para uma variedade de serviços, como alocação de memória ou gerenciamento dedrivers. Resolver incompatibilidades entre determinado programa e o sistema operacional instalado na máquina é fácil, podendo ser feito uso de qualquer um dos dois tipos de virtualização já citados (hardware e apresentação). Mas é quando o conflito é entre dois aplicativos distintos? Pode ser que cada um deles requeira, por exemplo, uma versão diferente de uma mesma DLL.

Isso é resolvido através da virtualização de aplicativos. A técnica consiste em ter uma única cópia de determinado aplicativo, instalada em um servidor virtual; usuários que desejarem ter acesso a tal aplicativo podem fazê-lo diretamente, sem a necessidade de que ele também esteja instalado na máquina física. A partir daí o programa pode ser executado normalmente, já que as características específicas de cada aplicativo (seus drivers, entradas no registro, DLLs e afins) são compiladas e baixadas diretamente para o PC do usuário, através da geração de um aplicativo virtual que fica à parte.

Fontes:

http://www.tecmundo.com.br/web/1624-o-que-e-virtualizacao-.htm

--Texto enviado por: Tiago.

Segurança na Nuvem

Segundo Castro e Sousa (2010) a segurança em Cloud Computing leva questões relacionadas à privacidade e segurança das informações que residem nas nuvens. Os autores afirmam que apesar de inúmeras preocupações com o assunto, o debate sobre os riscos na nuvem muitas vezes ignora a importância de criar planos de contingência e Acordo de Níveis de Serviço (ANS) (em inglês SLA – Service Level Agreement), voltados a garantir confiabilidade e a certeza de que os negócios não sofrerão grandes baques no caso de um incidente.

Conforme os mesmos autores, os riscos referentes à segurança e privacidade das informações na Nuvem bem como a portabilidade dos dados delineia-se como sendo de alta criticidade. Além disso, quando as informações críticas das empresas estão nas mãos de outras pessoas também pode refletir em menos garantia do cumprimento das leis.

Na computação tradicional os usuários têm total controle sobre seus dados, processos e seu computador (Kandukuri et. al., 2009 apud CASTRO; SOUZA, 2010). Em contrapartida, na Computação em Nuvem todos os serviços e manutenção dos dados são fornecidos por um provedor de nuvem. Neste contexto o cliente (usuário) desconhece quais processos estão em execução ou onde os dados estão armazenados, essa abstração de atividades se deve justamente ao dinamismo inerente da nuvem. Sendo assim o cliente não tem controle sobre todas as movimentações de seus dados na nuvem. (CASTRO; SOUZA, 2010).

Segundo Castro e Souza (2010) o serviço de Computação em Nuvem, por ser novo no mercado, torna-se difícil criar padrões a partir de experiências adquiridas com a computação tradicional. Neste sentido, é necessário buscar cada vez mais adoção das melhores práticas em segurança, para que as organizações possam desfrutar dos benefícios da Computação em Nuvem.Neste sentido, Castro e Souza (2010) levantam o seguinte questionamento: “Então como exigir garantias de que as informações residentes na nuvem estão realmente seguras?”.

De acordo com Marcon Junior et al (2010) os serviços fornecidos pela nuvem computacional podem ser disponibilizados em qualquer local físico de abrangência da mesma, ou utilizando componentes de infraestrutura compatíveis com o ambiente do consumidor. Os autores afirmam que a gerência de um grande número de serviços (SaaS, PaaS, IaaS) e recursos físicos pode gerar um volume considerável de dados a ser administrada de maneira centralizada, pois será necessário coletar, armazenar, analisar e processar estes dados. Assim, a administração centralizada pode ser considerada impraticável, e portanto faz-se necessário instanciar serviços de gerenciamento distribuídos e fracamente acoplados (com baixa dependência funcional).

Desta forma, para os autores, é necessário a implantação de um modelo de gerenciamento seguro e confiável. A implantação de mecanismos de autenticação robustos e esquemas de delegação de direitos funcionando de maneira confiável são fundamentais para o correto gerenciamento de identidades e para a prestação de serviços em nuvens computacionais.

Marcon Junior et al (2010) citam um modelo denominado CloudDataSec, a fim de prover a segurança em CloudComputing. Este modelo, conforme os autores, é composto das seguintes camadas:

Análise de risco: estabelece e gerencia as avaliações de riscos sobre a terceirização de serviços na nuvem, auxiliando na identificação das informações e serviços que devem permanecer dentro dos limites da organização consumidora.

Orientações de segurança: descreve as políticas e restrições legais relativas à privacidade aplicáveis ao ambiente de computação em nuvem.

Monitoração de qualidade de serviço (QoS): um acordo de nível de serviço (Service Level Agreement – SLA) entre clientes e fornecedores especifica os níveis de exigência de segurança e privacidade, além de garantir a segurança jurídica dos contratos sobre os serviços.

Criptografia dos dados e registros (logs): a criptografia visa proteger a confidencialidade e integridade das informações, enquanto os registros fornecem um histórico completo das atividades do usuário.

Comunicação criptografada: nesta camada são utilizados os protocolos padronizados como SSH, IPSec e suas implementações.

Para os autores, a aplicação do modelo CloudDataSec garante a aderência à e a proteção das informações contra alguns ataques, como man-in-the-middle (ataque do intermediário). Este modelo sugere três níveis de garantia de segurança, sumarizados na tabela 1. Marcon et al (2010) afirmam que após uma análise de riscos, os seguintes níveis de segurança são identificados:

Segundo Castro e Sousa (2010) no cenário corporativo é comum observar que as questões de segurança da informação não são tratadas em um nível de gestão da organização, tendo como conseqüência a falta de recursos para minimizar os riscos existentes ao nível exigido pela estratégia organizacional e definido pela análise de risco.

Desta forma, conforme afirmam os autores, o processo de Gestão de Risco na nuvem exigirá modificações significativas na forma como hoje as organizações trabalham para mitigar os riscos, principalmente os relacionados à segurança da informação. Segundo Miller, et al (2009 apud CASTRO;SOUSA, 2010, p.4), os principais objetivos do processo de Gestão de Risco na nuvem, incluem:
O planejamento para proteção da informação baseados em ativos e em Planos de Mitigação de Riscos;

Reforçar a capacidade da organização para selecionar e aplicar a proteção baseada no risco específico e nas ameaças que afetam um determinado ativo;
Assegurar que uma metodologia de gestão de risco de segurança da informação está sendo utilizada em toda organização.

Castro e Sousa (2010) alertam que a adoção de um modelo de serviço de nuvem mal dimensionado pode representar sérias ameaças de segurança da informação para as empresas. Principalmente para aquelas que buscam economizar em licenciamento de software e serviços de infra-estrutura. Desta forma, um modelo de Gestão de Risco bem delineado se torna crucial para garantir que a informação está ao mesmo tempo disponível, protegida e segura.

Os autores citam alguns exemplos de riscos de computação em nuvem para a empresa que precisam ser gerenciados:

A escolha de um provedor de nuvem caracteriza-se como sendo um ponto extremamente crítico no processo de adoção do modelo. As empresas precisam concentrar uma atenção especial nesse ponto. Quesitos como reputação, a história e a sustentabilidade são fatores que devem ser levados em consideração. A sustentabilidade é de especial importância para garantir que os serviços estarão disponíveis e os dados poderão ser rastreados.

O fornecedor de nuvem muitas vezes assume a responsabilidade pela manipulação da informação, aspecto que deve ser tratado como crítico para o negócio. Qualquer dificuldade ou falha para se cumprir os SLAs acordados impactará não somente na confidencialidade, mas também na disponibilidade, afetando severamente as operações do negócio.

A natureza dinâmica da computação em nuvem pode resultar em confusão a respeito de onde a informação realmente reside. Para negócios onde a recuperação da informação é crítica, isso poderá gerar atrasos.

O acesso de terceiros às informações sensíveis cria um risco de comprometimento das informações confidenciais. Na nuvem, isto pode representar uma ameaça significativa para a proteção da propriedade intelectual e de segredos comerciais.
Os aspectos legais relacionados à localização física dos Data Centers, quando esses estão localizados em países com um sistema legal instável, poderá levar à violação de leis de proteção de dados, afetando diretamente à empresa. Dessa forma a conformidade com os regulamentos e leis em diferentes regiões geográficas podem ser um desafio para segurança dos dados das empresas. Atualmente há pouco precedente em matéria de responsabilidade jurídica na nuvem.

Devido à natureza dinâmica da nuvem, a informação não pode ser imediatamente localizada no caso de um desastre. Planos de Continuidade de Negócio e Recuperação de Desastres devem ser bem documentados e testados.

Além do risco de ocorrer uma interrupção na continuidade dos negócios, outro fator que deve ser considerado são as invasões por hackers aos ambientes da nuvem, denominado por especialistas de Cyber-Cloud. Diferentemente dos hackers comuns esses se apresentam como empresas sofisticadas e bem estabelecidas. Por trás de uma lógica empresarial bem definida, esconde-se uma organização criminosa, que investe alto em pesquisas com a finalidade de ganhar dinheiro.

Segregação de Dados. Segundo o Gartner Group (2009), é preciso descobrir como se dá a segregação dos dados pelo provedor e principalmente se este utiliza criptografia para os dados em trânsito e/ou armazenados. O fornecedor de nuvem precisa também fornecer evidências de que os esquemas de criptografia utilizados foram projetados e testados por especialistas experientes.

Recuperação. Mesmo que o cliente não saiba onde os dados estão, e o que vai acontecer com seus dados e serviços em caso de catástrofe, o fornecedor de nuvem deve saber. Portanto é importante questionar o provedor de nuvem se o mesmo tem a capacidade de fazer uma restauração completa e quanto tempo vai demorar.

Apoio à investigação. Auditar atividades inadequadas ou ilegais pode ser impossível em Computação em Nuvem. A dificuldade é devida as constantes mutações dos conjuntos de hosts e centros de dados. Se não for possível conseguir um compromisso contratual de apoio a formas específicas de investigação, os pedidos de investigação e descoberta serão impossíveis de se realizar.

Castro e Sousa (2010) afirmam que atualmente entidades como o Open Cloud Manifesto, Computing Use Cases Group e o Cloud Security Alliance trabalham no desenvolvimento de padrões de segurança para computação em nuvem, levando essas pesquisas para um grande número de áreas, incluindo auditoria, aplicativos, criptografia, governança, segurança de rede, gerenciamento de risco, armazenamento e virtualização.

http://www.de-seguranca.com.br/a-seguranca-em-computacao-nas-nuvens/
--Texto enviado por Leonardo Carvalho

Computação na Nuvem

Introdução

No século 19, quando a eletricidade ainda estava começando, cada empresa produzia sua própria eletricidade, utilizando geradores à vapor. Porém conforme a demanda foi aumentando e tornando-se mais complexa, companhias especializadas em eletricidade surgiram, e tornou-se mais vantajoso conectar-se à rede elétrica de uma dessas companhias ao invés de produzir a sua própria.
A computação segue um caminho parecido. Hostear seu site em uma companhia especializada já é mais comum do que tentar montar um servidor no seu quarto. E sites são só uma pequena parte do que a computação na nuvem pode oferecer. Cada vez mais as empresas para em “produzir computação” para acessar “computação pronta” na nuvem, reduzindo a necessidade de comprar e manter software e hardware.
Imaginem a dor de cabeça se cada empresa tivesse que manter suas próprias redes elétricas. Se preocupar com usinas, reatores, represas, fios, postes. Bom, se preocupar em manter centenas de computadores para funcionários, mais servidores para Hostear sites e arquivos, mais um departamento de TI... é uma dor de cabeça parecida, e que só aumenta conforme a informática se torna mais complexa.

 

Definição

O Instututo Nacional de Padrões e Tecnologia dos Estados Unidos estabelece cinco características essenciais da Computação na Nuvem. Vamos usar o e-mail como exemplo.
1- Self-service sob demanda. O usuário pode ter acesso à capacidades computacionais, como aplicativos ou armazenamento, automaticamente. Ou seja, sem precisar de interação humana com o servidor. Ex: Você não precisa conversar com uma atendente se quiser enviar um e-mail.
2- Conectividade ampla. Ter seus serviços disponíveis pela rede e acessíveis através de mecanismos que possam ser utilizados por qualquer tipo de plataforma. Ex: Você pode acessar seu e-mail do PC e do Tablet.
3- Recursos acumulados. O provedor possui recursos acumulados e disponíveis para atender diversos clientes a qualquer momento. Ex: Você não tem que pegar uma ficha para entrar no e-mail.
4- Elasticidade rápida. A capacidade do sistema pode se estender e se contrair rapidamente, dependendo da demanda dos usuários.
Ex: Digamos que o Gmail possui 10 servidores dedicados. Elasticidade significa que, quando for 3 da manhã e ninguém estiver usando o Gmail, apenas 1 desses servidores estará funcionando, enquanto os outros nove podem estar desativados ou suprindo outro serviço. Mas se houver um pico de uso ao meio dia, todos os dez servidores serão ativados (muitas vezes automaticamente) para suprir à demanda.
5- Serviço calculado. Sistemas na nuvem podem controlar e otimizar seus recursos através da coleta de dados de uso. Ex: É uma extensão da elasticidade. Algumas empresas tornam esses dados de uso públicos, para favorecer transparência.

Arquitetura da nuvem.

A maioria das utilizações da nuvem envolvem sistemas distribuídos complexos, que acabam sendo únicos dependendo de qual tipo de serviço está sendo fornecido e por quem. Mas alguns componentes básicos são comuns à quase todos.

1- Plataforma final.

Pode ser um computador comum, um dispositivo especial para conectar-se ao serviço (geralmente uma pequena caixa ou pen-drive conectado a um monitor), um dispositivo mobile.

2- Plataforma Inicial.

O servidor.

3-Rede.

Normalmente a internet, mas pode ser usar uma conexão em LAN para redes privadas.

4- Sistema de Aplicação da Nuvem.

Existem três métodos. Aplicação Publica, Privada ou Hibrida.
     Na aplicação publica, os serviços são providos por um terceiro através da internet. Serviços desse tipo normalmente são vendidos sob demanda, e o usuário paga por CPU, armazenamento ou banda larga utilizada. Exemplos são Amazon, IBM.
     Na aplicação privada, serviços são fornecidos a partir de um centro de dados da própria empresa. Esse método garante que a empresa tenha controle sobre onde ficam armazenados seus dados, e quem em acesso.
     Na aplicação hibrida, há uma mistura dos dois. A empresa pode rodar tarefas mundanas do dia a dia na rede publica, enquanto mantem trabalho sensível e sigiloso dentro da rede privada.

Tipos de Serviço

Existem três modelos de serviços principais da nuvem: Fornecimento de Software, Plataforma e Conectividade. Tenha em mente que, como o campo ainda está se desenvolvendo, é difícil dividi-lo em categorias. O mesmo motivo pelo qual a definição de Computação na Nuvem é tão vaga.

1- Fornecimento de Software.

São empresas que fornecem aplicações rodando numa infraestrutura na nuvem. Estes são aplicativos são accessíveis através de navegadores, ou um programa especifico.
Ex: E-mail, Salesforce. Google Docs. Google Drive e outros sistemas de armazenamento na nuvem também são incluídos aqui, por eliminação.

2- Fornecimento de Plataforma.

Aqui entra o conceito de virtualização, que será explicado em breve. O conceito geral é: a empresa fornece uma plataforma, normalmente um sistema operacional, e um arranjo de aplicativos que podem ser utilizados pelo usuário.

3-Fornecimento de Infraestrutura.

Também conhecidos como sistemas de “puro metal”. Basicamente a empresa só fornece acesso à infraestrutura – o hardware -- e o usuário é responsável por instalar o que ele quiser usar. É o que permite mais liberdade ao usuário, mas também querer mais manutenção. O hosteamento de websites está numa zona cinza entre esse ponto e ponto 2.
A Netflix, por exemplo, usa a infraestrutura da Amazon.


Vantagens

De acordo com pesquisas, 63% dos executivos de TI já preferem usar algum nível de integração com os serviços da nuvem, seja esta total ou parcial. Vejamos quais são as vantagens que atraem estes consumidores.

Velocidade: A elasticidade dos sistemas na nuvem garante uma velocidade constante.

Custo: Provedores da nuvem prometem reduções de preço. Na realidade esta é uma questão complexa, dependendo do tamanho da empresa e do tipo de serviço buscado. Em geral, a vantagem é mais clara à curto prazo e para empresas pequenas. Também é mais clara com o uso de sistemas virtuais, que eliminam a necessidade de se manter uma CPU para cada computador.

Acesso de qualquer lugar: Com a nuvem, os dados – e, dependendo, os aplicativos -- ficam sempre acessíveis pela internet, dando mais mobilidade e flexibilidade aos funcionários. Permitir que todos os seus funcionários tenham acesso aos dados também aumenta a produtividade, tornando mais fácil que as pessoas trabalhem no mesmo projeto simultaneamente, sem ficar mandando arquivos por e-mail ou pendrive.

Manutenção: Exceto em casos específicos, a manutenção dos sistemas na nuvem fica todo por conta do provedor, o que corta custos e preocupações.

Diluição de riscos: Se você é dono do servidor, e ocorre uma falha catastrófica, você sozinho tem que pagar por um servidor novo. Mas se uma companhia atende centenas de usuários, e tem dezenas de servidores, e um deles quebra, quem paga o servidor novo é ela. E mesmo que a companhia tenha que aumentar o preço para compensar o prejuízo, o aumento é diluído entre a centenas de usuários, e você individualmente acaba pagando menos mesmo assim. Isso é o risco diluído.

Backup e Recuperação de Erro: A maioria dos sistemas na nuvem tem todos os seus arquivos e programas “espelhados” em locais diferentes. É por isso que quando um raio caiu em um servidor da Amazon, nenhum arquivo foi perdido.

Atualizações Automáticas: É trabalho do provedor manter seu software atualizado, salvo raras exceções.

Desvantagens.


Internet: Serviços na nuvem são totalmente dependentes de uma conexão com a internet. Se a internet cair, ninguém trabalha. Também é difícil de expandir para a nuvem em países onde a internet é cara e/ou instável.

Economia e Produtividade: São coisas boas para o dono da empresa, mas não para a gente, pois ambas significam corte de empregos na área de informática. Um grande provedor de máquinas virtuais na nuvem pode substituir centenas de departamentos de TI enquanto empregando só uma fração do número de funcionários.

Atualizações Automáticas: Você chega segunda feira no trabalho, e bam!, seu Word pulou do 2010 pro 2015. Lá se vai um dia perdido tentando descobrir onde ficam todos os novos botões. Enquanto que, se você tivesse escolha, teria mantido o 2010 na sua máquina para sempre. Sem contar o risco de a nova versão do programa não suportar certos tipos de arquivo que você usa, ou ser simplesmente pior que a anterior.

Falta de Controle: Na nuvem, quem cuida de tudo não é um funcionário seu, é um funcionário de outra empresa. O que torna confiança nessa tal empresa crucial.

Conclusão:


A nuvem veio para ficar, e é um mercado que está evoluindo a cada dia. Porém o quanto do mercado ela será capaz de tomar é uma questão em aberto. Eu acredito que jamais viveremos em um mundo na nuvem, mas sim em um mundo hibrido, com companhias e usuários usando a nuvem apenas quando é conveniente. Basicamente o que temos hoje, exceto que a nuvem será mais presente.

terça-feira, 16 de junho de 2015

Clusters



Um cluster, ou agregado de computadores, é formado por um conjunto de computadores conectados a um sistema distribuído. Geralmente é construído a partir PCs comuns, que se conectam e trabalham como uma única máquina de grande porte.
Há diversos tipos de cluster. Alguns exemplos:
  • Cluster de alto desempenho: Funciona permitindo computadores comuns, interligados, sejam capazes de processar um gigantesco volume de dados.
  • Cluster de alta disponibilidade: O objetivo principal não é aumentar o desempenho do processamento, mas sim garantir que ele continue ocorrendo. Possuem vários sistemas de segurança, sendo capazes de detectar erros e reagir a eles. Tudo para garantir a continuidade.
  • Cluster para balanceamento de carga: Busca equilibrar a distribuição de processamento. Nesse tipo de cluster, se houver alguma falha seu funcionamento é interrompido.

Bibliografia:

https://technet.microsoft.com/en-us/library/cc785197%28v=ws.10%29.aspx


--Texto Enviado por Danilo Rezende

Um Exemplo de Virtualização.


Introdução: Computação na Nuvem


quarta-feira, 6 de maio de 2015

Introdução: O que é Computação Distribuida


A Computação Distribuída é um campo que estuda Sistemas Distribuídos.
Um Sistema Distribuído é um sistema de software em que os componentes conectados por uma rede se comunicam e coordenam as suas ações, a fim de alcançar um objetivo comum. Essa união faz a capacidade de processamento atingir escalas impossíveis de outra forma.
Exemplos de sistemas distribuídos variam de jogos MMO (Massivos multijogadores online) até programas P2P. Processadores Dual-Core são sistemas distribuidos. Assim como a internet inteira.
Nesse campo, organizar a interação entre cada computador é primordial a fim de usar o maior número possível de máquinas e computadores diferentes. Tal organização depende do protocolo utilizado, este que deve o mais geral possível a fim de garantir que, por exemplo, um Torrent possa ser baixado por um Windows 8 e por um XP.

Biliografia:
http://en.wikipedia.org/wiki/Distributed_computing
http://dcg.ethz.ch/lectures/podc_allstars/