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
Download

Arquivo Marcello Peixoto Bax ECI/UFMG Abril 2002