comunicação na internet - fcuppbrandao/aulas/0910/telemed/slides/redes-2.pdf · telemedicina e...

46
Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 1 Comunicação na Internet Telemedicina e e-Saúde 2009/10 Pedro Brandão Referências Estes slides são baseados nos slides de TeleMedicina e e-Saúde 08/09 do Prof. Rui Prior Por sua vez ele baseou-se nos slides fornecidos com o livro “Computer Networking: A Top Down Approach 4th edition. Jim Kurose, Keith Ross Addison-Wesley, April 2007” Telemed 09/10 - Com. na Internet - pbrandao 2

Upload: doanminh

Post on 09-Nov-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 1

Comunicação na Internet

Telemedicina e e-Saúde

2009/10

Pedro Brandão

Referências

Estes slides são baseados nos slides de TeleMedicina e e-Saúde 08/09 do Prof. Rui Prior

Por sua vez ele baseou-se nos slides fornecidos com o livro “ComputerNetworking: A Top Down Approach 4th edition. Jim Kurose, Keith RossAddison-Wesley, April 2007”

Telemed 09/10 - Com. na Internet - pbrandao 2

Page 2: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 2

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 3

Pilha protocolar da Internet(revisão) aplicação: aplicações em rede

transporte: transferência de dados entre processos

rede: encaminhamento dos datagramas entre a origem e o destino

ligação lógica: transferência de dados entre elementos de rede adjacentes

ligação física: bits no “cabo”

Telemed 09/10 - Com. na Internet - pbrandao 4

Física

Lógica

Rede

Transporte

Aplicação

Ethernet, 802.11, etc

Ethernet, 802.11 (WiFi), etc

IP, ICMP, IGMP, etc

TCP, UDP, etc

FTP, SMTP, HTTP, etc

Exemplos

Page 3: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 3

Protocolo de aplicação define

Tipos de mensagens trocadaso e.g., pedido, resposta

Sintaxe das mensagenso que campos contêm e como se

separam os campos

Semântica das mensagenso significado da informação

contida nos diferentes campos

Regras de como e quando devem os processos responder às mensagens

Protocolos abertos:

possibilitam interope-ração entre sistemas

e.g., HTTP, SMTP

definidos em RFCs

Protocolos fechados:

só tem aceso a eles quem o dententor dos direitos decidir

e.g., Skype

Telemed 09/10 - Com. na Internet - pbrandao2-5

Arquitecturas aplicacionais

Cliente-servidor

Peer-to-peer (P2P)

Híbridas de cliente-servidor e P2P

Telemed 09/10 - Com. na Internet - pbrandao 2-6

Page 4: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 4

Cliente – Servidor

servidor: o sempre ligadoo endereço IP estático

cliente:o comunica com o servidoro não precisa de estar

sempre ligadoo pode ter endereço IP

dinâmicoo não comunica

directamente com outros clientes

Telemed 09/10 - Com. na Internet - pbrandao 7

cliente/servidor

Peer-to-peer Pura

ausência de servidores

terminais comunicam directamente entre si

os pares podem não estar sempre ligados e mudar de endereço IP

Telemed 09/10 - Com. na Internet - pbrandao 8

peer-to-peer

Muito escalável, mas difícil de gerir…

Page 5: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 5

0

0,5

1

1,5

2

2,5

3

3,5

0 5 10 15 20 25 30 35

Te

mp

o d

e d

istr

ibuiç

ão d

o fic

he

iro

Número de nós que pretendem o ficheiro

P2P

Client-Server

Comparação de arquitecturas:Cliente-Servidor vs. Peer-to-Peer

Telemed 09/10 - Com. na Internet - pbrandao 9

Arquitectura Híbrida

Exemplo: Instant messaging (MSN, ...)

omensagens de texto enviadas directamente (P2P)

o serviço central de detecção de presença e localização

• o utilizador regista o seu endereço IP no servidor central quando se liga

• o utilizador contacta o servidor central para descobrir os endereços IP dos amigos

Telemed 09/10 - Com. na Internet - pbrandao 10

Page 6: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 6

Comunicação entre processos

Processo: instância dum programa a correr numa máquina

processos em máquinas diferentes comunicam através da troca de mensagens

Telemed 09/10 - Com. na Internet - pbrandao

As aplicações P2P funcionam simultaneamente como clientes e servidores

Cliente: processo que inicia activamente a comunicação

Servidor: processo que espera passivamente ser contactado

11

Endereçamento de processos para poder receber

mensagens, um processodeve ter um identificador(endereço)

cada terminal tem um endereço IP de 32 bits

Questão: será o endereço IP do terminal suficiente paraidentificar de forma unívocao processo?o Resposta: não, porque há

múltiplos processos a correr no mesmo terminal

o identificador inclui tanto o endereço IP como o número daporta associado ao processo no terminal

Exemplos de portas:

Servidor web: 80 Servidor de email: 25

para enviar um pedido HTTP aoservidor web www.dcc.fc.up.pt:

Endereço IP:193.136.39.12

Porta: 80

Telemed 09/10 - Com. na Internet - pbrandao 12

Page 7: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 7

Endereçamento de processos

para poder receber mensagens, um processo deve ter um identificador(endereço)

cada terminal tem um endereço IP de 32 bits

Q?: será o endereço IP do terminal suficiente para identificar de forma unívoca o processo?o não, porque há múltiplos

processos a correr no mesmo terminal

o identificador inclui tanto o endereço IP como o número da portaassociado ao processo no terminal

Exemplos de portas:o Servidor web: 80o Servidor de email: 25

