SlideShare a Scribd company logo
1 of 17
Download to read offline
1© Internet Initiative Japan Inc.
TechDAY 2018
2018年11月22日
ホワイトボックス・スイッチの期待と現実
株式会社インターネットイニシアティブ
ネットワーク本部 SDN開発部
白崎 博生
2
ホワイト・ボックス スイッチへの「期待」
コスト削減
必要機能を
独自開発
ベンダー
ロックイン
排除
• 調達コスト(機器,ライセンス等)
• オペレーションコスト
• API
• OpenFlow
• 独自プロトコル/独自機能
• ベンダー独自仕様の排除
• ユーザー主導によるライフ
サイクルコントロール
3
とはいえ…「IIJ」では
• 検証は継続していますが、ホワイト・ボックス スイッチを
サービス環境では使用していません
• 既存のメーカー製スイッチの置き換えを目的に採用すること
もないと思います
ホワイト・ボックス スイッチは使えない子なのか⁉
 ネットワーク機器ではなくサーバ機器として使ってみる
ホワイト・ボックス スイッチとサーバ機器を組み合わせ、
ひとつのコンピュータリソースとしての利用を検討中
 DataCenter as a Serviceならぬ「Rack as a Service」を実現
4
ホワイト・ボックス スイッチの「現実」- ハードウェア面 - (1)
 思ったよりもコストが高い
• 有料NOSを搭載するとメーカー製品よりも高いことも
• 独自開発NOSの開発費(初期開発費と開発体制維持費)
⇒コストメリットを出すにはある程度の展開ボリュームが必要
NW機器
メーカー製品 ホワイト・ボックス
スイッチ
有料NOS
コスト
ホワイト・ボックス
スイッチ
独自開発NOS
ホワイト・ボックス
スイッチ
独自開発NOS
※IIJ社内試算結果
有料NOSを搭載すると
メーカー製品と同じか、
高いことも…
(台数が少ない場合) (台数が多い場合)
展開台数が少ないと
独自開発NOSの開発費
負担が大きい
開発費
5
ホワイト・ボックス スイッチの「現実」- ハードウェア面 - (2)
 保守体制はゼロから構築
• 有料NOSの場合はOSメーカーが一次対応はしてくれるが、
レスポンスは??
• 独自開発NOSの場合は、問題箇所の切り分けから自分た
ちで行う
 意外と製品寿命が短い
• 筐体のEoS (End of Sales)までおおよそ3年??
「お代わり」したくてもできない可能性がつきまとう
• 特定メーカーのASICを搭載する機種を突然製造しなくな
るときもある
• ホワイトボックス・スイッチメーカーの製品ロードマッ
プ全体の見直しも突然おきる
6
ホワイト・ボックス スイッチの「現実」- ハードウェア面 - (3)
 ASIC がなくなることもある
• ファッ!?
 メーカー製スイッチと接続できないこともある
• A社製スイッチとつないでみた
A社スイッチ
QSFP+ 40GbE
ケーブル WB スイッチ
QSFP+ 100GbE
リンク
アップ
純正 DAC
40GBASE-CR4 3m
NG
純正 DAC
40GBASE-AOC 15m
OK
~ 使えないムードが漂う ~
7
ホワイト・ボックス スイッチの「現実」- ハードウェア面 - (3)
 ASIC がなくなることもある
• ファッ!?
 メーカー製スイッチと接続できないこともある
• A社製スイッチとつないでみた
A社スイッチ
QSFP+ 40GbE
ケーブル WB スイッチ
QSFP+ 100GbE
リンク
アップ
純正 DAC
40GBASE-CR4 3m
NG
純正 DAC
40GBASE-AOC 15m
OK
純正 40GBASE-SR4 MPO (MPO/MTP) 不明 40GBASE-SR4 OK
サードパーティDAC
40GBASE-CR4
OK
追
加
判
明
8
ホワイト・ボックス スイッチの「現実」- ソフトウェア面 - (1)
 ASICのSDKはASICメーカーに直接コンタクト
