随笔分类 - Linux编程
网络编程、进程、线程等回顾
摘要:转载自:https://blog.csdn.net/luckyapple1028/article/details/51232582#t6 代码路径:https://github.com/luckyapple1028/demo-genetlink 前一篇博文中分析了Generic Netlink的消息
阅读全文
摘要:一:Generic Netlink介绍 Generic Netlink 是内核专门为了扩展netlink协议簇而设计的“通用netlink协议簇”。 由于netlink协议最多支持32个协议簇,目前Linux4.1的内核中已经使用其中21个,对于用户需要定制特殊的协议类型略显不够,而且用户还需自行在
阅读全文
摘要:一:netlink通信数据结构 (一)netlink消息报头:struct nlmsghdr struct nlmsghdr { __u32 nlmsg_len; /* Length of message including header */ __u16 nlmsg_type; /* Messag
阅读全文
摘要:转载自:Netlink 内核实现分析(一):创建 一:Netlink基础概念 Netlink 是一种IPC(Inter Process Commumicate)机制,它是一种用于内核与用户空间通信的机制,同时它也以用于进程间通信(Netlink 更多用于内核通信,进程之间通信更多使用Unix域套接字
阅读全文
摘要:参考自: http://blog.chinaunix.net/uid-28541347-id-5578403.html https://blog.csdn.net/jasenwan88/article/details/7365060 https://www.cnblogs.com/oracleloy
阅读全文
摘要:一:libevent的编译安装 (一)下载地址 https://libevent.org/ (二)编译安装 ./configure --prefix=/usr/local/libevent sudo make && sudo make install 二:libevent基础知识学习 (一)重要函数
阅读全文
摘要:基于传输层TCP协议,自定义实现一个应用层协议 一:回顾JsonCpp C++通过JsonCpp读取Json文件 网络编程字节序转换问题 二:实现自定义应用层 (一)协议分类 1.按编码方式 二进制协议:比如网络通信运输层中的tcp协议。 明文的文本协议:比如应用层的http、redis协议。 混合
阅读全文
摘要:一:大小端 (一)大小端区别(字节) 区别是依据:计算机系统在存储数据时起始地址是高地址还是低地址。 小端:从低地址开始存储 大端:从高地址开始存储 补充:这里大小端是按字节区别的,还有按字的。按字节,则字节大小数据不会改变数据格式,所以如上图中小端“1”,和大端“1”是一样存储的 补充:在内存中存
阅读全文
摘要:一:linux下实现UDP通信 二:实验目的 (一)在IP头部“选项”字段如何添加自定义的信息,作为自定义的匹配字段用 例如对UDP报文添加一个序列号,使得接收方按照序列进行一定操作。则需要在IP的包头选项字段中进行自定义字段 (二)实现思路 1.修改Linux网络源码 目前有点困难 2.利用现有的
阅读全文
摘要:一:实验简介 (一)功能实现 除了实现简单UDP通信外,还实现了:UDP客户端使用指定端口与服务器通信 (二)知识回顾 一个IP+端口可以唯一确定主机的一个socket对象,通过该socket实例,我们可以进行数据发送和接收 (三)实验对比(普通网络通信) 这里用TCP(主要是了解bind函数) 面
阅读全文

浙公网安备 33010602011771号