para enviar um pedido HTTP ao servidor webwww.dcc.fc.up.pt:o Endereço IP: 193.136.39.12o Porta: 80

Telemed 09/10 - Com. na Internet - pbrandao 13

Serviço TCP: orientado às conexões: exige o

estabelecimento prévio de conexão entre emissor e receptor

transporte fiável entre os processos emissor e receptor

controlo de fluxo: o emissor não envia mais rápido do que o receptor consegue processar

controlo de congestionamento:redução de débito quando a rede está sobrecarregada

não tem garantias de atraso máximo nem de débito mínimo

Serviço UDP: transporte não fiável entre os

processos emissor e receptor

delineação de mensagens: um datagrama UDP corresponde a uma mensagem

não tem estabelecimento prévio de conexões, fiabilidade, controlo de fluxo, controlo de congestionamento, garantias de atraso máximo ou de débito mínimoo Nem todas as aplicações necessitam

de tudo isto...

Telemed 09/10 - Com. na Internet - pbrandao

Serviços de transporte usados pelas aplicações na Internet

14

Page 8: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 8

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 15

HTTP: hypertext transfer protocol

Protocolo de camada de aplicação na web

modelo cliente/servidor

o cliente: browser que pede, recebe e mostra os objectos ao utilizador

o servidor: envia os objectos em resposta aos pedidos do browser

PC comFirefox

ServidorApache

Mac comSafari

Telemed 09/10 - Com. na Internet - pbrandao

HTTP — Panorama geral

16

Page 9: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 9

Protocolos com manutenção de estado são complexos!

memória para estado se o servidor ou o cliente

falham, as suas visões do estado podem ficar incon-sistentes e ter que ser ressincronizadas

aparte

HTTP — Panorama geral (cont.)

Usa o TCP: o cliente inicia a conexão

TCP para a porta 80 do servidor

o servidor aceita a conexão TCP do cliente

são trocadas mensagens HTTP (camada de aplicação) entre o browser(cliente HTTP) e o servidor web (servidor HTTP)

a conexão TCP é fechada

Sem estado o servidor não mantém

qualquer informação (estado) sobre os pedidos anteriores do cliente

Telemed 09/10 - Com. na Internet - pbrandao 17

Mensagem HTTP de pedido

dois tipos de mensagens HTTP: pedido e resposta

Pedido HTTP:o Texto simples (formato humanamente legível)

GET /somedir/page.html HTTP/1.1

Host: www.someschool.edu

User-agent: Mozilla/4.0

Connection: close

Accept-language: pt

linha de pedido

cabeçalhos

Linha vazia indica fim da mensagem

Telemed 09/10 - Com. na Internet - pbrandao

(mudança de linha extra)

18

Page 10: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 10

HTTP/1.1 200 OK

Connection: close

Date: Thu, 06 Aug 1998 12:00:15 GMT

Server: Apache/1.3.0 (Unix)

Last-Modified: Mon, 22 Jun 1998 ...

Content-Length: 6821

Content-Type: text/html

linha de estado(código de estadoe correspondente

descrição)

cabeçalhos

linha vazia

dados (e.g., o ficheiro HTML

pedido)

Telemed 09/10 - Com. na Internet - pbrandao

dados dados dados dados...

Mensagem HTTP de resposta

19

Códigos de estado nas respostas HTTP

Enviados na primeira linha da resposta do servidorAlguns códigos:200 OK

o sucesso, o obejcto pedido vai mais abaixo na mensagem

301 Moved Permanently

o o objecto foi mudado para outro URL, especificado mais abaixo no cabeçalho “Location:”

400 Bad Request

o o servidor não entendeu o pedido

404 Not Found

o o recurso pedido não existe no servidor

505 HTTP Version Not Supported

Telemed 09/10 - Com. na Internet - pbrandao 20

Page 11: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 11

Experimentar o HTTP à mão

1. Fazer telnet para um servidor web

Abre conexão TCP para a porta 80(porta HTTP padrão) no servidorwww.dcc.fc.up.pt.Tudo o que se escrever será enviadopara a porta 80 do www.dcc.fc.up.pt

telnet www.dcc.fc.up.pt 80

2. Escrever o pedido HTTP

GET /~pbrandao/index.html HTTP/1.1

Host: www.dcc.fc.up.pt

Ao escrever isto (carregar 2xno enter), vai-se enviar esteum pedido GET (básico mascompleto) ao servidor HTTP

3. Observar a mensagem de resposta devolvida peloservidor HTTP

Telemed 09/10 - Com. na Internet - pbrandao 21

Web caches (proxy server)

utilizador configura browser para usar o proxy

o browser envia todos os pedidos HTTP ao proxy

objecto está na cache: proxy devolve-o directamente

caso contrário, pede objecto ao servidor original, devolve-o ao browser e guarda cópia local

Telemed 09/10 - Com. na Internet - pbrandao 22

cliente

Proxy

clienteservidororiginal

servidororiginal

Objectivo: satisfazer pedidos dos clientes sem recorrer ao servidor original (maior rapideze poupança de recursos de rede)

Page 12: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 12

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 23

Correio Electrónico (e-mail)

Agente de utilizador programa usado para ler e

escrever e-mail

Servidores de E-mail caixa de correio contém

mensagens recebidas fila de mensagens para

mensagens a enviar protocolo SMTP para enviar as

mensagenso “cliente”: servidor que

envia a mensagemo “servidor”: servidor que

recebe a mensagem

Telemed 09/10 - Com. na Internet - pbrandao

servidorde e-mail

SMTP

SMTP

SMTP

