SlideShare a Scribd company logo
1 of 39
Download to read offline
(仮) このNetwork OS野郎!!
~ ネットワークOSの作り方 ~
海老澤 健太郎@Ponto Networks, Inc.
Twitter: @ebiken
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 1
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 2
世の中には2種類の野郎がいる
(*) 野郎=ジェンダーを問わず
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 3
自作する野郎
ネットワークOS(NOS)を
自作しない野郎
自ら道具を磨き進化させる野郎 与えられた道具を使い続ける野郎
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 4
「ネットワークOS」 とは?
自分、「ネットワークOS」 作ってるんすよ
ネットワーク処理に特化した割込とか、
コアの割り当てとか、
スケジューリングとか欲しくないですか?
ようやく、BIOSから起動してコンソールに
文字がでるまではできたんすよね
お、楽しそう。どんなの?
?!? ( ̄Д ̄;)!?!?
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 5
「ネットワークOS」 とは?
ネットワーク処理に特化したカーネル
(スイッチ等)
ネットワーク機器を動かす
ドライバ・アプリの集合
サーバー vs スイッチの中身
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 6
Edge-Core AS7512-32X
http://www.edge-core.com/productsInfo.php?cls=1&cls2=5&cls3=68&id=129
ネットワークの専門家しか
理解できない特別な機械!?
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 7
PCI express
CPU
Memory
MemoryMemory
ASIC
マザー
ボード
Switch
ボード
PCI express
CPU
Memory
MemoryMemory
ASIC
FAN
LED
Sensor
NIC
カード
CPU
ボード
サーバーの中身 スイッチの中身
ASIC
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 8
スイッチのパケット処理
パーサー
(ヘッダ解析)
パケット処理パイプライン
変換・転送
エンジン
OF L2 L3 ACL
マッチ・テーブル
Subnet (LPM) Gateway Port
192.168.10.0 /24 10.0.0.5 5
192.168.20.0 /24 172.16.0.1 1
... ... ...
0.0.0.0/0 172.16.0.1 1
Layer 3 table
MAC Address Port
00-00-5E-00-53-01 1
00-00-5E-00-53-02 2
00-00-5E-00-53-03 3
00-00-5E-00-53-04 4
Layer 2 Table
パケット・ヘッダを解析
テーブル検索 (Match)
処理 (Action)
Action
Drop / Forward
Rewrite
Push / Pop
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 9
ASIC(データプレーン)の処理
PCI express
CPU
Memory
MemoryMemory
ASIC
FAN
LED
Sensor
パーサー
(ヘッダ解析)
パケット処理パイプライン
変換・転送
エンジン
OF L2 L3 ACL
マッチ・テーブル
ネットワークOS
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 10
ネットワークOSの中身
PCI express
CPU
Memory
MemoryMemory
ASIC
FAN
LED
Sensor
Base OS (ex: Linux)
User Interface
(CLI, Shell, REST API)
misc drivers
(Fan, LED, Sensor)
ASIC
driver
Protocol AgentProtocol AgentProtocol Agent
(BGP, OSPF ...)
ASIC ControllerConfig Manager
ASIC SDK (API)System Manager
ネットワークOS は
(いわゆる)
オペレーティングシステムではない
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 11
ネットワークOSを作る
↓
ASICに処理方法を教えるアプリを作る
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 12
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 13
↓
皆さんが普段関わっている
技術と比較してみましょう。
むずかしくない?
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 14
Reference:
(*1) https://www.theregister.co.uk/2016/03/31/intel_broadwell_ep_xeon_e5_2600_v4/
(*2) https://sebastianraschka.com/faq/docs/difference-deep-and-normal-learning.html
(*3) http://ssmlwf.azurewebsites.net/
(*4) http://www.syuheiuda.com/?p=3972
COMPLEX  SIMPLE ☺
(*1) Broadwell EP 24 Core Arrangement (*2) MLPs : multi-layer perceptrons
(*3) Azure Cloud IoT Solution Architecture
(*4) そうだコンテナー データセンターを作ろう
Parse -> Match -> Action
なぜ今までは作れなかったのか?
なぜ今作れるのか?
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 15
なぜ今、ネットワークOSを作れるのか?
ハードウェアの調達
ASIC SDK/APIの入手
開発リソースの確保
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 16
ネットワークOS作成のハードル
なぜ今、ネットワークOSを作れるのか?
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 17
ディスアグリゲーション = ソフト・ハード分離
Google
• B4 (G-Scale Network)
• データセンター間のトラフィック管理
• コントローラーからトラフィック分布を管理可
能なネットワークOSの自作
• 最も初期の “SDN” のひとつ
Facebook
• Wedge + FBOSS
• サーバーと同じツール・手法でネットワーク機
器を運用管理可能に
• サーバーと同じハード・ソフト(OS)に、ASIC及
びASIC管理ソフトを追加
Microsoft
• SONiC / SAI
• 自動化ツールと統合可能なネットワークOS
• ASIC API の標準化を提唱(SAI)
LinkedIn
• Project Falco
• 問題検知・解析を可能とする統計情報など
をASICから取得可能に
• 社内で迅速なバグ修正が可能に
なぜ今、ネットワークOSを作れるのか?
• サーバー運用管理で培ったイノベーションをネットワークへ
• Linux ベースの自動化ツール
• e.g. Chef/Puppet/Ansible/CFEngine ...
• 時代遅れの監視・ログツールへの依存を軽減
• SNMP ⇒ Kafka (pub/sub messaging for telemetry)
• バグのタイムリーな修正(自社のプライオリティに応じた)
• 自社で使用しない機能に由来するバグからの脱却
• ライセンスやサポート費用のスケーラビリティ
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 18
ディスアグリゲーションの目的
ODMベンダー中心に、ハードウェア「だけ」を購入可能に
なぜ今、ネットワークOSを作れるのか?
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 19
スイッチハードウェアのホワイトボックス化
なぜ今、ネットワークOSを作れるのか?
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 20
ASIC SDK/API のオープン化・標準化
Base OS (ex: Linux)
User Interface
(CLI, Shell, REST API)
misc drivers
(Fan, LED, Sensor)
Protocol AgentProtocol AgentProtocol Agent
(BGP, OSPF ...)
ASIC ControllerConfig Manager
System Manager
ASIC
driver
ASIC SDK (API)
ASICベンダーに
よるロックイン
なぜ今、ネットワークOSを作れるのか?
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 21
ASIC SDK/API のオープン化・標準化
Broadcom Mellanox Cavium
OF-DPA
OpenNSL
Open
Ethernet
OpenXPS SDK/API
ASIC Broadcom Mellanox Cavium
Switch Abstraction Interface (SAI)
Data Plane Abstraction
Broadcom Mellanox Cavium
Layer 2/3 Agents
(OSPF, BGP, STP, LLDP ...)
Data Plane Abstraction
SAI
Layer 2/3 Agents
(OSPF, BGP, STP, LLDP ...)
Plug-in
ASIC SDK/API のオープン化 ASIC SDK/API の標準化
なぜ今、ネットワークOSを作れるのか?
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 22
オープンソースNOSの登場
スイッチハードウェア向けベースOSの提供
Open Network Linux
フル・ネットワークOS
OpenSwitch (Dell + SnapRoute)
制御アプリ(プロトコル・エージェント)
SnapRoute (FlexSwitch)
SONiC (Microsoft)| FBOSS (Facebook)
なぜ今、ネットワークOSを作れるのか?
ハードウェアの調達
⇒ ホワイトボックス(ODM製ハードウェア)の購入
ASIC SDK/APIの入手
⇒ APIのオープン化・標準化(SAI)
開発リソースの確保
⇒ オープンソースなネットワークOSの登場
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 23
ネットワークOS作成のハードル (解消)
Giants以外も独自NOSを利用可能に!!
ネットワークOSの作り方
スクラッチから作りたい人向けに
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 24
1. スイッチ・ハードウェアの調達
2. ベースOSの選択
3. ASIC SDK/API 入手
4. ASIC コントローラー作成
5. お好みのUI を作成
• オプション
• Protocol Agent
• Config Manager
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 25
ネットワークOSの作り方(5ステップ+オプション)
Base OS (ex: Linux)
User Interface
(CLI, Shell, REST API)
misc drivers
(Fan, LED, Sensor)
ASIC
driver
Protocol AgentProtocol AgentProtocol Agent
(BGP, OSPF ...)
ASIC ControllerConfig Manager
ASIC SDK (API)System Manager
スイッチ・ハードウェア
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 26
1. スイッチ・ハードウェアの調達
http://www.colfaxdirect.com/store/pc/viewPrd.asp?idproduct=3019
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 27
2. ベースOSの選択
Linux Distribution
Open Network Linux
https://opennetlinux.org/
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 28
3. ASIC SDK / API 入手
Broadcom
Mellanox
Cavium
Open Ethernet
http://www.mellanox.com/open-ethernet/
OpenNSL
https://github.com/Broadcom-Switch/OpenNSL/
OpenXPS
https://github.com/XPliant/OpenXPS
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 29
4. ASIC コントローラー作成
User Interface
(CLI, Shell, REST API)
Protocol AgentProtocol AgentProtocol Agent
(BGP, OSPF ...)
ASIC Controller
ASIC SDK (API)
(OpenXPS as an example)
sai_create_vlan_fn() sai_create_route_fn()
SAI (Switch Abstraction Interface)xpsVlanCreate()
VLAN作成 ルート作成
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 30
5. お好みのUIを作成
“REST API” <お好みの言語>
サーバー系パッケージの流用 (だってLinuxだもん)
野郎は黙って「自作」
http://qiita.com/isaoshimizu/items/71dd2ca2a08ddb607e31
1. スイッチ・ハードウェア
• Edge-Core AS7512-32X (XPliant, 100G x 32 port)
2. ベースOSの選択
• 某 Linux Distribution
3. ASIC SDK/API 入手
• Cavium から直接入手
4. ASIC コントローラー作成
• Golang で実装
5. お好みのUI を作成
• CLI: Bash Extension (JunOS like)
• REST API (Golang)
• Config Manager
• 自作 (Zebra2.0)
• Routing Agent
• Quagga, GoBGP, Zebra 2.0
• GTP対応 Match/Action (ASICプロファイルをカスタマイズ)
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 31
作ってみた (PontOS)
Modular
Routing
Agents
REST API
(WebAPI)
User
Apps
Linux shell
(CLI as an
Application)
Config Broker
(data store)
Modular
Routing
Agents
FEA (Forwarding Engine Abstraction)
Data Path
Profile
Manager
Flexible Data Plane
User
Apps
Management Plane
Data Plane
Flex ASIC
(XPliant etc.)
Linux Kernel
Network Stack
SmartNIC,
NPU, FPGA
Native
Applications
Native
Applications
Native
Applications
SDK
(Language API)
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 33
Slides by 石黒 邦宏 at ONIC Japan 2016
"Zebra 2.0 – SDN, NFV, Container時代の
Networking Softwareの設計と実装"
http://onic.jp/program-detail/#f07
http://www.pontonetworks.com/
Locations
Head Quater
San Diego (USA)
Development
Tokyo (Japan) + San Jose (USA)
Investors
Ex-exectutives of Internet and Mobile industry.
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 34
Ponto Networks, Inc.
• プログラマブルなデータプレーンでできる事
• パーサーやマッチ/アクションのカスタマイズ ⇒ 新しいプロトコルをASICで処理
• テーブル設計のカスタマイズ ⇒ リソースの有効活用⇒ スケーラビリティの向上
• アプリケーション:
• GTPなど、モバイル分野でのコモディティ機器の利用
• In-band Network Telemetry
• パケットのふるまいを実トラフィックで観測
• AT&T exploited the programmability of the chip to add In-band Network Telemetry (INT).
• https://www.sdxcentral.com/articles/news/att-picks-barefoot-networks-programmable-switches
• Tbps級のLBを数百万円のハードで実現
• 参考:"OPEN NETWORKING" に向けた Management / Data Plane の動向
• ENOG#41@佐渡
• https://www.slideshare.net/kentaroebisawa/open-networking-management-data-plane
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 35
プログラマブル・データプレーンの世界
ネットワークOSを取り巻く環境(まとめ)
つくった感想
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 36
• ASICドライバやSDKはソースコードでは公
開されていない
⇒ 対応してないモデルやOS(Kernel)も。
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 37
現状の課題
• オープンソースはネットワークOSの一部分
⇒ SONiC, FBOSS, SnapRoute
• SAIだけでは実現できない機能も
⇒ ACL, Match/Action Rules, MPLS etc.
• Full NOS としての OpenSwitch
の今後に期待
⇒ HPE -> Dell/SnapRoute 12月に移行開始
• 活発な機能追加提案進行中
⇒ “SAI: Releasing the Potential of Switch ASIC”
OCP2017 Slide (*)
(*) http://www.opencompute.org/wiki/Networking/Summit-2017-03#0930_-_SAI:_Releasing_the_Potential_of_Switch_ASIC
ネットワークOSを取り巻く環境(まとめ)
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 38
ネットワークOSを作るためのパーツはそろった!!
オープンなハードウェア
オープンな ASIC API/SDK
オープンなネットワークOS
(サーバーのように)
ネットワーク機器(ASIC)上で
自分のアプリを開発できる時代に!
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 39
世の中には2種類の野郎がいる
(*) 野郎=ジェンダーを問わず
(仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 40
自作する野郎
ネットワークOS(NOS)を
自作しない野郎
自ら道具を磨き進化させる野郎 与えられた道具を使い続ける野郎

More Related Content

What's hot

Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Akihiro Suda
 
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)NTT DATA Technology & Innovation
 
