آموزش مفاهیم شبکه با برنامه نویسی سوکت - سطح علمی

Networking Concepts with Socket Programming - Academic Level

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: دوره شبکه با مفاهیم برنامه نویسی سوکت به صورت عمیق با برنامه نویسی سوکت TCP/UDP/HTTP برای مبتدی تا متخصص با اعتماد به نفس در پاسخ به سؤالات مرتبط با شبکه فرصت هایی را برای برنامه نویسی شبکه/سیستم باز کنید شرکت ها با لینوکس آشنا شوید و برنامه نویسی سیستم لینوکس را یاد بگیرید Build Github نمونه کارها رزومه خود را با پروژه هایی که در این دوره انجام شده است تزئین کنید. مفاهیم شبکه را در تمام لایه های مدل OSI بیاموزید محتوای دوره با نگه داشتن مصاحبه های MNC در برنامه نویسی ذهن طراحی شده است. در محیط لینوکس ساخت و رمزگشایی بسته کامل از ابتدا مفهوم بسته بندی بسته بندی مسیریابی L2 و L3، مسیریابی مبتنی بر Vlan پیش نیازها: دوره UG پایه شبکه سازی مهارت های برنامه نویسی اولیه در زبان C الزامی است.

این دوره در مورد تقویت مفاهیم و مبانی شبکه با تکالیف در کنار تئوری است. از طریق این دوره شما قادر خواهید بود:

1. عملکرد پشته TCP/IP (مدل OSI) را درک کنید. عملکرد هر لایه در پشته TCP/IP را با جزئیات خوب درک کنید.

2. مفاهیم مسیریابی L2 - آدرس های مک و ARP را توضیح دهید

3. مفاهیم مسیریابی L3 - آدرس های IP و پروتکل IP

را توضیح دهید

4. روش ساخت دینامیک جدول مسیریابی L3

را درک کنید

5. روش های مختلف برای طراحی یک برنامه سرور TCP/UDP لینوکس در C

را بدانید

6. برنامه نویسی Socket را در C

درک کنید

7. درک عملکرد دستگاه های شبکه - سوئیچ L2 و روتر L3

8. درک سفر بسته از طریق لایه های پشته TCP/IP

9. وب سرورهای HTTP را از ابتدا طراحی و پیاده سازی کنید

10. بسته های شبکه را از ابتدا بخوانید و بسازید

11. درک مفهوم TLVs

12. مفهوم کپسوله کردن بسته

13. درک سیستم نام دامنه (DNS)

14. شبکه های مجازی مجازی (VLAN) و مسیریابی در VLAN

15. پخش دامنه و دامنه برخورد


ما درک می کنیم - شبکه سازی به دلیل ماهیت خود به سمت موضوعی نظری مطالعه تمایل دارد. برای برانگیختن علاقه دانش آموزان، هر موضوع این دوره را از طریق یک تکلیف یا پروژه به تفصیل شرح می دهیم.

این دوره کامل است. ما طرح را توضیح می دهیم، جریان کد را مورد بحث قرار می دهیم و سپس مخاطب را راهنمایی می کنیم که چگونه طرح مفهومی خاص را با جزئیات به صورت گام به گام پیاده سازی کند. برای انجام این دوره تنها به یک سیستم عامل لینوکس در حال اجرا بر روی سیستم شما نیاز دارید.

چه کسی باید این دوره را انجام دهد؟

این دوره برای دانشجویان علوم کامپیوتر UG، جویندگان کار و توسعه دهندگان حرفه ای در نظر گرفته شده است. این دوره آموزشی برای کسانی است که می خواهند به عنوان توسعه دهنده به MNC ها بپیوندند. موضوعات مطرح شده در این دوره از جنبه های مصاحبه از اهمیت بالایی برخوردار است و دانشجویانی که در رشته علوم کامپیوتر فارغ التحصیل می شوند و به دنبال فرصتی در MNC ها به عنوان یک توسعه دهنده هستند باید مفاهیم شبکه را در نوک انگشتان خود داشته باشند. بهتر است شبکه را در دوره فوق لیسانس انجام داده باشید، نه اجباری. جویندگان کار تلاش می کنند برای موقعیت توسعه دهندگان شبکه در MNC های مبتنی بر محصول توسعه نرم افزار سیستم از جمله شبکه سازی یک منطقه همیشه سبز است. اینترنت هرگز محکوم به فنا نخواهد شد.


پیش نیاز

هیچ پیش نیازی برای این دوره وجود ندارد، با این حال، اگر کمی از زبان C بدانید، مزیت خواهد بود. ما این دوره را با فرض اینکه دانش آموز یک مبتدی کامل در شبکه است طراحی کردیم و با حرکت به تدریج سطح دوره را بالا می بریم. از پایه تا مفاهیم پیشرفته شبکه.

