7 轻飘风扬

尚未进行身份认证

有较强的团队合作精神,学习能力较强,善于学习新技术,为人乐观积极做事有耐心,能够在较强的压力下工作,有较强的适应能力,真诚温和,做事踏实,有较强的动手能力

等级
TA的排名 1k+

vpp--arc_feature学习以ipv4单播为例

1、featurearc及feature注册vnet\ipIp4_forward.cfeaturearc及feature的main函数启动前的注册宏featurearc注册VNET_FEATURE_ARC_INIT将注册featurearc,主要初始化feature类的名称、起始及结束node名字及arc_index的指针。会以链表形式挂接到全局变...

2019-11-12 09:38:34

VPP 创建自己的work线程

1 创建自己的核绑定线程1.1 线程启动流程以worker线程为例,介绍线程启动流程:1.1.1 线程注册:VLIB_REGISTER_THREAD线程注册宏注册到全局vlib_thread_main_tvlib_thread_main->next链表上。typedefstructvlib_thread_registration_{/*constructorg...

2019-11-07 13:03:02

搭建lxr搭建自己的代码检索网站

linxu下阅读内核源代码,通常都使用vim+ctags或者lxr进行,我个人比较倾向于lxr,因为lxr提供了良好的界面,函数和定义都使用超链接标记出来,可以很方便的跟踪到函数内部去查看详细或者查看数据结构的定义等。网上有现成的网站提供了这样的服务,如果你只是偶尔看看内核源代码的话,其实直接登录某些提供这样服务的网站就差不多了,比如LXR,这个网站提供的体验相当不错,我以前就是经常在这个...

2019-10-17 09:55:58

DPDK&VPP关键技术文档总结。

1、DPDK流量管理API使用指南–TM2、为不同的Intel平台交叉编译DPDK;链接二3、DPDK数据包捕获框架4、DPDK中的memcpy性能优化及思考

2019-09-21 10:07:19

redis 代码阅读开端

redis代码下载git方式(网址)gitclonehttps://github.com/microsoftarchive/redis.git阅读流程参考链接:https://www.jianshu.com/p/a1b4bb67c80f

2019-07-19 09:49:00

linux下overcommit_memory的问题

背景公司的redis有时backgroundsavedb不成功,通过log发现下面的告警,很可能由它引起的:[13223]17Mar13:18:02.207#WARNINGovercommit_memoryissetto0!Backgroundsavemayfailunderlowmemorycondition.Tofixthisissuea...

2019-07-18 11:28:28

Linux系统管理员应该知道的journalctl知识

在Systemd出现之前,Linux系统及各应用的日志都是分别管理的,Systemd开始统一管理了所有Unit的启动日志,这样带来的好处就是可以只用一个journalctl命令,查看所有内核和应用的日志。基础用法1.1查看所有日志(默认显示本次启动的所有日志)[root@devops-101~]#journalctl查看本次启动的所有日志也可以使用[root@devops-...

2019-07-18 11:25:18

VPP和Linux内核协议栈通信的方法

背景介绍基于VPP开发一款网络设备,除使用VPP框架实现端口数据报文转发外,还需要对设备进行配置和管理,比较常用的是要实现ssh、web等相关服务,另外,由于VPP并未实现dhcpserver的功能,控制面可能还需移植isc-dhcp类似的dhcpserver。相关的用户态程序是基于Linux内核的socket来收发包的,因此,需要实现VPP和Linux内核协议栈通信的方法,可以将访问控制面...

2019-05-18 15:13:15

Centos 7.4 设置共享文件夹

VMwareTools工具安装1.VMwareWorkstation菜单栏中,选择“虚拟机”,”安装VMwareTools…“。2.挂载VMwareTools安装程序到/mnt/cdrom/。mkdir/mnt/cdrommount/dev/cdrom/mnt/cdrom看到…mountingread-only,表示挂载成功。3.解压安装VMwareTools。...

2019-04-08 09:19:35

ipv6入ipv4报文格式

ipv6入ipv4隧道报文格式

2019-03-06 09:32:28

Vim 插件安装

vim及插件安装

2018-12-16 22:48:22

Centos7 安装Vpp 及一些学习资料。

首先VMware虚拟机按照Centos7以上版本,以下是遇到的一些问题和安装桌面版本。1、从centos官网下载DVD安装包https://www.centos.org/download/2、虚拟机按照Centos7–这个比较简单就不说了。3、安装完后发现无网络和yumupdate都会报错,参考下面链接设置后,yumupdate就可以使用了。https://www.cnblogs.c...

2018-12-02 14:30:17

Vpp源码分析之 vec_len 宏的理解

在VPP代码中我们经常遇到地方使用vec_len的宏,但是不确定为什么就可以这样使用。自己在环境上调试了一下,就理解了。/*************************************************************************>FileName:test.c>Author:jinshaohui>Mail:...

2018-11-20 20:00:37

数据结构与算法学习--二叉树及二叉搜索树

可以看下以前对数的总结https://blog.csdn.net/sjin_1314/article/details/8507490下面是二叉树的遍历,创建及销毁的函数实现,层次遍历依赖队列;队列实现可以去github上查看https://github.com/jin13417/algo/tree/master/c-cpp/23_binarytree/tree/***************...

2018-11-14 11:56:12

利用linux的mtrace命令定位内存泄露(Memory Leak)

1、安装mtrace工具centos:sudoyuminstallglibc-utils2、mtrace工具使用/*************************************************************************>FileName:mtrace.c>Author:jinshaohui>Mai...

2018-11-09 14:06:38

数据结构与算法学习--哈希

一、散列表的由来1.散列表来源于数组,它借助散列函数对数组这种数据结构进行扩展,利用的是数组支持按照下标随机访问元素的特性。2.需要存储在散列表中的数据我们称为键,将键转化为数组下标的方法称为散列函数,散列函数的计算结果称为散列值。3.将数据存储在散列值对应的数组下标位置。二、如何设计散列函数?总结3点设计散列函数的基本要求1.散列函数计算得到的散列值是一个非负整数。2.若key1=...

2018-11-08 22:03:23

数据结构与算法学习--跳表

跳表SkipList是一种随机化的数据结构,基于并联的链表,其效率可比拟于二叉查找树(对于大多数操作需要O(logn)平均时间)。基本上,跳跃列表是对有序的链表增加上附加的前进链接,增加是以随机化的方式进行的,所以在列表中的查找可以快速的跳过部分列表(因此得名)。所有操作都以对数随机化的时间进行。SkipList可以很好解决有序链表查找特定值的困难。跳表的定义及如何构造跳表构造一个有序...

2018-11-04 23:13:29

数据结构与算法学习--二分查找

二分查找(BinarySearch)算法,也叫折半查找算法。二分查找针对的时一个有序的数据集合,查找思想有点类似于分治。每次都是通过和区间的中间元素进行比较,将待查区缩小为原来的一半,直到将元素找到或者区间缩小为0。我们可以通过2种方式实现:递归和非递归/*********************************************************************...

2018-11-02 11:04:45

数据结构与算法学习--排序总结

排序算法已经学习完了,但是在项目开发过程中如果去选择一个高效的排序算法;下面是对前面几种算法的总结。如何实现一个通用的、高效率的排序函数线性排序算法(计数、桶、计数排序)的时间复杂度比较低,但是适用的场景也比较特殊。如果针对小规模的数据进行排序,可以选择时间复杂度0(n^2)的算法;如果针对大规模的排序,时间复杂度0(nlogn)的算法更加高效。所以为了兼顾任意规模数据的排序,一般都会首选时...

2018-10-31 16:25:50

数据结构与算法学习--排序(桶排序,计数排序,基数排序)

基数排序和计数排序可以参照链接桶排序:桶排序(Bucketsort)或所谓的箱排序,是一个排序算法,工作的原理是将阵列分到有限数量的桶子里。每个桶子再个别排序(有可能再使用别的排序算法或是以递回方式继续使用桶排序进行排序)。桶排序是鸽巢排序的一种归纳结果。当要被排序的阵列内的数值是均匀分配的时候,桶排序使用线性时间(Θ(n))。但桶排序并不是比较排序,他不受到O(nlogn)下限...

2018-10-30 22:31:11

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。