- PR -

PINGのタイム値について。

投稿者投稿内容
おちもん
会議室デビュー日: 2005/05/19
投稿数: 7
投稿日時: 2006-08-24 11:23
Windows2003サーバからClient01(XP)に対してPINGを当てましたところ1msで返答がありました。ところが逆にClient01からWindows2003サーバに対してPINGを当てますと10msの返答です。なぜこのような事が起こるのかご存知のかたいらっしゃいますでしょうか。宜しくお願いいたします。
BackDoor
ぬし
会議室デビュー日: 2006/02/20
投稿数: 831
投稿日時: 2006-08-24 12:06
こんにちは。

引用:

おちもんさんの書き込み (2006-08-24 11:23) より:
Windows2003サーバからClient01(XP)に対してPINGを当てましたところ1msで返答がありました。ところが逆にClient01からWindows2003サーバに対してPINGを当てますと10msの返答です。


通常サーバには複数のクライアント機からのアクセスが集中しますので、上記の
状態は不思議ではないと思います。
→ 休日、あるいは深夜等のアクセスするクライアント数が少ない時間帯でも
  状況が変わらなければ、何らかの問題がある可能性がありますが、たぶん
  問題ないと思われますね。
おちもん
会議室デビュー日: 2005/05/19
投稿数: 7
投稿日時: 2006-08-24 12:31
BackDoorさんありがとうございます。
私も問題ないと思うのですが、細かい上司に聞かれまして投稿しました。
特に現在問題は出ていないのですが、一応深夜に同じテストをしてみます。
ありがとうございました。
綾瀬
ぬし
会議室デビュー日: 2002/07/31
投稿数: 393
お住まい・勤務地: どっちも3階
投稿日時: 2006-08-24 12:59
こんにちは。

今手元にServerOS無いのでそちらは試してないのですが、
clientからpingをした時の表示が「time<10ms」のように
「=」ではなく「<」となってませんか?
たぶん10ms以上かかる場合は「=」になっていると思います。

調べてないですが、Windowsのpingコマンドの仕様として10ms以下の場合は
ひとくくりにされてしまうんだろうなと勝手に思ってます。

(これがServerOSのpingコマンドだと、1ms以下でくくられる、とかなんですかね)
koji
常連さん
会議室デビュー日: 2004/11/04
投稿数: 36
お住まい・勤務地: 北海道
投稿日時: 2006-08-24 15:21
近くにWindows98があったので試したところ

time=1ms
time=2ms
time=3ms
time<10ms

が表示出来たのは確認しました。
「いちにいさん…いっぱい」が思い浮かんだ
おちもん
会議室デビュー日: 2005/05/19
投稿数: 7
投稿日時: 2006-08-24 17:17
皆さんいろいろと情報有難うございます。
綾瀬さんのおっしゃるとおり10msの時も<でした。

私も様々な機器にPINGを当てましたところ同じ1msですが=,<と表示されますね。
=と<の違い調べてみます。
うえだ
常連さん
会議室デビュー日: 2006/05/22
投稿数: 34
投稿日時: 2006-08-27 11:42
こんにちは。

>おちもんさん

面白い話題ですね。

皆さんの回答によると XP (98 も?) と 2003 の Ping の実装が異なる?ようですね。我が家は Windows 2003 SP1 なのですが、同一 LAN 内へ Ping すると「time<1ms」表示になりました (テスト環境が悪いのか、「=1ms」は確認できませんでした)。

もっと追求したいなら、(Windows 標準の Ping ではなく) 世に出回っている Ping ツールで標準 Ping と独自 Ping で、Round Trip Time 表示がどう変わってくるか?調べてみる方法もあるかも知れませんね。

ちなみに秒単位の計測ですと、Windows 9x 系は PerformanceCounter で基板からクロックを拾い、SystemFrequency で割って、、、という方法で精度の高い時間を取得することが出来きないように思います。今回の話題とは関係無さそうですが、こういった部分で OS の実装差は少々、ありますね。

ではでは。うえだ@今日も蒸しますね、でした。
coasm
大ベテラン
会議室デビュー日: 2001/11/26
投稿数: 237
投稿日時: 2006-08-27 13:00
今まで意識したことなかったのですが、
ping 127.0.0.1
した(即座にreplyがあるはず)場合に、

Windows2000 だと <10ms
WindowsXP だと <1ms
と表示されます。

タイマーの分解能がOSによって異なるのでしょう。
95/98 は 55ms、NT/2000 は10msでしたが、XPは1msまで取れるのでしょうか?

[追記]
timeGetTime API を使えば1ms単位の経過時間を取得できるはずですが、
9x系、NT/2000、XP/2003で、実際の精度にはかなり差があるようです。
その辺を考慮してわざわざ表示形式を変えてあるのかもしれません。


[ メッセージ編集済み 編集者: coasm 編集日時 2006-08-27 13:10 ]

スキルアップ/キャリアアップ(JOB@IT)