上一页 1 2 3 4 5 6 ··· 12 下一页

[dpdk] rte_flow

摘要: 以下内容直接来自官网文档的整理。 更精准的描述请阅读文档:https://doc.dpdk.org/guides/prog_guide/rte_flow.html 一 rte_flow是干嘛的 一组用来创建自定义规则的api,该规则可以改变网络流量的命运,以及查询计数。 二 规则啥样 1 match 阅读全文
posted @ 2024-04-19 20:32 toong 阅读(278) 评论(0) 推荐(0) 编辑

linux文件被谁删除了

摘要: 如果你也有如标题所属的困扰。可以尝试一下linux audit功能。 1 是否能用 1.1 这个功能需要内核启用,要编译时打开了如下图所示的选项 1.2 启动内核的时候,也不能是关着的。(红框这行不能有) 1.3 服务是不是开着的 (下图就是内核选项没开时候的提示) systemctl status 阅读全文
posted @ 2024-04-19 14:51 toong 阅读(221) 评论(0) 推荐(0) 编辑

perf/systemtap在线调试简明用法

摘要: perf 实时观察指定CPU perf top -C 8 --call-graph dwarf,4096 -r 30 -K 先记录到文件,在通过文件做事后分析 perf record -C 8-25 --call-graph dwarf,4096 perf report -i perf.data - 阅读全文
posted @ 2024-04-18 18:55 toong 阅读(61) 评论(0) 推荐(0) 编辑

asan/gpreftools内存调试简明用法

摘要: 启用高版本gcc yum install centos-release-scl yum install devtoolset-11-gcc yum install devtoolset-11-gcc-c++ yum install devtoolset-11-libasan-devel source 阅读全文
posted @ 2024-04-18 12:27 toong 阅读(85) 评论(0) 推荐(0) 编辑

[kernel]Linux怎么启动

摘要: old Linux(0.12)的引导直接通过BIOS,没有bootloader,跟newlinux(>2.6)不太一样。 new的用bootloader。 更new的用uefi了。 old 见这本书 <<linux内核完全注释>>https://download.oldlinux.org/CLK-5 阅读全文
posted @ 2024-04-09 17:25 toong 阅读(20) 评论(0) 推荐(0) 编辑

转:边沿触发和电平触发的区别

摘要: https://www.cnblogs.com/isAndyWu/p/9917570.html 边沿触发和电平触发的区别 当然不一样了电平触发是在高或低电平保持的时间内触发,而边沿触发是由高到低或由低到高这一瞬间触发追问:我总觉得都是在电平为某一值是而触发的。那边沿触发到底解决了电平触发哪点没有解决 阅读全文
posted @ 2024-04-07 16:45 toong 阅读(87) 评论(0) 推荐(0) 编辑

dpdk编译-meson版

摘要: 1 依赖python3的elftools,没有的话可以这样装 python3 -m pip install pyelftools 2 在dpdk根目录,使用命令 meson setup -Dprefix=/home/tong/Code/dpdk-21.11.4/dest/ -Ddefault_lib 阅读全文
posted @ 2023-11-27 14:35 toong 阅读(886) 评论(0) 推荐(0) 编辑

emacs在目录里查找字符串

摘要: 1. 输入命令 M-x rgrep 2. 提示要查找的字符串,请输入 Search for (default "xxx_abab") : 3. 提示被查找文件的正则条件,请输入 Search for "xxx_abab" in files (default *.[ch]) : 4. 提示被查找的目录 阅读全文
posted @ 2023-11-24 11:06 toong 阅读(35) 评论(0) 推荐(0) 编辑

大量client通过nat网关访问server的端口重用问题

摘要: 大量client共享一个nat ip访问server时。由于nat为了快速回收端口而设置的timewait timeout时间很短, 短于server的timeout。这个时候会有重新复用了端口的包达到server的timewait状态的连接上,导致client无法访问。 可以用以下配置,让serv 阅读全文
posted @ 2023-10-08 15:37 toong 阅读(92) 评论(0) 推荐(0) 编辑

emacs查找光标处单词

摘要: 按下 C-s C-w 搜索光标处的单词(此时应该是“mail”). 让我们再试试按下 C-s C-w C-w 会发现可以搜索光标处的多个单词. 按下 C-s C-M-y 则表示搜索光标处的字符. 类似的,按下 C-M-y C-M-y 会将接下来的两个字符也纳入搜索字符串中. 按下 C-M-w 会删除 阅读全文
posted @ 2023-09-12 19:45 toong 阅读(43) 评论(0) 推荐(0) 编辑

