随笔分类 -  C++ / 网络编程

零拷贝
摘要:目录简介实现零拷贝的方式1.sendfile2.splice3.mmap+write 简介 零拷贝技术主要是为了提高读写性能。 实现零拷贝的方式 1.sendfile Linux提供了一个系统调用sendfile,用于在内核中完成从一个文件描述符到另一个文件描述符数据的拷贝。其函数原型如下所示: # 阅读全文
posted @ 2024-05-11 23:56 scrutiny-span 阅读(15) 评论(0) 推荐(0) 编辑
FD_CLOEXEC、SOCK_CLOEXEC、O_CLOEXEC标志
摘要:目录FD_CLOEXEC标记FD_CLOEXEC标记的设置 FD_CLOEXEC标记 FD_CLOEXEC:这是个文件描述符标记,其值为1。 #define FD_CLOEXEC 1 这个标记的含义是:如果对文件描述符设置了FD_CLOEXEC标记,则在使用fork创建子进程后,父进程中打开的文件描 阅读全文
posted @ 2024-05-11 11:20 scrutiny-span 阅读(185) 评论(0) 推荐(1) 编辑
IO多路复用机制的支持
摘要:event-internal.h中定义了eventop结构体,每一种IO多路复用机制都会实现eventop结构体中的五个方法。 struct eventop { const char* name; void* (*init)(struct event_base*); int (*add)(void* 阅读全文
posted @ 2024-05-09 01:38 scrutiny-span 阅读(9) 评论(0) 推荐(0) 编辑
Linux网络编程细节点
摘要:目录将套接字设置为非阻塞的1.使用socket函数创建的套接字,将其设置为非阻塞的2.服务端开发中,将用于通信的套接字设置为非阻塞的实现字节序转换函数1.字节序2.字节序的判断3.字节序转换非阻塞的connect常见的socket选项bind函数listen函数服务端如何保证在关闭连接前将数据包发送 阅读全文
posted @ 2024-05-06 00:07 scrutiny-span 阅读(17) 评论(0) 推荐(0) 编辑
IO多路复用
摘要:目录IO多路复用之selectIO多路复用之pollIO多路复用之epoll模型1.epoll模型相关函数2.epoll的两种工作模式3.两种工作模式的区别4.epoll模型收发数据的正确姿势5.epoll模型一定比select、poll高效吗 IO多路复用是一种网络通信的手段,通过这种方式可以同时 阅读全文
posted @ 2024-05-05 12:07 scrutiny-span 阅读(19) 评论(0) 推荐(0) 编辑
Linux平台下的套接字编程基础
摘要:目录IP和端口网络协议字节序sockaddr/sockaddr_in结构体常用的套接字函数半关闭IO多路复用 IP和端口 IP:全称是Internet Protocol。本质是一个整数,用于表示计算机在网络中的地址。IP协议版本有两个:分别是IPV4和IPV6。IP地址用于定位网络上的主机 IPV4 阅读全文
posted @ 2024-05-05 12:05 scrutiny-span 阅读(35) 评论(0) 推荐(0) 编辑

 
点击右上角即可分享
微信分享提示