Creouse un protocolo chamado TCP Flow Control para controlar o fluxo de datos entre o usuario e o servidor.
Asegúrase de que hai unha certa cantidade de ancho de banda dispoñible para enviar e recibir datos para que o procesamento poida continuar sen atopar problemas graves.
O protocolo TCP fai uso dun método coñecido como protocolo de ventá deslizante para conseguilo.
Nesta peza analizaremos en profundidade o control de fluxo TCP, incluíndo o seu funcionamento e, o máis importante, o protocolo de xanela deslizante.
Que é o control de fluxo TCP?
O protocolo TCP garante que se poida establecer unha canle de comunicación fiable a través dunha rede imprevisible.
Os paquetes de datos poden perderse, chegar fóra de secuencia, facer unha copia de seguranza na rede ou sobrecargarse no nodo receptor mentres se envían dun nodo a outro.
Non obstante, mentres desenvolvemos unha aplicación, normalmente non temos que tratar con esta complexidade; en cambio, só enviamos algúns datos a un socket e TCP garante que os paquetes se entreguen correctamente ao nodo receptor.
O control de fluxo é unha característica adicional crucial que ofrece TCP.
Mediante o uso do control de fluxo, TCP asegurarase esencialmente de que un remitente non estea enviando a un receptor demasiados paquetes á vez.
Como funciona o protocolo de control de transferencia: control de fluxo?
Isto ocorre normalmente cando necesitamos comunicar datos a través dunha rede.
A aplicación remitente envía datos a un socket, a capa de transporte (neste caso, TCP) empaqueta estes datos nun segmento e a capa de rede (por exemplo, IP) pasa este paquete ao nodo receptor por algunha ruta.
A capa de rede transmitirá estes datos a TCP no extremo receptor da conversa, e TCP poñeraos a disposición da aplicación receptora como un duplicado idéntico dos datos proporcionados.
TCP non entregará paquetes fóra de orde e esperará a retransmisión no caso de que detecte unha brecha no fluxo de bytes.
Isto é o que veremos se facemos zoom.
Tanto os búfers de transmisión como de recepción en TCP úsanse para almacenar os datos que se deben enviar e recibir, respectivamente.
Os datos do búfer de recepción serán lidos pola aplicación cando estea preparado.
Asegurarse de que non enviamos paquetes adicionais mentres o búfer de recepción do receptor xa está cheo é o principal obxectivo do control de fluxo, xa que facelo obrigaría ao receptor a soltar paquetes adicionais que non podería manexar.
O receptor anunciará a súa xanela de recepción, ou o espazo dispoñible no búfer de recepción, para limitar a cantidade de datos que TCP pode transferir.
Protocolo de ventá deslizante
O protocolo de ventá deslizante en TCP é un dos métodos de control de fluxo máis utilizados. É un procedemento de tamaño variable, orientado a bytes.
Neste enfoque, o receptor envía ao remitente a xanela do receptor tan pronto como o emisor e o receptor están conectados.
O tamaño do buffer actual do receptor denomínase xanela do receptor.
TCP calcula agora a cantidade de datos que se poden enviar sen confirmación en función da xanela do receptor dispoñible.
TCP, con todo, detén a transferencia de datos se o tamaño da xanela do receptor é 0 e agarda a que aumente.
O tamaño da xanela do receptor é un compoñente da trama TCP.
O tamaño máximo da xanela é de 65,535 bytes porque ten un tamaño de xanela de 16 bits.
As dimensións da xanela son escollidas polo destinatario. Con cada mensaxe de acuse de recibo, o receptor transmite o tamaño da xanela do receptor que está dispoñible actualmente.
Proceso do protocolo de ventá deslizante
Cando se utiliza a técnica do protocolo de xanela deslizante, establécense dous búfers cando o emisor e o receptor se conectan.
Estes dous buffers divídense en dous grupos: a xanela de envío, que pertence ao emisor, e a xanela de recepción, que pertence ao receptor.
A ventá de recepción devolve o espazo restante no búfer de recepción cando o remitente transmite datos ao receptor.
Como resultado, o remitente está limitado á cantidade de datos que poden caber no búfer de recepción.
A xanela de transmisión do exemplo anterior transmite datos á xanela de recepción.
Despois de recibir os datos, a xanela de recepción envía un acuse de recibo e, a continuación, a xanela de transmisión transmite un novo marco de datos.
Esta vez, porén, a xanela de recepción tamén envía unha mensaxe indicando que a memoria dispoñible está chea ademais do acuse de recibo que recibiu.
A xanela de transmisión detén a transmisión de datos ata que recibe a confirmación da xanela de recepción de que o espazo foi liberado, momento no que pode retomar a transmisión de datos.
Conclusión
En conclusión, a capa de conexión de datos e a capa de transporte son as responsables de xestionar os problemas de control de fluxo.
O obxectivo básico do mecanismo de control de fluxo é evitar que o receptor se sobrecargue con datos do emisor de transmisión máis rápida.
Aínda que os datos que transfire o remitente non teñan erros e se envíen a un ritmo máis rápido grazas a unha máquina potente, é posible que o receptor do extremo máis lento non poida manexar a velocidade de datos máis rápida e, polo tanto, perda algúns datos.
Deixe unha resposta