7
Escola Superior de Artes e Design Pós graduação de Web Design Cláudia Marques Protocolos Web Para se ser Web designer acho que é importante compreender o funcionamento da Web. O problema é que, naturalmente, tudo o que envolva computação e li- gações de rede é por vezes um pouco mais complexo do que gostaríamos. Isso torna-se, inevitavelmente, uma barreira. Isto para explicar que, embora com este trabalho tenha aprendido para que servem certos protocolos, há certas “peças” que ficam por perceber e que tornam essa noção numa coisa um pouco abstracta. É difícil generalizar quando falamos sobre protocolos, pois eles variam muito em propósito e sofisticação. Mas, a um nível mais superficial, podemos dizer que estes servem essencialmente para detectar conexões, estabelecê-las, “negociá-las” (analisar as características destas e executá-las da melhor maneira), iniciar e finalizar uma mensagem, reagir a mensagens mal formatadas ou corrompidas e terminar conexões. Portanto, protocolos web são “as regras que governam a sintaxe, semântica e sin- cronização da comunicação” (“Protocolo (ciência da computação)” , para. 1) entre computadores. Eu gosto de equiparar linguagens de computação a línguas faladas, nomeada- mente o português e o inglês. É mais simples pensar que, tal como nós, os com- putadores precisam de saber como comunicar. E de um ponto de vista simplista um protocolo é como uma gramática computacional. Tendo já explicado vagamente a noção de protocolo, vou retroceder um pouco na história da web para falar de noções que nos ajudam a perceber o conceito um pouco melhor. Tudo começa na World Wide Web, que é, no fundo, uma das possibilidades que a internet nos oferece. O príncipio da web assenta na utilização de hiperligações para navegar entre páginas web que, por sua vez, são simples ficheiros de texto escritos em linguagem de descrição (ou markup).

Trabalho fin

Embed Size (px)

Citation preview

Page 1: Trabalho fin

Escola Superior de Artes e Design Pós graduação de Web Design Cláudia Marques

Protocolos Web

Para se ser Web designer acho que é importante compreender o funcionamento da Web. O problema é que, naturalmente, tudo o que envolva computação e li-gações de rede é por vezes um pouco mais complexo do que gostaríamos. Isso torna-se, inevitavelmente, uma barreira.Isto para explicar que, embora com este trabalho tenha aprendido para que servem certos protocolos, há certas “peças” que ficam por perceber e que tornam essa noção numa coisa um pouco abstracta.

É difícil generalizar quando falamos sobre protocolos, pois eles variam muito em propósito e sofisticação. Mas, a um nível mais superficial, podemos dizer que estes servem essencialmente para detectar conexões, estabelecê-las, “negociá-las” (analisar as características destas e executá-las da melhor maneira), iniciar e finalizar uma mensagem, reagir a mensagens mal formatadas ou corrompidas e terminar conexões.

Portanto, protocolos web são “as regras que governam a sintaxe, semântica e sin-cronização da comunicação” (“Protocolo (ciência da computação)” , para. 1) entre computadores.

Eu gosto de equiparar linguagens de computação a línguas faladas, nomeada-mente o português e o inglês. É mais simples pensar que, tal como nós, os com-putadores precisam de saber como comunicar. E de um ponto de vista simplista um protocolo é como uma gramática computacional.

Tendo já explicado vagamente a noção de protocolo, vou retroceder um pouco na história da web para falar de noções que nos ajudam a perceber o conceito um pouco melhor.

Tudo começa na World Wide Web, que é, no fundo, uma das possibilidades que a internet nos oferece. O príncipio da web assenta na utilização de hiperligações para navegar entre páginas web que, por sua vez, são simples ficheiros de texto escritos em linguagem de descrição (ou markup).

Page 2: Trabalho fin

Esses ficheiros de texto são lidos por um browser, um programa construído para ler e intrepretar comandos e especificações dos protocolos da internet, tendo como processamento nativo os formatos mais comuns (entre eles o HTML e o JPEG, por exemplo).

Mas essa informação, para poder ser lida num browser de qualquer computador local, tem que estar alojada em algum lugar de acesso geral. E, mais ainda, tem que haver uma maneira de transferir esses dados desse sítio de alojamento para o computador local.

