Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
低帯域環境を楽しむその1
Search
kazueda
December 29, 2020
Programming
91
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
低帯域環境を楽しむ その1
kazueda
December 29, 2020
More Decks by kazueda
See All by kazueda
16ビットCPU用FUZIXを実機で動かす USBキーボード接続編
kazueda
0
19
16ビットCPU用FUZIXを実機で動かす キー入力編
kazueda
0
25
初代プレステでuCLinuxその2「rootfsが公開されました」
kazueda
0
66
初代プレステでuCLinuxその1 Linuxのinitで「Hello World」
kazueda
0
100
Raspberry pi 400をUSBキーボードとして使う
kazueda
0
450
「東海道らぐ」のブースで「USBガジェット三昧」の展示
kazueda
0
52
Raspberry Pi Pico WでRNDIS-Wifiブリッジ
kazueda
0
130
Raspberry pi pico2の亜種で Risc-V用Linux-nommuを起動する話
kazueda
1
590
PythonのソースファイルをLLMで修正した話
kazueda
0
130
Other Decks in Programming
See All in Programming
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
490
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
160
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3.6k
AIが無かった頃の素敵な出会いの話
codmoninc
1
390
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.4k
What's New in Android 2026
veronikapj
0
250
VibeCodingからAgenticWorkflowへ
starfish719
0
330
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
240
メールのエイリアス機能を履き違えない
isshinfunada
0
230
テーブルをDELETEした
yuzneri
0
140
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
310
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
300
Featured
See All Featured
Thoughts on Productivity
jonyablonski
76
5.3k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
260
Become a Pro
speakerdeck
PRO
31
6.2k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
450
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
The Curious Case for Waylosing
cassininazir
1
450
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Six Lessons from altMBA
skipperchong
29
4.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.3k
The SEO Collaboration Effect
kristinabergwall1
1
520
Transcript
低帯域環境を楽しむ その1 環境設定 鹿児島Linux勉強会 2020.12 2020. 12. 26 1 kazueda
か ず え だ
kazueda(かずえだ)の紹介 • 大阪出身、丙午、おとめ座、O型 • 科学者(化学) • 2003年4月から、浜松で働き始める • 自転車での移動が生活の足 •
趣味は、「ラジオを聴くこと」、 「アメリカのコミックの邦訳を読む こと」 • 「STAY HOME」期間にオンライン イベントの楽しさを知りました。 • 懇親会の楽しみ方を確立する前に、 オンライン懇親会のシーズンが終わ りそうです。 @kazueda 2 slideshare speaker deck
kazueda(かずえだ)の紹介 • 大阪出身、丙午、おとめ座、O型 • 科学者(化学) • 2003年4月から、浜松で働き始める • 自転車での移動が生活の足 •
趣味は、「ラジオを聴くこと」、 「アメリカのコミックの邦訳を読む こと」 • 可能な限りオンラインイベントに参 加して、発表するようにしています。 • ひと月に2回程度の発表がちょうど よいようです。 @kazueda 3 slideshare speaker deck
今回のお話 • これまでのお話 • 遅延から帯域制限に • 帯域制限の環境設定 • 帯域制限の実際 •
今後の展開 4
今回のお話 • これまでのお話 • 遅延から帯域制限に • 帯域制限の環境設定 • 帯域制限の実際 •
今後の展開 5
これまでのお話 • 9月のらぐでは、動画と音声のストリーミ ングのずれを何とかしようとしてました。 6
これまでのお話 • 9月のらぐでは、動画と音声のストリーミ ングのずれを何とかしようとしてました。 7
これまでのお話 • 9月のらぐでは、動画と音声のストリーミ ングのずれを何とかしようとしてました。 8
matokenさんの提案 9
今回のお話 • これまでのお話 • 遅延から帯域制限に • 帯域制限の環境設定 • 帯域制限の実際 •
今後の展開 10
Linuxのtcコマンド見つけました • 遅延を設定できます。 • 帯域制限できます。 11
Linuxのtcコマンド見つけました • 遅延を設定できます。 • 帯域制限できます。 12
Linuxのtcコマンド見つけました • 遅延を設定できます。 • 帯域制限できます。 13 帯域制限できます!!
Linuxのtcコマンド見つけました • 遅延を設定できます。 • 帯域制限できます。 Kazuedaの使っているIIJのsimは、低速、高 速切り替えられるので便利。 低速の速度制限時は、無制限に使えます。 14 帯域制限できます!!
Linuxのtcコマンド見つけました • 遅延を設定できます。 • 帯域制限できます。 kazuedaの使っているIIJのsimは、低速、高 速切り替えられるので便利。 低速の速度制限時は、無制限に使えます。 15 速度制限時の環境を構築して、
何が楽しめるか探してみます。
IIJmioのSIMの上限を超えた世界 • 速度制限下では、以下の通りです。 参考:モデム 300~28800 bps 16
IIJmioのSIMの上限を超えた世界 • 速度制限下では、以下の通りです。 参考:モデム 300~28800 bps 17 どのように楽しみましょうか。
今回のお話 • これまでのお話 • 遅延から帯域制限に • 帯域制限の環境設定 • 帯域制限の実際 •
今後の展開 18
人工的に回線速度を遅くします 1. Raspberry pi 1BにUSB-LANアダプタ、TTL- USBケーブルをつなぐ 2. 有線LAN-有線LANブリッジを作成 3. tcコマンドで設定
19
1. Raspberry pi 1BにUSB-LANアダプ タ、TTL-USBケーブルをつなぐ 20 <-USB-LAN アダプタ (eth1) <-LANケーブル
(eth0) ターミナルとの接続 USB-TTL RasPi 5V 4pin 5V GND 6pin GND RX 8pin TX TX 10pin RX ②④⑥⑧⑩
2. 有線LAN-有線LANブリッジを作成 1. ブリッジユーティリティのインストール 2. 新しいブリッジを作る”addbr <brname>” 3. ブリッジを追加”addif <brname>
<ifname>” 21 $ sudo apt install bridge-utils $ sudo brctl addbr br0 $ sudo brctl addif br0 eth0 $ sudo brctl addif br0 eth1
2. 有線LAN-有線LANブリッジを作成 1. ブリッジユーティリティのインストール 2. 新しいブリッジを作る”addbr <brname>” 3. ブリッジを追加”addif <brname>
<ifname>” 4. 設定が反映されているか確認 22 $ brctl show bridge name bridge id STP enabled interfaces br0 no eth0 eth1 ############
2. 有線LAN-有線LANブリッジを作成 1. ブリッジユーティリティのインストール 2. 新しいブリッジを作る”addbr <brname>” 3. ブリッジを追加”addif <brname>
<ifname>” 4. 設定が反映されているか確認 5. インターフェースの有効化 23 $ sudo ip link set eth0 up $ sudo ip link set eth1 up $ sudo ip link set br0 up
2. 有線LAN-有線LANブリッジを作成 1. ブリッジユーティリティのインストール 2. 新しいブリッジを作る”addbr <brname>” 3. ブリッジを追加”addif <brname>
<ifname>” 4. 設定が反映されているか確認 5. インターフェースの有効化 24 $ sudo ip link set eth0 up $ sudo ip link set eth1 up $ sudo ip link set br0 up 実験用なので、シェルスクリプトにしておくと便利
bridge.sh #!/bin/bash sudo brctl addbr br0 sudo brctl addif br0
eth0 sudo brctl addif br0 eth1 sudo ip link set eth0 up sudo ip link set eth1 up sudo ip link set br0 up 25
今回のお話 • これまでのお話 • 遅延から帯域制限に • 帯域制限の環境設定 • 帯域制限の実際 •
今後の展開 26
速度測定はspeedtest-cli ↑ リストに掲載の任意のサーバーの番号 27 https://github.com/sivel/speedtest-cli $ speedtest-cli --list $ speedtest-cli
–-server @@@@@
帯域を制限しよう • Bash script見つけました 28 https://gist.github.com/CGenie/9c8947fc9474561ddfb3 https://gist.github.com/obscurerichard/3740206 https://gist.github.com/denilsonsa/5176e1c9b6a119594ce0
帯域を制限しよう 1. GPRS 2. GSM 3. EDGE 4. 2.5G 5.
GPRS 6. 3G 7. 4G 8. 2.4k 9. 9.6k 10. 14.4k 11. 28.8k 12. modem-56k 13. 56k 14. T1 15. T3 16. DSL 17. cablemodem 18. wifi-a 19. wifi-b 20. wifi-g 21. wifi-n 22. eth-10 23. eth-100 24. eth-1000 25. vsat 26. vsat-busy 29 https://gist.github.com/CGenie/9c8947fc9474561ddfb3 利用可能な設定
制限前 Hosted by tdlabs (Sakai) [203.15 km]: 45.193 ms T
g w … Download: 10.54 Mbit/s T g … Upload: 7.13 Mbit/s 30 https://gist.github.com/CGenie/9c8947fc9474561ddfb3 ブリッジを通すだけでかなり遅くなっています
帯域を制限しよう Hosted by tdlabs (Sakai) [203.15 km]: 1128.082 ms T
g w … Download: 3.05 Mbit/s T g … Upload: 0.34 Mbit/s 31 https://gist.github.com/CGenie/9c8947fc9474561ddfb3 param modem-14.4k command=slow bandwidth=14400bps latency=150ms $ sudo ./slow.sh modem-14.4k
帯域を制限しよう Hosted by tdlabs (Sakai) [203.15 km]: 439.276 ms Testing
download speed... Download: 0.44 Mbit/s Testing upload speed... Upload: 0.00 Mbit/s 32 https://gist.github.com/CGenie/9c8947fc9474561ddfb3 param modem-2.4k command=slow bandwidth=2400bps latency=250ms $ sudo ./slow.sh modem-2.4k
帯域を制限しよう Hosted by tdlabs (Sakai) [203.15 km]: 509.974 ms Testing
download speed... Download: 0.19 Mbit/s Testing upload speed... Upload: 0.00 Mbit/s 33 https://gist.github.com/CGenie/9c8947fc9474561ddfb3 param modem-1200 command=slow bandwidth=1200bps latency=280ms $ sudo ./slow.sh modem-1200
帯域を制限しよう v g f g … Cannot retrieve speedtest configuration
ERRO: <urlopen error [Errno -3] Temporary failure in name resolution> 34 https://gist.github.com/CGenie/9c8947fc9474561ddfb3 param modem-300 command=slow bandwidth=300bps latency=300ms $ sudo ./slow.sh modem-300
帯域を制限しよう v g f g … Cannot retrieve speedtest configuration
ERRO: <urlopen error [Errno -3] Temporary failure in name resolution> 35 https://gist.github.com/CGenie/9c8947fc9474561ddfb3 param modem-300 command=slow bandwidth=300bps latency=300ms $ sudo ./slow.sh modem-300 Bandwidthが300bpsだと接続もできませんでした
まとめ • Raspberry piで有線-有線ブリッジを作成 • tcコマンドで帯域制限 • 300 bpsではスピードテストできず 36
まとめ • Raspberry piで有線-有線ブリッジを作成 • tcコマンドで帯域制限 • 300 bpsではスピードテストできず 今後の展開
• 帯域制限下でストリーミングを楽しむ • 他の帯域制限法を試す 37
まとめ • Raspberry piで有線-有線ブリッジを作成 • tcコマンドで帯域制限 • 300 bpsではスピードテストできず 今後の展開
• 帯域制限下でストリーミングを楽しむ • 他の帯域制限法を試す 38 おしまい