前回は、実際に送信されるMPTCPのMP_CAPABLEのパケットを眺めてみました。
今回は、ADD_ADDR、DSS、DSS FIN、MP_JOINのフォーマットと実際のパケットを見比べてみます。
MPTCPのオプションは、前回の内容を参考にしてください。
Tag / Kernel
MPTCPのパケットを眺めてみる(その1)
前回は、RFC 6824で定義されているMPTCPについて紹介しました。
今回は、TCPのオプション領域でやり取りされるMPTCPのシグナリングパケットを簡単に説明し、RFCで定義されているオプションのフォーマットとMPTCPのMP_CAPABLEが付いた実際のパケットを見比べてみようと思います。
Multipath TCP(MPTCP)
Multipath TCP(MPTCP)は、複数のIPアドレス/インタフェースを同時に使用して通信することで、通信のスループットを向上させるという機能です。また、あるIPアドレス/インタフェースが使用できない状態になっても別のIPアドレス/インタフェースを使うことで、通信を継続できるという耐障害性も兼ね備えています。
そんな夢のようなMPTCPに触れる機会があったので、簡単にご紹介します。
linux-crashdumpのアンインストール方法
Linuxのカーネルのデバッグに役立つlinux-crashdumpというツールがあります。
このツールは、カーネルがクラッシュした時にログ情報を保存してくれるので非常にありがたいツールです。また、インストールや設定も簡単です。
しかし、デバッグ完了後に元の状態に戻そうと、linux-crashdumpをapt purgeコマンドでアンインストールした後にマシンをrebootさせると、意図しないカーネルが立ち上がってきてしまうという事態に陥りました。
1年くらい前にも嵌ったのですが、対処方法を残すのを忘れてしまい、再度嵌ってしまったので、自分のためにもメモとして残しておきます。
Linuxのカーネルモジュールの整合性検証の仕組み
Linuxでは、カーネルのモジュールをロードしようとした際に、カーネルモジュールの整合性の検証が行われます。整合性の検証には、vermagicが使用されていると記憶していたのですが、最近のLinuxではmodversionsによる検証が行われているようです。
このmodversionsによる整合性の検証について調査した内容を備忘録としてまとめておきます。