• NDAとSLAの締結が必要
⇒SDKの深さ毎にライセンスが必要
• SLAの内容は「製品販売」が前提
⇒自社開発・自社利用の場合は頭をひねって解釈する
• 内容修正に応じる会社・応じない会社
⇒修正できない場合はさらに頭をひねる
• ドキュメントが少ない
⇒問い合わせベースの開発作業
• 無料だったり、実質無料だったり、有料だったり
9
ホワイト・ボックス スイッチの「現実」- ソフトウェア面 - (2)
 ASICメーカー毎に異なるSDKAPI
• ここにもベンダーロックインが!
• Broadcom: OpenNSL
• Cavium: OpenXPS
• Mellanox: OpenEthenet
• Barefoot: P4
• 学習コストが半端ない
⇒・・・といってもフレームワークみたいなものですが
• SAI(スイッチ抽象化インターフェース)という標準API
もありますが・・・
10
ホワイト・ボックス スイッチの「現実」- ソフトウェア面 - (3)
SDKで提供されるもの
PCIe / i2c / GPIO / …
スイッチ ASIC その他デバイス
Linux カーネル
ASIC デバイスドライバ
ライブラリ、ツール群
ASICライブラリ(抽象度 低~高)、SAIライブラリ
プロトコル
デーモン
設定DB
CLI / API
など
ASICベンダー
が提供
ASICベンダー
が提供
NOSを自作する場合は、ここを自分で用意する
エミュ
レータ
ASICベンダー
が提供
コンパイラ
※ 古いgccではコンパイルできなかったり、新しいgccではコンパイルできなかったり・・・
ドキュメント
ASICベンダー
が提供
11
ホワイト・ボックス スイッチの「現実」- ソフトウェア面 - (4)
 開発は難しくないけど簡単でもない
• LinuxだけどLinuxじゃない
• 決まったロジックだけを実装するのは難しくない
⇒Pythonでも書ける
• 「何でもできるようにする」のは難しい!
• APIで操作できることは非常にプリミティブ(だけど多い)
• 利用するASIC機能の取捨選択とプロファイル設定
⇒ASIC の得意(特異)な機能
• 「モデル」の定義(←ここが一番難しい)
• ユーザインタフェースの設計
⇒コマンド引数、設定ファイル等
• ASIC は意外といろいろやってくれる
• ASIC は意外なことをやってくれない
• SONiCやOpen Network Linuxを改造するのがお手軽?
12
ホワイト・ボックス スイッチの「現実」
• 某大手メーカー(一体型スイッチメーカー)の対応
ホワイト・ボックス スイッチをスイッチとして使う
必要性が薄れてきた・・・
 一通りのAPIを実装している✨
 Linuxインターフェースを解放している✨
 Ansibleのようなプロビジョニングツールが使える✨
 ユーザーのリクエストを実装してくれる✨
13
ホワイト・ボックス スイッチは使えない子なのか?
Q.ホワイト・ボックス スイッチは「ネットワーク機器」か
「サーバ機器」か?
ホワイト・ボックス スイッチを
「サーバ機器」として扱ってみよう!
IIJのアプローチ
• 見た目(ポートがたくさんある)
• パケットをフォワードする
ネットワーク機器
• ネットワークプロセッサを載せた
サーバ機器
• Dual Xeon D な箱もある
サーバ機器
ネットワーク機能が超強力な
アクセラレータを載せたPCサーバ
14
ホワイト・ボックス スイッチの可能性 - (1)
 ホワイト・ボックス スイッチとサーバ機器を組み合わせて、
ひとつのコンピュータリソースとしての利用を検討中
 DataCenter as a Serviceならぬ、Rack as a Serviceを実現
⇒物理ラック内に収容される様々な機能を持った物理リソースを
細分化し、必要な分だけ論理的なラックにまとめてリソース提供
L3 Switch
White box Switch
Server
Server
…
Server
例えば・・・
• 仮想 L3 Switch + Kubernates, ESXi
• フィルタリング
• LB+NAT を ホワイト・ボックス
スイッチ に置けばDSR要らず
つまり
• サーバ側で実装すると面倒なことを
ASICにオフロードしよう
• ASICの方が速いし
L3
SW
VM
VM
仮想ラック
物理ラック
15…
VM
VM
物理ラック
VSW
…
VM
VM
物理ラック
ホワイト・ボックス スイッチの可能性 - (2)
 仮想L3スイッチで行うこと
 仮想ルーター、仮想スイッチ
 トンネル終端(回線系サービス等との接続)
 NAT、NAPT、フィルタ
 ロードバランサー
 帯域制御
