自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 c++面试题--C/C++语言相关

static_cast、const_cast、reinterpret_cast都是发生在编译期间的类型转换dynamic_cast不会在编译期间报错,这个会在运行期间报错。

2024-06-23 22:57:42 287

原创 vpp的运行流程、协程的实现以及node的运行

linuxi++;i++;f2 (env);inti = 0;f1 (&env);return 0;for (i = 0;i++)j = 0;for (i = 0;uword v;intint res;return res;#endif。

2024-06-22 13:10:42 1780

原创 vpp启动load so,注册node,函数init

linux在vpp中所有编译出来的plugin,都是以so动态库的形式存在的。{ \} \{ \} \cli_command_registrations同理也是一个单链表,command的初始化实际上类似于前面的VLIB_INIT_FUNCTION的初始化流程。将一类的、具有相同特色的node放在一起,这里主要表述的是一种逻辑的关系,比如说都需要对数据的IP头进行处理的数据。这里需要注意的是并不是每个node都需要,这里重点强调下只是部分的node需要这种逻辑关系。{ \

2024-06-21 21:25:36 593

原创 vpp插件-flowtable plugin

在vpp终端输入:show vlib graph。

2024-06-21 21:20:49 258

原创 VPP源码-plugin流程

vpp添加插件plugin源代码中添加自定义插件文件夹实现一个打印包头信息的插件,源代码如下:进入到vpp的源码根目录下,输入以下指令:vpp的源码编译成功后,进入到vpp源码根目录运行:

2024-06-14 19:01:56 316

原创 VPP环境部署与VPP命令详解

linuxdpdk 19.08vpp 1801在编译VPP的时候网络环境需要稳定,否则可能会在执行脚本的时候访问域名失败虚拟机的内存最好设置成16g/core,否则可能在运行脚本的时候报内存错误。

2024-06-12 23:43:49 895

原创 熵ddos检测

ddos攻击其实就是一个恶意的进程不断地向服务器程序发送TCP三次握手的第一包数据,最终导致服务器中的TCP半链接状态的包满了。

2024-06-05 23:47:26 423

原创 dpdk dns处理流程

本专栏知识点是通过零声教育的线上课学习,进行梳理总结写下文章,对c/c++课程感兴趣的读者,可以点击链接C/C++后台高级课程介绍 详细查看课程的服务。

2024-06-04 22:54:07 942 1

原创 dpdk kni的内核处理流程

本专栏知识点是通过零声教育的线上课学习,进行梳理总结写下文章,对c/c++课程感兴趣的读者,可以点击链接C/C++后台高级课程介绍 详细查看课程的服务。

2024-05-31 22:37:17 223

原创 dpdk kni的原理与kni的启动

本专栏知识点是通过零声教育的线上课学习,进行梳理总结写下文章,对c/c++linux课程感兴趣的读者,可以点击链接。C/C++后台高级服务器课程介绍 详细查看课程的服务。对网卡多队列的设置、开启混杂模式。

2024-05-27 23:56:32 477

原创 lua基础类型与值

本专栏知识点是通过零声教育的线上课学习,进行梳理总结写下文章,对c/c++linux课程感兴趣的读者,可以点击链接。C当中嵌入lua虚拟机,运行lua语言的代码。通常这种C中嵌入lua的方式比较普遍。a and b or c类似与C语言中的三木运算符a?lua中的逻辑运算符完全符合C语言中逻辑运算符的短路求值原则。C/C++后台高级服务器课程介绍 详细查看课程的服务。这里需要注意的是not返回的是boolean类型的值。

2024-05-25 23:36:59 150

原创 libevent/libev实战那些坑

libevent是一个事件通知库,我们通常需要将它编译成.so动态库或者编译成.a静态库的形式将它引入到我们的项目中来。

2024-05-22 23:05:47 1836

原创 Redis相关命令详解及其原理

如果不使用柔性数组,而是使用char* buffer的话,那么就需要malloc两次(一次是申请struct结构体的内存,还有一次是申请char* buffer的内存);同理释放也需要释放两次柔性数组的优点方便内存的分配及释放(只需要调用一次malloc)减少内存碎片(只需要调用一次malloc)分清楚几个概念:对象类型:抽象的数据结构数据结构、内存存储的结构:落盘的时候写到磁盘的结构内存中的结构:字符串使用的是sds的数据结构来进行存储的size_t sz;*/

2024-05-22 23:01:30 946

原创 grpc基础

resolver是用来解析服务器地址的组件,将主机名解析为IP地址或者其他网络协议中的地址我们通常使用resolver来实现服务发现解决两类问题客户端根据域名或者是服务名获取对端的IP地址,之后就可以建立连接如果对端挂了,那么就需要做到如果感知这一事件并且可以重新建立连接创建resolveFactory接口的实现类实现resolver接口以解析服务器地址注册resolver到channel上。

2024-05-22 22:22:00 814

原创 网络IO模型

网络IO模型

2024-05-04 14:18:38 871

原创 workflow开源框架

workflow开源框架

2024-05-04 14:16:19 1585

原创 UDP的可靠传输协议QUIC

UDP的可靠传输协议QUIC

2024-05-04 14:12:17 761 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除