Quelle est la vitesse 127.0.0.1?

37

Je me demande si elle est liée à ma carte réseau ou si le système d'exploitation ou le pilote intercepte et renvoie immédiatement les données envoyées à l'adresse de bouclage?

Le signal est-il réellement acheminé vers ma carte réseau, puis la carte réseau le renvoie?

serv-inc
la source
5
Plus de trivia toute la 127/8 est dédiée à la boucle
Jacob
2
Il serait intéressant de voir des chiffres de débit et / ou de latence réels pour le bouclage, si quelqu'un les possède.
NPE
3
Même si les électrons y voyagent, le NIC ne reviendra probablement pas avec les mêmes électrons :)
Halil Özgür
:) oui, je devrais dire signal ..
1
il n'y a pas d'endroit comme 127.0.0.1

Réponses:

29

Vous ne parlez pas d'un système d'exploitation particulier, mais l'essentiel de tout ce qui se passe est que les données sont acheminées vers le bas de la pile jusqu'à ce qu'elles parviennent à l'IP, où elles sont à peu près renvoyées. C'est une simplification excessive mais cela signifie que l'ensemble du processus est généralement lié au processeur. Ses performances sont donc directement liées à la vitesse du processeur et à l'efficacité de la pile. En termes pratiques, les processeurs et les systèmes d'exploitation modernes devraient être en mesure de «faire rebondir» le trafic en boucle bien plus rapidement que 40 Gbps - ce qui est la carte réseau la plus rapide que je suis capable d'acheter aujourd'hui. J'espère que cela t'aides.

Chopper3
la source
39

Non tout le trafic 127.0.0.1 n'atteint jamais le réseau physique, il est traité par un adaptateur en boucle dans le noyau.

Zypher
la source
donc ça veut dire super rapide à droite :)
@ Mrk Mnl oui vous pariez. Pour mon ping 00ms en utilisant XAMP 1.7.4
12
aucune adresse locale ne frappe jamais le réseau physique. 127.0.0.1 un seul d'entre eux
alvosu
1
"frapper le réseau physique" est un peu ambigu, car il pourrait arriver à votre carte réseau sans être envoyé et ne pas toucher le réseau physique, de toute façon s'il est renvoyé par le noyau, c'est-à-dire le système d'exploitation, évidemment, il ne va pas à la carte réseau.
7

127.0.0.1 n'est pas plus rapide que toute autre adresse IP locale. L'adresse IP locale rapide, car elle n'utilise pas de périphérique physique ni de couche double (elle ne frappe jamais votre carte réseau).

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
Alvosu
la source
4
Il y a énormément de mal à cette réponse. C'est plus rapide. Si vous créez la fenêtre de collision, le facteur limitant dépendra du changement de contexte.
symcbean
génial, juste ce que je cherchais. Je voulais voir ma limite supérieure lors de l'exécution du client sur le serveur localement ... merci pour la réponse !!!!
Dean Hiller
@symcbean: pouvez-vous préciser le "tort" de cette réponse, s'il vous plaît?
Sam Axe
5

Cela dépend du système d'exploitation que vous utilisez, mais Windows 2000 contenait un bogue où les requêtes sur l'adaptateur de bouclage seraient lentes. Il y a des anecdotes inutiles pour vous!

S'il vous plaît voir cet article kb pour plus d'informations.

Matthew Steeples
la source
2

Je dirais plutôt que vous trouvez votre réponse dans son nom même. Le nom dit: "Adresse de bouclage local", ce qui signifie que le réseau n'intervient jamais dans le processus et que la demande est elle-même rebouclée localement.

ikartik90
la source
J'étais sur le point de publier le même message quand j'ai remarqué que vous m'y battiez. En effet, "adresse de bouclage" devrait donner un indice :)
luis.espinal
la question était à quelle vitesse, je sais ce que ça fait
Le nom ne vous dit réellement rien. Par exemple, une boucle RS-232 physique sera aussi lente que votre port série, alors que si vous en implémentiez au niveau du pilote, ce serait plus rapide. Bien sûr, localhost sera géré par un logiciel, mais vous ne pouvez pas le savoir simplement à partir du nom "loopback". Au cas où vous seriez trop jeune pour le savoir, je vous donne google.com/search?q=rs232+loopback&tbm=isch
aij
1

Si vous êtes sur Linux ...

tapez "ifconfig -a" en tant que root ...

Notez la ligne "interruption" sur toutes les cartes réseau ... remarquez qu'il n'y a pas de ligne "interruption" sur "lo" ... cela signifie qu'il n'y a même pas d'interruption affectée, donc pas mal du tout ;-)

jim_m_somewhere
la source
ça n'a aucun sens. Cela n'a aucun sens pour un périphérique virtuel et ne dit rien sur ses performances.
sleeplessnerd