大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌LINE Corporation
 
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」Masahito Zembutsu
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーToru Makabe
 
超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座Samir Hammoudi
 
Stargz Snapshotter: イメージのpullを省略しcontainerdでコンテナを高速に起動する
Stargz Snapshotter: イメージのpullを省略しcontainerdでコンテナを高速に起動するStargz Snapshotter: イメージのpullを省略しcontainerdでコンテナを高速に起動する
Stargz Snapshotter: イメージのpullを省略しcontainerdでコンテナを高速に起動するKohei Tokunaga
 
DockerとKubernetesをかけめぐる
DockerとKubernetesをかけめぐるDockerとKubernetesをかけめぐる
DockerとKubernetesをかけめぐるKohei Tokunaga
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudyネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudyYahoo!デベロッパーネットワーク
 
PythonによるOPC-UAの利用
PythonによるOPC-UAの利用PythonによるOPC-UAの利用
PythonによるOPC-UAの利用Kioto Hirahara
 
Scapyで作る・解析するパケット
Scapyで作る・解析するパケットScapyで作る・解析するパケット
Scapyで作る・解析するパケットTakaaki Hoyo
 
株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game...
株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game...株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game...
株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game...Google Cloud Platform - Japan
 
実践イカパケット解析
実践イカパケット解析実践イカパケット解析
実践イカパケット解析Yuki Mizuno
 
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンKentaro Yoshida
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Masahito Zembutsu
 
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjugYahoo!デベロッパーネットワーク
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けモノビット エンジン
 

