16.04.2015 Views

Redes de computadores

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Re<strong>de</strong>s</strong> <strong>de</strong> <strong>computadores</strong><br />

ª FUOC • XP04/90786/00020<br />

14.4. Terminación <strong>de</strong> la conexión<br />

Cuando la transferencia <strong>de</strong> la información ha finalizado, el TCP dispone<br />

<strong>de</strong> un protocolo <strong>de</strong> terminación <strong>de</strong> la conexión para cerrarla.<br />

En una conexión TCP full duplex, en la que los datos fluyen en ambos<br />

sentidos, in<strong>de</strong>pendientes el uno <strong>de</strong>l otro, cualquier conexión <strong>de</strong>be cerrarse<br />

in<strong>de</strong>pendientemente.<br />

Es preciso tener en cuenta que tanto el cliente como el servidor pue<strong>de</strong>n<br />

cerrar la conexión. Sin embargo, la situación normal es que la<br />

aplicación cliente inicie la petición <strong>de</strong> conexión y tenga, posiblemente,<br />

un usuario interactivo que le pida su cierre por medio, por ejemplo,<br />

<strong>de</strong> una instrucción, que en telnet sería logout y en un ftp sería<br />

bye. Por tanto, supongamos que es el cliente quien pi<strong>de</strong> cerrar la conexión<br />

(si fuera el servidor, sería similar). Los pasos que se siguen son<br />

los siguientes:<br />

1) El cliente envía un segmento TCP <strong>de</strong>l tipo FIN con el número <strong>de</strong><br />

secuencia correspondiente (J). Ello significa que a partir <strong>de</strong> este<br />

momento no habrá más datos que fluyan en este sentido (cliente<br />

→ servidor).<br />

2) El servidor envía una confirmación <strong>de</strong>l cierre por medio <strong>de</strong> un<br />

ACK con el número <strong>de</strong> secuencia recibido más 1 (J + 1).<br />

Nota<br />

El segmento FIN recibe este<br />

nombre porque tiene activado<br />

el bit FIN en el campo<br />

Control <strong>de</strong> la cabecera <strong>de</strong>l<br />

segmento TCP.<br />

El TCP servidor indica a su aplicación que el cliente cierra la conexión.<br />

La aplicación servidor indica a su TCP que la cierre a continuación.<br />

3) El servidor envía un segmento TCP <strong>de</strong>l tipo FIN al cliente con el<br />

número <strong>de</strong> secuencia correspondiente (K).<br />

4) El TCP cliente respon<strong>de</strong> automáticamente con un ACK (K + 1).<br />

Se dice que quien envía el primer segmento FIN (en<br />

este caso el cliente) lleva a cabo un cierre activo (active<br />

close), mientras que quien lo recibe (en este caso el<br />

servidor) realiza un cierre pasivo (passive close).<br />

ANOTACIONES<br />

147

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!