fila de men-sagens a enviar

caixa de correiode um utilizador

servidorde e-mail

servidorde e-mail

agentede util.

agentede util.

agentede util.

agentede util.

agentede util.

agentede util.

24

Page 13: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 13

Cenário: Alice envia mensagem ao Bob

1) No UA, a Alice escreve o texto da mensagem e o endereço do destinatário [email protected]

2) O UA da Alice envia a mensagem para o servidor dela; a mensagem é colocada na fila de saída

3) O “lado cliente” do SMTP da Alice abre uma conexão para o servidor de e-mail do Bob

4) A mensagem é enviada através dessa conexão TCP

5) O servidor de e-mail do Bob põe a mensagem na caixa de correio dele

6) Posteriormente, o Bob usa o seu UA para ler a mensagem

Telemed 09/10 - Com. na Internet - pbrandao

servidorde e-mail

servidorde e-mail

1

2 3 4 56

agentede util.

agentede util.

UA – User Agent

25

Exemplo de comunicação SMTPS: 220 hamburger.edu

C: HELO crepes.fr

S: 250 Hello crepes.fr, pleased to meet you

C: MAIL FROM: <[email protected]>

S: 250 [email protected]... Sender ok

C: RCPT TO: <[email protected]>

S: 250 [email protected] ... Recipient ok

C: DATA

S: 354 Enter mail, end with "." on a line by itself

C: Do you like ketchup?

C: How about pickles?

C: .

S: 250 Message accepted for delivery

C: QUIT

S: 221 hamburger.edu closing connection

Telemed 09/10 - Com. na Internet - pbrandao 26

Page 14: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 14

Protocolos de acesso ao e-mail

SMTP: entrega mensagens no servidor do destinatário

Protocolo de acesso: buscar e-mail à caixa de correio no servidor

o POP3: Post Office Protocol, versão 3

• download de mensagens

o IMAP: Internet Mail Access Protocol

• mais complexo

• manipulação de mensagens armazenadas no servidor

o HTTP: Gmail, Hotmail, etc.

servidor de emaildo emissor

SMTP SMTP protocolode acesso

servidor de emaildo destinatário

Telemed 09/10 - Com. na Internet - pbrandao 27

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 28

Page 15: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 15

DNS: Domain Name System

Pessoas: múltiplos identificadoreso Nos BI, NIF, passaporte

Máquinas na Internet:o endereço IP (32 bits), usado

no encaminhamento de datagramas (e.g., 194.117.24.35)

o nome, usado por humanos (e.g. www.google.pt)

Q: como se faz a tradução entre nome e endereço IP?

Domain Name System: base de dados distribuída

implementada como uma hierarquia de servidores de nomes

os protocolos de aplicação, para comunicar, resolvem os nomes (tradução nome/endereço)

o serviço fundamental na Internet, implementado como protocolo de aplicação

o complexidade nas extremi-dades da rede

Telemed 09/10 - Com. na Internet - pbrandao 29

Base de Dados Distribuída e HierárquicaO cliente precisa de obter o IP de www.amazon.com. 1ª aproximação: pergunta a um servidor de raiz, que lhe indica os servidores DNS de

com pergunta a um servidor de com, que lhe indica os servidores DNS de

amazon.com pergunta a um servidor de amazon.com, que lhe responde com o

endereço IP de www.amazon.com

Telemed 09/10 - Com. na Internet - pbrandao 30

Servidores DNS de raiz

Servidores DNS de com

Serv. DNS

cmu.edu

Serv. DNS

mit.eduServ. DNS

google.com

Serv. DNS

amazon.com

Serv. DNS

pbs.org

Servidores DNS de org Servidores DNS de edu

Page 16: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 16

máquina que faz o pedidokhedo.dcc.fc.up.pt

www.mit.edu

servidor DNS de raiz

servidor DNS localdns.dcc.fc.up.pt

1

23

4

5

6

servidor DNS com autoridadens.mit.edu

78

servidor DNS TLD

Exemplo deresolução de nome

Máquina em dcc.fc.up.ptquer o endereço de www.mit.edu

Faz pergunta (recursiva) ao servidor DNS local

Este faz perguntas (iterativas) descendo na hierarquia

O servidor contactado dá referência doutro(s) servidor(es) a contactar

Telemed 09/10 - Com. na Internet - pbrandao 31

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 32

Page 17: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 17

Serviços e protocolos de transporte

fornecer um canal lógico de comunicação entre processos a correr em máquinas diferentes

protocolo de transporte a correr nos terminaiso emissor: partir

mensagens de aplicação em segmentos, que passa à camada de rede

o receptor: reconstruir mensagens a partir dos segmentos e passá-las à camada de aplicação

Telemed 09/10 - Com. na Internet - pbrandao

applicaçãotransporte

redelig. lógicalig. física

applicaçãotransporte

redelig. lógicalig. física

33

Protocolos de transporte na Internet

entrega fiável e ordenada: TCPo estabelecimento de conexões

o controlo de congestionamento

o controlo de fluxo

entrega não fiável e sem garantia de ordem: UDPo extensão simples do modelo

“melhor esforço” do IP

serviços indisponíveis: o garantia de atraso máximo

o garantia de débito mínimo

Telemed 09/10 - Com. na Internet - pbrandao

applicaçãotransporte

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

applicaçãotransporte

redelig. lógicalig. física

34

Page 18: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 18

Camada de transporte vs. camada de rede camada de rede:

comunicação lógica entre máquinas

camada de transporte:comunicação lógica entre processoso usa o serviço da camada de

