PROTOCOLOS Protocolo pode ser entendido como um conjunto de regaras para estabelecer comunicação entre dois entitdades. Examplo 1: Protocolo Natural Para Estabelecer Comunicação - Oi, como vai voce? (Solititação para estabelecer comunicação) - Estou bem, obrigado (Solicitação reconhecida) e voce? (solicitação aceita) ou - Oi, como vai voce?(solicitação para estabelecer comunicação) - Eu te conheço? Cai for a! (solicitação recusada) Protocolos são amplamente usados em muitas areas da Ciência da Computacao. Os exemplos mais comum são protocolos de Redes. Tais protocolos são regras que permitem duas maquinas trocar informações. Existem outros protocolos não tão conhecidos que permitem: dois programas se comunicarem: DDE (Dynamic Data Exchange) o hardware e o sistema operacional se comunicarem (plug-and-play standard for Windows 95) A forma mais completa de descrever um protocolo é defini-lo como "state machine" (condição da máquina). A condição da máquina de um protocolo é composto de: um conjunto de condições (state) onde a comunicação pode estar; um conjunto de eventos (events) que causam mudanças na condição da maquina (estado); um conjunto de ações que são executadas quando as mudanças de estado ocorrem state: AWAITING if event: communication request then action: choose between accept and not accept the communication request next state: CHOOSING state: CHOOSING if event: communication request accepted then action: say "communication accepted" to the requester next state: READY TO COMMUNICATE if event: communication request refused then action: no action (ignore the request) next state: AWAINTING state:ready TO COMMUNICATE (and so on)
Fig. 1 - Graphical state machine A internet é uma rede composta de milhares de redes interconectadas mundialmente, compreendendo redes acadêmicas, comerciais, governamentais e militares. Estar connectado a internet significa estar conectado aos caminhos das redes que a mesma conecta. No procedimento de transmissão via internet os protocolos desempenham um papel fundamental. Protocolos são regras ou acordos para os procedimentos de comunicação de uma Rede. São feitos através de programas específicos. O funcionamento desses programas, de uma forma geral, é muito parecido; conecta-se à Internet e inicia-se o protocolo (por exemplo FTP - File Transfer Protocol) informando o nome do servidor ao qual deseja se conectar, entra nos diretórios de seu interesse, seleciona o arquivo desejado e o transfere para seu computador. Por exemplo o HTTP (Hipertext Transfer Protocol) é um protocolo utilizado para que os clientes e servidores se comuniquem através do conjunto de redes denominado "Wide World Web", que aparece na URL (Universal Resource Location) como www. O diagrama em blocos da figura 2 ilustra como o PC pode ser comunicado a internet. PC MODEM TELEFONE SERVIDOR ROTEADOR BACK BONE Fig. 2 - Conexão de um PC à Rede via Modem e uma Linha Telefônica
O servidor é um computador de maior porte que faz a interconexão com a rede, chamado Mainframe. A partir dos Mainframes utilizam-se os satélites para comunicações. Um Roteador direciona ofluxo de pacotes de dados entre as Redes. O Back Bone é uma distribuidora que permite comunicação com o resto da Rede. Toda a comunicação é formada de pacotes de mensagens que contêm porções de dados e informações especiais de controle e endereçamento, necessárias para levar os dados até seus destinos onde são remontados em dados de mensagens. Isto é realizado através do Protocolo TCP/IP (Transmission Control Protocol/Internet Protocol Protocolo de Controle de Transmissão/Protocolo de Internet). O protocolo indica como os pacotes são remontados em dados originais e como devem ser transmitidos pela linha telefônica. A figura 3 ilustra o protocolo da internet. O computador envia os dados ao computador central. Um realizar esta operação existe um programa TELNET que divide os dados em pacotes, dentro dos protocolos da Internet. Tais protocolos são descritos a seguir. O TCP divide os dados do aplicativo do usuário em pacotes TCP. Cada pacote possui um cabeçalho com o endeço do computador central e informações para montar os dados novamente. O IP subdivide os pacotes do TCP, tornando-os mais confiáveis. A ETHERNET transforma estes sub-pacotes em sub-redes, adicionando informações de endereçamento. O SLIP ou PPP transmite pacotes por linhas telefônicas, permitindo acesso a inernet por discagem. Quando os dados chegam ao computador central, cada nivel é desempacotado e remontado até recuperar os dados aplicativos e poder distribuílos aos demais computadores da Rede.
TELNET DADOS PACOTES TCP PACOTES PACOTES TCP IP PACOTES TCP IP IP IP ETHERNET IP IP IP SUB-REDES SLIP OU PPP SUB-REDES PACOTES P/ LINHA TELEFONICAS LINHA TELEFONICA MAINFRAME SLIP/PPP ETHERNET IP TCP TELNET DADOS APLICATIVOS Fig. 3 Ilustração do Protocolo da Internet
As siglas associadas aos Protocolos significam: SLIP - Serial Line Internet Protocol PPP - Point to Point Protocol ASCII - American Standard Code for Information Interchange EBCDIC - Extended Binary Coded Decimal Interchange C-DE Code GIF Graphics Interchange Formal A Internet está repleta de programas, arquivos e imagens, prontinhos para serem carregados para o PC. Para copiar arquivos de outro computador para o seu (que em (Download) ou copiar arquivos de seu computador para outro (Upload), utiliza-se o protocolo FTP (File Transfer Protocol) ou Protocolo de Transferência de Arquivos. O FTP é feito através de programas específicos. O funcionamento desses programas, de uma forma geral, é muito parecido. Conecta-se à Internet e inicia-se o seu software de FTP (como faria com o navegador Web), informa o nome do servidor ao qual deseja se conectar, entra nos diretórios de seu interesse, seleciona o arquivo desejado e o transfere para seu computador. GOPHER Gopher é um sistema de busca de arquivos, disposto na forma de menus, que permite "escavar" a Internet e fazer download de arquivos, puxando-os de diversos servidores Gopher (servidores que usam esse mesmo sistema), espalhados por todo o mundo. Ao acessar um servidor Gopher, o usuário recebe uma lista de opções, semelhante a uma estrutura de diretórios; pode-se expandir ou contrair essas listas de tópicos de maneira semelhante a que se faz com o gerenciador de arquivos do windows, podendo-se escolher as alternativas desejadas até encontrar a informação que procura, para então transferí-la para seu computador. A grande vantagem do Gopher sobre o FTP é que, para usar este último, você precisa saber onde estão ou, pelo menos, quais os nomes dos arquivos que deseja transferir. No caso do Gopher, existe a possibilidade de se fazer a pesquisa de arquivos, utilizando-se uma ferramenta chamada Veronica (a qual detalhamos mais adiante). Programas para Gopher Para utilizar o Gopher, você pode usar seu próprio navegador Web (Nestcape, Internet Explorer etc), ou então - e isso é recomendado, mas não necessário - o programa WS- Gopher. No caso de utilizar o navegador Web, na barra "location", no lugar de "http://" basta escrever "gopher://" seguido do endereço do servidor Gopher (exs.: gopher://gopher.uiuc.edu ou gopher://src.doc.ic.ac.uk).
WS-GOPHER Estando conectado à Internet, inicie o WS-Gopher (abreviatura de Winsock Gopher). Ao ser aberto, o programa estabelece uma conexão automática com seu servidor Gopher Host (aquele que estiver configurado no programa), e apresenta o menu principal desse servidor. Navegue pelo menu clicando duas vezes sobre o assunto desejado; as opções vão se abrindo, até você chegar no arquivo que deseja. Para salvar o arquivo em seu computador, siga os seguintes passos : 1.Clique sobre o arquivo desejado; 2.Abra o menu File e selecione Save Item; 3.Uma nova caixa de diálogo vai se abrir. Selecione o diretório em seu disco rígido para onde o arquivo será transferido e clique em OK. Isto irá transferir o arquivo para seu computador. Note que, de acordo com o tamanho do arquivo, das condições da transmissão, do número de usuários que estão acessando o mesmo servidor e/ou fazendo download do mesmo arquivo, da velocidade de seu modem, da velocidade de sua conexão com a Internet, enfim, de uma série de fatores, o tempo para o transferência de um arquivo para seu computador pode variar de poucos minutos a muitas horas, para um mesmo arquivo. VERONICA Veronica (abreviatura para Very Easy Rodent Oriented Net-wide Index to Computerized Archive ou seja, Índice muito fácil orientado a Net para arquivos eletrônicos) é um sistema de busca baseado em Gopher que vasculha palavras-chave nos títulos dos documentos. Todos os programas Gopher para windows tem uma opção de busca Veronica, mas para usar essa ferramenta voce deve ter uma idéia do nome do arquivo ou assunto que está procurando. A partir do menu principal, siga os seguintes passos : 1.Estando conectad, procure no menu principal do Gopher o item Other Gopher and Information Servers (outros servidores Gopher e de informações); 2.No menu seguinte, dê dois cliques no item "Search titles in Gopherspace using Veronica" (pesquisar títulos no Gopherspace usando Veronica); 3.Na janela seguinte, escolha uma das opções "Search Gopherspace by Title word(s) via..." onde o nome após a palavra "via" é servidor onde será pesquisado o arquivo desejado. Dê preferência àqueles situados nos EUA, pois as conexões, usualmente, são mais rápidas;
4.Na caixa de diálogo que se abre, escreva as palavras (em inglês) que servirão de base para a pesquisa, intercaladas com a palavra "and" e clique em "Search" (pesquisar); 5.Caso existam arquivos sobre as palavras pesquisadas, eles aparecerão numa lista, em janela a parte. Para obter informações sobre um determinado item, clique sobre ele e escolha o botão "i" (de informação) na barra de ferramentas do WSGopher. 6.A seguir é aberta uma caixa de diálogo "Info on Gopher Item" (informações sobre o item de Gopher), informando, entre outras coisas, a localização desse arquivo. Localizado o arquivo, é só seguir os mesmos procedimentos apontados no item "Utilizando o WSGopher", nesta mesma página. TENDÊNCIAS Infelizmente, o futuro do Gopher não é muito promissor. Apesar de ser uma ferramenta excelente, está sendo deixada de lado e tendo seu conteúdo totalmente transferido para sites Web. Ainda se encontra milhares de servidores Gopher espalhados por todo o mundo, mas a hipótese de crescimento é muito pequen