redes de computadores4 redes de comunicação existem vários tipos de redes de comunicação...
TRANSCRIPT
Redes de Computadores
Arquitetura de Protocolos Profa. Priscila Solís Barreto
REDE “ ... Um sistema de comunicações para
conectar sistemas finais”
“Sistemas finais?”=hosts PCs, estações de trabalho componentes de rede computadores servidores
2
Em uma rede
As conexões ponto a ponto(direta) não sempre são possíveis : Os dispositivos estão muito separados ou longe
A solução é utilizar uma rede de comunicação
3
4
Redes de Comunicação Existem vários tipos de redes de comunicação
Corréio, telefone, Internet . Existem um conjunto de passos genéricos que
fazem parte do processo de comunicação Endereçamento, tradução de endereço em nome,
transporte, roteamento, entrega Existem várias formas de fazer a entrega
Confiável, em ordem Sem confiabilidade, sem verificação de entrega
(acknowledgement)
Modelo simplificado de uma rede
5
Rede de Computadores Conjunto de
computadores interligados em algum tipo de rede Enlace físico Enlace virtual
Indireto, por meio de outros computadores
Enlace lógico Nível abstrato,
independente da conexão física
6
Protocolos
Usados para estabelecer regras de comunicação entre diversas entidades em um sistema
Entidades Computadores Programas
Sistemas Computadores Sensores remotos
7
Arquitetura de um protocolo Dividir em modulos (camadas) a tarefa da
comunicação Estabelecer uma interface entre as camadas e
desenvolver cada uma de forma individual Exemplo: Protocolo para transmissão de
arquivos pode usar 3 modulos ou camadas: Aplicação para transferência Serviço para comunicação Serviço de acesso à rede
8
Carta"
Correio: Camadas Carta" Envelope"
Registrado"
Envelope"Registrado"
9
10
Servidor HTTP
Cliente HTTP
Requisição
Resposta
Visão no Nível de Aplicação
Uso do HTTP
HTTP é o protocolo que suporta a comunicação entre browsers e servidores WEB.
Um “Web Server” é um servidor HTTP
11
Definição
“HTTP é um protocolo da camada de aplicação com a leveza e rapidez necessária para sistemas de informação distribuidos de hypermedia.”
12
Request - Response
HTTP tem uma estrutura simples: O cliente manda um pedido O servidor devolve uma resposta.
HTTP suporta multiplos intercambios de pedido-resposta em uma única conexão TCP.
13
14
Passos em uma transferência HTTP O usuário seleciona o documento O software de rede localiza a máquina
remota e estabelece uma conexão bidirecional
O cliente HTTP envia uma requisição de documento (GET )
O daemon HTTP na máquina remota interpreta a mensagem de GET
O daemon remoto HTTP envia o resultado da operação de GET Código, descrição da informação, arquivo
solicitado
15
Domain Name Service - DNS
Os servidores DNS ajudam a resolver nomes : tradução endereço-nome Exemplo: dado um nome www.cic.unb.br,
encontrar o endereço IP deste nome Endereços IP = identificação numérica dos
elementos de rede Os elementos de rede (computadores) são
conhecidos pelo seu endereço IP Os endereços IP no IPv4 têm 32 bits O protocol DNS permite traduzir nomes
em endereços IP
Endereços IP Endereços IP são endereços lógicos (não fisicos)
que cada elemento DEVE TER para poder participar da Internet
Pelo ENDEREÇO IP pode-se identificar: A rede onde esta um computador Que computador é
Cada computador deve ter um endereço IP único. Os endereços IP são fornecidos por uma unidade
central (American Registry for Internet Numbers)
16
17
Exemplo
QNAME = cic.unb.br, QCLASS = IN QTYPE = A
QNAME = cic.unb.br QCLASS = IN QTYPE = A IN A 164.41.91. 1
A aplicação utilizará o 164.41.91.1 quando precise entrar em contato com cic.unb.br
Hierarquia DNS
edu com org net
rpi escola
18
Estrutura do nome do host Cada nome de host é formado por uma
seqüência de etiquetas, separadas por pontos. Cada etiqueta pode ter até 63 caracteres O nome total pode ter no máximo 255 caracteres.
Examplos: fazenda.gov.br barney.the.purple.dinosaur.com finanzas.empresa.com.br
19
20
HTTP server
HTTP client
TCP TCP
GET 80, #
#, 80 STATUS
Port 80
Ephemeral
Port #
Protocolo de Transporte
21
Correio e SMTP
A web utiliza o HTTP, o correio utiliza o SMTP (Simple Mail Transfer Protocol) – Protocolos de aplicação
Emissor- Servidor Local SMTP – Servidor remoto SMTP - Receptor
Normalmente o SMTP utiliza a porta 25, o HTTP utiliza a porta 80
22
entidade n
n-PDUs
Visão Abstrata
entidade n
23
n+1 entidade
n-SAP
n+1 entidade
n-SAP
n entidade n entidade
n-SDU
n-SDU
n-SDU
H
H n-SDU
n-PDU
Visão em camadas de forma geral
24
n-SDU
n-PDU n-PDU n-PDU
n-SDU
n-PDU n-PDU n-PDU
Segmentação Remontagem
n-PDU
n-SDU
n-PDU
Bloqueando Sem bloqueio
n-SDU n-SDU n-SDU n-SDU n-SDU
(a)
(b)
Unidades de Dados nas diferentes camadas
25
Application Layer
Presentation Layer
Session Layer
Transport Layer
Network Layer
Data Link Layer
Physical Layer
Application Layer
Presentation Layer
Session Layer
Transport Layer
Network Layer
Data Link Layer
Physical Layer
Network Layer
Sinais Elétricos ou ópticos
Aplicação A Aplicação B
Data Link Layer
Physical Layer
Network Layer
Data Link Layer
Physical Layer
Rede de Comunicações
Modelo OSI de 7 camadas
26
C PS
PS
C
PS PS
C
C
C
PS = comutador de pacotes
C = computer
Rede de Comutação de Pacotes
Rede Comutada
27
28
G
G
G
G G
net 1
net 2
net 3
net 4
net 5
G = gateway/router
G
Internetwork
29
Application Layer
Presentation Layer
Session Layer
Transport Layer
Network Layer
Data Link Layer
Physical Layer
Application Layer
Presentation Layer
Session Layer
Transport Layer
Network Layer
Data Link Layer
Physical Layer
Application A Application B data
data
data
data
data
data
data
ah
ph
sh
th
nh
dh
bits
dt
Cabeçalhos e Trailers
30
Application Layer
Transport Layer
Internet Layer
Network Interface
Application Layer
Transport Layer
Internet Layer
Network Interface
(a) (b)
Arquitetura TCP/IP
A Origem do TCP/IP 1957: Rússia lança o Sputnik EEUU se preocupam ante a possibilidade de um
ataque nuclear Nos 60s Paul Baran propõe a transmissão por
comutação de pacotes em vez da de circuitos. Metade dos 60s: O Pentagono concorda com
uma rede de pacotes e da fundos para o ARPA.
31
Implementação Surge a ARPANET
Computadores de baixa capacidade, sem disco rigido local, dependentes dos grandes computadores “mainframes”
Começa com 12 computadores em 1969 Mais de 30 computadores em 1972 A pesquisa propõe o protocolo TCP/IP em
1974 É integrado no SO Berkeley UNIX, sem custo Os grupos de pesquisa desenvolvem outros
protocolos : e-mail, notícias Em 1979 os grupos de pesquisa formam o
Internet Control and Configuration Board
32
Mais história 1980: MILNET nace da ARPAnet CSNET
Conecta pesquisadores que não fazem parte do grupo ARPA
Funciona com linhas discadas
1984 NSF (National Science Foundation) O primeiro uso puro do TCP/IP , com 56kbps. São conectadas 20 redes regionais ao resto das redes
1990 ANS (MERIT,MCI,IBM) adquirem NSFnet
33
34
Application
Transport
Internet Network Interface
Application
Transport
Internet Network Interface
Internet Network Interface
Network 1 Network 2
Máquina A Máquina B
Roteador/Gateway
Camada de IP e interface de Rede
35
HTTP SMTP RTP
TCP UDP
IP
Network
Interface 1
Network
Interface 3 Network
Interface 2
DNS
Grafo de relação dos Protocolos
36
Net Interface
IP
TCP
HTTP
Net Interface
IP
Net Interface
IP
TCP
HTTP
Ethernet PPP
Router
router
(1,1)
s
(1,2)
w
(2,1)
(1,3) r (2,2)
PPP
Ethernet
(a)
(b)
Server PC
37
IP Header
O Cabeçalho contém endereços físicos de origem e destino e o
tipo de protocolo
Frame Check
Sequence
Ethernet
Header
Datagrama IP na Ethernet
38
Requisição HTTP
TCP Header
Cabeçalho contém portas de origem e destino
Cabeçalho contém endereços IP de origem e destino e tipo do protocolo
de transporte
IP Header
O Cabeçalho contém endereço origem e
destino físicios Frame Check
Sequence
Ethernet Header
39
Aplicação 1
Socket
socket interface
user
kernel
Aplicação 2
user
kernel
Protocolos de comunicação
Protocolos de comunicação
Rede de Comunicação
Socket
socket interface
40
socket() bind()
listen()
read()
close()
socket() connect()
read()
write()
close()
Bloqueia até que o servidor receba pedido de conexão do cliente
data data
Server
Client accept()
write()
Negociação conexão
41
socket()
bind()
sendto()
close()
socket()
bind()
recvfrom()
sendto()
close()
Bloqueia até que Servidor recebe dados do cliente data
data
Server
Client
recvfrom()
42
User Interface
User PI
User DTP
PI = Protocol interpreter
DTP = Data transfer process
User FTP
Server PI
Server DTP
Server FTP
Control
Connection
Data
Connection