测速是个什么意思呢?我ping百度要23ms,我下载文件1MB/s,都叫速度。

解决方案 »

  1.   

    你可以整128k数据(例如全是1)传送10次,让其返回收到消息的时间(用long型的整数表示时间Ticks即可),同时再返回这128k数据。由于你可以记录发出和收到回复的时间,再加上服务器返回的时间,利用简化了的NTP时间算法,你就可以计算出客户端跟服务器之间的时间差,于是也就可以大体计算出128k数据发送和返回所用的时间。然后重复10遍,取其平均值即可。发送128k数据的语句,具体来说就是执行(例如)这个语句var result = webclient.UploadData("http://1234.mysite.com/PingPong.ashx", datas);
      

  2.   


    感谢你的详细回复。为什么不简单地将发出和收到回复的时间的时间差的二分之一当做延时呢?还要动用NTP什么的。是不是来的时间与回的时间不相等?