rede e, sobre ele, implementa um serviço de valor acrescentado

Analogia:

correio entre empresas

processos = funcionários

mensagens = cartas

máquinas = edifícios

protocolo de rede = serviço dos CTT

protocolo de transporte = encarregados pela distribuição interna do correio

Telemed 09/10 - Com. na Internet - pbrandao 35

Multiplexagem/desmultiplexagem

applicação

transporte

rede

lig. lógica

lig. física

P1 applicação

transporte

rede

lig. lógica

lig. física

applicação

transporte

rede

lig. lógica

lig. física

P2P3 P4P1

máquina 1 máquina 2 máquina 3

= processo= socket

entrega dos segmentos rece-bidos ao processo correcto

Desmultiplex. no receptor:recolher dados de múltiplosprocessos e adicionar cabe-çalhos (que depois são usadospara desmultiplexar)

Multiplex. no emissor:

Telemed 09/10 - Com. na Internet - pbrandao 36

Page 19: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 19

Como funciona a desmultiplexagem?

a máquina recebe datagramas IP

o cada datagrama contém endereços IP de origem e de destino

o cada datagrama transporta um segmento da camada de transporte

o cada segmento tem indicação das portas de origem e de destino

a máquina usa os endereços IP e as portas de origem e de destino para enviar o segmento para o processo apropriado

Telemed 09/10 - Com. na Internet - pbrandao

porta de orig. porta de dest.

32 bits

dados daaplicação

(mensagem)

outros camposdo cabeçalho

formato dos segmentosTCP/UDP

37

Controlo de erros: soma de controlo

Emissor:

trata o conteúdo do segmento como uma sequência de inteiros de 16 bits

soma de controlo: adição dos inteiros que constituem o segmento (colocando zeros no próprio campo)

coloca o valor calculado no respectivo campo do cabeçalho

Receptor:

calcula soma de controlo do segmento recebido

compara o valor calculado com o recebido:

o diferentes – erro detectado

o iguais – não foram detectados erros

Telemed 09/10 - Com. na Internet - pbrandao

Objectivo: detectar “erros” (e.g., bits invertidos) no segmento recebido

Pode haver erros não detectados, mas a

probabilidade é muito baixa…

38

Page 20: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 20

UDP: User Datagram Protocol [RFC 768]

protocolo de transporte extremamente simples

serviço “melhor esforço”; os segmentos UDP podem:o perder-seo ser entregues à aplicação

fora de ordem sem conexões:

o cada segmento UDP é tratado de forma independente

Telemed 09/10 - Com. na Internet - pbrandao

Porque existe o UDP? sem conexões — poupa o

atraso de as estabelecer

simples: sem manutenção de estado no emissor e no receptor

cabeçalho pequeno

sem controlo de congestionamento: aplicações UDP podem enviar dados à cadência que necessitem

39

frequentemente usado em aplicações multimédiao tolerantes a perdaso sensíveis ao débito ou atraso

outros usos para o UDPo DNS

transferência fiável sobre UDPo a fiabilidade tem que ser

implementada na camada de aplicação

o recuperação de erros específica da aplicação!

Telemed 09/10 - Com. na Internet - pbrandao

porta de orig. porta de dest.

32 bits

tamanho soma de controlo

dados daaplicação

(mensagem)

formato dum segmento UDP

Mais sobre o UDP

40

Page 21: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 21

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 41

Telemed 09/10 - Com. na Internet - pbrandao

Princípios da transferência fiável

Processoemissor

Processoreceptor

Canal fiável

dados dados

a) serviço fornecido

Canal não-fiável

Protocolo de transferência de

dados fiável (emissor)

Protocolo de transf. de dados fiável

(receptor)

dados dados

pacote pacote

Processoemissor

dados

Processoreceptor

dados

b) Implementação

Cam

ada

aplic

ação

Cam

ada

tran

spo

rte

42

Page 22: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 22

Transferência fiável: problemas e soluções Pacotes podem perder-se Receptor confirma (ACK) a

recepção de cada segmento Se não receber confirmação

num dado tempo, o emissor retransmite o segmento

Pacotes podem conter erros Detectados através de

somas de controlo Pacotes com erros

ignorados (tratamento igual ao dos pacotes perdidos)

Recepção de duplicados (gerados pela rede ou retransmissões por perda de ACKs)

Segmentos são numerados ACK identifica o número do

último segmento recebido Também resolve o

problema do reordenamento

Telemed 09/10 - Com. na Internet - pbrandao 43

O emissor envia um pacotee espera pela resposta doreceptor

stop and wait

stop-and-wait: ausência de perdas

Telemed 09/10 - Com. na Internet - pbrandao 44

emissor receptor

envia pkt0 pkt0

ACK0pkt1

ACK1

recebe ACK0, envia pkt1

recebe ACK1, envia pkt2 pkt2

ACK2

...

recebe pkt0, envia ACK0

recebe pkt1, envia ACK1

recebe pkt2, envia ACK2

Page 23: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 23

stop-and-wait: perda dum pacote

Telemed 09/10 - Com. na Internet - pbrandao 45

emissor receptor

envia pkt0 pkt0

ACK0pkt1recebe ACK0, envia pkt1

recebe ACK1, envia pkt2

recebe pkt0, envia ACK0

recebe pkt1, envia ACK1

recebe pkt2, envia ACK2

pkt1

ACK1pkt2

ACK2

...

Xperdido

alarme, reenvia pkt1

stop-and-wait: perda dum ACK

Telemed 09/10 - Com. na Internet - pbrandao 46

emissor receptor

envia pkt0 pkt0

