高速通信計算研究所

slankdevの報告

2017-01-01から1年間の記事一覧

QemuコマンドでVMを立てる時にシンプルにNICを生やす方法

part1 超素朴に全部手作業でやる 最初にこの方法でやれば全て理解できるしこれが一番理解しやすい.

NFVガイドラインのようなものを少しまとめた

以下に置いた(画像部分をhatebuに変換するのが大変だったのでリンクにした) もしリンクがきれていたら, Twitter: @slankdevまで連絡をください. すぐ直します。 github.com

「次世代の通信インフラストラクチャーに対応する効率的な仮想ネットワーク機能(VNF)アーキテクチャー」を読んだのでようやく

NFV

バ先の上司に教えていただいたIntel,HPEのNFV白書を読んでいるが, 読解力が皆無なことが確認できてよかった— Hiroki SHIROKURA (@slankdev) 2017年9月3日 NFV Whitepaper by Intel HPE Hiroki SHIROKURA @slankdev 2018.07.30 本レポートは以下のLINKのWhite…

DPDKアプリをビルドする自前Makefile

DPDKどドキュメントによると、DPDKを使用したアプリケーションでは用意された雛形のMakefileを 一部変更することでビルド環境を提供しているが、自分で何かをつくりたいときにそんなことを やってられない。 ここでは自分で作成したMakefileでDPDKのアプリケ…

BSDのNW処理部分の設計実装

自分用雑記. まだ書きかけです. FreeBSDの黄色い本を読んで自分なりに要約, またSTCPの設計実装のためのメモ ここで出てくる典型的例とはBSDカーネル内での実装のことである. ソースは以下から入手した - ftp://ftp.freebsd.org/pub/FreeBSD/releases/

BSDのARP実装についてメモ

どこを参照したか FreeBSDソースの以下のファイル ファイル名 概要 sys/net/if_arp.h arphdr構造体とかその辺がある sys/net/if_ethersubr.c Ethernetに関する処理がある sys/netinet/if_ether.c Ether,ARPに関する大事な実装 ARP処理部分の流れ init arpres…

ダブルロックの有用性について

2016.08.01 サイボウズラボユースにて. ずいぶんまえに学んだ内容だが、資料を生理していたらmemoがでてきたので。 ここに吐いておく(間違っていたらすみません) はじめに通常のロックについて 以下の手順で行われる lock() if (inited == false) init() ini…

BPFに関する情報収集

BPFについてサーベイしたので、それのまとめ. BPF for Dummiesのプロトタイプといえるよういしていけたら最高である。 現状は雑記状態なのでご了承いただきたい. BPFとは,何をするためのものか 正直, 僕自身もよく分からない。 BPFはin kernelのパケットフィ…

cBPF命令セット

ここでは単純に表と図のみでcBPFにどのような命令が含まれて、 どのように動作するのかを示す。Instruction set archの設計論などは まったく触れない。 (ただつかう段階では必要ないため。) 必要があれば、それぞれのBitにどのような意味があるかも説明して…

eBPF命令セット

ここでは単純に表と図のみでeBPFにどのような命令が含まれて、 どのように動作するのかを示す。Instruction set archの設計論などは まったく触れない。 (ただつかう段階では必要ないため。) 必要があれば、それぞれのBitにどのような意味があるかも説明して…

The White Paper of Packet Processing 作成のためのMemo

完成はしないが、お勉強は大事である。 なんかしっていたら教えてください。。。涙 Hardware と Softwareでの選択はどのようにしておこなうのか。 下にいくについれて高性能だがフレキシブルでなくなる. とくにASICはできるまでに2年間くらいかかることもあ…

BPFにおけるJITとインタプリタの性能計測

gist.github.com

Thread Affinityによる性能実験

雑記状態なので、この記事もとても汚いことを了承してください。 DPDKはpthreadwを用いてスレッド操作を行っている。 内部でset affinityを行い、複数のCPUでスレッドを共有しないように固定している らしいが、実際に複数CPUで共有実行を行った場合と、単一…

Linux Network Stack Debugging using eBPF

とりあえずLinux Kernelのネットワークスタックのデバッグ/トレースをしてみようと思う。 Bccを用いたトレース手順 デバッグ対象を決める hookポイント trace内容 それに対して必要なスクリプトを書く (bcc, bpf, python, c) スクリプトを動かしてTraceを確…

BccとBPFでTracing

Packetとはなんなのかを理解するためにBPFをかじり始めたら どつぼにハマってしまい、とりあえずどんなことができるのかを 簡単なスクリプトを書いて試した. 目次 bpfで関数callをhookする bpfで関数callの引数をtraceする bpfで関数呼び出しの回数を取り出…

Slankdevなりのセキュリティ・キャンプの選考に通過するためのベストプラクティス

私は2015年のセキュリティキャンプの修了生で、2016年はチューターを担当しました。 セキュリティ・キャンプに通過するために何をすれば良いのか、というのを 私なりに簡単に考えました。 このリンク から申し込みができます。 もちろん、私個人の見解なので…

サイボウズ・ラボユース 第6期

2016/2/1から1年間、サイボウズ・ラボユースという制度で研究開発の支援を受けていた. 一年間、本当に強力なサポートをしていただき、我ながら圧倒的に成長した気がするので、 他の人にもぜひ体験していただきたく、ラボユースの紹介と報告をしようと思う。 …