What's hot (20)

Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
コンテナとimmutableとわたし。あとセキュリティ。(Kubernetes Novice Tokyo #15 発表資料)
 
大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌
 
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
 
TLS, HTTP/2演習
TLS, HTTP/2演習TLS, HTTP/2演習
TLS, HTTP/2演習
 
超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座
 
Stargz Snapshotter: イメージのpullを省略しcontainerdでコンテナを高速に起動する
Stargz Snapshotter: イメージのpullを省略しcontainerdでコンテナを高速に起動するStargz Snapshotter: イメージのpullを省略しcontainerdでコンテナを高速に起動する
Stargz Snapshotter: イメージのpullを省略しcontainerdでコンテナを高速に起動する
 
DockerとKubernetesをかけめぐる
DockerとKubernetesをかけめぐるDockerとKubernetesをかけめぐる
DockerとKubernetesをかけめぐる
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudyネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
 
PythonによるOPC-UAの利用
PythonによるOPC-UAの利用PythonによるOPC-UAの利用
PythonによるOPC-UAの利用
 
Scapyで作る・解析するパケット
Scapyで作る・解析するパケットScapyで作る・解析するパケット
Scapyで作る・解析するパケット
 
株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game...
株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game...株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game...
株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game...
 
実践イカパケット解析
実践イカパケット解析実践イカパケット解析
実践イカパケット解析
 
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
 
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
 
Glibc malloc internal
Glibc malloc internalGlibc malloc internal
Glibc malloc internal
 

Similar to ネットワークOS野郎 ~ インフラ野郎Night 20160414

2014 0228 OSC-Spring Tokyo NETMF
2014 0228 OSC-Spring Tokyo NETMF2014 0228 OSC-Spring Tokyo NETMF
2014 0228 OSC-Spring Tokyo NETMFAtomu Hidaka
 
2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMFAtomu Hidaka
 
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~法林浩之
 
WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料Masaya Fujita
 
ICSをビルドしてみた
ICSをビルドしてみたICSをビルドしてみた
ICSをビルドしてみたkinneko
 
ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)
ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)
ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)Toshihiko Yamakami
 
