127.0.0.1은 얼마나 빠릅니까? 루프백 주소로 전송 된 데이터를

NIC에 전혀 연결되어 있는지 또는 OS 또는 드라이버가 루프백 주소로 전송 된 데이터를 가로 채서 즉시 반환하는지 궁금합니다.

신호가 실제로 내 NIC로 이동 한 후 NIC가 신호를 반환합니까?



답변

특정 OS는 언급하지 않지만 대부분의 경우 데이터가 IP에 도달 할 때까지 데이터가 스택으로 내려가는 것입니다. 이는 과도하게 단순화되었지만 전체 프로세스가 일반적으로 CPU에 바인딩되어 있으므로 성능이 CPU 속도와 스택 효율성에 직접 연결되어 있음을 의미합니다. 실질적인 측면에서 현대 CPU와 OS는 40Gbps보다 훨씬 빠른 루프백 트래픽을 ‘바운스’할 수 있어야합니다. 이것은 제가 오늘 구입할 수있는 가장 빠른 NIC입니다. 도움이 되었기를 바랍니다.


답변

모든 127.0.0.1 트래픽이 실제 네트워크에 도달하지는 않으며 커널의 루프백 어댑터에 의해 처리됩니다.


답변

Microsoft가 Windows 8 및 Windows Server 2012에 추가 한 “루프백 빠른 경로”기능에 관심이있을 수 있습니다. 참조 :

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

또한 루프백에 의해 최적화가 있거나없는 경로를 보여줍니다.


답변

127.0.0.1은 다른 로컬 IP보다 빠르지 않습니다. 물리적 장치와 2 계층을 사용하지 않기 때문에 로컬 IP가 빠릅니다. (NIC에 절대로 영향을 미치지 않습니다)

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


답변

실행중인 OS에 따라 다르지만 Windows 2000에는 루프백 어댑터의 요청이 느린 곳에 버그가 있습니다. 쓸모없는 퀴즈가 있습니다!

자세한 내용은이 KB 기사 를 참조하십시오.


답변

차라리 당신이 그 이름 자체에서 답을 찾으라고 말하고 싶습니다. “로컬 루프백 주소”라는 이름은 네트워크 자체가 프로세스에 개입하지 않으며 요청 자체가 로컬로 루프백됨을 의미합니다.


답변

당신이 리눅스에 있다면 …

“ifconfig -a”를 루트로 입력하십시오 …

모든 NIC의 “인터럽트”라인에 주목하십시오. “lo”에는 “인터럽트”라인이 없습니다. 즉, 인터럽트가 할당되지 않았 음을 의미합니다.