Skip to main content

Command Palette

Search for a command to run...

#socket

Articles tagged with #socket

  1. 使用epoll()进行socket编程处理多客户连接的TCP服务器实例

    在网络编程中,当需要使用单线程处理多客户端的连接时,常使用select()或者poll()来处理,但是当并发数量非常大时,select()和poll()的性能并不好,epoll()的性能大大好于select()和poll(),在编写大并发的服务器软件时,epoll()应该是首选的方案,本文介绍epoll()在网络编程中的使用方法,本文提供了一个具体的实例,并附有完整的源代码,本文实例在 ubuntu 20.04 下编译测试完成,gcc 版本号 9.4.0。 1 基本概念 在『网络编程专栏』中...

    Mar 9, 20245 min read9
    使用epoll()进行socket编程处理多客户连接的TCP服务器实例
  2. linux下使用netlink获取gateway的IP地址

    要在linux下的程序中获取gateway的IP地址,使用netlink是一种直接、可靠的方法,不需要依赖其它命令,直接从linux内核获取信息,netlink编程的中文资料很少,本文试图用尽可能简单的方式讨论使用netlink获取gataway的IP地址的编程方法,并有大量篇幅介绍netlink的相关数据结构和编程方法,阅读本文需要对linux下编程有一定了解,熟悉IPv4的socket编程;本文对网络编程的初学者有较大难度。 在linux编程的资料中,netlink编程的资料并不多,但...

    Feb 4, 20238 min read74
    linux下使用netlink获取gateway的IP地址
  3. 如何用C语言操作arp cache

    arp cache中存放着局域网内IP地址和MAC地址的对应关系,对socket通信是至关重要的,arp cache由Linux内核进行维护,本文介绍如何用ioctl获取arp cache记录,添加新记录到arp cache中,删除arp cache中记录,每一种操作均给出了完整的源程序,本文程序在ubuntu 20.4中编译运行成功,gcc版本9.4.0,阅读本文需要有基本的socket编程和ioctl的知识,并对ARP协议有所了解,本文对网络编程的初学者难度不大。 1. ARP cache...

    Jan 12, 20233 min read55
    如何用C语言操作arp cache
  4. TCP服务器如何使用select处理多客户连接

    TCP是一种面向连接的通信方式,一个TCP服务器难免会遇到同时处理多个用户的连接请求的问题,本文用一个简化的实例说明如何在一个TCP服务器程序中,使用select处理同时出现的多个客户连接,文章给出了程序源代码,阅读本文应该具备了基本的socket编程知识,熟悉基本的服务器/客户端模型架构;本文对初学者难度不大。 1. 基本思路 TCP服务器端程序,对于每一个连接请求,可以使用多线程的方式为每一个连接启动一个线程处理该连接的通信,但使用多线程的方式,通常认为有如下缺点: 多线程编程和调试相对...

    Jan 9, 20232 min read50
    TCP服务器如何使用select处理多客户连接
  5. 使用select实现的UDP/TCP组合服务器

    独立的 TCP 服务器和UDP服务器,可以找到很多例子,但如果一个服务希望在同一个端口上既提供 TCP 服务,也提供 UDP 服务,写两个服务端显然不是一个好的办法,也不利于以后的维护,本文将把UDP服务器和 TCP 服务器合并成一个服务器,该服务器既可以提供 UDP 服务也可以提供 TCP 服务,本文将给出完整的源代码,阅读本文需要掌握基本的 socket 编程方法,本文对初学者难度不大。 1. 基本流程 本示例一共有三个程序,tcp/udp 服务器:tu-server.c,tcp 客户端...

    Jan 7, 20234 min read47
    使用select实现的UDP/TCP组合服务器
  6. 使用c语言实现服务器/客户端的tcp通信

    本文力求使用简单的描述说明一个服务器/客户端TCP通信的基本程序框架,使读者在这个框架下可以构建更加复杂的服务,文中给出了服务器端和客户端的实例源程序,本文适合网络编程的初学者阅读;本文的程序在ubuntu 20.04中编译运行成功,gcc版本号为:9.4.0 1. 前言 当两台主机间需要通信时,TCP和UDP是两种最常用的传输层协议,TCP是一种面向连接的传输协议,常用于对传输可靠性要求比较高的场合,比如传输文件;而UDP是一种无连接的通信方式,用于传输一些要求速度快,但对可靠性要求不高的...

    Jan 6, 20234 min read112
    使用c语言实现服务器/客户端的tcp通信