ダミーのオープンフロー

画像 Habrahabr情報マップに別の白い斑点を描く時が来ました。 偶然に言及したいくつかの事実に加えて、私たちの最愛のウェブサイトは、Google、Juniper、Cisco、その他の同様に有名なネットワークテクノロジーの怪物たちに対するインターネット通信の差し迫った突破についてまだ話していませんでした。会社。



OpenFlowプロトコル自体は非常に新しいもので、数年前にSandford大学で開発されましたが、それ以来、その実装に関係する人的および技術的リソースの数は雪崩のように増加しています。 半年前、私の会社はこのレースに参加しました。今、この技術のすべての長所と短所を「ダミー」レベルで簡単に説明しようとしています。



だから、私は「指で」ポイントが何であるかを説明しようとします。 おそらくあなたの多くは、インターネットがあなたのコンピューターに入るための点滅するライトのある小さな箱に注意を払っています。 プロバイダーはほぼ同じで、より高価で強力ですが、本質は同じです:ある穴からパケットを受け取り、その内容を見てから、別の穴に入れるか、捨てるか、または別の方法で悪用します。 特定の各パッケージで結果として何が起こるかは、ボックス内のプロセッサによって決定されます。 彼はワイヤーがアップリンクにどの穴にくっついているかを覚えており、Vasya Pupkinのネットワークカードのアドレスを知っています。彼は中国の邪悪なハッカーにVasyaのコンピューターに対する汚い計画を実行させません。



問題は、「あなた(パケット)がたくさんいるが、私(プロセッサ)だけがいる」ことであり、パケット到着率がプロセッサの処理能力を超えると、避けられない遅延と損失が始まります。 そして、ここで論理的な疑問が生じます-なぜディスパッチャーはポーターとして機能するのですか? それらを分離しましょう。



だから、簡単に言えば、OpenFlowの本質はそのように説明されています-それはテーブルに従って穴から穴へパケットを転送しますダムアイアンパケットプロセッサ(TZHPP)はテーブルに従って、そしてそれが突然ルールに該当しない珍しいパッケージに出くわしたら、TZHPPこのパッケージ(美しいギフト包装に包まれている)をすべてを知っているサーバー(SKVZ)に転送するだけです。



SKVZは、ほとんどのメイン管理者の近くのどこかに住んでおり、内部のネットワーク構成、どのスイッチが立っているのか、誰がそれに接続しているのかを記憶しています。 各スイッチには固有の番号があり、電源をオンにした後、SKVZをノックして、TZHPPのルールとアクション(マッチとアクション)の完全なリストを受信します。たとえば、「DstIP 1.2.3.4でパケットを受信した場合、それを保持VLANタグ10およびそれをホール15に送信します」など。 現在、SKVZの役割はしばしばNOXBigSwitchまたはBeaconによって果たされます (他にもありますが、これはこれまで自分の手で触れなければならなかったセットです)。



作業開始後、SKVZはイベントに応じて、移動中にスイッチの構成を変更することができます。 たとえば、パケットが特定のポートに送信され、TZHPPが対応するルールを確認してこのパケットをコントローラーに送信すると、コントローラーはそれに応じて、たとえば特定のアドレスからオンラインになることを許可するルールを追加します。 またはその逆に、何らかのサービスへの外部アクセスを提供します。



このアプローチの利点:

1)ネットワーク構成全体がサーバーの管理者に保存され、どこにもログインする必要のない変更とバックアップのための単一のインターフェースを備えています楽しみのために

2)サーバーの介入を必要としない安定したデータストリームは、最大インターフェイス速度で処理されます。

3)スイッチのコストは、現在のL3を超える「スマートネス」により、最も原始的なL2のコストをさらに下回ります。

4)多くのユーザーの夢-WiFiローミング、外出先での切り替え( OpenRoadsプロジェクト)



もちろん、欠点もあります。

1)ARRRRRHH !!! 申し訳ありませんが、抵抗できませんでした。 開発者として、プロトコル自体の愚かさと思考不足に非常に申し訳なく思っています。これに対して、SMTPでさえ優雅さと洗練の高さのように見えます。 しかし、彼らは次のバージョンで完全に変更することを約束します(現在のバージョン1.1は今年の3月に採用されました)が、現時点では、いわゆるベンダーメッセージの保存のみが利用可能です。 ちなみに、1.0から1.1も大きく異なり、プロトコル内に注意深くレイアウトされたレーキに沿って走ることができました。

2)IPv6。 しかし、死者か善人か、あるいは何もありません。 ゾンビに関しては、わかりません。

3)複数のコントローラーを使用します。 さて、実験室では、これはフローバイザーと呼ばれる松葉杖を介して行われますが、実際には、ハードディスクの落下はスマート腺を愚かなスイッチに変えます。

4)たとえば、TSPパッケージのSynフラグをチェックするなど、基本的なことを実装するときは、タンバリンと踊ります。 これは再び番号1の主張です。

5)まだ何か不愉快なことがありましたが、ポイント1の後に私を圧倒した感情のために私は忘れていました。



あなたはコメントで質問をすることができます、私は私の能力の範囲でそれらに答えようとします。



UPD: eekによる関連動画



All Articles