L3 Switch
White box Switch
Server
Server
…
Server
VSW
VM
VM
仮想ラック
物理ラック
VSW VRVR
プロトタイプ開発中
• VM上にVRを実装すると遅い
• VM上に機能分散すると複雑
• ASICの有り余るパワーで解決
16
ホワイト・ボックス スイッチはサーバ機器として使えるのか
 正直なところ未知
 考えることはまだたくさんある
 開発効率
 ホワイトボックス・スイッチ vs スマートNIC
 運用体制
 壊れ方が分からない(未経験)
 監視項目、監視パラメータ
 遠隔操作(IPMI がないよ)
 交換機材、修理窓口、修理期間、交換作業要員
 逃げ先を用意しておくこと
 別のASIC、別メーカの箱
 選択肢は少ない
17
IIJ-BKLT999-0001

More Related Content

What's hot

What's hot (20)

データセンターネットワークの構成について
データセンターネットワークの構成についてデータセンターネットワークの構成について
データセンターネットワークの構成について
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
 
ネットワーク構築訓練 入門
ネットワーク構築訓練 入門ネットワーク構築訓練 入門
ネットワーク構築訓練 入門
 
FD.io VPP事始め
FD.io VPP事始めFD.io VPP事始め
FD.io VPP事始め
 
閉域網接続の技術入門
閉域網接続の技術入門閉域網接続の技術入門
閉域網接続の技術入門
 
Onieで遊んでみようとした話
Onieで遊んでみようとした話Onieで遊んでみようとした話
Onieで遊んでみようとした話
 
P4によるデータプレーンプログラミングとユースケースのご紹介
P4によるデータプレーンプログラミングとユースケースのご紹介P4によるデータプレーンプログラミングとユースケースのご紹介
P4によるデータプレーンプログラミングとユースケースのご紹介
 
ネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのかネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのか
 
Telecom Infra Projectの取り組み -光伝送におけるハードとソフトの分離-
Telecom Infra Projectの取り組み -光伝送におけるハードとソフトの分離-Telecom Infra Projectの取り組み -光伝送におけるハードとソフトの分離-
Telecom Infra Projectの取り組み -光伝送におけるハードとソフトの分離-
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
 
IIJmio meeting 31 音声通信の世界
IIJmio meeting 31 音声通信の世界IIJmio meeting 31 音声通信の世界
IIJmio meeting 31 音声通信の世界
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
 
How to run P4 BMv2
How to run P4 BMv2How to run P4 BMv2
How to run P4 BMv2
 
ロードバランスへの長い道
ロードバランスへの長い道ロードバランスへの長い道
ロードバランスへの長い道
 
3GPP TS 38.300-100まとめ
3GPP TS 38.300-100まとめ3GPP TS 38.300-100まとめ
3GPP TS 38.300-100まとめ
 
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
コンテナを止めるな!  PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとはコンテナを止めるな!  PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
コンテナを止めるな! PacemakerによるコンテナHAクラスタリングとKubernetesとの違いとは
 
IIJmio meeting 25 スマートフォンはなぜ「つながらない」のか
IIJmio meeting 25 スマートフォンはなぜ「つながらない」のかIIJmio meeting 25 スマートフォンはなぜ「つながらない」のか
IIJmio meeting 25 スマートフォンはなぜ「つながらない」のか
 
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2
 
IIJmio meeting #2 IIJmioとIPv6の話
IIJmio meeting #2 IIJmioとIPv6の話IIJmio meeting #2 IIJmioとIPv6の話
IIJmio meeting #2 IIJmioとIPv6の話
 
「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~ - ...
「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~  - ...「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~  - ...
「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~ - ...
 

Similar to ホワイトボックス・スイッチの期待と現実

Similar to ホワイトボックス・スイッチの期待と現実 (20)

Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
 
