ネットワークの方式
LAN(Local Area Network)
狭い範囲(オフィスなど)のネットワーク
→ 有線LAN・無線LANで区別
有線LAN
有線でコンピュータ同士を接続
→ (OSI基本参照モデル) 物理層・データリンク層に属する
メジャーな有線LAN:イーサネット(Ethernet)→ IEEE802.3 で規格化
→ イーサネットのアクセス制御方式:CSMA/CD(Carrier Sense Collision Detection)
* ネットワークの通信:データが衝突(コリジョン)
→ 時間をおいて再送信する(接続する端末 増 → 通信速度 遅)
無線LAN
有線 ❌、電波で通信をするLAN → 802.11 で規格化
→ 電波が届く範囲にコンピュータ配置できる
→ 盗聴・情報漏洩の危険性(セキュリティ対策)
-
Wi-Fi: 無線LAN装置間:相互接続性が保証されるブランド
→Wi-Fiダイレクト: 2台の端末同士を接続させるモード - ESSID: 無線ネットワークを識別する文字列
* CSMA/CA(Collision Avoidance): 無線LANで使う、アクセス制御方式 → 衝突回避
WAN(Wide Area Network)
遠く離れたLAN同士を接続するネットワーク
* VPN: 公衆回線を専用線のように使う、仮想ネットワーク
→ セキュリティの確保
モバイル通信サービス
通信事業者の電波 → スマートフォンでインターネットに接続するサービス
→ SIMカード:端末に入れて通信できるようになる
→ 通信速度: 3G → LTE(4G) → 5G
→ テザリング: スマホをアクセスポイントにして、PCなどからインターネットを使う機能
- MVNO(Mobile Virtual Network Operater): 通信事業者の通信網を借りて、自社ブランドで通信サービスを提供する
- キャリアアグリゲーション : 複数の周波数帯を束ねる → 無線通信の高速化・安定化を図る
- 5G : 第5世代通信システム:「超高速」「超低遅延」「多数同時接続」
- IoTネットワーク : LPWA(Low Power Wide Area):低速・広範囲をカバーできるネットワーク
-
輻輳(ふくそう):通信急増 → つながりにくくなる現象
通信プロトコル
【手紙】
・約束事: 切手を貼る / 宛名を書く / ポストに入れる
・その後の流れ(階層): 回収係 → 仕分け係 → 配送係
→ ネットワークにも「約束事」「階層」ある
プロトコル : コンピュータ同時がやり取りするための約束事
→ 世界共通のルールに従わないと、ネットワークで通信できない!!
→ 約束事を7階層に分けた
OSI基本参照モデル(アプセトネデブ)
第1層〜第7層まで組み合わせる → コンピュータ同士がコミュニケーションできる
階層 | 名称 | 内容 |
---|---|---|
第7層 | アプリケーション層 | どんなサービスを提供するか |
第6層 | プレゼンテーション層 | どんなデータ形式にするか |
第5層 | セッション層 | 通信の開始から終了までどう管理するか |
第4層 | トランスポート層 | 通信の信頼性を確保するためのルール |
第3層 | ネットワーク層 | 異なるネットワーク同士で通信するためのルール |
第2層 | データリンク層 | 同じネットワーク内で通信するためのルール(社内/家庭内) |
第1層 | 物理層 | 物理的にどうつなぐか(0,1 -> 電気信号に変換するルール/ ケーブルの形状に関するルール) |
TCP/IP
デファクトスタンダード(事実上の標準)になっているプロトコル
→ OSIの各層と対応
アプリケーション層のプロトコル
プロトコル | 説明 |
---|---|
HTTP(Hypertext Transfer Protocol) | HTMLコンテンツのやりとり |
FTP(File Transfer Protocol) | ファイル転送 |
TELNET | 遠隔地コンピュータにリモートログインして操作 |
SNMP(Simple Network Management Protocol) | ネットワーク上の構成機器、障害時の情報収集 |
NTP(Network Time Protocol) | 複数コンピュータの時刻を同期 |
SMTP(Simple Mail Transfer Protocol) | メールの送信 |
POP3(Post Office Protocol Version3) | メールサーバー上のメールボックス←メール受信 |
IMAP4(Internet Message Access Protocol Version4) | メールサーバー上のメールボックス←必要なものだけ受信 |
* SMTP ↔︎ POP
SMTP : 葉書を最寄りのポストに投函 → 相手の郵便ポストへ配送
POP3 : 相手が郵便ポストから葉書を取り出す
トランスポート層のプロトコル
通信の信頼性を確保する方法
→ パケット(通信データを細かくしたもの)をどう運ぶのか
プロトコル | 説明 | 重視 | 利用先 |
---|---|---|---|
TCP | 通信相手と接続できたか確認 → パケット送信 | 信頼性 | HTTP,FTP,TELNET,SMTP,POP3 |
UDP | 通信相手と接続確認せず、パケット送信 | リアルタイム性 | DNS,DHCP,NTP |
インターネット層のプロトコル
ネットワーク同士でどう通信するかのルール
→ 複数のネットワークをつないで、その上をパケットが流れる仕組み
プロトコル | 説明 |
---|---|
IP(Internet Protocol) | IPアドレス→複数ネットワーク→パケットを相手に届ける |
ICMP(Internet Control Message Protocol) | 相手との通信状況:メッセージで返す |
ARP(Adress Resolution Protocol) | IPアドレス → MACアドレス取得 |
※ RARP(Reverse ARP):MACアドレス → IPアドレス 取得
※ ノード
・ネットワーク分野:ネットワークに接続する機器、ネットワークとネットワークを接続する機器
・TCP/IPネットワーク:IPアドレスをもつ装置
ネットワークインタフェース層のプロトコル
プロトコル | 説明 |
---|---|
PPP(Point-to-Point Protocol) | 2地点間を接続して通信 |
PPPoE(PPP over Ethernet) | LAN(Ethernet)上でPPPをする |
ネットワーク接続機器
パケット
TCP/IPプロトコルを使うネットワーク → 通信データをパケットに分けて通信
* ネットワーク上に流れるデータ全て:パケット(広義の意味)
データ伝送単位
OSI基本参照モデル = 階層ごとに「データ」の呼び方が違う
- トランスポート層:セグメント
- ネットワーク層:パケット
- データリンク層:フレーム
* 送信時:データが下位層へ行く → ヘッダ情報追加
* 受信時:データが上位層へいく → ヘッダ情報削除
* 各ヘッダ:相手にデータを届けるため、情報を追加
ヘッダ名 | 追加情報 |
---|---|
TCPヘッダ | 送信元・宛先:ポート番号 |
IPヘッダ | 送信元・宛先:IPアドレス |
MACヘッダ | 送信元・宛先:MACアドレス |
ネットワーク接続機器(ゲルブリ)
「LAN内」・「LAN同士」・「WANとLAN」接続 する時に使う 装置
リピータ
OSI基本参照モデル(物理層)で中継
【端末間】
ブリッジ
OSI基本参照モデル(データリンク層)で中継
【同一 LAN内】
→ フレームの宛先MACアドレス(MACヘッダ)解析 → 適切な場所に中継
* MACアドレス:NICに割り振られた世界で一意の物理アドレス
* NIC(Network Interface Card):コンピュータをネットワークに接続するためのカード
→ 役割:データを電気信号に変換 → ケーブルに流す、受け取る
→ イーサネット:MACアドレス → 機器を識別
スイッチングハブ
バフよりも賢い。CPU/メモリが入ったコンピュータ
※ PC「A」= PC「C」にデータを送りたいが、「スイッチングハブ」=どのノードがPC「C」か分からない
- 全員に同データを送る = ブロードキャスト(たまに)
- スイッチングハブに「ポート・MACアドレス」登録される
- 登録されたら、ブロードキャストすることはない。
※ L2スイッチ:スイッチングハブ機能 + VLAN(Virtual LAN)機能 のハブ
ルータ
OSI基本参照モデル(ネットワーク層)で中継
【異なるLAN同士】 【LAN ↔︎ WAN】
→ パケットの宛先IPアドレスを解析 → 最適な経路へパケット転送(ルーティング)
* ブリッジ:MACアドレスが確認できる範囲でのみ有効
→ ネットワーク宛のパケットを中継できない
* L3スイッチ:ルーターと同じ機能を持つ
ゲートウェイ
OSI基本参照モデル(トランスポート層以上)で中継
→ LAN同士でプロトコル変換をする
例) 携帯電話の電子メール ⇆ 【 ゲートウェイ 】 ⇆ インターネットの電子メール
→ ゲートウェイがプロトコル変換して、やりとりが可能になる
* デフォルトゲートウェイ:異なるネットワークを接続する出入り口になる装置
→ 例) 社内LAN → インターネット:接続する装置
IPアドレス
TCP/IPネットワーク上のコンピュータを識別する番号
→ コンピュータの住所
→ 2進数32ビットで表現
ドメイン名
人間がもっとわかりやすいように、IPアドレスを文字列に置き換える
例) 192.218.88.180 = 「独立行政法人 情報処理推進機構」のIPアドレス
→ ドメイン名:「www.ipa.go.jp」
(ドメイン名の構成)
(ドメイン名の狭義・広義の意味)
* 狭義の意味
・ドメイン名: ネットワークを識別する文字列
・ホスト名: コンピュータを識別する文字列
→ 「ホスト名」+「ドメイン名」= FQDN(Fully Qualified Domain Name / 完全修飾ドメイン名)と言う
* 広義の意味
・ドメイン名・ホスト名 =FQDNとして使う
DNS(Domain Name System)
ドメイン名 ↔︎ IPアドレス =リンクするシステム
→ 担当者:DNSサーバー
* 名前解決 : ドメイン名 → IPアドレス取得 / IPアドレス名 → ドメイン名取得
グローバルIPアドレス / プライベートIPアドレス
IPアドレス:2種類
グローバルIPアドレス
インターネットで使うIPアドレス → 世界で一意
プライベートIPアドレス
LAN内で使えるIPアドレス → LAN内で一意
DHCP
自動的にIPアドレスを割り当てるプロトコル
→ 担当者:DHCPサーバー
ポート番号
TCP/IP基盤のネットワークではサービスが多数利用できる
→ サービスを支える:TCP/IPの上位層(セッション層以上)で規定されたプロトコルたち
→ どんなプロトコルがどんなサービスを提供しているのか
ポート番号: IPアドレスのみ→コンピュータ識別可能↔︎コンピュータ内のどのサービス宛てか不明
→ サービス(アプリケーション)を識別する番号(0〜65,535)
(イメージ図)
* ウェルノウンポート: 主なプロトコルには、あらかじめポート番号が予約されてる(0~,1023)
* ポート番号のイメージ(葉書)
住所 → 相手の家特定(IPアドレス)
宛名 → 家族の誰か特定(ポート番号)
プロトコル | ポート番号 |
---|---|
FTP転送 | 20 |
FTP制御 | 21 |
HTTP | 80 |
SMTP | 25 |
POP3 | 110 |
DNS | 53 |
NAT/NAPT
アドレス変換技術 → ルーターの機能
NAT(Network Adress Translation)
一つのグローバルIPアドレスと一つのプライベートIPアドレスを相互に変換
NAPT(Network Adress Port Translation) = IPマスカレード
一つのグローバルIPアドレスと複数のプライベートIPアドレスを相互に変換
IPアドレスのクラス
IPアドレス = 「ネットワーク部」 + 「ホスト部」
* 32ビットのIPアドレス → ネットワーク部・ホスト部で何ビットずつの構成にするかでクラス分け
クラス | ネットワーク部 | ホスト部 | 接続可能なホスト台数 | 規模 |
---|---|---|---|---|
A | 8ビット | 24ビット | 2²⁴ー2 = 16,777,214台 | 大規模 |
B | 16ビット | 16ビット | 2¹⁶ー2 = 65,534台 | 中規模 |
C | 24ビット | 8ビット | 2⁸ー2 = 254台 | 小規模 |
* ホスト台数「−2」
→ すでに予約されたアドレスのため利用できない
→ ホスト部 「全て0」 = ホストが属するネットワークアドレス
→ ホスト部「全て1」 = ブロードキャストアドレス
* ネットワーク部の表し方
192. 168. 0. 0 /23
→ /23 = 上位23ビットがネットワーク部
→ 下位9ビットがホスト部
ブロードキャスト
同じネットワーク内全てのホストに対して、一斉にデータを送信すること
サブネッティング
ホスト部を分割 → 複数の小さいネットワーク(サブネット)を作ること
サブネットマスク
IPアドレスを「ネットワーク部」「ホスト部」に分けるためのビット列
→ サブネッティングするためには、柔軟に設定できる必要あり
→ ネットワーク部:1/ホスト部:0 で設定
例) IPアドレス「192.168.1.19」、サブネットマスク「255.255.255.240」
IPアドレス 192 = 110... → クラスC
クラスC = ネットワーク部24ビット、ホスト部8ビット → サブネットマスク「255.255.255.0」のはず
10進数 | 2進数 | |
---|---|---|
サブネットマスク | 255.255.255.0 | 11111111|11111111|11111111|00000000 |
255.255.255.240 | 11111111|11111111|11111111|11110000 |
- ホスト部から4ビット間借り
- サブネット部:4ビット / ホスト部:4ビット
- サブネット部:2⁴=16サブネット / ホスト部=2⁴ー2=14台
→ 一つのネットワーク=16サブネット、各サブネット=14台 管理できる!
ネットワークアドレス(サブネットワークアドレス)の求め方(AND演算)
ホストのIPアドレス AND サブネットマスク
10進数 | 2進数 | |
---|---|---|
IPアドレス | 192.168.1.19 | 11000000|10101000|00000001|00010011 |
サブネットマスク | 255.255.255.240 | 11111111|11111111|11111111|11110000 |
AND演算 | ||
ネットワークアドレス | 192.168.1.16 | 11000000|10101000|00000001|00010000 |
CIDR(Classless Inter-Domain Routing)
クラス(A/B/C)を取り払う
→ 1ビット単位でネットワーク部・ホスト部を設定
IPv6
今:IPv4(32ビット) → 新規で割り当てられるIPアドレスがない
将来:IPv6(128ビット)
→ IPv4とIPv6の通信=IPv4パケットの中にIPv6アドレスを入れ込む(トンネリング)
IPsec
TCP/IPネットワークで暗号通信をするためのプロトコル
→ ネットワーク層で動作
→ IPパケットを暗号化
→ IPv6=標準で組み込まれてる
ネットワーク管理
SDN(Software Defined Networking):ソフトウェアでネットワーク機器を制御。設定を動的に変更する技術
→ OpenFlow :①ネットワーク機器内「経路制御機能」「データ転送機能」を論理的に分離
:②ソフトウェア(コントローラー)で「データ転送機能」を制御するアーキテクチャ
インターネットの応用
URL
Web上で取得したいWebページの情報元を示す
例) 情報処理技術者試験の過去問サイト
https://www.jitec.ipa.go.jp/1_04hanni_sukiru/_index_mondai.html
プロトコル : https://
ホスト名 : www
ドメイン名 : jitec.ipa.go.jp
パス名 : /1_04hanni_sukiru/
ファイル名 : _index_mondai.html
CGI
- (Webブラウザ)要求
- (Webサーバー)外部プログラムの呼び出し
- (Webブラウザ)結果をHTTPを介してWebブラウザに返す
* Webページを動的に表示させたい場合に使う
MIME
電子メールの機能を拡張したもの(音声・画像も送信できちゃう)
S/MIME:MIME + 暗号化
メールヘッダ
SMTPで送信 → メール +αの情報(メールヘッダ)
(情報の種類)
メールヘッダ | 内容 |
---|---|
From | メールの送信者 |
To | メールの送信先 |
Cc | 一つのメール→複数に送る:宛先 |
Bcc | 一つのメール→複数に送る:宛先(ここの部分=受信者に送信✖️) |
Return-Path | メールサーバーが付加するメール送信者 |
X-Mailer | メール作成時、使ったソフト |
Receiver | メールがたどった経路のサーバー |
* SMTP-AUTH : メール送信者を送信サーバーが認証する
回線の計算
通信速度の単位: bps(bit per second):1秒ごとに送られるビット数