همچنین، لطفا فقط ننشینید و کدهای من را تماشا کنید. کدهای خود را بنویسید، حتی اگر همان کد من باشد!

ما دلایل قوی برای انتخاب زبان C برای این دوره داریم:

1. کل کار توسعه شبکه اصلی در C در صنعت انجام می شود. بنابراین، این دلیل به تنهایی به اندازه کافی خوب است که اگر قصد دارید به عنوان یک توسعه دهنده پروتکل شبکه به صنعت بپیوندید، باید توسعه شبکه را در C یاد بگیرید.

2. تجهیزات شبکه نیاز به تعامل با سخت افزار زیرین - تراشه های ASIC دارند. برای تعامل و برنامه‌نویسی سخت‌افزار، چه زبانی بهتر از C می‌تواند باشد.

3. C یک زبان سطح متوسط ​​است - نه به اندازه اسمبلی و نه به اندازه جاوا/پایتون. در زبان C، وظیفه برنامه نویس نوشتن هر خط کد برای انجام کار است، برخلاف جاوا/پایتون که بقیه کتابخانه های غنی را برای انجام بیشتر کارها برای شما فراهم می کند. استفاده از زبان های سطح بالا برای یادگیری برنامه نویسی شبکه، جزئیات سطح پایین شبکه را پنهان می کند - این همان چیزی است که در پشت صحنه اتفاق می افتد. اگر در برنامه نویسی شبکه مبتدی هستید، باید چیزهایی را از ابتدا یاد بگیرید و فقط C این فرصت را برای شما فراهم می کند. بنابراین، شما باید تمام تکالیف خود را در C.

انجام دهید

4. شبکه سازی همه چیز در مورد پختن بسته ها و ارسال آن ها از طریق سیم است. C به شما این امکان را می دهد که بسته ها را دقیقاً به همان روشی بپزید که دوست دارید روی سیم ظاهر شوند. برنامه نویسی سطح بیت زیادی.

5. اگر در شبکه سازی مبتدی هستید، لطفاً از یادگیری برنامه نویسی شبکه به زبان های سطح بالا مانند جاوا یا پایتون خودداری کنید. این کار در حوزه شبکه انجام نمی شود.

کتابخانه شخص ثالثی وجود ندارد

هر منطقی که پیاده سازی می کنید، باید آن را از ابتدا پیاده سازی کنید. این دوره پیشنهاد نمی کند که از هیچ کتابخانه شخص ثالثی برای انجام کارها کمک بگیرید. استفاده از کتابخانه های خارجی به طور کامل هدف دوره را از بین می برد. با این حال، توصیه می‌شود از کتابخانه‌های شخص ثالث برای ساختارهای داده رایج مانند فهرست‌های پیوندی/درخت/صف‌ها و غیره استفاده کنید که باعث صرفه‌جویی در زمان زیادی برای اجرای این ساختارهای داده می‌شود.


چه چیز دیگری همراه با دوره؟

اگر قصد دارید یک توسعه دهنده شوید، علاوه بر قوی بودن در ساختار داده و الگوریتم ها، باید مفاهیم مرتبط با سایر ابزارهای لینوکس را نیز شفاف کنید. شبکه سازی همه چیز در مورد برنامه نویسی سیستم است، و شما علاقه مند به یادگیری مفاهیم دیگر لینوکس با اهمیت اصلی مانند ارتباطات بین فرآیند، تماس های رویه از راه دور و غیره خواهید بود. لطفاً به دوره های دیگر من در این زمینه نگاهی بیندازید. این دوره ها شما را به عنوان یک توسعه دهنده رقابتی تر در حوزه برنامه نویسی سیستم شبکه خلاصه می کند.


ببینید دانش آموزان در مورد این دوره چه می گویند

فقط به این نظرات دارای رتبه برتر نگاهی بیندازید (برای تأیید این نظرات، بخش بررسی را مرور کنید)

***** چه دوره فوق العاده ای!!! من واقعا از زحماتی که آبیشک در این دوره انجام داده است قدردانی می کنم. عرق و دلش را گذاشته است. روشی که او چیزها را توضیح می دهد، شما را درگیر این دوره می کند. او مستقیماً بدون اینکه دور بوته بکوبد به نقطه می رسد. هیچ نویسنده ای از هیچ کتاب شبکه ای نمی تواند چیزهایی را که آبیشک انجام می دهد توضیح دهد. کاری که آبیشک انجام می دهد این است که دارد گوشت موضوع را توضیح می دهد. برای درک این موضوع باید 10 کتاب خواند. یا شاید بیشتر در قلب من احساسی وجود داشت که شبکه را به وضوح نمی شناسد. این دوره با توجه به محتوا، وضوح و سبک تدریس با ارائه مناسب انتظارات من را برآورده می کند. این دوره درک شما را بهبود می بخشد و ترس از ندانستن را از بین می برد... نه تنها این، اعتماد به نفس خوبی در مورد دانش شما در زمینه شبکه ایجاد می کند... از اینکه چنین دوره ای را ارائه کردید متشکریم. باز هم متشکرم.

