ネットワーク関連用語解説

# ネットワーク関連用語解説


## TCP（Transmission Control Protocol）
:::note info
チャットなどデータ送信が重要性を伴う場合に使用
:::


- 直訳 = 伝送を制御するお約束事
- 確実に伝わる可能性が高い
- スピードが遅い
- 送ったデータが相手に届いたか、その都度確認しながら通信するやり方




## UDP（User Datagram Protocol）

:::note info
対戦相手の情報(位置など)の速さが求められる場合に使用
:::



- 直訳 = 使用者がデータグラムで使うお約束事
- 送ったデータが相手に届いたかを確認せずに通信するやり方
- 転送速度は高いが信憑性が低い



## データ通信の方法についての用語

:::note info
ユニキャストのユニはラテン語で「uni」の「ひとつ」という意味
:::


|名称|説明|送信先|
|---|---|---|
|**ユニキャスト**|一人に向けて送信すること|インターネット越しも可能|
|**マルチキャスト**|複数に向けて送信すること|インターネット越しも可能|
|**ブロードキャスト**|同じネットワーク内にいる全員へ送信すること|同じLAN内のみ|


## サーバー/クライアント

:::note info
- サーバー：サービスを「受け取る」側
- クライアント：サービスを「提供する」側
:::


| 項目              | サーバー（Server）                            | クライアント（Client）                          |
|-------------------|----------------------------------------------|--------------------------------------------------|
| 役割              | サービス・情報を「提供する側」                | サービス・情報を「利用する側」                  |
| 処理の開始        | 通常は「待ち受け」状態                       | 自分から「接続」して通信を始める               |
| 接続の数          | 複数のクライアントと接続できる（マルチ対応） | 通常は1つのサーバーと接続                       |
| 主な処理          | データ受信、処理、応答の送信                  | データ送信、応答の受信                          |
| 用途例   | ゲームのホスト役（チャット管理や同期処理）    | プレイヤーの操作送信、状態更新の受信            |




## IPアドレス
:::note info
インターネット上で使用される住所のようなもの
:::



|項目|グローバルIPアドレス|プライベートIPアドレス|
| --- | --- | --- |
|概要|インターネット上で使われるIPアドレス|LAN（家庭や会社の内部ネットワーク）で使われるIPアドレス|
|重複の可否| 世界で一意（かぶらない） | 各LAN内では自由に使ってOK（同じものを他のLANでも使える） |
|発行元| プロバイダ（ISP）やNIC（インターネット機関）から割り当てられる | ルーターなどが自動で割り当てる（DHCPなど） |
|使用例| Webサーバ、家庭のルーターの外側 | 家庭内PC、スマホ、プリンターなど |
|アクセスの可否| 世界中のどこからでもアクセス可能（ポート開放されていれば） | 外部から直接はアクセスできない |

### 動的IPアドレス/静的IPアドレス
:::note info
- 動的IPアドレス：アドレスを貸し出している（返却しなければいけない）
- 静的IPアドレス：アドレスを与える（返却しなくてよい）
:::


:::note info
### なぜ動的と静的が存在している？
ネット上で使用できるIPアドレス数は限られているため、
必要なときのみ割り振る動的アドレスと、サーバーなどで必要な固有の静的アドレスが存在する
:::


| 特徴                       | 動的IPアドレス                     | 静的IPアドレス                     |
|----------------------------|-------------------------------------|-------------------------------------|
| **割り当て方法**            | DHCPサーバーによる自動割り当て       | 手動で設定、もしくは固定で割り当て  |
| **主な利用用途**            | 一般的な家庭やオフィス、端末接続    | サーバー、重要なネットワーク機器   |
| **管理の容易さ**            | 自動管理、設定不要                  | 手動での設定と管理が必要           |
| **IPアドレスの変動**        | 定期的に変わることがある             | 常に固定されたIPアドレス           |
| **接続の安定性**            | インターネット接続中でも変動する場合がある | 安定した接続が保証される           |
| **プライバシーとセキュリティ**| 追跡が難しい                        | 安定しているため追跡が可能         |
| **主な使用環境**            | 一般的な家庭用や小規模オフィス       | サーバー、企業ネットワーク、VPN等 |
| **コスト**                  | 一般的に安価（無料のことが多い）    | 固定IPは通常、追加のコストが発生  |


