タグ

ブックマーク / alexei-karamazov.hatenablog.com (2)

  • Pythonでバイナリデータの取り扱い - 猫型エンジニアのブログ

    Pythonでパケット処理をする際に勉強する必要があったため、PythonのStructクラスのpackおよびunpackに関してまとめてみました。それぞれバイナリデータ⇔C言語の構造体の変換を行います。 unpack関数 struct.unpack(fmt, string) 与えられたバイナリデータを、フォーマットとに従って解釈した結果をタプルで返します。フォーマットでの指定の仕方は公式ドキュメントを参考にしてください。 バイナリデータをunsigned_short型に変換する "FFFF"をunsigned_short型として解釈させます。 >>> from struct import * >>> binary_data = '\xFF\xFF' >>> unpack('H',binary_data) (65535,) バイナリデータをshort型に変換する 同じバイナリでも今度は符号

    Pythonでバイナリデータの取り扱い - 猫型エンジニアのブログ
  • CentOS6.3にDPDKをインストール - 猫型エンジニアのブログ

    下書き。結局10Gbps対応のジェネレータがないため検証は途中で終わりました。それでもDPDKを利用すれば1Gbpsまででも転送速度は上昇します。 DPDK(version1.5)を用いて、L3 Forwardingの検証を行ってみました。 Intelの公式ドキュメントを参照しました。 DPDKのインストール 必要なパッケージのインストールとソースコードの解凍を行った後に、スクリプトを用いてインストールを行います。 スクリプトでエラーが出る場合は、一度マシンを再起動してみてください。 # yum install -y gcc make kernel-headers.x86_64 kernel.x86_64 kernel-devel # cd /opt # wget http://dpdk.org/browse/dpdk/snapshot/dpdk-1.5.0r1.tar.gz # tar

    CentOS6.3にDPDKをインストール - 猫型エンジニアのブログ
  • 1