
외워서 끝내는 네트워크 핵심이론 - 기초
널널한 개발자
TCP/IP에서 HTTP까지! 네트워크에 대한 기본 이론이 부족한 분들이 '외워서'라도 전공 이론을 이해하고자 희망하는 분들을 위해 준비한 강의입니다. 할 수 있습니다!
입문
네트워크, 프로토콜
このレッスンでは、アプリケーションレベルのプロトコル設計技術とIOCPベースの高性能サーバー開発方法を学ぶことができます。
WindowsベースのTCPソケットプログラミング技術
マルチスレッドサーバー作成技術
IOCPベースの高性能サーバー作成技術
アプリケーションレベルのプロトコル設計手法
レベルの高いプログラマーに飛躍したいですか?
Windowsソケットプログラミングに挑戦!
Windows環境でTCP / IPソケットプログラムを開発する方法を学びます。最初のソケットを扱う入門理論をはじめ、IOCP (I/O Completion Port)を扱う方法やアプリケーションレベルのプロトコル設計手法まで取り上げます。
C / C ++シリーズの開発者が知っておくべき知識として、高性能サーバーは欠けていないトピックです。そしてその終わりには常にIOCPがあります。実際、IOCPは難しいトピックではありません!オペレーティングシステムのある程度の理解(特に仮想メモリ)があり、スレッドを扱うことを知っている人なら誰でも学ぶことができます。言い換えれば、基礎理論の理解がしっかりしていれば簡単に理解できます。
そしてソケットプログラミングを扱うほとんどの書籍やレッスンはチャットサービスをカバーしています。その過程でいくつかの誤った概念が生まれます。残念ながら、その問題はソケットを理解するのを妨げる要素として機能するだけでなく、プロトコル設計を正しくすることができない原因にもなります。
1️⃣ TCPソケットプログラミング基礎理論
2️⃣アプリケーションプロトコル設計技術
3️⃣障害状況を考慮したサーバー開発方法
4️⃣ IOCPベースのサーバー開発方法
このレッスンでは、これらの問題を解決するためにソケットプログラミングの入門段階で遭遇する可能性がある問題を含む、正しい解決策と学習の方向性を提示します。何よりWiresharkを利用してパケットを直接確認し、自分が知っている各種理論とコードレベルの状況を連携して理解できます。さらに、障害問題に対応できる方法まで学習することで、高性能サーバーを開発できる基盤を確保することができます。
高性能が要求されるサーバーを開発しなければならないC/C++系開発者のための講義です!
Case 1ソケットプログラミングをしたいのですが、OSI 7 Layerから詰まっています。
ソケットプログラミングを勉強する前に、必ずしもOSI 7レイヤーを勉強する必要はありません。もちろん、知っていれば役に立つのが事実ですが、必須というのは難しいです。ただし、TCPプロトコルについて一度でも勉強をした後に始めることをお勧めします。
Case 2ソケットプログラミングを学びたいのですが、難しいです。システムプログラミングをする必要がありますか?
システムプログラミングを既に知っている人なら、TCPの勉強だけが一生懸命働くことで、ソケットプログラミングを簡単に終わらせることができます。それだけシステムプログラミングの理解は重要です。しかし、複雑なものすべてを知る必要はなく、マルチスレッドと同期方法だけを知っていても、学習に問題はありません。
Case 3 IOCPサーバーが高性能であることはわかりますが、勉強するのは難しいです。
多くの人がIOCPが難しいと思います。これは、内部フローが目に見えず、非同期ファイル入出力技術の間にCallback構造を使用する方法について経験が不足しているためです。ソケットの本質がファイルであるだけに、非同期入出力技術をきちんと学べば、簡単にIOCPも理解できます。本講義では、そのような問題に対応できるようにカリキュラムを構成しました。
Case 4 Client / Server構造を使用していますが、適用されたプロトコルが適切かどうか、このようにコードを書くのが正しいかどうかわかりません。
プロトコル設計という言葉から、多くの方がジレを怖がっています。しかし、知っていれば星ではないという考えをするようになります。特にソング/受信構造をコードレベルで経験してみるとさらにそうです。
Case 5ゲームサーバー開発者になりたいです。何を勉強すればいいですか?
ゲームサーバーは高性能、高可用性が必須です。 TCP / IPプロトコルの深い理解、システムプログラミング能力、およびプロトコル設計能力が特に重要です。 IOCPのような高速入出力技術を知ることは必須と言います。
この講義を学習するには、以下の講義カリキュラムで取り上げる内容の理解が必要です。
💾受講前に確認してください。
学習対象は
誰でしょう?
TCP/IPソケットプログラミングを学びたい方
Client/Server構造プロトコル設計手法を知りたい方
非同期ファイルの入出力を理解したい方
非同期入出力が高い性能が出せる理由を知りたい方
IOCPベースの高性能サーバーを開発したい方
ゲームサーバー開発者を希望する方
前提知識、
必要でしょうか?
講義「毒によみがえるCプログラミング」に該当する内容
講義「覚えて終わるネットワークコア理論 - 基礎」に該当する内容
34,826
受講生
1,922
受講レビュー
1,062
回答
4.9
講座評価
22
講座
널널한 개발자 TV 채널 주인장이자
30년 넘게 IT기술의 바다를 항해하고 있는 개발자 입니다. 반갑습니다. ^^
全体
47件 ∙ (9時間 37分)
講義資料(こうぎしりょう):
全体
40件
知識共有者の他の講座を見てみましょう!