僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
大阪駅から加古川駅までずっとpingだけしていた。
$ ping $GLOBAL_IP // 64 bytes from $GLOBAL_IP: icmp_seq=2849 ttl=55 time=133 ms 64 bytes from $GLOBAL_IP: icmp_seq=2850 ttl=55 time=130 ms ^C --- $GLOBAL_IP ping statistics --- 2850 packets transmitted, 2099 received, +5 duplicates, +4 errors, 26% packet loss, time 2865766ms rtt min/avg/max/mdev = 0.000/12852.489/171128.963/30341.402 ms, pipe 170
$ awk 'BEGIN{nst="foo100"; n=50; sub("foo","",nst) print nst, "<", n if(nst < 50) { print nst,"は", n, "未満"} else { print nst, "は", n, "以上" } }' 100 < 50 100 は 50 未満
くれるときもあるけど。
$ awk 'BEGIN{nst="foo100" sub("foo", "", nst) print nst, nst * 2}' 100 200
で、前に書いたスクリプトいくらか訂正。
{if($1==64) { serial += 1 sub("icmp_seq=","",$5) sub("time=","",$7) while (serial > int($5)) { print serial, 2000000 serial += 1 } print $5,$7 } }
/dev/urandom で作った64MB(67108864Byte)のイメージをダウンロード。
その間、pingのrttはこんなふうになった。
アップロードは、もう少し「測定」らしいことができるようになってから
試すとするか。
と思ったが、やはりscpで試してしまった。
なんとなくpython3で書いた。
バイナリモードの読み込みで開き、一度に1MBまでreadする。
繰り返して末尾に行き着いたら(-1を返さないんだろうか)、
そこで読み込み終了。
#!/usr/bin/env python3 from time import sleep from sys import argv filename = argv[1] def fread(fi): size =1 step = 1048576 ret = 0 f = open(fi, 'rb') while size: size = len(f.read(step)) ret += size f.close() return ret print(fread(filename))
ただし遅い。当然ファイルが大きくなるほど遅くなる。
$ truncate -s 10M test.img $ time python3 filesize_p.py3 test.img 10485760 real 0m0.060s user 0m0.048s sys 0m0.008s $ truncate -s 10G test.img $ time python3 filesize_p.py3 test.img 10737418240 real 0m3.176s user 0m0.112s sys 0m3.060s
OSに教えてもらう方法は、OSとのインターフェースを 確認してから。
当初/dev/urandomによる32MBで試したが、時間が掛りすぎるようなので
8MBでやり直す。
リモートホストにアップロードさせながら、例によってPi B+でpingを
打ち続ける。
$ ping $REMOTE_IP // 64 bytes from $REMOTE_IP: icmp_seq=905 ttl=55 time=59.7 ms 64 bytes from $REMOTE_IP: icmp_seq=906 ttl=55 time=59.6 ms ^C --- 219.94.224.152 ping statistics --- 906 packets transmitted, 851 received, 6% packet loss, time 905851ms rtt min/avg/max/mdev = 58.959/31742.458/57696.182/12070.898 ms, pipe 58
rttの平均が 5分余り、最大というより最悪が10分近くになった。
$ time scp 8M.img $SECOND_HOST:
Enter passphrase for key '/home/$USER/.ssh/$KEY:
8M.img 100% 8192KB 11.5KB/s 11:55
real 14m40.204s
user 0m0.460s
sys 0m0.128s
平均値で11.5KB/sとはいっても、 かなりむらがあった。これもなんとか捕まえなければ。
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。