• Nenhum resultado encontrado

Redes de Computadores

N/A
N/A
Protected

Academic year: 2021

Share "Redes de Computadores"

Copied!
8
0
0

Texto

(1)

R d d C

t d

F

RGS

Redes de Computadores

c

a

-U

F

Nível de Transporte

o

rmáti

c

d

e Inf

o

tituto

d

Ins

t

Aula 20

Trabalho sob a Licença Atribuição-SemDerivações-SemDerivados 3.0 Brasil Creative Commons.

Para visualizar uma cópia desta licença, visite http://creativecommons.org/licenses/by-nc-nd/3.0/br/

Nível de transporte

p

Protocolo nível de apresentação Protocolo nível de aplicação

Aplicação Aplicação

Protocolo nível de sessão Protocolo nível de apresentação

Sessão Apresentação Sessão Apresentação U FRGS P t l í l d d Protocolo nível de transporte

Transporte Transporte rmática -U .0 6.17 Enlace Protocolo nível de enlace

Protocolo nível de rede

Enlace Rede Rede u to de Info . Carissimi -1 5 Enlace

Protocolo nível de físico Físico Enlace Físico Instit u Redes de Computadores 2 (c) A

Introdução

ç

Motivação

 Complexidade das redes (diversidade e quantidade de dispositivos)

H t id d di iti l t l i

 Heterogeneidade dispositivos, enlaces e tecnologias

Objetivo:

 Tornar complexidade transparente aos processos de aplicação

U

FRGS

 Tornar complexidade transparente aos processos de aplicação  Esconder detalhes e fornecer uma visão simplificada  Fornecer comunicação lógica entre processos de aplicação

rmática

-U

.0

6.17

ç g p p ç

 Camada de rede oferece comunicação lógica entre hospedeiros

u to de Info . Carissimi -1 5 Pi Pj Instit u (c) A

Contexto dos protocolos de transporte na Internet

p

p

Usuários (processos)(p )

do Serviço de transporte

(fim a fim)

Protocolo nível de transporte

Transporte Transporte U FRGS Rede Rede rmática -U .0 6.17 Fí i Enlace Físico Enlace u to de Info . Carissimi -1 5 Físico Físico Rede Instit u (c) A

(2)

Principais pontos

p

p

Serviços são oferecidos pela camada de transporte

 Orientados a conexão

Nã i t d ã

 Não orientado a conexão

Construídos sobre recursos abstratos (virtuais)

 Entidade de transporte (TSAP)

U

FRGS

 Entidade de transporte (TSAP)

 Canal lógico (noções de conexão ou de ponto de comunicação)

Serviços da entidade de transporte são

rmática

-U

.0

6.17

Serviços da entidade de transporte são

 Executados nos sistemas finais

 Disponibilizados às camadas superiores através de chamadas de sistema

u to de Info . Carissimi -1 5

 Ex.: no TCP/IP corresponde a chamadas de funções da interface de

sockets

Instit

u

Redes de Computadores 5

(c) A

Principais Serviços (modelo OSI)

p

ç (

)

Encapsulamento e desencapsulamento

Multiplexação e demultiplexação

Controle de fluxo

Controle de erro

U FRGS

Controle de congestionamento

Orientados a conexão e não orientados a conexão

rmática -U .0 6.17

Segurança

Qualidade de serviço

u to de Info . Carissimi -1 5 Instit u Redes de Computadores 6 (c) A

Encapsulamento e desencapsulamento

p

p

Inserção/retirada de informações de controle da camada de transporte

 Ex.: número de sequência, controle de fluxo e de erro

Considera fragmentação e remontagem

U FRGS Pi 5 Pj 5 Protocolo camada 5* rmática -U .0 6.17 4 4 Carga útil (payload) T-PDU u to de Info . Carissimi -1 5

cabeçalho Canal lógico

*L b d d l TCP/IP d i

Instit

u

Redes de Computadores 7

(c) A

*Lembrando que no modelo TCP/IP a camada superior ao transporte é a camada de aplicação (7)

Multiplexação e demultiplexação

p

ç

p

ç

Multiplexação

Uma única entidade recebe dados de

Demultiplexação

Uma única entidade encaminha dados

P1 P P

várias origens (muitos para um)

P1 P2 Pn

para mais de um destino (um para muitos)

U FRGS 1 P2 Pn 1 2 n rmática -U .0 6.17 Camada 4 Camada 4 u to de Info . Carissimi -1 5

