自分用のメモです。
■HTTP(GET・POST)について
・GETメソッドとは、サーバにあるリソースを取りに行くメソッド
リソースとはhtml/img/jsなどを指す。
・POSTメソッドとは、何かを作ったり追加したりするメソッド
英語で言うとmake,add,sendが近い感覚。
・HTTPとはプロトコル(通信のルール)の一種。
プロトコルは説明書のイメージ
■リクエストメッセージ
・プロトコル・ホスト名・ポート番号がセットで書かれたものをoriginと表現する
originという概念は今後の学習で大切
例:http://yahoo.co.jp:7676
same origin policy
・ブラウザとはWebページを見るために使うアプリケーション
・Refererとはひとつ前にいたページ
■レスポンスメッセージ
・レスポンスステータスコードとは「404 not found」など
・Content-typeとは送られてきたファイルの形式
■GETメソッド・POSTメソッドのまとめ
・GETメソッドはサーバからさまざまなリソースを取ってくるメソッド
・POSTメソッドはサーバへ情報を追加するメソッド
・他にもメソッドにはPUT、DELETEなども存在する
■CPUとは
・パソコンの三大原則
①メモリ:机の広さ
②CPU:頭の良さ
③ストレージ:引き出しの多さ
・CPUは小さければ小さいほどいい。大きいと不良品の部分が増えてしまう。
→CPUの中身にはトランジスタと呼ばれるパーツが入っている
トランジスタ一個一個は非常に小さいから、不良品が生じやすい
CPUにたくさんのトランジスタがあればあるほど、不良品が生じる確率が上がってしまう
・バブルソートとは隣同士の値を比較して並び替えるアルゴリズム
・アルゴリズムとは計算の手順
合計する、平均値を算出するなどは全てアルゴリズム
バブルソートは数字を並び替えるアルゴリズム
■OSI参照モデル
・ネットワークの世界を7つの階層に分解したのがOSI参照モデル
・物理層はUSBの挿入口、コンセントなど
・インターフェースとは「境界面・接触点」の意味
物理層は機器のインターフェース
・データリンク層はMACアドレス同士の通信を規定する
MACアドレスとは「機器に割り当てられた住所」のイメージ
機器のNIC(Network Interface Card)に割り当てられている
・NICとはLANケーブルが挿さる部分
MACアドレス同士を通信するためにはケーブルで機器を繋ぐ必要がある
データリンク層は隣接したコンピュータをあたかも専用の電線で接続されているかのように見せかける技術
・ネットワーク層はIPアドレス同士の通信を規定する
■パケットとは
・フレームとパケットの違い
・フレームはデータリンク層の話。パケットはネットワーク層の話
・ひとつのパケットをさらに囲うのがフレーム
■ポート番号
・ポート番号とはTCP/IP通信においてコンピュータが通信に使用するプログラムを識別するための番号
相手のサーバのどのプログラムに対して通信を送るかを特定する
・IPアドレスにより送り先を「ある程度」は特定可能。でもどのプログラムに届けるかはIPアドレスだけでは決定できない
例:IPアドレスによりマンションまでは特定可能、でも何号室かまではIPアドレスだけではわからない
・http:サーバの80番ポートに届く
・https:サーバの443番ポートに届く
・ssh:サーバの22番ポートに届く
例:「https://〇〇.org:80/」と本来ならばポート番号が80と指定されているけど通常は省略
・どのプログラムか特定できないと通信できない、だからポート番号が必要
・もしポート番号が存在しなかった場合、、、
クライアント:Google検索をしたい
サーバ:メールサーバ、ウェブサーバの2つの役割を果たしている
→どちらのプログラムに通信を送ればいいかわからない
・ポート番号の種類
0〜1023(Well known):IANAで管理している有名なサーバのポート番号
1024〜49151(Registered):IANAに登録されたサーバのポート番号
・常に動いているプログラムを「常駐プログラム」という。「daemon」と表現。
■ここまでの整理
・MACアドレス
・OSI参照モデルの第2層
・IPアドレス
・OSI参照モデル第3層
・相手の住所
・ポート番号
・IPアドレス
・OSI参照モデルの第3層の話
・コンピュータの中で動いているプログラムの番号
■NAT/NAPTとは?
・NATとはNetwork Address Translationの略
・NAPTとはNetwork Address Port Translationの略
・グローバルIPアドレスはインターネットに接続できるアドレス
・プライベートIPアドレスはインターネットに接続できないアドレス
・グローバルIPアドレスとプライベートIPアドレスを紐づけて変換するのがNAT
・私たちが普段使っているPCはプライベートIPアドレスしか持っていない
NATを使ってグローバルIPアドレスに変換することでインターネットと接続している
・NAPTはポート番号を利用することで1つのグローバルIPアドレスと複数のプライベートIPアドレスを紐づけられる