sed合并两个相邻行

摘要: 命令: head tmp.txt |sed '/vni 7804$/{N;s/\n//}' 例子: [root@A dada]# head tmp.txt10:41:04.320892 IP 238.65.57.64323 > 238.65.25.4789: VXLAN, flags [I] (0x 阅读全文
posted @ 2022-11-25 11:27 toong 阅读(83) 评论(0) 推荐(0) 编辑

/etc/sysconf/network-scripts/ifcfg-eth0的手册到底在哪里

摘要: 虽然有个NetworkManager,但是network.service的清晰简洁依然让人无法拒绝。 不过它的配置手册和manuel藏得比较隐晦,在这里: /usr/share/doc/initscripts-9.49.39/sysconfig.txt 我是怎么找到它的: 用service找到了它的 阅读全文
posted @ 2021-11-08 19:55 toong 阅读(180) 评论(0) 推荐(0) 编辑

awk使用[]进行分隔

摘要: 要转义两次,字符串解析转义一次,正则表达式转义一次。 awk -F '[\\[\\]]' '{ print $2}' awk 'BEGIN { FS="[\\[\\]]" } { print $2}' 阅读全文
posted @ 2021-09-28 14:15 toong 阅读(94) 评论(0) 推荐(0) 编辑

使用grub支持mbr启动memtest86

摘要: 0 序言 好吧,已经9012年了。谁还mbr启动? memtest86+就是那个内存检测工具。电脑用时间长了,内存坏了是必然的。这个时候我们需要memtest一下,把坏掉的那一根失败处理,拔下来丢掉。 但是很遗憾,无论是memtest86还是memtest86+,他们提供的iso,都不支持mbr启动 阅读全文
posted @ 2021-09-20 15:37 toong 阅读(499) 评论(0) 推荐(0) 编辑

