网络
文章平均质量分 93
网络
TravisBytes
这个作者很懒,什么都没留下…
展开
-
高效异步:io_uring 技术解析
io_uring是 Linux 内核中的一种高效异步 I/O 框架,于 Linux 5.1 版本引入,旨在提高大规模并发 I/O 操作的性能。与传统的异步 I/O 接口(如epollselectpoll)相比,io_uring提供了更低的延迟和更高的吞吐量。原创 2024-08-29 10:59:30 · 1174 阅读 · 1 评论 -
深入剖析IOCP:从原理到实践
IOCP(Input/Output Completion Ports,输入/输出完成端口)是Windows操作系统中一种用于处理高效异步I/O操作的机制。它广泛应用于服务器端应用程序,如Web服务器和数据库服务器,能够有效处理大量的并发I/O请求。原创 2024-08-26 09:55:18 · 1337 阅读 · 0 评论 -
超越内核:DPDK与用户态Epoll
用户态 epoll 的实现,使用红黑树来管理事件和套接字。主要定义了事件类型、控制命令、数据结构和红黑树的相关操作。事件类型: 定义了多种 I/O 事件类型,包括输入、输出、紧急数据、错误和挂起等。EPOLLONESHOT 和 EPOLLET: 分别代表了“一次性”事件和“边缘触发”模式的标志位。原创 2024-08-22 14:07:47 · 937 阅读 · 0 评论 -
探索DPDK:实现UDP接收与发送
然后,使用 rte_eth_dev_configure() 函数和之前定义的端口配置 port_conf_default 来配置全局变量 global_portid 指定的端口。如果没有可用的端口,函数会调用 rte_exit(),打印错误信息并退出程序。这里它指定队列索引为0,描述符数量为128,使用从 rte_eth_dev_socket_id() 获取的NUMA节点。调用rte_eth_dev_configure来设置端口参数,以及调用rte_eth_rx_queue_setup来设置接收队列。原创 2024-08-13 15:30:59 · 775 阅读 · 0 评论 -
C 语言的协程探秘
库提供了一套功能丰富的 API,用于管理程序的执行上下文。这些功能主要用于实现用户空间的轻量级线程(协程),允许程序在多个执行流之间进行显式的上下文切换。虽然这些功能在新的 POSIX 标准中已被废弃,但它们在一些老系统和特定应用中仍然非常有用。在协程和主控制流之间来回切换,展示了基本的协程调度。原创 2024-08-04 16:23:08 · 509 阅读 · 0 评论 -
网络脉搏:UDP与TCP解码
UDP(用户数据报协议)和 TCP(传输控制协议)都是互联网协议套件中的核心传输层协议,它们各自有不同的特点和应用场景。原创 2024-07-31 22:36:43 · 1040 阅读 · 0 评论 -
网络编程的基石:POSIX API 与协议栈
标识套接字。包含套接字相关的信息,包括指向 TCB 的指针。存储连接状态、IP地址、端口号等关键信息。bind() 函数通过文件描述符查找套接字结构,然后将IP地址和端口号设置进去,最终在TCB中反映这些信息。这确保了在TCP连接建立和数据传输过程中使用正确的地址和端口。listen() 函数:将套接字的状态设置为 LISTEN,并创建一个连接请求队列。传输控制块(TCB):在调用 listen() 时,TCB 中的状态字段被更新为 LISTEN,表示该套接字正在监听传入的连接请求。原创 2024-07-30 23:42:20 · 1084 阅读 · 0 评论 -
并发之巅:事件驱动Reactor在高性能服务器的应用
Reactor 模式是一种事件驱动的设计模式,它通过管理事件而非管理 IO 操作来响应多个输入/输出请求。在这种模式中,应用程序不需要持续监控或直接处理 IO 操作,而是关注于发生的事件及其响应。这种方式使得应用程序能够高效地管理多个并发的输入/输出源,通过非阻塞的方式提高了系统整体的性能和响应能力。原创 2024-07-28 14:35:52 · 318 阅读 · 0 评论 -
高效网络I/O的秘诀:探索Select、Poll和Epoll的力量
网络I/O指的是在网络编程中,数据在网络中的输入与输出过程,主要涉及到数据的发送与接收。在Linux系统中,有几种常用的I/O模型,包括阻塞I/O、非阻塞I/O、I/O复用、信号驱动I/O和异步I/O。其中,I/O复用是非常关键的一种技术,它允许单个线程同时监视多个文件描述符,以检查一个或多个文件描述符是否就绪(即它们是否已准备好进行非阻塞性读或写操作)。 是最初UNIX系统支持的I/O多路复用接口。它允许程序监视多个文件描述符,等待直到一个或多个文件描述符就绪(可读、可写或异常),或者直到超时。优点:缺点原创 2024-07-25 17:04:33 · 1117 阅读 · 0 评论