📚

Webの基礎知識

に公開

はじめに

こんにちは、Juna1013です。
今回はフロントエンド学習における基礎知識として必須なWebについてまとめていきたいと思います。
主な内容は以下の通りです。

  • HTTPの概要と役割
  • HTTPリクエストの種類と役割
  • クライアントとサーバーの概要と役割
  • OSI参照モデルの概要
  • DNSの概要と仕組み

そもそもWebって何?

Web(World Wide Web)とは、インターネット上の様々な情報の閲覧を可能にするシステムです。無数のコンテンツが蜘蛛の巣のように世界中に結び付けられていることが由来です。
Webには、普段わあしたちが利用しているebサイトやGoogleなどの検索エンジン、Youtubeのような動画配信サービス、その他SNSなどが含まれます。

備考ですが、ホームページとWebページは異なるものです。
Webサイトはサイト全体を指し、ホームページはWebサイト中で最初に表示されるWebページを指します。
※WebサイトはWebページの集合で成り立っています。

HTTP

HTTP(ハイパーテキスト転送プロトコル)はWebの基盤であり、ハイパーテキストリンクを使用してWebページを読み込むために使用します。HTTPを介した一般的なデータの受け渡しでは、クライアントがサーバーにリクエストを送信し、サーバーがレスポンスメッセージを送信する。

HTTPを利用したHTTPリクエストは、Webブラウザーなどのインターネット通信プラットフォームがWebサイトの読み込みに必要な情報を要求する方法です。インターネットを介して行われる各HTTP要求には、様々なタイプの情報を伝送する一連のエンコードされたデータが伝送されます。

典型的なTTPリクエストには以下が含まれます。

  1. HTTPバージョンタイプ
  2. URL
  3. HTTPメソッド
  4. HTTPリクエストヘッダー
  5. オプションのHTTP本文

クライアントとサーバー

クライアントとは、その情報を受け取るコンピューター(またはWebブラウザ)を指します。
サーバーとは、Webページの情報を送りつけるコンピューターです。サーバーはクライアントからリクエストを受けて、初めて処理を開始して、サービスを提供します。

クライアント / サービスシステムとは、サーバーとクライアントで構成されているシステムで、以下の手順で動作します。

①クライアントがサーバーにサービスを要求
②サーバーは要求に応じた処理を実行
③サーバーは処理結果はクライアントに返す
④クライアントは書影結果を受け取る

OSI参照モデル

OSI参照モデルとは、国際標準化機構(ISO)が策定した、コンピューターネットワーク間の通信を7つ階層(レイヤー)に分離して整理した概念モデルです。異なるメーカーの機器同士が相互に通信できるように、ネットワークの機能を「どこで」「どのように」処理するのかを定めており、ネットワークの設計やトラブルシューティングを容易にするための基準となります。

  • 第7層 アプリケーション層
    • ユーザーが直接利用するアプリケーションのインターフェースを機能を提供
    • 例:HTTP, FTP, DNS, SMTP
  • 第6層 プレゼンテーション層
    • データの形式を変換(暗号化、圧縮、フォーマット変換)
    • 例:TLS, SSL, JPEG
  • 第5層 セッション層
    • 2つシステム間で通信の開始・終了・管理を行う
    • 例:NetBIOS, RPC
  • 第4層 トランスポート層
    • 信頼性のあるデータ転送(エラー制御、再送処理)
    • 例:TCP, UDP
  • 第3層 ネットワーク層
    • 宛先までの最適な経路を決定してでたを転送する
    • 例:IP, ARP, ICMP
  • 第2層 データリンク層
    • 同じネットワーク内の隣接ノード間でデータを転送する(MACアドレスよるアドレッシングなど)
    • 例:PPP, Ethernet
  • 第1層 物理層
    • 物理的な媒介を介してビット列(電気信号、光信号など)を送信する
    • 例:RS-232C, UTP, 無線

DNS

ドメインネームシステム(以下DNS)とは、ドメイン名とIPアドレスを変換するインターネット上のシステムです。IPアドレスはコンピューターの住所に相当する数値ですが、人間には覚えにくいため覚えやすいドメイン名に変換して通信を可能にします。このような変換処理は名前解決と呼ばれ、この役割を担うのがDNSサーバーです。

DNSは以下の仕組みで動作します。

  1. ドメイン名の入力:ユーザーがブラウザにドメイン名を入力
  2. DNSサーバーへの問い合わせ:デバイスがDNSサーバーに問い合わせ(このドメイン名に対応するIPアドレスは何か)を送る
  3. IPアドレスの返信:DNSサーバーはドメイン名と紐づくIPアドレスを返信
  4. Webサイトへのアクセス:デバイスは返信されたIPアドレスを使って、目的のWebサーバーに接続し、Webサイトを表示

おわりに

今回はWeb技術の基礎についてまとめました。

参考

そもそもWebとは?

https://ds-b.jp/dsmagazine/what-is-web/

HTTP

https://www.cloudflare.com/ja-jp/learning/ddos/glossary/hypertext-transfer-protocol-http/

クライアントとサーバー

https://zenn.dev/kubo_programmer/books/fa1e01071e7aaa90672d/viewer/d8dbcb018e88bb941cd5

OSI参照モデル

https://www.cloudflare.com/ja-jp/learning/ddos/glossary/open-systems-interconnection-model-osi/

DNS

https://aws.amazon.com/jp/route53/what-is-dns/

Discussion