71
Introdução ao protocolo TCP/IP Prof. Kleber Rezende Protocolos Básicos e de Aplicações

Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

  • Upload
    lynhu

  • View
    240

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Introdução ao protocolo TCP/IP

Prof. Kleber Rezende

Protocolos Básicos e de Aplicações

Page 2: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Agenda

Conceitos Básicos

Camada Física

Endereçamento IP ClassFull

Protocolo ARP

Protocolo IP

Roteamento IP ClassFull

Page 3: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Interligação em Redes

Acomoda distintas tecnologias básicas e hardware.

Proporciona forma de interconectar redes heterogêneas.

Esconde detalhes de hardware.

Computadores se comunicam independentemente de suas

conexões físicas.

Page 4: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Interligação em Rede TCP/IP

Sistema aberto (RFC's podem ser obtidas via Internet).

Denominado oficialmente Pilha de Protocolos TCP/IP.

Pode ser usado em redes locais e/ou remotas.

Page 5: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Protocolos TCP/IP

Fornecem regras para a comunicação.

Define formato da mensagem

Descrevem o que um computador faz quando recebe

uma mensagem.

Especificam como um computador trata um erro.

É independente de hardware

Os protocolos estão para a comunicação assim como os

algoritmos estão para a computação.

Page 6: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Vantagens do uso de Protocolos

Programadores não precisam aprender ou lembrar-se de

todos os detalhes de hardware.

Programas não ficam restritos a uma arquitetura específica.

Podem promover comunicação direta entre um par de

máquinas arbitrário.

Page 7: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Tipos de Serviços TCP/IP

Serviço de entrega de pacotes sem conexão

Promove o roteamento de pequenas mensagens de uma máquina para outra.

Não há garantia de entrega nem de que os pacotes sejam entregues na mesma

ordem em que foram transmitidos.

É extremamente eficiente: Mapeamento direto em hardware

Serviço de transporte de streams confiáveis

Trata de problemas de perda ou falhas de comutação ao longo do caminho

percorrido por um pacote.

Em nível mais baixo as mensagens são divididas em pequenos pacotes.

Page 8: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Serviços de Aplicativos mais comuns

na Internet

Correio Eletrônico - Serviço sem conexão

Transferência de Arquivos - Serviço orientado à conexão

Login Remoto - Serviço orientado à conexão

Page 9: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Diferenças entre o TCP/IP e outras

tecnologias de rede

Independência de tecnologia de redes

Interconexão Universal

Confirmações fim-a-fim

Padrões de protocolos de aplicativos

Page 10: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Camada de Enlace de Dados Tipos básicos de Redes de Comunicação:

Comutação de Circuitos (Redes baseadas em conexões)

Exemplo: Sistema Telefônico

Vantagem: Capacidade fixa do circuito (64 Kbps)

Desvantagem: Custo fixo (alto) independente do tráfego

Comutação de Pacotes (Redes sem conexão)

Uso: Redes de Computadores

Vantagem: Realiza várias comunicações simultâneas

Desvantagem: Capacidade de comunicação descresce mediante aumento da

carga

Page 11: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Endereçamento de Rede

Todos os computadores de uma rede recebe um único

endereço inteiro.

Os pacotes possuem um campo de endereço de destino, que

aparece na mesma posição em todos os pacotes.

Page 12: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

A tecnologia Ethernet

Criada pela Xerox em 1970 e padronizada pelo IEEE (Institute

for Eletrical and Eletronic Engineers) sob o número 802.3

Usa cabos coaxiais grosso, fino (Terminadores) e par-trançado

(HUB's)

Page 13: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Transceptor: Dispositivo de hardware usado para fazer a

conexão entre um computador e um cabo coaxial Ethernet.

Page 14: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Ethernet de Cabo Coaxial

Grosso

Page 15: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Ethernet de Cabo Coaxial Fino

Page 16: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Característica de uma Rede Ethernet

É uma tecnologia de barramento de difusão com método de

entrega sem garantia e controle de acesso distribuído.

Barramento = todas as estações compartilham o mesmo canal

Difusão = todos os tranceptores recebem cada uma das

transmissões

Entrega sem garantia = o hardware não fornece qualquer

informação sobre a entrega do pacote (Best Effort)

Controle de acesso distribuído = não possui nenhuma autoridade

central para permitir o acesso.

Page 17: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Esquema de acesso CSMA/CD (Carrier Sense

Multiple Access with Collision Detect)

Page 18: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Endereços Físicos Ethernet Possuem 48 bits

Cada computador conectado a uma Ethernet recebe um número

único.

Endereços Ethernet pertencem aos dispositivos de hardware

(endereços de hardware ou endereço físico)

Trocar uma interface hardware de um computador irá alterar o

seu endereço físico

Podem ser unicast, broadcast ou unicast.

Page 19: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

O Formato do Quadro Ethernet

Preâmbulo: Usado para fins de sincronização.

Tamanho do Campo de Dados: Especifica o número de octetos no campo de dados de usuário.

CRC: Usado para fins de detecção de erro.

Page 20: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Aumentando o comprimento da

Ethernet

Repetidores: É um dispositivo de hardware que

transmite um sinal elétrico de um

cabo a outro.

Pontes: É um computador com duas ou mais

interfaces Ethernet;

"Aprende" dinamicamente quais

computadores fazem de parte de

cada um dos segmentos.

Page 21: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Redes FDDI

Fiber Distributed Data Interconnect

Opera em pequenas áreas geográficas e possui maior

largura de banda que a Ethernet.

Usa feixes de luz para transportar as informações.

Fibra ótica é imune a interferência eletromagnética.

É uma rede Token Ring.

É auto-reparável, pois o hardware contorna uma falha

automaticamente.

Page 22: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Redes FDDI

Page 23: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Redes ATM

Asynchronous Transfer Mode

Rede de alta velocidade, orientada à conexão.

Opera tanto em pequenas quanto em grandes áreas geo-gráficas.

É formada por um ou mais comutadores de alta velocida-de que

são conectados aos computadores hosts e a outros comutadores.

Utilizas fibras óticas para fazer as interconexões (inclusi-ve entre

o host e o comutador) que chegam a 622 Mbps.

Utilizam quadros de tamanho fixo (células)

Page 24: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Interligação em Redes

Diferença entre interconexão em nível de aplicativos e

interconexão em nível de rede.

Propriedades: 1. Usuários ou programas aplicativos não devem ter conhecimento dos

detalhes das interconexões de hardware;

2. Não é necessário conhecer a topologia;

3. Deve ser capaz de enviar dados através de redes intermediárias;

4. Todas as máquinas devem compartilhar um conjunto universal de

identificadores.

Page 25: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Arquitetura de Interligação em Redes

1. Duas redes só podem ser conectadas por um computador que esteja

ligado as duas.

2. Este computador deve cooperar com a comunicação entre duas

máquinas.

3. Os computadores que interligam duas redes e cooperam na

comunicação são chamados de gateways ou roteadores.

Page 26: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Interconexão através de roteadores IP

Roteadores necessitam saber sobre a topolo-gia da

interligação em redes, além das redes às quais estão

conectados.

Page 27: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Interconexão através de roteadores IP

Roteadores são computadores de pequeno porte. Geralmente

têm pouco ou nenhum espaço de armazenamento em disco e

pouca memória principal.

Roteadores usam redes de destino e não hosts de destino.

Page 28: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

A visão do usuário

O usuário deve ver a interligação em redes como uma

rede única;

Além de roteadores que conecam redes físicas, o

software é necessário em cada host para que os

aplicativos usem a interligação como uma rede única.

No caso de mudança da rede física, somente o software

de interligação em redes deverá ser alterado.

Page 29: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

A visão do usuário

O TCP/IP trata todas as redes do mesmo modo, seja

uma Ethernet ou a ANSNET.

Page 30: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Perguntas

Qual a forma do endereço numa inter-ligação em redes?

Como este endereço se relaciona com os endereços físicos?

O que acontece quando algum pacote chega muito rápido a

um roteador?

Como os roteadores aprendem as rotas?

Page 31: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Endereços de Interligação em Redes

Identificadores Universais: Para tornar universal um sistema

de comunicação deve-se aplicar um método de identificação dos

hosts que seja aceito globalmente.

Hosts são classificados por:

Nome: o que o objeto é.

Endereço: onde o objeto está.

Rota: como chegar até ele.

Page 32: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Endereçamento IP

Número inteiro de 32 bits

Projetado cuidadosamente para tornar o roteamento

eficiente

Hosts de uma mesma rede compartilham o mesmo prefixo

de endereço.

Cada endereço é o par (netid, hostid)

Page 33: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Classes de Endereços

Page 34: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Endereçamento IP

Endereço não identifica um host, mas sim uma conexão de rede. Ex.: Host Multi-homed possui dois ou mais endereços.

Um endereço onde o hostid igual a zero identifica uma rede.

Um endereço onde o hostid consista somente de bits 1 é reservado para broadcasting. (Difusão direcionada)

Um endereço de Difusão Limitada consiste de 32 bits 1. É usada quando um host necessita obter o seu endereço.

Page 35: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Endereçamento IP Um endereço com o netid igual a zero é interpretado

como “esta rede”, ou seja, a rede onde o pacote chegou.

Usado quando um host deseja se comunicar, mas não sabe o endereço da rede.

Se um host se move de uma rede para a outra, seu endereço deve ser mudado.

Hosts multi-homed podem não ser acessados, mesmo possuindo uma conexão física entre ele e os demais.

Page 36: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Endereçamento IP

Notação Ponto Decimal: Cada octeto é escrito como

um número decimal.

Exemplo: 10000000 00001010 00000010 00011110 é

representado por 128.10.2.30

Page 37: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Endereçamento IP

Endereço de Loopback (127.0.0.0): usado para comunicação na máquina local.

Page 38: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Resumindo

Page 39: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Exemplo

Page 40: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Exemplo

Page 41: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Mapeamento de Endereços Internet

para Endereços Físicos

Duas máquinas de uma determinada rede física podem

comunicar-se apenas se souberem o endereço físico uma

da outra.

Objetivo: Permitir que programas de alto nível

trabalhem somente com endereços de interligação em

redes.

Como possibilitar isso?

Page 42: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Mapeamento Direto

Exemplo: Rede proNET token ring Usa números inteiros pequenos para endereços físicos (até 256).

Permite que o usuário escolha um endereço de hardware para

uma máquina.

Solução de Mapeamento: Escolhe-se endereços físicos que sejam parte dos endereços IP.

Exemplo: Endereço físico = 3

Endereço IP = 192.5.48.3

Page 43: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Mapeamento Dinâmico Exemplo: Rede Ethernet

Problemas:

Cada interface recebe um endereço físico quando é fabricada. Assim, o

endereço físico da máquina muda quando trocamos a interface.

Endereço Ethernet tem 48 bits, enquanto o endereço IP tem, apenas,

32 bits.

Soluções:

Tabela de mapeamento.

Protocolo de Resolução de Endereços.

Page 44: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Address Resolution Protocol

Também conhecido

como ARP.

Fornece um meca-

nismo razoavelmen-te

eficiente e fácil de

manter.

Page 45: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Cache de Conversão Paradoxo: A pergunta para B, por difusão, “como posso

alcançar você?”

Entretanto, a difusão é muito cara, porque cada máquina da

rede deve processar cada pacote de difusão.

Assim, computadores que usam ARP mantém um cache com

mapeamento entre endereços físicos e endereços IP.

Page 46: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Cache de Conversão

Algoritmo:

1. Sempre que um computador recebe uma resposta ARP, ele

guarda em seu cache o mapeamento recebido.

2. Quando ele transmite um pacote, primeiro ele procura em seu

cache uma vinculação de endereços. Caso não encontre envia

uma solicitação ARP.

A prática mostra que, mesmo um cache pequeno é

bastante eficiente, já que a comunicação implica na

transferência de mais de um pacote.

Page 47: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Aprimoramentos ARP

1. Se A usar ARP para se comunicar com B, é bem provável que B

também tenha que se comunicar com A num futuro próximo.

B armazena o mapeamento em seu cache e, depois envia a resposta ARP

para A

2. Como A difunde sua solicitação inicial, todas a máquinas da rede

recebem o pacote.

Todas máquinas podem fazer um mapeamento em seus caches do

endereços físicos e IP de A.

3. Quando um computador tem sua interface substituída seu

endereço físico muda.

Esta máquina deve notificar as demais que seu endereço mudou, usando

ARP.

Page 48: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Implementação ARP

Algoritmo de Envio:

1. Dado um endereço IP, o software consulta seu cache para

verificar se o mapeamento existe

2. Se existir

2.1. O software retira o endereço físico

2.2. Coloca os dados num quadro contendo aquele endereço

2.3. Envia o quadro

Senão

2.4. Transmite uma mensagem de difusão ARP

2.5. Espera uma resposta

Page 49: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Implementação ARP Detalhes a serem cuidados:

1. Numa solicitação ARP a máquina de destino pode estar

desativada ou muito ocupada.

2. Numa rede Ethernet o pacote pode se perder.

3. Uma máquina A pode ter uma associação para máquina B, mas

o hardware de B é substituído.

Page 50: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Implementação ARP

Algoritmo de Recebimento:

1. Quando um pacote ARP chega, o software retira o par de

endereços (IP e físico) do transmissor.

2. Se existir uma entrada (IP) em seu cache local

2.1. Atualiza aquela entrada recarregando o endereço físico.

3. Processa o restante do pacote.

4. Se o receptor tiver o mesmo endereço IP de destino

4.1. Monta uma resposta, adicionando seu endereço físico

4.2. Envia, diretamente, ao solicitador

Senão

4.3. Ignora o pacote

Page 51: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Encapsulamento ARP

Transmissor designa um valor especial (080616) para o campo de tipo (no cabeçalho do quadro) para identificar uma mensagem ARP.

Page 52: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Formato do ARP

Valores do Campo Operação:

ARP - Solicitação (1); Resposta (2)

RARP - Solicitação (3); Resposta (4)

Page 53: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Protocolo IP - Introdução

Internet Protocol

Protocolo que define um mecanismo de transmissão sem conexão,

best-effort e não confiável.

Sem conexão: Cada pacote é independente dos outros.

Best-Effort: O software faz uma séria tentativa de entregar o pacote.

Não confiável: A entrega não é garantida.

Page 54: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Protocolo IP - Características

Define a unidade básica de transferência de dados através

da interligação em redes TCP/IP.

Especifica o formato exato de todos os dados.

Desempenha função de roteamento.

Define regras de: Como os hosts e roteadores devem processar os pacotes

Como e quando as mensagens de erro devem ser geradas

Em que condições os pacotes devem ser descartados

Page 55: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Protocolo IP - Formato

Formato Geral

• Formato Detalhado

Page 56: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Protocolo IP - Formato

VERS: Contém a versão do protocolo. Usado para assegurar que o formato do datagrama é o mesmo esperado. Versão atual é a quatro.

HLEN: Comprimento do cabeçalho medido em palavras de 32 bits. Cabeçalho típico possui 20 octetos, logo HLEN = 5.

TOTAL LENGTH: Comprimento total do datagrama. Tamanho máximo do datagrama é 216 = 65535 octetos.

TIME TO LIVE (TTL): Especifica quanto tempo o datagrama pode permanecer no sistema de interligação em redes.

PROTOCOL: Especifica qual protocolo de alto nível foi utilizado para utilizado para criar a mensagem que está sendo transportada na área de dados do datagrama.

HEADER CHECKSUM: Assegura integridade dos valores do cabeçalho. Reduz o tempo de processamento gastos pelos roteadores.

Page 57: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Protocolo IP - Formato

Service Type: Especifica como o datagrama deve ser

tratado. É dividido em cinco subcampos.

Precedence: Permite que os transmissores indiquem a

importância de cada datagrama. Varia de zero

(precedência normal) até sete (controle de rede)

Exemplo: Controle de congestionamento.

Bit D: Solicita um atraso (delay) baixo.

Bit T: Solicita uma vazão (throughput) alta.

Bit R: Solicita uma confiabilidade (reliable) alta.

Page 58: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Encapsulamento de Datagramas Que tamanho um datagrama deve ter? A princípio qualquer um, já

que são tratados por software e não por hardware.

Para tornar o transporte eficiente, é necessário que cada datagrama viaje dentro de um quadro físico distinto.

Problema: Cada rede física tem o seu próprio tamanho de quadro.

Os datagramas são encapsulados em quadro físico da rede e são tratados como uma mensagem qualquer a ser enviada de uma máquina a outra.

Page 59: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Fragmentação – Motivação

MTU (maximum transfer unit): Limite superior fixo no total de

dados que podem ser transferidos em quadro físico:

Exemplo: Ethernet tem MTU = 1500 octetos; FDDI tem MTU

= 4470 octetos

Soluções possíveis para o problema do tamanho do

datagrama:

Limitar os datagramas para encaixar na menor MTU possível -> Ineficaz

quando os datagramas trafegarem em redes com MTU maior.

Permitir datagramas maiores que a MTU mínima -> Datagrama nem sempre

irá se encaixar num quadro único da rede.

Page 60: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Fragmentação - Definição Solução usada pelo IP: Não fixar o tamanho do

datagrama. Determina-se um tamanho inicial e divide os

datagramas extensos em frações menores quando estes

atravessam uma rede com MTU pequena. Este processo

é conhecido como fragmentação.

Page 61: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Fragmentação - Exemplo

Cada fragmento tem o mesmo formato que o datagrama original.

Cada fragmento duplica a maior parte do cabeçalho do datagrama

original (exceto pelos campos FLAGS – que indica que ele é um

fragmento; e TOTAL LENGTH).

Page 62: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Remontagem dos Fragmentos

O datagrama deve ser remontado após passar em uma rede ou os fragmentos devem ser transportados até o destino final para ser remontados lá?

O TCP/IP leva os fragmentos até o destino final.

Vantagens: Cada fragmento pode ser roteado de forma independente

Não exige que roteadores intermediários armazenem ou remontem fragmentos

Desvantagens: Redes físicas com MTU grandes que se encontrem após o ponto de

fragmentação só transportarão pequenos fragmentos.

Se um fragmento qualquer for perdido, o datagrama não poderá ser remontado.

Page 63: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Controle de Fragmentação Os campos IDENTIFICATION, FLAGS e FRAGMENT OFFSET

controlam a fragmentação e remontagem de datagramas.

IDENTIFICATION: Contém um número inteiro que identifica o

datagrama. Todos os fragmentos de um datagrama recebem o

mesmo o número de identificação.

FRAGMENT OFFSET: Especifica o deslocamento, no datagrama

original, dos dados que estão sendo transportados no fragmento,

medido em unidades de oito octetos, iniciando em zero.

FLAGS:

1º não usado.

2º bit especifica se o datagrama pode ser fragmentado.

3º bit especifica se o fragmento é intermediário ou final.

Page 64: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Opções IP São incluídas, principalmente, para testes e depuração de erros na rede.

Todas opções possuem campos de código, comprimento e ponteiro.

O campo código é subdividido como mostrado a seguir:

• O campo copy é usado durante a fragmentação.

• Copy = 1 => opção deve ser copiada para todos os fragmentos.

• Copy = 0 => opção só deve ser copiada para um fragmento

Page 65: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Opção de Armazenamento de Rota Permite que a origem crie uma lista vazia de endereços IP

e faz com que o endereço de IP de cada roteador que processe o datagrama seja acrescentado à lista.

• Length: Especifica o comprimento total da opção

• Pointer: Especifica o deslocamento dentro da opção do próximo slot disponível.

• Campo Copy tem valor 0

Page 66: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Opção de Rota da Origem

Oferece uma maneira do transmissor impor um caminho

pelo qual o datagrama deve passar.

• Campo Copy tem valor 1

Page 67: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Roteamento de Datagramas IP Roteamento refere-se ao processo de selecionar um caminho pelo qual são

enviados pacotes.

Roteador se refere a um computador que executa tal seleção.

Qualquer computador com diversas conexões de rede pode atuar como

roteador, entretanto “hosts não devem atuar como roteadores”.

• Figura 8.1. Host deve tomar decisões de roteamento, mesmo estando

ligado a uma única rede.

Page 68: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Formas de Encaminhamento

Direto: É a transmissão de um datagrama, através de

uma única rede para outra máquina.

Indireto: Ocorre quando o destino não se encontra na

mesma rede que a origem. O transmissor passa o

datagrama a um roteador para que esta faça a entrega.

Como saber se o destinatário encontra-se ou não na

mesma rede?

Page 69: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Roteamento Orientado por Tabela O algoritmo de roteamento IP normal usa uma tabela de

roteamento em cada máquina que armazena informações sobre possíveis destinos e como acessá-las.

Que informações devem ser mantidas nestas tabelas?

Resposta: Apenas das redes que podem ser alcançadas por aquela máquina.

Page 70: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Roteamento do Próximo Passo

Tipicamente, uma tabela de roteamento contém pares

(N, R), onde N é o endereço IP da rede de destino e R é

o endereço IP do “próximo” roteador ao longo do

caminho até a rede N.

O roteador não conhece o caminho completo até o

destino.

Cada entrada na tabela aponta para um roteador que

pode ser acesso através de uma única rede.

(encaminhamento direto)

Page 71: Protocolos Básicos e de Aplicações · Interligação em Redes Acomoda distintas tecnologias básicas e hardware. Proporciona forma de interconectar redes heterogêneas. Esconde

Exemplo