Para alojar essa informação existem Host Computers (servers) que são computa-dores construídos especificamente para alojar web sites e que contém o software necessário para o fazer, e que estão constantemente ligados á internet. Estes computadores são propriedade de um Web Hosting Provider, que nada mais é que uma empresa que disponibiliza o serviço de web hosting aos seus clientes.

Cada vez que vemos uma web page no nosso browser, iniciamos um request dessa mesma página através da Internet para o web server. Aliás, na maioria dos casos, cada página resulta em vários requests: se a página tiver três imagens isso resulta em pelo menos 4 requests: um para a página e um para cada imagem, já que o download da imagem é feito isoladamente.Isto porque, como qualquer pessoa que já tenha escrito um documento HTML sabe, as imagens são ficheiros externos ao ficheiro HTML e que são inseridas neste simplesmente indicando a source desta.

Para que fique claro esta questão dos requests, ajuda compreender o conceito de URL ( Uniform Resource Locator ). Para além de que vemos já uma referência a um dos protocolos mais comuns da web: o HTTP.Um exemplo de um URL é: http://www.google.com/. Em que http:// é a especifi-cação do protocolo, www é o endereço do servidor e google.com o nome do domínio. O google provavelmente não será o melhor exemplo para falar de outra componente do URL porque, sendo um motor de busca, utiliza querys para ir bus-car directórios. Ainda assim, suponhamos que se trata de uma página web normal. Temos então o nome de domínio seguido de directórios e tipos de ficheiros: www.google.com/pastaX/ficheiroY.html.

Percebendo o URL há uma pergunta que se levanta: como é que então o browser reconhece o web site correcto? Ou seja, como é que o browser nos devolve o site que queremos ver através de um nome de domínio?

Page 3: Trabalho fin

Aqui entra em cena um outro protocolo, também um dos mais comuns e fundamental ao funcionamento da web: o IP (Internet Protocol). Acho que não me engano ao dizer que é do conhecimento geral o que é um IP. Ou melhor, toda a gente sabe reconhecer estes numeros 194.153.205.26 como sendo um endereço IP e compreende que, de alguma maneira, estes números identificam um site. Mas a questão é mais complexa. Já vimos que um URL contem um nome de domínio e não um IP, então como é que o browser faz essa correspondência?Neste contexto é fundamental falarmos de DNS (Domain name system). O DNS é uma longa base de dados que contém todos os nomes de domínio e o seu IP cor-respondente. Isto, claramente, explicado de uma forma muito simplista: Existem muitos servidores DNS, uns maiores e outros mais pequenos, estruturados hierárquicamente para possibilitar um melhor funcionamento da web.

