Apa perbedaan antara ping-w dan ping -W?

15

Untuk apa -wbendera (tenggat waktu) itu ping? Saya tidak dapat menemukan deskripsi di pinghalaman manual; hanya untuk -W, yang membutuhkan detik sebagai parameter. Apa perbedaan di antara mereka, dan bagaimana saya bisa mengatur batas waktu ping (jika tuan rumah tidak merespons) ke 200 ms?

Rafael T
sumber
1
Pada sistem operasi apa, dan jika Linux, distribusi, dan paket apa yang pingdapat dieksekusi? Ada beberapa versi ping yang berbeda, dengan opsi yang berbeda.
Gilles 'SO- stop being evil'

Jawaban:

20

Dari man ping:

   -w deadline
          Specify a timeout, in seconds, before ping exits regardless of how many packets have been sent or received. In this case ping does not stop after count packet are sent, it waits either for deadline expire or until count probes are answered or for some error
          notification from network.

   -W timeout
          Time to wait for a response, in seconds. The option affects only timeout in absense of any responses, otherwise ping waits for two RTTs.

Yaitu, -wmengatur batas waktu untuk seluruh sesi program . Jika Anda mengatur -w 30, ping(program) akan keluar setelah 30 detik.

-Wdi sisi lain mengatur batas waktu untuk ping tunggal . Jika Anda mengatur -W 1, upaya ping tertentu akan habis.

Adapun cara mengatur ping timeout individu 200ms, saya tidak percaya ini bisa dilakukan dengan iputilsversi ping. Anda mungkin ingin mencoba pemrograman langsung dengan pustaka ICMP.

Chris Down
sumber
2
oh, halaman manual saya (archlinux) hilang -wbendera, tetapi memiliki deskripsi. Saya hanya percaya itu milik -W. Jadi tidak ada cara untuk menentukan batas waktu yang lebih kecil dari 1s?
Rafael T
@ RafaelT Tidak sejauh yang saya ketahui.
Chris Down
Untuk membuatnya jelas: jika Anda menggunakan -w, -cakan diabaikan. Jika Anda hanya membutuhkan satu ping, Anda dapat menggunakan -c 1 -W 4atau apa pun yang merupakan batas waktu yang tepat untuk Anda.
John
1

Halaman manual saya (Fedora 18, iputils-20121221-1.fc18) mengatakan

   -w deadline
          Specify  a  timeout, in seconds, before ping exits regardless of
          how many packets have been sent or received. In this  case  ping
          does  not  stop after count packet are sent, it waits either for
          deadline expire or until count probes are answered or  for  some
          error notification from network.

   -W timeout
          Time to wait for a response, in seconds. The option affects only
          timeout in absence of any responses, otherwise  ping  waits  for
          two RTTs.
vonbrand
sumber
1

Semua jawaban bagus, tapi hati-hati dengan kekhasan ini jika (seperti saya) Anda memindahkan kode antar platform. Teks di bawah ini berasal dari dokumentasi 'man ping' masing-masing.

Di Mac OS X:

-W waittime

    Waktu dalam milidetik untuk menunggu balasan untuk setiap paket yang dikirim.

Di Raspberry Pi:

-W timeout

    Saatnya menunggu jawaban, dalam detik .

Saya memberi kode pada Mac untuk menunggu 1 detik (1.000 ms) sebagai -W 1000, tetapi ketika kode ini pindah ke Pi, menunggu hingga 1.000 detik!

Yutenji
sumber