Frage Wie schnell ist 127.0.0.1?


Ich frage mich, ob es überhaupt an meine NIC gebunden ist oder ob das Betriebssystem oder der Treiber Daten abfängt, die an die Loopback-Adresse gesendet werden, und diese sofort zurückgibt.

Fliegt das Signal tatsächlich zu meinem NIC, dann gibt die NIC es zurück?


33
2018-02-11 04:05


Ursprung


Mehr Trivia die gesamte 127/8 ist für die Rückkopplung gewidmet - Jacob
Es wäre interessant, einige reale Durchsatz- und / oder Latenzwerte für das Loopback zu sehen, wenn jemand sie hat. - NPE
Selbst wenn die Elektronen dorthin wandern, würde die NIC wahrscheinlich nicht dieselben Elektronen zurückgeben :) - Halil Özgür
:) Ja ich sollte Signal sagen ..
Es gibt keinen Ort wie 127.0.0.1


Antworten:


Sie erwähnen nicht ein bestimmtes Betriebssystem, aber für die meisten alles, was passiert, ist, dass die Daten durch den Stapel wandern, bis es zu IP kommt, an diesem Punkt wird es ziemlich zurückgeschickt. Das ist eine starke Vereinfachung, bedeutet aber, dass der gesamte Prozess normalerweise CPU-gebunden ist, sodass seine Leistung direkt mit der CPU-Geschwindigkeit und der Stack-Effizienz verknüpft ist. In der Praxis sollten moderne CPUs und Betriebssysteme in der Lage sein, den Loopback-Datenverkehr wesentlich schneller als 40 Gbps zu "bouncen" - was die schnellste NIC ist, die ich heute kaufen kann. Hoffe das hilft.


28
2018-02-11 11:16





Nein, der gesamte Datenverkehr von 127.0.0.1 trifft nie auf das physische Netzwerk. Er wird von einem Loopback-Adapter im Kernel verarbeitet.


38
2018-02-11 04:07



also das heißt super schnell richtig :)
@Mrk Mnl ja du wette. Für meine ping 00ms mit XAMP 1.7.4
Jede lokale Adresse trifft niemals das physische Netzwerk. 127.0.0.1 nur einer von ihnen - alvosu
"Das physikalische Netzwerk zu treffen" ist ein wenig mehrdeutig, da es zu Ihrer NIC gelangen könnte, ohne gesendet zu werden und nicht das physikalische Netzwerk zu treffen, wenn es vom Kernel, d. h. dem OS, zurückgegeben wird, kommt es offensichtlich nicht zur NIC.


Sie sind möglicherweise an der Funktion "Loopback Fast Path" interessiert, die Microsoft in Windows 8 und Windows Server 2012 hinzugefügt hat. Siehe:

http://blogs.technet.com/b/wincat/archive/2012/12/05/fast-tcp-loopback-performance-and-low-latency-with-windows-server-2012-tcp-loopback-fast- Pfad.aspx

Es zeigt auch den Pfad, den der Loopback mit und ohne Optimierung einschlägt.


12
2017-12-05 18:48





127.0.0.1 ist keine schnellere lokale IP. Die lokale IP-Adresse ist schnell, da sie kein physisches Gerät und keine 2-Schichten verwendet (es trifft niemals Ihre Netzwerkkarte)

iperf -c 109.191.109.xxx 1111 -t 5
iperf: ignoring extra argument -- 1111
------------------------------------------------------------
Client connecting to 109.191.109.241, TCP port 5001
TCP window size: 49.7 KByte (default)
------------------------------------------------------------
[  3] local 109.191.109.xxx port 32840 connected with 109.191.109.xxx port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 5.0 sec  4.72 GBytes  8.12 Gbits/sec

$ iperf -c 127.0.0.1 1111 -t 5
iperf: ignoring extra argument -- 1111
------------------------------------------------------------
Client connecting to 127.0.0.1, TCP port 5001
TCP window size: 49.7 KByte (default)
------------------------------------------------------------
[  3] local 127.0.0.1 port 56482 connected with 127.0.0.1 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 5.0 sec  4.62 GBytes  7.94 Gbits/sec

6
2018-02-11 11:26



Es ist sehr viel falsch mit dieser Antwort. Es ist schneller. Wenn Sie das Kollisionsfenster übernehmen, wird der begrenzende Faktor durch Kontextwechsel gesteuert. - symcbean
genial, genau das was ich gesucht habe. Ich wollte meine obere Grenze sehen, wenn ich Client lokal zum Server laufen lasse ... Danke für die Antwort !!!! - Dean Hiller


Es hängt davon ab, welches Betriebssystem Sie ausführen, aber Windows 2000 hatte einen Fehler darin, dass Anfragen auf dem Loopback-Adapter langsam sein würden. Es gibt ein paar nutzlose Kleinigkeiten für dich!

Bitte sehen Sie dies kb Artikel für mehr Informationen.


5
2018-02-11 10:51





Ich würde eher sagen, dass Sie Ihre Antwort in seinem Namen selbst finden. Der Name sagt: "Local Loopback Address", was bedeutet, dass das Netzwerk niemals in den Prozess eingreift und die Anfrage selbst lokal zurückgeschleift wird.


2
2018-02-11 12:21



Ich wollte es gleich veröffentlichen, als ich merke, dass du mich dafür geschlagen hast. In der Tat sollte "Loopback-Adresse" einen Hinweis geben :) - luis.espinal
Die Frage war, wie schnell ich weiß, was es tut
Der Name sagt dir eigentlich nichts. Zum Beispiel ist eine physische RS-232-Rückschleife genauso langsam wie Ihre serielle Schnittstelle, während Sie, wenn Sie eine auf der Treiberebene implementieren würden, schneller wären. Natürlich wird localhost in Software behandelt, aber das kann man nicht nur vom Namen "loopback" sagen. Falls Sie zu jung sind, um von diesen Dingen zu wissen, gebe ich Ihnen google.com/search?q=rs232+loopback&tbm=isch - aij


Wenn Sie auf Linux sind ...

gib "ifconfig -a" als root ein ...

Beachten Sie die "Interrupt" -Zeile auf allen NICs ... Beachten Sie, dass es auf "lo" keine "Interrupt" -Zeile gibt ... das heißt, es ist nicht einmal ein Interrupt zugewiesen, also verdammt schnell ;-)


1
2017-12-05 20:49



das macht keinen Sinn. Dies macht wenig Sinn für ein virtuelles Gerät und sagt nichts über seine Leistung aus. - sleeplessnerd