计算机网络
文章平均质量分 79
反转180度
大家一起学习计算机
展开
-
epoll模式简单介绍与使用
前言epoll作为Linux特有的IO多路复用的模型,是select/poll的改进版,用于监控大量的文件描述符。另一个特点是,epoll全程为event poll,即该接口是基于事件触发的,它无须遍历整个被侦听的描述符集,只要遍历那些被内核IO事件异步唤醒而加入Ready队列的描述符集合就行了。函数介绍创建epoll监控树根节点句柄/*创建一个epoll的句柄。size为epoll所...原创 2019-10-27 23:12:09 · 620 阅读 · 0 评论 -
基于多线程多客户端连接的TCP模型
前言前面已经写了一篇简单的TCP模型,用于单线程单客户端链接,这种效率最高,但是适用场景也是最小的。今天再测试一番简单的多线程多客户端连接的TCP模型。== 这种模型目前也不常见,因为已经有很多的IO复用模型了 ==。但是基于对循序渐进的尊重,我依旧对这个模型进行了一次实验。服务端主线程中循环调用accept函数接收新的连接,每收到一个连接之后开启一个接收线程接收对端的发送;可以进行注册回...原创 2019-10-20 10:53:10 · 296 阅读 · 0 评论 -
简单单线程TCP Socket模型
开头本篇文章为基础的socket编程模型,单线程单连接收发1 函数解析socket/* Create a new socket of type TYPE in domain DOMAIN, using protocol PROTOCOL. If PROTOCOL is zero, one is chosen automatically. Returns a file de...原创 2019-10-12 16:40:43 · 269 阅读 · 0 评论 -
ICMP 协议用于ping 网络状态的原理与实现
ICMP协议简介: ICMP协议是TCP/IP 族的一个子协议,属于网络层协议。全称:Internet Control Message Protocol。(网络控制消息协议)。ICMP协议是一种面向无连接的协议,用于传输出错报告控制信息。用于检测网络存活状态。 使用: 1、用于主机扫描技术:ICMP Echo扫描技术 实现原理:ICMP的ping机制在判断主机是否开机在线非常有效。向目标主...转载 2018-08-07 19:57:10 · 1592 阅读 · 0 评论 -
I/O多路复用之select:多用户聊天室学习与开发
前言: 开发windows多用户聊天室的前提: 1、了解网络编程的基本步骤 2、了解阻塞非阻塞,同步异步概念 3、了解select模型的原理与使用实现功能: 1、新用户上线,将提醒所有在线用户; 2、用户下线,提醒在线用户 3、实现群聊,一个用户发送的消息要转发给所有用户 4、跨平台功能,能够同时在windows与linux下运行select模型 select的功能原理:...原创 2018-08-15 23:15:13 · 938 阅读 · 0 评论 -
使用winpcap开发网络抓包工具
前言: winpcap(windows packet capture)是windows平台下一个免费,公共的网络访问系统。开发winpcap这个项目的目的在于为win32应用程序提供访问网络底层的能力。它用于windows系统下的直接的网络编程。进行过网络方面学习的都知道,wireshark软件是基于winpcap的,winpcap可直接开发基于网络底层协议的应用程序,例如arp...原创 2018-08-22 22:43:24 · 5981 阅读 · 1 评论