C++网络编程
文章平均质量分 73
socket
BSY丶
这个作者很懒,什么都没留下…
展开
-
网络小结:Epoll_webserver
B/S模型(浏览器 / 服务器)实现一个简单的Web服务器myhttpd。能够给浏览器提供服务,供用户借助浏览器访问服务器主机中的文件。原创 2023-05-12 16:37:49 · 235 阅读 · 0 评论 -
Libevent实现TCP流程
4、使用bufferevent_setcb()给bufferevent对象的read、write、event设置回调。4、回调函数被调用,说明有一个新客户端连接上来。会得到一个新fd(文件描述符),用于跟客户端通信(读、写)其一旦被回调,说明在其内部应该与客户端完成,数据读写操作,进行通信。该回调函数,不由我们调用,是框架自动调用。创建一个新的bufferevent事件,将fd封装到这个事件对象中。给这个事件对象的read、write、event设置回调。的回调函数中,处理接受连接后的操作。原创 2023-05-08 15:55:51 · 967 阅读 · 0 评论 -
Libevent 简述
是一个。适用于windows、linux、bsd等多种平台(),内部使用select、epoll、kqueue等系统调用管理事件机制。著名分布式缓存软件memcached也是libevent based,而且libevent在使用上可以做到,而且根据libevent官方网站上公布的数据统计,似乎也有着非凡的性能。原创 2023-05-06 17:49:42 · 952 阅读 · 0 评论 -
OSI vs TCP/IP
物、数、网、传、会、表、应网(链路层/网络接口层)、网、传、应应用层:HTTP、FTP、NFS、SSH、TELNET。。。网络层:IP、ICMP、IGMP链路层:以太网帧协议、ARP主要定义物理设备标准,如双绞线,光纤(传输介质),将模拟信号转换为数字信号数据校验,定义了网络传输的基本单位——帧定义网络,两台机器之间传输的路径选择点到点的传输传输数据UDP,TCP,端到端的传输通过传输层建立数据传输的通道编解码,翻译工作。原创 2023-04-21 10:31:00 · 38 阅读 · 0 评论 -
多路I/O转接服务器
系统调用selectpollepoll事件集合用户通过3个参数分别传入感兴趣的可读、可写及异常事件,内核通过对这些参数的在线修改来反馈其中的就绪事件。这使得用户每次调用select都要重置这3个参数统一处理所有事件类型,因此只需一个事件集参数。用户通过pollfd.events传入感兴趣的事件,内核通过修改pollfd.revents反馈其中就绪的事件内核通过一个事件表直接管理用户感兴趣的所有事件。原创 2023-05-15 22:22:12 · 263 阅读 · 0 评论 -
Socket编程
在TCP/IP协议中,“IP地址+TCP或UDP端口号”唯一标识网络通讯中的一个进程。“IP地址+端口号”就对应一个socket。预建立连接的两个进程各自有一个socket来标识,那么这两个socket组成的socket pair就唯一标识一个连接。因此可以用Socket来描述网络连接的一对一关系。一端的发送缓冲区对应对端的接收缓冲区。我们使用同一文件描述符指向一个套接字(原创 2023-04-21 17:03:52 · 41 阅读 · 0 评论 -
Socket常用函数及简单实现C/S模型
阻塞等待客户建立连接,成功的话,返回一个与客户端成功连接的socket文件描述符。listen():设置监听上限,同时建立连接的上限数。设置同时与服务器建立连接的上限数。(同时进行3次握手的客户端数量)connect():客户端绑定ip+port。accpet():阻塞监听客户端连接。使用现有的socket与服务器建立连接。注:bind()绑定ip+port。给socket绑定一个地址结构(socket实现server端。socket实现client端。原创 2023-04-21 22:12:54 · 408 阅读 · 0 评论 -
UDP以及实现C/S
TCP:面向连接的,可靠传输对于不稳定的网络层,采取完全弥补的通信方式。丢包重传。优点:稳定。--- 数据流量稳定、速度稳定、传输数据包的顺序稳定缺点:传输速度慢、效率低、系统资源开销大使用场景:数据的完整性要求较高,不追求效率、UDP:无连接的,不可靠的传输对于不稳定的网络层,采取完全不弥补的通信方式。默认还原网络状况优点:传输速度快、效率高、系统资源开销小缺点:不稳定。--- 数据流量、速度不稳定。尤其是传输数据包的顺序不稳定使用场景:对时效性要求较高场合、稳定性其次。原创 2023-05-04 16:31:31 · 97 阅读 · 0 评论 -
线程池模型
根据DEFAULT_TIME循环执行一次,根据既定算法,判断是否应该创建、销毁线程池中 指定步长的线程。原创 2023-04-30 21:38:54 · 90 阅读 · 0 评论 -
本地套接字与网络套接字的区别
从文件系统中删除一个名称。如果名称是文件的最后一个连接,并且没有其它进程将文件打开,名称对应的文件会实际被删除。在本地套接字bind中地址结构由。原创 2023-05-04 21:16:10 · 188 阅读 · 0 评论