IoT/ロボティクス時代のモニタリングとコントロール
IoT/ロボティクス時代のモニタリングとコントロールIoT/ロボティクス時代のモニタリングとコントロール
IoT/ロボティクス時代のモニタリングとコントロール
 
20170720_5 MBC-IoT_IoTビジネス共創ラボ
20170720_5 MBC-IoT_IoTビジネス共創ラボ20170720_5 MBC-IoT_IoTビジネス共創ラボ
20170720_5 MBC-IoT_IoTビジネス共創ラボ
 
Introduction to NetOpsCoding
Introduction to NetOpsCodingIntroduction to NetOpsCoding
Introduction to NetOpsCoding
 
LightSwitch 結局何ができるの
LightSwitch 結局何ができるのLightSwitch 結局何ができるの
LightSwitch 結局何ができるの
 
OpManager導入事例 日テレITプロデュース様
OpManager導入事例 日テレITプロデュース様OpManager導入事例 日テレITプロデュース様
OpManager導入事例 日テレITプロデュース様
 
DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DRIVE CHARTの裏側  〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜DRIVE CHARTの裏側  〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について
 
ソフトウエアジャパン2017 IT Forum AITC(6)
ソフトウエアジャパン2017 IT Forum AITC(6)ソフトウエアジャパン2017 IT Forum AITC(6)
ソフトウエアジャパン2017 IT Forum AITC(6)
 
コロナ禍での白井データセンターキャンパスの運用施策
コロナ禍での白井データセンターキャンパスの運用施策コロナ禍での白井データセンターキャンパスの運用施策
コロナ禍での白井データセンターキャンパスの運用施策
 
Google Cloud AI の紹介 @ GCPUG Nara #03
Google Cloud AI の紹介 @ GCPUG Nara #03Google Cloud AI の紹介 @ GCPUG Nara #03
Google Cloud AI の紹介 @ GCPUG Nara #03
 
Rancher/k8sを利用した運用改善の取り組み
Rancher/k8sを利用した運用改善の取り組みRancher/k8sを利用した運用改善の取り組み
Rancher/k8sを利用した運用改善の取り組み
 
使ってわかった!現場担当者が語るOpenStack運用管理の課題:OpenStack Days 2015 Tokyo 講演
使ってわかった!現場担当者が語るOpenStack運用管理の課題:OpenStack Days 2015 Tokyo 講演使ってわかった!現場担当者が語るOpenStack運用管理の課題:OpenStack Days 2015 Tokyo 講演
使ってわかった!現場担当者が語るOpenStack運用管理の課題:OpenStack Days 2015 Tokyo 講演
 
OpenID ConnectとSCIMのエンタープライズ利用ガイドライン
OpenID ConnectとSCIMのエンタープライズ利用ガイドラインOpenID ConnectとSCIMのエンタープライズ利用ガイドライン
OpenID ConnectとSCIMのエンタープライズ利用ガイドライン
 
Introduction to NetOpsCoding#2
Introduction to NetOpsCoding#2Introduction to NetOpsCoding#2
Introduction to NetOpsCoding#2
 