***** در زمان مناسب به دوره مناسب بیایید. به نظر می رسد این دوره تمام زمینه های مهم شبکه را پوشش می دهد. نویسنده موضوعات را با جزئیات خوب و با سرعت خوب توضیح می دهد. به نظر می رسد این دوره برای شکست دادن مصاحبه های فنی طراحی شده است.

***** دوره عالی، مدرس بسیار دقیق است و راهنمایی سریع ارائه می دهد و هر گونه شک و تردید را به سرعت با در دسترس بودن بالا برطرف می کند. من واقعا از این دوره لذت بردم. یادگیری شبکه برای من موضوع سختی بوده است، اما این دوره آن را بسیار آسان کرده است. من اکنون مفاهیم خود را کاملاً روشن کرده ام! با تشکر آبیشک، و Udemy.

***** من به عنوان مهندس Firmware/Embedded کار می کنم، و دوره های این بچه ها نعمت لعنتی است. در صنعت واقعی، همانطور که قبلاً اشاره کرد، تمام برنامه نویسی های شبکه یا برنامه نویسی سیستم لینوکس باید با C پیاده سازی شوند، زیرا C یک زبان عالی برای دسترسی به فضاهای حافظه و سفارشی کردن ارتباط سریال با سایر تراشه ها است. در زمینه های صنعتی واقعی، هیچ کس به شما آموزش نمی دهد. شما تنها کسی هستید که باید خودتان آن را بفهمید زیرا همه آرزو می کنند که در محل کار برتر نباشید. فقط یک نفر می تواند مدیر یا سرپرست باشد. در دوره های این پسر شرکت کنید. ناگفته نماند که کیفیت تضمین شده است. اگر بتوانم در این سایت هک کنم، سخنرانی های او را خراب می کنم. من نمی خواهم دیگران از سخنرانی های او بهره ببرند. بهتر است او یک سخنرانی برای "ساخت سیستم عامل از ابتدا" داشته باشد :)


اخطار: این دوره دارای زیرنویس‌های خودکار تولید شده توسط سیستم است که ممکن است کامل نباشند. لطفاً زیرنویس‌ها را طبق راحتی خود غیرفعال کنید.


برنامه درسی

0. تنظیم محیط توسعه لینوکس در دستگاه شما

  • برای کسانی که با نصب/محیط لینوکس آشنایی ندارند

1. مدل OSI در مقابل پشته TCP/IP

  • محفظه‌سازی داده‌ها و کپسول‌زدایی داده‌ها

  • سرصفحه آبشاری

  • ورود و خروج بسته از طریق پشته TCP/IP

  • تصویر بزرگ

2. محیط راه اندازی چند گره در دستگاه شما

  • خوشه ماشین های مجازی چند گره را بر روی دستگاه خود راه اندازی کنید

  • شبکه های فرعی محلی و راه دور

  • معناشناسی مسیر لایه 3

  • مسیرهای لایه 3 را در گره ها پیکربندی کنید

  • معنای جدول مسیریابی L3 را درک کنید

3. زیرشبکه و آدرس IP

  • درک زیرشبکه ها

  • بین زیرشبکه های محلی و راه دور تفاوت قائل شوید

  • طرح/سیاست تخصیص آدرس IP

  • تحویل داده

  • آدرس های MAC و استفاده از آنها را بشناسید

  • محاسبه شناسه شبکه، آدرس پخش و اصلی بودن یک زیرشبکه

  • روابط بین روترهای L3 و زیرشبکه ها را درک کنید

  • پیوندهای نقطه به نقطه را درک کنید

  • لایه MAC و قوانین IP مربوط به رد/پذیرش بسته

  • آدرس های پخش

4. مفاهیم شبکه سازی لایه 2

  • روتر L3 به عنوان دروازه ای برای زیرشبکه

  • فیلدهای شناسه پروتکل در هر لایه

  • قالب سرصفحه اترنت

  • چگونه اترنت hdr مسیریابی L2 را ممکن می کند

  • ARP (پروتکل وضوح آدرس)

  • جمعیت جدول ARP و استفاده

  • عملکرد گام به گام پروتکل ARP

  • تکالیف در ARP

  • Switch Layer2 - نحوه عملکرد آن

  • جدول آدرس MAC

  • شرح گام به گام عملکرد سوئیچ L2

  • مشکل کوبیدن لایه

