Leth-dhùnadh TCP a chur air adhart às dèidh na beataichean a tha a' feitheamh a dhrèanadh
Làimhsich EOF ann an seach-fhrithealaiche TCP gun dàta sa chiudha a chall no am freagairt a ghearradh san rathad eile.
Tha an teachdaiche deiseil a' cur, chì an seach-fhrithealaiche EOF, agus tha am freagairt a' dol à bith. Ma dhùineas tu an dà shocaid seach-fhrithealaiche sa bhad, dh'fhaodadh sin an t-sreath cheart a thoirt gu buil. Ann an seala TCP, chan eil crìoch òrdail ann an aon rath a' ciallachadh gu bheil an rath eile deiseil.
Smaoinich air teachdaiche a chuireas iarrtas, a dhùineas a thaobh cur agus a dh'fhuiricheas airson na freagairt:
client -- request, then FIN --> proxy --> service
client <-------- reply ------- proxy <-- service
Tha dà cheangal TCP aig an seach-fhrithealaiche agus dà shruth bheataichean a ghluaiseas gu neo-eisimeileach. Feumaidh e an comharra gu bheil an t-inntrigeadh seachad a ghiùlan air adhart, às dèidh dha na beataichean a thig roimhe a ghiùlan.
Drèan a' chiudha mus cuirear EOF air adhart
Ann an glacadh de mheud nach eil neoni air sruth TCP, tha tilleadh neoni a' comharrachadh crìoch òrdail air an t-sruth a tha a' tighinn a-steach sin. Comharraich an rath leughaidh sin mar chrìochnaichte. Sguir a bhith a' feitheamh ri barrachd inntrigidh bhuaithe, ach cùm na beataichean a tha mar-thà sa chiudha airson an socaid mu choinneamh.
Nuair a bhios a' chiudha bho theachdaiche gu seirbheis air a drèanadh, gairm shutdown(service_socket, SHUT_WR) air socaid POSIX. Cuiridh sin crìoch air tuilleadh sgaoilidh a dh'ionnsaigh na seirbheis fhad 's a tha an rath bho sheirbheis gu teachdaiche fhathast ri fhaighinn. Nuair a chrìochnaicheas an t-seirbheis a freagairt, cuir an obrachadh sgàthan an sàs às dèidh a' chiudha fhreagairt a dhrèanadh.
Buineas dùnadh nan tuairisgeulan ris a' phuing far a bheil an dà rath agus na bufaran a tha a' feitheamh aca crìochnaichte, no far a bheil mearachd no cur-à-bhàil a' feumachadh crìche. Cùm ùine-chrìochnachaidh cuibhrichte airson co-aois nach crìochnaich a leth a tha air fhàgail a-riamh.
Tha ullamhachd na chuireadh gu leughadh
Faodaidh dàta no suidheachadh EOF a bhith ann an socaid a ghabhas leughadh. Gairm recv agus mìnich an toradh. 'S e beataichean ri cur air adhart a th' ann an cunntasan dearbhach; 's e neoni crìoch an rath. Air socaid nach eil a' bacadh, tha EAGAIN no EWOULDBLOCK a' ciallachadh nach eil tuilleadh inntrigidh ann an-dràsta, fhad 's a dh'fhaodadh EINTR feuchainn a-rithist iarraidh. Chan eil aon dhiubh mar an aon tachartas ri EOF.
Na lorg bratach FIN anns a' bhufer bheataichean a thillear. Bheir TCP sruth beataichean òrdail don API seo; chan e uallach àbhaisteach na h-aplacaid a th' ann an crìochan phacaidean no an earrann FIN.
Seo cearcall-beatha tunail bheataichean amh. Feumaidh seach-fhrithealaiche HTTP a nì parsadh air teachdaireachdan urram a thoirt do fhrèam HTTP fhathast, agus tha protocol dùnaidh TLS aig seach-fhrithealaiche a chuireas crìoch air TLS cuideachd. Cùm na co-dhùnaidhean protocol sin os cionn an t-seala TCP a tha stiùirichte le rath.