ACK0

pkt1

ACK1

recebe ACK0, envia pkt1

recebe ACK1, envia pkt2 pkt2

ACK2

...

recebe pkt0, envia ACK0

recebe pkt1, envia ACK1

recebe pkt2, envia ACK2

pkt1

ACK1X

perdido

recebe pkt1, detecta dup., envia ACK1alarme, reenvia pkt1

Page 24: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 24

stop-and-wait: alarme prematuro

Telemed 09/10 - Com. na Internet - pbrandao 47

emissor receptor

envia pkt0 pkt0

ACK0recebe ACK0, envia pkt1

recebe ACK1, envia pkt2

recebe pkt0, envia ACK0

recebe pkt1, detecta dup., envia ACK1

recebe pkt2, envia ACK2

pkt1

ACK2

alarme, reenvia pkt1

pkt1

ACK1

recebe pkt1, envia ACK1

ACK1

recebe ACK1 (dup.), ignora-o

recebe ACK2, envia pkt3 pkt3

ACK3

...

recebe pkt3, envia ACK3

ACK1pkt2ACK1

transmissão do 1º bit do pacote, t = 0

emissor receptor

RTT

trans. do último bit do pacote, t = L / R

chegada do primeiro bitchegada do último, envio do ACK

chegada do ACK, envio do

pacote seguinte, t = RTT + L / R

Telemed 09/10 - Com. na Internet - pbrandao

0.00027008.30

008.0

ms

ms

RLRTT

RLUemissor

Operação do stop-and-wait

48

Page 25: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 25

stop-and-wait funciona, mas com desempenho péssimo

ex.: ligação de 1 Gbps com 15 ms de atraso de propagação e pacotes de 8000 bits:

Telemed 09/10 - Com. na Internet - pbrandao

Uemissor: utilização – fracção do tempo em que o emissor efectivamente está a transmitir

1KB pacote a cada 30 ms débito 33kB/s quando R= 1 Gbps o protocolo de rede limita o uso dos recursos físicos!!!

s 8bps10

bits80009

R

Ldtrans

Desempenho do stop-and-wait

0.00027008.30

008.0

ms

ms

RLRTT

RLUemissor

49

Utilização triplicou!

transmissão do 1º bit do pacote, t = 0

emissor receptor

RTT

trans. do último bit do pacote, t = L / R

chegada do 1º bit do 1º pacoteúltimo bit do 1º pacote, envio do ACK

chegada do ACK, envio do

pacote seguinte, t = RTT + L / R

último bit do 2º pacote, envio do ACKúltimo bit do 3º pacote, envio do ACK

Telemed 09/10 - Com. na Internet - pbrandao

Pipelining: maior utilização

0.0008008.30

008.033

ms

ms

RLRTT

RLUemissor

50

Page 26: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 26

Protocolos com PipeliningGo-back-N: Emissor pode ter até N

pacotes em trânsito (sem receber ACK)

Receptor envia ACKscumulativoso Não envia ACK se houver

um “buraco”

Emissor tem tempori-zador para o pacote mais antigo ainda não confirmadoo Se expirar, retransmite esse

e todos os subsequentes

Selective Repeat:

Emissor pode ser até N pacotes em trânsito (sem receber ACK)

Receptor confirma pa-cotes individualmente

Emissor mantém um temporizador por cada pacote não confirmadoo Se expirar, retransmite

apenas esse pacote

Telemed 09/10 - Com. na Internet - pbrandao 51

Pipelining: Go-Back-NEmissor:

número de sequência no cabeçalho

“janela” de até N pacotes consecutivos não confirmados

ACK(n): confirma a recepção de todos os pacotes até ao n (inclusive) —confirmação cumulativa emissor pode receber ACKs duplicados

alarme(n): retransmite pacote n e todos os enviados posteriormente a recepção de um ACK novo (não duplicado) faz reiniciar o temporizador

base próx. nº de seq.

janela detamanho N

já confirmados

enviados mas nãoconfirmados

disponíveis masnão enviados

indisponíveis

Telemed 09/10 - Com. na Internet - pbrandao 52

Page 27: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 27

Go-Back-N em acçãoemissor receptor

envia pkt0

envia pkt2

recebe pkt0, envia ACK0

recebe pkt1, envia ACK1X

envia pkt1

envia pkt3(espera)

recebe ACK 0, envia pkt4

recebe ACK1, envia pkt5

recebe pkt3, ignora-o, envia ACK1

reenvia pkt2

reenvia pkt3

reenvia pkt4

reenvia pkt5

recebe pkt4, ignora-o, envia ACK1

recebe pkt5, ignora-o, envia ACK1

alarmerecebe pkt2, envia ACK2

recebe pkt3, envia ACK3

recebe pkt4, envia ACK4

recebe pkt5, envia ACK5

Demonstração GBN

Telemed 09/10 - Com. na Internet - pbrandao 53

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 54

Page 28: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 28

orientado a conexões:o estabelecimento da

conexão inicializa estado do emissor e receptor antes da troca de dados

controlo de fluxo:o emissor não sobrecarrega

o receptor

controlo de congestionamento:o emissor não sobrecarrega

a rede

ponto-a-ponto:o um emissor, um receptor

sequência de bytes fiável:o sem delimitação de mensagens

pipelined:o mecanismos de controlo de

fluxo e congestionamento determinam o tamanho da janela

conexão bidireccional:o fluxo de dados nos dois

sentidos na mesma conexão

Telemed 09/10 - Com. na Internet - pbrandao

TCP: Transmission Control Protocol

55

