160311_icm2015-muramatsu-v2.pptx

Similar documents
Lagopus SDN/OpenFlow switch: yet another SDN/OF switch agent and high-performance software switch

スライド 1

スライド 1

PowerPoint プレゼンテーション

[公開OK][空閑さん資料]kuga-ovs-fpga.pptx

Software-Defined Tester(SDT) を用いた高精度遅延測定による SDN/NFV 品質向上 富士通アドバンストテクノロジ株式会社システム技術統括部大久保克彦 0 Copyright 2017 FUJITSU AD

netmapによる 実践パケット処理プログラミング

PowerPoint プレゼンテーション

IO Linux Vyatta PC

bitvisor_summit.pptx

Microsoft PowerPoint - NV研究会_201404_amemiya_fin.pptx

PF1000_intro5

Microsoft Word - Dolphin Expressによる10Gbpソケット通信.docx


CTA 82: CTA A A B B A B A, C A A A D A B Max-Planck-Inst. fuer Phys. C D

目次 1 はじめに 登録商標 商標 注意事項 免債事項 SR-IOV の機能概要 性能検証事例 測定環境 測定結果 各方式による共有 NIC 性能比較 ( ポートあ

VMware VirtualCenter: Virtual Infrastructure Management Software

Microsoft PowerPoint - ONIC_SD-WAN_ver3

ServerView Resource Orchestrator V3.0 Cloud Edition サポート機種情報

strtok-count.eps

nakayama15icm01_l7filter.pptx

PowerPoint プレゼンテーション

total-all-nt.dvi

Dual Stack Virtual Network Dual Stack Network RS DC Real Network 一般端末 GN NTM 端末 C NTM 端末 B IPv4 Private Network IPv4 Global Network NTM 端末 A NTM 端末 B

PowerPoint プレゼンテーション

ovp_whitepaper-1

Microsoft PowerPoint - JANOG19-u10-GigaPcap(NonAnim).ppt

X-MON3

hpc141_shirahata.pdf

PC Development of Distributed PC Grid System,,,, Junji Umemoto, Hiroyuki Ebara, Katsumi Onishi, Hiroaki Morikawa, and Bunryu U PC WAN PC PC WAN PC 1 P

netmap Web syslog NetFlow I/O netmap netmap OS fluentd 10GbE 1,500 50,000pps 100% netmap NetFlow i

Microsoft Word - nvsi_080177jp_trendmicro_bakbone.doc

Microsoft Word - nvsi_050110jp_netvault_vtl_on_dothill_sannetII.doc

今週の進捗

スライド 1

ポート拡張オプション(10GBASE-T×2)

今から間にあう仮想化入門とXenについて

Microsoft PowerPoint - DNS_BoF_SCS_ pptx

untitled

ご使用上の注意

r10s4-fn03.pdf

スライド 1

VNSTProductDes3.0-1_jp.pdf

Microsoft PowerPoint - mplsjp

t20s3-fn09.pdf

untitled


HTML5無料セミナ.key

情報処理学会研究報告 IPSJ SIG Technical Report Vol.2014-DPS-159 No.31 Vol.2014-MBL-71 No /5/16 仮想化環境における読込み書込み比率を考慮した動的 VM メモリ割り当て 1 坂本雅哉 1 山口実靖 近年, サーバの

ついに登場 VMware vsphere 4 ~ 仮想化技術を用いたシステムの簡素化とコスト削減策 ~ 2009 年 6 月 30 日ヴイエムウェア株式会社テクノロジーアライアンス部長森田徹治

P P P P P P P OS... P P P P P P

(Microsoft PowerPoint - E6x5C SDXC Demo Seminar [\214\335\212\267\203\202\201[\203h])

Windows Server 2016 Hyper-V ストレージQoS機能の強化

04-process_thread_2.ppt

[1] [2] [3] (RTT) 2. Android OS Android OS Google OS 69.7% [4] 1 Android Linux [5] Linux OS Android Runtime Dalvik Dalvik UI Application(Home,T

untitled

PRIMERGY TX100 S3 未サポートOS動作検証確認情報

Run-Based Trieから構成される 決定木の枝刈り法

(Microsoft PowerPoint - Toyo_OpenFlowStage\224z\225z\227p_R1.ppt)

PRIMERGY TX140 S1 未サポートOS動作検証確認情報

Monthly Research / セキュアハードウェアの登場とその分析

Second-semi.PDF


PRIMERGY TX100 S3 未サポートOS動作検証確認情報

template.dvi

_JANOG44_LINE_tsuchiya

VNXe3100 ハードウェア情報ガイド

ip nat outside source list コマンドを使用した設定例

Microsoft PowerPoint VIOPS.ppt

目次 1. はじめに 用語説明 対象アダプタ P HBA/2P HBAで異なる性能 付録 ( 性能測定環境 ) P HBAでの性能測定環境 P HBAでの性能測定環境 本書の

コスト効率の高い業界標準サーバーへのERPの導入

提案書

PRIMERGY RX100 S5 未サポートOS動作検証確認情報

Zend Server 7 ライセンス情報 2014/12/09 株式会社イグアスソリューション事業部

ストリームを用いたコンカレントカーネルプログラミングと最適化 エヌビディアジャパン CUDAエンジニア森野慎也 GTC Japan 2014

この方法では, 複数のアドレスが同じインデックスに対応づけられる可能性があるため, キャッシュラインのコピーと書き戻しが交互に起きる性のミスが発生する可能性がある. これを回避するために考案されたのが, 連想メモリアクセスができる形キャッシュである. この方式は, キャッシュに余裕がある限り主記憶の

IPSJ SIG Technical Report Vol.2014-IOT-24 No /2/28 OpenFlow Software Defined Networking (SDN) LDAP Web OpenFlow SDN Implementatio

富士通PRIMERGYサーバ/ETERNUSストレージとXsigo VP560/VP780の接続検証

PowerPoint プレゼンテーション

PRIMERGY TX1310 M1 未サポートOS動作検証確認情報

untitled

PRIMERGY TX1310 M3 未サポートOS動作検証確認情報

Microsoft Word - nvsi_090198_quantum dxi7500_nvb.doc

PRIMERGY TX100 S3 未サポートOS動作検証確認情報

第6期末セミナー2006-1rev1.ppt

23 Fig. 2: hwmodulev2 3. Reconfigurable HPC 3.1 hw/sw hw/sw hw/sw FPGA PC FPGA PC FPGA HPC FPGA FPGA hw/sw hw/sw hw- Module FPGA hwmodule hw/sw FPGA h

CPU Levels in the memory hierarchy Level 1 Level 2... Increasing distance from the CPU in access time Level n Size of the memory at each level 1: 2.2

PowerPoint プレゼンテーション

ERDAS IMAGINE における処理速度の向上 株式会社ベストシステムズ PASCO CORPORATION 2015

マルチコアPCクラスタ環境におけるBDD法のハイブリッド並列実装

update

PRIMERGY RX200 S8/RX350 S7とETERNUS LT40でのAcronis Backup & Recovery 11.5 Advanced Serverによるイメージバックアップ動作検証

富士通PCサーバ「PRIMERGY RX2530 M4」における「TeraStation TS5010 / TS3010」シリーズ動作検証報告

PRIMERGY TX150 S7 SAS アレイコントローラカード <RAID 5> フリーOS 動作確認情報

untitled

富士通社製PCサーバ(PRIMERGY)と、Exablaze社製 超低遅延10Gb イーサネット・アダプター(ExaNIC)との接続検証報告書

Linuxのベンチマーク評価 とボトルネック解析

PRIMERGY TX1320 M1 未サポートOS動作検証確認情報

目次 1. はじめに 用語説明 対象アダプタ P HBA/2P HBA/4P HBA で異なる性能 付録 P HBA での性能測定環境 P HBA での性能測定環境 P

ためのオーバーヘッドが課題となりつつある しかしこのオーバーヘッドに関する数値はほとんど公開されていない この論文ではこの cache coherency の時間を Linux カーネルで提供されている atomic_inc 関数を用いて測定する方法を新たに考案し 実測プログラムを作成した 実測はプ

Transcription:

Linux におけるパケット処理機構の 性能評価に基づいた NFV 導 の 検討 村松真, 川島 太, 中 裕貴, 林經正, 松尾啓志 名古屋 業 学 学院 株式会社ボスコ テクノロジーズ ICM 研究会 2016/03/11

研究 的 VM 仮想 NIC バックエンド機構 仮想化環境 仮想スイッチ パケット処理機構 物理環境 性能要因を考察 汎 IA サーバ NFV 環境に適したサーバ構成を検討 1

アウトライン u 研究 的 ü パケット処理機構と仮想 NIC バックエンド機構 u 評価内容 評価 (1): 物理サーバ上でのパケット転送評価 (2): VMと仮想スイッチ間のパケット転送評価 (3): VM 上でのパケット転送 u NFV 環境のサーバ構成の検討 u まとめと今後の課題 2

Network Functions Virtualization (NFV) u ソフトウェアでネットワーク機能を実現 専 ハードウェア機器 VM VM VM 汎 IA サーバ 機器コスト 運 コストを削減 迅速かつ柔軟にサービスを提供可能 3

汎 IA サーバの課題 VM 仮想 NIC バックエンド機構 パケットコピー コンテキストスイッチ 仮想スイッチ OpenFlow 処理 パケット処理機構 割り込み 新たなパケット処理機構 ( 仮想スイッチ )/ 仮想 NICバックエンド機構が提案 汎 IAサーバ 4

パケット処理機構 / 仮想 NIC バックエンド機構 u パケット処理機構 ( 仮想スイッチ ) ü NAPI: Linux New API (Open vswitch) ü netmap (VALE) ü Intel DPDK (OVS with DPDK, Lagopus) u 仮想 NIC バックエンド機構 ü vhost-net ü vhost-user 5

パケット処理機構と仮想スイッチ Linux NAPI netmap DPDK user space Open vswitch VALE スイッチ 直接参照 netmap API DMA page DPDK API memory kernel space skb DMA page memory DMA 割り込み DMA / ポーリング netmap ring memory DMA 割り込み DMA / ポーリング DMA from User Space DMA to User Space ポーリング NIC NIC NIC 6

OVS/DPDK と Lagopus の違い OVS/DPDK Linux NAPI (Run to completion) netmap DPDK CPU1 Processing user space I/O RX Processing I/O TX VALEスイッチ フロー単位で並列処理 I/O RX Processing I/O TX 直接参照 Open vswitch Lagopus (Pipeline) CPU2 netmap API CPU1 DPDK API DMA I/O page TX (Hugepage) I/O RX memory kernel space I/O RX skb --- 処理 --- 出 をパイプライン処理 DMA page Processing memory DMA 割り込み DMA / ポーリング NIC I/O RX Processing netmap ring CPU2 memory DMA 割り込み DMA / ポーリング I/O TX I/O TX NIC CPU3 DMA from User Space NIC DMA to User Space ポーリング 7

仮想 NIC バックエンド機構 vhost-net memory vhost-user memory バッファ user space kernel space VM コンテキストスイッチが発 vhost-net メモリコピー memory 参照 VM メモリコピー コンテキストスイッチが発 しない 物理サーバ 物理サーバ 8

アウトライン u 研究 的 ü パケット処理機構と仮想 NIC バックエンド機構 u 評価内容 評価 (1): 物理サーバ上でのパケット転送評価 (2): VMと仮想スイッチ間のパケット転送評価 (3): VM 上でのパケット転送 u NFV 環境のサーバ構成の検討 u まとめと今後の課題 9

本研究における評価対象と評価項 物理環境の評価対象 仮想化環境の評価対象 パケット処理機構 Linux NAPI netmap Intel DPDK 仮想スイッチ Open vswitch VALE Lagopus 仮想 NIC バックエンド機構 vhost-net vhost-user 評価項 フロー数 エントリ数 チェーニング数 VM のパケット処理機構 単 フロー 単 エントリ 単 VM Linux NAPI 複数フロー 複数エントリ 複数 VM netmap Intel DPDK パケット転送速度 パケット転送遅延時間 遅延ジッタ 10

アウトライン u 研究 的 ü パケット処理機構と仮想 NIC バックエンド機構 u 評価内容 評価 (1): 物理サーバ上でのパケット転送評価 (2): VMと仮想スイッチ間のパケット転送評価 (3): VM 上でのパケット転送 u NFV 環境のサーバ構成の検討 u まとめと今後の課題 11

評価 (1): 評価環境 スループット 遅延 Open Source Traffic Analyzer エントリ数 : 1 in_port=1, output:2 仮想スイッチ パケット処理機構 port2 port1 1 フロー UDP 10G Ethernet 物理サーバ port1 port2 物理サーバの性能 CPU Intel Core i7 3.4GHz (4core, HT:off) Memory 16GB NIC Intel X540-T2 10Gb Ethernet Open Source Traffic Analyzer, https://people.kth.se/~danieltt/pktgen/ OS OVS netmap Lagopus DPDK ソフトウェアバージョン Fedora 22 (4.0.4-301-x86 64) v2.4.0 v11.1 v0.2.3 v2.1.0 12

評価 (1): 評価対象 / 評価内容 u 評価対象 OVS/NAPI VALE/netmap OVS/DPDK Lagopus/DPDK 仮想スイッチ OVS VALE OVS Lagopus ( 動作空間 ) (Kernel) (User) (User) (User) パケット処理機構 NAPI netmap DPDK DPDK u 評価内容 ü パケット転送速度 ü パケット転送遅延 13

評価 (1): パケット転送速度 64 128 256 384 512 768 1024 1500 10 [B] Throughput [Gbps] 8 6 4 2 0 v0.2.4 で改善 約 3.5Gbps (64B) OVS/NAPI VALE/netmap OVS/DPDK Lagopus/DPDK 14

評価 (1): 1 パケットに必要な CPU サイクル数 u CPU Hz (3.4G) pps から概算 OVS/NAPI VALE/netmap OVS/DPDK Lagopus/DPDK 2,294 288 262 7,389 OVS/NAPI に焦点を当てて要因を考察 Assessing Soft- and Hardware Bottlenecks in PC-based Packet Forwarding Systems, Paul Emmerich et. al, Technische Universität München, ICN 2015 15

評価 (1): OVS/NAPI の性能要因 skb Cycles 2500 2000 1500 1000 L1 Cache header skb Linear Buf memcpy DMA page memory RAM 2500 2000 Cycles NIC 1500 1000 500 0 500 memcpyだけで約 1000サイクル消費 0 64 128 256 64 128 256 Data Size [B] Data Size [B] 16

評価 (1): OVS/NAPI の性能要因 skb skb の確保 / 解放 header skb Linear Buf lock/unlock 6 回 memcpy DMA page memory 根源的な処理に約 50%(1000~/2294) のサイクル数を消費 NIC netmap, DPDK はゼロコピー, ロック回数の削減により 速化を実現 17

評価 (1): パケット転送遅延 u 転送レート ü 100K pps Counts 500,000 400,000 300,000 200,000 OSTA OVS/DPDK VALE/netmap OVS/NAPI 100,000 0 Lagopus/DPDK 10 20 30 40 Latency [us] 18

評価 (1): パケット転送遅延 Counts Counts 70,000 60,000 50,000 40,000 30,000 20,000 10,000 0 70,000 60,000 50,000 40,000 30,000 20,000 10,000 0 500K OSTA OVS/NAPI VALE/netmap OVS/DPDK Lagopus/DPDK ハードウェア割り込みとポーリングが半々に混在 10 20 30 40 Latency [us] 1M OSTA OVS/NAPI VALE/netmap OVS/DPDK Lagopus/DPDK DPDKはポーリングのみであるため遅延ジッタが常に安定 ほとんどのパケットをポーリング処理 10 20 30 40 Latency [us] 19

アウトライン u 研究 的 ü パケット処理機構と仮想 NIC バックエンド機構 u 評価内容 評価 (1): 物理サーバ上でのパケット転送評価 (2): VMと仮想スイッチ間のパケット転送評価 (3): VM 上でのパケット転送 u NFV 環境のサーバ構成の検討 u まとめと今後の課題 20

評価 (2): 評価環境 VM の性能 CPU Memory OS 2 cores 1 GB CentOS 7.2 Open Source Traffic Analyzer 1 フロー UDP VM port2 仮想 NIC バックエンド機構 OVS エントリ数 : 1 port1 観測点 in_port=2, output:1 物理サーバ port1 10G Ethernet 21

評価 (2): 各実装パターンの評価 Pattern 1 Pattern 2 コンテキストスイッチ コンテキストスイッチ以外 VM VM OVS (User) User Kernel User Kernel OVS (Kernel) vhost-net port1 Pattern 3 VM OVS (DPDK) vhost-net User vhost-net port1 Pattern 4 (vhost-user) VM OVS (DPDK) port1 port1 22

評価 (2): 評価結果 10 64B 128B 256B 384B 512B 768B 1024B 1500B Throughput [Gbps] 8 6 コンテキストスイッチが発 しない 4 2 メモリコピーカーネル / ユーザ空間間のコンテキストスイッチ 0 Pattern 1 Pattern 2 Pattern 3 Pattern 4 23

アウトライン u 研究 的 ü パケット処理機構と仮想 NIC バックエンド機構 u 評価内容 評価 (1): 物理サーバ上でのパケット転送評価 (2): VMと仮想スイッチ間のパケット転送評価 (3): VM 上でのパケット転送 u NFV 環境のサーバ構成の検討 u まとめと今後の課題 24

評価 (3): 評価環境 ü Pattern 1 と Pattern 4を対象 vhost-net/ovs(kernel) vhost-user/ovs(dpdk) OVS/ NAPI in_port=3, output:4 port3 VM port4 Open Source Traffic Analyzer in_port=1, output:3 in_port=4, output:2 仮想 NIC バックエンド機構 OVS port2 port1 1 フロー UDP 物理サーバ port1 port2 10G Ethernet 25

Throughput [Mpps] 評価 (3): パケット転送速度 16 14 Pattern 1 Pattern 4 Theoretical 12 10 8 6 4 2 0 64 128 256 384 512 768 1024 1500 Packet Size [B] Throughput [Mpps] 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 0 Pattern 1 Pattern 4 評価 (1): OVS/NAPI VMのOVS/NAPIがボトルネック コンテキストスイッチがボトルネック 64 128 256 384 512 768 1024 1500 Packet Size [B] 26

アウトライン u 研究 的 ü パケット処理機構と仮想 NIC バックエンド機構 u 評価内容 評価 (1): 物理サーバ上でのパケット転送評価 (2): VMと仮想スイッチ間のパケット転送評価 (3): VM 上でのパケット転送 u NFV 環境のサーバ構成の検討 u まとめと今後の課題 27

NFV 環境のサーバ構成の検討 u 評価 (1) に基づく検討 ü 転送速度 ü 遅延時間 ジッタ ü 汎 性 ü OVS/NAPI ü VALE/netmap ü OVS/DPDK 状況に応じたパケット処理機構と仮想スイッチを選択 7Mpps per worker thread 遅延ジッタが不安定 28

まとめと今後の課題 u まとめ ü Linux 上で様々なパケット処理機構を評価し 性能要因を考察 ü 転送速度を重要視する場合はnetmap, Intel DPDK New API では memcpy や lock などに処理に 半のサイクル数を消費 ü 遅延ジッタはNew API, netmap, Intel DPDKすべてにおいて抑えられることが確認 厳密に抑えたい場合は Intel DPDK が適切 u 今後の課題 ü 多数のフローが混在する環境下での評価 ü VM 上で DPDK などのパケット処理機構を いた際の評価 29

Lagopus 0.2.4 の遅延ジッタ Frequency 500000 400000 300000 200000 100000 0 OSTA OVS/NAPI VALE/netmap OVS/DPDK Lagopus/DPDK Lagopus/DPDK' 10 20 30 Latency [ns] 40 Frequency 70000 60000 50000 40000 30000 20000 10000 0 OSTA OVS/NAPI VALE/netmap OVS/DPDK Lagopus/DPDK Lagopus/DPDK' 10 20 30 Latency [ns] 40 30

cycle vs. pps u CPU = Core i7 3770 (3.4GHz, Ivy) 18 16 cycles vs. pps (3.4GHz) Throughtpu [Mpps] 14 12 10 8 6 4 2 0 Cycles 31