Finalmente já podemos compreender como o browser encontra o web site correcto: primeiro procura pelo domínio na sua própria memória. Se não o encon-trar, procura-o no ficheiro hosts do nosso computador (ficheiro pertencente ao sistema operativo que faz a ligação de IP’s ao servidor DNS). Se mais uma vez não o encontrar procura no sistema DNS default (definido nas definições de rede de cada computador) que normalmente é o do serviço que fornece a internet (ISP) ou da empresa onde se trabalha. Por último procura num sistema DNS algures na rede que contenha o domínio ( e aqui a estrutura hierárquica facilita muito o processo.

Se nenhum destes for bem sucedido, então deparamo-nos com um erro DNS, o famoso “server not found”. Nesse caso o endereço pode já não existir ou podem existir problemas de rede entre o computador local e o servidor DNS.

Já falei vagamente de dois protocolos: IP e HTTP. Agora, já tendo falado das noções essenciais para compreender o conceito de protocolo, vou mergulhar um pouco mais no assunto.

Um protocolo é então um conjunto de regras e procedimentos a respeitar para emitir e receber dados numa rede, definindo assim a maneira pela qual as máqui-nas devem comunicar: a sequência de dados a trocar. E regulam, assim, o contacto entre o browser e o server.

Os protocolos mais comuns ( e os únicos que vou referir devido ao facto de haver uma lista infindável deles) são: O TCP/IP, o HTTP, o HTTPS, O FTP e os protocolos de e-mail (SMTP,POP,IMAP).

Page 4: Trabalho fin

Começando pelo TCP/IP que é, na verdade, uma sequência de protocolos (á volta da qual muito dos outros funcionam) composta por dois protocolos: TCP e IP.Tenho de admitir que não posso falar com muitas certezas visto que a questão é um pouco complexa. Ainda assim vou explicá-lo como o compreendi e no que acredito ser o suficiente para, a um nível mais superficial, compreendê-lo. O TCP (Transmission Control Protocol) e o IP (Internet Protocol) operam normalmente juntos porque têm funções complementares. Enquanto o TCP controla a informação o IP direcciona-a. Vejamos cada um isoladamente: começando pelo IP que é um dos Protocolos mais “elementares” da web ( no sentido em que quase tudo funciona com base no IP ).

O IP utiliza endereços numéricos (também conhecidos por endereços IP) compostos por 4 bytes onde os números variam de 0 a 255. É o ICANN (Internet Corporation for Assigned Names and Numbers) que está encarregado de atribuir endereços IP públicos, isto é, dos computadores ligados á rede pública de internet.O endereço pode dividir-se em duas partes: os números da esquerda correspondem ao ID de rede e os números da direita ao ID de hóspede. Cada computador de uma rede possui um IP único nessa mesma rede. Aqui deparei-me com uma dúvida á qual ainda não sei responder: Apesar de cada computador ter um IP único, isso quer dizer que os web sites pertencentes a esse mesmo computador partilham desse IP. Ou seja, nesse caso o IP deixa de ser as-sim tão único.Como é feita então, num caso desses, a correspondência entre o IP e o servidor DNS? Levanto a questão para que fique claro que, segundo a minha pesquisa, o IP não é um elemento identificador tão infalível quanto isso.

Enquanto o IP identifica um ou mais computadores, o TCP controla a comunicação entre eles. E mais uma vez tenho de admitir a minha ignorância relativamente a este: compreendo que entrega e ordena datagramas, que evita saturação de rede, que formata dados em segmentos para os poder transmitir de maneira mais eficaz e que permite o inicio e fim de conexão entre computadores de forma segura. Como o faz e os conceitos que estão por detrás deste protocolo não consegui compreender.

Um protocolo mais familiar é o HTTP (Hypertext Transfer Protocol). O http é um pro-tocolo standard para “transferir” web pages (e o seu conteúdo) através da internet. Digo “transferir” porque é um download momentâneo que permite visualizar a página no browser e não permitindo a transferência de dados para o

Page 5: Trabalho fin

computador local, como é o caso do FTP. Funciona através de pedidos e respostas HTTP que são conjuntos de linhas enviados pelo servidor ao navegador ou vice-versa, especificando, através de comandos http, o que pedir ou devolver.O protocolo HTTPS (Hypertext Transfer Protocol Secure) faz precisamente o mesmo mas sobre o que em inglês se chama uma Secure Socket Layer. É normalmente utilizado em páginas que têm conteúdos com uma maior necessidade de segurança, como é o caso de web sites de bancos ou de redes sociais.Para uma página poder utilizar HTTPS como protocolo precisa de ter um certificado SSL instalado no server, emitido por uma Certificate Authority (CA). O user pode aceder, clicando no ícone exibido na barra de endereço de uma página que use HTTPS, a estas informações. Ou seja, pode confirmar a autenticidade da instituição ou organização e muitos outros dados, nomeadamente a autoridade que emitiu o certificado de segurança.

O protocolo FTP (File Transfer Protocol) é o protocolo default usado para transferir ficheiros através da web, sendo o exemplo de uso mais comum um web developer que queira fazer updates no seu site ou publicar uma nova versão deste.Ou seja, enquanto o HTTP é usado para mostrar o ficheiro no browser, o FTP é usado para transferir um ficheiro de um computador para uma localização especí-fica noutro computador. Pode, portanto, transferir data de um ficheiro local para um remoto e também no sentido inverso.

E para terminar, falo vagamente dos servidores de e-mail, dos quais também não sei aprofundar muito. O POP (Post Office Protocol), mais conhecido por POP3 por já estar na sua 3ª versão, é usado por aplicações mail e também por web mails para ligar ás mensagens e fazer download destas através do server de email. O SMTP (Simple Mail Transfer Protocol) complementa, a meu ver, a função do POP, permitindo enviar e-mails para o server.

O IMAP (Interactive Mail Acess Protocol) diz-se ser mais poderoso mas menos comum do que o POP3, visto que se apoia no TCP para enviar e-mails. O que, deduzo eu, facilita a tarefa de moderação de qualidade de transmissão e a torna mais rápida. Foi a conclusão que tirei depois de conhecer as características do protocolo TCP.

Penso que não há necessidade de referir outros protocolos sendo que estes são realmente os mais comuns da Web e que, só o facto de compreender o conceito de protocolo, ajuda a compreender muito do funcionamento desta.

Page 6: Trabalho fin

WEBGRAFIA:

Internet e protocolos web (n.d.) in Departamento de Engenharia Electrónica e In-formática da Universidade do Algarve. Retirado de www.deei.fct.ualg.pt/~flobo/daw/slides/http.pdf

Navegador (2012, Fevereiro,26) in Wikipedia. Retirado de http://pt.wikipedia.org/wiki/Navegador

Morandini, M; Pimenta, M. F. ; Cardieri, M. A. C. A. C.; Tomazela, M. G. J. M.; Tor-res, M. F. C. F. T.; (1998,Abril,29) Tópicos em Engenharia de Computação V In Department of Computer Engineering and Industrial Automation at the School of Electrical and Computer Engineering , State University of Campinas. Retirado de http://www.dca.fee.unicamp.br/courses/IA368F/1s1998/Http/g4.html

Web - Introdução à World Wide Web (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/www/www-intro.php3

Protocolos (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/internet/protocol.php3

TCP/IP (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/internet/tc-pip.php3

O protocolo IP (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/inter-net/protip.php3#fragmentation

O protocolo ICMP (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/internet/icmp.php3

O protocolo TCP (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/in-ternet/tcp.php3

O protocolo UDP (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/internet/udp.php3

O protocolo HTTP (n.d.) in kioskea.net.Retirado de http://pt.kioskea.net/contents/internet/http.php3

Page 7: Trabalho fin

Internet: Protocolos (n.d.) in teleco.com.br. Retirado de http://www.teleco.com.br/tutoriais/tutorialinter/pagina_2.asp

Protocolos do HTTP e do HTTPS (n.d.) in Academic Tutorials. Retirado de http://www.academictutorials.com/Pt/tcp-ip/tcp-ip-http.asp

Web Protocols (n.d.) in Quackit.com. Retirado de http://www.quackit.com/how-web-sites-work/web-protocols.cfm

Hypertext Transfer Protocol (n.d.) in Wikipedia. Retirado de http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol

Martinez, N. (2011,Novembro,01) Common Web Protocols in eHow. Retirado dehttp://www.ehow.com/list_6686383_common-protocols.html

Jay, Craig (n.d.) How to Understand Internet Protocol in eHow. Retirado dehttp://www.ehow.com/how_5585013_understand-internet-protocol.html

Reed,D (n.d.) in Google. Retirado de http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=7&cts=1330574758763&sqi=2&ved=0CGgQFjAG&url=http%3A%2F%2Fwww.dave-reed.com%2Fcsc551.S04%2FLectures%2Fprotocols.ppt&ei=BvFOT6DRGaGj0QWc1eT8Cw&usg=AFQjCNHlxEn-oEiHondRAL8Vehk7Ef3hxA

Web-based protocol handlers (2011, Setembro,06) in Mozilla Developer Networkhttps://developer.mozilla.org/en/Web-based_protocol_handlers

List of web service protocols (2012,Janeiro,24) in Wikipedia. Retirado dehttp://en.wikipedia.org/wiki/List_of_web_service_protocols

Web service (2012,Fevereiro,29) in Wikipedia. Retirado dehttp://en.wikipedia.org/wiki/Web_service

TCP/IP Protocols(n.d.) in w3schools. Retirado dehttp://www.w3schools.com/tcpip/tcpip_protocols.asp

Protocolo (ciência da computação) (2012,Fevereiro,28) in Wikipedia. Retirado dehttp://pt.wikipedia.org/wiki/Protocolo_%28ci%C3%AAncia_da_computa%C3%A7%C3%A3o%29