NET

51CTO:Linux C++网络编程五

51CTO:Linux C++网络编程五

bingliaolong 3年前 31 0

平台相关 select 支持:windows 支持:linux,macos,bsd,aix等 poll 支持:linux,macos,bsd等 不支持:一些交旧的或特定的unix操作系统可能不支持poll 不支持:windows不提供标准的poll,但可以通过其他相似的api来达...

网络I/O  介绍

网络I/O 介绍 4

bingliaolong 6年前 29 0

介绍 网络应用需要处理解决的主要可以归为两大类问题: 网络I/O 数据计算 网络I/O的本质是socket的读取,socket在linux系统被抽象为流,I/O可以理解为对流的操作。这个操作又分为两个阶段: 等待流数据准备(wating for the data to be re...

ASIO:学习一

ASIO:学习一

bingliaolong 2个月前 28 0

同步 I/O:服务端 code 同步 I/O:客户端 code 异步I/O:服务端 code 异步I/O:客户端 code 定时器 code 线程池 code strand 概述 io_context::run() 可以被多个线程同时调用(线程池模式)。这时候多个 handler...

51CTO:Linux C++网络编程三

51CTO:Linux C++网络编程三 2

bingliaolong 3年前 28 0

概述 TCP是一种面向连接的协议,提供了可靠、有序和错误检测机制的字节流服务 与无连接的UDP协议相比,TCP强调数据完整性和可靠性 特点 可靠性 TCP确保所有数据包按顺序到达,如果丢失或出错,它们将被重新传输 面向连接 在数据交换之前,通信双方必须建立连接 全双工 一旦连接建...

Windows网络编程二

Windows网络编程二 13

bingliaolong 3个月前 28 0

谁会去读发送缓冲区的数据 概述 是内核,但不是"被动等着读",而是主动触发的 触发时机1 send()调用本身,如果条件允许,会立即尝试发送 很多人以为send()只是"把数据扔进缓冲区,然后就不管了,等内核有空再处理" 实际上,在很多情况...

HTTP协议相关学习一

HTTP协议相关学习一

bingliaolong 1年前 25 0

HTTP1 概述 HTTP/0.9局限性(1989) 仅支持 GET 方法,无状态码、无头部字段,每次请求需重新建立 TCP 连接 HTTP/1.0性能瓶颈(1996) 默认短连接导致频繁三次握手,且无复用机制,造成高延迟和资源浪费 关键需求:降低网络延迟、减少重复头部传输、支持...

Windows网络编程三

Windows网络编程三 12

bingliaolong 3个月前 24 0

DHCP 要解决的问题 如果每台新接入网络的设备,都要人工手动配置IP地址、子网掩码、默认网关、DNS服务器地址,在一个有几百上千台设备的网络里(比如公司、学校),这个工作量会非常大 而且容易出现IP地址冲突(两台设备手动配置了相同的IP) DHCP(Dynamic Host C...

Windows网络编程五

Windows网络编程五

bingliaolong 3个月前 23 0

overlapped i/o 概述 Overlapped I/O 是 Windows 平台特有的异步 I/O 模型,是 Windows 高性能网络编程(尤其是 IOCP)的基础 为什么需要它 同步 I/O(如 Linux 下常见的 recv/send)调用会阻塞线程,直到操作完成...

扫一扫二维码分享
繁