TCP: Estabelecimento de conexão

É necessária a troca de 3 segmentos TCP para estabelecer uma conexão

Flags SYN e SYN+ACK

Estabelecimento dos números de sequência iniciais

Telemed 09/10 - Com. na Internet - pbrandao 56

Page 29: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 29

TCP: Terminação de conexão

É necessária a troca de 4 segmentos TCP para fechar uma conexão

Fluxo bidireccional 2 operações de fecho (para cada sentido)

Telemed 09/10 - Com. na Internet - pbrandao 57

TCP: nos de sequência e ACKs

Número de sequência:número do primeiro

byte de dados do segmento

ACK:número do próximo

byte esperado do outro lado

ACKs cumulativos

Telemed 09/10 - Com. na Internet - pbrandao

Terminal A Terminal B

Utilizadorescreve ‘C’

terminalconfirmarecepção

do ‘C’ ecoado

terminalconfirmarecepçãode ‘C’ eecoa-o

tempoexemplo com terminal remoto

58

Page 30: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 30

TCP: cenários de retransmissão

Terminal A

tempoalarme prematuro

Terminal BTerminal A

perda

perda de confirmação

Terminal B

Xalar

me

tempo(S

eq=9

2 al

arm

e)Se

q=9

2 a

larm

e

SendBase= 100

SendBase = 120

SendBase = 120

SendBase = 100

Telemed 09/10 - Com. na Internet - pbrandao 59

TCP: cenários de retransmissão

Terminal A

perda

confirmação cumulativa

Terminal B

X(ala

rme)

tempo

SendBase = 120

Telemed 09/10 - Com. na Internet - pbrandao 60

Page 31: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 31

Controlo de fluxo no TCP

Dados recebidos são armazenados num espaço próprio (buffer) até serem consumidos pela aplicação

Aplicação pode consumi-los lentamente

adaptar a taxa de envio à de consumo por parte da aplicação

para evitar extravasar o buffer do receptor

controlo de fluxo

dados

do IP

aplicação

(processo)espaço

livre

dados rece-bidos e ain-da não con-

sumidos

janela do receptor

buffer do receptor

Controlo de fluxo no TCP Receptor anuncia o espaço livre

de que dispõe (janela de recepção)

Emissor limita a quantidade de dados em trânsito a essa janela

Telemed 09/10 - Com. na Internet - pbrandao 61

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 62

Page 32: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 32

Congestionamentolin débito a que a aplicação envia os dados

(sem cabeçalhos nem retransmissões)lout goodput

o Os dados que a aplicação recebe por unidade de tempo (não contanto com cabeçalhos nem retransmissões)

Telemed 09/10 - Com. na Internet - pbrandao 63

Terminal A

lin : dados originais

Terminal B

lout

dois emissores, dois receptores

um router, fila com capacidade ilimitada

sem retransmissões

atrasos enormes por causa do congestionamento

capacidade máxima atingível

espaço ilimitado na fila de espera

Terminal A

lin : dados originais

Terminal B

lout

atraso

Telemed 09/10 - Com. na Internet - pbrandao

Causas e consequências do congestionamento: cenário 1

64

Page 33: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 33

Causas e consequências do congestionamento: cenário 2 um router, fila de capacidade limitada

retransmissão pelo emissor de pacotes perdidos

Telemed 09/10 - Com. na Internet - pbrandao

espaço limitadona fila de espera

Terminal A lin : dados originais

Terminal B

lout

l'in : dados originaismais retransmissões

65

Causas e consequências do congestionamento: cenário 2 Omnisciente: lin = lout

o emissor “adivinha” se o router tem espaço na fila de espera e só transmite se tiver (A)

retransmissões “perfeitas” (apenas quando há perdas): l‘in = lout

o emissor só retransmite pacotes que realmente se perderam (aprox. temporizador muito longo) (B)

retransmissões desnecessárias de pacotes atrasados tornam, em relação ao caso “perfeito”, l‘in maior para o mesmo lout

o Ex.: cada pacote é transmitido, em média, duas vezes (C)

Telemed 09/10 - Com. na Internet - pbrandao 66

R/2

R/2lin

lout

R/2

R/2lin

lout

R/2

R/2lin

lout

R/4

R/3

(A) (B) (C)

Page 34: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 34

Q: o que acontece quando

lin e l’in aumentam?

Causas e consequências do congestionamento: cenário 3 quatro emissors

caminhos com + que 1 salto

retransmissões por tem-porizador

espaço limitado nafila de espera

Terminal Alin : dados originais

Terminal B lout

l'in : dados originaismais retransmissões

Telemed 09/10 - Com. na Internet - pbrandao 67

Causas e consequências do congestionamento: cenário 3

Mais uma consequência do congestionamento: Quando se perde um pacote, a capacidade utilizada a

montante para o transmitir foi desperdiçada!

Telemed 09/10 - Com. na Internet - pbrandao 68

Page 35: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 35

Controlo de Congestionamento

Sintomas de congestionamento: Q?

oatrasos elevados (filas de espera nos routers)

opacotes perdidos (extravasamento das filas)

Controlo de congestionamento: adaptar a taxa de emissão à capacidade disponível na rede

oNão tem nada que ver com o controlo de fluxo!

Telemed 09/10 - Com. na Internet - pbrandao 69

Controlo de Congestionamento no TCP: additive increase, multiplicative decrease (AIMD) Princípio: aumentar a taxa de transmissão gradualmente

até à ocorrência de perdas “apalpar terreno”o additive increase: aumentar a janela de congestionamento

