O que é MCC?
Com o crescimento da computação e móvel muitas pesquisas novas estão sendo feitas nessa nova área de conhecimento, tentando minimizar seus erros e aumentar sua eficiência, em meio a esta pesquisas uma ideia foi surgindo e se instalando, embalada na no surgimento do modelo de computação na nuvem, e dela se criou uma nova área de pesquisa, o MCC (Mobile Cloud Computing). O MCC e junção destas duas áreas da computação, a computação móvel e a computação nas nuvem, para ser mais exato ela é a aplicação da computação nas nuvem na computação móvel, tentando assim suprir alguns defeitos dessa área.
O MCC e utilizando fazendo que processamentos e armazenamento que antes seriam feitos no dispositivo móvel sejam mandados para a cloud, a um dispositivo um suposto hardware já que será utilizando o hardware dos servidores cloud.
Aplicações do MCC
O MCC é na verdade um tentativa de melhora no uso computação móvel, sendo assim ele pode ter uma aplicabilidade a quase todas as arias dela, porem em algumas áreas o MCC pode ser melhor aplicado trazendo mais vantagens, algumas delas são:
- M-Commerce: Aplicar o MCC na área comercial pode trazer algumas vantagens ao aplicar o posicionamento, vindo da computação móvel, juntos a massa de dados do computação nas nuvens, assim ele pode receber propagandas personalizadas alem de fazer uma transição bancaria pela rede;
- M-learnig: A educação móvel pode aproveitar bastante do enorme banco de dados que a computação móvel tem a oferecer, assim os dados a serem pesquisados não iriam necessitar estar no dispositivo e na cloud sendo acessos somente quando pedidos pelo usuário;
- Aplicações médicas: Aqui o MCC pode trazer grandes vantagens com a transmissão de dados, pois dispositivos médicos, como um compasso, pode mandar informações diretamente para um servidor medico, melhorando o uso do aparelho, alem disso o medico também pode usar um enorme banco dados online para ajudar na previsão de doenças;
Games: O jogos são umas da aplicações que mais necessitam de processamento, usar a cloud para este processamento, deixando ao dispositivo apenas a interface pode cria uma economia de ate 45%;
Quais são as vantagens e desvantagens desse novo modelo?
Com a computação nas nuvens recursos como processamento e armazenamento são virtualizados e liberados para seu uso através da rede, estes recursos costumam ser muito escassos na computação móvel, evito as limitações de seus dispositivos, alem disso a computação móvel tem um grande problema quanto ao consumo de energia, já que neste caso ela é limitada, e como processamento e um dos maiores vilões do consumo de energia utilizar a computação nas nuvem para isto pode ser uma boa alternativa para diminuir este consumo.
Porém nada é perfeito nesse novo ambiente, e a mesma característica que traz as vantagens do MCC traz também desvantagem, pois se ao levar dados para rede você pode esta economizando no consumo de bateria com processamento, você por outro lado esta gastando energia com o a transmissão dos dados, então e necessário fazer uma balança de qual e melhor opção, o processamento na cloud ou no dispositivo. Além disso a computação nas nuvem precisa de um constante acesso a rede, o que nem sempre e possível na computação móvel, já que o dispositivo esta em movimento e mudando de estado a todo momento.
Desafios
Apesar das desvantagens da computação na nuvem o poder que modelo computacional tem é muito grande, assim ao invés de desanimar diante dessas desvantagens os cientistas tomaram elas como desafios criando vários pesquisas e ideias para contornar esse problemas, algumas dos problemas que estão sendo contornados são:
- Comunicação com a cloud: pelo motivo do dispositivo esta sempre em movimento na CM, frequentemente ele pode perde comunicação, ou entra em comunicação muito lenta, com a rede e com isso com cloud, o que pode ser extremamente danoso se o usuário estiver em um download, Para contorna isso algumas pesquisas testam a ideia de utilizar redes Adoc, conectando a outros dispositivos moveis que podem estar na rede, outra ideia que surge a de fazer o donwload direito do dispositivo, caso este tenha também baixado ele, similar um uma rede torrent;
- Heterogeneidade: Os dispositivos moveis mudam constantemente de rede, fazendo entra em diferentes tipos dela, 3G, wifi, Wimax… O que podes ser um problema para comunicação com a cloud. Pesquisadores tenta descobri modos de mudar esta rede de modo mais eficiente sem dado a comunicação, escolhendo sempre a mais rápida e com menos gasto de energia.
- Offloading: Este e um dos principais problemas da computação na nuvens, pois ele vai contra a ideia de que este modelo pode realmente trazer vantagens. O offloading e o fato de se processador dados fora do dispositivo, e do gasto de energia que se tem enviado os dados isto as vezes pode ser superior ao gasto que temos processando os dados no dispositivo, então sempre temos que colocar na balança os dois lados para saber qual e mais vantajoso. Porem só o fato de comparamos os dois já demanda um gasto de energia, o que torna tão difícil esse desafio.
Mas felizmente já houveram grandes avanços nessa área, e varias pesquisas já foram feitas.
Estas pesquisas se dividem em duas áreas, o offload normal, quando o dispositivo esta apenas em uma rede e não muda dela, e o dinâmico, onde a mobilidade do dispositiva faz com ele mude constantemente de rede, com velocidade e consumos de energia diferentes. No offload normal uma boa solução que vem sendo testada é comparar a estimativa do gasto de energia do processamento programa vs a estimativa do gasto de energia no envio do mesmo, escolhendo a melhor opção, para que este calculo não demore alguns pesquisadores tentam estimar sem a nescidade de entra no código a fundo. E o que faz o projeto Coign que alem disso distribui o programa de modo a fazer a estimativa pelas partes. Outro método que vem mostrando bastante eficaz (17% de economia) e o uso de estimativas online, aonde quando o programa e rodado a primeira vez e mandado a um banco de dados seu tempo e em sua próxima execução já se tem um dado para comparação. Já no offloading dinâmico uma das técnicas mais avançadas e o uso do MAUI, este programa divide o aplicativo em 2 pedaços, um a ser rodado no dispositivo, outro na cloud o que será mais custoso no dispositivo, caso este demore ou perca a conexão ele ainda poderá ser processado no dispositivo.
Segurança: A segurança e um fator que assusta muito os usuários, já que seus dados seriam jogados na rede onde supostamente todos tem acesso, porem vários ideia surgem para tirar esse medo e aumentar essa segurança, uma delas e autorização de chaves, que serão enviadas para o dispositivo do usuário assim somente ele poderá acessar os dados, outro e a utilização de senhas criptografados.
Context-aware para MCC: Devido a mobilidade da computação móvel, ela constantemente muda de contexto, devido mudanças de recursos hardware (ligar um novo dispositivo como GPS) como recursos do ambiente (entra em lugar sem rede), o que pode ser danoso para o uso da cloud computing, para isso alguns pesquisadores devolveram o VOLARE um middleware que vigia a mudança constante de contexto do dispositivos tentando tomar a melhor solução ainda em tempo de execução;
Como foi demonstrado muitos dos problema da MCC então em pesquisa por vários pesquisadores, porem alguns dele ainda estão em aberto deixando vagas para novas pesquisas serem começadas, entre eles estão:
- Novas redes: A criação de novas redes para computação móvel que não passariam ou ao menos diminuiriam todos esse problemas;
- Gestão de rede: O surgimento de um método mais eficaz para gerir essa mudança constante de rede que sobre esse dispositivos.
- Baixar os custos: Como o custo de energia de processamento ainda é uma dos maiores problemas desse modelo de computação o aparecimento de novos processadores mais eficientes poderia ser a solução esse desafios;
- Melhoria na interface com usuário: O usuário da computação móvel e exigente, e uma de suas maiores preocupações e a interface e o relacionamento com o programa, algo que não era tão importante para os usuário de cloud, já que sua maioria eram pesquisadores, sendo assim esse ainda e um ponto a crescer muito nessa área da computação;