Servicos de informacao e Tecnologia Web
Download
Report
Transcript Servicos de informacao e Tecnologia Web
Serviços de informação
e Tecnologia Web
Marcello Peixoto Bax
ECI/UFMG
Abril 2002
Referências
Esta apresentação compila, adapta e estende as seguintes
referências:
“Computers networks”, Andrew Tanembaum, Cap 7.
Artigos diversos
Agenda
DNS - Domain Name System
Um arquivo DNS
Divisão da Internet em
zonas
Revisão de conceitos chave de
HTML
Formulários e CGIs
Servidores de Nomes
Correio Eletrônico
MIME
Arquitetura e serviço
O formato das mensagens
USENET NEWS
O Protocolo NNTP
A Web
Funcionamento
O Protocolo HTTP
Um Proxy Server
URLs
Gerenciamento de Conteúdos
Ferramentas orientadas a
design
Ferrrametas orientadas aos
conteúdos
Zope
Conexões Físicas à Internet
Vários meios podem conectar
computadores à Internet
Redes locais (ethernet, token ring, etc);
Linhas de telefone (PPP, Slip);
Fibra ótica; Canais de satélite; Ondas de
rádio
Protocolo de base TCP / IP
Endereço do computador
Todo computador conectado na Internet tem
um número chamado IP
32 bits ou 4 bytes
150.164.98.214 = cuba.eci.ufmg.br
InterNIC (Network Information Center), órgão
que centraliza a alocação de números
mantém uma BD com nomes, endereços … dos
contatos para os vários domínios (comando whois)
Organização da Internet
Organização de uma rede de redes
baseada em DOMÍNIOS
define a localização de uma rede na Internet
eci.ufmg.br
ibm.com …
dividem a rede mundial em áreas geográficas
e as subdividem por áreas de atuação
países: br, fr, de, ca, us, it …
com (comercial), edu (educacional), mil (militar) ...
depois por instituições
microsoft.com.br
ufmg.br (???)
Organização da Internet
...e ainda por computador na rede
cuba.eci.ufmg.br
Cada instituição possui usuários da rede
cada usuário possui seu endereço próprio
usuário@domínio
(Cont)
[email protected]
URL (Uniform Resource Locator)
endereço único de um recurso: arquivo texto, imagem,...
formado de 3 partes: “protocolo://servidor/recurso”
URLs - Uniform Resource Locator
URL
http://www.eb.ufmg.br/Bemvindo.htm
Nome do recurso
Onde está o recurso
Como acessá-lo
Ex. “ www.eci.ufmg.br/~bax ”
busca página default.html ou index.html
Mapeando nomes -> números
Nomes para os humanos
Números para os softwares
O DNS - “Domain Name System”
faz a conversão
ufmg.br
150.164.98.214
domínio -> número IP
DNS - Domain Name System
O arquivo hosts.txt (ARPANET)
Atualização durante a noite
Tamanho / Conflito de nomes (gerencia central)
DNS (Hostname -> IP)
hierárquico, baseado em domínos, distribuído
applicação <-> resolver <-> DNS local (acha o IP)
DNS - Domain Name System
(cont.)
Internet dividida em centenas de domínios
cada domínio engloba milhares de hosts
subdivididos em sub-domínios
uma vez registrado no seu superior, cada domínio, cria seus próprios subdomínios
Divisão da Internet em zonas
Cada zona possui um arquivo para o DNS
quando a requisição é local o DNS local resolve
quando o dominio é remoto o DNS local envia para o DNS do
nível mais alto do domínio procurado
Um arquivo DNS
Funcionamento do DNS – um cenário…
flits.cs.vu.nl resolvendo linda.cs.yale.edu
Serviços de Informação na Internet
Modelo Cliente/Servidor
Servidor: programa que executa o serviço
Cliente: programa que solicita o serviço
Primeira geração: e-mail, FTP, telnet,
finger
Segunda geração: archie, netfind, whois,
gopher, news, listservers
Terceira geração: WWW
Correio Eletrônico
Campos p/ transporte (RFC 822)
Campos do Cabeçalho (RFC 822)
Transferindo de [email protected]
para [email protected]
O Protocolo SMTP
Protocolo
cliente/servidor em
ASCII
Um deamon (serviço)
escutando conexões
TCP na porta 25
Transferindo as
mensagens p/ inboxes
Entrega final
Protocolo cliente/servidor ASCII
POP3 (Post Office Protocol)
envia emails da inbox do usuário para sua
máquina remota
Listas de discussão
Filtros
Saindo de férias
Grupos de Discussão - News
O Protocolo HTTP HyperText Transfer Protocol
Interação Cliente/Servidor em ASCii
o cliente pode ser um humano:
telnet www.w3.org 80
GET /hypertext/WWW/TheProject.html
uma linha em branco indica o fim do pedido
O Protocolo NNTP
Cliente / Servidor em HTTP
OAOnavegador
efetua
uma conexão
TCP na porta 80 da máquina
conexão
navegador
TCP
determina
é desfeita
a URL desejada
18.23.0.23
OOnavegador
navegadormostra
pergunta
o texto
ao DNS
Project.htm
o endereço IP da www.w3.org
Envia o comando GET /hypertext/www/Project.htm
ODNS
navegador
responde
carrega
18.23.0.23
e mostra as imagens em Project.htm
O servidor www.w3.org envia Project.htm
Obtendo uma página do servidor Web
Um Proxy Server
Gateway que fala HTTP
Pode estar em qq máquina na Internet
Serviço de cache
Serviço de firewall
mantém todas as páginas que passam por ele
filtra os pacotes que passar por ele
Configura-se o proxy no browser de cada usuário da rede
Três ondas de evolução
Internet de domínio público
Intranets
gerência mais eficiente das organizações “por trás de um firewall”.
2/3 das 500 maiores corporações (Fortune) já estabeleceram suas
Intranets
usadas p/ gerenciar tarefas, informações e trabalho em grupo
Lotus Notes (Domino), BackOffice, Oracle
Extranets
ponte entre a Internet pública e a privada
fornecedores, distribuidores, clientes e outros parceiros que estão fora
dos muros da empresa mas são cruciais para o sucesso dos negócios,
compartilhando objetivos comuns
Extranets = Empresas em Rede
Melhora muito as relações com clientes.
Produtos e serviços no mercado com mais rapidez.
Networked Enterprises
Reformulando estruturas internas
Mudando o sistema de negociação e operação
Mudanças nos sistemas de controle
Operações “Just-in-time”
“Business Informação Exchange”
“business to business” na Internet
Revisão e conceitos chave da
linguagem HTML
Revisão
O Projeto WWW (CERN em 1992/93)
Implementar documentos em hipertexto
através de uma linguagem simples
Objetivo: criar plataforma para a troca de
documentos, com interface padrão
Protocolo para transferência de hipertextos é
denominado http
Linguagem para a descrição de hipertextos é
denominada html
A Linguagem HTML
Linguagem HTML
Hypertext Markup Language
Arquivos ASCII (cada arquivo = 1 página no browser)
não sensível à caixa dos caracteres
Elemento básico: TAG
<tag parâmetro=valor ...> texto </tag>
<html>
<head> <title> Teste </title></head>
<body> Meu primeiro documento </body>
</html>
Só define a
estrutura do
documento
Não diz
nada quanto
a sua
aparência
<H1> até <H6>
<H1 align=left>
<p> <br> <hr>
<hr size=20>
<b> <i> <code> <font> <center>
cores
branco
vermelho
#FFFFFF
#FF0000
<body bgcolor=#rrggbb
text=#rrggbb
link=#rrggbb
alink=#rrggbb
vlink=#rrggbb
Padrão RGB (0-255)
</body>
listas
<ol> <ul>
<dl>
<li>
<dt> <dd>
links
<a> <a href=“url”> texto/imagem </a>
<a href=“doc.htm#marca”> texto </a>
<a name=“marca”> em doc.htm
imagens
<img src=“url” align=right width=x height=y alt=“desc”>
tabelas
<table border=2 width=100% cellspacing=2 cellpadding=2>
<th> col1 </th> <th> col2 </th>
<tr> <td> cel1.1</td> <td> cel1.2 </td> </tr>
<tr> <td> cel1.1</td> <td> cel1.2 </td> </tr>
</table>
formulários
página que solicita os dados
programa que processa os dados entrados
quadro de texto; linha de texto; password; checkbox;
radio button; lista de seleção; envia; limpa.
Formulários e CGIs
<form action=“url” method=post>
…
</form>
envia dados para url após submissão dos dados
<input type=“text” name=“nome” size=40>
<input type=“password” name=“pass” size=8 maxlength=8>
<input type=“checkbox” name=“temcarro” checked>
<input type=“radio” name=“faixaEtaria” value=“20+”>
<input type=“reset” value=“Limpa campos”>
<input type=“submit” value=“Envia campos”>
<textarea name=“comentario” rows=5 cols=20>
<select name=“lista”> <option> outro
<option selected> padrão
</select>
CGI - Common Gateway Interface
Armazenados no diretório “cgi-bin”
Métodos de envio: GET ou POST
GET (“var=valor” adicionados à URL)
POST (“var=valor” no corpo da mensagem)
http://.../programa?cliente=João+Silva?endereco=Rua+Macau…”
“cliente=João+Silva&endereco=Rua+Macau…”
envio de dados + atribuição de um conjunto padrão
de variáveis
ex: CONTENT_LENGTH (tamanho do string de dados)
quadros
desaconselhável, restringe a área útil da tela
<html>
<frameset rows=“*,10%”>
<frame noresize name=“palco” src=“url”>
<frame src=“url”>
</frameset>
<html>
Gerenciando sites com FrontPage
Esquema de funcionamento
Cliente FP / Servidor WEB / Extensões
Trabalhando em equipe
programadores visuais, analistas e
programadores
FP em ambiente Intranet
Usando o FP em Internet
Criando e publicando sites em servidores
Arquitetura do FP