Special offers now — see discounted courses.
day
:
hour
:
min
:
sec
See special offers
Network Programming in C: Develop Reliable Client/Server Applications

Network Programming in C: Develop Reliable Client/Server Applications

1h 56mIntermediate2024-12-12

Authors

Dan Gookin

Dan Gookin

Creator, Teacher, and Technology Writer with 20+ years of experience

Course details

Are you a C programmer looking to explore networking programming? In this course, instructor Dan Gookin provides an overview of network communications, terms, strategies, and concepts. Dan explores this complex topic in a step-by-step progression, exploring networking in Linux, macOS, or Windows 10/11 running the Windows Subsystem for Linux (WSL). Included are relevant parts of the operating system and how to access local networking features. The core of the course deals with socket programming at the client/server level. The IPv4 and IPv6 protocols are covered, as are TCP and UDP connections. Dan shows you how to program a client and server for both types of connections. The course finishes with a challenge: Code a Linux, text-mode real time chat server that accepts multiple connections, tracks conversations, and logs connections.

Skills covered

CProgramming LanguagesOpen SourceSoftware DevelopmentOne-Off

Concepts

0. Introduction

  • 01 - Network with the world
  • 02 - What you need for this course
  • 03 - Traps and pitfalls

1. Network Communications

  • 04 - View the big network picture
  • 05 - Configure the firewall
  • 06 - Understand the Internet Protocol (IP)
  • 07 - Explore network addresses and ports
  • 08 - Access local network details
  • 09 - Discover local interfaces
  • 10 - Review the client server roles

2. Network Programming

  • 11 - Understand socket programming
  • 12 - Explore the getaddrinfo() function
  • 13 - Open a socket
  • 14 - Bind and connect
  • 15 - Listen and accept
  • 16 - Challenge - Check for errors
  • 17 - Solution - Check for errors

3. TCP Connections

  • 18 - Create a TCP server
  • 19 - Call a TCP server
  • 20 - Code a dual stack configuration
  • 21 - Challenge - A generic TCP client
  • 22 - Solution - A generic TCP client

4. UDP Connections

  • 23 - Code a UDP server
  • 24 - Code a UDP client
  • 25 - Challenge - Code a UDP client and server
  • 26 - Solution - Code a UDP client and server

5. A Chat Server

  • 27 - Obtain the client's address
  • 28 - Maintain the connection
  • 29 - Accept multiple connections
  • 30 - Managing multiple connections
  • 31 - Challenge - Write a chat server
  • 32 - Solution - Write a chat server

Conclusion

  • 33 - Next Steps

Related courses

Related learn paths

About us

LyndaKade is a leading learning platform that helps people learn business, software, technology, and creative skills to achieve personal and professional goals.

Phone numberAparat ChannelTelegram SupportTelegram ChannelInstagram Page

All rights to this site belong to LyndaKade.

Terms of Service|Privacy Policy

نماد الکترونیک enamad در صورت اتصال با آی‌پی داخل کشور، نمایش داده خواهد شد.
logo-samandehi - لوگو ساماندهی
zarinpal
zibal