情報処理技術者試験のネットワークスペシャリストという超難しい国家資格がありますが、その試験の中で基礎の基礎としてOSI参照モデルという考え方が必要となります。
OSI参照モデルは、ネットワークをつなげるためひとつの規格ですが、7つに別れていますが、ネットワークスペシャリストに出てくるのはそのうちのレイヤー2とレイヤー3が八割がたって感じで、後のレイヤーがその他の2割程度という感じでしょう。
とはいえ、各レイヤーがどんなことをしているのかは知っておかないと、頭の中が混乱して、よくわからなくなるので、最初に整理しておきましょう。
OSI参照モデルをわかりやすく解説
レイヤー1 物理層
物理層はその名のとおり、物理的な世界です。ケーブルとか電気信号とかの規格の話です。
伝送媒体としてツイストペアケーブルや光ファイバーケーブルの規格や種類を覚えましょう。
レイヤー2 データリンク層
データリンク層は近くのPCなどにつながるお話です。
基本的にはMACアドレスで認識する世界の話です。
ここではスイッチングハブ、L2スイッチ、イーサネット、無線LANなどがテーマになります。
ここのボリュームは結構でかいです。
レイヤー3 ネットワーク層
ネットワーク層は、経路制御の話になります。
隣のルーターに渡す話。どのルーターに渡すべきかなどの話になります。
基本的にはIPアドレスが中心の話です。
IPアドレス、ルーター、L3スイッチの話が中心で、ルーティングの知識が必要になります。
後は冗長構成の話も良く出てくるので、VPPR、負荷分散の知識が必要です。
ちなみにネットワーク層は、信頼性の無い通信を提供するイメージです。
必ずパケットが届くかどうかは保障していない世界です。
レイヤー4 トランスポート層
トランスポート層は、パケットをちゃんと届ける、信頼性のある通信を実現するためのTCPが中心の世界です。
TCPが送ったパケットがすべて相手に届く、エラーなく届く、送った順序どおりに届くということを保障してくれます。
一部UDPというものが、信頼性の無い通信をしますが、基本的にはTCPで信頼性のある通信がメインです。
そのためにポート番号というものを使います。
コネクション型がTCP(信頼性あり)
コネクションレス型がUDP(信頼性なし)
と覚えておきましょう。
レイヤー5から7 セッション層、プレゼンテーション層、アプリケーション層
セッション層以降はアプリケーション層としてごちゃ混ぜで考えてしまってよいでしょう。
試験でも、ここを明確にしたような問題はほぼ出ません。
まとめ
簡単ですが、以上がネットワークの全体となります。
特にレイヤー2とレイヤー3の知識が中心で、レイヤー4もある程度含みます。
その他のレイヤーの話はほぼ出ません。MACアドレス、IPアドレス、TCPの世界を完全に理解することが重要です。
レイヤー2の世界はどのアドレスで通信しているかなどが簡単にわかるようになるレベルになるのが、この試験のスタートラインです。MACアドレスとIPアドレスの使い方の違いが良くわからないようでは100%受かりません。
そういったことを理解したうえで、ルーティングや冗長構成などの問題に立ち向かうことになります。
■非公開コース「C#14新機能」プレゼント:
非公開コース「C#14新機能」(80分)をご覧になりたい方は
こちらからURLとパスワードを発行していますので、ご覧になってみてください。
非公開コース「C#14新機能」を観る
参考にした書籍
実戦で役立つ C#プログラミングのイディオム/定石&パターン
プログラミングC# 第8版
オブジェクト指向
・アジャイルソフトウェア開発の奥義 第2版 オブジェクト指向開発の神髄と匠の技
すばらしい本です。オブジェクト指向が詰まっています。
・オブジェクト脳のつくり方―Java・UML・EJBをマスターするための究極の基礎講座
サンプルコードはjavaですが,最初にオブジェクト指向に目覚めるのに最適な本です。
・Head Firstオブジェクト指向分析設計 ―頭とからだで覚えるオブジェクト指向の基本
マンガみたいな感じで読めて,オブジェクト指向について学べます。
・Clean Code アジャイルソフトウェア達人の技
・Clean Architecture 達人に学ぶソフトウェアの構造と設計
・Adaptive Code ~ C#実践開発手法
・.NETのエンタープライズアプリケーションアーキテクチャ
・実装パターン
廃盤のため異常に高くなりすぎなので,様子を見た方がいい気がします。一万円のボリュームがあるかどうかは微妙です。
・オブジェクト指向でなぜつくるのか
・レガシーコード改善ガイド
・リファクタリング 既存のコードを安全に改善する
デザインパターン
・オブジェクト指向における再利用のためのデザインパターン
・オブジェクト指向のこころ
・Head Firstデザインパターン ―頭とからだで覚えるデザインパターンの基本
ドメイン駆動開発
・エリック・エヴァンスのドメイン駆動設計
・実践ドメイン駆動設計
・ドメイン駆動
・現場で役立つシステム設計の原則
・エンタープライズアプリケーションアーキテクチャパターン