## DHCPサーバー（Dynamic Host Configuration Protocol Server）
:::note info
有限のIPアドレスの中から使用できるIPアドレスを割り当ててくれるサーバー（コンピュータ）
:::


## ポート番号
:::note info
- ネットに接続する際に、どのサービスを使うかを識別するための番号
- Web(HTTP)などに接続したいときは「80」みたいな感じで国際規格があれば、好きに決めれるものもある
:::


## エンドポイント
:::note info
ネットワークにつながっている端末
:::

<details><summary>なぜエンドポイント？</summary>

:::note info
### なぜ`エンド`ポイント？
ネットワーク上には無数のコンピュータが存在するが、結局自分が接続している場所は端の端、最も端なので`端（エンド）`

![image](https://github.com/user-attachments/assets/188ebb1a-09c5-47e2-94bb-d6bf5790cd30)

:::

</details>


## VPN（Virtual Private Network）
:::note info
インターネット上に作る「自分専用の秘密トンネル」
:::


|機能|説明|
|---|---|
|通信の暗号化|どんなWi-Fiからでも安全にネットへ接続できる|


## イーサネット

:::note info
**[PC]──[LANケーブル]──[ルーター]**

この方式でネットに接続する通信規格のこと
:::


- ルーター１つで複数のデバイスにネットワークを接続することができる




## URLとは？
:::note info
（Uniform Resource Locator、ユニフォーム リソース ロケーター）
インターネット上の「住所」のようなもの

:::

| 構成要素             | 説明                                                              | 例（https://example.com）                |
|----------------------|-------------------------------------------------------------------|-----------------------------------------|
| **スキーム**          | 通信プロトコルを指定します（例：HTTP, HTTPS）。                    | https                                   |
| **ホスト名（ドメイン名）** | リソースが存在するサーバーの名前。                                 | example.com                             |
| **ポート番号**        | サーバーがリクエストを受け付けるポート番号。通常、省略可能（デフォルトポートが使われる）。 | :443（HTTPSのデフォルトポート）        |
| **パス**              | サーバー上のリソースの場所を指定します。                           | /path/to/resource                       |
| **クエリパラメータ**  | リソースに渡すパラメータ。`?`で始まります。                        | ?id=123&name=example                    |
| **フラグメント（アンカー）** | ページ内の特定の位置へのリンクを指定します。                      | #section1                               |



### もっと具体的にURLを説明
:::note info
下記のサイトを例に
 
https://docs.github.com/ja/get-started/writing-on-github/working-with-advanced-formatting/organizing-information-with-tables

:::


| 値                                 | 名称（カテゴリ）              | 説明                                                               |
|------------------------------------|-------------------------------|--------------------------------------------------------------------|
| https://                           | スキーム（プロトコル）        | 通信の方式。HTTPSはHTTPの暗号化バージョン（通常ポート番号443）     |
| docs.github.com                    | ホスト名（ドメイン名）        | アクセス先のサーバー。GitHubのドキュメントサービス                 |
| ja                                 | 言語パス                       | 日本語ページへのルーティング指定                                   |
| get-started                        | カテゴリディレクトリ           | 「始め方」のカテゴリに関するディレクトリ                           |
| writing-on-github                  | サブカテゴリディレクトリ       | GitHub上での書き方に関するサブカテゴリ                             |
| working-with-advanced-formatting   | 機能ディレクトリ               | 高度な書式設定に関する内容のディレクトリ                           |
| organizing-information-with-tables | ページ名（ファイル名）         | テーブルで情報を整理する方法の説明ページ                           |