21. Normalmente é usado uma desconexão de 3 passos com temporizadores Desconexão assimétrica : interrupção abrupta da comunicação com possível perda de dados Desconexão simétrica : assume duas conexões unidirecionais e exige que cada uma seja desconectada em separado
24. Controle de fluxo: necessário como na camada de enlace de dados , só que fim-a-fim
25. Diferença básica: numa pilha de transporte podem existir várias conexões ao mesmo tempo – exige disponibilidade de buffers – não é um esquema independente para cada link (o espaço de memória é único para todas as conexões)
26. Uma possível solução – janelas deslizantes de tamanho variável e ajustado pelo transmissor
29. No conjunto de protocolos TCP/IP temos a oferta de serviço orientado a conexão e confiável (protocolo TCP) e serviço não- orientado a conexão baseado em datagrama ( protocolo UDP)
35. Especifica o formato dos dados e confirmações usadas na transferência daqueles, garantindo a correta entrega dos dados de clientes a servidores e vice-versa
71. Utiliza um esquema de janela deslizante para confirmar a informação recebid a
72. Caso um segmento seja maior que 65495 bytes (limite do pacote IP=64k) ou maior que o MTU da rede, ele deve ser fragmentado (podendo gerar problemas de confirmação e remontagem na recepção)
76. Isto obriga o receptor a receber o byte e confirmá-lo com todo um segmento
77. Após ler o byte, o receptor envia novamente todo um segmento com o novo valor no campo window
78. Isto causa uma sequência de segmentos pequenos (1 byte de payload ) na rede que devem ser transportados junto com os 40 bytes do cabeçalho TCP/IP. Perda significativa de performance!
79. Small Packet Problem - Exemplo 1 SEQ=0 ACK = 1 WIN = 4095 Application does a 1B write Empty 1 Application reads 1 B Empty ACK = 1 WIN = 4096 1 SEQ=1 ACK = 2 WIN = 4095 ACK = 2 WIN = 4096 1 Application reads 1 B Empty Application does a 1B write
80.
81. Estes receptores logo tem seu buffer cheio. Ao ler apenas 1 byte, o TCP envia todo um segmento para confirmá-lo e liberando o envio de apenas mais um byte (campo window )
82. Após receber a confirmação, o transmissor segue e envia mais um segmento com somente 1 byte
83. Mais uma vez Isto causa uma sequência de segmentos pequenos na rede que devem ser transportados junto com os 40 bytes do cabeçalho TCP/IP. Perda significativa de performance!
84. Silly Window Sindrome - Exemplo 4K SEQ=0 ACK = 4096 WIN = 0 Application does a 4K write Empty Application reads 1 B ACK = 4096 WIN = 1 1 SEQ=4096 ACK = 4097 WIN = 0 ACK = 4097 WIN = 1 Application reads 1 B Full 4095 Application does a 1K write Full 4095
85.
86. Algoritmo de CLARK : na recepção, não permita leituras de 1 byte somente. Exije que haja um considerável espaço de buffer para se ler. Este espaço é o menor entre o tamanho máximo de segmento passado durante e conexão e a metade do seu buffer
87. Deve haver cuidado com o tempo de resposta que pode crescer com estes procedimentos!
88.
89. Usado para cálculos de tempo máximo de espera de uma confirmação ( timeouts ) Network
90.
91.
92. Uso da “ congestion window ” - inicia com valor igual ao máximo tamanho de segmento na conexão e é duplicado a cada ACK recebido
93. Em casos de congestionamento ( timeout de segmentos), a congestion window voltará ao valor inicial
94. O valor máximo que poderá ser enviado será o mínimo entre a congestion window e o último valor de window recebido)
95. Controle de Congestionamento TCP – Congestion Window Threshold: metade do valor da CW no slow start (início em 64k) Congestion avoidance
98. Nele, a CW aumenta de forma linear, aumentando em 1, desde que todos os segmentos na janela tenham sido confirmados -> suavização da curva
99.
100.
101. Timer de keepalive – quando a conexão ficar em silêncio, checa de o outro lado está lá (controverso)
102.
103. Checksum falho para integridade a nível de transporte e redundante quando se usa protocolos de camada 2 confiáveis (como HDLC ou Ethernet)
104. A funcionalidade de dados “ urgent ” não é uma solução completa de sinalização out-of-band por que é submetida ao mesmo controle de fluxo dos dados normais
105. Entrega rápida de tráfego de mensagens deve usar a opção de “ push ”
106.
107. Oferece às aplicações a capacidade de enviar pacotes IP encapsulados (e não um fluxo de bytes) por um protocolo de transporte sem conexão
108. Basicamente oferece a capacidade de endereçamento de aplicação em portas ao protocolo IP
109.
110. O overhead gerado por procedimentos de conexão é injustificado ou não é tolerado pela aplicação em uso