ネットワークコンフィグ分析ツール Batfish との付き合い方
ネットワークコンフィグ分析ツール Batfish との付き合い方ネットワークコンフィグ分析ツール Batfish との付き合い方
ネットワークコンフィグ分析ツール Batfish との付き合い方akira6592
 
Cell/B.E. プログラミング事始め
Cell/B.E. プログラミング事始めCell/B.E. プログラミング事始め
Cell/B.E. プログラミング事始めYou&I
 
Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Pathdynamis
 
ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118Atomu Hidaka
 
さくらのIoT Platformを使ってみよう ~OSC大阪編~
さくらのIoT Platformを使ってみよう ~OSC大阪編~さくらのIoT Platformを使ってみよう ~OSC大阪編~
さくらのIoT Platformを使ってみよう ~OSC大阪編~法林浩之
 
Android & Nui & Physical Computing
Android & Nui & Physical ComputingAndroid & Nui & Physical Computing
Android & Nui & Physical ComputingTakahiro KUREBAYASHI
 
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsugJAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsugYasuhiro Matsuo
 
Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)Tomoya Hibi
 
NW-DIY で開拓したい社会
NW-DIY で開拓したい社会NW-DIY で開拓したい社会
NW-DIY で開拓したい社会啓章 加嶋
 
.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組みKouji Matsui
 
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...SORACOM,INC
 
OWIN - .NETにおけるPSGI -
OWIN - .NETにおけるPSGI -OWIN - .NETにおけるPSGI -
OWIN - .NETにおけるPSGI -将 高野
 
Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Atomu Hidaka
 
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows AzureB 2-1 はじめての Windows Azure
B 2-1 はじめての Windows AzureGoAzure
 

Similar to ネットワークOS野郎 ~ インフラ野郎Night 20160414 (20)

2014 0228 OSC-Spring Tokyo NETMF
2014 0228 OSC-Spring Tokyo NETMF2014 0228 OSC-Spring Tokyo NETMF
2014 0228 OSC-Spring Tokyo NETMF
 
2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF
 
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
 
WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料WWCT ラズパイ Bluemix 講習資料
WWCT ラズパイ Bluemix 講習資料
 
ICSをビルドしてみた
ICSをビルドしてみたICSをビルドしてみた
ICSをビルドしてみた
 
ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)
ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)
ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)
 
ネットワークコンフィグ分析ツール Batfish との付き合い方
ネットワークコンフィグ分析ツール Batfish との付き合い方ネットワークコンフィグ分析ツール Batfish との付き合い方
ネットワークコンフィグ分析ツール Batfish との付き合い方
 
Cell/B.E. プログラミング事始め
Cell/B.E. プログラミング事始めCell/B.E. プログラミング事始め
Cell/B.E. プログラミング事始め
 
Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Path
 
ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118
 
さくらのIoT Platformを使ってみよう ~OSC大阪編~
さくらのIoT Platformを使ってみよう ~OSC大阪編~さくらのIoT Platformを使ってみよう ~OSC大阪編~
さくらのIoT Platformを使ってみよう ~OSC大阪編~
 
Android & Nui & Physical Computing
Android & Nui & Physical ComputingAndroid & Nui & Physical Computing
Android & Nui & Physical Computing
 
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsugJAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
JAWS目黒 EC2チューニングTips #jawsmeguro #jawsug
 
Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)Lagopus Project (Open Source Conference)
Lagopus Project (Open Source Conference)
 
NW-DIY で開拓したい社会
NW-DIY で開拓したい社会NW-DIY で開拓したい社会
NW-DIY で開拓したい社会
 
.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み
 
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...
SORACOM UG 広島 #2 | SORACOM の紹介から SORACOM Conference "Discovery" 2018 SORACOM ...
 
OWIN - .NETにおけるPSGI -
OWIN - .NETにおけるPSGI -OWIN - .NETにおけるPSGI -
OWIN - .NETにおけるPSGI -
 
Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1
 
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows AzureB 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
 

More from Kentaro Ebisawa

P4 Updates (2020) (Japanese)
P4 Updates (2020) (Japanese)P4 Updates (2020) (Japanese)
P4 Updates (2020) (Japanese)Kentaro Ebisawa
 
Barefoot Faster™ 日本語紹介
Barefoot Faster™ 日本語紹介Barefoot Faster™ 日本語紹介
Barefoot Faster™ 日本語紹介Kentaro Ebisawa
 
IETF106 Hackathon 報告 & P4 based Switch の課題と未来
IETF106 Hackathon 報告 & P4 based Switch の課題と未来IETF106 Hackathon 報告 & P4 based Switch の課題と未来
IETF106 Hackathon 報告 & P4 based Switch の課題と未来Kentaro Ebisawa
 
