Part B - Networking Projects - Implement TCP/IP Stack in C

C/C++ Linux Project, Network Socket Programming, Build TCP/IP Stack, Final Year Project, System Programming in C
4.77 (13 reviews)
Udemy
platform
English
language
Software Engineering
category
Part B - Networking Projects - Implement TCP/IP Stack in C
1β€―657
students
8 hours
content
Jan 2022
last update
$19.99
regular price

Why take this course?

🌟 Course Headline: πŸš€ Dive into Network Socket Programming - Build Your Own TCP/IP Stack in C! πŸš€

Course Title: C/C++ Linux Project: Part B - Networking Projects


Course Description:

Welcome to the Part-B of the TCP/IP Stack Development Course Series! πŸ–₯️ This is a sequel course to Part-A where we implemented a pseudo TCP/IP Stack working in a virtualized topology. In this Course, we shall be taking our knowledge and skills to the next level by implementing more advanced and additional features to our Pseudo TCP/IP Stack, aiming to impart a more realistic flavor to it. πŸ€“

If you have signed up for this course, I presume you have completed Part-A of the course and are ready to embark on another thrilling journey into our project. This course is Advanced as compared to Part-A. In this course, we will delve deeper into TCP/IP stack development and explore how networking software is crafted. You will not only engage in networking-based programming but also continue with a typical Linux-based System Programming development journey because networking is inherently tied to system programming.


Student Level:

This course is designed for Intermediate to Advanced level students and working professionals. If you are a beginner in Coding, we recommend starting with Part-A of the course series before diving into this advanced material. πŸ§‘β€πŸ’»πŸ› οΈ


Table of Contents:

  1. What is this Course all about?
    • Understanding the scope and objectives of the course.
  2. Project 1: Interface Management and Statistics
    • Enable/Disable an Interface
    • Gathering Interface Rx/Tx Statistics
  3. Project 2: Implementing the Packet Generator
    • Create and feed a packet stream into the topology
  4. Project 3: Implementing Routing Table Construction Algorithm
    • Designing Data Structures
    • Shortest Path First (SPF) Algorithm in Detail
    • Implementation Strategy
    • Testing SPF Algorithm Implementation
    • Route Calculation
  5. Project 4: Logging Infrastructure
    • Track Ingress and Egress packets per device per interface
    • Track L3 Path taken by a packet from src to dst
  6. Project 5: Notification Chains (NFC)
    • Introduction to NFC
    • Understand with the help of an Example
    • Writing a Generic NOTIF Infra code
    • Writing TCP/IP Stack NFC
    • Implement Publisher Subscriber APIs
    • See NFC in Action
  7. Project 6: Working with Timers
    • Implementing Ageism (Time to Live)
    • Implement Timer State Machine

Course Outline:

Project 1: You'll start by managing network interfaces, enabling/disabling them, and gathering essential Rx/Tx statistics. This will give you a hands-on understanding of how network interfaces work at the system level.

Project 2: Moving forward, you'll create a packet generator that can feed packets into the topology, allowing you to simulate network traffic and understand the dynamics of data transmission.

Project 3: In this project, you'll implement a routing table construction algorithm. You'll learn about data structures, the Shortest Path First (SPF) algorithm, and how to effectively manage routes in a network.

Project 4: Here, you'll set up a robust logging infrastructure to track ingress and egress packets, as well as the L3 path a packet takes from source to destination. This will help you understand the flow of data within a network.

Project 5: You'll be introduced to Notification Chains (NFC), which is crucial for real-time networking applications. You'll learn by example and implement your own generic NOTIF infrastructure, followed by a TCP/IP Stack NFC and Publisher Subscriber APIs.

Project 6: Lastly, you'll work with timers to understand the aging of packets (Ageism) and implement a timer state machine. This will give you insight into how time-related events are managed within network operations.


Join us on this journey to master Network Socket Programming and the intricacies of building your own TCP/IP Stack in C. Let's transform theoretical knowledge into practical skills! πŸ§ πŸ’»πŸ’ͺ

Loading charts...

Related Topics

3370728
udemy ID
27/07/2020
course created date
23/08/2020
course indexed date
Bot
course submited by