Frage

hatte ich eine Diskussion mit einem Entwickler früher heute erneut auf eine bestimmte Schnittstelle mit der gleichen Nutzlast Gehen TCP-Pakete zu identifizieren. Er sagte mir, dass die Wahrscheinlichkeit, ein TCP-Paket zu finden, das eine gleiche Nutzlast hat (auch wenn die gleichen Daten mehrmals gesendet) ist sehr gering aufgrund der Art und Weise TCP-Pakete auf Systemebene aufgebaut sind. Mir war klar, dies kann der Fall sein aufgrund der MTU-Einstellungen des Systems (in der Regel 1500 Bytes) etc., aber welche Art von Wahrscheinlichkeitsstatistiken bin ich wirklich der Suche auf? Gibt es spezifische Protokolle, die es leichter zu identifizieren passende Nutzlasten machen würde?

War es hilfreich?

Lösung

EDIT: Sorry, meine ursprüngliche Idee war lächerlich.

Du hast mich interessiert, damit ich ein wenig gegoogelt und gefunden diese . Wenn Sie Ihr eigenes Werkzeug schreiben wollte würden Sie wahrscheinlich jede Nutzlast prüfen haben, wäre der einfachste Weg, wahrscheinlich eine Art von Hash / Prüfsumme sein für identische Nutzlasten zu überprüfen. So stellen Sie sicher, dass Sie die Nutzlast prüfen, wird nicht das ganze Paket.

Wie bei den Statistiken werde ich jemand mit mehr Wissen über die Funktionsweise von TCP zu verschieben.

Andere Tipps

Es ist das Protokoll über TCP, die die Einzigartigkeit der Nutzlast definiert, nicht das TCP-Protokoll selbst.

Zum Beispiel könnte man naiverweise glauben, dass HTTP-Anforderungen alle identisch sein würde, wenn für einen Server-Homepage zu fragen, aber die Referrer und User-Agent-Strings machen die Nutzlasten anders.

Und falls die Antwort dynamisch generiert wird, kann es ein Datum Header:

Datum: Fr, 12. September 2008 10.44.27 GMT

So wird das macht die Antwort-Payloads anders. Jedoch können identisch nachfolgende Nutzlasten sein, wenn der Inhalt statisch ist.

Beachten Sie, dass die tatsächlichen Pakete anders sein werden aufgrund unterschiedlicher Sequenznummern, die angeblich erhöht wird und Pseudo-Zufall wird.

Chris ist richtig. Genauer gesagt, zwei oder drei Stücke von Informationen in den Paket-Header sollten anders sein:

  • die Sequenznummer (die bestimmt unvorhersehbar zu sein), die ist mit der Anzahl von Bytes übertragen und empfangen werden.
  • der Zeitstempel, ein Feld, das zwei Zeitstempel (obwohl dieses Feld ist optional).
  • die Prüfsumme, da sowohl die Nutzlast und Header Prüfsummen werden, einschließlich der Änderungssequenznummer.

das gleiche NUTZLAST Senden ist wahrscheinlich ziemlich häufig (vor allem, wenn Sie irgendeine Art von Netzwerk-Service laufen lassen). Wenn Sie die gleiche TCP-Segment (Header und alle) oder das gesamte Netzwerkpaket (ip and up) aussendet bedeuten, dann ist die Wahrscheinlichkeit wesentlich reduziert wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top