[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜
[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜
[Okta x Jamf合同新年会] Okta Workflowsによるノーコード業務改善 〜Jamf APIを使ってMac端末情報を自動収集してみよう〜
 
OpenID ConnectとSCIMによるエンタープライズでのID連携活用に向けて
OpenID ConnectとSCIMによるエンタープライズでのID連携活用に向けてOpenID ConnectとSCIMによるエンタープライズでのID連携活用に向けて
OpenID ConnectとSCIMによるエンタープライズでのID連携活用に向けて
 
AA IQbot✕tegaki
AA  IQbot✕tegakiAA  IQbot✕tegaki
AA IQbot✕tegaki
 
Hueによる分析業務の改善事例
Hueによる分析業務の改善事例Hueによる分析業務の改善事例
Hueによる分析業務の改善事例
 
Azure IoT Plug and Play, the overview and practice
Azure IoT Plug and Play, the overview and practiceAzure IoT Plug and Play, the overview and practice
Azure IoT Plug and Play, the overview and practice
 

More from IIJ

IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
IIJ
 

More from IIJ (20)

プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例
プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例
プロダクトオーナーと開発者が別会社・別組織でも前のめりなチームを生み出す取り組み事例
 
IIJ_デジタルワークプレース事業紹介資料
IIJ_デジタルワークプレース事業紹介資料IIJ_デジタルワークプレース事業紹介資料
IIJ_デジタルワークプレース事業紹介資料
 
監視 Overview
監視 Overview監視 Overview
監視 Overview
 
HTTPを理解する
HTTPを理解するHTTPを理解する
HTTPを理解する
 
DevOps Overview
DevOps OverviewDevOps Overview
DevOps Overview
 
ただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学び
ただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学びただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学び
ただいま三河。あれから1年、チームNOCKncokが開発しないスクラムで成果を出した経験から得た学び
 
上っ面スクラムチームにならないために気を付けたいこと
上っ面スクラムチームにならないために気を付けたいこと上っ面スクラムチームにならないために気を付けたいこと
上っ面スクラムチームにならないために気を付けたいこと
 
Super Easy Memory Forensics
Super Easy Memory ForensicsSuper Easy Memory Forensics
Super Easy Memory Forensics
 
チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談
チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談
チームみを大切にした 私たちの“受託アジャイル・スクラム”体験談
 
【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?
【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?
【解説】IKE(IIJ Kubernetes Engine):= Vanilla Kubernetes + 何?
 
コロナ禍の開発勉強会~社内教育ツールの開発と実装
コロナ禍の開発勉強会~社内教育ツールの開発と実装コロナ禍の開発勉強会~社内教育ツールの開発と実装
コロナ禍の開発勉強会~社内教育ツールの開発と実装
 
セキュリティ動向2020
セキュリティ動向2020セキュリティ動向2020
セキュリティ動向2020
 
バックボーン運用から見るインターネットの実情
バックボーン運用から見るインターネットの実情バックボーン運用から見るインターネットの実情
バックボーン運用から見るインターネットの実情
 
データセンターのエネルギーコントロールの仕組み
データセンターのエネルギーコントロールの仕組みデータセンターのエネルギーコントロールの仕組み
データセンターのエネルギーコントロールの仕組み
 
世界のインターネット事情
世界のインターネット事情世界のインターネット事情
世界のインターネット事情
 
フロントからバックエンドまで - WebAssemblyで広がる可能性
フロントからバックエンドまで - WebAssemblyで広がる可能性フロントからバックエンドまで - WebAssemblyで広がる可能性
フロントからバックエンドまで - WebAssemblyで広がる可能性
 
あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~
あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~
あ! やせいのEmotetがあらわれた! ~ IIJ C-SOCサービスの分析ルールについて~
 
インシデント調査システムが内製すぎる件~CHAGEのご紹介~
インシデント調査システムが内製すぎる件~CHAGEのご紹介~インシデント調査システムが内製すぎる件~CHAGEのご紹介~
インシデント調査システムが内製すぎる件~CHAGEのご紹介~
 
IIJ Technical DAY 2019 ~ セキュリティ動向2019
IIJ Technical DAY 2019 ~ セキュリティ動向2019IIJ Technical DAY 2019 ~ セキュリティ動向2019
IIJ Technical DAY 2019 ~ セキュリティ動向2019
 
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
IIJ Technical DAY 2019 ~ Untangling the world-wide mesh of undersea cables:世界...
 

ホワイトボックス・スイッチの期待と現実

  • 1. 1© Internet Initiative Japan Inc. TechDAY 2018 2018年11月22日 ホワイトボックス・スイッチの期待と現実 株式会社インターネットイニシアティブ ネットワーク本部 SDN開発部 白崎 博生
  • 2. 2 ホワイト・ボックス スイッチへの「期待」 コスト削減 必要機能を 独自開発 ベンダー ロックイン 排除 • 調達コスト(機器,ライセンス等) • オペレーションコスト • API • OpenFlow • 独自プロトコル/独自機能 • ベンダー独自仕様の排除 • ユーザー主導によるライフ サイクルコントロール
  • 3. 3 とはいえ…「IIJ」では • 検証は継続していますが、ホワイト・ボックス スイッチを サービス環境では使用していません • 既存のメーカー製スイッチの置き換えを目的に採用すること もないと思います ホワイト・ボックス スイッチは使えない子なのか⁉  ネットワーク機器ではなくサーバ機器として使ってみる ホワイト・ボックス スイッチとサーバ機器を組み合わせ、 ひとつのコンピュータリソースとしての利用を検討中  DataCenter as a Serviceならぬ「Rack as a Service」を実現
  • 4. 4 ホワイト・ボックス スイッチの「現実」- ハードウェア面 - (1)  思ったよりもコストが高い • 有料NOSを搭載するとメーカー製品よりも高いことも • 独自開発NOSの開発費(初期開発費と開発体制維持費) ⇒コストメリットを出すにはある程度の展開ボリュームが必要 NW機器 メーカー製品 ホワイト・ボックス スイッチ 有料NOS コスト ホワイト・ボックス スイッチ 独自開発NOS ホワイト・ボックス スイッチ 独自開発NOS ※IIJ社内試算結果 有料NOSを搭載すると メーカー製品と同じか、 高いことも… (台数が少ない場合) (台数が多い場合) 展開台数が少ないと 独自開発NOSの開発費 負担が大きい 開発費
  • 5. 5 ホワイト・ボックス スイッチの「現実」- ハードウェア面 - (2)  保守体制はゼロから構築 • 有料NOSの場合はOSメーカーが一次対応はしてくれるが、 レスポンスは?? • 独自開発NOSの場合は、問題箇所の切り分けから自分た ちで行う  意外と製品寿命が短い • 筐体のEoS (End of Sales)までおおよそ3年?? 「お代わり」したくてもできない可能性がつきまとう • 特定メーカーのASICを搭載する機種を突然製造しなくな るときもある • ホワイトボックス・スイッチメーカーの製品ロードマッ プ全体の見直しも突然おきる
  • 6. 6 ホワイト・ボックス スイッチの「現実」- ハードウェア面 - (3)  ASIC がなくなることもある • ファッ!?  メーカー製スイッチと接続できないこともある • A社製スイッチとつないでみた A社スイッチ QSFP+ 40GbE ケーブル WB スイッチ QSFP+ 100GbE リンク アップ 純正 DAC 40GBASE-CR4 3m NG 純正 DAC 40GBASE-AOC 15m OK ~ 使えないムードが漂う ~
  • 7. 7 ホワイト・ボックス スイッチの「現実」- ハードウェア面 - (3)  ASIC がなくなることもある • ファッ!?  メーカー製スイッチと接続できないこともある • A社製スイッチとつないでみた A社スイッチ QSFP+ 40GbE ケーブル WB スイッチ QSFP+ 100GbE リンク アップ 純正 DAC 40GBASE-CR4 3m NG 純正 DAC 40GBASE-AOC 15m OK 純正 40GBASE-SR4 MPO (MPO/MTP) 不明 40GBASE-SR4 OK サードパーティDAC 40GBASE-CR4 OK 追 加 判 明
  • 8. 8 ホワイト・ボックス スイッチの「現実」- ソフトウェア面 - (1)  ASICのSDKはASICメーカーに直接コンタクト • NDAとSLAの締結が必要 ⇒SDKの深さ毎にライセンスが必要 • SLAの内容は「製品販売」が前提 ⇒自社開発・自社利用の場合は頭をひねって解釈する • 内容修正に応じる会社・応じない会社 ⇒修正できない場合はさらに頭をひねる • ドキュメントが少ない ⇒問い合わせベースの開発作業 • 無料だったり、実質無料だったり、有料だったり
  • 9. 9 ホワイト・ボックス スイッチの「現実」- ソフトウェア面 - (2)  ASICメーカー毎に異なるSDKAPI • ここにもベンダーロックインが! • Broadcom: OpenNSL • Cavium: OpenXPS • Mellanox: OpenEthenet • Barefoot: P4 • 学習コストが半端ない ⇒・・・といってもフレームワークみたいなものですが • SAI(スイッチ抽象化インターフェース)という標準API もありますが・・・
  • 10. 10 ホワイト・ボックス スイッチの「現実」- ソフトウェア面 - (3) SDKで提供されるもの PCIe / i2c / GPIO / … スイッチ ASIC その他デバイス Linux カーネル ASIC デバイスドライバ ライブラリ、ツール群 ASICライブラリ(抽象度 低~高)、SAIライブラリ プロトコル デーモン 設定DB CLI / API など ASICベンダー が提供 ASICベンダー が提供 NOSを自作する場合は、ここを自分で用意する エミュ レータ ASICベンダー が提供 コンパイラ ※ 古いgccではコンパイルできなかったり、新しいgccではコンパイルできなかったり・・・ ドキュメント ASICベンダー が提供
  • 11. 11 ホワイト・ボックス スイッチの「現実」- ソフトウェア面 - (4)  開発は難しくないけど簡単でもない • LinuxだけどLinuxじゃない • 決まったロジックだけを実装するのは難しくない ⇒Pythonでも書ける • 「何でもできるようにする」のは難しい! • APIで操作できることは非常にプリミティブ(だけど多い) • 利用するASIC機能の取捨選択とプロファイル設定 ⇒ASIC の得意(特異)な機能 • 「モデル」の定義(←ここが一番難しい) • ユーザインタフェースの設計 ⇒コマンド引数、設定ファイル等 • ASIC は意外といろいろやってくれる • ASIC は意外なことをやってくれない • SONiCやOpen Network Linuxを改造するのがお手軽?
  • 12. 12 ホワイト・ボックス スイッチの「現実」 • 某大手メーカー(一体型スイッチメーカー)の対応 ホワイト・ボックス スイッチをスイッチとして使う 必要性が薄れてきた・・・  一通りのAPIを実装している✨  Linuxインターフェースを解放している✨  Ansibleのようなプロビジョニングツールが使える✨  ユーザーのリクエストを実装してくれる✨
  • 13. 13 ホワイト・ボックス スイッチは使えない子なのか? Q.ホワイト・ボックス スイッチは「ネットワーク機器」か 「サーバ機器」か? ホワイト・ボックス スイッチを 「サーバ機器」として扱ってみよう! IIJのアプローチ • 見た目(ポートがたくさんある) • パケットをフォワードする ネットワーク機器 • ネットワークプロセッサを載せた サーバ機器 • Dual Xeon D な箱もある サーバ機器 ネットワーク機能が超強力な アクセラレータを載せたPCサーバ
  • 14. 14 ホワイト・ボックス スイッチの可能性 - (1)  ホワイト・ボックス スイッチとサーバ機器を組み合わせて、 ひとつのコンピュータリソースとしての利用を検討中  DataCenter as a Serviceならぬ、Rack as a Serviceを実現 ⇒物理ラック内に収容される様々な機能を持った物理リソースを 細分化し、必要な分だけ論理的なラックにまとめてリソース提供 L3 Switch White box Switch Server Server … Server 例えば・・・ • 仮想 L3 Switch + Kubernates, ESXi • フィルタリング • LB+NAT を ホワイト・ボックス スイッチ に置けばDSR要らず つまり • サーバ側で実装すると面倒なことを ASICにオフロードしよう • ASICの方が速いし L3 SW VM VM 仮想ラック 物理ラック
  • 15. 15… VM VM 物理ラック VSW … VM VM 物理ラック ホワイト・ボックス スイッチの可能性 - (2)  仮想L3スイッチで行うこと  仮想ルーター、仮想スイッチ  トンネル終端(回線系サービス等との接続)  NAT、NAPT、フィルタ  ロードバランサー  帯域制御 L3 Switch White box Switch Server Server … Server VSW VM VM 仮想ラック 物理ラック VSW VRVR プロトタイプ開発中 • VM上にVRを実装すると遅い • VM上に機能分散すると複雑 • ASICの有り余るパワーで解決
  • 16. 16 ホワイト・ボックス スイッチはサーバ機器として使えるのか  正直なところ未知  考えることはまだたくさんある  開発効率  ホワイトボックス・スイッチ vs スマートNIC  運用体制  壊れ方が分からない(未経験)  監視項目、監視パラメータ  遠隔操作(IPMI がないよ)  交換機材、修理窓口、修理期間、交換作業要員  逃げ先を用意しておくこと  別のASIC、別メーカの箱  選択肢は少ない