Quant de temps pot romandre obert un túnel CONNECT?
Separeu la vida d'un túnel establert de la reutilització de respostes HTTP, de les polítiques d'inactivitat de l'intermediari i de la pròpia sessió de l'aplicació de destinació.
CONNECT no promet un túnel obert indefinidament. Després d'un intercanvi correcte, la connexió transporta un flux de bytes continu cap a l'amfitrió i el port sol·licitats. Pot transportar diversos intercanvis dins d'una sessió TLS de destinació mentre els participants i la xarxa la mantinguin oberta.
Dos límits del proxy es comporten de manera diferent: el trànsit pot impedir que caduqui un temporitzador d'inactivitat, però no pot ampliar un límit de durada absolut. El protocol de destinació també hi té veu. Un client HTTP intern pot tancar la seva connexió; una aplicació WebSocket pot acabar la seva sessió. El proxy no pot mantenir viva aquella sessió de destinació després.
Un túnel està lligat al seu objectiu. Un cop flueixen els bytes del túnel, la connexió ja no és un canal de peticions HTTP ordinari on emetre un altre CONNECT per a una destinació no relacionada. El client necessita una altra connexió o un altre túnel gestionat per la seva biblioteca.
Per a un feed persistent, planifiqueu reconnexions amb els mecanismes de vitalitat i de connexió que admet el client. Si es tanca després d'un silenci, una política d'inactivitat és una pista útil; si es tanca al cap d'una durada fixa malgrat el trànsit, investigueu en canvi un límit absolut. Per a un feed WebSocket, restaureu també l'estat de l'aplicació després de reconnectar.