MPLS Japan 2019 : Data & Control Plane を繋ぐ API
MPLS Japan 2019 : Data & Control Plane を繋ぐ APIMPLS Japan 2019 : Data & Control Plane を繋ぐ API
MPLS Japan 2019 : Data & Control Plane を繋ぐ APIKentaro Ebisawa
 
In Network Computing Prototype Using P4 at KSC/KREONET 2019
In Network Computing Prototype Using P4 at KSC/KREONET 2019In Network Computing Prototype Using P4 at KSC/KREONET 2019
In Network Computing Prototype Using P4 at KSC/KREONET 2019Kentaro Ebisawa
 
Comparison of SRv6 Extensions uSID, SRv6+, C-SRH
Comparison of SRv6 Extensions uSID, SRv6+, C-SRHComparison of SRv6 Extensions uSID, SRv6+, C-SRH
Comparison of SRv6 Extensions uSID, SRv6+, C-SRHKentaro Ebisawa
 
Interop2019 Toyota Netcope P4
Interop2019 Toyota Netcope P4Interop2019 Toyota Netcope P4
Interop2019 Toyota Netcope P4Kentaro Ebisawa
 
IETF 104 Hackathon VPP Prototyping Stateless SRv6/GTP-U Translation
IETF 104 Hackathon VPP Prototyping Stateless SRv6/GTP-U TranslationIETF 104 Hackathon VPP Prototyping Stateless SRv6/GTP-U Translation
IETF 104 Hackathon VPP Prototyping Stateless SRv6/GTP-U TranslationKentaro Ebisawa
 
p4srv6 (P4-16) design document rev1.0
p4srv6 (P4-16) design document rev1.0p4srv6 (P4-16) design document rev1.0
p4srv6 (P4-16) design document rev1.0Kentaro Ebisawa
 
SRv6 Mobile User Plane : Initial POC and Implementation
SRv6 Mobile User Plane : Initial POC and ImplementationSRv6 Mobile User Plane : Initial POC and Implementation
SRv6 Mobile User Plane : Initial POC and ImplementationKentaro Ebisawa
 
JANOG43 Forefront of SRv6, Open Source Implementations
JANOG43 Forefront of SRv6, Open Source ImplementationsJANOG43 Forefront of SRv6, Open Source Implementations
JANOG43 Forefront of SRv6, Open Source ImplementationsKentaro Ebisawa
 
Using GTP on Linux with libgtpnl
Using GTP on Linux with libgtpnlUsing GTP on Linux with libgtpnl
Using GTP on Linux with libgtpnlKentaro Ebisawa
 
"SRv6の現状と展望" ENOG53@上越
"SRv6の現状と展望" ENOG53@上越"SRv6の現状と展望" ENOG53@上越
"SRv6の現状と展望" ENOG53@上越Kentaro Ebisawa
 
SRv6 Mobile User Plane P4 proto-type
SRv6 Mobile User Plane P4 proto-typeSRv6 Mobile User Plane P4 proto-type
SRv6 Mobile User Plane P4 proto-typeKentaro Ebisawa
 
