Cât timp poate rămâne deschis un tunel CONNECT?
Separă durata de viață a unui tunel stabilit de reutilizarea răspunsurilor HTTP, de politicile de inactivitate ale intermediarilor și de sesiunea aplicației destinație.
CONNECT nu promite un tunel deschis la nesfârșit. După un schimb reușit, conexiunea transportă un flux continuu de octeți către hostul și portul solicitate. Poate transporta mai multe schimburi într-o sesiune TLS a destinației atât timp cât participanții și rețeaua o țin deschisă.
Două limite ale proxy-ului se comportă diferit: traficul poate împiedica expirarea unui temporizator idle, dar nu poate prelungi o limită absolute de durată de viață. Și protocolul destinației are un cuvânt de spus. Un client HTTP interior își poate închide conexiunea; o aplicație WebSocket își poate încheia sesiunea. Proxy-ul nu poate menține acea sesiune a destinației în viață după aceea.
Un tunel este legat de ținta sa. Odată ce octeții tunelului curg, conexiunea nu mai este un canal obișnuit de cereri HTTP pe care să se emită alt CONNECT pentru o destinație fără legătură. Clientul are nevoie de altă conexiune sau de alt tunel gestionat de biblioteca sa.
Pentru un flux persistent, planificați reconectări folosind mecanismele de vivacitate și de conectare acceptate de client. Dacă se închide după o perioadă de liniște, o politică de inactivitate este un indiciu util; dacă se închide după o durată fixă în ciuda traficului, investigați o limită absolută. Pentru un flux WebSocket, restabiliți și starea aplicației după reconectare.