Forum: PC Hard- und Software Begriffsklarheit Session-ID und TCP-Session


von Torben S. (Firma: privat) (torben_25)


Lesenswert?

Hallo,

mithilfe der Session-ID können unzusammenhängende Zugriffe auf einen 
Webserver zu einer zusammenhängenden Sitzung zusammenzufasst werden.

Der Begriff Session ist mir neulich nun auch bei einem CISCO-Kurs 
untergekommen. Und zwar behauptete der Kursleiter, zu den Aufgaben der 
Transport-schicht gehöre es, eine TCP-Session herzustellen. Er 
bezeichnete TCP in diesem Zusammenhang als Stateful und UDP als 
Stateless.

Kann mir jemand sagen, ob die Session-ID, die sich der Webserver merkt, 
um z. B. einen Benutzer zu identifizieren, irgendetwas mit dieser 
TCP-Session zutun hat?

Danke!

von Daniel A. (daniel-a)


Lesenswert?

Torben S. schrieb:
> Kann mir jemand sagen, ob die Session-ID, die sich der Webserver merkt,
> um z. B. einen Benutzer zu identifizieren, irgendetwas mit dieser
> TCP-Session zutun hat?

Nö, hat sie nicht. TCP-Session ist synonym zu TCP-Verbindung. 
Identifiziert wird es durch Quell und IP und Port auf beiden Seiten, so 
werden die Pakete zugeordnet, und zum State gehört, neben dem noch 
Sequenznummer usw. Einen Verbindungsstatus / eine State Maschine hat 
jeder Client auch noch, für auf und Abbau der Verbindung usw.: 
https://datatracker.ietf.org/doc/html/rfc793#page-23

Bei einer Webseite ist eine Session einfach durch irgend eine ID oder so 
identifiziert, die bei jedem Request mit gesendet wird. Kann z.B. per 
Cookie gemacht werden, und ist nicht an eine bestimmte Verbindung 
gebunden. Die Details sind stark von der jeweiligen Webseite / 
Webanwendung abhängig.

von Hmmm (Gast)


Lesenswert?

Torben S. schrieb:
> Kann mir jemand sagen, ob die Session-ID, die sich der Webserver merkt,
> um z. B. einen Benutzer zu identifizieren, irgendetwas mit dieser
> TCP-Session zutun hat?

Ja, kann ich sagen. Nein, hat sie nicht.

Bei HTTP/1.0 wurde für jeden einzelnen HTTP-Request (bis hin zu Bildern 
o.dgl.) eine separate TCP-Connection aufgebaut, erst seit HTTP/1.1 
besteht die optionale Möglichkeit, die Connection offenzuhalten, um 
darüber mehrere Requests abzuwickeln.

So entstand dann die Idee, einen User wiederzuerkennen, indem man per 
Session-ID einen Zusammenhang zwischen den Requests herstellt.

von foobar (Gast)


Lesenswert?

> Kann mir jemand sagen, ob die Session-ID, die sich der Webserver merkt,
> um z. B. einen Benutzer zu identifizieren, irgendetwas mit dieser
> TCP-Session zutun hat?

Sind verschieden.  Session ist ein allgemeiner Begriff, um mehrere 
Sachen einem Vorgang zuzuordnen.  Bei der TCP-Session handelt es sich um 
die Gesamtheit der zu einer TCP-Verbindung gehörenden Datenpakete.  Bei 
der Web-Session um alle HTTP(TCP)-Verbindungen, die der Server einem 
einzelnen Anwender zuordnet (z.B. durch Login).


PS: HTTP-Keep-Alive hat nichts damit zu tun.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.