Computadores (e equipamentos) em Rede TCP/IP Instrumentação Eletrônica - TE460 Prof. Eduardo Parente Ribeiro
Computadores (e equipamentos) em Rede TCP/IP
Instrumentação Eletrônica - TE460
Prof. Eduardo Parente Ribeiro
Classificação - Distância
Internet (Rede mundial)Planeta10.000 Km
WAN (Rede geograficamente distribuída)Continente1.000 Km
WAN (Rede geograficamente distribuída)País100 Km
MAN (Rede Metropolitana)Cidade10 Km
LAN (Rede Local)Campus1 Km
LAN (Rede Local)Prédio100 m
LAN (Rede Local)Sala10 m
MultiprocessadorSistema1 m
ExemploAmbienteDistância
Outros: CAN (Control Area Network)
Classificação - Topologia
barramento
estrela
anel
malha
Protocolos
• Regras para a comunicação
Modelo em Camadas (layers)
• Hierarquia de protocolos
• Reduzir complexidade
• Independencia entre as camadas (encapsulamento)
• Comunicação vertical x horizontal (peers)
• Conjunto = pilha (stack)
Exemplo dos 2 filósofos
Modelo OSI - 7 camadas
TCP/IP x OSIModelo OSI
Camada 1 - Física
• Transmitir dados, definindo as especificações elétricas sobre o meio físico
• Meios físicos: Cobre, Fibra ótica, ar.• Tipos de Cabos: UTP (unshielded twisted
pair), STP (shielded twisted pair), coaxial (thin, thick), Fibra ótica (monomodo, multimodo)
• Equipamentos: Repetidores, Hubs.
Camada 2 - Enlace
• Acesso ao meio.
• Notificação/correção de erros,
• Controle de fluxo.
• Delimitação por quadro.
• Endereço físico.
• Equipamentos: Placas de Rede (NIC’s), Pontes, Switches.
OSI x IEEE
Ethernet Token RingToken Bus DQDB
Controle de Acesso ao Meio (MAC)
• Necessário em Redes de Difusão
• Alocação estática:– TDMA, FDMA, CDMA, WDMA
• Alocação dinâmica:– CSMA/CD, ALOHA, MACA, Token Passing...
Formato do Quadro
Pontes (Bridges)
• Dispositivo que conecta duas redes locais
• Opera na camada 2 e só retransmite o tráfego apropriado a cada segmento.
• Estática x Dinâmica (transparente)
Switches
• Segmenta a LAN em pequenas VLAN’s para melhorar desempenho e segurança
• Modos de Operação:– Store and Forward: Recebe todo o pacote antes de transmitir– Fast Forward: Pacote transmitido logo que é identificado– Fragment Free: recebe pelo menos 512 bits para transmitir– Inteligent: operação de acordo com a quantidade de erros
• Controle de Fluxo (IEEE 802.3x): mecanismo de controle de congestinamento
• Trafego com Prioridade (IEEE 802.1p)• LAN Virtual (IEEE 802.1Q)• Fabricantes: 3com, Cisco, Extreme, Cabletron, Foundry,
Lucent, Ericsson, Newbridge, Nortel
Switch
Caminho dedicado
Topologia
barramentoestrela/
barramentoToken bus
anelestrela/anelToken ring
estrelaestrelaSwitch
barramentoestrelaHub
barramentobarramentoCoaxial
ELÉTRICAFÍSICA
Camada 3 - Rede
• Permite a interligação de redes
• Encaminha o pacote ao destino (melhor rota ou caminho alternativo)
• Endereço lógico
• Equipamentos: Roteadores.
Camada 4 - Transporte
• Responsável pela troca de dados fim a fim de modo confiável.
• Sequenciação
• Controle de Fluxo
• Correção de Erro
• Multiplexação
Camada 5 - Sessão
• Organiza e sincroniza os diálogos
• Pontos de sincronização/verificação
• Exemplos de protocolos: NFS, RPC, SQL, X
Camada 6 - Apresentação
• Permite a comunicação entre os aplicativos em diversos sistemas de computador, de uma forma transparente.
• Formato de representação (ASCII, EBCDIC; JPG, TIF)
• Compactação
• Criptografia
Camada 7 - Aplicação
• Aplicação propriamente dita
• Correio Eletrônico
• Web
• Telnet/FTP
• DNS (domain name system)
O Protocolo IP
Voz Telefone Circuito Físico ou virtual
Dados Telegrama Datagrama
Característica
• Entrega sem conexão (conectioless Delivery)
• Entrega Não Confiável(Non reliable delivery)
• Entrega com melhor esforço(Best Effort Delivery)
IP visto da camada de Transporte
• Independência e Isolamento da tecnologia da subrede, numeração, topologia
• Endereçamento uniforme
Encapsulamento dos DadosAPLICAÇÃO
TRANSPORTE
ROTEAMENTO
ENLACE
HARDWAREDados codificados
Dados de Aplicação
Segmentos TCP ou
Datagramas UDP
Datagramas IP
Quadros (frames)
Bits
Dados
Dados
Dados
Dados
Pacote de dados
Endereçamento
• 32 bits = 4 bytes
10.0.69.15 10.0.69.1810.0.69.1710.0.69.16
Host Host Host Host
quatro campos sequenciais de números decimais inteirosseparados por pontos (.)
NETID HOST ID
ENDEREÇO IP COMPLETO
Endereço da Rede Endereço da Máquina
Composição do Endereço IP
Rua Tupinambás
78 82 94 98
Analogia
Endereçode Host
Endereçode rede
Classes0 1 2 3 4 8 16 24 32
Classe A
Classe B
Classe C
Classe D
Classe E
0
1 0
1 1 0
1 1 1 0
1 1 1 1 0
11111111.11111111.11111111.11111111
00000000. 00000000. 00000000. 00000000
127.X.X.X (por ex.: 127.0.0.1)
Broadcast limitado
Broadcast limitado
Broadcast diretona rede
Endereço da rededada por NETID
Emitente na mesmarede
Interface para loopback
NETID HOST ID = Tudo em “um”
NETID HOST ID = Tudo em “zero”
NETID = Tudo em “zero” HOST ID
Endereços Especiais
As Classes e os Endereços IP possíveis
A 1.0.0.1 a126.255.255.254
27 - 2 redes com224 - 2 hosts/rede
B 128.0.0.1 a191.255.255.254
214 redes com216 - 2 hosts/rede
C 192.0.0.1 a223.255.255.254
221 redes com28 - 2 hosts/rede
Classe Endereçosválidos
Amplitude
Sub-redes
•É conveniente dividir uma rede em sub-redes para minimizar os problemas de trafego, colisão, de segurança e disponibilidade
NETID HOST ID
Endereço da RedeEndereçodo Host
Endereço da Sub-rede
SUBNET
Máscara de Sub-Rede
NETID HOST ID
Endereço IP
Máscara de Sub-redeRede 200.18.178.0 com máscara de sub-rede 255.255.255.224
EndereçosPossíveis
deSub-Redes
11001000.00010010.10110010.11001000.00010010.10110010.11001000.00010010.10110010.11001000.00010010.10110010.11001000.00010010.10110010.11001000.00010010.10110010.11001000.00010010.10110010.11001000.00010010.10110010.
0000000000000000000000000000000000000000
000001010011100101110111
Variamos os 3 bits emprestados de HOSTID
Máscara de Sub-redeRede 200.18.178.0 com máscara de sub-rede 255.255.255.224
Endereços possíveis de Hosts por sub-rede
Endereços deSub-Redes
200.18.178.0200.18.178.32200.18.178.64200.18.178.96200.18.178.128200.18.178.160200.18.178.192200.18.178.224
Endereços possíveis de Hostsem cada sub-rede
de 200.18.178.1 até 200.18.178.30de 200.18.178.33 até 200.18.178.62de 200.18.178.65 até 200.18.178.94de 200.18.178.97 até 200.18.178.126de 200.18.178.129 até 200.18.178.158de 200.18.178.161 até 200.18.178.190de 200.18.178.193 até 200.18.178.222de 200.18.178.225 até 200.18.178.254
CIDR(Classless Interdomain Routing)
• Amenizar o problema de esgotamento dos endereços IP• Conceito de Supernet• RFC 1519 - Partição em 4 zonas
194.0.0.0 a 195.255.255.255 Europa198.0.0.0 a 199.255.255.255 América do Norte200.0.0.0 a 201.255.255.255 América do Sul e Central202.0.0.0 a 203.255.255.255 Asia e Pacífico
Endereços Privados
RFC 1918, "Address Allocation for Private Internets", fevereiro de 1996.
10.0.0.0 - 10.255.255.255 (prefixo 10/8) 172.16.0.0 - 172.31.255.255 (prefixo 172.16/12)
192.168.0.0 - 192.168.255.255 (prefixo 192.168/16)
O endereço Lógico• o endereço IP é o endereço lógico de uma rede
TCP/IP• ele é programado na máquina, quando esta é
ligada em rede.• O endereço IP depende do local dentro da rede
onde a máquina está instalada (segmento da rede ao qual ele pertence)
• existe uma tabela que relaciona o endereço IP com o endereço MAC
O endereço Físico•Numa rede Ethernet o endereço usado pela camada de enlace (endereço físico) chama-se Endereço MAC (Media Access Control) e vem gravado no Hardware do dispositivo de rede•é um endereço de 48 bits representado em notação hexadecimal pontuada.•Exemplo: 08:00:20:0A:8C:6D•são atribuídos pelo IEEE e não se repetem nunca•os três primeiros bytes correspondem ao código do fabricante
Endereço em cada camadaAPLICAÇÃO
TRANSPORTE
ROTEAMENTO
ENLACE
HARDWAREDados codificados
Dados
Dados
Dados
Dados
Endereço físico
Endereço lógico
IP: 10.0.69.15
MAC: 08:00:20:00:96:21
IP: 10.0.69.16
MAC: 08:00:20:00:57:41
Dados08:00:20:00:57.41 08:00:20:00:96:21 IP 10.0.69.1510.0.69.16
MAC Destino
MAC Origem
Tipo deProtocolo
IPdestino
IP origem
CRC
Mensagem TCP/IP no Nível de Enlace em uma Rede Ethernet
Resolução de EndereçosARP - Address Resolution Protocol
•em cada máquina existe uma tabela que possui a relação entre o endereço MAC e o Endereço IP correspondente (Tabela ARP)
•Quando um endereço IP não se encontra na tabela, a máquina manda um broadcast para saber quem tem aquele endereço IP
•Comando para listar a tabela: arp -a
O Datagrama IP0 4 8 16 24 31
Versão Tamanho Total (octetos)
Identificação
Endereço IP ORIGEM
TTL - Time to live. Protocolo Checksum do cabeçalho
Opções IP (se alguma)
Dados
...
Hlen Tipo de Serviço
Flags Deslocamento do fragmento
Endereço IP DESTINO
Roteamento dos Pacotes
Router
200.17.100.1
Como mandar este pacote para
200.17.150.4 ?
200.17.100.3 200.17.150.4
Roteamento na camada IPAPLICAÇÃO
TRANSPORTE
ROTEAMENTO
ENLACE
HARDWARE
ROTEAMENTO
ENLACE
HARDWARE
APLICAÇÃO
TRANSPORTE
ROTEAMENTO
ENLACE
HARDWARE
TCP
IP
Tipos de Roteamento
• Estático - A tabela de roteamento é configurada de forma manual pelo operador
• Dinâmico - A tabela é dinâmicamente configurada, com informações trocadas entre os Roteadores
Comparação
• Estático - mais simples, suficiente para a maioria dos casos, porem se a tabela de rotas é muito complexa torna-se de dificil manutenção
• Dinâmico - mais complexo, indicado para roteadores fazendo a interconexão de diversas redes
O Protocolo TCP
• TCP: Transmission Control Protocol
• Serviço de transporte oferecido à camada de aplicação
• Com conexão, entrega confiável, bidirecional
TCP
• Confirmação positiva
• Retransmissão de pacotes com erro
• Ordenação dos pacotesTransmissor Receptor
Envia pacote 1Recebe pacote 1
Envia confirmação 1
Recebe pacote 2
Envia confirmação 2
Recebe confirmação 1
Envia pacote 2
Recebe pacote 2
Janela Deslizante
Transmissor Receptor
Envia pacote 1Recebe pacote 1Envia confirmação 1
Recebe confirmação 3
Envia pacote 2
Envia pacote 3Recebe pacote 2Envia confirmação 2
Recebe pacote 3Envia confirmação 3Recebe confirmação 2
Recebe confirmação 1
1 2 3 4 5 6 7 8 9 10
O tamanho variável permite um aproveitamento
melhor da banda e ao mesmo tempo é responsável pelo controle de fluxo
Início da conexão
• Sincronização entre as duas pontas para o início da troca de dados
• Acordo em 3 etapas (3-way hand-shake)
• Evita que pacotes duplicados antigos provoquem uma falsa conexão.
Acordo em 3 etapas
Envia SYN, seq=123
Recebe SYN
Envia SYN, seq=456, ACK 124
Recebe SYN+ACK
Envia seq=124, ACK 457
Recebe ACK, Conexão extabelecida
Dados já podem vir neste pacote, porem só são processados após estabelecida a conexão
Fechamento da conexão
• 3 etapas modificado
• Fechamento da comunicação bidirecional
Fechamento TCP
Envia FIN, seq=567
Recebe FIN
Envia ACK 568
Recebe ACK (aplicação fecha a conexão)
Envia FIN seq=789, ACK 568
Recebe FIN+ACK
Envia ACK 569
Recebe ACK
Demultiplexação
TCP: Demultiplexação baseada na porta
Camada IP
Chega um segmento TCP
Porta 1 Porta 2 Porta 3 Porta 4
Demultiplexação (na camada IP)
IP: Demultiplexação baseada no protocolo
Camada de Enlace
Chega um datagrama IP
TCP UDP ICMP IGMP
Demultiplexação(na camada de Enlace)
Enlace: Demultiplexação baseada no tipo de quadro
Camada Física
Chega um Quadro
IP ARP RARP
Portas TCP
Porta Nome Descrição7 echo Eco9 discard Discarta11 systat Usuátios ativos13 daytime Hora do dia20 ftp-data ftp – dados21 ftp Transferência de arquivo23 telnet Conexão de terminal25 smtp Correio eletrônico53 nameserver Servidor de nomes80 http protocolo hypertexto (www)110 pop Protocolo de correio
Segmento TCP0 4 10 16 24 31
Porta origem Porta Destino
Número da sequência
Número de confirmação
Tam. Cab. Reservado Código Janela
Checksum Ponteiro Urgente
Opções
Dados
...
Código
URG urgente
ACK Confirmação
PSH Empurra
RST Reseta
SYN Início, sincronismo
FIN Finaliza
Ponto de Conexão
• A conexão é identificada por um par de “pontos terminais” (endpoints)
• Cada ponto de conexão é definido por um par (endereço IP, porta)
• Por exemplo, uma conexão é unicamente identificada por: {(200.28.20.1, 1038), (200.35.39.3, 23)}
Interface Soquete
• É a forma de comunicação com a aplicação fornecida pelo sistema operacional
• Ex. socket (unix), Winsock (windows)
• Prove uma abstração semelhante a utilização de arquivos: ex. open(), read(), write(), close(), com controles adicionais
O Protocolo UDP
• User Datagram Protocol
• Entrega de Dados não confiável
• Sem Conexão
• Ex. de aplicações: Streaming Audio, DNS, NFS, TFTP
Datagrama UDP0 4 10 16 24 31
Porta origem Porta Destino
Tamanho da mensagem
Dados
...
Checksum
Padronizações – IETF
• RFC’s - Request for Coments
• Drafts
• FYI - For your Information
http://www.ietf.orghttp://www.ietf.rnp.br
Recomendações Internacionais
• ITU - International Telecomunications Union
• ITU-R (Radiocomunications)
• ITU-T (Telecomunications) (CCITT até 93)
• ITU-D (Development)
Padronizações Internacionais
• ISO - International Standards Organizationmembros (ANSI, BSI, DIN, ABNT, ...)
• IEEE - Institute of Electrical and Eletronics Engineering
• Internet Society, IAB (Internet Advisory Board), IETF (Internet Engineering Task Force), IRTF (Internet Research Task Force)