Tybiwch fod ymateb HTTP yn ymddangos mewn sawl segment TCP a gafwyd ar ôl iddo basio trwy Squid. Gall hynny fod yn ymddygiad TCP cyffredin, yn hytrach na thystiolaeth bod yr ymateb wedi’i rannu’n anghywir.

Yn arferol, mae gan brocsïi blaen ddau gysylltiad:

client ⇄ TCP connection A ⇄ proxy ⇄ TCP connection B ⇄ origin

Mae gan bob cysylltiad ei gyflwr TCP, ei rifau dilyniant a’i becynnu ei hun. Gall y procsïi ddarllen data o un cysylltiad a’i ysgrifennu i’r llall heb gadw maint y segmentau gwreiddiol. Gall byffro, amseru anfon, tagfeydd a therfynau maint y llwybr gynhyrchu carpiad gwahanol.

Tair ffin sy’n werth eu cadw ar wahân

FfinBeth sy’n ei phennu
Segment TCPY llwybr cludo a’r llwybr rhwydwaith
Canlyniad darllen socedY beitiau ffrwd sydd ar gael a byffer y galwr
Neges neu ffrâm HTTPRheolau ymffurfio’r protocol HTTP

Gall un darlleniad gynnwys rhan o bennawd, pennawd cyfan ynghyd â beitiau corff, neu ddata sy’n croesi mwy nag un ffin ar lefel cymhwysiad. Nid yw TCP yn cysylltu “diwedd yr ymateb HTTP” â diwedd darlleniad llwyddiannus.

Felly mae parsar HTTP/1.1 yn cronni pennawdau ac yn defnyddio’r rheolau ymffurfio corff perthnasol, gan gynnwys hyd, codio trosglwyddo neu gau cysylltiad a ganiateir. Mae ffrâm HTTP/2 yn strwythur protocol a all ei hun groesi segmentau TCP; nid yw’n enw arall am becyn rhwydwaith.

Mae twnnel CONNECT llwyddiannus yn cadw’r ffrwd beitiau twnelu tra’n dal i ddefnyddio dwy goes TCP. Gall ei ffiniau segment fod yn wahanol hyd yn oed pan nad yw’r procsïi wedi newid y beitiau y tu mewn i’r twnnel.

Wrth ymchwilio i lygredd, cymharwch y data cymhwysiad a ailosodwyd. Mae cymharu cyfrifon pecynnau neu ddisgwyl hyd pecynnau unfath ar y ddwy ochr yn gofyn i TCP am warant ffin nad yw’n ei rhoi.

Erthyglau cysylltiedig