As entidades de transporte são identificadas por

S ( S ) TCP (Proto 06), UDP (Proto 17) → Para IP

Instit

u

Redes de Computadores 8

(3)

Controle de fluxo

Objetivo é evitar a perda de dados do lado consumidor (destino)

Comunicação é uma relação produtor-consumidor

 Emissor produz dados que são consumidos pelo destino  Problema: taxa de produção maior que a taxa de consumo

F

d

t

U FRGS

Formas de entrega:

Pushing Pulling rmática -U .0 6.17 1 2 2 1 solicita Controle de fluxo u to de Info . Carissimi -1 5

Produtor 1 Consumidor Produtor 2 Consumidor envia envia explícito implicito Instit u Redes de Computadores 9 (c) A explícito implicito

Na prática....

p

P1 P2 Produtor Consumidor Consumidor Produtor PULL PUSH PUSH * * solicitação(1) (2) U FRGS Transporte 4 4 Transporte Produtor Consumidor PUSH Dados armazenados em rmática -U .0 6.17

Dados são armazenados em buffer (controle de fluxo)

Controle de fluxo buffer (bloqueio ou erro no

processo) u to de Info . Carissimi -1 5

*Sistema operacional com a noção de chamadas de sistema realiza um tipo de controle de fluxo

)

Instit

u

Redes de Computadores 10

(c) A

realiza um tipo de controle de fluxo.

Controle de erro

O controle de erro necessita identificar

 Quais T-PDUs devem ser reenviadas (erro ou perda), estão duplicados ou estão fora de ordem

estão fora de ordem

Responsável por

 Detectar e descartar T-PDUs com erro

U

FRGS

Detectar e descartar T PDUs com erro

Identificar T-PDUs faltantes e solicitar seu reenvio (ou reenvio por timeout)  Reconhecer T-PDUs duplicadas e descartá-las

rmática

-U

 Armazenar T-PDUs de forma a garantir a entrega na ordem, sem erros, sem duplicação para o destino final (processo de aplicação)

B

d

ú

d

ê i

fi

õ

.0

6.17

u

to de

Info

Baseado em número de sequência e em confirmações

. Carissimi -1 5 Instit u (c) A

Números de sequência

q

Identificam T-PDUs

 TPDU-s são numerados sequencialmente na sua origem

P ibilid d d id tifi d “l ” ú d ê i d id  Possibilidade de identificador “lacunas” nos números de sequência devido a

perdas e chegada fora de ordem

 Possibilidade de detectar duplicação ao receber duas T-PDUs com o mesmo

U FRGS p ç número rmática -U .0 6.17

Questão associada: quantos bits se usa para o número de sequência?

Evitar confusão entre um “novo zero” e a retransmissão de um “velho zero”

u to de Info . Carissimi -1 5 Instit u (c) A

(4)

Confirmação

ç

Controle de erros é feito através de confirmações

 Positivas: quando uma T-PDU foi recebida corretamente

N ti d T PDU ã f i bid t t

 Negativas: quando uma T-PDU não foi recebida corretamente

Confirmações são associadas a números de sequência

A õ b T PDU

U

FRGS

Ações sobre T-PDUs

 Recebidas sem erros: se tudo OK, confirma sua recepção correta  Se duplicada: descarta e confirma sua recepção

rmática

-U  Se duplicada: descarta e confirma sua recepção

 Se fora de ordem: ordena e confirma a recepção das T-PDUs ordenadas  Se faltando: armazena e espera chegar a que falta

.0

6.17

u

to de

Info  Recebidas com erro: são descartadas no destino e reenviadas por pedidos

explícitos ou por timeout

. Carissimi -1 5 Instit u Redes de Computadores 13 (c) A

Segurança

g

ç

Mecanismos de segurança

 Autenticação C t l d ( t i ã )  Controle de acesso (autorização)  Confidencialidade

Os serviços/protocolos são classificados em seguros e inseguros

U

FRGS

Os serviços/protocolos são classificados em seguros e inseguros

rmática -U .0 6.17 u to de Info . Carissimi -1 5 Instit u Redes de Computadores 14 (c) A

Qualidade de serviço (QoS)

Q

ç (Q )

Serviços que permitem definição de parâmetros de funcionamento

 Vazão, latência, variação do atraso (jitter), taxa de perda etc

Normalmente são parâmetros das camadas inferiores que são