5. مفاهیم شبکه سازی لایه 3

  • رابطه بین مسیریابی Layer2 و Layer3

  • وابستگی دو لایه به یکدیگر را توضیح داد

  • پیکربندی جدول مسیریابی لایه 3

  • معناشناسی مسیر لایه 3

  • بررسی مسیر لایه 3

  • مفهوم تطابق طولانی‌ترین پیشوند

  • سرصفحه IP - فیلدهایی که باید بدانید

  • عملیات لایه شبکه

  • شرح گام به گام مسیریابی مسیریابی L3

  • رابط Loopback - هدف و پیکربندی رابط Loopback

  • تمرین بر روی نصب مسیر لایه 3، مسیریابی و ارسال ترافیک

  • BloadCast and Collision Domain

6. ساخت دینامیک جدول مسیریابی L3

  • فاز 1 - مدیریت پایگاه داده همسایگی

  • فاز 2 - ایجاد پایگاه داده وضعیت پیوند

  • فاز 3 - الگوریتم اول کوتاهترین مسیر

  • محاسبه جدول مسیریابی نهایی

7. شبکه های مجازی مجازی (VLAN)

  • شبکه‌های محلی و چرایی آن‌ها امروز قدیمی شده‌اند

  • VLAN - هدف

  • 802.1Q VLAN hdr

  • قوانین برچسب گذاری Vlan

  • کلیدهای Vlan Aware L2

  • مسیریابی L2 مبتنی بر Vlan

  • سایر مزایای Vlan

8. روتر به Vlan Forwarding

  • تلفیق رابط های SVI

  • SVI - VLAN Binding

  • روتر به Vlan Forwarding - گام به گام

9. مسیریابی Inter Vlan

  • فرآیند دو مرحله ای

    • از Src host Machine به مسیریاب Gateway L3

    • از روتر Gateway L3 به دستگاه میزبان Dst

    • تمرین و مثال‌های بیشتر

10. ابزارهای عیب یابی شبکه

  • پینگ چگونه کار می کند - شرح پروتکل ICMP

  • عیب‌یابی برنامه‌های کاربردی شبکه - ping، wireshark، tcpdump

  • گرفتن بسته ها و بررسی محتویات آن با استفاده از tcpdump

11. لایه انتقال

  • اهداف لایه

  • تضاد لایه 2، لایه 3 و لایه 4 با هم

  • TCP و UDP - ویژگی‌های دو پروتکل

  • TCP در مقابل UDP

  • درک جزئیات TCP

  • مفهوم انباشتگی سرصفحه ها

  • مفهوم شماره پورت

  • رابط تماس سیستم لینوکس

12. مفاهیم برنامه نویسی سوکت

  • طراحی برنامه نویسی سوکت

  • تماس سیستم

    را انتخاب کنید
  • قبول تماس سیستم

  • مفهوم Multiplexing

  • دستگاه حالت سرور

13. لایه برنامه

  • روش های مختلف برای پیاده سازی سوکت ها

    • در لایه بالای انتقال

    • در بالای لایه شبکه

    • در لایه پیوند بالای داده

  • طراحی وب سرور HTTP از ابتدا

  • اجرای وب سرور HTTP

  • سوکت های برنامه سفارشی

14. سیستم نام دامنه

  • DNS چیست؟

  • معماری و طراحی DNS

  • FQDN

  • میزبانی وب سایت

  • تحلیل کننده DNS

  • انواع پرس و جو DNS

    • پرسش تکراری

    • پرسمان DNS بازگشتی

    • پرسمان DNS معکوس

  • خلاصه

15. کپسوله‌سازی/تونل‌سازی IP-in-IP

  • درپوش IP-in-IP چیست؟

  • چرا به کپسولاسیون IP-in-IP نیاز داریم؟

  • بسته کپسوله شده چگونه در شبکه مسیریابی می شود؟

  • دو سناریو با استفاده از IP-in-IP Encapsulation

16. مفهوم TLVs

  • TLV چیست

  • چرا به TLV نیاز داریم

  • نوشتن رمزگشا TLV

  • مزایای TLV در ارتباطات شبکه

  • STREAMS - ساختار داده

  • سریال‌سازی TLV با استفاده از STREAMS


**آزمایی حسابرسی**

2 آگوست 2020 - اضافه شدن بخش ساخت پویا جدول مسیریابی L3

