Loading [MathJax]/jax/element/mml/optable/BasicLatin.js
会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
The Classic Tong's Cave
上一页
1
2
3
4
5
6
7
···
13
下一页
GDB 分屏代码窗口
摘要: 今天,按错了键,不小心打卡了gdb的代码分屏窗口,顺便记录一下. 三个方法, 任选一个: ctrl x + A gdb -tui 启动 启动后,使用layout src命令 关闭: ctrl x + A 修改窗口大小: winheight src [+|-] #lines
阅读全文
posted @ 2021-06-22 13:02 toong
阅读(1528)
评论(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
阅读(111)
评论(0)
推荐(0)
[nginx] nginx源码分析--内存管理
摘要: 1. nginx的内存,都是内存池管理,创建一个内存池就malloc一块内存出来. 2. 两个重要的地方会新建内存池, 一个新连接建立的时候, 一个是request创建的时候. 3. 在内存池里申请内存的时候,就是一块挨着一块的按顺序用. 这种叫small. 如果比内存池的size还大的,就mall
阅读全文
posted @ 2021-04-28 16:48 toong
阅读(139)
评论(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
阅读(769)
评论(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
阅读(242)
评论(0)
推荐(0)
bash逐行读取变量
摘要: 如题,从变量中逐行读取的方法 该方法由于使用了管道,在循环内给变量的赋值无法传输到外部。 a=123 echo "
result" | while read line do echo
line echo "xxxxxxxxxxx" a=456 # 赋值无效 done 下面的方法功能相同,但是可以对
阅读全文
posted @ 2021-03-19 18:07 toong
阅读(162)
评论(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
阅读(1773)
评论(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
阅读(3553)
评论(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
阅读(3191)
评论(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
阅读(1107)
评论(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
阅读(1114)
评论(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
阅读(986)
评论(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
阅读(581)
评论(0)
推荐(0)
[optimize]使用systemtap调试用户态程序
摘要: 用户态调试 classic_tong:[optimize]使用systemtap调试用户态程序 摘要 systemtap既能调试内核,也能调试用户态. 然后有if有判断有循环.可编程就代表什么都行,那么给我一个用gdb的理由? 另外,世界之大,请不要忘记DTrace,linux 4.9之后支持. 新
阅读全文
posted @ 2020-12-09 16:54 toong
阅读(973)
评论(0)
推荐(0)
rpmbuild之后二进制文件的MD5不一样
摘要: 使用rpmbuild工具用如下命令,生成rpm包. rpmbuild -bb qatengine.spec 我们知道,rpmbuild的目录里,一部分是用来build的,一部分使用release的, 我们分别找到我们感兴趣的二进制文件,算一下md5, 发现,竟然不一样: [root@T9 SPECS
阅读全文
posted @ 2020-11-03 16:47 toong
阅读(497)
评论(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
阅读(2230)
评论(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
阅读(355)
评论(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
阅读(3781)
评论(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
阅读(4116)
评论(0)
推荐(0)
[tcp/ip] tcp delayed ack
摘要: 触发机制 被delay的ack包,什么时候发送出来? 到达500ms (这个值根据实现的不同而不同,RFC要求最多不能超过500,linux的实现是200) 每两个数据包回一个ack 由反向数据包发送带回。 优点 delayed ack可以提供一个机会给应用程序。让三个回应报合并成一个回应包。 三个
阅读全文
posted @ 2020-06-29 16:53 toong
阅读(963)
评论(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
阅读(2356)
评论(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
阅读(859)
评论(0)
推荐(0)
[http] http HSTS
摘要: 一 介绍 HSTS是 HTTP Strict Transport Security的全称。 就是强制浏览器必须使用HTTPS链接进行通讯的意思。如果浏览器不支持TLS访问,那么它就不能访问网站。为了防止中间人攻击。 这里,应该理解成浏览器,也就是客户端软件对用户进行的约束。 HSTS机制,在TLS层
阅读全文
posted @ 2020-04-20 15:35 toong
阅读(475)
评论(0)
推荐(0)
[nginx][http] nginx关于http header的设置
摘要: nginx关于http header有以下三个配置。 1 proxy_set_header https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_set_header 配置命令proxy_set_header,是在ngx_ht
阅读全文
posted @ 2020-04-20 12:27 toong
阅读(3504)
评论(0)
推荐(0)
[http] 有关http2的主要知识点整理
摘要: 一 介绍 [classic_tong @ https://www.cnblogs.com/hugetong/p/12694322.html] 为了解决HTTP1的性能问题,HTTP2出现了。 http1有什么问题 1. 半双工的。请求与回应一来一回,彼此等待对方到底。 2. 不能并发,一个TCP隧道
阅读全文
posted @ 2020-04-14 11:41 toong
阅读(496)
评论(0)
推荐(0)
[python] python函数定义里后边那个箭头是干嘛的
摘要: 如题又如图 def add(x:int, y:int) -> int: return x + y 答: 是注释。前边的:int也是。见: https://python3-cookbook.readthedocs.io/zh_CN/latest/c07/p03_attach_informatinal_
阅读全文
posted @ 2020-04-04 17:39 toong
阅读(4816)
评论(0)
推荐(0)
[nginx][curl]使用curl对nginx进行的小测试
摘要: 使用curl命令,模拟一个客户端的访问。有时候我们需要为hostname正确的赋值, 可以使用以下方便的技巧,而不用修改/etct/resovle.conf文件的内容。 curl -k -v https://www.classic-tong15.com/path17 --resolve www.cl
阅读全文
posted @ 2020-04-04 17:35 toong
阅读(5388)
评论(0)
推荐(0)
[core dump] 纯干货版core dump使用
摘要: 总结了好几次,每次还是会卡住,要查一下。核心问题只有这三个。 1. 怎么打开core dump ? [root@T9 sbin]# ulimit -c unlimited 2. core dump文件存到哪了 ? [root@T9 sbin]# cat /proc/sys/kernel/core_p
阅读全文
posted @ 2020-03-30 19:26 toong
阅读(585)
评论(0)
推荐(0)
[redis] redis在线系统热迁移的方案与记录
摘要: 一 前言 如图,是我的环境。 这里边有三个系统,1 业务系统。2 redis cluster集群。3 redis cluster集群的管理系统。 系统1,会对redis中进行秒级的数据添加,读取,删除操作。系统3,是redis集群的增加节点减少节点,节点failover功能进行管理。 如图目前,我的
阅读全文
posted @ 2020-03-27 20:25 toong
阅读(2216)
评论(0)
推荐(0)
[golang] go get无法安装官方软件包
摘要: 作为一个小白,困惑了快半个小时,一直以为是自己的环境搭建有问题。 后来我终于知道了,原来golang.org与godoc.org是墙外的网站。 所以,装软件的时候,会有下面的错误 /home/tong/go/src/local/test [tong@TStation] [12:24] > proxy
阅读全文
posted @ 2020-02-17 12:54 toong
阅读(1674)
评论(0)
推荐(0)
我有关编程语言的一点理解
摘要: 副标题:[golang] 当用到一知半解的Go丢掉了大半年之后如何又能快速捡起 零 如题。 在这之后 [dev][go] 入门Golang都需要了解什么 便再没有接触过Go语言,以致今日便忘得一干二净。 现在要用,那么接下来的问题就是。我应该以一种怎么样的思路,将它拾起来。 [classic_ton
阅读全文
posted @ 2020-02-12 22:52 toong
阅读(315)
评论(0)
推荐(0)
[nginx] nginx源码分析--健康检查模块锁分析
摘要: 健康检查模块 见前文:[nginx] nginx源码分析--健康检查模块 其中有一张框架图, 接下来的内容,将会利用到这个图中的内容。 [classic_tong @ https:////www.cnblogs.com/hugetong/p/12274125.html ] 描述 我们知道nginx是
阅读全文
posted @ 2020-02-07 20:12 toong
阅读(702)
评论(0)
推荐(0)
[nginx] nginx的hash与bucket size分析
摘要: 问题描述 我们已知有一个map命令,可以用在http block和stream block中。 用于定义个新的变量,变量的取值由map里边的key和value定义。 如我在前文有个SNI的使用中,便用到了这个方式。[nginx][tls] nginx配置https与ssl/tls的sni的方法 ma
阅读全文
posted @ 2020-02-05 19:49 toong
阅读(2367)
评论(0)
推荐(0)
[daily][linux] dmesg格式里的时间为什么不准
摘要: 我们能看见dmesg的日志带有时间,用dmesg -T参数 [root@tong ~]# dmesg -T |tail -n 4 [Tue Jan 21 22:05:11 2020] nginx[7607]: segfault at 8 ip 00007f5323cf77a1 sp 00007fff
阅读全文
posted @ 2020-01-21 17:17 toong
阅读(2991)
评论(0)
推荐(0)
[daily] 查看linux程序或操作的kernel内核调用栈
摘要: 一 [classic_tong @ https://www.cnblogs.com/hugetong/p/12198122.html] 查看一个命令或程序,都调用了什么系统API的方法, 可以是用strace [root@T9 OUTPUT_nginx]# strace echo execve("/
阅读全文
posted @ 2020-01-15 18:14 toong
阅读(1698)
评论(0)
推荐(0)
[go] 像gdb一样使用dlv debug golang程序
摘要: gdb也可以debug golang程序,但是没有办法很好的处理协程。(或者我不太擅长) golang本身,提供了更好的工具。 delve:https://github.com/go-delve/delve/tree/master/Documentation/installation 现在以gobe
阅读全文
posted @ 2020-01-15 14:29 toong
阅读(928)
评论(0)
推荐(0)
[tls][https][nginx] https的client session cache与session ticket机制分析
摘要: more title tls的客户端会话恢复与会话票证机制分析 golang fasthttp库关于会话恢复与会话票证的源码分析 前言 https握一次手是很艰辛的,计算量很大。所以如果连续两次短连接通信的话,完全可以 复用上一次的会话。这样可以压缩通信,节省计算。 TLS提供了两个机制来做这个事。
阅读全文
posted @ 2020-01-14 18:38 toong
阅读(5450)
评论(0)
推荐(0)
[性能优化] CPU电源管理pstate cstate
摘要: CPU的电源管理是会影响性能的。 pstate指CPU忙时的电源管理,为了省电会调节主频和电压。cstate是cpu闲时的电压管理。 详细资料见: https://software.intel.com/en-us/blogs/2008/05/29/what-exactly-is-a-p-state-
阅读全文
posted @ 2020-01-10 16:08 toong
阅读(8968)
评论(0)
推荐(0)
[https][tls][crypto][性能优化] Intel QAT卡初涉
摘要: 硬件加密卡,硬件加解密卡。 用于把加密解密,数据压缩等,从CPU卸载到加速卡上。 所有文档汇总:https://01.org/intel-quickassist-technology 性能调优手册:https://01.org/sites/default/files/downloads//33068
阅读全文
posted @ 2020-01-10 15:13 toong
阅读(1949)
评论(0)
推荐(0)
[python] 像gdb一样用pdb debug python程序
摘要: 如题,我们希望像gdb C程序一样。对python程序就行debug 可以使用pdb来实现这样的功能。 见:https://docs.python.org/3/library/pdb.html 最简单的方法,我们以 longest_substring.py 为例。 使用如下方式执行它,便进入了deb
阅读全文
posted @ 2020-01-06 11:40 toong
阅读(352)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
···
13
下一页
导航
管理
统计
随笔 - 509
文章 - 0
评论 - 49
阅读 -
75万
搜索
我的标签
daily
(59)
dpdk
(38)
dev
(36)
development
(28)
nginx
(27)
ipsec
(27)
archlinux
(27)
strongswan
(20)
skill
(18)
SDN
(16)
更多
阅读排行榜
1. [nginx] async_mode_nginx CPU 100% deadlock问题分析(45944)
2. [ipsec][strongswan] strongswan源码分析--(一)SA整体分析(16175)
3. [nginx] nginx使用SNI功能的方法(12087)
4. [daily][CentOS][yum] 删除包的同时一同清理掉安装时一起装进来的依赖包(11390)
5. [grub2] grub2修改启动顺序(11181)
6. [https][tls] 如何使用wireshark查看tls/https加密消息--使用keylog(10956)
7. [development][dpdk][hugepage] 大页内存的挂载(10341)
8. [qemu] qemu旧的net参数已经不再可用了,新的这样用。(9461)
9. [性能优化] CPU电源管理pstate cstate(8968)
10. [math] 什么是双曲函数(转发)(8514)
11. [性能优化] perf 高级用法:完整记录程序性能指标,并按照时间段对程序进行有针对性的性能分析(8409)
12. [https][openssl] OpenSSL 公钥、私钥以及自签名证书(7942)
13. [dev][dpdk][crypto] dpdk加解密设备与IPSEC(7859)
14. [ipsec] 特别硬核的ike/ipsec NAT穿越机制分析(7692)
15. [daily][device][bluetooth] 蓝牙怎么办!(archlinux下驱动蓝牙鼠标,以及三星手机)(7667)
16. [development][dpdk][pktgen] 网卡收发包性能测试-详细数据(7163)
17. [ipsec][strongswan] strongswan源码分析-- (二)rekey/reauth机制分析(7058)
18. [ipsec][strongswan]strongswan源码分析--(零)引子(6985)
19. [archlinux][hardware] 查看SSD的使用寿命(6985)
20. [ipsec][strongswan] strongswan源码分析--(〇)总体架构图(6947)
21. [Virtualization][SDN] VXLAN到底是什么 [转](6645)
22. [developmemt][dpdk] dpdk优化(转)(6490)
23. [ipsec][strongswan] 使用VTI配置基于路由的ipsec(6142)
24. [crypto] AEAD是啥(6121)
25. [dpdk] dpdk编译成动态库使用 -- PCI port自动发现与pmd动态加载(5894)
26. [daily][archlinux][fonts] 在linux下管理字体(5818)
27. [ipsec][strongswan] 使用wireshark查看strongswan ipsec esp ikev1 ikev2的加密内容(5787)
28. [centos][yum] centos升级到特定版本(5760)
29. [https][tls] 如何使用wireshark查看tls/https加密消息--使用私钥(5737)
30. [daily][device] linux添加打印机(5587)
31. [tls][https][nginx] https的client session cache与session ticket机制分析(5450)
32. [nginx][curl]使用curl对nginx进行的小测试(5388)
33. [dpdk] 读官方文档(2)(5351)
34. 内容精选(5280)
35. [dev][ipsec][dpdk] strongswan/dpdk源码分析--(七)ipsec算法配置过程(5171)
36. [daily][archlinux] pacman 安装软件时404的问题(5150)
37. [ike][ipsec] child sa rekey机制的细节分析(4900)
38. [python] python函数定义里后边那个箭头是干嘛的(4816)
39. ipsec][strongswan] ipsec SA创建失败后的错误处理分析(4805)
40. [daily] 在CentOS中安装高版本GCC(4587)
点击右上角即可分享