(CongWin) em 1 MSS* por RTT até ocorrer perdao multiplicative decrease: reduzir CongWin a metade quando

ocorre uma perda

Telemed 09/10 - Com. na Internet - pbrandao 70

8 Kbytes

16 Kbytes

24 Kbytes

time

congestion

window

tempo

janela

de c

ongestio

nam

ento

* MSS = tamanho máximo dum segmento

Page 36: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 36

Objectivo: se uma ligação de estrangulamento com capacidade R é partilhado por K sessões TCP, cada uma deve, idealmente, ter débito médio R/K

Conexão TCP 1

ligação de estrangulamentocom capacidade R

Conexão TCP 2

Equidade no TCP

Telemed 09/10 - Com. na Internet - pbrandao 71

Porque razão é o TCP justo?Duas sessões a “competir” pela capacidade da ligação: Crescimento linear nas duas conexões recta com declive 1

Decrescimento multiplicativo reduz o débito proporcionalmente

R

R

distribuição equitativa da capacidade

Débito da conexão 1

crescimento linearperda: redução das janelas a metade

crescimento linearperda: redução das janelas a metade

Telemed 09/10 - Com. na Internet - pbrandao 72

Page 37: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 37

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 73

Camada de Rede transportar segmentos da

máquina de origem para a de destino

encapsula os segmentos em datagramas no lado do emissor

no receptor, entrega segmentos à camada de transporte

protocolos da camada de rede em todos os terminais e routers

o router examina os cabeçalhos de todos os datagramas IP que o atravessam

Telemed 09/10 - Com. na Internet - pbrandao 74

aplicaçãotransporte

redelig. lógicalig. física

aplicaçãotransporte

redelig. lógicalig. física

redelig. lógicalig. física rede

lig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. física

redelig. lógicalig. físicarede

lig. lógicalig. física

Page 38: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 38

Duas funções-chave da camada de rede

reenvio: passagem dos pacotes da entrada do router para a saída adequada

encaminhamento:determinação da rota seguida pelos pacotes da origem ao destino

o algoritmos de encaminhamento

Analogia:

encaminhamento: planeamento de uma viagem da origem ao destino

reenvio: processo de passagem por um ponto de ligação (e.g., do metro para o autocarro)

Telemed 09/10 - Com. na Internet - pbrandao 75

1

23

0111

valor no cabeçalho

do pacote que chega

algoritmo de

encaminhamento

tabela local de encam.

valor no cab. lig. saída

0100

0101

0111

1001

3

2

2

1

Interacção entre encaminhamento e reenvio

Telemed 09/10 - Com. na Internet - pbrandao 76

Page 39: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 39

Encaixe do prefixo mais longo 4 mil milhões de endereços possíveis no IPv4

o Impraticável manter tabela com todos

Solução: agrupar destinos com prefixo idênticoo Usar entrada com prefixo mais longo (mais específica) de

entre as que encaixam

Telemed 09/10 - Com. na Internet - pbrandao 77

Encaixe do prefixo Interface de saída

11001000 00010111 00010 0

11001000 00010111 00011000 1

11001000 00010111 00011 2

senão (prefixo vazio) 3

Exemplos

Que interface?

Que interface?DA: 11001000 00010111 00011000 10101010

DA: 11001000 00010111 00010110 10100001

3,4 x 1038 emIPv6

A camada de rede na Internet

Telemed 09/10 - Com. na Internet - pbrandao 2-78

Funções da camada de rede nos routers e terminais:

Protocolo IP• endereçamento• formato dos datagramas• tratamento dos pacotes

Protocolo ICMP• relatórios de erro• “sinalização” entre routers

camadada de transporte: TCP, UDP

camada de ligação lógica

camada de ligação física

camadade rede

Protocolos de encaminhamento• selecção de percursos• RIP, OSPF*, BGP

tabela deencaminhamento

* Também colocado na camada lógica

Page 40: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 40

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 79

Endereçamento IP: introdução

Endereço IP: identifi-cador de 32 bits para interface de redeo os routers têm múltiplas

interfaces

o os terminais normalmente apenas uma

o um endereço IP por cada interface

Telemed 09/10 - Com. na Internet - pbrandao

223.1.1.1

223.1.1.2

223.1.1.3

223.1.1.4 223.1.2.9

223.1.2.2

223.1.2.1

223.1.3.2223.1.3.1

223.1.3.27

223.1.1.1 = 11011111 00000001 00000001 00000001

223 1 11

decimal binário

80

Page 41: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 41

Sub-redes

Endereço IP:o parte de subrede (bits mais

significativos)

o parte de nó (bits menos significativos)

O que é uma subrede?o conjunto de interfaces com a

mesma parte de subrede do endereço IP

o nós podem atingir-se fisicamente sem necessidade de intervenção de um router

Telemed 09/10 - Com. na Internet - pbrandao

223.1.1.1

223.1.1.2

223.1.1.3

223.1.1.4 223.1.2.9

223.1.2.2

223.1.2.1

223.1.3.2223.1.3.1

223.1.3.27

rede constituída por 3 sub-redes

subrede

81

Endereçamento IP: CIDR

CIDR: Classless InterDomain Routing

o parte de subrede de comprimento arbitrário

o formato: a.b.c.d/x, onde x é o nº de bits na parte de subrede

11001000 00010111 00010000 00000000

200.23.16.0/23

Telemed 09/10 - Com. na Internet - pbrandao

parte desubrede

parte donó

82

Page 42: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 42

Encaminhamento – Tabelas

Arq. de Redes - Pedro Brandão 2005/06 83

Net 1

R1

Net 2