emacs小技巧(持更

摘要: 1. 调整字体大小快捷键 放大: Ctrl-x Ctrl-+ 或 Ctrl-x Ctrl-=缩小: Ctrl-x Ctrl- -重置: Ctrl-x Ctrl-0 阅读全文
posted @ 2021-09-03 21:02 toong 阅读(82) 评论(0) 推荐(0) 编辑

nginx quic实验

摘要: 扫盲文档: https://http3-explained.haxx.se/zh 最终用 quiche+nginx-1.16 和 quiche+curl 完成了实验环境的搭建。 wireshark升级到3.4.7之后也能够进行quic、http3的识别和tls的解密了。 杂七杂八的记录 下载代码 ┬ 阅读全文
posted @ 2021-07-19 15:58 toong 阅读(923) 评论(0) 推荐(0) 编辑

[nginx] async_mode_nginx CPU 100% deadlock问题分析

摘要: 很遗憾只定位到了一个比较小的问题范围,理清了root cause, 但是没有找到复现的边界条件以及solution. Hi all, I have the quite same problem with the latest software version: async_nginx: 0.4.5 阅读全文
posted @ 2021-06-23 11:41 toong 阅读(34158) 评论(0) 推荐(0) 编辑

GDB 分屏代码窗口

摘要: 今天,按错了键,不小心打卡了gdb的代码分屏窗口,顺便记录一下. 三个方法, 任选一个: ctrl x + A gdb -tui 启动 启动后,使用layout src命令 关闭: ctrl x + A 修改窗口大小: winheight src [+|-] #lines 阅读全文
posted @ 2021-06-22 13:02 toong 阅读(1471) 评论(0) 推荐(1) 编辑

[TODO 不好用] gdb使用调用栈作为断点条件的方法

摘要: (gdb) bt #0 ngx_ssl_engine_qat_heuristic_poll (log=0x55a4ee0d3670) at modules/nginx_qat_module/ngx_ssl_engine_qat_module.c:694 #1 0x000055a4eba43791 i 阅读全文
posted @ 2021-06-21 15:24 toong 阅读(108) 评论(0) 推荐(0) 编辑

[nginx] nginx源码分析--内存管理

摘要: 1. nginx的内存,都是内存池管理,创建一个内存池就malloc一块内存出来. 2. 两个重要的地方会新建内存池, 一个新连接建立的时候, 一个是request创建的时候. 3. 在内存池里申请内存的时候,就是一块挨着一块的按顺序用. 这种叫small. 如果比内存池的size还大的,就mall 阅读全文
posted @ 2021-04-28 16:48 toong 阅读(135) 评论(0) 推荐(0) 编辑

multi-buffer crypto是什么

摘要: 框架 [https://www.cnblogs.com/hugetong/p/14682764.html] qat engine后边支持两种加速,一种硬件加速:使用QAT硬件加速卡。一种软件加速:使用multi-buffer技术分别对对称加密和非对称加密进行加速。见qatengine的首页:http 阅读全文
posted @ 2021-04-20 20:39 toong 阅读(723) 评论(0) 推荐(0) 编辑

bash里的[[与[

摘要: 你好。 你写bash的时候,喜欢这样么? if [[ "0" == "1" ]] then; echo "True" else echo "False" fi 还是这样? if [ "0" == "1" ] then; echo "True" else echo "False" fi 现在,讲一下区 阅读全文
posted @ 2021-03-26 14:48 toong 阅读(238) 评论(0) 推荐(0) 编辑

bash逐行读取变量

摘要: 如题,从变量中逐行读取的方法 该方法由于使用了管道,在循环内给变量的赋值无法传输到外部。 a=123 echo "result"|whilereadlinedoecholine echo "xxxxxxxxxxx" a=456 # 赋值无效 done 下面的方法功能相同,但是可以对 阅读全文
posted @ 2021-03-19 18:07 toong 阅读(152) 评论(0) 推荐(0) 编辑

[openssl] 内存泄露及越界分析方法整理

摘要: 前言 [classic_tong: https://www.cnblogs.com/hugetong/p/14386531.html] 围绕着 [openssl] openssl asynch_mode 使用libasan时的OOM问题 以及 https://github.com/intel/QAT 阅读全文
posted @ 2021-02-08 18:08 toong 阅读(1682) 评论(0) 推荐(0) 编辑

[openssl] openssl async模块框架分析

摘要: [classic_tong: https://www.cnblogs.com/hugetong/p/14379347.html] 这一部分内容的前面还有个第一部分,可以作为接下来内容的前提或者背景进行阅读:[openssl] intel qat场景下的openssl框架 引言 openssl1.1. 阅读全文
posted @ 2021-02-05 19:51 toong 阅读(3341) 评论(0) 推荐(0) 编辑

[openssl] intel qat场景下的openssl框架

摘要: 源代码 [classic_tong:https://www.cnblogs.com/hugetong/p/14363775.html] 我们使用openssl版本1.1.1的源代码进行安装与实验. 目前已经有了3.0.0的alpha版本. 源码下载在这里: https://www.openssl.o 阅读全文
posted @ 2021-02-05 18:49 toong 阅读(3032) 评论(0) 推荐(0) 编辑

[openssl] openssl与协程

摘要: [classic_tong: https://www.cnblogs.com/hugetong/p/14378526.html] Golang就用了协程,一直没有想过是怎么实现的。今天读openssl的源码,读到这个地方:https://github.com/openssl/openssl/blob 阅读全文
posted @ 2021-02-05 16:33 toong 阅读(1061) 评论(0) 推荐(0) 编辑

进程coredump的elf debug信息补全方法

摘要: 背景 我的一个运行CentOS上的进程由于bug crash掉了, 并留下了coredump文件, 使用gdb查看coredump文件时, 发现crash在了一个动态库上, 但是该动态库没有debug信息, 因为不是'-g'编译的. 如下: # gdb /usr/sbin/nginx /export 阅读全文
posted @ 2021-01-06 22:07 toong 阅读(1041) 评论(0) 推荐(0) 编辑

[openssl] openssl asynch_mode 使用libasan时的OOM问题

摘要: [classic_tong: https://www.cnblogs.com/hugetong/p/14231782.html] 概述 openssl支持async mode. 在定位越界问题时,我使用了libasan, 之后就OOM了, 能够看见在这个地方: 原因是因为, memset的size参 阅读全文
posted @ 2021-01-04 19:26 toong 阅读(936) 评论(0) 推荐(0) 编辑

[debug] 使用rpmbuild时gdb怎么找到debuginfo

摘要: 用rpm进行源码编译和release的时候,会生成两个包,一个正常的rpm 另一个是带debuginfo后缀的包. 正常包里的二进制会被strip出来放在debuginfo包中.用于后续的debug 详见下面的两个文档: https://gnu.wildebeest.org/blog/mjw/201 阅读全文
posted @ 2020-12-14 16:14 toong 阅读(556) 评论(0) 推荐(0) 编辑

[optimize]使用systemtap调试用户态程序

摘要: 用户态调试 classic_tong:[optimize]使用systemtap调试用户态程序 摘要 systemtap既能调试内核,也能调试用户态. 然后有if有判断有循环.可编程就代表什么都行,那么给我一个用gdb的理由? 另外,世界之大,请不要忘记DTrace,linux 4.9之后支持. 新 阅读全文
posted @ 2020-12-09 16:54 toong 阅读(920) 评论(0) 推荐(0) 编辑

rpmbuild之后二进制文件的MD5不一样

摘要: 使用rpmbuild工具用如下命令,生成rpm包. rpmbuild -bb qatengine.spec 我们知道,rpmbuild的目录里,一部分是用来build的,一部分使用release的, 我们分别找到我们感兴趣的二进制文件,算一下md5, 发现,竟然不一样: [root@T9 SPECS 阅读全文
posted @ 2020-11-03 16:47 toong 阅读(485) 评论(0) 推荐(0) 编辑

[nginx] 如何设置proxy到upstream的长连接

摘要: 前言 1. 如下内容将讨论nginx做proxy代理client访问http server的过程。 2. 这里的长连接是指keepalive,指的是http的keepalive,区别与tcp的keepalive。 问题框架 从client经过作为proxy的nginx访问http server时,涉 阅读全文
posted @ 2020-09-10 21:57 toong 阅读(2113) 评论(0) 推荐(0) 编辑

[http] 从http1到http3

摘要: 引言 cloudflare说他们跟google和firefox在开发实现http3。并且tls1.3也是他们推的。 [https://www.cnblogs.com/hugetong/p/13442633.html] 1.0 96年开始http1.0的时代。他有很多缺点.# 因为是tcp+ssl承载 阅读全文
posted @ 2020-08-05 20:55 toong 阅读(325) 评论(0) 推荐(0) 编辑

[http] http版本的选择/http2的启动

摘要: 前言 http2可以承载在TCP上或者TLS上,分别简称h2和h2c 当访问一个服务的时候,到底用http1.1还是http2,client和server是可以协商的。 [https://www.cnblogs.com/hugetong/p/13410276.html] TLS承载HTTP2 RFC 阅读全文
posted @ 2020-07-31 16:09 toong 阅读(3705) 评论(0) 推荐(2) 编辑

tcpdump按进出方向抓包

摘要: tcpdump抓取进入网卡的包,或者出网卡的包。 tcpdump分进出方向抓包。 可以使用如下filter ┬─[tong@T7:~/VM/t9]─[03:19:32 PM] ╰─>$ man pcap-filter |grep inbound -A 7 inbound Packet was rec 阅读全文
posted @ 2020-06-30 15:23 toong 阅读(3992) 评论(0) 推荐(0) 编辑

[tcp/ip] tcp delayed ack

摘要: 触发机制 被delay的ack包,什么时候发送出来? 到达500ms (这个值根据实现的不同而不同,RFC要求最多不能超过500,linux的实现是200) 每两个数据包回一个ack 由反向数据包发送带回。 优点 delayed ack可以提供一个机会给应用程序。让三个回应报合并成一个回应包。 三个 阅读全文
posted @ 2020-06-29 16:53 toong 阅读(939) 评论(0) 推荐(0) 编辑

[archlinux] 清理缓存包

摘要: archlinux的缓存包会占用大量的硬盘,可以用paccache命令清理: # paccache -r ┬─[tong@T7:~]─[05:04:04 PM] ╰─>$ sudo du -sh /var/cache/pacman/pkg/ 56G /var/cache/pacman/pkg/ ┬─ 阅读全文
posted @ 2020-06-08 17:11 toong 阅读(2320) 评论(0) 推荐(0) 编辑

[emacs] emacs批量缩进

摘要: 1. 使用CTRL+SPACE选择目标文本块。 2. 使用命令 indent-rigidly 。 3. 使用左右方向键或shift加左右方向键进行块的缩进移动。方向键每次移动一个字符,SHIFT每次移动4个字符。 参考: https://wolfsonliu.github.io/archive/20 阅读全文
posted @ 2020-05-13 15:53 toong 阅读(820) 评论(0) 推荐(0) 编辑

[http] http HSTS

摘要: 一 介绍 HSTS是 HTTP Strict Transport Security的全称。 就是强制浏览器必须使用HTTPS链接进行通讯的意思。如果浏览器不支持TLS访问,那么它就不能访问网站。为了防止中间人攻击。 这里,应该理解成浏览器,也就是客户端软件对用户进行的约束。 HSTS机制,在TLS层 阅读全文
posted @ 2020-04-20 15:35 toong 阅读(443) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 12 下一页

统计

点击右上角即可分享
微信分享提示