Zebra SRv6 CLI on Linux Dataplane (ENOG#49)
Zebra SRv6 CLI on Linux Dataplane (ENOG#49)Zebra SRv6 CLI on Linux Dataplane (ENOG#49)
Zebra SRv6 CLI on Linux Dataplane (ENOG#49)Kentaro Ebisawa
 
Zebra 2.0 in Hybrid Cloud Era
Zebra 2.0 in Hybrid Cloud EraZebra 2.0 in Hybrid Cloud Era
Zebra 2.0 in Hybrid Cloud EraKentaro Ebisawa
 
p4alu: Arithmetic Logic Unit in P4
p4alu: Arithmetic Logic Unit in P4p4alu: Arithmetic Logic Unit in P4
p4alu: Arithmetic Logic Unit in P4Kentaro Ebisawa
 
zebra & openconfigd Introduction
zebra & openconfigd Introductionzebra & openconfigd Introduction
zebra & openconfigd IntroductionKentaro Ebisawa
 

More from Kentaro Ebisawa (20)

P4 Updates (2020) (Japanese)
P4 Updates (2020) (Japanese)P4 Updates (2020) (Japanese)
P4 Updates (2020) (Japanese)
 
Barefoot Faster™ 日本語紹介
Barefoot Faster™ 日本語紹介Barefoot Faster™ 日本語紹介
Barefoot Faster™ 日本語紹介
 
IETF106 Hackathon 報告 & P4 based Switch の課題と未来
IETF106 Hackathon 報告 & P4 based Switch の課題と未来IETF106 Hackathon 報告 & P4 based Switch の課題と未来
IETF106 Hackathon 報告 & P4 based Switch の課題と未来
 
MPLS Japan 2019 : Data & Control Plane を繋ぐ API
MPLS Japan 2019 : Data & Control Plane を繋ぐ APIMPLS Japan 2019 : Data & Control Plane を繋ぐ API
MPLS Japan 2019 : Data & Control Plane を繋ぐ API
 
Yang Tools Quick Memo
Yang Tools Quick MemoYang Tools Quick Memo
Yang Tools Quick Memo
 
In Network Computing Prototype Using P4 at KSC/KREONET 2019
In Network Computing Prototype Using P4 at KSC/KREONET 2019In Network Computing Prototype Using P4 at KSC/KREONET 2019
In Network Computing Prototype Using P4 at KSC/KREONET 2019
 
Comparison of SRv6 Extensions uSID, SRv6+, C-SRH
Comparison of SRv6 Extensions uSID, SRv6+, C-SRHComparison of SRv6 Extensions uSID, SRv6+, C-SRH
Comparison of SRv6 Extensions uSID, SRv6+, C-SRH
 
Interop2019 Toyota Netcope P4
Interop2019 Toyota Netcope P4Interop2019 Toyota Netcope P4
Interop2019 Toyota Netcope P4
 
IETF 104 Hackathon VPP Prototyping Stateless SRv6/GTP-U Translation
IETF 104 Hackathon VPP Prototyping Stateless SRv6/GTP-U TranslationIETF 104 Hackathon VPP Prototyping Stateless SRv6/GTP-U Translation
IETF 104 Hackathon VPP Prototyping Stateless SRv6/GTP-U Translation
 
p4srv6 (P4-16) design document rev1.0
p4srv6 (P4-16) design document rev1.0p4srv6 (P4-16) design document rev1.0
p4srv6 (P4-16) design document rev1.0
 
SRv6 Mobile User Plane : Initial POC and Implementation
SRv6 Mobile User Plane : Initial POC and ImplementationSRv6 Mobile User Plane : Initial POC and Implementation
SRv6 Mobile User Plane : Initial POC and Implementation
 
JANOG43 Forefront of SRv6, Open Source Implementations
JANOG43 Forefront of SRv6, Open Source ImplementationsJANOG43 Forefront of SRv6, Open Source Implementations
JANOG43 Forefront of SRv6, Open Source Implementations
 
Using GTP on Linux with libgtpnl
Using GTP on Linux with libgtpnlUsing GTP on Linux with libgtpnl
Using GTP on Linux with libgtpnl
 
GTPing, How To
GTPing, How ToGTPing, How To
GTPing, How To
 
"SRv6の現状と展望" ENOG53@上越
"SRv6の現状と展望" ENOG53@上越"SRv6の現状と展望" ENOG53@上越
"SRv6の現状と展望" ENOG53@上越
 
SRv6 Mobile User Plane P4 proto-type
SRv6 Mobile User Plane P4 proto-typeSRv6 Mobile User Plane P4 proto-type
SRv6 Mobile User Plane P4 proto-type
 
Zebra SRv6 CLI on Linux Dataplane (ENOG#49)
Zebra SRv6 CLI on Linux Dataplane (ENOG#49)Zebra SRv6 CLI on Linux Dataplane (ENOG#49)
Zebra SRv6 CLI on Linux Dataplane (ENOG#49)
 
Zebra 2.0 in Hybrid Cloud Era
Zebra 2.0 in Hybrid Cloud EraZebra 2.0 in Hybrid Cloud Era
Zebra 2.0 in Hybrid Cloud Era
 
p4alu: Arithmetic Logic Unit in P4
p4alu: Arithmetic Logic Unit in P4p4alu: Arithmetic Logic Unit in P4
p4alu: Arithmetic Logic Unit in P4
 
zebra & openconfigd Introduction
zebra & openconfigd Introductionzebra & openconfigd Introduction
zebra & openconfigd Introduction
 

Recently uploaded

UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 

Recently uploaded (9)

UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 

ネットワークOS野郎 ~ インフラ野郎Night 20160414

  • 1. (仮) このNetwork OS野郎!! ~ ネットワークOSの作り方 ~ 海老澤 健太郎@Ponto Networks, Inc. Twitter: @ebiken (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 1
  • 2. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 2 世の中には2種類の野郎がいる (*) 野郎=ジェンダーを問わず
  • 3. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 3 自作する野郎 ネットワークOS(NOS)を 自作しない野郎 自ら道具を磨き進化させる野郎 与えられた道具を使い続ける野郎
  • 4. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 4 「ネットワークOS」 とは? 自分、「ネットワークOS」 作ってるんすよ ネットワーク処理に特化した割込とか、 コアの割り当てとか、 スケジューリングとか欲しくないですか? ようやく、BIOSから起動してコンソールに 文字がでるまではできたんすよね お、楽しそう。どんなの? ?!? ( ̄Д ̄;)!?!?
  • 5. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 5 「ネットワークOS」 とは? ネットワーク処理に特化したカーネル (スイッチ等) ネットワーク機器を動かす ドライバ・アプリの集合
  • 6. サーバー vs スイッチの中身 (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 6 Edge-Core AS7512-32X http://www.edge-core.com/productsInfo.php?cls=1&cls2=5&cls3=68&id=129 ネットワークの専門家しか 理解できない特別な機械!?
  • 7. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 7 PCI express CPU Memory MemoryMemory ASIC マザー ボード Switch ボード PCI express CPU Memory MemoryMemory ASIC FAN LED Sensor NIC カード CPU ボード サーバーの中身 スイッチの中身 ASIC
  • 8. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 8 スイッチのパケット処理 パーサー (ヘッダ解析) パケット処理パイプライン 変換・転送 エンジン OF L2 L3 ACL マッチ・テーブル Subnet (LPM) Gateway Port 192.168.10.0 /24 10.0.0.5 5 192.168.20.0 /24 172.16.0.1 1 ... ... ... 0.0.0.0/0 172.16.0.1 1 Layer 3 table MAC Address Port 00-00-5E-00-53-01 1 00-00-5E-00-53-02 2 00-00-5E-00-53-03 3 00-00-5E-00-53-04 4 Layer 2 Table パケット・ヘッダを解析 テーブル検索 (Match) 処理 (Action) Action Drop / Forward Rewrite Push / Pop
  • 9. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 9 ASIC(データプレーン)の処理 PCI express CPU Memory MemoryMemory ASIC FAN LED Sensor パーサー (ヘッダ解析) パケット処理パイプライン 変換・転送 エンジン OF L2 L3 ACL マッチ・テーブル ネットワークOS
  • 10. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 10 ネットワークOSの中身 PCI express CPU Memory MemoryMemory ASIC FAN LED Sensor Base OS (ex: Linux) User Interface (CLI, Shell, REST API) misc drivers (Fan, LED, Sensor) ASIC driver Protocol AgentProtocol AgentProtocol Agent (BGP, OSPF ...) ASIC ControllerConfig Manager ASIC SDK (API)System Manager
  • 11. ネットワークOS は (いわゆる) オペレーティングシステムではない (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 11
  • 12. ネットワークOSを作る ↓ ASICに処理方法を教えるアプリを作る (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 12
  • 13. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 13 ↓ 皆さんが普段関わっている 技術と比較してみましょう。 むずかしくない?
  • 14. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 14 Reference: (*1) https://www.theregister.co.uk/2016/03/31/intel_broadwell_ep_xeon_e5_2600_v4/ (*2) https://sebastianraschka.com/faq/docs/difference-deep-and-normal-learning.html (*3) http://ssmlwf.azurewebsites.net/ (*4) http://www.syuheiuda.com/?p=3972 COMPLEX  SIMPLE ☺ (*1) Broadwell EP 24 Core Arrangement (*2) MLPs : multi-layer perceptrons (*3) Azure Cloud IoT Solution Architecture (*4) そうだコンテナー データセンターを作ろう Parse -> Match -> Action
  • 15. なぜ今までは作れなかったのか? なぜ今作れるのか? (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 15
  • 16. なぜ今、ネットワークOSを作れるのか? ハードウェアの調達 ASIC SDK/APIの入手 開発リソースの確保 (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 16 ネットワークOS作成のハードル
  • 17. なぜ今、ネットワークOSを作れるのか? (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 17 ディスアグリゲーション = ソフト・ハード分離 Google • B4 (G-Scale Network) • データセンター間のトラフィック管理 • コントローラーからトラフィック分布を管理可 能なネットワークOSの自作 • 最も初期の “SDN” のひとつ Facebook • Wedge + FBOSS • サーバーと同じツール・手法でネットワーク機 器を運用管理可能に • サーバーと同じハード・ソフト(OS)に、ASIC及 びASIC管理ソフトを追加 Microsoft • SONiC / SAI • 自動化ツールと統合可能なネットワークOS • ASIC API の標準化を提唱(SAI) LinkedIn • Project Falco • 問題検知・解析を可能とする統計情報など をASICから取得可能に • 社内で迅速なバグ修正が可能に
  • 18. なぜ今、ネットワークOSを作れるのか? • サーバー運用管理で培ったイノベーションをネットワークへ • Linux ベースの自動化ツール • e.g. Chef/Puppet/Ansible/CFEngine ... • 時代遅れの監視・ログツールへの依存を軽減 • SNMP ⇒ Kafka (pub/sub messaging for telemetry) • バグのタイムリーな修正(自社のプライオリティに応じた) • 自社で使用しない機能に由来するバグからの脱却 • ライセンスやサポート費用のスケーラビリティ (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 18 ディスアグリゲーションの目的
  • 19. ODMベンダー中心に、ハードウェア「だけ」を購入可能に なぜ今、ネットワークOSを作れるのか? (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 19 スイッチハードウェアのホワイトボックス化
  • 20. なぜ今、ネットワークOSを作れるのか? (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 20 ASIC SDK/API のオープン化・標準化 Base OS (ex: Linux) User Interface (CLI, Shell, REST API) misc drivers (Fan, LED, Sensor) Protocol AgentProtocol AgentProtocol Agent (BGP, OSPF ...) ASIC ControllerConfig Manager System Manager ASIC driver ASIC SDK (API) ASICベンダーに よるロックイン
  • 21. なぜ今、ネットワークOSを作れるのか? (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 21 ASIC SDK/API のオープン化・標準化 Broadcom Mellanox Cavium OF-DPA OpenNSL Open Ethernet OpenXPS SDK/API ASIC Broadcom Mellanox Cavium Switch Abstraction Interface (SAI) Data Plane Abstraction Broadcom Mellanox Cavium Layer 2/3 Agents (OSPF, BGP, STP, LLDP ...) Data Plane Abstraction SAI Layer 2/3 Agents (OSPF, BGP, STP, LLDP ...) Plug-in ASIC SDK/API のオープン化 ASIC SDK/API の標準化
  • 22. なぜ今、ネットワークOSを作れるのか? (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 22 オープンソースNOSの登場 スイッチハードウェア向けベースOSの提供 Open Network Linux フル・ネットワークOS OpenSwitch (Dell + SnapRoute) 制御アプリ(プロトコル・エージェント) SnapRoute (FlexSwitch) SONiC (Microsoft)| FBOSS (Facebook)
  • 23. なぜ今、ネットワークOSを作れるのか? ハードウェアの調達 ⇒ ホワイトボックス(ODM製ハードウェア)の購入 ASIC SDK/APIの入手 ⇒ APIのオープン化・標準化(SAI) 開発リソースの確保 ⇒ オープンソースなネットワークOSの登場 (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 23 ネットワークOS作成のハードル (解消) Giants以外も独自NOSを利用可能に!!
  • 24. ネットワークOSの作り方 スクラッチから作りたい人向けに (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 24
  • 25. 1. スイッチ・ハードウェアの調達 2. ベースOSの選択 3. ASIC SDK/API 入手 4. ASIC コントローラー作成 5. お好みのUI を作成 • オプション • Protocol Agent • Config Manager (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 25 ネットワークOSの作り方(5ステップ+オプション) Base OS (ex: Linux) User Interface (CLI, Shell, REST API) misc drivers (Fan, LED, Sensor) ASIC driver Protocol AgentProtocol AgentProtocol Agent (BGP, OSPF ...) ASIC ControllerConfig Manager ASIC SDK (API)System Manager スイッチ・ハードウェア
  • 26. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 26 1. スイッチ・ハードウェアの調達 http://www.colfaxdirect.com/store/pc/viewPrd.asp?idproduct=3019
  • 27. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 27 2. ベースOSの選択 Linux Distribution Open Network Linux https://opennetlinux.org/
  • 28. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 28 3. ASIC SDK / API 入手 Broadcom Mellanox Cavium Open Ethernet http://www.mellanox.com/open-ethernet/ OpenNSL https://github.com/Broadcom-Switch/OpenNSL/ OpenXPS https://github.com/XPliant/OpenXPS
  • 29. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 29 4. ASIC コントローラー作成 User Interface (CLI, Shell, REST API) Protocol AgentProtocol AgentProtocol Agent (BGP, OSPF ...) ASIC Controller ASIC SDK (API) (OpenXPS as an example) sai_create_vlan_fn() sai_create_route_fn() SAI (Switch Abstraction Interface)xpsVlanCreate() VLAN作成 ルート作成
  • 30. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 30 5. お好みのUIを作成 “REST API” <お好みの言語> サーバー系パッケージの流用 (だってLinuxだもん) 野郎は黙って「自作」 http://qiita.com/isaoshimizu/items/71dd2ca2a08ddb607e31
  • 31. 1. スイッチ・ハードウェア • Edge-Core AS7512-32X (XPliant, 100G x 32 port) 2. ベースOSの選択 • 某 Linux Distribution 3. ASIC SDK/API 入手 • Cavium から直接入手 4. ASIC コントローラー作成 • Golang で実装 5. お好みのUI を作成 • CLI: Bash Extension (JunOS like) • REST API (Golang) • Config Manager • 自作 (Zebra2.0) • Routing Agent • Quagga, GoBGP, Zebra 2.0 • GTP対応 Match/Action (ASICプロファイルをカスタマイズ) (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 31 作ってみた (PontOS) Modular Routing Agents REST API (WebAPI) User Apps Linux shell (CLI as an Application) Config Broker (data store) Modular Routing Agents FEA (Forwarding Engine Abstraction) Data Path Profile Manager Flexible Data Plane User Apps Management Plane Data Plane Flex ASIC (XPliant etc.) Linux Kernel Network Stack SmartNIC, NPU, FPGA Native Applications Native Applications Native Applications SDK (Language API)
  • 32. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 33 Slides by 石黒 邦宏 at ONIC Japan 2016 "Zebra 2.0 – SDN, NFV, Container時代の Networking Softwareの設計と実装" http://onic.jp/program-detail/#f07
  • 33. http://www.pontonetworks.com/ Locations Head Quater San Diego (USA) Development Tokyo (Japan) + San Jose (USA) Investors Ex-exectutives of Internet and Mobile industry. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 34 Ponto Networks, Inc.
  • 34. • プログラマブルなデータプレーンでできる事 • パーサーやマッチ/アクションのカスタマイズ ⇒ 新しいプロトコルをASICで処理 • テーブル設計のカスタマイズ ⇒ リソースの有効活用⇒ スケーラビリティの向上 • アプリケーション: • GTPなど、モバイル分野でのコモディティ機器の利用 • In-band Network Telemetry • パケットのふるまいを実トラフィックで観測 • AT&T exploited the programmability of the chip to add In-band Network Telemetry (INT). • https://www.sdxcentral.com/articles/news/att-picks-barefoot-networks-programmable-switches • Tbps級のLBを数百万円のハードで実現 • 参考:"OPEN NETWORKING" に向けた Management / Data Plane の動向 • ENOG#41@佐渡 • https://www.slideshare.net/kentaroebisawa/open-networking-management-data-plane (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 35 プログラマブル・データプレーンの世界
  • 35. ネットワークOSを取り巻く環境(まとめ) つくった感想 (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 36
  • 36. • ASICドライバやSDKはソースコードでは公 開されていない ⇒ 対応してないモデルやOS(Kernel)も。 (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 37 現状の課題 • オープンソースはネットワークOSの一部分 ⇒ SONiC, FBOSS, SnapRoute • SAIだけでは実現できない機能も ⇒ ACL, Match/Action Rules, MPLS etc. • Full NOS としての OpenSwitch の今後に期待 ⇒ HPE -> Dell/SnapRoute 12月に移行開始 • 活発な機能追加提案進行中 ⇒ “SAI: Releasing the Potential of Switch ASIC” OCP2017 Slide (*) (*) http://www.opencompute.org/wiki/Networking/Summit-2017-03#0930_-_SAI:_Releasing_the_Potential_of_Switch_ASIC
  • 37. ネットワークOSを取り巻く環境(まとめ) (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 38 ネットワークOSを作るためのパーツはそろった!! オープンなハードウェア オープンな ASIC API/SDK オープンなネットワークOS (サーバーのように) ネットワーク機器(ASIC)上で 自分のアプリを開発できる時代に!
  • 38. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 39 世の中には2種類の野郎がいる (*) 野郎=ジェンダーを問わず
  • 39. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 40 自作する野郎 ネットワークOS(NOS)を 自作しない野郎 自ら道具を磨き進化させる野郎 与えられた道具を使い続ける野郎