14 ژوئن 2019 - بخش اضافه شده در TCP

06 اکتبر 2018 - اضافه شدن بخش 6 در VLAN

07 سپتامبر 2018 - اضافه شدن بخش 11، سیستم نام دامنه

13 ژوئیه 2018 - اضافه شدن بخش 12، کپسول‌سازی/تونل‌سازی IP-in-IP

17 ژوئن 2018 - اضافه شدن بخش 10، لایه برنامه و اجرای طراحی وب سرور HTTP

10 ژوئن 2018 - اضافه شدن بخش 15، مفهوم TLVs


سرفصل ها و درس ها

معرفی Introduction

  • فهرست مطالب Table Of Contents

  • عضویت در گروه تلگرام Join Telegram Group

  • معرفی مدل OSI OSI Model Introduction

  • توابع لایه های مدل OSI OSI Model Layers Functions

  • TCP IP Stack World Real Analogy TCP IP Stack real World Analogy

  • کپسوله سازی داده ها و کپسولاسیون - مقدمه Data Encapsulation and Decapsulation - Introduction

  • کپسوله سازی داده ها Data Encapsulation

  • کپسول زدایی داده ها Data Decapsulation

  • کپسوله‌سازی داده‌ها و کپسول‌زدایی در گره‌های Forwarding Data Encapsulation and Decapsulation on Forwarding nodes

  • یک تصویر بزرگ A Big Picture

  • درک خود را آزمایش کنید Test your Understanding

آزمایشگاه های شبکه Networking Labs

  • در این بخش چیست؟ What in this Section ?

  • هدف و اهداف Objective and Goals

  • مراحل نصب Mininet Mininet Installation Procedure

  • نصب ابزار اضافی Extra Tools Installation

  • راه اندازی Mininet Launching Mininet

  • Mininet TreeTopologies Mininet TreeTopologies

زیرشبکه IP IP Subnet

  • زیرشبکه قسمت 1 Subnetting Part 1

  • زیرشبکه قسمت 2 Subnetting Part 2

  • تحویل داده ها Data Delivery

  • مک و آدرس IP Mac and IP Address

  • شناسه شبکه Network ID

  • آدرس های پخش Broadcast Addresses

  • حداکثر مقدار و بیت های کنترل Max Value and Control Bits

  • پیکربندی آدرس IP IP Address Configuration

  • ماسک پیوندهای نقطه به نقطه Point to Point Links Mask

  • آدرس های پخش با جزئیات Broadcast Addresses In Detail

  • تکالیف کدنویسی ریاضی IP IP Maths Coding Assignments

مسیریابی لایه 2 Layer 2 Routing

  • L2 Routing مقدمه L2 Routing Introduction

  • زیرشبکه های محلی و راه دور Local And Remote Subnets

  • مسیریابی L2 - مبانی L2 Routing - Basics

  • فرمت هدر اترنت Ethernet Header format

  • مسیریابی لایه 2 چگونه انجام می شود؟ How Layer 2 Routing is done ?

  • اهداف ARP ARP Goals

  • فرمت پیام استاندارد ARP ARP Standard Message Format

  • پروتکل حل آدرس قسمت 1 Address Resolution Protocol Part 1

  • پروتکل حل آدرس قسمت 2 Address Resolution Protocol part 2

  • نمایش پروتکل وضوح آدرس Address Resolution Protocol Demonstration

  • مفهوم سوئیچ لایه 2 Layer 2 Switch Concept

  • عملکرد سوئیچ L2 L2 Switch Functioning

  • مثال سوئیچ لایه 2 Layer 2 Switch Example

  • سوالات متداول FAQs

  • جلسه آزمایشگاه Lab Session

  • شرح توپولوژی تست Test Topology Description

  • نسخه ی نمایشی توپولوژی L2 L2 Topology Demo

  • تکلیف توپولوژی L2 L2 Topology Assignment

مسیریابی لایه 3 Layer 3 Routing

  • بررسی اجمالی مسیریابی لایه 3 Layer 3 Routing Overview

  • چرا به مسیرهای L3 نیاز داریم؟ Why we need L3 Routes ?

  • معناشناسی مسیرهای لایه 3 Semantics of Layer 3 Routes

  • جدول مسیریابی به بالا نگاه کنید Routing table Look up

  • توپولوژی مسیریابی L3 L3 Routing Topology

  • عملیات لایه 3 و نمودار جریان Layer 3 Operations and Flowchart

  • مثال مسیریابی لایه 3 Layer 3 Routing Example

  • رابط های Loopback - مقدمه Loopback interfaces - Introduction

  • رابط های Loopback - خواص Loopback interfaces - properties

  • مسیریابی با استفاده از آدرس IP Loopback به عنوان آدرس مقصد Routing using Loopback IP Address as Destination Address

  • جلسه آزمایشگاه در مسیریابی L3 Lab Session on L3 Routing

  • ساخت و نمایش توپولوژی L3 L3 Topology Construction and Demo

  • درک خود را بررسی کنید Check your Understanding

