今回は高度に通信する際に必要となるサーバーとクライアントについて学習していきます。
高度な通信に必要なもの

コンピュータ同士はLANケーブルなどのリンクで接続すると、データをやり取りすることができます。
しかし、これだけでは、コンピュータと繋がっているか存在を確認するなどの簡単なやり取りしかできません。
例えば、「そこにいる?」と聞いたら「いるよ」と返してくれるぐらいのやり取りです。

しかし、コンピュータ同士を伝送媒体でつないでアドレスとルールを設定していてもファイル共有など高度な通信を行うことはできません。

ブラウザで情報を取得したり、会社でファイルを共有したり、メールを送ったりする高度なことは、事前にソフトウェアをインストールしておく必要があります。
情報を要求するコンピュータをクライアントと呼び、要求に対して応答して情報を提供するコンピュータをサーバーと呼びます。
サイト閲覧のイメージ

PCのブラウザからYoutubeで動画を視聴しようとした時を考えてみましょう。
・サーバー:WEBサーバー
・クライアント ソフト:ブラウザ(Edge、Chrome、Safariなど)
サイト閲覧では、ブラウザがクライアントソフトの役目を果たします。
Youtubeのデータが入ったサーバーは要求が来ないかずっと待っています。
ブラウザではYoutubeのURLが入力されたので、Youtubeのサーバーに対してデータを要求するための情報を作成して送ります。
決められたプロトコル(ルール)に従ってクライアントが要求を送ると、決められたプロトコル(ルール)に従ってサーバーが応答を返します。
プロトコルの詳細は後ほど詳しく説明します。