• c++ 网络编程(九)LINUX/windows-IOCP模型 多线程超详细教程及多线程实现服务端

    时间:2023-02-09 12:33:17

    原文作者:aircraft原文链接:https://www.cnblogs.com/DOMLX/p/9661012.html本网络编程入门系列博客是连载学习的,有兴趣的可以看我博客其他篇。。。。c++ 网络编程课设入门超详细教程 ---目录先讲Linux下(windows下在后面可以直接跳到后面看)...

  • Linux C语言编程------网络编程基础

    时间:2023-02-09 09:14:50

    网络编程入门知识   Linux系统是通过提供套接字(socket)来进行网络编程的.网络程序通过socket和其它几个函数的调用。 socket通常也称作"套接字",用于描述IP 地址和端口,是一个通信链的句柄,也可以看成是一种文件描述符 。socket实质上提供了进程通信的端点。进程通信之前...

  • Linux网络编程:原始套接字简介

    时间:2023-01-04 18:35:01

    Linux网络编程:原始套接字编程一、原始套接字用途通常情况下程序员接所接触到的套接字(Socket)为两类:流式套接字(SOCK_STREAM):一种面向连接的Socket,针对于面向连接的TCP 服务应用;数据报式套接字(SOCK_DGRAM):一种无连接的Socket,对应于无连接的UDP 服...

  • 计算机网络(二)Linux网络编程

    时间:2023-01-04 11:55:21

    layout: post title: 计算机网络(二)Linux网络编程 description: 计算机网络(二)Linux网络编程 tag: 计算机网络 文章目录 POSIX概念POSIX网络相关APIsocket()bind()网络字节序与主机字节序(大小端设备)listen/connec...

  • Linux 网络编程的5种IO模型:多路复用(select/poll/epoll)

    时间:2022-12-31 16:15:38

    Linux 网络编程的5种IO模型:多路复用(select/poll/epoll)背景我们在上一讲 Linux 网络编程的5种IO模型:阻塞IO与非阻塞IO中,对于其中的 阻塞/非阻塞IO 进行了说明。这一讲我们来看 多路复用机制。IO复用模型 ( I/O multiplexing )所谓I/O多路...

  • linux网络编程七:分散读readv和集中写writev

    时间:2022-12-31 08:30:26

    最近在看《linux高性能服务器编程》,在此做个日记,以激励自己,同时分享于有需要的朋友。 1. 分散读readv 和 集中写writev readv将数据从文件描述符读到分散的内存块中,即分散读。 writev将多块分散的内存一并写入文件描述符中,即集中写。 #include <sys/...

  • linux网络编程七:分散读readv和集中写writev

    时间:2022-12-31 08:30:50

    最近在看《linux高性能服务器编程》,在此做个日记,以激励自己,同时分享于有需要的朋友。 1. 分散读readv 和 集中写writev readv将数据从文件描述符读到分散的内存块中,即分散读。 writev将多块分散的内存一并写入文件描述符中,即集中写。 #include <sys/...

  • LINUX 数据结构 &算法 网络协议 & 网络编程 多任务编程

    时间:2022-12-29 12:34:28

    http://blog.csdn.net/goodluckwhh/article/category/1303091LINUX 数据结构 &算法 网络协议 & 网络编程 多任务编程的更多相关文章网络协议-网络分层、TCP&sol;UDP、TCP三次握手和四次挥手网络的五层划分是...

  • linux网络编程IO模型

    时间:2022-12-21 16:16:20

    同步与异步:        同步就是一个任务的完成需要依赖另外一个任务时,只有等待被依赖的任务完成后,依赖的任务才能算完成。        异步是不需要等待被依赖的任务完成,只是通知被依赖的任务要完成什么工作,依赖的任务也立即执行,只要自己完成了整个任务就算完成了,异步一般使用状态、通知和回调。 阻...

  • linux网络设备应用与驱动编程学习4——模板与实例(A)

    时间:2022-12-18 19:04:16

      源码来自lpc32xx_mii.c 1.       模块初始化卸载 static int __init lpc32xx_net_init(void) { return platform_driver_register(&lpc32xx_net_driver); }   static v...

  • Linux网络编程——Unix本地套接字

    时间:2022-12-18 11:00:08

    概述 今天给大家讲解网络编程中的一个内容——Unix 本地套接字。 发现很多人不知道或者不太了解 Unix 本地套接字这个概念,这也难怪,socket API 原本就是为多台主机之间网络通信设计的,并且这种网络 socket 同样支持单台主机上的进程间通信,当然这样做的话,仍然需要 IP 地址...

  • Linux(十七)网络基础:网络编程套接字

    时间:2022-12-18 07:28:33

    理解源IP地址和目的IP地址 在IP数据包头部中,有两个IP地址,分别叫做源IP地址,和目的IP地址 认识端口号 端口号是传输层协议的内容 端口号是一个2字节十六位的整数 端口号用来标识一个进程,告诉操作系统,当前的这个数据要交给哪一个进程来处理; IP地址+端口号能被标识网络上的某...

  • linux网络编程之套接字:套接字I/O超时设置方法和用select实现超时

    时间:2022-12-18 07:28:21

    一、使用alarm 函数设置超时 void handler(int sig){}signal(SIGALRM, handler);alarm(5);int ret = read(fd, buf, sizeof(buf));if (ret == -1 && errno == EINT...

  • Linux 网络编程之原始套接字

    时间:2022-12-18 00:28:55

    1. 介绍 前面主要介绍了流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),基本上能够满足TCP与UDP的应用。但一些问题,我们仍然无法解决,如: (1)发送一个自定义的IP包 (2)发送ICMP包 (3)侦听网络上的数据包 ...

  • Linux网络编程之原始套接字-ping协议实现

    时间:2022-12-18 00:28:49

    转自http://blog.csdn.net/chenjin_zhong/article/details/7271830 1.概述 PING协议是用来检验本地主机与远程主机是否连接,发送的是ICMP ECHO_REQUEST包。普通的套接字是基于TCP或者是UDP的,无法发送ICMP包,所以必须...

  • Linux 之 网络编程之套接字选项

    时间:2022-12-18 00:23:57

    SOL_SOCKET协议族选项获取和设置套接字选项SO_KEEPALIVE选项SO_LINGER选项SO_RCVBUF和SO_SNDBUF选项SO_RCVLOWAT和SO_SNDLOWAT选项SO_RCVTIMEO和SO_SNDTIMEO选项SO_REUSEADDR选项获取和设置套接字选项getso...

  • linux网络编程之udp套接字

    时间:2022-12-18 00:23:51

    一 .关于udp1.udp的概述udp的全称是用户数据报协议,他和tcp协议一样用于处理数据包,是一种无连接面向数据报的传输层协议,由于udp不提供对数据的分组,组装和不能对数据进行排序的缺点,导致udp在数据发完之后,不能确认数据是否完全到达,但是udp又有着在资源消耗少,传输效率高的优点。由于u...

  • Linux网络编程之UDP套接字

    时间:2022-12-18 00:24:15

           udp协议是面向数据报的,无连接不可靠的传输层协议,因为udp无连接,因此实现udp socket不需要监听也不需要连接。在实现tcp socket时,其中的收发数据可以当做文件,通过read和write来读取(TCP是面向字节流的),而udp是面向数据报的协议,收发的单位都是数据报,...

  • Linux网络编程之套接字选项设置

    时间:2022-12-18 00:24:09

    转载:http://blog.163.com/jlz_325/blog/static/19174000920126893134309/ 1.介绍 在Linux网络编程中,有时需要设置地址复用,允许发送广播包,将主机加入某个多播组,设置发送与接收缓冲区的大小,设置发送与接收的超时时间,将套接字绑定到某...

  • (51)LINUX应用编程和网络编程之六Linux高级IO

    时间:2022-12-18 00:19:46

    3.6.1.非阻塞IO 3.6.1.1、阻塞与非阻塞 阻塞:阻塞具有很多优势(是linux系统的默认设置),单路IO的时候使用阻塞式IO没有降低CPU的性能 补充:阻塞/非阻塞, 它们是程序在等待消息(无所谓同步或者异步)时的状态. 阻塞调用是指调用结果返回之前,当前线程...