本ページは広告が含まれています。気になる広告をクリック頂けますと、サーバ運営費になります(^^
さくらのクラウドに立てたサーバに映像配信
日本語 3Mbps,800Kbps,300Kbps
英語 3Mbps,800Kbps,300Kbps
北京語 3Mbps,800Kbps,300Kbps
合計 約12Mbpsの映像配信をしていた。インターネットルータで出ている速度は上り130Mbps程度だった。
インターネット速度はいつもwiled speed で計測します。
日本語だけエンコードしている間は問題が出なかったが、英語・北京語も合わせてエンコードを始めたところ、クライアント側で時々映像が止まる事が起こった。
ログを確認したらやっぱりボロボロ止まってる。deleteStreamって事は映像が届かなくて切断したって事。ルータから、sakuraのクラウドへのpingが20ms程度で安定している時は特にこの現象は起きない。60ms移行が出てきた時は要注意。
ルータ兼 nginxサーバのログ
2017/04/28 17:39:56 [info] 1626#0: *37 disconnect, client: sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess, server: ngx-relay 2017/04/28 17:39:56 [info] 1626#0: *37 deleteStream, client: sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess, server: ngx-relay 2017/04/28 17:39:59 [info] 1626#0: *3 relay: create push name='stream_hi' app='' playpath='' url='sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess', client: 127.0.0.1, server: 0.0.0.0:1935 2017/04/28 17:40:58 [info] 1626#0: *44 recv() failed (104: Connection reset by peer), client: sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess, server: ngx-relay 2017/04/28 17:40:58 [info] 1626#0: *44 disconnect, client: sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess, server: ngx-relay 2017/04/28 17:40:58 [info] 1626#0: *44 deleteStream, client: sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess, server: ngx-relay 2017/04/28 17:41:01 [info] 1626#0: *3 relay: create push name='stream_hi' app='' playpath='' url='sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess', client: 127.0.0.1, server: 0.0.0.0:1935 2017/04/28 17:46:34 [info] 1626#0: *45 recv() failed (104: Connection reset by peer), client: sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess, server: ngx-relay 2017/04/28 17:46:34 [info] 1626#0: *45 disconnect, client: sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess, server: ngx-relay 2017/04/28 17:46:34 [info] 1626#0: *45 deleteStream, client: sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess, server: ngx-relay 2017/04/28 17:46:37 [info] 1626#0: *3 relay: create push name='stream_hi' app='' playpath='' url='sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess', client: 127.0.0.1, server: 0.0.0.0:1935 2017/04/28 17:50:07 [info] 1626#0: *46 disconnect, client: sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess, server: ngx-relay 2017/04/28 17:50:07 [info] 1626#0: *46 deleteStream, client: sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess, server: ngx-relay 2017/04/28 17:50:10 [info] 1626#0: *3 relay: create push name='stream_hi' app='' playpath='' url='sakura.hanako.jp/multi_jp/stream_hi?user=live&pass=suess', client: 127.0.0.1, server: 0.0.0.0:1935 2017/04/28 17:58:22 [info] 1626#0: *31 recv() failed (104: Connection reset by peer), client: sakura.hanako.jp/multi_jp/stream_lw?user=live&pass=suess, server: ngx-relay 2017/04/28 17:58:22 [info] 1626#0: *31 disconnect, client: sakura.hanako.jp/multi_jp/stream_lw?user=live&pass=suess, server: ngx-relay 2017/04/28 17:58:22 [info] 1626#0: *31 deleteStream, client: sakura.hanako.jp/multi_jp/stream_lw?user=live&pass=suess, server: ngx-relay 2017/04/28 17:58:25 [info] 1626#0: *7 relay: create push name='stream_lw' app='' playpath='' url='sakura.hanako.jp/multi_jp/stream_lw?user=live&pass=suess', client: 127.0.0.1, server: 0.0.0.0:1935
この時のPingログ かなりばらつきが
1408 bytes from *.*.*.*: icmp_seq=933 ttl=56 time=382 ms 1408 bytes from *.*.*.*: icmp_seq=934 ttl=56 time=19.3 ms 1408 bytes from *.*.*.*: icmp_seq=935 ttl=56 time=27.0 ms 1408 bytes from *.*.*.*: icmp_seq=936 ttl=56 time=31.2 ms 1408 bytes from *.*.*.*: icmp_seq=937 ttl=56 time=30.1 ms 1408 bytes from *.*.*.*: icmp_seq=938 ttl=56 time=12.5 ms 1408 bytes from *.*.*.*: icmp_seq=939 ttl=56 time=11.4 ms 1408 bytes from *.*.*.*: icmp_seq=940 ttl=56 time=22.2 ms 1408 bytes from *.*.*.*: icmp_seq=941 ttl=56 time=15.6 ms 1408 bytes from *.*.*.*: icmp_seq=942 ttl=56 time=702 ms
同じ時間帯のCloudn(OCN)は安定 17ms 〜 18msで返ってきていた。
先日までずっと調子よかったのに、今日だけおかしい。先日との違いはサーバを停止させていた事。1週間ほど停止させ、本日起動しなおした。これが原因か?仮定としてはクラウド上のサーバは起動ごとにつかむネットワークが違うのではないか?
例えば、ヘビーユーザ(ヘビーなサービスを提供している)VMと同じセグメントに所属してしまうとそのヘビーユーザにひきずられて、インタネット速度が出ないとか。
試しにVMへ向けてTracerouteし、一度VMを停止させ、再度起動後Tracerouteし直すとどうなるか確認してみると、通信経路が変わった。
いや、だけどこれもあてにならない。停止させなくても時間と共に通信経路は変わるらしい。
traceroute to sakura.hanako.jp (*.*.*.*), 30 hops max, 60 byte packets 1 111.89.255.99 4.909 ms 4.894 ms 4.889 ms 2 210.153.251.197 5.001 ms 5.086 ms 5.111 ms 3 210.165.249.49 12.676 ms 12.844 ms 13.106 ms 4 210.165.241.246 11.500 ms 11.767 ms 11.968 ms 5 210.165.241.165 10.405 ms 10.487 ms 10.632 ms 6 210.150.215.178 10.512 ms 9.947 ms 9.936 ms 7 157.17.130.210 10.246 ms 157.17.130.214 10.878 ms 157.17.130.54 10.794 ms 8 157.17.130.206 56.602 ms 51.258 ms 51.162 ms 9 157.17.136.202 10.699 ms 10.478 ms 157.17.136.194 11.073 ms 10 * * * 11 *.*.*.* 12.609 ms 13.572 ms 12.693 ms
traceroute to sakura.hanako.jp (*.*.*.*), 30 hops max, 60 byte packets 1 111.89.255.99 5.006 ms 4.997 ms 4.992 ms 2 210.153.251.197 5.117 ms 5.138 ms 5.244 ms 3 210.165.249.49 12.673 ms 12.966 ms 13.219 ms 4 210.165.241.246 10.314 ms 10.595 ms 10.801 ms 5 210.165.241.165 12.054 ms 12.259 ms 12.388 ms 6 210.150.215.178 10.619 ms 10.221 ms 10.306 ms 7 157.17.130.54 10.338 ms 157.17.130.50 10.538 ms 10.694 ms 8 157.17.130.94 10.786 ms 157.17.130.206 30.133 ms 29.851 ms 9 157.17.136.202 10.798 ms 10.523 ms 10.882 ms 10 * * * 11 *.*.*.* 10.412 ms 10.803 ms 10.721 ms
停止・起動後経路が変わったのでこれかぁと思ったのだけど、ずっと起動していても勝手に経路はかわっていたので、これが問題ではないみたいです。
午後9時過ぎてpingを打ちなおしてみたところ、
64 bytes from *.*.*.*: icmp_seq=93 ttl=56 time=10.9 ms 64 bytes from *.*.*.*: icmp_seq=94 ttl=56 time=10.8 ms 64 bytes from *.*.*.*: icmp_seq=95 ttl=56 time=10.4 ms 64 bytes from *.*.*.*: icmp_seq=96 ttl=56 time=10.4 ms 64 bytes from *.*.*.*: icmp_seq=97 ttl=56 time=10.4 ms 64 bytes from *.*.*.*: icmp_seq=98 ttl=56 time=10.6 ms 64 bytes from *.*.*.*: icmp_seq=99 ttl=56 time=10.2 ms 64 bytes from *.*.*.*: icmp_seq=100 ttl=56 time=10.3 ms
快調。映像が止まる事もなくなった。このping の速度ゆらぎが、映像配信がうまくいくかの指標になるのが良く分かった。
ping速度のアラートを出せるようなプログラムでも作ろうかなぁ。