mapeados na camada de transporte

 Se não são ofertados pela camada N 1 não há como uma camada N fazer

U

FRGS

 Se não são ofertados pela camada N-1, não há como uma camada N fazer garantias para uma camada superior N+1

rmática -U .0 6.17 u to de Info . Carissimi -1 5 Instit u Redes de Computadores 15 (c) A

Estudo de casos: protocolos Internet

p

Protocolo UDP

 Não possui controle de fluxo, nem faz controle de erro

Há d t ã d d t i di id l

 Há apenas detecção de erro em um datagrama individual

Protocolo TCP

 Realiza controle de fluxo (esquema de créditos)

U

FRGS

 Realiza controle de fluxo (esquema de créditos)

Realiza controle de erro via confirmações positivas e transmissões por timeout  Mecanismos baseados em números de sequência

rmática

-U q

Tanto o TCP quanto o UDP

 são protocolos inseguros

.0

6.17

u

to de

Info  não oferecem mecanismos de QoS

. Carissimi -1 5 Instit u Redes de Computadores 16 (c) A

(5)

Modelo de T-PDUs

Orientado a mensagem

 Os dados são delimitados em T-PDUs independentes

Sequência contínua (byte stream)

 Não há delimitação de T-PDUs

T PDU ã i t l i d independentes

 Modelo usado na camada de transporte da Internet (UDP)

 T-PDUs são inter-relacionadas  Modelo empregado na camada de

transporte da Internet (TCP)

U

FRGS

 T-PDU é denominada de datagrama  T-PDU é denominada de segmentop ( )

rmática -U .0 6.17 Pi Rede Pj Pi Rede Pj u to de Info . Carissimi -1 5

Nro send = nro recv Nro send ≠ nro recv

Instit

u

Redes de Computadores 17

(c) A

Multiplexação e demultiplexação: O conceito de porta

p

ç

p

ç

p

 É um número de 16 bits utilizado como identificador  Existem três tipos de portas [RFC 6335]

Bem conhecidas (well know ports ou system ports): 1 a 1023

Porta 20 21 Protocolo TCP TCP Aplicação FTP-data

FTP-control Bem conhecidas (well know ports ou system ports): 1 a 1023

Registered ports ou user ports): 1024 a 49151

 Listadas para coordenar o uso de serviços não padrão

25 53 80 110 TCP TCP/UDP TCP TCP SMTP DNS HTTP POP3 U FRGS

Dynamics and/or private ports: 49152 a 65535  Portas podem estar em um de três estados

Assigned reserved ou unassigned (dynamic ports)

110 161 UDPTCP SNMPPOP3 rmática -U .0 6.17

Assigned, reserved ou unassigned (dynamic ports)

 http://www.iana.org/assignments/port-numbers

 Portas TCP são independentes de Portas UDP IP TCP UDP u to de Info . Carissimi -1 5

 Porta 100 (TCP) ≠ Porta 100 (UDP), mas se convenciona “alocar” as duas simultaneamente para um mesmo protocolo

Internet Protocol Interface de rede Instit u Redes de Computadores 18

(c) A Conceito de portas é como o TCP e o UDP multiplexam

e demultiplexam seu uso pela camada de aplicação.

Formato do datagrama UDP

g

S P t D ti ti P t 32 bits IP Header DATA DATA Tr a

Source Port Destination Port length Checksum DATA DATA asnferênci a U FRGS a Cabeçalho IP Cabeçalho 802.3 rmática -U .0 6.17

Data Cabeçalho IPCabeçalho UDP

u to de Info . Carissimi -1 5

Área de dados UDP

Instit

u

(c) A PDU – Protocol Data Unit

Área de dados 802.3Área de dados IP

Área de dados UDP

Formato do segmento TCP

g

32 bit

 Controle de erro e fluxo  Garantia de entrega e de ordem

 Gerenciamento da conexão Source Port Destination Port

32 bits

IP Header

Urgent pointer Ack

 Gerenciamento da conexão Source Port Destination Port

Hlen Flags Window Sequence Number Acknowledgment Number Ack Push Rst Syn U FRGS

Hlen Flags Window Checksum Urgent Pointer

Options+padding Syn Fin Cabeçalho TCP Cabeçalho IP Cabeçalho 802.3 rmática -U .0 6.17 Data u to de Info . Carissimi -1 5

