690 likes | 979 Views
TCP-IP. J.Netto. Apresentação . Conceituação básica Princípio de funcionamento Protocolos de rede e transporte Aplicações e Diagnósticos. Necessidades de uso de redes. Compartilhamento de recursos e informações. Impressora. Disco. Rede. Supervisório. Usuário. Conceito INTERNET.
E N D
TCP-IP J.Netto
Apresentação • Conceituação básica • Princípio de funcionamento • Protocolos de rede e transporte • Aplicações e Diagnósticos
Necessidades de uso de redes • Compartilhamento de recursos e informações Impressora Disco Rede Supervisório Usuário
Conceito INTERNET • Independência tecnológica de rede e de sistema operacional • Interconexão universal • Confirmação ponto-a-ponto
G G G Internet
Introdução Protocolo IP Enderecamento IP ARP ICMP TCP UDP Súmula • Sub-redes • Domínios • Modelo Cliente Servidor • Protocolo de Aplicação • Diagnóstico
Introdução • Protocolo: Conjunto de regras que determinam como o hardware e o software de uma rede devem interagir para transmitir e receber informacões. • Utilização de um conjunto de protocolos cooperantes
Introdução • Porque uma família de protocolos? • Falha de hardware • Congestionamento de rede • Atraso e/ou perda de pacotes • Erros de transmissão • Duplicacão de dados e/ou erros de sequenciamento
Introdução • TCP-IP • Padrão de facto • Início do desenvolvimento pelo DARPA (Defense Advanced Research Projects Agency) • Protocolo da INTERNET (milhares de computadores conectados) • Protocolos abertos (RFCs)
Organização em camadas • Internet • ISO/OSI S/A/Aplic. Aplicações Transporte TCP Rede IP Enlace Interface de rede Intra rede Físico
rlogin,ftp,... NFS,DNS,.. tracert ICMP ARP , Device drivers Família de protocolos TCP/IP arp TCP UDP IP rede
Família TCP/IP • Device drivers: Acesso ao hardware de rede • ARP: Address Resolution Protocol • IP: Internet Protocol • ICMP: Internet Control Message Protocol • TCP: Transmission Control Protocol • UDP: User Datagram Protocol
Encapsulamento de dados • Quebra em pacotes • Tráfego de sequência de bits H4 Dados Dados H4 H3 Dados Dados H3 H2 Dados Dados H2 H1 Dados Dados H1 Hx - Cabeçalho (Header) - Controle Dados - Não tratado pelo nível x
Exemplo: TCP-IP sobre ethernet Preâmbulo dstadr srcadr tipo dados (ex. tcp/ip) crc Tipo: Serve para identificar qual o protocolo que esta dentro do pacote
Telnet FTP SMTP (mail) ICMP TCP UDP Pacotes auto identificados IP ARP Outro Protocolo Demultiplexa (tipo) Pacote chega
Protocolo IP - Internet Protocol • Se encarrega da “entrega” das mensagens na rede • Serviço não orientado a conexão (não estabelece circuito virtual) • Não oferece garantia que o datagrama chega ao destino • Entrega as mensagens baseado em um endereço único para cada máquina = endereço IP
Endereçamento IP • O nível IP gerencia os pacotes de bits de acordo com o endereço IP do destinatário • Pacotes • trafegam dentro de uma mesma rede • trafegam de uma rede local à outra (routing)
Endereço IP • Contém a indicação da rede e da máquina (host) dentro da rede • Cada computador possui um único número de 32 bits = endereço INTERNET • Endereço dividido em 4 campos de 8 bits • Cada campo é representado por um número entre 0 e 255, e são separados por um ponto • exemplo: 143.54.12.12 (w.x.y.z)
Classes de Endereços • Divididos em três classes: A, B e C • Classe A: redes com grande número de máquinas • 7 bits para netid e 24 bits para hostid( mais de 65536 máquinas) • w na faixa de 0 a 126 0 7 8 16 24 31 0 netid hostid
Classe B: redes com médio número de máquinas • 14 bits para netid e 16 bits para hostid( até 65534 máquinas) • w na faixa de 128 a 191 0 8 16 24 31 1 0 netid hostid
Classe C: redes com pequeno número de máquinas • 21 bits para netid e 8 bits para hostid(entre 1 e 254 máquinas) • w na faixa de 192 a 233 0 8 16 24 31 1 1 0 netid hostid
Endereçamento abrangente (broadcast) • Endereço da rede: contém hostid com todos os bits em zero (0) (não se refere aos hosts) • Endereço de broadcast (refere-se a todos os hosts): hostid com todos os bits em um (1) (limitado a uma rede física)
Casos especiais • Hosts com duas conexões às redes(multi homed): dois endereços IP (ex. gateways) • Loopback: 127.0.0.1 Rede para teste e comunicação entre processos de uma mesma máquina (nunca aparece como endereço de fonte ou destino na rede)
Casos especiais • Todos os bits em zero: O próprio host - usado apenas para startup e não aparece como endereço de destino • Todos os bits de netid em zero: Um host específico na rede onde trafega o pacote - usado para startup e não aparece como endereço de destino • Todos os bits de hostid em um (1): broadcast para a rede onde trafega o pacote
Subredes • Divisões lógicas de uma rede • Transparente para o mundo externo • Roteamento baseado em pares (rede,subrede) • Máscara para determinar a subrede
Subnets masks • Valores 32 bits que permite ao destinatário separar netid do hostid • Representado em notação decimal com pontos • bits em 1 - netid • bits em 0 - hostid • máscaras defaults = as classes de redes(255.0.0.0, 255.255.0.0, 255.255.255.0)
Exemplo: 143.54.y.z rede ufrgs • Subnetmask: 255.255.255.0 - 256 subredes, com 255 hotst cada • 143.54.12.1 (castor) 143.54 - endereço de rede (classe B) 12 - endereço de subrede 1 - hostid
Protocolo IP • Distribuição de pacotes para outros protocolos • Serviço não orientado a conexão (pacotes independentes) • best-effort • responsabilidade do contúdo é garantido pelos protocolos de alto nível
Protocolo IP - Parâmetros • MTU - Maximum Transfer Unit • Segmentação em subredes com MTUs diferentes • Otimizção: depende da rede • TTL - Time to Live Tempo que o datagrama pode ficar na rede TTL=0 discarta o datagrama
Datagrama IP 0 8 16 24 31 Ver IHL Serviço Tamanho total Identificação Flags Offset frag. TTL Proto Header Checksum IP Origem IP Destino Opções Padding Dados
Datagrama IP Tipo de Serviço Precedência D T R Delay Reliability Throughput Flags DF MF More Fragments Don’t Fragment
Protocolo IP - Multiplexação • Convenção para auto identificação dos datagramas
ARP (Address Resolution Protocol) • Descobrir o endereço físico de uma máquina na rede local, conheendo apenas o endereço IP. • Usa broadcast para perguntar o endereço físico do destinatário das mensagens • Encapsulado no frame do nível físico • Utiliza uma cache para reduzir o número de consultas
RARP (Reverse Address Resolution Protocol) • Descobrir o próprio endereço IP no boot da máquina • Também usa broadcast do nível físico • Resposta de aceite do endereço no caso de multiplos servidores
Tipo Hardware Tipo de protocolo HLEN PLEN Operação Sender HA(4-5) SENDER IP (0-1) Sender IP(2-3) Target HA(0-1) Formato ARP /RARP e utilitário arp 0 8 16 24 31 Sender HA(octetos 0 à 3) Target HA(2-5) Target IP(0-3)
ICMP - Internet Control Message Protocol • Usado para detectar erros e testar a conectividade • Encapsulado em um datagrama IP • PING usa ICMP echo request e echo replay • utilitário ping ping -t -i 5 rubi.inf
Roteamento e Gateways • Gateway - Conhece as redes ligadas ã sua rede local • Cada host pode manter tabelas para destinatários específicos • Gateway mantém tabelas de roteamento • Default Gateway
Default gateway • Se IP não pertence a rede local: • Tabela local • Default gateway • Utilitário route • Em caso de falha, apenas tráfego local
Algoritmos de Roteamento (princípios) • A rede é vista como um grafo • O problema é achar o menor caminho!
Gateway - Protocolos • GGP - Gateway-to-Gateway protocol • EGP - External Gateway protocol (sistemas autônomos) • IGP - Internal Gateway Protocol (gateways do mesmo sistema) • RIP - Routing Information Protocol Utilitários Laços no processo de roteamento !
UDP - User Datagram Protocol • Serviço de datagrama sem conexão (como IP) • Usado para troca de dados em redes confiáveis • Checagem dos dados no protocolo de aplicação • Usa ports para identificar o destinatário
Ports • Usado para identidicar a aplicação • Macanismo para tornar-se independente da numeração local dos processos • O remetente deve conhecer o número de porta do destinatário • Existem ports pré-determinadas para os serviços destinatários mais comuns • Portas do remetente determinada pelo SisOp
TCP - Transmission Control Protocol • Serviço orientado a conexão (pré-estabelecimento da comunicação) • Garante a entrega de pacotes (Acknolegements - ACKs) • Comunicação confiável • Assegura o sequenciamento • Usa checksums • Protocolo de comunicação porta-a-porta