2023-11-01 :-(
_ 自作パケット処理系の性能測定と可視化&改善のPDCAを回して最強のパケット処理系の作り方を学ぼう
さくらインターネットのひとによる資料。自社サービスの LTE の PGW (Packet data network Gateway. ref. モバイルネットワーク通信の仕組み|IoTコラム|さくらのIoT) をパフォーマンス測定した話題。
PGW は制御信号を処理する部分と、利用者信号を処理する部分から成る。ここでは利用者信号を処理する部分について。
利用者信号の部分を PGW-U と呼ぶこととする。PGW-U は内製。PGW-U については ENOG63 モバイルネットワークのデータプレーンをXDPで作る話 | ドクセル
PGW-U はようするにパケット処理をしている。パケットの処理を高性能化するにはハードウェアでがんばったりソフトウェアでがんばったりする。ハードウェアは高価なのでハードウェアとソフトウェアのハイブリッドでがんばる。
RSS (Receive Side Scaling) によりパケットを複数 CPU (マルチコア) に並列させ(ハードウェア)、各 CPU では内製 PGW-U で高速処理する(ソフトウェア)。
RSS は NIC のドライバレベルで処理するというもの。ドライバがパケットを CPU に分散させる。ここの図が分かりやすい。 Receive Side Scaling (RSS) の概要 - Windows drivers | Microsoft Learn
PGW-U では XDP を利用して高速化している。 XDP 何も分からない。
XDPとはeXpress Data Pathの略でLinuxカーネル内で動作するeBPFベースの高性能なパケット処理技術です. 制限のあるC言語で記述したプログラムをBPFバイトコードにコンパイルし,NICにアタッチすることでカーネルのプロトコルスタックより手前でパケット処理を行うことができます.
実際のパフォーマンス測定はホスト 2 つ用意しておこなう。 パケット生成用ホストと PGW-U 用ホスト。TRex でパケットを生成して PGW-U へ流す。TRex は DPDK を利用している。実装は Python で書かれている。
XDP とは
- eBPF をベースにした高性能パケット処理技術。Linux カーネル内で動作する。
- XDP 対応した NIC が必要(Native XDP)だが、 非対応 NIC であっても XDP を使うことができる(Generic XDP)
- パケット処理を高速する手段として DPDK もあるが、 DPDK と違い XDP は CPU コアを占有しない。そのぶんスループットとレイテンシは DPDK のほうが高い。
- 参考 XDPメモ(アーキテクチャ、性能、ユースケース) | bobuhiro11's blog
- 上記ブログで参照している論文 The eXpress data path の p.62 に性能評価の結果が書かれている。
- XDP のチュートリアル GitHub - xdp-project/xdp-tutorial: XDP tutorial 環境構築などから書かれている。
_ BIGLOBE 固定IPアドレス を契約した
固定IPアドレスは 10 年ぶりくらいに再契約 (以前は かもめインターネット を契約していたとき)
仕事で客先から VPN 接続を割り当てられる予定だが、その接続元として固定IPアドレスが必要である。現在は自社のIPアドレスはすでに登録済みなので、自社に出社すれば VPN 接続可能。在宅勤務やりたい場合は自宅に固定IPアドレスが必要。ということでせっかくだから固定IPアドレスを契約した。
最近は自分から遊び心が失われてしまっていたので、こうしてまた固定IPアドレスで遊ぶのもいい機会である。
2023-11-02 :-(
_ OpenStackの挙動をリアルタイムに可視化するためのシステム
OpenStack はいくつかコンポーネントから成る。そのうちインスタンス生成に関連する以下のものを監視する。
- Nova (インスタンス生成)
- OS の起動
- Cloud Init (OS の初期設定)
インスタンスID とリクエストID を追跡する。
可視化システムに使ったツールは以下のとおり。
- Logstash: ログ収集
- Redis: 一時保存DB
- Elasticsearch: 検索エンジンDB
- Kibana: 可視化
- Zabbix: 通知
2023-11-03 :-(
_ 日誌
艦これ合宿 1日目
2400 ころ出発
東名高速の工事渋滞。今までに体験したことないほどの渋滞であり遅延。
横浜町田ICを2時ころ通過。
途中で下道に降りる。わしは寝る。
0630 ころ秘密基地に到着
寝る
1140 ころ起床
艦これ三越のポスターを鑑賞
艦これ三越のコーヒーを飲んだり
艦これ三越のせんべいを食べたり。
1600 提督を迎えにいく
買い物をしたり温泉のお湯を汲んだり。風呂をいっぱいにするために 20 リットルタンクx10 必要らしい。 200kg です。
飯。おでんを食べたり酒を飲んだり酒を飲んだり。
2023-11-04 :-(
_ 日誌
艦これ合宿 2日目
0840 起床
窓のすぐ近くで寝ていたら日が昇ってきて日光により熱せられて暑い。
昼過ぎ。別の提督を迎えにいく。合流。
舟戸の番屋 。温泉に入ろうとしたが先客がたくさんいたので風呂は後回しにして昼飯。ブダイの煮付け。ブダイってなんだ。
温泉へ。いい湯だ。
少し早めに出て足湯へ。
スーパーで買い物して帰宅。
祭壇が作られたりしていた。
飯を食べたり艦これ三越のジュースを飲んだり艦これ三越のジュースを飲んだり。
2023-11-05 :-(
_ 日誌
艦これ合宿 3日目
帰る
道の駅「天城越え」 でわさびソフトクリームを食べる。
道の駅「月ヶ瀬」
「ゆら」みかんを買う。
日が沈む。
富士山が見えた。
たまたま寄った御殿場のマックスバリューにのっぽパンがあったうえに幻日のヨハネのコラボパンもあった。 (『幻日のヨハネ』×のっぽのコラボパン!「レモンチーズケーキのっぽ」が10月1日販売開始!グッズも発表!! | ラブライブ!シリーズ Official Web Site)
[ERROR] flickr.rb: failed to get photo.
2023-11-06 :-(
_ 最新ネットワークアーキテクチャー CLOSネットワークについて解説します。 - YouTube
CLOS ネットワーク
1952 年に Charles Clos さんが提唱した。
データセンターのような大規模ネットワークに導入されるのが最近のトレンド。 Google, Facebook, Microsoft, Yahoo JAPAN, LINE...
- 従来のネットワークの課題
- L2 ネットワークを拡張するのに限界がある。
- メンテナンス時に ARP 交換が頻発しスイッチが高負荷になったり、VLAN の仕様上の限界があったりする。 仮想マシンをたくさん作ると VLAN を使うので VLAN がたくさん使われる。
- ベンダー独自のプロトコルで解決しようとする動きもあるが、異なるベンダーだと通信できなくなったりしてベンダー固定するようになってしまう。が、冗長性を持たせたいのでベンダー固定は避けたい。
- CLOS ネットワークで解決できること
- L2 をラック内に閉じ込める。L2 ではなく、 L3 (IPアドレス、ルーティング...) でネットワークを作る。
- CLOS ネットワーク
- BGP をラック内のスイッチで動作させることで L3 ルーティングを実現。
- BGP でネットワークを作る。 BGP を使うので上記のようなベンダー依存することがない。
- (BGP は AS 間通信 (ISP どうしの通信) など大規模ネットワークどうしの通信に使われることが多い)
CLOS ネットワークの事例については Facebook のブログがよい。この図は様々な資料でも引用されているほどに定番(らしい)。
2023-11-07 :-(
_ 日誌
暑い。 11 月なのにエアコンもなしに室内が 27 度ある。 11 月なのにアイスコーヒーを飲んでいる。
_ マウスを左手用に設定した
Lenovo のページを参考にして設定した 左利き用のマウスに設定する - Windows 7/ 8/ 10/ 11 - Lenovo Support JP
右手の人差し指の腱が非常に痛い。医者行くか。
_ ヤフーの IP Clos ネットワークの歴史と運用
Clos ネットワークの管理方法の変遷が紹介されている。ヤフーは初期から Clos ネットワークか。
一覧になっていて見やすい。近年は Ansible を使っている。
どう使う︖データセンターネットワーキング最前線 Yahoo! JAPAN 実用例 にスイッチのセットアップについて説明されている。「Whitebox switch」がそう。 Whitebox switch は買い物のスイッチではなく、ハードウェアを自分達で用意し、 OS なども自分達で用意するものらしい。自作ソフトウェアスイッチといった感じか。
Whitebox switch のセットアップは以下の流れ。
- OS をインストールする (Zero Touch でやる)
- アプリなどをインストールする (Zero Touch でやる)
- ネットワークを設定する (Ansible でやる)
Zero Touch Provisioning はそういう名前のツールがあるのではなく、 一般的な手法の名前。機器に触らずセットアップする手法のこと。( ゼロタッチプロビジョニング - Wikipedia )
ヤフーでは Whitebox switch の OS として Cumulus Linux (Linux: オープン ネットワーク オペレーティング システム - NVIDIA ) を使っていて、 Cumulus Linux はデフォルトで Zero Touch Provisioning の機能を持っている。( Zero Touch Provisioning - ZTP | Cumulus Linux 4.1 )
2023-11-09 :-(
_ Microsoft Defender でウィルスとして検知されたよ
と開発者へ連絡したら「昔からよくある誤検知だ!こっちは正しいのに誤検知する側がバグってんだよ!」とご立腹だった。
「false negative されるよりマシですね」と言おうと思ったが激怒しそうなので黙っておいた。大変だなあ。
2023-11-12 :-(
_ 日誌
0900 起床
すっかり寒い。
コーヒーを飲んだりだらだらしていました。
そろそろ最低気温が 8 ℃の時期なので、月下美人を室内に入れました。
おひる。ラーメン。
飯。ぶり大根。昨日の残り。
_ LPIC 101 を受験した
合格した。14 年ぶり 2 回目 20090719#p04。 4 年だったかで効果が切れるので定期的に受験し直さなければならないんだが面倒くさいのでやってなかった。
準備した勉強範囲のうち 50% くらいが出題された。「これ赤ペン先生でやっ... てないところだ!」という展開だったけど、なんとなく回答しておいた。まだなんとなくでどうにかなるレベルでよかった。
2023-11-13 :-(
2023-11-14 :-(
_ やはりハイパーバイザーはダメだ
- VMware → キー入力してるとゲストが刺さる
- VirtualBox → Ubuntu 22.04 をインストールしたが sudo できない (sudo できないので visudo もできない。詰んだ)
- Hyper V → モジュールがロードできない等といってエラーになりゲストをインストールできない
結局物理マシンしか勝たんのよ。
2023-11-15 :-(
_ GNU Parallel
コマンドを並列実行してくれるツール。
本家
GNU Parallel - GNU Project - Free Software Foundation
チュートリアルを読むとだいたい分かる
GNU Parallel Tutorial — GNU Parallel 20231022 documentation
GNU Parallel 作者による USENIX への論文。使い方などが説明されている。
GNU Parallel: The Command-Line Power Tool | USENIX
「基本的に for ループは Parallel で置き換えるといいよ」と言っているが、複雑な for ならば正味の処理を別のスクリプトに括りだして、以下のようにセマフォ ( sem - semaphore for executing shell command lines in parallel ) を使いましょう、とのこと。
for i in `ls *.log` ; do
[... a lot of complex lines here ...]
sem -j4 --id my_id do_work $i
done
sem --wait --id my_id
_ 翻訳者 角 征典さんによる『Running Lean 第3版』ダイジェスト - connpass
昼に zoom で開催されたので聞いていた。
スライド
https://kdmsnr.com/slides/20231115_running-lean-3/
リーンスタートアップとはなんだったのか
- ベースはアジャイル開発。XP です。
- アジャイルやってればスタートアップがうまくいくか? そういうわけでもない。
- アジャイルソフトウェア開発宣言の「契約交渉よりも『顧客との協調』を」がうまくいってなかった。
- スタートアップはステークホルダーがまだいないからフィードバックを得られないため。 (スライド p.10 参照)
- 製品開発と同時に顧客開発が必要
- 動くビジネスモデル「リーンキャンバス」
- ソフトウェアとビジネスモデルを連携させる
- Kent Beck 「Validated learning」(検証による学習)
- 検証による学習= BML ループ Build Meagure Learn 構築 計測 学習
- これがリーンスタートアップの大雑把な考え方
ステークホルダーが居ない図 (スライド p.10 参照)
10年後の新要素
- ソフトウェア品質シンポジウムでの狩野講演より
- 購買行動と品質の変化
- 20世紀は現在品質と未来品質しかない。初めての製品。
- 21世紀は過去品質も考慮しないといけない。初めての製品はあまりなく、買い換えが多い。ユーザーはこれまでどのような製品を使い、どのように行動し、どのような好みがあるのか。
- 21世紀のユーザーの行動は買い換えが基本であるまいか。
- プロダクトは変わってもやりたいことは変わってない。(音楽を聴きたい → ウォークマン → iPod → サブスク)
- いかにして買い換え=スイッチを発生させられるか (Running Lean では「スイッチ」と呼んでいる)
- リーンキャンバスの三本柱(リーナーキャンバス)
- アーリーアダプター = 事情が変化した人達
- 機能面を考えてる限りは小さな改善で終わってしまう
- より抽象的に考える。(顧客が本当に欲しかったもの?)
p.28 からの流れが印象的だった。
既存の問題を解決すると小さな改良になってしまう問題
課題は「穴を開けたい」だけど、それに関連する課題 (粉が散る、ドリルが壊れる) に気が散ってしまうという図。
MVPだけで進めない
- 検証による学習するとずっと検証しちゃう問題
- 仮説が検証できたよかったね、だといつまでも終わらない。
- トラクションしましょう
- 市場からの引き合い
- 顧客の買い換えの兆し
- 収益化可能な価値を獲得できているか。できそうか。
- MVPとは
- テスラ創業者「車のMVPをやるなら車以外は作らんよ」
- MVP の定義(1): 最小限の労力で顧客に関する学習を最大限にできる製品
- MVP の定義(2): コミュニケーションを促進するバウンダリーオブジェクト
- 異なるステークホルダー間で知識や情報を共有するツール
- 必ずしも製品で無くてもよい。ビジネスモデルでも十分である。
- https://speakerdeck.com/tumada/zuo-tutekaramai-ru-to-mai-tutekarazuo-ru-to-mai-reruyounisitekarazuo-ru
おまけ
リスナーからの質問
- リ「リーンスタートアップとトヨタ生産方式の関係について教えてください」
- 角「とくにないです。名前くらいじゃないかな」
なん...だと...?
2023-11-16 :-(
_ 日誌
晴れ。夜は雨が降るらしい。
クレイトンベイホテルの 海軍おせち | CLAYTON BAY HOTEL ONLINE SHOP を買った。 100 食限定なんだが、いまだに (22:00) 残っている。艦これの特典が無いと買わないひとが多数らしい。
おひる。カレー。
飯。カレーライス。
_ GNU Parallel (2)
GNU Parallel の semaphore は sem で呼び出せる。
関数を呼びたい場合は export しないといけない (bash 限定) https://www.gnu.org/software/parallel/parallel_tutorial.html
export すると bash プロセス内で(?) グローバルな名前として扱われるので名前が衝突しないように注意。
#!/bin/bash
function do_work()
{
echo $1
sleep $1
}
export -f do_work
for n in 1 2 3 4; do
sem -j+0 do_work $n
done
sem --wait
2023-11-17 :-(
_ 日誌
朝からというか深夜から雨。風もある。
おひる。ラーメン。
飯。カレーライス。
リッジレーサー7オンラインバトル 卍さんの 5000 勝阻止レースが開催されたが本人の回線が切れまくっており、途中で中止された。その後はみんなでスタンダードレースを普通に走った。
2023-11-18 :-(
_ 日誌
朝
部屋掃除をする。
丹後鉄道のコーヒーを飲む。
買い物。イトーヨーカ堂は8の日のためかかなり混雑している。食品レジの待機列がいままで見たこと無いほどに延びている。従業員が列整理している。
おひる。パン。買ったやつ。
昼過ぎに雨の予報なので自転車にカバーをかける。
コーヒーを飲む。舞鶴土産のバウムクーヘンを食べる。
飯。カレーライス。
ブラタモリをみる。目白。
リッジレーサー7オンラインバトル overrave さんルーム。勝てなかった。くそ。
_ WSL のイメージを C ドライブから移動した
C ドライブが枯渇しそうなので。
参考 WSL2のLinuxおよびDockerイメージ格納先を任意のディレクトリに移動する - SIS Lab
仮想マシンを止める。
wsl --shutdown
一覧
C:\Users\rin> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 2
移行先のフォルダを作る
mkdir D:\wsl
エクスポートする。
wsl --export Ubuntu D:\wsl\Ubuntu.tar
既存の仮想マシンを解除する。
wsl --unregister Ubuntu
エクスポートしたファイルをインポートする。
wsl --import Ubuntu D:\wsl\Ubuntu D:\wsl\Ubuntu.tar
Microsoft Store からインストールしたときの Ubuntu アイコンをクリックすると root でログインしてしまうようになってしまった。
以下のようなショートカットを作成する ( WSL上のLinuxをCドライブから移動させる )
リンク先はこう。
C:\Windows\System32\wsl.exe -u rin -d Ubuntu
作業フォルダはこう。
\\wsl.localhost\Ubuntu\home\rin
2023-11-19 :-(
_ 日誌
温室のカバーを交換しました。1シーズンしか持たないので毎年交換しないといけない。
立川。おにぎりを買う。おかかと鮭。
国営昭和記念
帰宅してコーヒーを飲む。
機動戦士ガンダムSEEDを見る。いままで見たことないので。小説は読んだ気がする。無重力空間で移動開始時に初速をつけるために同僚の遺体を利用したり、傷のために熱が出てたり、意外と描写が細かい。
飯。カレーライス。まだ残ってます。
どうする家康を見る。
リッジレーサー7オンラインバトル
_ 国営昭和記念公園 に行ってきた
紅葉情報(11月18日) を見るとまだイチョウは青いですが、それはそれでいとおかし (たいそう趣のあることよのう) 。紅葉は始まってるもよう。
イチョウも紅葉もまだまだだけどお客さんはたくさんいました。天気もいいし。
日本庭園。紅葉はまだまだ。
みんなの原っぱの近くでおひる。木陰でテントしてる人たちがいますね。往路の立川駅構内で買ったおにぎりを食べます。
寝ます。
来週あたりが見頃でしょうか。
2023-11-20 :-(
2023-11-21 :-(
2023-11-22 :-(
_ 日誌
晴れ。
おひる。ラーメン。卵をのせるのでタンパク質はとれる。
飯。ぶりの照り焼きとポトフ ( 鶏もも肉のポトフ【キャベツ、じゃがいもetc.野菜たっぷりで人気】のレシピ・つくり方 | キッコーマン | ホームクッキング ) 鶏肉なし。八百屋でレタスx2 を安売りしていたから買ったものの消費に困ったのでポトフで。だいぶ圧縮された。
2023-11-23 :-(
_ 日誌
勤労感謝の日。感謝の正拳突き(?)
docomoへ行く。母が遺したdポイントについての通知のハガキが来ていたので現状確認。母が持っていたdポイントは自分のところにマージされていたし、自分が機種変更したときに使用済みだった。
docomoの帰路で買い物してたらスマホを落下させてカバーを破損した。docomoのひとに張り付けてもらったので素人質問ですが私でもカバーを付けることはできるのでしょうか。またdocomoに行くか。とりあえずカバーは買わないといけないゆえ。
にんべんの弁当屋で買い物。定価 1450 円だがポイントカードが溜まり 500 円相当となったので結局 850 円となった。ブラックフライデーに因んで金箔が散りばめられていた。
おひる。ラーメン。
シスタークレアの歌枠を眺める。アイマスの歌。クレアさんの歌声いいなあ。
飯。にんべん一汁旬菜の弁当。
ブリドカットセーラ恵美さんとトークポート。 1対1で通話するアプリというかサービス。VTuber にも「1on1」という 1対1で通話するイベントがあり 結目ユイ や 水瀬しあ や 菜花なな とやったことがあるけどそういうやつ。 トークポート 2 分間で 2000 円。 2 分たつと強制終了。まあ CD 発売イベントでのトークとかサイン会などと同じ。値段的にも時間的にも単価的にも。
頻繁にファンレターなんぞ送ったりしているのでおかげさまでセーラさんからは「みわさん」と呼ばれてますが。
2023-11-24 :-(
_ 日誌
朝起きたら庭にネズミの死骸があった。処分した。最悪の気分だ。長い間生きてるが朝起きたら庭にネズミの死骸が落ちてるのは初めてだ。ネズミの死骸が落ちてるなんてワイルドかと思いそうになったがむしろ都会だからこそだろうか。
おひる。ラーメン。
docomo へ行って保護シートとカバーを買う。当初買ったのと同じやつ。保護シートは専用のマシンで取り付けるだとか。
飯。カレー。金曜日。
2023-11-25 :-(
_ 日誌
寒いらしいので暖房をタイマーで発動するように設定したけ暖房使うまで気温がというか室温は低くないらしい。
部屋掃除する。
ゴジラを見る。ゴジラが大変恐ろしく今回はさすがに人類は負けるだろうと悲観してしまうほどであった。雪風や響や震電が活躍します。あと神木隆之介が活躍します。
劇場版のSPY×FAMILYがあるらしい。
飯。鮭のちゃんちゃん焼き。
リッジレーサー7オンラインバトル。ゆるレース 1 周年。途中で回線が切断されたり。お疲れ様でした。
2023-11-26 :-(
_ 日誌
朝雨が降っていた。自転車にカバーをかける。
めもおふさんの艦これ配信を眺めながら艦これをやる。まるゆ出たのでレベル上げして餌にして再びまるゆを集める旅へ出る。
ヨドバシカメラ新宿で Surface Laptop Go 3 を買う。店頭に居たスタッフに声をかけたらマイクロソフトのスタッフだったらしい。力入れてるんだろか。 「ノートPCが欲しい」ならばLet's noteでも買うんだろうけど、艦これやるくらいなのでこの辺りで。
帰宅してコーヒーを飲んだり。
飯。鮭のちゃんちゃん焼き。昨日の残り。
どうする家康を見る。
2023-11-28 :-(
_ 艦これメンテナンス後の装備改修アップデートでざわざわ
銀河が改修可能となった。
銀河の★6 以降は一式陸攻が餌になる。
野中も一式陸攻を餌にする。
一式陸攻を消費するなら銀河と野中どちらを優先するか。
特効が割りとあるから野中かなあ。という。
2023-11-30 :-(
_ 宛先
ファンレターを送るハードルが無くなりました (従来は fansfar を介さないといといけない且つ 500 円かかる)
お手紙やプレゼントの送付先が出来ました!HPのプロフィールから確認できます。是非ご活用くださいー!https://t.co/ffIDQ6bw9U— ブリドカットセーラ恵美🍣 (@SarahBridcutt) November 30, 2023
_ 「ゲーム音楽の巨匠 植松伸夫の世界」 - クラシックTV - NHK を見た
再放送なので、見るのは 2 回目ですが。
清塚信也がピアノで「戦う者達」を演奏していました。植松伸夫はよく「人間が演奏することを前提として作曲してない」などと言ってましたがプロは演奏できるものなのですねえ。










































