IMPRIMIR VOLTAR
A. Ciências Exatas e da Terra - 2. Ciência da Computação - 10. Redes
MÓDULO PARA REFINAMENTO DE PESQUISAS EM AMBIENTES DE GRID SERVICES
Hung Ruo Han 1, 2
Douglas de Oliveira Balen 1, 2
Carlos Becker Westphall 1, 2
Carla Merkle Westphall 1, 2
Marcelo Digiacomo Chryssovergis 1, 2
Júlio Alexandre de Albuquerque Reis 1, 2
(1. Departamento de Informática e Estatística / INE; 2. Universidade Federal de Santa Catarina / UFSC)
INTRODUÇÃO:

Um grid computacional é caracterizado por um conjunto grande de recursos heterogêneos distribuídos através de diversos domínios administrativos, tratando o conjunto de recursos (hardware e software) como se fosse um único e poderoso computador. Tais recursos podem ser simples estações de trabalho, banco de dados ou até mesmo clusters.

            Um sistema grid pode envolver uma quantidade grande de nodos participantes nas organizações virtuais, sendo que cada nodo pode ser cliente e/ou fornecedor de recursos. Quando clientes desejam utilizar um serviço, realizam uma pesquisa para encontrar fornecedores que possam lhe oferecer tal funcionalidade. No caso do Globus, middleware muito conhecido, essa busca é feita pelo MDS, que retornará uma lista com os recursos capacitados a responder tal serviço. Ao retornar essa lista, o MDS não leva em consideração se o cliente satisfaz as condições de acesso a esses recursos, podendo retornar muitos serviços que ao tentar fazer uma solicitação será negado o acesso.

            Para solucionar esse problema, o modelo prevê a criação de um arquivo de política para cada recurso, que terá de ser depositado em um repositório e depois será analisado juntamente com o arquivo de solicitação do sujeito. O objetivo é encontrar fornecedores de serviço cujas políticas impostas sejam compatíveis com os atributos do sujeito que busca um serviço e retornar uma lista sinalizando os serviços que podem ser acessados.
METODOLOGIA:

Inicialmente foram feitos vários estudos teóricos para adquirirmos conhecimentos, em relação a melhor forma para definir a arquitetura do módulo. A idéia deste trabalho baseou-se principalmente nos modelos Matchmaking e Gangmatching, ambos voltados para o projeto Condor. O serviço de busca de recursos nestes dois modelos inclui a verificação da política de segurança dos recursos.

            No Condor, utiliza-se a representação dos recursos e suas políticas em termos de classads, um modelo de dados semi-estruturado desenvolvido para este fim. No modelo proposto neste trabalho, para aplicar o conceito similar (de encontrar pares compatíveis entre sujeito e recurso), foram utilizados padrões baseados em XML, o XACML (eXtansible Access Control Markup Language) para definir as políticas dos serviços e o SAML (Security Assertion Markup Language) para definir os atributos, permissões e ações dos sujeitos.

            Para a implementação do protótipo de refinamento de buscas, foram necessárias as instalações de algumas ferramentas, como: Java 1.4.2_10 que é uma linguagem de programação desenvolvida pela Sun; Axis-1_2_1 que é uma implementação do SOAP, utilizado para troca de mensagens entre programas. Será o SOAP que encapsulará as mensagens entre cliente e refinador; Apache Tomcat 4.1.31 será de grande importância para o envio da requisição feita pelo usuário e a resposta do servidor; Xalan será utilizado para realizar a transformação de uma requisição de autorização SAML para um contexto XACML.
RESULTADOS:

Resumidamente o modelo de refinador de buscas segue os seguintes passos: O usuário acessa o refinador-cliente, passando o seu nome, o nome do serviço que deseja utilizar e a ação que ele deseja (leitura, escrita ou execução) como parâmetros. O refinador-cliente automaticamente gerará um arquivo SAML, que conterá os seus dados com os parâmetros passados pelo usuário, que será encapsulado no SOAP (utilizando o Axis) e enviado para refinador-servidor.

No refinador-servidor acontece a transformação da requisição SAML para um contexto XACML (utilizando o Xalan) e será verificada a compatibilidade entre a requisição do cliente e as políticas do recurso com serviço desejado. Após a verificação será retornada uma lista contendo todos os serviços cadastrados no repositório solicitados pelo usuário, juntamente com a permissão de acesso (negado ou permitido) para cada um deles e informações do serviço (endereço, custo, capacidade de armazenamento, etc).

Após implementarmos o modelo proposto, foi feito um estudo de caso com as seguintes características: o refinador-servidor possui 14 arquivos de políticas do serviço, cujo nome é “ServidorArquivo”; foi realizado as 15 horas; o nome do serviço buscado é “ServidorArquivo” e a ação desejada pelo usuário é de leitura.

O resultado obtido foi que em apenas 3 dos 14 serviços cadastrados, o usuário teria acesso naquele horário, representando apenas 21% do total de serviços disponíveis.
CONCLUSÕES:

Desenvolvemos neste trabalho um módulo para refinamento de pesquisas em ambientes de Grid Services. Este módulo visa encontrar fornecedores de serviço cujas políticas impostas sejam compatíveis com os atributos do sujeito que busca um serviço e retornar uma lista sinalizando os serviços que podem ser acessados.

            Ao analisar o resultado descrito acima, é notório que um refinador de buscas é necessário. Como descrito anteriormente, a probabilidade do usuário conseguir acessar um serviço na primeira tentativa é de apenas 21%. Se imaginarmos um cenário onde existam 1000 serviços cadastrados e mantendo a mesma probabilidade, apenas 210 serviços poderiam ser acessados. Note que o número de negações é aproximadamente 4 vezes maior do que as das permissões.

            Sem o módulo refinador, existiria uma grande probabilidade do usuário tentar acessar vários serviços que não possui acesso, perdendo bastante do seu tempo e muitas vezes não sabendo o motivo da rejeição do serviço.

            Com o refinador de buscas é possível também, diminuir o tráfico de comunicação da rede e o número de iterações com o módulo alocador do serviço no recurso, já que tentativas desnecessárias seriam evitadas.
Instituição de fomento: CNPQ
Trabalho de Iniciação Científica  
Palavras-chave: Grid; Grid Service ; Controle de acesso.
Anais da 58ª Reunião Anual da SBPC - Florianópolis, SC - Julho/2006