Seberapa cepat 127.0.0.1?

37

Saya bertanya-tanya apakah itu terkait dengan NIC saya sama sekali atau jika OS atau driver memotong dan segera mengembalikan data yang dikirim ke alamat loopback?

Apakah sinyal benar-benar berjalan ke NIC saya kemudian NIC mengembalikannya?

serv-inc
sumber
5
Lebih banyak hal sepele yang keseluruhan 127/8 didedikasikan untuk loop kembali
Jacob
2
Akan menarik untuk melihat beberapa throughput dunia nyata dan / atau angka latensi untuk loopback jika ada yang memilikinya.
NPE
3
Bahkan jika elektron bepergian ke sana, NIC mungkin tidak akan mengembalikan elektron yang sama :)
Halil Özgür
:) ya saya harus mengatakan sinyal ..
1
tidak ada tempat seperti 127.0.0.1

Jawaban:

29

Anda tidak menyebutkan OS tertentu tetapi untuk sebagian besar semua yang terjadi adalah bahwa data bergerak turun hingga mencapai IP di titik mana itu cukup banyak dikirim kembali. Itu penyederhanaan besar tetapi berarti bahwa seluruh proses biasanya terikat CPU sehingga kinerjanya karena itu terkait langsung dengan kecepatan CPU ditambah efisiensi tumpukan. Dalam istilah praktis, CPU dan OS modern harus dapat 'memantulkan' lalu lintas loopback jauh lebih cepat dari 40Gbps - yang merupakan NIC tercepat yang saya pikir dapat saya beli hari ini. Semoga ini membantu.

Chopper3
sumber
39

Tidak semua lalu lintas 127.0.0.1 tidak pernah menyentuh jaringan fisik, itu akan diproses oleh adaptor loop kembali di kernel.

Zypher
sumber
jadi itu artinya super cepat ya :)
@ Mr Mnl ya Anda bertaruh. Untuk ping 00ms saya menggunakan XAMP 1.7.4
12
alamat lokal mana pun tidak pernah menyentuh jaringan fisik. 127.0.0.1 hanya satu dari mereka
alvosu
1
"Memukul jaringan fisik" agak ambigu karena bisa sampai ke NIC Anda tanpa dikirim dan tidak mengenai jaringan fisik, toh jika dikembalikan oleh kernel, yaitu OS, jelas itu tidak sampai ke NIC.
7

127.0.0.1 tidak lebih cepat dari ip lokal lainnya. IP lokal cepat, karena tidak menggunakan perangkat fisik dan 2-lapisan. (Tidak pernah mengenai NIC Anda)

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
sumber
4
Ada banyak kesalahan dengan jawaban ini. Lebih cepat. Jika Anda menghapus jendela tabrakan maka faktor pembatas akan didorong oleh pengalihan konteks.
symcbean
luar biasa, hanya apa yang saya cari. Saya ingin melihat batas atas saya ketika menjalankan klien ke server secara lokal ... terima kasih atas jawabannya !!!!
Dean Hiller
@symcbean: bisakah Anda menjelaskan "kesalahan" jawaban ini?
Sam Axe
5

Tergantung pada OS apa yang Anda jalankan, tetapi Windows 2000 memiliki bug di dalamnya di mana permintaan pada adaptor loopback akan lambat. Ada beberapa hal sepele yang tidak berguna untukmu!

Silakan lihat artikel kb ini untuk informasi lebih lanjut.

Matthew Steeples
sumber
2

Saya lebih suka mengatakan bahwa Anda menemukan jawaban Anda dalam nama itu sendiri. Nama itu mengatakan: "Alamat Loopback Lokal", yang dengan sendirinya berarti bahwa jaringan tidak pernah campur tangan dalam proses dan permintaan itu sendiri dilingkarkan kembali secara lokal.

ikartik90
sumber
Saya akan memposting yang sama ketika saya melihat Anda mengalahkan saya untuk itu. Memang 'alamat loopback' harus memberikan petunjuk :)
luis.espinal
pertanyaannya adalah seberapa cepat, saya tahu apa fungsinya
Nama itu sebenarnya tidak memberi tahu Anda apa-apa. Misalnya, loop kembali RS-232 fisik akan sama lambatnya dengan port serial Anda, sedangkan jika Anda mengimplementasikannya pada level driver akan lebih cepat. Tentu saja localhost akan ditangani dalam perangkat lunak, tetapi Anda tidak bisa mengatakan itu hanya dari nama "loopback". Jika Anda terlalu muda untuk mengetahui hal-hal ini, saya beri Anda google.com/search?q=rs232+loopback&tbm=isch
aij
1

Jika Anda menggunakan Linux ...

ketik "ifconfig -a" sebagai root ...

Perhatikan baris "interupsi" pada semua NIC ... perhatikan bahwa tidak ada baris "interupsi" pada "lo" ... itu berarti tidak ada interupsi yang ditugaskan padanya, jadi sangat cepat ;-)

jim_m_somewhere
sumber
itu tidak masuk akal. Ini tidak masuk akal untuk perangkat virtual dan tidak mengatakan apa-apa tentang kinerjanya.
sleeplessnerd