Trabalho fin

201 views

Published on

Web Design Post Graduation work

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
201
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Trabalho fin

  1. 1. Escola Superior de Artes e DesignPós graduação de Web DesignCláudia MarquesProtocolos WebPara se ser Web designer acho que é importante compreender o funcionamentoda 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. Issotorna-se, inevitavelmente, uma barreira.Isto para explicar que, embora com este trabalho tenha aprendido para queservem certos protocolos, há certas “peças” que ficam por perceber e que tornamessa noção numa coisa um pouco abstracta.É difícil generalizar quando falamos sobre protocolos, pois elesvariam muito em propósito e sofisticação. Mas, a um nível maissuperficial, podemos dizer que estes servem essencialmente para detectarconexões, estabelecê-las, “negociá-las” (analisar ascaracterísticas destas e executá-las da melhor maneira), iniciar efinalizar uma mensagem, reagir a mensagens mal formatadas oucorrompidas 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) entrecomputadores.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 simplistaum protocolo é como uma gramática computacional.Tendo já explicado vagamente a noção de protocolo, vou retroceder um pouco nahistória da web para falar de noções que nos ajudam a perceber o conceito umpouco melhor.Tudo começa na World Wide Web, que é, no fundo, uma das possibilidades quea internet nos oferece. O príncipio da web assenta na utilização de hiperligaçõespara navegar entre páginas web que, por sua vez, são simples ficheiros de textoescritos em linguagem de descrição (ou markup).
  2. 2. Esses ficheiros de texto são lidos por um browser, um programa construído paraler e intrepretar comandos e especificações dos protocolos da internet, tendocomo processamento nativo os formatos mais comuns (entre eles o HTML e oJPEG, por exemplo).Mas essa informação, para poder ser lida num browser de qualquer computadorlocal, tem que estar alojada em algum lugar de acesso geral. E, mais ainda, temque haver uma maneira de transferir esses dados desse sítio de alojamento para ocomputador 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 softwarenecessário para o fazer, e que estão constantemente ligados á internet. Estescomputadores são propriedade de um Web Hosting Provider, que nada mais é queuma empresa que disponibiliza o serviço de web hosting aos seus clientes.Cada vez que vemos uma web page no nosso browser, iniciamos um requestdessa mesma página através da Internet para o web server. Aliás, na maioria doscasos, cada página resulta em vários requests: se a página tiver três imagens issoresulta 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 HTMLsabe, as imagens são ficheiros externos ao ficheiro HTML e que são inseridasneste simplesmente indicando a source desta.Para que fique claro esta questão dos requests, ajuda compreender o conceito deURL ( Uniform Resource Locator ). Para além de que vemos já uma referência aum 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 dodomínio. O google provavelmente não será o melhor exemplo para falar de outracomponente 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 browserreconhece o web site correcto? Ou seja, como é que o browser nos devolve o siteque queremos ver através de um nome de domínio?
  3. 3. Aqui entra em cena um outro protocolo, também um dos mais comuns efundamental ao funcionamento da web: o IP (Internet Protocol). Acho que não meengano ao dizer que é do conhecimento geral o que é um IP. Ou melhor, toda agente sabe reconhecer estes numeros 194.153.205.26 como sendo um endereçoIP 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 é queo 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: Existemmuitos servidores DNS, uns maiores e outros mais pequenos, estruturadoshierárquicamente para possibilitar um melhor funcionamento da web.Finalmente já podemos compreender como o browser encontra o web sitecorrecto: 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 aosistema operativo que faz a ligação de IP’s ao servidor DNS). Se mais uma vez nãoo encontrar procura no sistema DNS default (definido nas definições de rede decada 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 narede que contenha o domínio ( e aqui a estrutura hierárquica facilita muito oprocesso.Se nenhum destes for bem sucedido, então deparamo-nos com um erro DNS, ofamoso “server not found”. Nesse caso o endereço pode já não existir ou podemexistir problemas de rede entre o computador local e o servidor DNS.Já falei vagamente de dois protocolos: IP e HTTP. Agora, já tendo falado dasnoções essenciais para compreender o conceito de protocolo, vou mergulhar umpouco mais no assunto.Um protocolo é então um conjunto de regras e procedimentos a respeitar paraemitir 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, ocontacto entre o browser e o server.Os protocolos mais comuns ( e os únicos que vou referir devido ao facto de haveruma lista infindável deles) são: O TCP/IP, o HTTP, o HTTPS, O FTP e os protocolosde e-mail (SMTP,POP,IMAP).
  4. 4. Começando pelo TCP/IP que é, na verdade, uma sequência de protocolos (á voltada 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 queacredito ser o suficiente para, a um nível mais superficial, compreendê-lo.O TCP (Transmission Control Protocol) e o IP (Internet Protocol) operamnormalmente juntos porque têm funções complementares. Enquanto o TCPcontrola 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 (InternetCorporation for Assigned Names and Numbers) que está encarregado de atribuirendereços IP públicos, isto é, dos computadores ligados á rede pública deinternet.O endereço pode dividir-se em duas partes: os números da esquerdacorrespondem 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. Aquideparei-me com uma dúvida á qual ainda não sei responder: Apesar de cadacomputador ter um IP único, isso quer dizer que os web sites pertencentes a essemesmo 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 servidorDNS?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çãoentre eles. E mais uma vez tenho de admitir a minha ignorância relativamente aeste: compreendo que entrega e ordena datagramas, que evita saturação de rede,que formata dados em segmentos para os poder transmitir de maneira maiseficaz e que permite o inicio e fim de conexão entre computadores de formasegura. Como o faz e os conceitos que estão por detrás deste protocolo nãoconsegui 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 dainternet. Digo “transferir” porque é um download momentâneo que permitevisualizar a página no browser e não permitindo a transferência de dados para o
  5. 5. computador local, como é o caso do FTP. Funciona através de pedidos erespostas HTTP que são conjuntos de linhas enviados pelo servidor ao navegadorou vice-versa, especificando, através de comandos http, o que pedir ou devolver.O protocolo HTTPS (Hypertext Transfer Protocol Secure) faz precisamente omesmo 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 maiornecessidade de segurança, como é o caso de web sites de bancos ou deredes sociais.Para uma página poder utilizar HTTPS como protocolo precisa de ter umcertificado SSL instalado no server, emitido por uma Certificate Authority (CA).O user pode aceder, clicando no ícone exibido na barra de endereço de umapágina que use HTTPS, a estas informações. Ou seja, pode confirmar aautenticidade 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 transferirficheiros através da web, sendo o exemplo de uso mais comum um web developerque 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 umremoto e também no sentido inverso.E para terminar, falo vagamente dos servidores de e-mail, dos quais também nãosei aprofundar muito. O POP (Post Office Protocol), mais conhecido por POP3 porjá estar na sua 3ª versão, é usado por aplicações mail e também por web mailspara ligar ás mensagens e fazer download destas através do server de email. OSMTP (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 menoscomum 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 tornamais rápida. Foi a conclusão que tirei depois de conhecer as características doprotocolo TCP.Penso que não há necessidade de referir outros protocolos sendo que estes sãorealmente os mais comuns da Web e que, só o facto de compreender o conceitode protocolo, ajuda a compreender muito do funcionamento desta.
  6. 6. 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.pdfNavegador (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 Schoolof Electrical and Computer Engineering , State University of Campinas. Retirado dehttp://www.dca.fee.unicamp.br/courses/IA368F/1s1998/Http/g4.htmlWeb - Introdução à World Wide Web (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/www/www-intro.php3Protocolos (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/internet/protocol.php3TCP/IP (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/internet/tc-pip.php3O protocolo IP (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/inter-net/protip.php3#fragmentationO protocolo ICMP (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/internet/icmp.php3O protocolo TCP (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/in-ternet/tcp.php3O protocolo UDP (n.d.) in kioskea.net. Retirado de http://pt.kioskea.net/contents/internet/udp.php3O protocolo HTTP (n.d.) in kioskea.net.Retirado de http://pt.kioskea.net/contents/internet/http.php3
  7. 7. Internet: Protocolos (n.d.) in teleco.com.br. Retirado de http://www.teleco.com.br/tutoriais/tutorialinter/pagina_2.aspProtocolos do HTTP e do HTTPS (n.d.) in Academic Tutorials. Retirado de http://www.academictutorials.com/Pt/tcp-ip/tcp-ip-http.aspWeb Protocols (n.d.) in Quackit.com. Retirado de http://www.quackit.com/how-web-sites-work/web-protocols.cfmHypertext Transfer Protocol (n.d.) in Wikipedia. Retirado de http://en.wikipedia.org/wiki/Hypertext_Transfer_ProtocolMartinez, N. (2011,Novembro,01) Common Web Protocols in eHow. Retirado dehttp://www.ehow.com/list_6686383_common-protocols.htmlJay, Craig (n.d.) How to Understand Internet Protocol in eHow. Retirado dehttp://www.ehow.com/how_5585013_understand-internet-protocol.htmlReed,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-oEiHondRAL8Vehk7Ef3hxAWeb-based protocol handlers (2011, Setembro,06) in Mozilla Developer Networkhttps://developer.mozilla.org/en/Web-based_protocol_handlersList of web service protocols (2012,Janeiro,24) in Wikipedia. Retirado dehttp://en.wikipedia.org/wiki/List_of_web_service_protocolsWeb service (2012,Fevereiro,29) in Wikipedia. Retirado dehttp://en.wikipedia.org/wiki/Web_serviceTCP/IP Protocols(n.d.) in w3schools. Retirado dehttp://www.w3schools.com/tcpip/tcpip_protocols.aspProtocolo (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

×