書籍概要

Software Design plus

クラウド時代のネットワーク技術 OpenFlow実践入門

著者
発売日
更新日

概要

OpenFlowはネットワークの仮想化を実現するSDN(Software Defined Network)の中核となる技術です。「Open Networking Summit 2012」にて,Googleのデータセンター間の全トラフィックでOpenFlowが利用されていると発表されたことで,一般のエンジニアにも注目されるようになりました。
本書では,SDNの概要からOpenFlowプログラミングフレームワーク「Trema」を利用したネットワークプログラミング,さらに本格的なOpenFlowアプリケーションをケーススタディで解説します。

こんな方におすすめ

  • ネットワークエンジニア,SDNに興味のある方

著者から一言

OpenFlowをはじめとするSoftware Defined Networking(SDN)を身につけるには,

  • 基本的なネットワークの動作原理やOpenFlowの理解
  • プログラミングによるOpenFlow/SDNシステム構築の実践

の両者が欠かせません。

この本では,ネットワークやOpenFlowの仕組みを専門用語を極力使わずにごく身近な例で説明しています。またプログラマ向けには「自宅や職場で実際に試せる」プログラミング例をふんだんに載せました。より進んだ実践のために, OpenFlowスイッチの自作法や,Googleをはじめとする大規模データセンターでのOpenFlow活用例なども分かりやすく解説しました。

一歩先を目指すネットワーク技術者はもちろん,ソフトウェア自動化に興味を持つ普通のプログラマの方に手に取っていただければ幸いです。

サンプル

目次

Part1 SDN/OpenFlow入門
1章 OpenFlowって何?

2章 OpenFlowのユースケース

3章 OpenFlowの仕組み

4章 OpenFlowの開発フレームワーク

Part2 OpenFlowプログラミング入門
5章 OpenFlowフレームワークTrema

6章 スイッチ監視ツール

7章 インテリジェントなパッチパネル

8章 すべての基本,ラーニングスイッチ

9章 トラフィックモニタ

10章 シンプルなルータ(前編)

11章 シンプルなルータ(後編)

12章 Tremaのアーキテクチャ

Part3 ケーススタディ~本格的なOpenFlowアプリケーション
13章 生活ネットワークをOpenFlowに移行する

14章 いくつものスイッチをルーティングスイッチで制御する

15章 スライス機能付きスイッチでネットワークを仮想化する

16章 データセンター基盤をTremaで作る

17章 OpenFlowでデータセンターをつなげる

18章 2,000円でOpenFlowスイッチをDIY

19章 Tremaでテスト駆動開発

サポート

正誤表

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2013年10月23日更新)

P.32 1行目(図3-a下)

Flod Mod
Flow Mod

P.54 図4-4のキャプション

http://www.noxrepo.org/pox/about-pox/
http://www.projectfloodlight.org/floodlight/

P.69 脚注の2~3行目

ruby-dev1.8
ruby1.8-dev

P.71 hello-trema.rbのプログラム(本文中リスト)の1行目

class HelloTrema Controller
class HelloTrema < Controller

P.160 図10-1(4箇所)

送信先
送信

P.165 リスト10-1(simple_router.rb)のresolve_next_hop

def resolve_next_hop( daddr )
  next_hop = @routing_table.lookup( daddr.value )
  if next_hop
    next_hop
  else
    daddr.value
  end
end
def resolve_next_hop( daddr )
  interface = @interfaces.find_by_prefix( daddr.value )
  if interface
    daddr.value
  else
    @routing_table.lookup( daddr.value )
  end
end

P.213 ステップ1~5

ステップ1~5が発生する前提条件が抜けておりました。

「レガシーネットワークスイッチのエージアウト間隔よりも、OpenFlowスイッチのエージアウト間隔が長い」

P.213 ステップ2と3の間

次の状況が抜けておりました。

「レガシーネットワークのスイッチが覚えているhost1の情報が、一定時間後に消える(いわゆるエージアウト)」

P.225 図14-3

図中のスイッチ5とスイッチ6の経路(太線)がありませんでした。

商品一覧