ساختار داده برای جداول مسیریابی L3 Data Structure for L3 Routing Tables

  • بخش برای توسعه دهندگان Section For Developers

  • پیشوند ماسک ها و حروف عامیانه Prefix Masks and Wildcard

  • ساختارهای داده Data Structures

  • درج مسیر - مثال 1 Route Insertion - Example 1

  • درج مسیر - مثال 2 Route Insertion - Example 2

  • خلاصه Summary

  • الگوریتم جستجوی مسیر Route Search Algorithm

  • الگوریتم حذف مسیر Route Deletion Algorithm

  • طولانی ترین تطابق پیشوند - جستجوی مسیر Longest Prefix Match - Route LookUp

  • مثال 1 جستجوی مسیر Route Lookup Example 1

  • مثال 2 جستجوی مسیر Route Lookup Example 2

ساخت دینامیک جدول مسیریابی لایه 3 Dynamic Construction of Layer 3 Routing Table

  • معرفی Introduction

  • اهداف و بیان مسئله Goals and Problem Statement

  • فرمت ورودی جدول مسیریابی Routing Table Entry Format

  • ECMP - مسیر چندگانه با هزینه برابر ECMP - Equal Cost Multiple Path

  • همکاری دستگاه L3 L3 Device Collaboration

  • مراحل عمومی برای ساخت جدول مسیریابی Generic Steps to Build Routing Table

قسمت 2 - ساخت دینامیک جدول مسیریابی لایه 3 Part2 - Dynamic Construction of Layer 3 Routing Table

  • مراحل این بخش Phases of This Section

  • مرحله 1 - 4 مرحله Phase 1 - 4 Steps

  • فاز 1 - مرحله 1 و 2 Phase 1 - Step 1 and 2

  • فاز 1 - مراحل 3 و 4 Phase 1 - Steps 3 and 4

  • فاز 2 - الگوریتم Spf Phase 2 - Spf Algorithm

  • فاز 2 - Spf Algo مثال 1 Phase 2 - Spf Algo Example 1

  • فاز 2 - قوانین الگوی Spf Phase 2 - Spf Algo Rules

  • فاز 2 - Spf Algo مثال 2 Phase 2 - Spf Algo Example 2

  • فاز 3 - محاسبه جدول مسیریابی نهایی Phase 3 - Final Routing Table Computation

  • Loop Free تضمین شده است Loop Free is Guaranteed

  • همگرایی - خرابی گره/پیوند Convergence - Node/link Failures

  • خلاصه Summary

دامنه پخش و دامنه برخورد Broadcast Domain and Collision Domain

  • BD و CD - مقدمه BD and CD - Introduction

  • کاهش دامنه برخورد توسط سوئیچ های L2 - مثال 1 Collision Domain reduction by L2 Switches - Example1

  • کاهش دامنه پخش توسط روتر L3 - مثال 2 Broadcast Domain reduction by L3 router - Example2

شبکه های LAN و VLAN LANs and VLANs

  • LAN و Use Cases چیست؟ What are LANs and Use Cases

  • شبکه های محلی مشکل 1 - بی حرکتی LANs Problem 1 - Immobility

  • شبکه های محلی مشکل 1 - بی حرکتی مثال دنیای واقعی LANs Problem 1 - Immobility Real World Example

  • شبکه های محلی مشکل 2 - مسائل امنیتی LANs Problem 2 - Security Issues

  • معرفی VLAN ها Introducing VLANs

  • درگاه های دسترسی و ترانک سوئیچ L2 Access and Trunk Ports of L2 Switch

  • 802.1Q VLAN Header 802.1Q VLAN Header

  • قوانین برچسب گذاری VLAN VLAN Tagging Rules

  • مثال مسیریابی VLAN L2 - قسمت 1 VLAN L2 Routing Example - Part1

  • مثال مسیریابی VLAN L2 - قسمت 2 VLAN L2 Routing Example - Part2

  • مثال مسیریابی VLAN L2 - قسمت 3 VLAN L2 Routing Example - Part3

  • وظیفه Assignment

  • مزایای VLAN 1 - بخش بندی VLAN Benefit 1 - Segmentation

  • VLAN Benefit 2 - Resolve Thrashing VLAN Benefit 2 - Resolve Thrashing

  • VLAN Benefit 3 - کاهش دامنه پخش VLAN Benefit 3 - Reduced Broadcast Domain

  • VLAN Benefit 4 - تحرک VLAN Benefit 4 - Mobility

  • VLAN ها خواندن اضافی VLANs Additional Reading