R2

Net 3

R3

Net 4

Net 5

Destino Next Hop

Net 1 R1

Net 2 Entrega directa

Net 3 Entrega directa

Net 4 R3

Net 5 R1

14.0.0.0

R1

145.12.0.0

R2

192.170.1.0

R3

192.170.20.0

81.0.0.0

145.12.0.114.0.0.1

81.0.0.1

145.12.0.7 192.170.1.1 192.170.1.7 192.170.20.1

Destino Máscara Next Hop

14.0.0.0 255.0.0.0 145.12.0.1

145.12.0.0 255.255.0.0 Entrega directa

192.170.1.0 255.255.255.0 Entrega directa

192.170.20.0 255.255.255.0 192.170.1.7

81.0.0.0 255.0.0.0 145.12.0.1

Sumário

Camada de aplicaçãoo Princípios das aplicações

em redeo Web e HTTPo Correio electrónicoo Serviço de nomes

Camada de transporteo Serviços da camada de

transporteo Transferência fiávelo TCPo Controlo de

congestionamento

Camada de redeo Objectivo e funçõeso Internet Protocol (IP)o NAT

Telemed 09/10 - Com. na Internet - pbrandao 84

Page 43: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 43

NAT: Motivação

Escassez de endereços IPs

o Pequenas / médias empresas com ligação ADSL, cabo querem IPs para as suas máquinas (também utilizadores domésticos).

o Cada um pode ter mais do que uma máquina por trás.

Telemed 09/10 - Com. na Internet - pbrandao 85

Utilização Endereços privados não são permitidos na

internet. Routers não fazem encaminhamento destes IPso 10.0.0.0 – 10.255.255.255 /8o 172.16.0.0 – 172.31.255.255 /12o 192.168.0.0 - 192.168.255.255 /24

Telemed 09/10 - Com. na Internet - pbrandao 86

192.168.100.0/24 192.168.100.0/24

195.170.3.45193.34.56.200

internet

Datagramas com origem (ou destino) nesta rede têm o

endereço de origem (destino) na gama 192.168.100.0/24 Todos os datagrams que

saem da rede local têm o mesmo endereço IP de origem: 193.34.56.200

Page 44: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 44

Vantagens

Utilização de endereços privados nas Intranets

Possibilidade de fusão entre redes com endereços duplicados

Podem mudar-se os endereços na rede local sem necessidade de notificar o mundo exterior

Facilidade de mudança de ISP

Os nós na rede local não são directamente endereçáveis a partir do exterior, o que pode ser uma vantagem do ponto de vista da segurança

Telemed 09/10 - Com. na Internet - pbrandao 87

Telemed 09/10 - Com. na Internet - pbrandao

192.168.100.0/24

195.31.30.45

193.34.56.205internet

192.168.100.20

NAT router

DA: 195.31.30.45 :22SA: 192.168.100.20 :2050

•Acrescentar entrada para porta 54053

192.168.100.25

DA: 195.31.30.45 :22SA: 193.34.56.205 :54053

DA: 193.34.56.205 :54053SA: 195.31.30.45 :22

DA: 192.168.100.20 :2050SA: 195.31.30.45 :22

DA: 195.31.30.45 :22SA: 192.168.100.25 :4560

DA: 195.31.30.45 :22SA: 193.34.56.205 :64056

tcp6405622195.31.30.454560192.168.100.25

tcp5405322195.31.30.452050192.168.100.20

ProtocoloPorta

NAT

Porta

Externa

Endereço

externo

Porta

privada

Endereço

Privado

• Consultar tabela para porta 54053

88

Page 45: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 45

Problema da travessia do NAT

um cliente quer ligar-se ao servidor com o endereço 192.168.100.20

o o endereço 192.168.100.20 é local à LAN (o cliente não pode usá-lo como endereço de destino)

o apenas visível externamente o endereço NAT: 193.34.56.205

uma solução possível: configuração estática no router NAT para encaminhar conexões iniciadas de fora para uma dada porta para o servidor

Telemed 09/10 - Com. na Internet - pbrandao 2-89

Telemed 09/10 - Com. na Internet - pbrandao 90

195.31.30.45

internet

192.168.100.20

NAT router

192.168.100.0/24

193.34.56.205

192.168.100.25

tcp908080192.168.100.25

tcp702222192.168.100.20

ProtocoloPorta

NAT

Porta

Externa

Endereço

externo

Porta

privada

Endereço

Privado

DA: 193.34.56.205:7022SA: 195.31.30.45 :6899

• Consultar tabela paraporta 7022DA: 192.168.100.20 :22

SA: 195.31.30.45 :6899

Page 46: Comunicação na Internet - FCUPpbrandao/aulas/0910/TeleMed/slides/Redes-2.pdf · Telemedicina e e-Saúde 2009/2010 Comunicação na Internet 2 Sumário Camada de aplicação o Princípios

Telemedicina e e-Saúde 2009/2010

Comunicação na Internet 46

NAT: Objecções

Existem várias objecções à utilização de NAT:Endereço IP não identifica univocamente uma

máquina.Connectionless para connection-oriented:

caixas NAT têm de manter a informação sobre as conexões.

Caixa NAT modifica a camada IP baseado na assunção da formatação da camada superior (quebra das regras de camadas protocolares).

Problemas para as aplicações “Peer to Peer”Ver RFC 2993 – Architectural Implications of

NAT

Telemed 09/10 - Com. na Internet - pbrandao 91

FIM DACOMUNICAÇÃO NA INTERNET

Telemed 09/10 - Com. na Internet - pbrandao