ネットワーク屋さん,こんにちわ。
かなり理解が進んだように思いますが, ちょっと惜しい部分もあるので補足します。
ネットワーク屋さんは通信動作のエンドっていうことを考えたことありますか? つまり,一つの通信動作がどこで始まり,どこで終わるかという話です。 たとえば,下のようなネットワークでサーバからクライアントまでパケットを 運ぶ動作を考えてみましょう。
サーバ-----イーサネット-----ルータ-----イーサネット-----クライアント
まず,サーバからルータまでイーサネットでパケットを運びますよね。 このときのイーサネットの動作はルータで終わります。 だから,このイーサネットの動作はサーバとルータがエンドになります。 そして,新たにルータからクライアントまでイーサネットでパケットを運ぶ動作があり, クライアントにパケットが届きます。 ここでのエンドはルータとクライアントです。
このように,イーサネットの観点で見ると通信動作はルータの両側で別々のものになりますが, IPの観点から見ると,違った格好になります。 つまり,サーバからルータにパケットが届いたところでIPが終わるのではなく, ルータで中継した後,クライアントに届いたところで終わります。 だから,IPのエンドはサーバとクライアントになります。
TCPとHTTPSの関係もこれと似ており, TCPの方は二つの通信動作があり,そのエンドは WebサーバとProxy Proxyとクライアント になります。(このエンドがソケットというわけです。) ところがHTTPSの方は通信動作が一つで,Webサーバとクライアントがエンドになります。 HTTPSのデータはProxyに届いたところで終わりではなく, そこから中継されてクライアント(あるいはWebサーバ)に 届いたところ終わることになります。 そして,HTTPSはエンドで暗号化と復号化を行いますから, 暗号を掛け,解くのはエンドのWebサーバとクライアントになり, Proxy(SSLトンネル)は暗号化されたデータを単純に中継するだけ, というわけです。
通信を理解するときは,このエンドという考え方が重要で, これが分かると,一つ一つの技術的な要素を分解して考えられるようになります。 そして,複雑そうに見えるものでも,実は, 単純なものの組み合わせに過ぎない,ということがわかると思いますよ。
それから,
>「何が分かっていないか」がわかっていない >「何を勘違いしているか」がわかっていない
わからないときっていうのは,そういうものですから, 気にすることはありません。 わかろうという気持ち重要で,それは伝わってきてますから,大丈夫ですよ。
More information about text formats
通信動作のエンドを考えてみましょう
ネットワーク屋さん,こんにちわ。
かなり理解が進んだように思いますが,
ちょっと惜しい部分もあるので補足します。
ネットワーク屋さんは通信動作のエンドっていうことを考えたことありますか?
つまり,一つの通信動作がどこで始まり,どこで終わるかという話です。
たとえば,下のようなネットワークでサーバからクライアントまでパケットを
運ぶ動作を考えてみましょう。
サーバ-----イーサネット-----ルータ-----イーサネット-----クライアント
まず,サーバからルータまでイーサネットでパケットを運びますよね。
このときのイーサネットの動作はルータで終わります。
だから,このイーサネットの動作はサーバとルータがエンドになります。
そして,新たにルータからクライアントまでイーサネットでパケットを運ぶ動作があり,
クライアントにパケットが届きます。
ここでのエンドはルータとクライアントです。
このように,イーサネットの観点で見ると通信動作はルータの両側で別々のものになりますが,
IPの観点から見ると,違った格好になります。
つまり,サーバからルータにパケットが届いたところでIPが終わるのではなく,
ルータで中継した後,クライアントに届いたところで終わります。
だから,IPのエンドはサーバとクライアントになります。
TCPとHTTPSの関係もこれと似ており,
TCPの方は二つの通信動作があり,そのエンドは
WebサーバとProxy
Proxyとクライアント
になります。(このエンドがソケットというわけです。)
ところがHTTPSの方は通信動作が一つで,Webサーバとクライアントがエンドになります。
HTTPSのデータはProxyに届いたところで終わりではなく,
そこから中継されてクライアント(あるいはWebサーバ)に
届いたところ終わることになります。
そして,HTTPSはエンドで暗号化と復号化を行いますから,
暗号を掛け,解くのはエンドのWebサーバとクライアントになり,
Proxy(SSLトンネル)は暗号化されたデータを単純に中継するだけ,
というわけです。
通信を理解するときは,このエンドという考え方が重要で,
これが分かると,一つ一つの技術的な要素を分解して考えられるようになります。
そして,複雑そうに見えるものでも,実は,
単純なものの組み合わせに過ぎない,ということがわかると思いますよ。
それから,
>「何が分かっていないか」がわかっていない
>「何を勘違いしているか」がわかっていない
わからないときっていうのは,そういうものですから,
気にすることはありません。
わかろうという気持ち重要で,それは伝わってきてますから,大丈夫ですよ。