روتر - Vlan Routing Router - Vlan Routing

  • مقدمه و بیان مسئله Introduction and Problem Statement

  • مفهوم SVIs Concept of SVIs

  • پیکربندی روتر L3 برای انتقال VLAN L3 Router Configuration for VLAN forwarding

  • روتر به Vlan Forwarding - مثال Router to Vlan Forwarding - Example

مسیریابی اینتر ولان Inter Vlan Routing

  • بیان مسأله Problem Statement

  • مسیریابی سنتی L3 - خلاصه Traditional L3 Routing - Recap

  • مسیرهای پیش فرض و وضوح ARP در شبکه مبتنی بر Vlan - Recap Default Routes and ARP Resolution in Vlan based Network - Recap

  • مبانی مسیریابی Inter Vlan Inter Vlan Routing Basics

  • مثال مسیریابی Inter Vlan - قسمت 1 Inter Vlan Routing Example - Part1

  • مثال مسیریابی Inter Vlan - قسمت 2 Inter Vlan Routing Example - Part2

  • خلاصه Summary

  • تمرینات Exercises

لایه حمل و نقل Transport Layer

  • معرفی لایه حمل و نقل Transport Layer Introduction

  • اهداف لایه حمل و نقل Transport Layer Goals

  • پروتکل دیتاگرام کاربر (UDP) - part1 User Datagram Protocol (UDP) - part1

  • پروتکل دیتاگرام کاربر (UDP) - قسمت 2 User Datagram Protocol (UDP) - Part2

  • سلب مسئولیت TCP TCP Disclaimer

  • پروتکل کنترل انتقال (TCP) - اتصال گرا Transmission Control Protocol (TCP) - Connection Oriented

  • TCP - پروتکل Stateful TCP - Stateful Protocol

  • TCP - پروتکل بایت گرا TCP - Byte Oriented Protocol

  • TCP - تحویل سفارش داده شده TCP - Ordered Delivery

  • TCP - تحویل قابل اعتماد TCP - Reliable Delivery

  • ابزارهای TCP برای شبکه های ضایع شده TCP tools for for Lossy Networks

  • TCP در مقابل UDP TCP Vs UDP

  • انباشته سربرگ Header Stacking

  • شماره پورت لایه حمل و نقل Transport Layer Port Numbers

  • رابط تماس سیستم System Call Interface

لایه حمل و نقل - مقدماتی TCP Transport Layer - TCP Preliminaries

  • TCP در مقابل سایر پروتکل ها TCP Vs Other Protocols

  • چالش های TCP ARQ TCP ARQ Challanges

  • بافرهای دایره ای بایت TCP TCP Byte Circular Buffers

  • بخش ها و شماره های دنباله ای - قسمت 1 Segments and Sequence Numbers - Part1

  • بخش ها و شماره های دنباله ای - قسمت 2 Segments and Sequence Numbers - Part2

  • TCP Hdr: Sequence Number و Acknowledge Number TCP Hdr : Sequence Number and Acknowledge Number

  • نوع بخش TCP TCP Segments Type

  • تحویل داده قابل اعتماد TCP - مورد بازبینی مجدد قرار گرفت TCP Reliable Data Delivery - Revisited

  • تصویر تایمر ارسال مجدد TCP TCP Re-transmission Timer Illustration

  • خلاصه Summary

برنامه نویسی سوکت Socket Programming

  • کدهای این بخش Codes for this Section

  • مقدمه ای بر برنامه نویسی سوکت Introduction to Socket Programming

  • طراحی سرور Server Designing

  • پذیرش تماس سیستمی Accept system call

  • تماس سیستم را انتخاب کنید Select System Call

  • پیاده سازی Multiplexing با پذیرش و انتخاب تماس های سیستمی Implementing Multiplexing with Accept & Select System Calls

  • مثال سرور TCP - قسمت 1 TCP Server Example - part 1

  • مثال سرور TCP - قسمت 2 TCP Server Example - part 2

  • مثال سرور TCP - قسمت 3 TCP Server Example - part 3

  • مشاهده طراحی سرور TCP TCP Server Design Observation

  • طراحی و پیاده سازی مشتری TCP TCP Client Design and Implementation

  • نمایش کلاینت سرور TCP TCP Server Client Demonstration

  • سرور TCP با Multiplexing - طراحی سطح بالا - قسمت 1 TCP Server With Multiplexing - High Level Design - Part1

  • سرور TCP با Multiplexing - پیاده سازی - قسمت 2 TCP Server With Multiplexing - Implementation - part 2

  • TCP Server With Multiplexing - Demonstration - Part 3 TCP Server With Multiplexing - Demonstration - part 3

  • نتیجه گیری برنامه نویسی سوکت Socket Programming Conclusion

