Hands-On Network Programming with C

0
(0)

Hands-On Network Programming with C
 

  • Author:Lewis Van Winkle
  • Length: 478 pages
  • Edition: 1
  • Publisher: Packt Publishing
  • Publication Date: 2019-05-13
  • ISBN-10: 1789349869
  • ISBN-13: 9781789349863
  • Sales Rank: #1118946 (See Top 100 Books)
  • Download:Register/Login to Download
  • Buy Print:Buy from amazon


    Book Description

    A comprehensive guide to programming with network sockets, implementing Internet protocols, designing IoT devices, and much more with C

    Key Features

    • Leverage your C or C++ programming skills to build powerful network applications
    • Get to grips with a variety of network protocols that allow you to load web pages, send emails, and do much more
    • Write portable network code for operating systems such as Windows, Linux, and macOS

    Book Description

    Network programming, a challenging topic in C, is made easy to understand with a careful exposition of socket programming APIs. This book gets you started with modern network programming in C and the right use of relevant operating system APIs.

    This book covers core concepts, such as hostname resolution with DNS, that are crucial to the functioning of the modern web. You’ll delve into the fundamental network protocols, TCP and UDP. Essential techniques for networking paradigms such as client-server and peer-to-peer models are explained with the help of practical examples. You’ll also study HTTP and HTTPS (the protocols responsible for web pages) from both the client and server perspective. To keep up with current trends, you’ll apply the concepts covered in this book to gain insights into web programming for IoT. You’ll even get to grips with network monitoring and implementing security best practices.

    By the end of this book, you’ll have experience of working with client-server applications, and be able to implement new network programs in C.

    The code in this book is compatible with the older C99 version as well as the latest C18 and C++17 standards. Special consideration is given to writing robust, reliable, and secure code that is portable across operating systems, including Winsock sockets for Windows and POSIX sockets for Linux and macOS.

    What you will learn

    • Uncover cross-platform socket programming APIs
    • Implement techniques for supporting IPv4 and IPv6
    • Understand how TCP and UDP connections work over IP
    • Discover how hostname resolution and DNS work
    • Interface with web APIs using HTTP and HTTPS
    • Acquire hands-on experience with Simple Mail Transfer Protocol (SMTP)
    • Apply network programming to the Internet of Things (IoT)

    Who this book is for

    If you’re a developer or a system administrator who wants to enter the world of network programming, this book is for you. Basic knowledge of C programming is assumed.

    Table of Contents

    1. Introducing Networks and Protocols
    2. Getting to Grips with Socket APIs
    3. An In-Depth Overview of TCP connections
    4. Establishing UDP Connections
    5. Hostname Resolution and DNS
    6. Building a Simple Web Client
    7. Building a Simple Web Server
    8. Making Your Program Send Emails
    9. Loading Secure Web Pages with HTTPS and OpenSSL
    10. Implementing a Secure Web Server
    11. Establishing SSH Connections
    12. Network Monitoring and Security
    13. Socket Programming Tips and Pitfalls
    14. Web Programming for the Internet of Things
    15. Answers to Questions
    16. Setting Up Your C Compiler on Windows
    17. Setting Up Your C Compiler on Linux
    18. Setting Up Your C Compiler on macOS
    19. Example Programs

    中文:

    书名:Hands-On Network Programming with C

    使用网络套接字编程、实施Internet协议、设计物联网设备以及使用C++进行更多操作的综合指南

    Key Features

    • 利用您的C或C++编程技能来构建强大的网络应用程序
    • 熟悉各种网络协议,这些协议允许您加载网页、发送电子邮件以及执行更多操作
    • 为Windows、Linux和MacOS等操作系统编写可移植的网络代码

    Book Description

    网络编程是C语言中一个具有挑战性的主题,通过对套接字编程API的仔细阐述,使其变得易于理解。这本书让您开始使用C语言进行现代网络编程,并正确使用相关的操作系统API。

    这本书涵盖了核心概念,例如使用DNS的主机名解析,这些概念对现代网络的功能至关重要。您将深入研究基本的网络协议,即TCP和UDP。通过实例说明了网络范例的基本技术,如客户端-服务器模式和对等模式。您还将从客户端和服务器的角度学习HTTP和HTTPS(负责网页的协议)。为了跟上当前的趋势,您将应用本书中介绍的概念来深入了解物联网的网络编程。您甚至还将掌握网络监控和实施安全最佳实践。

    到本书结束时,您将拥有使用客户端-服务器应用程序的经验,并能够用C语言实现新的网络程序。

    本书中的代码与较旧的C99版本以及最新的C18和C++17标准兼容。编写健壮、可靠和安全的代码时要特别注意,这些代码可以跨操作系统移植,包括Windows的Winsock套接字和Linux和MacOS的POSIX套接字。

    What you will learn

    • 发现跨平台套接字编程API
    • 支持IPv4和IPv6的实现技术
    • 了解TCP和UDP连接如何通过IP工作
    • Discover how hostname resolution and DNS work
    • Interface with web APIs using HTTP and HTTPS
    • 获得简单邮件传输协议(SMTP)的实践体验
    • 将网络编程应用于物联网(IoT)

    Who this book is for

    如果你是一名开发人员或系统管理员,想要进入网络编程的世界,这本书适合你。假定您有C语言编程的基本知识。

    Table of Contents

    1. Introducing Networks and Protocols
    2. Getting to Grips with Socket APIs
    3. An In-Depth Overview of TCP connections
    4. 建立UDP连接
    5. Hostname Resolution and DNS
    6. 构建一个简单的Web客户端
    7. 构建一个简单的Web服务器
    8. 让您的程序发送电子邮件
    9. 使用HTTPS和OpenSSL加载安全网页
    10. Implementing a Secure Web Server
    11. Establishing SSH Connections
    12. 网络监控和安全
    13. Socket Programming Tips and Pitfalls
    14. Web Programming for the Internet of Things
    15. Answers to Questions
    16. Setting Up Your C Compiler on Windows
    17. Setting Up Your C Compiler on Linux
    18. Setting Up Your C Compiler on macOS
    19. Example Programs
  • 下载电子版:下载地址
  • 购买纸质版:亚马逊商城

    点击星号评分!

    平均分 0 / 5. 投票数: 0

    还没有投票!请为他投一票。

  • 推荐阅读

    评论 抢沙发

    评论前必须登录!

     

    登录

    找回密码

    注册