网络编程
文章平均质量分 84
以实战为基础,学习网路编程
djykkkkkk
这个作者很懒,什么都没留下…
展开
-
json for modern c++
或者(Linux命令行安装)原创 2024-01-19 14:33:07 · 410 阅读 · 0 评论 -
I/O 多路复用
poll函数是对select函数的改进,它也可以同时监视多个文件描述符的状态变化,但解决了select函数的一些限制,如没有最大文件描述符数量的限制。是一种并发编程模型,通过同时监听多个I/O事件,实现对多个I/O操作的管理和处理。:对于每个已经就绪的文件描述符,采用非阻塞I/O方式进行读写操作,以避免阻塞其他文件描述符的处理。不支持高精度超时:select的超时粒度通常是秒级的,不适合需要高精度定时的应用程序。通过合理的使用I/O多路复用,可以实现高效的并发I/O编程,提高系统的性能和可扩展性。原创 2023-09-06 08:27:34 · 92 阅读 · 0 评论 -
day-08 基于Linux的网络编程(套接字和标准I/O、分离I/O流、epoll、多线程服务器)
标准I/O函数(stdio)是在C语言中用于进行输入和输出操作的库函数。它们包括了一组标准的输入和输出函数,如printf、scanf、fopen、fclose等。标准I/O函数具有以下优点:简单易用:标准I/O函数提供了简洁的接口,使得输入和输出操作变得简单易用。开发人员无需自行处理底层的文件或设备操作,而是直接使用高级的函数调用来完成输入和输出任务。跨平台性:标准I/O函数是C语言的标准库函数,在不同的操作系统上都可以使用。这意味着编写的代码可以在不同的平台上进行移植,而无需对底层的操作系统接口进行修改原创 2023-09-04 16:39:22 · 568 阅读 · 0 评论 -
day-07 I/O 复用(select)- 多种 I/O 函数 - 多播和广播
复用技术指为了提高物理设备的效率,用最少的物理要素传递最多数据时使用的技术。同样,I/O复用是指将需要I/O的套接字捆绑在一起,利用最少限度的资源来收发数据的技术。readv&writev函数可以将分散保存在多个缓冲中的数据一并接受和发送,是对数据进行整合传输及发送的函数,因此可以进行更有效的数据传输。而且,输入输出函数的调用次数也相应减少,也会产生相应的优势。同时设置MSG_PEEK选项和MSG_DONTWAIT选项,以验证输入缓冲是否存在可接收的数据。原创 2023-09-03 17:13:18 · 451 阅读 · 0 评论 -
day-06 多进程服务器端 -- 进程间通信
概括性地说,进程间通信是指两个进程之间交换数据。但是从内存的角度看,可以理解为两个进程共有内存。因为共享的内存区域存在,可以进行数据交换。原创 2023-08-31 17:23:56 · 473 阅读 · 0 评论 -
day-05 TCP半关闭 ----- DNS ----- 套接字的选项
TCP的流是指,两台主机通过套接字建立连接后进入可交换数据的状态,也可称为”流形成的状态“。而对于UDP来说,不存在流,因为两个SOCKET不能相互连接。单方面的断开连接意味着套接字无法再发送数据。一般在对方有剩余数据未发送完成时,断开己方连接,会造成问题。半关闭是指只完成输入和输出流中的一个。而且,如果对输出流进行半关闭,EOF无法被传送到对方主机,己方套接字无法传送数据,但可以接收对方主机传送的数据。域名(Domain Name)是互联网上用于标识和定位网站、服务器或其他网络设备的字符串。原创 2023-08-30 16:37:37 · 871 阅读 · 0 评论 -
day-04 基于UDP的服务器端/客户端
UDP和TCP不同,不进行流量控制。由于该控制涉及到套接字的连接和结束,以及整个数据收发过程,因此,TCP传输的数据是可以信赖的。相反,UDP不进行这种控制,因此无法信任数据的传输,但正因UDP不进行流量传输,所以比TCP更快。原创 2023-08-29 20:02:09 · 609 阅读 · 0 评论 -
day-03 基于TCP的服务器端/客户端
1.主要是回声服务器的Linux实现 2.应用层协议设计(简单的加减乘) 3.TCP原理原创 2023-08-27 22:35:13 · 984 阅读 · 0 评论 -
TCP之超时重传、流量控制和拥塞控制
超时重传 流量控制 拥塞控制原创 2023-08-27 21:56:55 · 1320 阅读 · 0 评论 -
day-02 套接字类型与协议设置、地址族和数据序列
一.套接字类型 二.地址信息的表示 三.网络字节序和地址变换 四.概念总结原创 2023-08-23 22:22:51 · 227 阅读 · 0 评论 -
day-01 网络编程和套接字
底层文件 I/O 函数与 ANSI 标准定义的文件 I/O 函数之间存在一些区别。底层文件 I/O 函数:底层文件 I/O 函数(如read和write)通常是无缓冲的,数据直接从磁盘或设备读取到用户空间或写入到磁盘或设备。ANSI 标准定义的文件 I/O 函数:ANSI 标准定义的文件 I/O 函数(如fread和fwrite)通常是有缓冲的,数据首先被读取到一个内部缓冲区或从缓冲区写入磁盘。底层文件 I/O 函数:底层文件 I/O 函数直接操作文件描述符或句柄,使用整数值来表示文件。原创 2023-08-23 22:09:00 · 104 阅读 · 0 评论