ネットワークアーキテクチャ

### プロトコル⇒通信を行うために必要なルール
ノード上のソフトウェア同士が通信を行うためには、
「通信の開始から終了までどのような順序で通信するのか」
「どのようなデータ形式で通信を行うのか」
「受け取ったデータにエラーがあるかどう判断するか」
などのルールが必要。（通信プロトコル）
#### 通信機能を階層化したネットワークアーキテクチャ
データ通信を行うためには、
「伝送媒体を介してデータを伝送する機能」
「データを送信相手まで届ける機能」
「データに欠落や破損といったエラーがあるかどうかを判断する機能」
「データの表現を変換する機能」
　などの機能が必要。で、通信に必要とする機能を階層化すれば、各層で決められた機能を決められたルールで行うだけでよいので、一つ一つの層の機能やルール（プロトコル）が単純化でき、変更も容易に行える。
　
#### ISOによって標準化されたOSI基本参照モデル
アプリケーション層（第7層）（应用层）　送信ソフトウェア（ファイル転送、電子メールなど）を実行するために必要となる通信機能を提供する。
プレゼンテーション層（第6層）（表示层）データの表現形式を規定し、送信ソフトウェア固有の表現形式を共通の表現形式に変換する機能を提供する。
セッション層（第5層）（会话层）通信ソフトウェア間における会話の制御や管理を行い、正しい順序でのデータ送信と効率のよいデータ通信を実現する。例えば、大量のデータを送信する時には幾つかの同期点を設け、何らかの理由でデータが正しく送信出来なかった場合は、直前の同期点から送り直す同期点制御を行う。
トランスポート層（第4層）（传输层）データの到達確認、誤り検出や誤り回復、再送要求など行うことで、上位のセッション層に高品質なデータを提供する（信頼性の高いデータ伝送を実現）。
ネットワーク層（第3層）（网络层）
通信を行うノード（エンドシステムという）に相手ノードの物理的な位置などを意識させないデータ伝送を実現する。具体的には、データに付加される宛て先アドレスを元に、どの通信経路に送信すればいいのか最適な経路を選択したり（ルーティング）、データの中継を行ったりと、ノード間のデータ伝送を実現する。
データリンク層（第2層）（链路层）
直接接続された隣接ノード間において、データを誤りなく伝送する機能。HDLC（High-Level data Link Control:ハイレベルデータリンク制御）
物理層（第1層）（物理层）
伝送媒体を介してデータの送受信を行う。また、そのためにデータを電気的な信号に変換したり、電気的な信号をデータに変換したリする。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3293109/79cbc7af-e2db-39f1-d394-67164fff64b5.png)
物理层（Physical Layer）： 这是网络的最底层，负责在物理媒介上传输比特流。它定义了电压、电流、频率等物理特性，以及如何在物理传输媒介上编码和解码数据。

数据链路层（Data Link Layer）： 数据链路层负责在直接相连的节点之间传输数据帧。它处理物理层的错误检测和纠正，以及帧的同步和流量控制。

网络层（Network Layer）： 网络层处理路由和分组交换，以便在不同的网络中传输数据。它负责寻找最佳路径，将数据分组（包）从源传输到目的地。

传输层（Transport Layer）： 传输层为应用程序提供端到端的通信，并管理数据的分割、重组、流量控制和错误恢复。它可以提供可靠的面向连接传输（如TCP）或不可靠的无连接传输（如UDP）。

会话层（Session Layer）： 会话层负责管理和控制在通信系统中的会话或对话。它包括会话的建立、同步、对话控制以及数据的分段和重组。

表示层（Presentation Layer）： 表示层处理数据的表示、编码和加密，以确保在不同系统之间的数据交换和通信。它负责数据格式的转换，使得不同系统能够理解和处理数据。

应用层（Application Layer）： 应用层是最顶层的层次，它为用户提供网络服务和应用程序。各种应用，如电子邮件、文件传输、远程登录等，都在应用层进行操作。

特に第二層～第四層が重要。
トランスポート層⇒ネットワーク層⇒データリンク層
トランスポート層⇒通信ソフトウェア間の信頼性の高いデータ伝送を実現（データの信頼性を保つ）
ネットワーク層⇒エンドシステム間のデータ伝送を実現する（END　TO　END、経路選択、ルーティング）
データリンク層⇒隣接ノード間で誤りのないデータ伝送を実現する


業界標準　TCP/IP
国際標準はOSI基本参照モデルですが、LANやインターネットにおける事実上の業界標準はTCP/IP。
TCP/IPは、アプリケーション層、トランスポート層、インターネット層、ネットワークインタフェース層の四つの層から構成されている。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3293109/de4d7a4f-9b5d-0502-f0f4-a0fb62d2c797.png)
TCPはトランスポート層（第４層）の機能を実現するプロトコルであり、IPはネットワーク層（第3層）の機能を実現するしているプロトコルである。
#### アプリケーション層における主なプロトコル
DHCP　クライアントからの要求で、IPアドレスを動的に付与するプロトコル。
FTP　File Transfer Protocol。ファイル転送に利用されるプロトコル。
HTTP　HyperText　Transfer　Protocol（ハイパーテキスト転送プロトコル）。WebサーバとWebブラウザ間で、HTMLなどのファイルの送受信に利用されるプロトコル。
LDAP 种用于访问和管理分布式目录信息的开放协议。它通常用于在网络中访问和维护目录服务，如用户信息、组织结构、网络资源等。
NTP network　Time　Protocol。ネットワークに接続される複数のノードにおいて、ノードがもつ時刻の同期を図るためのプロトコル
POP3　Post　office　Protocol3。メールサーバから電子メールを取り出すときに使う。
IMAP4　internet Message Access Protocol 4 メールサーバから電子メールを取り出すときに使い、選択したメールだけを利用者端末へ転送する機能、サーバ上のメールを検索機能、メールのヘッダーだけを取り出す機能をもつ。
SMTP　Simple　Mail　Transfer　Protocol。利用者からメールを送信する時や、メールサーバ間でメールを転送するときに利用される。
SNMP　Simple　network　Management　Protocol　
構成機器や障害時の情報収集を行うために使用されるネットワーク管理プロトコル。
TELNET　遠隔操作のプロトコル。
SSH　Secure　SHELL。暗号化や認証の遠隔操作するためのプロトコル。

練習
OSI基本参照モデルの第二層に位置し、隣接ノード間におけるデータ伝送を実現する層はデータリンク層である。
OSI基本参照モデルの第３層に位置し、エンドシステム間のデータ伝送実現するために、ルーティングや中継などを行うのはネットワーク層。
TCPはOSI基本参照モデルのトランスポート層の機能を実現するプロトコルで、IPはネットワーク層の機能を実現しているプロトコル。