1. TCP-Dreifach-Handschlag
Der Sender sendet ein Paket mit der Flagge SYN=1 und ACK=0 an den Empfänger und fordert eine Verbindung an, die den ersten Handschlag darstellt. Wenn der Empfänger die Anfrage erhält und die Verbindung zulässt, sendet er ein Paket mit den Flaggen SYN=1 und ACK=1 an den Absender, um ihm mitzuteilen, dass er kommunizieren kann, und bittet den Absender, ein Bestätigungspaket zu senden, das den zweiten Handschlag darstellt. Schließlich sendet der Sender ein Paket mit SYN=0 und ACK=1 an den Empfänger und teilt ihm mit, dass die Verbindung bestätigt wurde, was der dritte Handshake ist. Danach wird eine TCP-Verbindung hergestellt und die Kommunikation beginnt.
2. Markierungsinformationen im TCP-Paket
*SYN: Synchronisationsflagge
Das Feld "Sequenznummern synchronisieren" ist gültig. Dieses Flag gilt nur, wenn während eines Dreifach-Handshakes eine TCP-Verbindung hergestellt wird. Sie fordert den Server der TCP-Verbindung auf, die Seriennummer zu überprüfen, die die Anfangssequenznummer der ursprünglichen TCP-Verbindung (meist des Clients) ist. Hier kann die TCP-Sequenznummer als 32-Bit-Zähler von 0 bis 4.294.967.295 betrachtet werden. Jedes Datenbyte, das über eine TCP-Verbindung ausgetauscht wird, wird sequenziert. Die Sequenznummernspalte im TCP-Header enthält die Sequenznummer des ersten Bytes im TCP-Segment.
*ACK: Bestätigungsflagge
Das Feld Bestätigungsnummer ist gültig. Meistens wird das Flaggen-Bit platziert. Die Bestätigungsnummer (w+1, Abbildung 1), die in der Bestätigungsnummer-Spalte im TCP-Header enthalten ist, ist die nächste erwartete Sequenznummer, und das entfernte Ende wird angezeigtSystemAlle Daten wurden erfolgreich empfangen.
*RST: Reset-Flag
Das Reset-Zeichen ist gültig. Wird verwendet, um die entsprechende TCP-Verbindung zurückzusetzen.
*URG: Notfallzeichen
Das dringende Zeigezeichen ist gültig. Platzierung von Notzeichen,
*PSH: Push-Logo
Wenn die Flagge platziert ist, stellt der Empfänger die Daten nicht in die Warteschlange, sondern überträgt sie so schnell wie möglich an die Anwendung. Die Flagge wird immer gesetzt, wenn Verbindungen in Interaktionsmodi wie Telnet oder rlogin durchgeführt werden.
*FIN: Ende des Zeichens
Das Paket mit diesem Flag wird verwendet, um einen TCP-Rückruf zu beenden, aber der Port bleibt weiterhin offen, um nachfolgende Daten zu empfangen.
3. Die Rolle mehrerer TCP-Zustände in unserer Analyse
In der TCP-Schicht gibt es ein FLAGS-Feld, das folgende Kennungen aufweist: SYN, FIN, ACK, PSH, RST, URG. Darunter sind die ersten fünf Felder für unsere tägliche Analyse nützlich. Sie bedeuten Folgendes: SYN bedeutet, eine Verbindung herzustellen, FIN bedeutet, die Verbindung zu schließen, ACK bedeutet zu antworten, PSH bedeutet DATENÜBERTRAGUNG, und RST bedeutet Verbindungszurücksetzen. Unter ihnen kann ACK gleichzeitig mit SYN, FIN usw. verwendet werden, zum Beispiel können SYN und ACK gleichzeitig 1 sein, was die Antwort nach der Herstellung einer Verbindung darstellt; wenn es sich nur um eine einzelne SYN handelt, steht dies nur für die Herstellung einer Verbindung. Die zahlreichen Handshakes von TCP manifestieren sich durch solche ACKs. Allerdings sind SYN und FIN nicht gleichzeitig 1, da ersterer eine Verbindung herstellen will, während letzterer das Trennen bedeutet. RST erscheint normalerweise nach FIN bis 1, was auf einen Verbindungsreset hinweist. Im Allgemeinen gehen wir beim Erscheinen eines FIN- oder RST-Pakets davon aus, dass der Client vom Server getrennt ist. Wenn SYN- und SYN+ACK-Pakete erscheinen, glauben wir, dass der Client eine Verbindung zum Server hergestellt hat. PSH von 1 erscheint im Allgemeinen nur in Paketen mit nicht-0 DATA-Inhalten, was bedeutet, dass PSH von 1 bedeutet, dass echter TCP-Paketinhalt weitergegeben wird. TCP-Verbindungsaufbau und -Schließung erfolgt durch ein Anfrage-Antwort-Muster
|