TCP/IP-Animation , TCP, UDP-Kommunikation
TCP, UDP-KommunikationTCP und UDP sind Regeln zur Steuerung der Datenkommunikation. TCP verwaltet die Kommunikation strenger als UDP. Daher ist TCP für eine Kommunikation geeignet, die Genauigkeit erfordert, und UDP ist für eine Kommunikation geeignet, die Geschwindigkeit erfordert.Während der Kommunikation werden die Daten in kleine Teile aufgeteilt, die als Pakete bezeichnet werden. Dann wird jedem Paket ein TCP- oder UDP-Header hinzugefügt.* TCP-DetailsTCP stellt zunächst eine Verbindung zwischen dem Quell- und dem Ziel-PC her. Die Daten werden dann in Paketform gesendet, die der Empfänger empfängt und in seinen ursprünglichen Zustand versetzt.Überprüfen Sie dann die Informationen im TCP-Header mit den tatsächlichen Daten, um sicherzustellen, dass keine Fehler vorliegen. Nach der Bestätigung antwortet der Empfänger jedes Mal.Wenn ein Kommunikationsproblem vorliegt, werden dieselben Daten erneut gesendet.* Inhalt der TCP- und UDP-Header'Quellen- und Zielports': PC-Portnummer'Sequenznummer': Nummer für ausgehende Daten. Sie wird für jedes Byte um 1 erhöht.'ACK No.': Addiere 1 zur empfangenen Sequenznummer'MSS (Option)': Maximale Datengröße (Bytes) des Pakets.'Window': Die Größe der Daten, die nacheinander gesendet werden sollen, ohne auf ACK zu warten. (Beispiel) Window (2000 Byte) = MSS (1000 Byte) * 2'Checksum': Wert zur Überprüfung der Datengenauigkeit
TCPStandard TCP Kommunikation* In Bezug auf '[(S) No.00]' bedeutet'No.00' die Sequenznummer des TCP-Headers.'(S)' bedeutet serverseitige Sequenznummer und '(P)' bedeutet PC-Seite eins.1.Wenn der PC auf den Webserver zugreift, wird zunächst eine TCP-Verbindung für die Kommunikation zwischen PC und Server hergestellt.2.Diese Verbindung wird als '3 way hand shake' bezeichnet. Jede Startsequenznummer und MSS-Größe werden beim Verbindungsaufbau bestimmt.3.Beim Herstellen einer TCP-Verbindung4.PC : Gehen Sie zur Website 'http://www.ogumo.co.jp'.(SYN) Fordert TCP-Verbindung an. [(P)No.8800] 5.Server : (ACK) OK. [(P)No.8801] (SYN) Ich fordere auch eine TCP-Verbindung an. [(S)No.9700] 6.PC : (ACK) OK. [(S)No.9701] 7.PC : Verbindung hergestellt.8.Server : Verbindung hergestellt.9.Wenn der PC oder Server ein 'SYN' gesendet hat, wurde jede Startsequenznummer zufällig festgelegt.PC(8800),Server(9700)10.PC : (PSH) Website-Daten anfordern.11.Kommunikation von Website-Daten starten.12.PC : Diese Anforderungsgröße beträgt 1 Paket, die Menge beträgt 10 Byte. [(P)No.8801-8810] 13.Anfrage und Antwort zwischen PC und Server14.Server : (ACK) OK. [(P)No.8811] (PSH) Website-Daten senden.(1 Paket, Menge ist 1000 Bytes) [(S)No.9701-10700] 15.PC : Wir haben die Hälfte der Website-Daten.16.PC : (ACK) OK. [(S)No.10701] 17.Server : (PSH) Senden Sie die zweite Hälfte der Standortdaten (1 Paket, 1000 Byte). [(S)No.10701-11700] 18.PC : Erhaltene Website-Daten.19.PC : (ACK) OK. [(S)No.11701] 20.Verbindung beenden21.PC : (FIN) Beenden der Anzeige der Website.Diese Anforderungsgröße beträgt 1 Paket, die Menge beträgt 1 Byte. [(P)No.8811] 22.Server : (ACK) OK. [(P)No.8812] 23.Server : (FIN) Verbindung schließen. [(S)No.11701] 24.PC : (ACK) OK. [(S)No.11702] 25.Server : Verbindung geschlossen.26.PC : Kommunikation wurde beendet.TCP ÄrgerWährend der TCP-Kommunikation treten Probleme auf.* In Bezug auf '[(S) No.00]' bedeutet'No.00' die Sequenznummer des TCP-Headers.'(S)' bedeutet serverseitige Sequenznummer und '(P)' bedeutet PC-Seite eins.1.Beginnen Sie der Kürze halber mit einer bereits hergestellten Kommunikationsverbindung.2.Wenn der PC oder Server ein 'SYN' gesendet hat, wurde jede Startsequenznummer zufällig festgelegt.PC[8800],Server[9700].Diese Zahlen erhöhen sich während eines 3-Wege-Handshakes um 1.3.PC : (PSH) Website-Daten anfordern.4.Kommunikation von Website-Daten starten.5.PC : Diese Anforderungsgröße beträgt 1 Paket, die Menge beträgt 10 Byte. [(P)No.8801-8810] 6.Anfrage und Antwort zwischen PC und Server7.Server : (ACK) OK. [(P)No.8811] (PSH) Website-Daten senden.(1 Paket, Menge ist 1000 Bytes) [(S)No.9701-10700] 8.Einige Daten fehlen.9.PC : Daten können nicht wiederhergestellt werden.10.PC : Die tatsächlich empfangene Datenmenge beträgt 800 Byte. Sie wurde um 200 Byte verringert.11.PC : Verlorene Sequenznummer [(S)No.10501-10700] 12.PC : Dies führt zu einem Checksum -Fehler. In diesem Fall kann der PC keine ACK senden.13.Server : (PSH) Da ACK nach einer bestimmten Zeit nicht zurückgegeben wird, wird dasselbe Paket erneut gesendet. [(S)No.9701-10700] 14.PC : (ACK) OK. [(S)No.10701] 15.Server : (PSH) Website-Daten senden.(1 Paket, Menge ist 1000 Bytes) [(S)No.10701-11700] 16.PC : Erhaltene Website-Daten.17.PC : (ACK) OK. [(S)No.11701] 18.PC : ACK-Paket verloren.19.Server : (PSH) Da ACK nach einer bestimmten Zeit nicht zurückgegeben wird, wird dasselbe Paket erneut gesendet. [(S)No.10701-11700] 20.PC : (ACK) Erhaltene Website-Daten.21.Server : ACK empfangen. [(S)No.11701] Alle Website-Daten wurden gesendet.22.Verbindungsabbruch entfällt.TCP WindowDie Einstellung 'Window size' ermöglicht eine kontinuierliche Kommunikation.* In Bezug auf '[(S) No.00]' bedeutet'No.00' die Sequenznummer des TCP-Headers.'(S)' bedeutet serverseitige Sequenznummer und '(P)' bedeutet PC-Seite eins.1.Beginnen Sie der Kürze halber mit einer bereits hergestellten Kommunikationsverbindung.2.Wenn eine Verbindung hergestellt wird, werden die Sequenznummer, die MSS und die 'Window size' bestimmt. Window = MSS * 2.Daher werden die Standortdaten zweimal hintereinander gesendet, ohne eine Bestätigung zu erhalten.3.Kommunikation von Website-Daten starten.4.PC : (PSH) Website-Daten anfordern.5.PC : Diese Anforderungsgröße beträgt 1 Paket, die Menge beträgt 10 Byte. [(P)No.8801-8810] 6.Anfrage und Antwort zwischen PC und Server7.Site-Daten kontinuierlich entsprechend der 'Window size' senden, bevor ACK empfangen wird.8.Server : (ACK) OK. [(P)No.8811] (PSH) Website-Daten senden.(1 Paket, Menge ist 1000 Bytes) [(S)No.9701-10700] 9.Server : (PSH) Sende das nächste Paket. [(S)No.10701-11700] 10.PC : (ACK) Wir haben die Hälfte der Website-Daten.11.Server : ACK empfangen. [(S)No.10701] 12.PC : (ACK) Erhaltene Website-Daten.13.Server : ACK empfangen. [(S)No.11701] Alle Website-Daten wurden gesendet.14.Verbindungsabbruch entfällt.15.Die Kommunikationszeit wurde durch Einstellen der 'Window size' verkürzt.TCP Window ÄrgerEinige Probleme treten auf, wenn 'Window size' eingestellt ist.* In Bezug auf '[(S) No.00]' bedeutet'No.00' die Sequenznummer des TCP-Headers.'(S)' bedeutet serverseitige Sequenznummer und '(P)' bedeutet PC-Seite eins.1.Beginnen Sie der Kürze halber mit einer bereits hergestellten Kommunikationsverbindung.2.Wenn eine Verbindung hergestellt wird, werden die Sequenznummer, die MSS und die 'Window size' bestimmt. Window = MSS * 2.Daher werden die Standortdaten zweimal hintereinander gesendet, ohne eine Bestätigung zu erhalten.3.Kommunikation von Website-Daten starten.4.PC : (PSH) Website-Daten anfordern.5.PC : Diese Anforderungsgröße beträgt 1 Paket, die Menge beträgt 10 Byte. [(P)No.8801-8810] 6.Anfrage und Antwort zwischen PC und Server7.Site-Daten kontinuierlich entsprechend der 'Window size' senden, bevor ACK empfangen wird.8.Server : (ACK) OK. [(P)No.8811] (PSH) Website-Daten senden.(1 Paket, Menge ist 1000 Bytes) [(S)No.9701-10700] 9.PC : Erhaltene Website-Daten. [(S)No.9701-10500] Einige Daten fehlen.10.Server : (PSH) Sende das nächste Paket. [(S)No.10701-11700] 11.Einige Daten fehlen.12.Server : Der Server wartet auf die erste Bestätigung. [(S)No.10701] 13.PC : (ACK) Wir haben die zweite Hälfte der Website-Daten erhalten. [(S)No.10701-11700] 14.PC : Es wird nur die zweite ACK zurückgegeben. 'ACK No.' zeigt an, dass der PC das erste Paket anfordert. [(S)No.9701] 15.PC : Wenn ein anderes Standortdatenpaket an den PC gesendet wird, wird dieselbe ACK zurückgegeben. [(S)No.9701] 16.Server : Wenn dieselbe ACK mehrmals hintereinander zurückgegeben wird oder eine Zeitüberschreitung auftritt, sendet der Server das Paket erneut. [(S)No.9701-10700] 17.Server : (PSH) Senden Sie dasselbe Paket erneut, da die letzte ACK-Nummer noch gesendet wurde. [(S)No.9701-10700] 18.PC : (ACK) Erhaltene Website-Daten. [(S)No.9701-10700] 19.Server : ACK empfangen. [(S)No.11701] Alle Website-Daten wurden gesendet.20.Verbindungsabbruch entfällt.21.Wenn die Daten nicht korrekt gesendet werden, wartet der Empfänger auf die fehlenden Daten und teilt dem Absender weiterhin dieselbe ACK-Nummer mit.UDPUDP-Kommunikation. Dieses Beispiel ist in Form von früheren Webvideos.1.Bevor Sie mit dem Herunterladen von Videodaten mit UDP beginnen können, muss Ihr PC TCP verwenden, um auf die Website zuzugreifen, auf der das Video veröffentlicht wird. Ich werde kurz auf TCP eingehen.2.PC : (PSH) Website-Daten anfordern.3.Server : (ACK)+(PSH) Website-Daten senden.4.PC : (ACK) Erhaltene Website-Daten.5.Die Verbindung wird hergestellt und die Site-Daten werden über TCP heruntergeladen. Die Videodaten wurden noch nicht heruntergeladen.6.PC : (PSH) Klicken Sie auf die Schaltfläche, um das Video abzuspielen.7.Server : (ACK) OK.8.Diese Verbindung ist für die TCP-Kommunikation vorgesehen. UDP benötigt sie nicht. Ich werde sie hier zur Veranschaulichung nicht anzeigen.9.Diese Videoanwendung sendet Daten über UDP.10.Server : Diese Videoanwendung sendet Daten über UDP.11.PC : Videodaten abrufen und anzeigen.12.Server : Sende die nächsten Daten, ohne Daten zu überprüfen oder auf eine Antwort zu warten.13.Server : Diese Videoanwendung sendet Daten über UDP.14.Videodaten werden nacheinander gesendet.15.PC : Videodaten abrufen und anzeigen.16.Server : Diese Videoanwendung sendet Daten über UDP.17.Die UDP-Kommunikation wurde plötzlich durch Manipulation des PCs beendet. Von nun an werden die Daten mit TCP gesendet.18.PC : (PSH) Drückt die Endtaste.19.Server : (ACK) OK.20.PC : Das Video ist fertig.UDP ÄrgerWährend der UDP-Kommunikation treten Probleme auf.1.Bevor Sie mit dem Herunterladen von Videodaten mit UDP beginnen können, muss Ihr PC TCP verwenden, um auf die Website zuzugreifen, auf der das Video veröffentlicht wird. Ich werde kurz auf TCP eingehen.2.PC : (PSH) Website-Daten anfordern.3.Server : (ACK)+(PSH) Website-Daten senden.4.PC : (ACK) Erhaltene Website-Daten.5.Die Verbindung wird hergestellt und die Site-Daten werden über TCP heruntergeladen. Die Videodaten wurden noch nicht heruntergeladen.6.PC : (PSH) Klicken Sie auf die Schaltfläche, um das Video abzuspielen.7.Server : (ACK) OK.8.Diese Verbindung ist für die TCP-Kommunikation vorgesehen. UDP benötigt sie nicht. Ich werde sie hier zur Veranschaulichung nicht anzeigen.9.Diese Videoanwendung sendet Daten über UDP.10.Server : Diese Videoanwendung sendet Daten über UDP.11.PC : Videodaten abrufen und anzeigen.12.Server : Sende die nächsten Daten, ohne Daten zu überprüfen oder auf eine Antwort zu warten.13.Server : Diese Videoanwendung sendet Daten über UDP.14.Videodaten werden nacheinander gesendet.15.PC : Videodaten abrufen und anzeigen.16.Server : Diese Videoanwendung sendet Daten über UDP.17.Wenn Daten verloren gehen, werden sie nicht von UDP überprüft.18.Da die Datenmenge jedoch im UDP-Header aufgezeichnet ist, kann die Anwendung sie erkennen und festlegen, um das Problem zu lösen.19.Die UDP-Kommunikation wurde plötzlich durch Manipulation des PCs beendet. Von nun an werden die Daten mit TCP gesendet.20.PC : (PSH) Drückt die Endtaste.21.Server : (ACK) OK.22.PC : Das Video ist fertig.
|