アバンタイトル
IT分野は範囲がとても広いです。そのため、過去問を解いていると1ページに何個も理解できない単語が出てきます。それを一気に理解しようとするのはとても骨が折れるし、やる気も続きません。
しかし、そんな時は1周まわって1つのことに徹底集中してみるのはどうでしょうか?覚えなきゃいけないことが沢山あると、終わりが見えずモチベーションが続きません。
でも、「今日はこの1つをマスターしよう!」と1つにフォーカスすればゴールが見えて、集中力も続くようになります。また、一点集中型なので理解力も深まり応用も効くようになります。
ということで、当サイトでは1点集中をコンセプトに解説を展開しています。勉強法が定まっていなかったり悩んでいる方は是非、続きをご覧になってみてはいかかでしょうか?
はじめに
今回も中二病心を刺激するワードを取り扱います。それが搬送波感知多重アクセス/衝突検出(CSMA/CD)です。
今回学ぶこのフレーズに対しては、「難しそー」とか「役に立つの?」といった思考は一旦おいといて「ただかっこいいから知りたい!」というシンプルな思考でStudyしていってほしいです。
そのためにこの記事では、初心者にも超分かりやすく解説していきます。ただの試験対策、ただの退屈な勉強、という感覚ではなく、「人前でこのフレーズを連呼してる自分を想像したら胸がわくわくする」みたいな、そういう軽い気持ちを主としてStudyしていきましょう(笑)!
また、この記事はIT経験者でなくても、だれでも読み進められる構成になっているので、最後まで楽に進めます。そして、読み終わった頃には、「あれ?知らぬ間に理解が深まっているぞ」ということに気づくでしょう。それでは、一緒に学んでいきましょう!そして、「勉強しなきゃ!」という義務感ではなく「かっこいいから知りたい!」という単純な理由で楽しみながらStudyしていきましょう!
【ここで扱う疑問】
などの、スイッチスタッキングに関わる様々な疑問を解消していきます。
CSMA/CDの大枠を教えて!
CSMA/CD(Carrier Sense Multiple Access with Collision Detection)は、イーサネットなどの有線ネットワークで使用される通信プロトコルで、複数のデバイスが同じ通信チャネルを共有する際に衝突を最小限に抑えるための仕組みです。具体的な手順は以下の通りです:
動作の流れ
- Carrier Sense(搬送波感知):
- Multiple Access(多重アクセス):
- すべてのデバイスが同じ通信チャネルを共有します。
- これは、複数のデバイスがデータを送信できるようにするための仕組みです。
- Collision Detection(衝突検出):
- デバイスがデータを送信している間、送信したデータが正しく送られているかどうかを確認します。
- もし、他のデバイスが同時にデータを送信し始めた場合、衝突が発生します。
- 衝突が検出された場合、各デバイスはデータの送信を停止し、ジャム信号を送信して他のデバイスに衝突が発生したことを通知します。そしてランダムな時間待ってから再試行します。この待ち時間は「バックオフ時間」と呼ばれます。
- 再送信
- バックオフ時間が経過すると、デバイスは再びチャネルを確認し、空いていれば再度データを送信します。
- このプロセスはデータが成功裏に送信されるまで繰り返されます。
そもそも共有通信チャネルってなに?
共有通信チャネル(Shared Communication Channel)は、複数の通信者やデバイスが同じ物理的な通信経路や周波数帯域を共有して使用する場合の通称です。
これは、例えば以下のような状況が該当します:
- イーサネットケーブル: 複数のコンピュータが同じケーブルを通じてデータを送受信する場合。この場合、ケーブル自体が物理的な通信経路となります。
- Wi-Fiネットワーク: 複数のデバイスが同じ無線チャネル(例えば、2.4GHz帯の特定のチャネル)を共有して通信する場合。ここでの物理的な通信経路は、無線波が伝播する空間となります。
種類
共有通信チャネルでは、複数の通信者が同じチャネルを使用してデータを送受信します。これにはいくつかのタイプがあります:
- 半二重通信(Half-Duplex Communication):
- チャネルを使うデバイスは、同じチャネルを送信と受信の両方に交互に使用します。一度に一方向(送信または受信)しかできません。
- 全二重通信(Full-Duplex Communication):
- チャネルを使うデバイスは、同じチャネルを同時に送信と受信の両方(二方向)に使用できます。つまり、送信と受信が同時に行われます。
搬送波感知をやったら、そもそも衝突って起きなくない?
シンプルな疑問です。『Carrier Sense(搬送波感知)をやったら、そもそも衝突って起きなくないっすか?だって、データ送信する前に、使われてるかを確認するのがCarrierSenseでしょ?それをやったら、普通、衝突なんて起きなくない?なんで衝突が起きるの?』このような疑問を解消していきます。
Carrier Sense Multiple Access with Collision Detection (CSMA/CD)は、通信の衝突を最小限に抑えるためのプロトコルですが、なぜ衝突が起きるのかについて詳しく説明します。
衝突が起きる理由
- プロトコルの遅延:
- 搬送波感知によってチャネルが空いていると判断した後、実際にデータを送信するまでに微小な時間的遅延があります。この間に他のデバイスも同時に送信を試みると、衝突が発生します。
- 伝送遅延やノイズ:
- ネットワーク内の物理的な条件や伝送遅延、ノイズが存在するため、他のデバイスと同時にデータがチャネルに送信されることがあります。これにより衝突が発生します。
要するに….
衝突が発生する主な原因は、搬送波感知(Carrier Sense)を行ってから実際にデータ送信を始めるまでの微小な時間的な空白が生じることです。この空白の間に複数のデバイスが同時にデータ送信を試みると、衝突が発生します。
まとめ
要するに….
搬送波感知多重アクセス/検出っていうのは、複数のデバイスでチャネルを共有する際に衝突を少なくできるプロトコルってことです。
で、その仕組みとしては、まず、CarrierSenseして、キャリアが空いているかを確認して、空いてたらデータを送信する。で、キャリアを監視して、衝突が発生したらバックオフ機能で待機させる。
また、衝突が発生する理由としては、CarrierSenseから送信までの空白の時間が、同時にデータ送信をすることを可能にしてしまい、それが衝突を引き起こしてしまう。
しかし、いずれにしろ衝突を回避し、検出するプロトコルとしては一定の信頼性を担保している。
おまけ:用語解説
チャネルってなに?
チャネルは、特定の経路や周波数帯域を指し、データがその経路を通じて伝送されるための具体的な通り道を表します。
例えば….
- Wi-Fiのチャネル: 2.4GHzや5GHz帯の特定の周波数範囲。
- イーサネットのチャネル: ケーブル内の特定の通信路。
キャリアってなに?
キャリアとは、データを伝送するための媒体や信号を指します。具体的には、データが伝達される物理的なメディアや周波数帯域を表します。
具体例
- 物理的なキャリア:
- ケーブル: イーサネットケーブルや光ファイバーケーブルなど、データが物理的に送られる媒体。
- 無線電波: Wi-FiやBluetoothのような無線通信における電波。
- 信号のキャリア:
- 搬送波: データを載せて送信するための基本的な信号。例えば、ラジオ放送やテレビ放送に使われる特定の周波数帯域。
- 周波数帯域: データ通信に使用される特定の周波数範囲。例えば、Wi-Fiの2.4GHz帯や5GHz帯。
CSMA/CDにおけるキャリア
CSMA/CD(Carrier Sense Multiple Access with Collision Detection)では、キャリア感知(Carrier Sense)を行います。具体的には、デバイスがデータを送信する前に以下の点を確認します:
- チャネルが使用中かどうか: デバイスはキャリアを監視し、他のデバイスが既にデータを送信しているかどうかを確認します。
- チャネルの空き確認: キャリアが空いている場合、データを送信します。これにより、同時送信による衝突のリスクを減らします。
ジャム信号ってなに?
ジャム信号(jam signal)とは、CSMA/CD(Carrier Sense Multiple Access with Collision Detection)プロトコルにおいて、通信衝突(collision)が検出された際に送信される特殊な信号のことです。ジャム信号の目的は、すべてのデバイスに対して衝突が発生したことを知らせることです。
おわりに
本日はここまでです。今日は搬送波感知多重アクセス/衝突検出(CSMA/CD)をStudy&マスターしてきました!ただカッコいいからという理由だけの方が、意外と集中して向き合うことができたのではないでしょうか?
そうなんです!「勉強しなきゃ!知識つけなきゃ!」のように勉強を義務にしてしまうと長く続きません。だからこそ、私たちは楽しんで知識を身に着けていきましょう!そんなことをやってるうちに気づいたらスペシャリストになっているかもしれませんよ!
これからも、今日みたいに「the勉強するぞ!」という意気込みではなく、ヌルっと気づいたら知識が増えてた!みたいな軽い感覚でStudyを一緒にしていきましょう!
本日はここで、終わります。ありがとうございました。またお会いしましょう!では、さらばじゃ!
【この記事も一緒に読まれています】