GoGlobal GraphOn Victor C. de Lacerda RA:05032032
Tópicos Especiais em Tecnologia da Computação 8º Semestre Profº Levi
O software: Software que além de portar quaisquer aplicações (Windows, Unix ou Linux) para a Internet (sem reescrevê-las), permite também que ambientes corporativos adotem o conceito de SBC - Server Based Computing (Processamento Baseado em Servidor), visando centralizar a administração dos recursos de informática. Também com o GoGlobal é possível integrar ambientes heterogêneos. Corporações adeptas ao software livre já estão migrando suas estações para o Sistema Operacional Linux, porém continuam acessando aplicações Windows através do GoGlobal. Desenvolvimento: Desenvolvido pela GraphOn, empresa americana fundada em 1982. Inicialmente desenvolvia hardware para vídeo, tendo sido a partir de 1996 se focado para o GoGlobal como plataforma WEB Enable independente de SO. Nessa data desenvolvia aplicações SBC para Linux e Unix. Em 2000 expandiu sua área de atuação ao incluir também sistemas para a plataforma Windows. A GraphOn está presente em todos os continentes e na America latina possui representantes no México, Peru, Guatemala, Costa Rica El Salvador, Chile e Brasil. Seus principais clientes são utilizando o sistema GoGlobal são: Ericson, Volvo, Honeywell, Compuware,, Alcatel, France Telecom, Mitsubishi, NTT, ADP, Agilent, Verizone, Front Range Solutions, USA Department of Defense, Cingular Wireles, Tyco Eletronics. Distribuição no Brasil: No Brasil é distribuído pela Elosoft, parceira tecnológica no Brasil de empresas como Oracle, Compuware, Symantec, Graphon, Powerlogic e MobiOn. Está no mercado de tecnologia desde 1994 e é representada em vários estados brasileiros através das suas revendas. Alguns clientes da Elosoft são: HSBC, Bunge, Coamo, TIM, GVT, Dana, Gerdau, CEEE, Unimed, Seara-Cargill, Eletrosul, Siemens, Kraft Foods, Petroquímica.
Sistema GoGlobal: O sistema surgiu de uma série de necessidades, tais como reduzir custos de licenciamentos, tornar mais acessíveis os sistemas da empresa e
possibilitar integrá-los com diferentes plataformas tanto nos servidores quanto nas maquinas clientes. É um sistema de web-enabling, ou seja, ele utiliza a rede(internet, intranet, ou extranet) para distribuir as aplicações. É voltado principalmente a disponibilizar sistemas legados das empresas de forma que o acesso a eles não se limite tanto ao local de trabalho ou ao computador de cada funcionário na empresa. O sistema opera em ambientes mistos heterogêneos, ou seja, permite que sejam disponibilizadas em um mesmo computador cliente aplicações que provem de servidores Linux, Windows, Unix Mac OS, etc. criando um ambiente conhecido como cross platform. Cross platform é o termo usado para sistemas computacionais que são implementados e/ou inter-operados em múltiplas plataformas. Softwares cross platform podem ser divididos em 2 tipos: um deles requer compilação ou desenvolvimento individual para cada plataforma na qual irá suportar e o outro pode rodar diretamente em diferentes plataformas sem uma preparação especial. Por exemplo, softwares escritos em linguagens interpretadas ou pré compilado para cada interpretador são componentes comuns ou padrão em qualquer plataforma. O sistema usa processamento centralizado que dispensa licenças WTS(Windows Terminal Server), assim reduzindo custos com essas licenças. O termo processamento centralizado é usado pois o sistema processa todos os dados referentes as transações das aplicações que estão sendo usadas pelos usuários no servidor, na realidade é como se a aplicação estivesse mesmo rodando no servidor. É possível também que usuários Web anônimos se conectem, não limita o acesso apenas aos funcionários da empresa o que possibilita que colaboradores externos como fornecedores, clientes e terceirizados tenham acesso a certos módulos e dados que a empresa disponibilizar para seu uso. O que caracteriza um usuário WEB é que não se sabe quem é, onde está, quando vai entrar, e quanto tempo vai ficar no sistema. O sistema suporta aplicações distribuídas em diversas linguagens como VISUAL BASIC, DELPHI, POWERBUILDER, JAVA ou qualquer outra linguagem tradicional. O GoGlobal suporta como sistemas operacionais nos servidores o Unix, Linux, Windows Server 2003 e Windows XP Professional SP2. No caso dos servidores Windows, dispensa totalmente o uso de licensas WTS tanto nas maquinas clientes quando nos próprios servidores. O Windows Vista não é suportado para ser utilizado no servidor, no entanto pode ser usado em maquinas clientes. Está previsto para novembro de 2008 o lançamento do GoGlobal server Windows Server 2008. Ambientes Heterogêneos: O GoGlobal é um sistema SBC que opera em ambientes heterogêneos mistos, ou seja, onde há aplicações de diversas plataformas coexistindo. Em geral os sistemas SBC vem ganhando espaço nas empresas pois: Permite aumentar o controle sobre os recursos computacionais, pois ao se ter um servidor centralizado fica mais fácil administrar seus recursos, bem como sua manutenção quando necessária, ao contrário de se ter um grande
numero de maquinas que exigem manutenção e configurações independentes espalhadas pela empresa. Permite racionalizar os investimentos em informática. Permite aumentar a segurança e diminuir a vulnerabilidade dos sistemas, possibilitando que sejam desativadas portas USB e drives de CD que são entradas para qualquer tipo de ameaça à integridade dos sistemas. Como informações não ficam nas maquinas clientes, dificulta o desvio de informações confidenciais da empresa. Permite centralizar a administração dos recursos de informática Permite o acesso móvel e distribuído aos sistemas da empresa, seja por meio de PDAs, notebooks, celulares, ou mesmo os funcionários acessando os recursos de fora da empresa. O GoGlobal oferece uma camada de apresentação totalmente transparente ao usuário final. O usuário não sabe se a aplicação que está usando provêm de um servidor Windows, Linux ou Unix. O sistema oferece ainda meios de distribuir a carga entre os servidores de forma a impedir ou reduzir a ocorrência de panes ou baixa performance por meio de excessivo uso dos recursos de um servidor ao passo que outro pode estar ocioso. Para tal é preciso que os servidores disponibilizem as mesmas aplicações. Operando com licenças de usuários concorrentes, o sistema permite uma fácil escalabilidade tanto vertical quanto horizontal, isto é, aumentando-se o número de usuários simultâneos no sistema ou também aumentando a quantidade de aplicações sendo disponibilizadas por ele para tais usuários. Este modo de administrar as licenças dispensa que as mesmas sejam armazenadas nas maquinas clientes, evitando que no caso de troca de máquinas seja preciso copiar as licenças ou seriais para as outras máquinas. O arquivo de licença fica no servidor do GoGlobal e estipula o número máximo de usuários que podem se logar simultaneamente no sistema. Application Named: Licença que permite publicação de uma única aplicação(pode ser mais de um executável, contanto que pertençam a um único software) FULL: Licença que permite publicação de várias aplicações. Ambas as licenças são perpétuas, ou seja, não expiram nem possuem prazo de utilização. Não há up-grade da liçensa Named para a Full. A tabela a seguir mostra os preços de comercialização das licenças de acordo com a quantidade.
Aplicações e administração: O GoGlobal permite que as aplicações tenham o exato mesmo comportamento que teriam rodando localmente, isso inclui também impressão e som. Algumas vantagens que o sistema traz frente a um sistema convencional de acesso remoto é que ele transmite somente dados referentes a aplicação, ao invés de trazer todo o desktop para a maquina cliente. Dessa forma é possível reduzir o trafico de dados na rede bem como o processamento exigido do servidor e da maquina cliente. Transmite as variações de desenho da tela individualmente ao invés de bitmaps da tela inteira. No caso do Cluster Manager, que é uma ferramenta do sistema para administração, ao conectar-se em uma sessão de um cliente, segundo o movimento do mouse ele atualiza a tela, de acordo com o que foi modificado, ajudando também para minimizar o trafico de dados e deixando o sistema mais leve. Ao invés das convencionais licenças WTS o sistema usa o protocolo patenteado da GraphOn chamado RapidX que oferece compactação de dados mais eficaz. No quesito desempenho é importante lembrar que como o sistema é webbased as condições da rede influenciam diretamente o desempenho. Algumas questões na rede que podem interferir negativamente no desempenho do sistema são velocidade de transmissão, carga na rede, grande variação nas taxas de transmissão, no caso de LANs de grande extensão integradas via links de rádio ou ainda VPNs, principalmente se as aplicações emuladas pelo sistema utilizam alguma forma de acesso a banco de dados Oracle. A impressão é feita de modo semelhante ao Windows, pois se instala uma ou mais impressoras na maquina e define-se uma padrão para o GoGlobal. Um detalhe é que para que seja possível imprimir os documentos pelo GoGlobal é preciso que a impressora que está instalada na maquina cliente, ou definida como padrão do GoGlobal na maquina cliente em questão esteja também instalada pela rede no servidor do GoGlobal, caso contrário não é possível imprimir os documentos.
É possível que diversos equipamentos, cada qual com sua arquitetura particular de hardware e software coexistam interagindo de forma simples, sem ser preciso reescrever código ou regras, com aplicações sendo disponibilizadas por um servidor comum. A imagem a seguir exemplifica um destes cenários.
Os requisitos mínimos do sistema para um servidor são: Pentium 4 1.6 ou superior 500MB espaço em disco 512MB de Ram Conectividade TCP/IP Web Server IIS ou Apache Memória RAM: A média de memória RAM consumida pelo GoGlobal é de 12 MB por usuário. Soma-se a esses 12 MB a memória necessária para as aplicações que serão publicadas. Consumo banda de rede do GoGlobal: média de 16kbps por usuário. A banda de rede usada pelo sistema não é de 16kbps dedicada a cada usuário, más sim uma média, pois usuários que estão apenas logados mas sem usar nenhuma aplicação foi verificado que o consumo de banda é bem menor, ao passo que dependendo da aplicação e/ou número de aplicações é normal o sistema ultrapassar este valor. As estações clientes suportadas são:
Windows Client Windows 95/98/Me/XP, Windows 2000, Windows NT 4.0 Windows CE Client CE 4.2 (Embedded Windows, Mobile Windows) Linux Client Red Hat 7.3 e SuSE Linux 8.0 com KDE 3.0 Macintosh Client Mac OS-X 10.3 (Panther) Java Client Windows 95/98/Me/XP, Windows 2000 Windows NT 4.0 (com Internet Explorer 5.5, 6 e Netscape 4.76, 6, e 7) Solaris (com Netscape Navigator 6.0) OS/2 (com Netscape Navigator 4.76) Linux (com Netscape Navigator 7.0) Macintosh (MacOS 8.6 e 9 com Internet Explorer 5.5) Netscape Plug-In Windows 95/98/Me/XP, Windows 2000, Windows NT 4.0 (com Netscape Navigator 4.76+) Red Hat 7.3 ou SuSE Linux 8.0 com KDE 3.0 (com Netscape Navigator 4.76+) ActiveX Control Windows 95/98/Me/XP, Windows 2000, Windows NT 4.0 (com Internet Explorer 5.5+) Os três últimos citados são uma alternativa ao modo de janela de aplicações, em que as mesmas são disponibilizadas por meio de um browser no qual o usuário as acessa. Componentes do GoGlobal: • • • • •
•
Application Publishing Service: Controla conexões do cliente, autentica usuários e lança aplicações; Program Window:. Interface de usuário para abrir aplicações através do GoGlobal; Display Server: Biblioteca responsável pelo redirecionamento de uma aplicação para o computador cliente; Component Server: Biblioteca que está carregada em cada aplicação lançada no GoGlobal Server; Cluster Manager: Usado por administradores de sistema para controlar o acesso de usuário às aplicações no GoGlobal Server e para registrar e gerenciar as aplicações do GoGlobal Server; System Extension Driver: Biblioteca que adiciona características multiusuário e realça a escalabilidade do GoGlobal Server.
Os componentes visíveis aos usuários(tanto máquinas clientes quando administradores) são o Program Window e o Cluster Manager. Os outros componentes apenas apóiam o funcionamento do sistema. Após a instalação do sistema, na primeira vez que ele é iniciado em uma maquina cliente é preciso especificar um servidor de aplicações.
Especificando o servidor
Marcando o Box embaixo da janela é criado um atalho para o servidor, de forma que o usuário não precisa sempre especificar o endereço do mesmo. Após isto a tela de logon é exibida, e o usuário entra com o login e senha: Tela de login
Em seguida é aberta a tela de aplicações(Program Window) onde são mostradas ao usuário todas as aplicações de que ele dispõe no servidor especificado. A tela tem suas próproas configurações locais em cada maquina, mas no geral é bastante simples, deixando claro as aplicações que disponibiliza.
Program Window
Toda a parte administrativa do sistema é feita através do Cluster Manager, pelo qual é possível adicionar/remover aplicações, terminar sessões de usuários, terminar processos rodados no servidor, visualizar aplicações de usuários logados, assumir controle sobre aplicações de usuários, editar propriedades da aplicação, duplicar uma aplicação,renomear aplicação, setar parâmetros de inicialização de aplicações para usuários ou grupos e gerenciar sessões e processos. A imagem a segui mostra o Cluster Manager. A esquerda é possível ver uma lista dos servidores, e a direita vê-se as aplicações que cada um disponibiliza, oferecendo-se a possibilidade de alterá-las como dito acima. O CM também fornece informação sobre o uso de CPU, memória utilizada bem como Sessões e Processos no servidor selecionado.
Custer Manager
Ao adicionar uma nova aplicação é preciso informar alguns parâmetros, como modo de inicialização(maximizado, minimizado, normal) e também localização do executável e pasta na qual o mesmo encontra-se, como é possível ver na imagem abaixo.
Adicionando aplicação
Entre algumas modificações que é possível fazer nas aplicações pelo CM, encontra-se a possibilidade de duplicar aplicação. Duplicar uma aplicação cria uma cópia exata da aplicação original. É útil para determinados usuários que precisam de determinada configuração da aplicação, para que não tenham que alterar as configurações toda vez que logarem no sistema. Ao duplicar uma aplicação é preciso especificar um display name diferente da original, que será exibido para os usuários através da program window. O gerenciamento de sessões permite que o administrador do sistema termine sessões, processos ou mascare sessões. Ao terminar sessão todas as janelas de aplicações que o usuário estiver usando serão fechadas e o usuário será desconectado do servidor GoGlobal. O processo é qualquer ação no servidor que foi iniciada por um usuário. Um cliente rodando uma aplicação por exemplo é um processo. Ao terminar um processo a janela deste será fechada no micro do usuário, mais o mesmo continuará com uma sessão logada no servidor Cada processo aparece listado também no gerenciador de processos do Windows no servidor. Ao mascarar uma sessão o administrador pede ao usuário que autorize sua intervenção. Se o usuário permitir, o administrador irá visualizar a janela de aplicação do usuário e poderá interagir com o mesmo. Isto é útil para assistência ao usuário, colaboração remota ou assistência técnica. Mascarar sessão é uma ferramenta de uso exclusivo dos administradores do sistema. Segurança: O GoGlobal oferece encriptação de todos os dados transmitidos entre o servidor e os clientes e vice versa. Outras aplicações e dados críticos ficam isolados dos clientes no servidor, de forma que os mesmos não tem acesso a dados que não dizem respeito as suas aplicações, isso evita que sejam salvos no servidor arquivos que com o passar do tempo ocupem demasiado espaço e principalmente arquivos que possam representar uma ameaça a integridade do sistema. O modo padrão para a transmissão é via TCP com encriptação EDS de 56 bits. Há também o modo de transmissão via SSL com encriptação 128-bit RC4, 168-bit 3DES, 256-bit AES. É preciso uma licença especial para utilizar os três últimos algoritmos citados. O GoGlobal permite também definir limites de recursos para evitar que o servidor seja sobrecarregado e se torne instável, podendo perder dados de aplicações. Os limites de recurso podem ser definido segundo quatro variáveis, que são nº máximo de sessões por usuário, nº máximo de sessões no servidor, mínimo de memória virtual livre disponível, mínimo de memória física livre disponível. Ao alcançar os limites de recurso o servidor impede que sejam criadas novas sessões ou novos processos dentro dessas sessões. Conclusão:
Na visão de administrador do sistema, o mesmo se mostra confiável e estável. É uma boa opção para as empresas que precisam expandir o numero de usuários e os locais disponíveis para que estes acessem as aplicações. Obs.: Publica somente aplicações 32 bits.
Bibliografia:
GGFW_Admin_Guide.pdf http://www.graphon.com/content/view/38/108/ http://www.goglobal.inf.br http://portal.elosoft.com.br Algumas informações foram cedidas via telefone e e-mail por Marcos Nascimento Armange – Consultor Comercial GO-Global