並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 394件

新着順 人気順

BPFの検索結果241 - 280 件 / 394件

  • 111. eBPF w/ udzura | fukabori.fm

    MP3ファイルをダウンロード 内容紹介 入門 eBPF 訳者のUchio Kondoさんに、eBPF の経緯・用途、iptablesとの違い、カーネルモジュールとの違い、CO-REなどについて語っていただきました。 出演者 話したネタ 入門 eBPF ―Linuxカーネルの可視化と機能拡張 Raft + Redis な内製Redisサーバの紹介 eBPF の始まり cBPF(classic BPF) と eBPF(extended BPF) eBPFの用途の広がり パケットフィルタリングとは何か? iptables との違い Cilium カーネルモジュールでも同じことはできるのか? カーネルモジュールの問題点 eBPF VM と eBPF検証器 Facebook での eBPF 利用 XDP(eXpress Data Path) CO-RE(Compile once, run anywh

      111. eBPF w/ udzura | fukabori.fm
    • Kubernetes Meetup #24 2つ目のスライドのやつ - inductor's blog

      Debug application inside Kubernetes using Linux Kernel tools Sonyのシステムエンジニア @KentaTadaさん runc Docker containerのコントリビューター Agenda oci-ftrace-syscall-analyzerの紹介 Kubernetes上でプロセスのコアダンプを取る方法の紹介 Kuberetesの全体像 oci-ftrace-syscall-analyzerの紹介 軽量でセキュアなruncベースのコンテナ環境を組み込み向けに開発した サードパーティ向けにセキュア(制限があってルートレスな)コンテナを立ち上げる要件 ftraceベースのシステムコールアナライザを作った 既存のKuberentesデバッグ方法 デバッグツールをPodに入れる デバッグ用イメージを作る プロセスの名前空間を共有し

        Kubernetes Meetup #24 2つ目のスライドのやつ - inductor's blog
      • A Lisp REPL as my main shell

        If you enjoy this article and would like to help me keep writing, consider chipping in, every little bit helps to keep me going :) Thank you! Update: As of 2021-02-07, not all the code and configurations used in this presentation have been published. Should happen in the coming days, stay tuned! Introduction video The concepts I’m going to present in this article were featured in a presentation at

        • Chaos Mesh によるカオスエンジニアリング | sreake.com | 株式会社スリーシェイク

          今回は Chaos Mesh を紹介します。 Chaos Mesh は Kubernetes 環境向けの Chaos Engineering ツールです。 Chaos Mesh によるカオスエンジニアリング Sreake の寺岡です。今回は Chaos Mesh を紹介します。 Chaos Mesh は Kubernetes 環境向けの Chaos Engineering ツールです。 カオスエンジニアリングの原則 カオスエンジニアリングと言えば本番環境で発生しうる Node 障害を日常のものにするということが元々の目的だったのではないかと思いますが、今日では意図的に障害を発生させること全般が対象となっているように感じます。まれに発生するトラブルを開発環境で意図的に発生させてコードの品質を上げるということが含まれてきているようです。 ここで紹介する Chaos Mesh も、開発元である 

            Chaos Mesh によるカオスエンジニアリング | sreake.com | 株式会社スリーシェイク
          • This tutorial shows how to run docker natively on Android, without VMs and chroot.

            docker.md Docker on Android 🐋📱 Edit 🎉 All packages, except for Tini have been added to termux-root. To install them, simply pkg install root-repo && pkg install docker. This will install the whole docker suite, left only Tini to be compiled manually. Summary Intro Building Rooting Kernel General compiling instructions Modifications Patching Docker dockercli dockerd tini libnetwork containerd ru

              This tutorial shows how to run docker natively on Android, without VMs and chroot.
            • yuuk1/logbook

              yuuk1の研究開発日誌

                yuuk1/logbook
              • 「Linux 5.8」が公開 | OSDN Magazine

                Linus Torvalds氏は8月2日、最新のLinuxカーネル「Linux 5.8」を公開した。大型のリリースとなり、Kernel Concurrency Sanitizerの導入などが特徴となる。 Linux 5.8は5月末に公開されたバージョン5.7に続く最新のカーネル。7回のリリース候補(RC)を経てのリリースとなった。 コンパイル時にメモリアクセスを測定することでカーネルのデータレースを検出するKernel Concurrency Sanitizer(KCSAN)が加わった。カーネルイベント通知サブシステムが加わった。カーネルからの通知メッセージを接合してユーザー空間が開くパイプにするもので、内部バッファを使ってカーネルが生成するメッセージを保持してread(2)により読み取る。 ブロックレイヤーでのInline Encryptionのサポートが加わり、Inline Encry

                  「Linux 5.8」が公開 | OSDN Magazine
                • 2021.takeout.rubykaigi.org

                  今年も COVID-19 の影響で RubyKaigi のオンラインイベント化された RubyKaigi Takeout 2021 に行ってきた。 去年も COVID-19 の影響で takeout をやっていたがすっかり忘れてたので参加していなかった。ので 2 年ぶりの参加である。 見たセッションは開催日毎に以下のようになった。 day: 1 Yusuke Endo, “TypeProf for IDE: Enrich Dev-Experience without Annotations,” https://rubykaigi.org/2021-takeout/presentations/mametter.html Takeshi Kokubun, “Why Ruby’s JIT was slow,” https://rubykaigi.org/2021-takeout/presenta

                  • All my favorite tracing tools: eBPF, QEMU, Perfetto, new ones I built and more - Tristan Hume

                    Ever wanted more different ways to understand what’s going on in a program? Here I catalogue a huge variety of tracing methods you can use for varying types of problems. Tracing has been such a long-standing interest (and job) of mine that some of these will novel and interesting to anyone who reads this. I’ll guarantee it by including 2 novel tracing tools I’ve made and haven’t shared before (loo

                    • BPF CO-RE バイナリはどのようにビルドされるか - ローファイ日記

                      そろそろBPFのことを思い出そうと思って記事を書く。 シリーズです: udzura.hatenablog.jp udzura.hatenablog.jp 前回まででRustでのBPF CO-REバイナリの作成方法をまとめたが、C言語などで使う場合の細かい手順を追ってみる。 ちゃんとドキュメントを追い切れていないところがあり、今回は、iovisor/bccのlibbpf-toolsにあるMakefileなどを参照したことは了解願いたい。 github.com さて、利用するBPFプログラムは以下のようにする。 vfs_read をトレースして、読み込みに成功いたバイト数を、log2をbinとするヒストグラムにする。 #include "vmlinux.h" #include <bpf/bpf_helpers.h> #include <bpf/bpf_tracing.h> #include <

                        BPF CO-RE バイナリはどのようにビルドされるか - ローファイ日記
                      • tc/BPF and XDP/BPF

                        What is eBPFReference: bpf The extended Berkeley Packet Filter (eBPF) has first appeared in Kernel 3.18. The original version is being referred to “classic” BPF (cBPF) . cBPF is known to many as being the packet filter language used by tcpdump. Nowadays, the Linux kernel runs eBPF only and loaded cBPF bytecode is transparently translated into an eBPF representation in the kernel before program exe

                        • 自分のためのカーネルトレーシング、その1 - ローファイ日記

                          色々な理由 でカーネルのイベントなどをトレースする方法を整理する必要が出て来たので。地道にやっていくシリーズ。最近シリーズものが続いてないのでまた中断される可能性が...。 今回は、カーネルのイベントソースとして tracepoint, kprobe, uprobe というものがあるが、それぞれを使って、違いを確認してみる。理解が間違っていたら教えてください。 環境は基本的に、ご家庭の Ubuntu Bionic でシュッと試しているので、最新のカーネルというわけではない。 $ uname -a Linux ubuntu-bionic 4.15.0-55-generic #60-Ubuntu SMP Tue Jul 2 18:22:20 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux tracepoint Linuxカーネルには、内部で起こる様々なイベントを

                            自分のためのカーネルトレーシング、その1 - ローファイ日記
                          • クラウドネイティブ開発の文脈で人気の「eBPF」調査レポートを公開 Meta、Google、Netflixが活用

                            eBPF FoundationとLinux Foundation Researchは、2024年1月30日(米国時間)、「The State of eBPF」を発表した。このレポートは、「eBPF」(extended BPF)の現状、eBPFのユースケースや今後などについて紹介している。内容は以下の通り。 eBPFの現状 Linuxカーネルは、ソフトウェアとハードウェアのインタフェースとして機能し、アプリケーションのさまざまなタスクを処理する。カーネルは約3000万行のコードを有し、重要な役割を果たすが、変更に時間がかかる。これを解決するのがeBPFだ。eBPFはLinuxカーネル内の仮想マシンで、開発者が小さな専門化されたプログラムを記述できるようにする。これらのプログラムは安全性を確保するために検証を経て、JIT(Just-In-Time)コンパイルされ、ファイルのオープニングなどのイ

                              クラウドネイティブ開発の文脈で人気の「eBPF」調査レポートを公開 Meta、Google、Netflixが活用
                            • sandbox/linux/seccomp-bpf/sandbox_bpf.cc - chromium/src - Git at Google

                              // Use of this source code is governed by a BSD-style license that can be

                              • Liz Rice on Programming the Linux Kernel with eBPF, Cilium and Service Meshes

                                Transcript Introductions [00:36] Charles Humble: Hello and welcome to the The InfoQ Podcast, I'm Charles Humble, one of the co-hosts of the show, and editor-in-chief of Cloud Native consultancy firm Container Solutions. My guest this week is Liz Rice. Liz is Chief Opensource Officer with cloud native networking and security specialists Isovalent, creators of the Cilium eBPF based networking projec

                                  Liz Rice on Programming the Linux Kernel with eBPF, Cilium and Service Meshes
                                • [Rust] AyaでeBPFプログラムをつくってみる | DevelopersIO

                                  Introduction eBPFは、Linuxカーネル対して動的に機能を拡張する技術で、 カーネルで独自のプログラムを安全に実行することができます。 これらのプログラムは任意のポイントに設定可能で、さまざまなタイミングで 実行できます。 eBPFは、カーネル再構築なしでカーネルの動作をカスタマイズすることができるため、 近年いろいろな用途に使われています。 今回はBCC/bpftoolで少しeBPFを使ってみた後、 Aya(eBPF用Rustフレームワーク)を使ってXDPのサンプルをつくってみます。 eBPF? eBPFはExtended Berkeley Packet Filterの略で、 もともとはLinuxでデータパケットを効率的にフィルタリングするために 開発された技術ですが、現在はその機能が拡張されて、 カーネルのコード変更やモジュール追加なしで 独自のプログラムをカーネルで実

                                    [Rust] AyaでeBPFプログラムをつくってみる | DevelopersIO
                                  • GKE上で動くPodでeBPFを使ってみる - CubicLouve

                                    GKEのバージョン 1.16.13-gke.1 Node Container-Optimized OS from Google コンテナのOS OSは下記を使うのでちょっと特殊 https://console.cloud.google.com/gcr/images/gcp-runtimes/GLOBAL/ubuntu_18_0_4?gcrImageListsize=30 # cat /etc/os-release NAME="Ubuntu" VERSION="18.04.4 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 18.04.4 LTS" VERSION_ID="18.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.u

                                      GKE上で動くPodでeBPFを使ってみる - CubicLouve
                                    • 『AWS re:Invent 2019』のDevelopers.IO セッションレポート総まとめ #reinvent | DevelopersIO

                                      今年2019年12月に米国ラスベガスにて開催された『AWS re:Invent 2019』。当ブログでも特集を組み、総勢80名超の大所帯で現地参戦を行い、昨年以上のブログを今月投下して参りました。その数実に700本超!(2019年12月31日現在) ブログの内容については実に様々な切り口や角度で色々なレポートが投下されていますが、その中で『セッション参加レポート』についても300本以上のエントリがここまでに投下されています。『このテーマ・カテゴリに関するものが読みたいんだけど、多過ぎて大変...!』という声も聞こえてきそうな気がしてましたので(というか私個人でそういう思いが芽生えた)、『それならば まとめてしまおう DevIO(で)』という事で情報を抜粋・整理してまとめてみました。 目次 関連動画・スライド資料の見つけ方 ACT(各種アクティビティ) AIM(AI・機械学習) ALX(Al

                                        『AWS re:Invent 2019』のDevelopers.IO セッションレポート総まとめ #reinvent | DevelopersIO
                                      • Get started with eBPF using BumbleBee

                                        What is eBPF? eBPF stands for extended Berkeley Packet Filter. The Linux kernel has been around for a long time, however, it is not easy to modify or extend the kernel unless you know how to patch it. If you are familiar with Kubernetes’s custom resources or Envoy filters, you understand how important it is to build extensions based on your specific scenarios. What eBPF provides to the Linux kerne

                                          Get started with eBPF using BumbleBee
                                        • サービスメッシュ必読ガイド - 第2版: 次世代のマイクロサービス開発

                                          2016年頃「サービスメッシュ」という用語は、マイクロサービス、クラウドコンピューティング、DevOpsの分野に登場しました。楽天的なあるチームは、2016年にこの用語を使用して彼らの製品である Linkerd を説明しました。コンピューティングの多くの概念と同様に、実際には、関連するパターンとテクノロジーの長い歴史があります。 サービスメッシュの登場は、主に IT ランドスケープの最悪の状況によるものでした。開発者は、複数言語 (ポリグロット) アプローチを使用して分散システムの構築を開始し、動的なサービスディスカバリーを必要としていました。運用は一時的なインフラストラクチャの使用を開始し、避けられない通信障害を適切に処理し、ネットワークポリシーを適用したいと考えていました。プラットフォームチームは、Kubernetes などのコンテナオーケストレーションシステムの採用を開始し、Envo

                                            サービスメッシュ必読ガイド - 第2版: 次世代のマイクロサービス開発
                                          • BPF ring buffer

                                            There is now a new BPF data structure available: BPF ring buffer. It solves memory efficiency and event re-ordering problems of the BPF perf buffer (a de facto standard today for sending data from kernel to user-space) while meeting or beating its performance. It provides both perfbuf-compatible for easy migration, but also has the new reserve/submit API with better usability. Also, both synthetic

                                            • eBPF: BPF_MAP_TYPE_SK_STORAGE が Invalid argument - Unyablog.

                                              Linux の eBPF で BPF_MAP_TYPE_SK_STORAGE を使おうとして、map を定義して bpftool で流し込んだけど Invalid argument でうまく動かなかった。調べてもヒットしなくて長時間費やしたのでメモ。 環境は ArchLinux で Kernel release は 5.7.10-arch1-1。 TL;DR BTF に対応する必要がある。 詳細 struct bpf_map_def SEC("maps") sk_storage_map = { .type = BPF_MAP_TYPE_SK_STORAGE, .map_flags = BPF_F_NO_PREALLOC, .key_size = sizeof(int), .value_size = sizeof(int), }; このような map を作って、それを使ったプログラムを lo

                                                eBPF: BPF_MAP_TYPE_SK_STORAGE が Invalid argument - Unyablog.
                                              • Linux Observability with BPF 1人輪読会(3) - /dev/blog

                                                前回 tsunomur.hateblo.jp Chapter 1: introduction 問題定義 ログとメトリック 昨今の複雑なコンピューターシステムを可視化するためには、アプリケーションのログを分析することが重要。 ログは、アプリケーションの正確な動作を確認することが出来る。 しかし、ログは、アプリケーション開発者にしか出力させることが出来ず、開発者以外が調査するときの制約になる。 あらゆるアプリケーションのログを取るということは、アプリケーションのリバースエンジニアリング等と同様のチャレンジが必要になってくる。 ログ以外にも、メトリックを取得する方法がある。しかし、メトリックは、特定の一時点のアプリケーションの動作を測定するためのデータである。 Observability - 可観測性 Observability はこの問題を別の角度からアプローチする創発的なプラクティスである

                                                  Linux Observability with BPF 1人輪読会(3) - /dev/blog
                                                • 2019年の振り返り(go_vargo) - go_vargoのブログ

                                                  年をブログで振り返るのは初めてですが、振り返りです 2019年はどんな年だったか 自分にとってはチャレンジの一年だったなー、と。 チャレンジというよりは、初めて挑戦したことが多いという方が正しいかもしれません。 よく頑張れたなー、と我ながら思います。 何に挑戦したか とりあえず初めて挑戦したことを箇条書きすると、 ブログ Qiita(今年だと思ったら正確には去年の12月だった) Advent Calander 英語の技術本を読む CKA/CKAD 転職 LT登壇 セッション登壇 カンファレンス登壇 OSSコントリビュート(ソース) 技術書典で技術書(同人)執筆, 出版 商業本出版(技術書典底本) Reddit投稿 でした。 簡単に時系列で1年を振り返ると、 12月: おうちK8s構築, 初Qiita 1月: 転職活動開始 2月: 内定 3月: 前職のPJ2本, 退職活動, 技術書(Helm

                                                    2019年の振り返り(go_vargo) - go_vargoのブログ
                                                  • linuxのディスクI/O周りやxfsのソースコードを読めるようになるためのおすすめの参考資料募集中です

                                                    file_system_book.md linuxのディスクI/O周りやxfsのソースコードを読めるようになるためのおすすめの参考資料募集中です — Masahiko Sawada (@masahiko_sawada) June 16, 2023 <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script> kernel.org Documentation XFS Logging Design XFS Online Fsck Design XFS Self Describing Metadata The XFS Linux wiki XFS Algorithms & Data Structures Linux Kernel Programming 現状一番かっちりしているカーネルの

                                                      linuxのディスクI/O周りやxfsのソースコードを読めるようになるためのおすすめの参考資料募集中です
                                                    • A Deep Dive into eBPF: Writing an Efficient DNS Monitoring.

                                                      eBPF / XDP is an in-kernel virtual machine, provides a high-level library, instruction set and an execution environment inside the Linux kernel. It’s used in many Linux kernel subsystems, most prominently networking, tracing, debugging and security. Including to modify the processing of packets in the kernel and also allows the programming of network devices such as SmartNICs. Use cases in eBPF im

                                                        A Deep Dive into eBPF: Writing an Efficient DNS Monitoring.
                                                      • Journey to libbpf 1.0

                                                        Libbpf 1.0 release is here! It has been a pretty long journey to get to libbpf 1.0, so to commemorate this event I decided to write a post that would highlight main features and API changes (especially breaking ones) and show large amount of work done by libbpf community that went into improved usability and robustness of libbpf 1.0. The idea to clean up and future-proof and shed some organically

                                                        • BPFによるパケットトレース――C言語によるBPFプログラムの作り方、使い方

                                                          BPFによるパケットトレース――C言語によるBPFプログラムの作り方、使い方:Berkeley Packet Filter(BPF)入門(5)(1/2 ページ) Linuxにおける利用が急速に増えている「Berkeley Packet Filter(BPF)」について、基礎から応用まで幅広く紹介する連載。今回は、最も基本となるC言語によるBPFプログラム作成方法および使用方法について。 Linuxにおける利用が急速に増えている「Berkeley Packet Filter(BPF)」について、基礎から応用まで幅広く紹介する連載「Berkeley Packet Filter(BPF)入門」。前々回までは、BPFの基本やBPFのプログラムの作成方法を説明しました。前回から、「LinuxのBPFで何ができるのか」について詳しく見ています。 今回からさまざまなBPFプログラムを作成してBPFの使い

                                                            BPFによるパケットトレース――C言語によるBPFプログラムの作り方、使い方
                                                          • Linux Plumbers Conference 2021

                                                            eBPF has been used extensively in performance profiling and monitoring. In this talk, I will describe a set of eBPF applications that help monitor and enhance cpu scheduling performances. These applications include: Profiling scheduling latencies. I will talk about an application of eBPF to collect scheduling latency stats. Profiling resource efficiency. For background, I will first introduce the

                                                              Linux Plumbers Conference 2021
                                                            • 今「eBPFを使ったカーネルの拡張」が熱い! eBPFで“カーネルを拡張できるおもちゃ”を作ってみた話

                                                              Kernel/VM探検隊は、カーネルやVM、およびその他なんでもIT技術の話題ジャンルについて誰でも何でも発表してワイワイ盛り上がろうという会です。西村啓佑氏は、eBPFを使ったカーネル拡張の開発について発表しました。 eBPFの概要 西村啓佑氏:あらためまして、mumumuです。「eBPFを使ったオレオレカーネル拡張入門」というタイトルで発表を始めます。今日の発表の目次は(スライドを示して)こんな感じです。 まず、eBPF(extended Berkeley Packet Filter)がけっこう背景になってくるのですが、概要としては、カーネルの中で動いているVM。Kernel/VMの両方を回収できるすごいやつなんですね。こいつは実行前にバイトコードを検証するので、安全に実行できるというのが売りです。基本的には、イベントトリガーで動作するプログラムになっていて、それぞれのイベントに対応す

                                                                今「eBPFを使ったカーネルの拡張」が熱い! eBPFで“カーネルを拡張できるおもちゃ”を作ってみた話
                                                              • nftables - Debian Wiki

                                                                Translation(s): English - Italiano - Русский nftables is a framework by the Netfilter Project that provides packet filtering, network address translation (NAT) and other packet mangling. Two of the most common uses of nftables is to provide firewall support and Network Address Translation (NAT). nftables is the default and recommended firewalling framework in Debian, and it replaces the old iptabl

                                                                • 【記事移転いたしました】eBPFでお手軽?ファジング|ラック・セキュリティごった煮ブログ編集部

                                                                  セキュリティエンジニアがエンジニアの方に向けて、 セキュリティやIT技術に関する情報を発信していくアカウントです。

                                                                    【記事移転いたしました】eBPFでお手軽?ファジング|ラック・セキュリティごった煮ブログ編集部
                                                                  • Cilium for Kubernetes networking: Why we use it and why we love it

                                                                    Kubernetes networking Palark CNI eBPF Cilium for Kubernetes networking: Why we use it and why we love it Thanks to the CNI (Container Network Interface), Kubernetes offers a good deal of options to address your networking needs. After years of relying on a simple solution, we faced a growing demand for advanced features backed by our customers’ needs. Cilium brought the networking in our K8s platf

                                                                      Cilium for Kubernetes networking: Why we use it and why we love it
                                                                    • AppArmor - ArchWiki

                                                                      AppArmor は強制アクセス制御 (MAC) のシステムです。Linux Security Modules (LSM) 上に実装されています。 他の LSM と同じように、AppArmor はデフォルトの任意アクセス制御 (DAC) を置き換えるというよりも補完するものです。そのため、プロセスに最初から持っている権限よりも高い権限を与えることはできません。 Ubuntu や SUSE などのディストリビューションはデフォルトで AppArmor を使用しています。RHEL (とその派生) は正しく機能させるのにユーザー空間における設定が必要になる SELinux を使っています。SELinux は全てのファイル・プロセス・オブジェクトにラベルを貼るため非常に柔軟性があります。しかしながら SELinux の設定は非常に複雑で、ファイルシステムが SELinux に対応していなければなり

                                                                        AppArmor - ArchWiki
                                                                      • 3.3. nmcli を使用する IP ネットワークの設定 Red Hat Enterprise Linux 7 | Red Hat Customer Portal

                                                                        ネットワークガイド I. 作業開始前の準備 Expand section "I. 作業開始前の準備" Collapse section "I. 作業開始前の準備" 1. ネットワークトピックの概要 Expand section "1. ネットワークトピックの概要" Collapse section "1. ネットワークトピックの概要" 1.1. IP ネットワークと非 IP ネットワークの比較 1.2. 静的 IP アドレス指定と動的 IP アドレス指定の比較 1.3. DHCP クライアントの動作の設定 Expand section "1.3. DHCP クライアントの動作の設定" Collapse section "1.3. DHCP クライアントの動作の設定" 1.3.1. DHCPv4 の永続化 1.4. ワイヤレス規制ドメインの設定 1.5. netconsoleの設定 1.6.

                                                                          3.3. nmcli を使用する IP ネットワークの設定 Red Hat Enterprise Linux 7 | Red Hat Customer Portal
                                                                        • KRSI と fmod_ret 入門編 - Qiita

                                                                          この記事は Linux Advent Calendar 2021 の25日目の記事です。 はじめに KRSI は、 LSM hook と eBPF を用いて、ユーザが自分自身の MAC ポリシーを定義することができるようになる仕組みである。具体的には、 LSM フック可能な場所に BPF プログラムをアタッチして、通信をブロックしたりすることが可能である。 さらに、この KRSI の開発過程で、セキュリティな人達以外に対しても KRSI の仕組みを汎用的に提供するために、 fmod_ret が導入された。 fmod_ret のフック対象は LSM フック箇所に限らず、エラーインジェクションが可能な関数にも広がっている。 今回は libbpf を用いて、その自由度の高さを体験していこうと思う。 なお、あまりにも神にも悪魔にもなれる機能なので、本投稿の疑似コードはそのままでは使えないよう抜粋し

                                                                            KRSI と fmod_ret 入門編 - Qiita
                                                                          • eBPF assembly with LLVM

                                                                            From C to Object File Down to the Instructions eBPF Step by Step with LLVM Compiling from C to eBPF Assembly Assembling to an ELF Object File A Human-Friendly Output with llvm-objdump Inline Assembly Conclusion This post was left aside as a draft for a long time. Most of it was written in December 2017. I publish it with the hope it can still be helpful today, even though the Cilium guide also cov

                                                                              eBPF assembly with LLVM
                                                                            • USENIX LISA2021 BPF Internals (eBPF)

                                                                              Recent posts: 24 Mar 2024 » Linux Crisis Tools 17 Mar 2024 » The Return of the Frame Pointers 10 Mar 2024 » eBPF Documentary 28 Apr 2023 » eBPF Observability Tools Are Not Security Tools 01 Mar 2023 » USENIX SREcon APAC 2022: Computing Performance: What's on the Horizon 17 Feb 2023 » USENIX SREcon APAC 2023: CFP 02 May 2022 » Brendan@Intel.com 15 Apr 2022 » Netflix End of Series 1 09 Apr 2022 » Te

                                                                              • BPF、eBPF、XDPそしてBpfilter...

                                                                                Netronomeより。 By Nic Viljoen あなたは3.15以降、カーネルコミュニティで拡張Berkeley Packet Filter(eBPF)の開発をフォローしているかも知れません。あるいは、1992年にバン・ジェイコブソンが行った仕事とBerkeley Packet Filterを関連付けるかも知れません。あなたは、tcpdumpを何年も使っているかも知れない、あるいは既にデータプレーンでそれを詳細に調べ始めているかも知れません! このブログでは、パフォーマンス・ネットワーキングの観点からの重要な開発、そして大規模なデータセンター・オペレータが始まって以来、関連がある同じ方法で、ネットワーク・オペレータ、システム管理者、エンタープライズ・ソリューション・プロバイダにとって重要になっている理由を非常に高いレベルで説明することを目的としています。 BPF or eBPF—違

                                                                                  BPF、eBPF、XDPそしてBpfilter...
                                                                                • xv6にネットワーク機能を実装した : DSAS開発者の部屋

                                                                                  在宅勤務に移行してから1ヶ月半ほど経過しました。通勤という概念が消滅したおかげで午前中から活動できるようになった @pandax381 です。 要約 フルスクラッチで自作した TCP/IP プロトコルスタックを xv6 に組み込み、一通りの機能が動作するようになりました。 I publish the implementation of TCP/IP network stack on xv6. I ported my user-mode TCP/IP stack, which was originally developed for learning, and added the e1000 driver and socket system calls. Some parts are still not enough, but they are working.https://t.co/nh

                                                                                    xv6にネットワーク機能を実装した : DSAS開発者の部屋