ネットワークにおいて、ノード(ラテン語:nodus 、「結び目」)とは、電気通信ネットワークまたはコンピュータネットワーク内の再分配ポイントまたは通信エンドポイントのいずれかを指します。
物理ネットワークノードとは、ネットワークに接続され、通信チャネルを介して情報を作成、受信、または送信できる電子機器のことです。[ 1 ]データ通信では、物理ネットワークノードは、データ通信機器(モデム、ハブ、ブリッジ、スイッチなど)またはデータ端末機器(デジタル電話機、プリンタ、ホストコンピュータなど)のいずれかになります。
データ通信において、物理的なネットワークノードは、モデム、ハブ、ブリッジ、スイッチなどのデータ通信機器(DCE)である場合もあれば、デジタル電話機、プリンタ、ホストコンピュータなどのデータ端末機器(DTE)である場合もある。
ネットワークがローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)である場合、データリンク層に参加するすべてのLANまたはWANノードはネットワークアドレスを持つ必要があり、通常は、そのノードが持つネットワークインターフェイスコントローラごとに1つずつ割り当てられます。例としては、コンピュータ、イーサネットインターフェイスを備えたDSLモデム、無線アクセスポイントなどがあります。イーサネットハブやシリアルインターフェイスを備えたモデムなど、データリンク層より下位でのみ動作する機器は、ネットワークアドレスを必要としません。[ 2 ]
対象となるネットワークがインターネットまたはイントラネットである場合、多くの物理ネットワークノードはホストコンピュータ(インターネットノードとも呼ばれる)であり、 IPアドレスによって識別されます。また、すべてのホストは物理ネットワークノードです。ただし、スイッチ、ブリッジ、無線アクセスポイントなどのデータリンク層デバイスの中には、IPホストアドレスを持たないもの(管理目的の場合を除く)があり、インターネットノードやホストとはみなされず、物理ネットワークノードおよびLANノードとみなされます。
固定電話網では、ノードとは、公衆電話交換機または私設電話交換機、遠隔集中装置、あるいは何らかのインテリジェントなネットワークサービスを提供するコンピュータを指します。セルラー通信では、基地局コントローラ、ホームロケーションレジスタ、ゲートウェイGPRSサポートノード(GGSN) 、サービングGPRSサポートノード(SGSN)などの交換点やデータベースがノードの例です。セルラーネットワークの基地局は、この文脈ではノードとはみなされません。
ケーブルテレビシステム(CATV)においては、この用語はより広い意味で用いられ、一般的には光ファイバーノードと関連付けられています。光ファイバーノードとは、特定の地理的エリア内で共通の光ファイバー受信機からサービスを受ける住宅や事業所を指します。光ファイバーノードは、通常、そのノードによってサービスを受ける住宅の数で表されます。
分散システムネットワークでは、ノードはクライアント、サーバー、またはピアのいずれかです。ピアはクライアントとして機能する場合もあれば、サーバーとして機能する場合もあります。ピアツーピアネットワークまたはオーバーレイネットワークでは、自身だけでなく他のネットワークデバイスのためにデータを積極的にルーティングするノードはスーパーノードと呼ばれます。
分散システムでは、ノードの異質性をシステムが認識できるように、仮想ノードを使用する場合があります。この問題は、 Amazon Dynamoの場合のように、一貫性ハッシュなどの特別なアルゴリズムで対処されます。[ 3 ]
広大なコンピュータネットワークにおいて、ネットワークの周辺にある個々のコンピュータ、他のネットワークにも接続していないコンピュータ、そして1つ以上のクラウドに一時的に接続することが多いコンピュータは、エンドノードと呼ばれます。一般的に、クラウドコンピューティングの枠組みでは、適切に管理されたクラウドに接続する個々のユーザーまたは顧客のコンピュータがエンドノードと呼ばれます。これらのコンピュータはネットワークの一部でありながらクラウドのホストによって管理されていないため、クラウド全体に重大なリスクをもたらします。これがエンドノード問題です。[ 4 ]この問題を解決する方法はいくつかありますが、いずれもエンドノードコンピュータへの信頼を確立する必要があります。[ 5 ]
基本アルゴリズムは、ノードのパフォーマンスの異質性を考慮していません。これらの問題に対処するため、Dynamo は一貫性ハッシュの変種を使用します。つまり、ノードを円の単一の点にマッピングする代わりに、各ノードはリング内の複数の点に割り当てられます。この目的のために、Dynamo は「仮想ノード」の概念を使用します。仮想ノードはシステム内の単一のノードのように見えますが、各ノードは複数の仮想ノードを担当できます。実際には、新しいノードがシステムに追加されると、リング内の複数の位置 (以降「トークン」) が割り当てられます。