連載
» 2015年03月25日 18時00分 UPDATE

CCENT/CCNA 試験対策 2015年版(11):ストア&フォワード方式、カットスルー方式、CAMテーブル (1/2)

新米ネットワークエンジニアと共にシスコの認定資格「CCENT/CCNA」のポイントを学ぶシリーズ。今回のテーマは「データリンク層のフレーム処理」です。

[ドヴァ 齋藤貴幸,@IT]
title_ccent.jpg
CCENT/CCNA 試験対策 2015年版

連載目次

 新米ネットワークエンジニアのS君がCCENT/CCNAを受験するために勉強した内容をリポートに書き、S君の先輩 齋藤さんが添削する形式で進める本連載。今回の学習テーマは、前回の「コリジョンドメインとブロードキャストドメイン」に引き続き、シスコシステムズが発表しているCCENTの試験内容の2.2「基本的なスイッチングの概念とシスコ製スイッチの動作の確認」についてです。


S君のリポート

i_ccent_s.jpg

 今回は「データリンク層のフレーム処理」についてリポートします。

 スイッチを経由する通信では、OSI参照モデルレイヤー2のPDUであるフレームを通信対象としています。スイッチを経由して通信を行う場合、フレーム処理がどのように行われているのかを説明します。

CAMテーブル

 フレーム通信で重要なのは、「CAM(Content Addressable Memory)テーブル」です。MACアドレステーブルとも呼ばれますが、CiscoのCatalystスイッチを使用する場合は、CAMテーブルと呼ばれます。

 スイッチはCAMテーブルを保持し、「VLAN番号」「送信元MACアドレス」「MACアドレス」「ポート番号」の四つが記載されています。

ccent2015_11a.png 図1 CAMテーブル記載事項(クリックすると、大きなサイズの画像を表示します。以降の画像も全て、クリックで拡大します)

MACアドレスの学習

 スイッチはCAMテーブルを用いて通信を行います。通信が行われるとCAMテーブルが更新されます。

ccent2015_11b.png 図2 CAMテーブルの学習 1/5 起動したばかりのスイッチに、空の端末Aから端末B宛てにフレームを送る

 CAMテーブルがどのように構成されていくのか説明します。図2は、スイッチが起動したばかりで、通信がまだ発生していません。CAMテーブルは空=宛先MACアドレス情報がない状態です。

 最初に、端末Aから端末B宛てにフレームを送信します。

ccent2015_11c.png 図3 CAMテーブルの学習 2/5 CAMテーブルが空のスイッチが、端末Aから端末B宛てのフレームを受け取った

 図3は「CAMテーブルが空」で「スイッチが端末Aから端末B宛てのフレームを受け取ったとき」の処理です。

 フレームを受け取ったスイッチは、「Fa0/1」にAが接続されていると理解したので、「CAMテーブルに送信元MACアドレスを追記」します。

 スイッチは次に、端末B宛てにフレームを転送したいのですが、CAMテーブルに端末Bの情報がないので「フラッディング」という動作を行います。「フレームを、受信したポート以外のポートに転送する」機能です。

ccent2015_11d.png 図4 CAMテーブルの学習 3/5 スイッチが端末B宛てにフラッディングしたら、Bが読み込み、Cはフレームを吐きした

 図4は、各ノードにおけるフラッディングされたフレームの処理です。

 端末Bは、自分宛てのフレームを読み込みます。端末Cは、フレームが自分宛てではないため、受け取ったフレームを破棄します。

ccent2015_11e.png 図5 CAMテーブルの学習 4/5 端末Bから端末Aに通信を行い、スイッチが端末Bの情報を登録した

 図5は、「CAMテーブルに端末Aの情報のみが記載されている状態」で、「端末Bから端末Aに通信を行った」ときの処理です。

 スイッチは端末Bから端末A宛てのフレームを受け取って、先ほどと同様の処理を行います。CAMテーブルに端末Bの情報が登録されていないため、「端末Bが『Fa0/2』のポートに接続されているという情報」を追記します。

 端末Aの情報はCAMテーブルにすでに登録されているため、フラッディングすることなくフレームを転送します。このCAMテーブルに従ってフレームを転送することを「フォワーディング」といいます。端末Bから端末A宛てのフレームを端末Cへ転送しないよう、不必要なポートへフレームの転送を抑制する機能を「フィルタリング」と呼びます。

 このようにCAMテーブルに情報が登録されると、送信相手にのみ送信できるようになります。

 CAMテーブルに自動的に登録された情報は、一定時間通信がなかったら破棄されます。この機能を「エージング」といいます。Catalystスイッチは、デフォルトで「300秒通信がない」と削除されます。

ccent2015_11f.png 図6 CAMテーブルの学習 5/5 一定時間通信がなかったので、端末Aの情報が破棄された

フレーム転送方式

 フレームの処理方法について説明しました。スイッチがフレームを転送する方式は3つあります。

ストアアンドフォワード

 スイッチはフレームを全て受信し読み込んだ後に、フレームを転送します。この方式を「ストアアンドフォワード」といいます。

 メリットは、フレーム全てを読み込むためエラーチェック(FCS)を行えるので、信頼性のある通信ができることです。

 デメリットは、必ずフレームの全てをバッファーに保存するので、少なからず遅延が発生することです。

カットスルー

 「カットスルー」方式は、フレームの先頭6bytesのみを読み込み、フレームを転送します。先頭6bytesには、宛先MACアドレス情報が格納されています。

 メリットは高速である点で、デメリットはエラーチェックできないことです。

フラグメントフリー

 「フラグメントフリー」方式は、カットスルーより信頼性が高く、ストアアンドフォワードより高速、という中間的な機能を持っています。

 フラグメントフリー方式は、フレームの先頭64bytesを読み込んだ後に転送します。イーサネットフレームの最小サイズが64bytesであることから、64bytes受信できれば正常なサイズのフレームとほぼ見なせるためです。

 上記の3つのフレーム転送方式の信頼性の高さは、フレームの中身を全てチェックするストアアンドフォワード方式→フラグメントフリー→カットスルーの順です。速度は、カットスルー→フラグメントフリー→ストアアンドフォワードの順です。

 近年は遅延が気にならないほどスイッチの性能が上がっているため、ストアアンドフォワード方式が一般的に採用されています。

用語解説

用語 意味
FCS(Frame Check Sequence フレームチェックシーケンス) フレームの最後に格納されている、フレームのデータに誤りがないかをチェックするための情報。

フレームを送信する際に、フレーム内データを基に演算を行ってFCSを算出して、フレームの末尾に付加する。

受信側も同様に、データからFCSを算出する。付加されているFCSと相違ないかをチェックして、信頼性を保つ

 次回は「VLANの作成方法およびVLAN間ルーティング」をリポートします。

リポート作成:新米S


齋藤さんの添削

ccent_stamp02.jpg

 文章が簡潔で、分かりやすい良いリポートでした。しかし言い回しが気になる箇所がまだいくつかありましたので、今後の課題としましょう。評価は「よくできました」です。添削のお礼は、牛丼とカレーのあいがけでお願いします。

 齋藤

今回の宿題

  • PCが接続されているポートに、別のPCをつなぎ替えると、CAMテーブルはどのようになりますか?
  • 3種類のフレーム転送方式のうち、シスコシステムズ独自の方式はどれでしょうか?
  • CAMテーブルを参照時にスイッチへ投入すべきコマンドは、どのようなコマンドですか?
       1|2 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。