لایه برنامه The Application Layer

  • معرفی لایه کاربردی Application Layer Introduction

  • طراحی و پیاده سازی سرور HTTP از ابتدا HTTP Server Design and Implementation from Scratch

  • نمایش سرور HTTP HTTP Server Demonstration

  • کد سرور HTTP Walk HTTP Server Code Walk

  • تخصیص سرور HTTP HTTP Server Assignment

پروژه برنامه نویسی سوکت - حافظه شفاف توزیع شده را پیاده سازی کنید Socket Programming Project - Implement Distributed Transparent Memory

  • اهداف پروژه Project Goals

  • استقرار پروژه Project Deployment

  • الگوریتم درخواست قرار دهید Put Request Algorithm

  • دریافت الگوریتم درخواست Get Request Algorithm

  • انواع پیام ها Messages Types

  • پردازش پیام ها Messages Processing

  • شبه کد پروژه Project Pseudocode

  • کلمات پایانی قبل از کدنویسی Final Words before Coding

سیستم نام دامنه Domain Name System

  • دستور کار DNS DNS Agenda

  • DNS - مقدمه DNS - Introduction

  • DNS - بیانیه مشکل DNS - Problem Statement

  • DNS چیست؟ What is DNS ?

  • معماری DNS و توزیع جغرافیایی DNS Architecture and Geographical Distribution

  • DNS - یک سیستم سلسله مراتبی و غیرمتمرکز DNS - A Hierarchical and Decentralized System

  • DNS - میزبانی وب سایت خود DNS - Hosting your Own website

  • نام دامنه وب سایت و FQDN Website Domain Name and FQDN

  • طبقه بندی سرورهای دامنه سطح بالا Top Level Domain Servers Classification

  • حل کننده DNS DNS Resolver

  • انواع پرس و جو DNS DNS Query types

  • پرس و جو DNS - بازگشتی DNS Query - Recursive

  • پرس و جو DNS - تکراری DNS Query - Iterative

  • پرس و جو DNS معکوس Reverse DNS Query

  • خلاصه Summary

کپسوله کردن بسته Packet Encapsulation

  • IP در کپسولاسیون IP - مقدمه IP in IP Encapsulation - Introduction

  • شبکه های ناهمگن چیست؟ What are Heterogeneous Networks ?

  • سناریو 1 - بیان مشکل کپسولاسیون IPv6-in-IP Scenario 1 - IPv6-in-IP Encapsulation Problem Statement

  • سناریو 1 - راه حل کپسوله سازی IPv6-in-IP Scenario 1 - IPv6-in-IP Encapsulation Solution

  • سناریو 2 - بیان مشکل کپسولاسیون IP و راه حل Scenario 2 - IP Encapsulation Problem Statement and Solution

  • سناریو 2 - مورد استفاده عملی کپسوله سازی IP Scenario 2 - IP Encapsulation Practical Use case

  • جمع بندی IP نتیجه گیری و خلاصه IP Encapsulation Conclusion and Summary

مفهوم TLVs - مقدار طول نوع Concept of TLVs - Type Length Value

  • TLVs - مقدمه TLVs - Introduction

  • چرا ما به TLV نیاز داریم Why we need TLVs

  • چرا ما به TLV نیاز داریم - یک سناریوی دیگر Why we need TLVs - Another scenario

  • درک TLV ها Understanding TLVs

  • TLV پرداختن به مشکل ناهمگنی TLV Addressing the problem of Heterogeniety

  • TLV پرداختن به مشکل ارتقاء نرم افزار TLV Addressing the problem of Software Upgrade

سوال مصاحبه در مورد ساختار داده الگوریتم سیستم عامل و شبکه Interview Question on Data structures Algorithms OS and Networking

  • تجربیات مصاحبه Interview Experiences

  • سخنرانی جایزه - زمان برای گرفتن آب نبات! Bonus Lecture - Time to get some Candies !!

نمایش نظرات

آموزش مفاهیم شبکه با برنامه نویسی سوکت - سطح علمی
جزییات دوره
23 hours
199
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
7,752
4.3 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Abhishek CSEPracticals Abhishek CSEPracticals

من شبکه می سازم!

Shiwani Nigam Shiwani Nigam

مجری بازاریابی دیجیتال

Ekta Ekta Ekta Ekta

مدیر تاسیسات