PDU – Protocol Data Unit Á d d d 802 3 Área de dados IP Área de dados TCP Instit u (c) A

PDU – Protocol Data Unit Área de dados 802.3

(6)

Controle de fluxo do TCP

Baseado em um esquema de crédito (genérico)

 Variação de janela deslizante onde os buffers de transmissão e recepção são de tamanho variável (blocos múltiplos de bytes = segmentos TCP)

de tamanho variável (blocos múltiplos de bytes = segmentos TCP)  Emissor tem crédito para enviar até n bytes ao destino

 Segmento ao ser aceito (processado), o destino renova a quantidade de

U

FRGS

g (p ), q

créditos por um valor c (0 < c ≤ n)  Créditos podem ser renegociados

T h d j l é i d t b l i t d ã (M i

rmática

-U

.0

6.17

Tamanho da janela é negociado no estabelecimento da conexão (Maximum

Segment Size – MSS). (valor default é 536 bytes para Ethernet)

 Confirmações (ACKs) servem para renovar os créditos

u to de Info . Carissimi -1 5 ç ( ) p Instit u Redes de Computadores 21 (c) A

Janela de transmissão e recepção no TCP

Sistema de créditos

 Capacidade de buffer no receptor

J l d t i ã ã

 Janelas de transmissão e recepção

Próximo a ser lido Recebidos, mas

ainda não lidos SendWindow = SndBuffer – [NextByteSend – LastByteWrite]

U

FRGS

Último byte escrito

ainda não lidos

rmática

-U

.0

6.17 Próximo a ser

E it i d

Último byte recebido

R Wi d R B ff [L tB t R d L tB t R d] u to de Info . Carissimi -1 5 enviado Escritos mas ainda

não enviados

RecvWindow = RcvBuffer – [LastByteRcvd – LastByteRead]

C édit Q tid d d b t í l d bid

Instit

u

Redes de Computadores 22

(c) A Créditos = Quantidade de bytes possível de ser recebida

Controle de sequência no TCP

q

Garante a recepção dos dados na ordem da emissão e sem

duplicação

C d b t

i d

i

ú

d

ê i

i d

Cada byte enviado possui um número de sequência associado

O segmento TCP é identificado pelo número de sequência do seu

primeiro byte

U FRGS

primeiro byte

399 rmática -U .0 6.17 150 151 198 199 SN=150 SN=200 Próximo a receber SN=400 OU u to de Info . Carissimi -1 5 Segmento 150 Próximo a receber Segmento 200 SN=150 SN=400 Instit u Redes de Computadores 23 (c) A

Confirmação positiva (ACK)

ç

p

(

)

Baseado no valor no campo acknowledge number (ACK)

 Indica o número de sequência dos bytes já processados pela aplicação

I f t i ó i b t bid

 Informa ao transmissor o próximo byte a ser recebido  TCP não faz confirmação negativa

U FRGS 150 151 198 199 200 201 348 349 350 351 448 449 SN=150 SN=200 SN 350 rmática -U .0 6.17 ACK=200 SN=150 SN=200 SN=350 ACK=350 ACK=450 SN=150 Questão paralela: u to de Info . Carissimi -1 5 ACK=200 SN=200 Questão paralela:

Como TCP sabe o tamanho da área de dados? Tamanho T-PDU (informado no IP) – Tamanho

Instit

u

Redes de Computadores 24

(c) A ACK=350

Tamanho T PDU (informado no IP) Tamanho do cabeçalho TCP

(7)

Controle de erros

Objetivo:garantir o recebimento correto dos segmentos

 Sem erros, na ordem, sem duplicação

Baseado em:

Baseado em:

Confirmação positiva (ACK), similar ao go-back N, ou seletiva (SACK)  RFC 2018, permite o reconhecimento seletivo (similar ao selective repeat)

U

FRGS

p ( p )

Retransmissão por time-out

Ações nos segmentos TCP com problemas

rmática

-U

.0

6.17

 Recebidos com erro ou duplicados são descartados  Perdidos são retransmitidos por time-out

 Fora de ordem são armazenados em buffer até ser possível reordenar

u

to de

Info

. Carissimi

-1

5  Fora de ordem são armazenados em buffer até ser possível reordenar

Instit

u

Redes de Computadores 25

(c) A

Retransmissão

O protocolo TCP emprega timeout por segmentos

Processo origem dispara um timeout para cada segmento enviado

S t é t itid d i ã b fi ã t

 Segmento é retransmitido quando a origem não recebe a confirmação antes da expiração do temporizador

Tratamento da duplicação é feito pelo sequence number

U

FRGS

Tratamento da duplicação é feito pelo sequence number

Destino espera segmento com número x, qualquer segmento com número inferior é considerado duplicado e é descartado

rmática -U .0 6.17 u to de Info . Carissimi -1 5 Instit u Redes de Computadores 26 (c) A

Controle de fluxo e congestionamento no TCP

g

O controle de fluxo evita a perda de dados no receptor final, porém

pode haver sobrecarga (overflow) em buffers dos sistemas intermediários

t l d fl é fi fi ( TCP) ti t i  controle de fluxo é fim a fim (como o TCP), o congestionamento seria um

problema do IP (por tratar de intermediários)

 Como o IP não faz controle de congestionamento, o TCP faz no seu lugar

U

FRGS

g , g

Estratégia de detecção

Ocorrência de dois eventos: expiração de time-out e quatro ACKs iguais

rmática

-U

.0

6.17

 Time-out: considera que perda ocorreu devido a congestionamento  ACKs iguais: implica que segmento está faltando, porém três segmentos

posteriores foram recebidos

u

to de

Info

. Carissimi

-1

5 posteriores foram recebidos

Instit

u

(c) A

Controle de congestionamento no TCP

g

Baseado em uma nova janela (congestionamento)

 Tamanho da janela = MIN (janela de recepção; janela de congestionamento)

Janela de congestionamento (cwnd – congestion window)

Inicia com cwnd = 1 * MSS (Maximum Segment Size)Para cada ACK cwnd = cwnd + 1*MSS

U

FRGS

Para cada ACK, cwnd = cwnd + 1*MSS

Algoritmo denominado de partida lenta (slow start)

Há ainda algoritmos

rmática

-U

Há ainda algoritmos

Prevenção de congestionamento (congestion avoidance)Recuperação rápida (fast recovery)

.0 6.17 u to de Info . Carissimi -1 5

Detalhes desse funcionamento na disciplina de protocolos!!

Instit

u

(8)

Leituras complementares

p

Stallings, W. Data and Computer Communications (6

th

edition),

Prentice Hall 1999.

C ít l 15 ã 15 3 15 4  Capítulo 15, seção 15.3, 15.4

Tanenbaum, A. Redes de Computadores (4

a

edição), Campus,

2000

U

FRGS

2000.

 Capítulo 6, seção 6.1, 6.2 e 6.3

Carissimi A ; Rochol J; Granville L Z; Redes de Computadores

rmática

-U

.0

6.17

Carissimi, A.; Rochol, J; Granville, L.Z; Redes de Computadores.

Série Livros Didáticos. Bookman 2009.

 Capítulo 6, seções 6.1 a 6.3 u to de Info . Carissimi -1 5 Instit u Redes de Computadores 29 (c) A

Referências

Documentos relacionados

O objetivo principal deste trabalho é apresentar uma metodologia para a criação de um sistema completamente autônomo de Hardware Evolutivo em FPGA (Field Programmable..

Deste modo, é evidente que para atuar como banco, e não como um fundo para correção de assimetrias, o Banco do Sul terá que ampliar sua atuação através de

5.13.1 O candidato que, no ato de inscrição, se declarar com deficiência, caso não seja elimi- nado na prova discursiva, será convocado para se submeter à perícia promovida por equipe

Var r edur a Xm as Tr ee FIN/URG/PSH Não Responde FIN/URG/PSH RST/ACK Porta Aberta Porta Fechada Scanner de Porta (estado de escuta) (estado não ouvindo).. TCP Null ( sem

Seria  uma  boa  pesquisa  literária  estabelecer  as  relações  (tênues  ou  implícitas  que  sejam)  entre  a  produção  literária  de  Quintana  e 

“Ao compor uma canção, o compositor dá voz ao seu eu poético, que dará vazão à mensagem que deseja transmitir ao seu interlocutor” (p. É assim que Farney Santos inicia

Quando tinha 61 anos foi contratado para voltar à Capela e pintar o maior afresco da Renascença, outra obra incrível, o “Juízo Final”, numa parede do fundo.. O “Juízo

A interpenetração dos campos da editoração popular e erudita vai se dar na medida em que o produto das camadas subalternas adota, como ponto de partida do seu trabalho, a recriação