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
95
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を実機で動かす「X68000でrootfsマウント編」
kazueda
1
13
16ビットCPU用FUZIXを実機で動かす USBキーボード接続編
kazueda
0
23
16ビットCPU用FUZIXを実機で動かす キー入力編
kazueda
0
29
初代プレステでuCLinuxその2「rootfsが公開されました」
kazueda
0
67
初代プレステでuCLinuxその1 Linuxのinitで「Hello World」
kazueda
0
110
Raspberry pi 400をUSBキーボードとして使う
kazueda
0
470
「東海道らぐ」のブースで「USBガジェット三昧」の展示
kazueda
0
55
Raspberry Pi Pico WでRNDIS-Wifiブリッジ
kazueda
0
130
Raspberry pi pico2の亜種で Risc-V用Linux-nommuを起動する話
kazueda
1
620
Other Decks in Programming
See All in Programming
Hono + Inertia + React で LP を構築した話
oukayuka
2
180
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.5k
Cloudflare is Agents
chimame
0
180
AI時代に学ぶ 好きなルール 嫌いなルール Linter編
shorty5121
0
200
源内ハンズオン概要編
hideg
0
220
Press start. Python's next generation.
willingc
PRO
3
250
React本体のコードリーディング
high_g_engineer
1
160
リアルな遅延を測る仕様
kota_yata
1
130
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
240
KotlinConf Extended South Korea 2026 Keynote
l2hyunwoo
0
120
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
250
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
570
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
エンジニアに許された特別な時間の終わり
watany
108
250k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.5k
Mobile First: as difficult as doing things right
swwweet
225
10k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
480
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.3k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.3k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
670
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
500
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 おしまい