Linux网络编程
文章平均质量分 79
HryReal
while(!dead) { study(); }
展开
-
Linux网络编程 之 IO复用epoll(十)
1. epoll概述相对于 select() 和 poll() 来说,epoll 更加灵活,没有描述符限制。epoll 使用一个文件描述符管理多个描述符,将用户关系的文件描述符的事件存放到内核的一个事件表中,这样在用户空间和内核空间的 copy 只需一次。2. epoll的接口函数为了在后面更加方便理解epoll的原理,我们先从接口函数开始下手:epoll_create ...原创 2018-07-08 01:11:48 · 250 阅读 · 0 评论 -
Linux网络编程 之 IO多路复用select(八)
1. IO多路复用的概念I/O多路复用是通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。2. select接口#include <sys/select.h>int select( int nfds, fd_set *readfds, fd_set ...原创 2018-07-05 11:47:16 · 455 阅读 · 0 评论 -
Linux网络编程 之 TCP编程(七)
TCP编程的核心步骤和流程: 1. TCP客户端核心函数:创建一个套接字:int socket(int family,int type,int protocol);family: 套接字域type: 套接字类型protocol 套接字协议向服务器发送连接请求: int connect( int sockfd, ...原创 2018-07-05 10:12:18 · 175 阅读 · 0 评论 -
Linux网络编程 之 UDP编程(六)
目录 1. UDP客户端 核心函数 完整的UDP客户端程序 2. UDP服务端 核心函数 完整的UDP客户端程序 3. 总结1. UDP客户端核原创 2018-07-04 21:21:03 · 380 阅读 · 0 评论 -
Linux网络编程 之 广播(五)
目录 1. 广播的定义 2. 广播地址的分类 3. 广播的特点 4. 广播的使用1. 广播的定义所谓的广播,其实就是一台主机向主机所在的所有子网内的所有主机发送数据的方式。2. 广播地址的分类广播地址是一种特殊的IP地址形式,一种是直接广播地址,一种是有限广播地址。受限广播就是255.255.255.255受限广播可以用在计算机不知道自己IP地址的时候,比...原创 2018-07-04 19:17:02 · 313 阅读 · 0 评论 -
Linux网络编程 之 套接字(四)
目录 1. 套接字的定义 2. 套接字的创建方法 3. 套接字的地址本地套接字 网络套接字1. 套接字的定义套接字是一种通信机制(通信的两方的一种约定),凭借这种机制,不同主机之间的进程可以进行通信。我们可以用套接字中的相关函数来完成通信过程。2. 套接字的创建方法#include <sys/socket.h>int socket(int...原创 2018-07-04 19:13:59 · 155 阅读 · 0 评论 -
Linux 网络编程——网络字节序(三)
目录 1. 字节序 2. 网络字节序字节序所谓的字节序,是指多字节数据在内存中的存储顺序,其中有两种方式,大端格式和小端格式。小端格式(Little-Endian):将低位字节数据存储在低地址。大端格式(Big-Endian):将高位字节数据存储在低地址。例如整数0x12345678:网络字节序网络字节序就是网络的数据流在内存中的存储方式,而它的定义是:收...原创 2018-07-04 19:10:39 · 334 阅读 · 0 评论 -
Linux网络编程 之 无连接和有连接通信(二)
目录 1. 无连接和有连接通信的区别 2. 有连接和无连接通信的实现无连接和有连接通信的区别使用无连接协议就像寄信,而使用面向连接的协议就像打电话。无连接协议中的分组被称为数据报(datagram),每个分组都是独立寻址,并由应用程序发送的。从协议的角度来看,每个数据报都是一个独立的实体,与在两个相同的对等实体之间传送的任何其他数据报都没有关系,这就意味着协议很可能是不可靠的。...原创 2018-07-04 19:08:40 · 1082 阅读 · 0 评论 -
Linux网络编程 之 网络协议概述(一)
目录 1. 分层模型 2. 物理层 3. 链路层 4. 网络层 5. 传输层 6. 应用层1. 分层模型 越接近下面的层,越靠近硬件,越上面的层,越接近用户。网络的每一层都定义了许多协议,有个协议的总称,叫做“tcp/ip协议”,不仅仅包括TCP和IP协议,还包括了其他协议。2. 物理层物理层是将电脑连接起来的物理手段,作用就是负责传送0/1的电信号。...原创 2018-07-04 19:05:50 · 613 阅读 · 0 评论 -
Linux网络编程 之 IO多路复用poll(九)
1. poll介绍系统调用的本质一样,poll() 的机制与 select() 类似,与 select() 在本质上没有多大差别,管理多个描述符也是进行轮询,根据描述符的状态进行处理,但是 poll() 没有最大文件描述符数量的限制(但是数量过大后性能也是会下降)。核心函数:#include <poll.h>int poll(struct pollfd *fds, n...原创 2018-07-07 11:56:32 · 427 阅读 · 0 评论