Submit Search
DPDK QoS
6 likes
2,486 views
Masaru Oki
DPDK QoS design and implementation.
Technology
Read more
1 of 11
Download now
Downloaded 21 times
1
2
3
4
5
6
7
8
9
10
11
More Related Content
What's hot
(20)
PDF
DPDKによる高速コンテナネットワーキング
Tomoya Hibi
PDF
NETCONFとYANGの話
Masakazu Asama
PDF
10GbE時代のネットワークI/O高速化
Takuya ASADA
PPTX
FD.io VPP事始め
tetsusat
PDF
Intel dpdk Tutorial
Saifuddin Kaijar
PDF
Linux Linux Traffic Control
SUSE Labs Taipei
PDF
ネットワークOS野郎 ~ インフラ野郎Night 20160414
Kentaro Ebisawa
PDF
20111015 勉強会 (PCIe / SR-IOV)
Kentaro Ebisawa
PDF
閉域網接続の技術入門
Masayuki Kobayashi
PDF
Linux packet-forwarding
Masakazu Asama
PDF
NEDIA_SNIA_CXL_講演資料.pdf
Yasunori Goto
PPTX
3GPP TR38.801-e00まとめ
Tetsuya Hasegawa
PDF
TC Flower Offload
Netronome
PPTX
Linux Network Stack
Adrien Mahieux
PPTX
Introduction to DPDK
Kernel TLV
PDF
How to Speak Intel DPDK KNI for Web Services.
Naoto MATSUMOTO
PPTX
Tutorial: Using GoBGP as an IXP connecting router
Shu Sugimoto
PDF
HPCユーザが知っておきたいTCP/IPの話 ~クラスタ・グリッド環境の落とし穴~
Ryousei Takano
PDF
DPDKを用いたネットワークスタック,高性能通信基盤開発
slankdev
PDF
BGP Unnumbered で遊んでみた
akira6592
DPDKによる高速コンテナネットワーキング
Tomoya Hibi
NETCONFとYANGの話
Masakazu Asama
10GbE時代のネットワークI/O高速化
Takuya ASADA
FD.io VPP事始め
tetsusat
Intel dpdk Tutorial
Saifuddin Kaijar
Linux Linux Traffic Control
SUSE Labs Taipei
ネットワークOS野郎 ~ インフラ野郎Night 20160414
Kentaro Ebisawa
20111015 勉強会 (PCIe / SR-IOV)
Kentaro Ebisawa
閉域網接続の技術入門
Masayuki Kobayashi
Linux packet-forwarding
Masakazu Asama
NEDIA_SNIA_CXL_講演資料.pdf
Yasunori Goto
3GPP TR38.801-e00まとめ
Tetsuya Hasegawa
TC Flower Offload
Netronome
Linux Network Stack
Adrien Mahieux
Introduction to DPDK
Kernel TLV
How to Speak Intel DPDK KNI for Web Services.
Naoto MATSUMOTO
Tutorial: Using GoBGP as an IXP connecting router
Shu Sugimoto
HPCユーザが知っておきたいTCP/IPの話 ~クラスタ・グリッド環境の落とし穴~
Ryousei Takano
DPDKを用いたネットワークスタック,高性能通信基盤開発
slankdev
BGP Unnumbered で遊んでみた
akira6592
Viewers also liked
(20)
PDF
Dpdk環境の話
Masaru Oki
PPTX
apps of nanotech
KARTHICK JAGA
PDF
Cuaderno caligrafia anaya 2
mjrivasmedina
PPT
8 Campaign Tactics if I am a 2016 Presidentiable
Jose Radin Garduque
PPT
8 Colorful Ideas for My Country (The Filipino Youth)
Jose Radin Garduque
PPTX
Thailand (Socio-Cultural Setting)
Jose Radin Garduque
PPTX
Myanmar: Political Setting
Jose Radin Garduque
PPTX
Vietnam: Socio-Cultural Setting
Jose Radin Garduque
PPTX
bls
Andretam
PPTX
Cambodia
Jose Radin Garduque
PDF
Lagopus on small arm board
Masaru Oki
PPTX
Singapore: Political Setting
Jose Radin Garduque
PPT
Philippine Civil War Theories
Jose Radin Garduque
PPTX
The One Who Deserves (Silent Protest)
Jose Radin Garduque
PPTX
cgfh
Andretam
PPTX
Dracula presentation with answers ok
alexteacherproa
PPTX
Thailand (Political Setting)
Jose Radin Garduque
PPT
PARADIGMAS URBANOS. Guía sitio 2016
Arquitectura Civil
PPTX
Indonesia: Socio-Cultural Setting
Jose Radin Garduque
DOCX
Bao cao thuc_tap
Tan Do
Dpdk環境の話
Masaru Oki
apps of nanotech
KARTHICK JAGA
Cuaderno caligrafia anaya 2
mjrivasmedina
8 Campaign Tactics if I am a 2016 Presidentiable
Jose Radin Garduque
8 Colorful Ideas for My Country (The Filipino Youth)
Jose Radin Garduque
Thailand (Socio-Cultural Setting)
Jose Radin Garduque
Myanmar: Political Setting
Jose Radin Garduque
Vietnam: Socio-Cultural Setting
Jose Radin Garduque
bls
Andretam
Cambodia
Jose Radin Garduque
Lagopus on small arm board
Masaru Oki
Singapore: Political Setting
Jose Radin Garduque
Philippine Civil War Theories
Jose Radin Garduque
The One Who Deserves (Silent Protest)
Jose Radin Garduque
cgfh
Andretam
Dracula presentation with answers ok
alexteacherproa
Thailand (Political Setting)
Jose Radin Garduque
PARADIGMAS URBANOS. Guía sitio 2016
Arquitectura Civil
Indonesia: Socio-Cultural Setting
Jose Radin Garduque
Bao cao thuc_tap
Tan Do
Ad
More from Masaru Oki
(20)
PDF
NetBSD移植の昔話
Masaru Oki
PDF
Rust-DPDK
Masaru Oki
PDF
Rust-DPDK
Masaru Oki
PDF
Lagopusとvagrant
Masaru Oki
PDF
OpenFlowでいろんなプロトコルを 話そうとするとどうなるか
Masaru Oki
PDF
今よりも少し(?)昔、 Windowsを作ろうとした話
Masaru Oki
PDF
Onieで遊んでみようとした話
Masaru Oki
PDF
GPD WINが来た!
Masaru Oki
PDF
新生Lagopus2017(仮称)
Masaru Oki
PDF
Lagopus as open flow hybrid switch 実践編
Masaru Oki
PDF
LagopusでPPPoEを使えるか考えてみた件
Masaru Oki
PDF
Lagopus どれだけ速いのか
Masaru Oki
PDF
Lagopus 0.2.7
Masaru Oki
PDF
Ryu+Lagopusで OpenFlowの動きを見てみよう
Masaru Oki
PDF
Lagopus match improvements
Masaru Oki
PDF
Lagopus 0.2.4
Masaru Oki
PDF
Open flow tunnel extension on lagopus vswitch
Masaru Oki
PDF
Lagopus as open flow hybrid switch
Masaru Oki
PDF
Net bsd advent calendar 2015 bpf
Masaru Oki
PDF
Using rump on NetBSD 7.0
Masaru Oki
NetBSD移植の昔話
Masaru Oki
Rust-DPDK
Masaru Oki
Rust-DPDK
Masaru Oki
Lagopusとvagrant
Masaru Oki
OpenFlowでいろんなプロトコルを 話そうとするとどうなるか
Masaru Oki
今よりも少し(?)昔、 Windowsを作ろうとした話
Masaru Oki
Onieで遊んでみようとした話
Masaru Oki
GPD WINが来た!
Masaru Oki
新生Lagopus2017(仮称)
Masaru Oki
Lagopus as open flow hybrid switch 実践編
Masaru Oki
LagopusでPPPoEを使えるか考えてみた件
Masaru Oki
Lagopus どれだけ速いのか
Masaru Oki
Lagopus 0.2.7
Masaru Oki
Ryu+Lagopusで OpenFlowの動きを見てみよう
Masaru Oki
Lagopus match improvements
Masaru Oki
Lagopus 0.2.4
Masaru Oki
Open flow tunnel extension on lagopus vswitch
Masaru Oki
Lagopus as open flow hybrid switch
Masaru Oki
Net bsd advent calendar 2015 bpf
Masaru Oki
Using rump on NetBSD 7.0
Masaru Oki
Ad
Recently uploaded
(9)
PPTX
勉強会_ターミナルコマンド入力迅速化_20250620. pptx. .
iPride Co., Ltd.
PDF
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
PPTX
色について.pptx .
iPride Co., Ltd.
PPTX
Vibe Codingを始めよう 〜Cursorを例に、ノーコードでのプログラミング体験〜
iPride Co., Ltd.
PDF
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
PDF
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
PDF
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
PDF
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
PDF
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
勉強会_ターミナルコマンド入力迅速化_20250620. pptx. .
iPride Co., Ltd.
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
色について.pptx .
iPride Co., Ltd.
Vibe Codingを始めよう 〜Cursorを例に、ノーコードでのプログラミング体験〜
iPride Co., Ltd.
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
DPDK QoS
1.
DPDK QoS May 17,
2015 Masaru OKI @masaru0714
2.
● Linux上で動く、高速なパケットI/O処理を実現するためのライブラリ。 ○ C言語で書かれている。C++からも呼び出し可能。 ○
特定のEthrenetポートを「DPDK専用」に切り替えて送受信する。 ○ 特定のCPU(コア/スレッド)を「DPDK専用」として動作させる。 ○ 受信パケットの単純転送で、10GbEワイヤーレートが出せる。 ○ メモリープール管理やロックレスリングバッファなどの機能も提供。 ○ ネットワークスタックは含まない。 ● Intelが開発し、現在はhttp://dpdk.org/ にて開発が続いている。 ● 2015年5月時点での最新バージョンはv2.0.0 ● BSD Licenseで公開されている。 About DPDK
3.
main() { rte_mbuf *array[size];
/* パケット受信用バッファ */ init(); /* もろもろ初期化 */ for (;;) { rte_eth_rx_burst(0, 0, array, size); /* API: portid 0のパケットを受信 */ rte_eth_tx_burst(1, 0, array, size); /* API: パケットをportid 1に送信 */ } } 「パケットを受信」「データをパケットとして送信」がAPIになっているので呼び出す。 複数ポートを処理する場合はこれらを並べるか、スレッドを分けて並列に動かす。 DPDKのプログラム
4.
QoS: Quality of
Service (サービス品質) 通信パケットをすべて均等に扱うのではなく、種類や宛先、通信量等の 種類により流量を加減したり優先度を変えるなど、通信内容にに対して 要求される通信品質を適切に確保する技術および実装。 DPDKで提供されているQoSの実装は2つある。 ● qos_meter: メータリング(パケットを流量によって3段階に色分けする) ● qos_sched: スケジューリング(優先度等によるパケットの並べ替え) DPDKのQoS
5.
RFCに基づく2種類のメータリングAPIが用意されている。 ● RFC2697 srtcm
(Single Rate Three Color Meter) ● RFC2698 trtcm (Two Rate Three Color Meter) 使い方 経過時間(Time Stamp Counterの値)とともにパケットをパラメータに与え てrte_meter APIを呼び出すと、3種類のcolorのどれに相当するかが返っ てくる。(パラメータ詳細はRFCやDPDKのドキュメントを参照) ○ GREEN ○ YELLOW ○ RED ユーザプログラムはcolorに応じて処理をする。(REDはdropするなど) DPDK QoS (meter)
6.
階層化スケジューラが用意されている。 ● あらかじめEthernetポートを論理的に分割しておく。 ● 分割単位は階層化されている。 ●
ユーザプログラムは受信パケットに対して分割単位の情報を書き込む ● スケジューラは分割単位の優先度などに応じてパケットを並べ替える。 ● スケジューラはキューを持っていて、あふれたパケットはdropされる。 階層は下記となっている。 1. Port 2. Subport 3. Pipe 4. Traffic Class 5. Queue DPDK QoS (sched)
7.
● Port ○ Ethernetポート。複数ポートの優先順位は均等。 ●
Subport ○ Portを単数あるいは複数に分割したもの。 ○ それぞれ転送レートを指定できる。 ● Pipe ○ Subportを単数あるいは複数に分割したもの。帯域は等分される。 ● Traffic class ○ Pipeを流れるパケットを優先度別にクラスわけする。4クラス固定。 ● Queue ○ Pipeを流れるパケットをキューイングする最小単位。 ○ Traffic classごとに4固定。Weighted Round Robin(WRR)でdequeueされる。 QoS(sched)の各階層
8.
4キュー 4クラス 図にするとこう sched_port subport 0 subport
1 subport 2 pipe 2pipe 1pipe 0 pipe 0 pipe 1 tc0 tc1 tc2 tc3 tc0 tc1 tc2 tc3 tc0 tc1 tc2 tc3 tc0 tc1 tc2 tc3 tc0 tc1 tc2 tc3 tc0 tc1 tc2 tc3q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 任意の帯域 pipe 1pipe 0subportを等分割
9.
1. 準備 1.1. rte_eth_dev_configure()等でポートの使用準備 1.2.
rte_sched_port_config() 1.3. rte_sched_subport_config() 1.4. rte_sched_pipe_config() 2. 送受信 2.1. rte_eth_rx_burst()でパケット受信 2.2. rte_sched_port_pkt_write() 2.3. rte_sched_port_enqueue() 2.4. rte_sched_port_dequeue() 2.5. rte_eth_tx_burst()でパケット送信 使い方
10.
1. rte_sched_*_config あらかじめスケジューリングの階層パラメータを設定 2. rte_sched_port_pkt_write パケットをどのキューに入れるか情報を書き込み 3.
rte_sched_port_enqueue キューイングすると 4. rte_sched_port_dequeue スケジューリング設定に応じた順序でパケットを取り出せる。 大雑把な解説
11.
4キュー 4クラス rte_sched_port_pkt_write() subport 0 subport
1 subport 2 pipe 2pipe 1pipe 0 pipe 0 pipe 1 tc0 tc1 tc2 tc3 tc0 tc1 tc2 tc3 tc0 tc1 tc2 tc3 tc0 tc1 tc2 tc3 tc0 tc1 tc2 tc3 tc0 tc1 tc2 tc3q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 q0 q1 q2 q3 任意の帯域 pipe 1pipe 0subportを等分割 パケットをどのキューに書き込むかを具体的に指定。 sched_port
Download