© pedro veiga - fcul a internet pedro veiga. © pedro veiga - fcul tópicos a abordar n génese da...
TRANSCRIPT
© Pedro Veiga - FCUL
A Internet
Pedro Veiga
© Pedro Veiga - FCUL
Tópicos a Abordar
Génese da Internet A Arquitectura do TCP/IP Evolução e normalização na Internet O Nível IP O Nível de transporte: TCP e UDP O Nível de aplicação
• SMTP, MIME, FTP, TELNET• DNS, NNTP, SNMP
Protocolos de Routing Evolução do protocolo IP - o IPv6
© Pedro Veiga - FCUL
Internet - O que é ?
A designação Internet aplica-se hoje para identificar a rede que foi criada durante a parte final da década de 80 pela fusão de um conjunto de redes
Estas redes usavam várias tecnologias de rede
A Internet usa, actualmente, na sua maioria os protocolos TCP/IP
© Pedro Veiga - FCUL
Génese da Internet
ARPANET• Rede de linhas dedicadas a 50 kbps
PRNET - Packet Radio Net• Rede a 40/100 kbps baseada em rádios spread spectrum
SATNET - Packet Satellite Network• Rede de 64 kbps no Intersat IV
TCP/IP protocolo desenvolvido entre 1974 e 1978 (4 versões) para interligar estas redes
Vinton Cerf e Robert Kahn
© Pedro Veiga - FCUL
Génese da Internet
Objectivo: Rede de alta fiabilidade• Alta tolerância a falhas dos níveis de transmissão
Baseada em datagramas Os protocolos TCP e IP Liderança técnica controlada pelo IETF
• Internet Engineering Task Force• Modo de normalização eficiente e pragmático
Evolução “ajudada” pelo UNIX - O UNIX da Universidade de Berkeley
© Pedro Veiga - FCUL
Software para TCP/IP
Muitos Fornecedores Muitos Consumidores
Produtos baratos Produtos “public domain” Produtos muito testados:
• Muito fiáveis• De alta qualidade• Muito eficientes
Disponíveis do PC ao Mainframe
© Pedro Veiga - FCUL
Comparação com o Modelo OSI
TCP
IP
Aplicações
Interfaceà rede
© Pedro Veiga - FCUL
IP - Internet Protocol
Protocolo de rede baseado em datagramas -
serviço sem ligação (CL)
Datagramas podem ter até 64 kB (total)
Datagrama (PDU) do IP tem 2 componentes
Header (uma parte fixa de 20 bytes e uma
parte opcional de comprimento variável)
Texto (dados)
© Pedro Veiga - FCUL
Formato Header IP
Versão IHL Tipo de Serviço Compr. Total
Identificação Offset do fragmento
TTL Protocolo Checksum do Header
Endereço Origem
Endereço Destino
Opções
DF
MF
© Pedro Veiga - FCUL
Significado dos Campos
Versão - Número da versão do protocolo IHL - IP Header Length em múltiplos de 32 bits (campos
opcionais) Tipo de serviço - permite às aplicações indicarem o tipo de
aplicação (nível de rede pode adaptar-se às diferentes exigências das aplicações)
• PRECEDENCE (0 a 7)• D (low delay), T (high troughput), R (high reliability)
Comprimento Total - do Header + Dados (max. 64k bytes) Identificação - pacotes podem ser fragmentados quando
atravessam a rede. Todos os bocados de um mesmo pacote tem a mesma identificação
© Pedro Veiga - FCUL
Significado dos campos
DF - Don´t fragment MF - More fragments (todos os fragmentos tem este bit a 1,
excepto o último) Offset do fragmento - quando há fragmentação TTL (Time to Live) - tempo máximo que os pacotes podem
demorar na rede antes de serem destruídos (max. 255 seg) Protocolo - tipo de protocolo de transporte usado (por
exemplo, TCP) Checksum do header - para controlo de erros Opções - segurança, routing, notificação erros, ...
© Pedro Veiga - FCUL
Endereços IP
Os endereços IP são de 32 bits Identificam de modo unívoco um
sistema que funciona em IP Endereços são atribuídos pelo operador
de rede• A IANA• O RIPE
© Pedro Veiga - FCUL
Endereços IP
Classe A (7 bits rede, 24 bits host)
Classe B(14 bits rede, 16 bits host)
Classe C (21 bits rede, 8 bits host)
Multicast (28 bits multicast)
© Pedro Veiga - FCUL
Endereços IP
Classe A - 128 com 16 milhões de elementos de rede cada
Classe B - 16384 redes de 65536 elementos de rede cada
Classe C - cerca de 2 milhões de redes com 256 elementos de rede cada
Network mask - permite separação lógica de partes de uma rede
O formato “humano”• 146.193.32.34
© Pedro Veiga - FCUL
O ICMP
Internet Control Message Protocol Protocolo “acessório” ao nível IP Usado pelos nós da rede para relatar
erros• DESTINATION UNREACHABLE• TIME EXCEEDED• ECHO REQUEST e ECHO REPLY• TIMESTAMP REQUEST e TIMESTAMP REPLY• ...
Também usado para teste
© Pedro Veiga - FCUL
Interface à Rede
Ponto forte do IP Suporte a variados suportes de
comunicação Ethernet Linha série / linha comutada
SLIP - Serial Line IPPPP - Point to Point Protocol
X.25 Frame Relay ...
© Pedro Veiga - FCUL
Nível de Transporte
TCP - Transmission Control ProtocolNível de transporte orientado à ligação (CO)
UDP - User Datagram ProtocolNível de transporte sem ligação (CL)
Ambos funcionam sobre IP
TCP é semelhante a OSI/TP4
© Pedro Veiga - FCUL
TCP
Nível de transporte recebe mensagens arbitrárias
para transmitir e:• Fragmenta-as em pedaços inferiores a 64k• Trata de retransmissões de pacotes• Trata de reordenações de pacotes• Trata de tempos expirados (timeouts)• Efectua controlo de fluxo (janela de 16 bits - número
de bytes)•TCP numera as mensagens com 32 bits
© Pedro Veiga - FCUL
PDU do TCP
Porto origem Porto destino
Número de sequência
Confirmação de “piggyback”
Opções (0 ou mais palavras de 32 bits)
Checksum Apontador de urgente
DADOS
Compr.Header
Flags Janela
© Pedro Veiga - FCUL
PDU do TCP
Portos - pontos de origem e destino dos dados (TSAP)
Checksum - para controlo de erros
Comprimento Header - número de bytes do header (em palavras de 32 bits)
Flags• URG - Urgent pointer em uso• SYN e ACK - usados para pedir e conceder ligações• FIN - terminar ligação• RST - reset à ligação• EOM - fim de mensagem
© Pedro Veiga - FCUL
PDU do TCP
Janela - dimensão da janela do protocolo (número de pacotes que podem ser transmitidos sem confirmação)
Número de sequência - numeração dos pacotes para reordenação, detecção de duplicações
Apontador de urgente - Apontador para PDU (relativo ao presente) onde se encontram dados urgentes
Opções - para finalidades diversas associadas principalmente à gestão do software dos sistemas que realizam o TCP
© Pedro Veiga - FCUL
Portos Registados
No destino é o modo de “endereçamento” das aplicações
Na origem é a identificação das aplicações utilizadoras
Alguns Exemplos:• smtp -• telnet -• ftp -
© Pedro Veiga - FCUL
UDP
Não é necessário estabelecer ligação Não há garantia de entrega
Porta origem Porta destino
Comprimento Checksum
Dados
© Pedro Veiga - FCUL
API de Transporte - sockets
socket Criação de um TSAP de um dado tipo
bind Associa um nome ASCII a um socket já criado
listen Cria uma fila para aceitar pedidos de ligaçãoaccept Retira um pedido de ligação da fila, ou
espera por uma ligação
connect inicia uma ligação com um socket remoto
shutdown termina a ligação de um socket
send envia uma mensagem através de um socket
recv recebe uma mensagem num socket
select verificar, num conjunto de sockets, se podem
ser lidos ou escritos
© Pedro Veiga - FCUL
Winsock
API análoga a do BSD Adaptada às especificidades do
ambiente Windows “Event Driven” Base de “quase todo” software TCP/IP
de rede em ambiente Windows• winsock.dll
© Pedro Veiga - FCUL
Ponte de Transporte - RFC1006
Fornecer um serviço de transporte OSI sobre a pilha TCP/IP
Aplicação
Apresentação
Sessão
Transporte
IP
TCP
© Pedro Veiga - FCUL
As Aplicações
As principais aplicações existentes na Internet são:• Correio electrónico
• Terminal remoto
• Transferência de ficheiros
• Directory Name System - DNS
• Conferências Electrónicas
• WWW
© Pedro Veiga - FCUL
Correio Electrónico (e-mail)
Protocolos SMTP e MIME SMTP - Simple Mail Transfer
Protocols MIME - Multipurpose Internet Mail
Extensions• Compatível com o transporte SMTP• Perspectiva (mais uma vez)
pragmática do IETF
© Pedro Veiga - FCUL
SMTP
RFC 821 e RFC-822 (SMTP - Simple Mail Transfer Protocol)
Sistema orientado a texto
simples de implementar sobre muitos mecanismos de
transporte
não há distinção entre cabeçalhos e corpo das
mensagens, a não ser em identificadores especiais dos
campos do cabeçalho
só ASCII
linhas até 72 caracteres
© Pedro Veiga - FCUL
Endereços
[email protected] top-dom
• códigos ISO dos países (2 letras); ou• gov, edu, mil, net, com
sub-dom : devem adaptar-se à estrutura da hierarquia onde o utilizador se insere
© Pedro Veiga - FCUL
RFC 822 - Header Fields
Sender Endereço de quem enviaTo Endereço do destinatárioReceived from Donde veio a mensagemReceived by Quem recebeu a mensagemReceived via Em que meio físico chegouReceived with Que protocolo foi usadoFrom Nome da pessoa que enviou a mensagemReply-to Endereço a quem responderCc Cópias para ...Bcc Cópias ocultas para ...In-Reply-To Referência da mensagem a que se refere
a respostaReferences Outras mensagens referenciadasSubject AssuntoKeywords Palavras chaveDate DataMessage-ID Identificação da mensagemComments Comentários
© Pedro Veiga - FCUL
MIMEMultipurpose Internet Mail Extensions
Suporte a correio multimédia na Internet Mensagem composta de várias partes (body
parts) Cada parte é codificada e apresentada de um
modo adequado Transporte sobre SMTP Necessário um “agente de mail” especial Suporte, por exemplo, de texto (vários
conjuntos de caracteres), audio, video, binários, process. de texto, folhas de cálculo, ...
© Pedro Veiga - FCUL
DNS
Sistema de suporte à identificação simbólica de sistemas
Suporte à identificação de recursos na rede e seus atributos
Sistema crucial para o bom funcionamento actual da Internet
Pouco visível ao utilizador final
© Pedro Veiga - FCUL
DNS
Sistema hierárquico Baseado em
• root servers• servidores primários de cada domínio• servidores secundários
Caching de informação com limites de validade
ns.dns.pt
© Pedro Veiga - FCUL
DNS em Portugal
Gerido pela FCCN Entidades que podem registar domínios
• Nomes Empresas• Publicações• ADMD X.400• Marcas registadas
Forte crescimento em 1998
© Pedro Veiga - FCUL
DNS em Portugal
© Pedro Veiga - FCUL
WWW - World Wide Web
A aplicação que fez a Internet acessível ao utilizador não especializado
Sistema desenvolvido inicialmente no CERN Baseada num sistema de HiperTexto Páginas MultiMédia
• Texto formatado
• Imagens Estáticas
• Vídeo
• Som
Cada página pode conter HiperLigações a outras páginas
© Pedro Veiga - FCUL
WWW - World Wide Web
Baseia-se no paradigma Cliente-Servidor Servidor contem um conjunto de informações
organizadas em páginas As páginas estão associadas numa estrutura lógica
através das HiperLigações
Cliente (aquilo que a pessoa usa para navegar na WEB) acede à informação nos servidores através de um protocolo específico - HTTP
HTTP - Hypertext Transfer Protocol
© Pedro Veiga - FCUL
SNMP
Protocolo de Gestão da Internet O que é gerir a rede ?
• Actividade de monitorar/observar e controlar a rede
Monitorar a rede para verificar o seu estado de
funcionamento e identificar potenciais problemas
Controlar a rede para a reconfigurar e adaptar a um
ambiente operacional e à sua dinâmica
© Pedro Veiga - FCUL
Gestão de Rede
• Gestão de configuração
Estabelecer o modo de interligação e funcionamento dos vários componentes
• Gestão de falhas
Idenfiticar e agir quando ocorrem problemas
• Gestão de contabilização
Obter informação sobre o uso da rede
• Gestão de segurança
Controlar a segurança na rede e identificar tentativas da sua violação
© Pedro Veiga - FCUL
Modelo de Gestão
• Agente de Gestão
• Entidade localizada em cada equipamento a gerir e que fornece informação sobre o estado desse equipamento
• Estação/Consola de gestão
• Entidade localizada na rede, que interroga os vários agentes de gestão e colecciona e trata a informação que recebe dos agentes de gestão (informação trocada em SNMP)
• Informação de gestão fornecida por cada equipamento depende das suas características (MIB - Management Information Base)
A inclusão de gestão na rede deve perturbar o mínimo o funcionamento global da rede