Godbach
发表于 2016-07-22 08:55
回复 99# wait_rabbit
kernel 代码里有个 pktgen。就是用来内核态发包用的。
henrystark
发表于 2016-07-22 17:42
回复 97# GFree_Wind
有空可以写一篇blog,对比测试分析centos7和centos6.5的性能差距原因。这个问题比较有意思。
VFS、锁优化可能是一部分原因。我对内核代码不算熟悉,这个问题我还是想知道原因的,期待你写出来看看,哈哈。
henrystark
发表于 2016-07-22 17:43
回复 95# Godbach
牛!又涨了一份见识。
Godbach
发表于 2016-07-22 17:55
回复 103# henrystark
多来灌水,可以涨姿势的哦。{:qq28:}
wait_rabbit
发表于 2016-07-22 18:34
Godbach 发表于 2016-07-22 08:55 static/image/common/back.gif
回复 99# wait_rabbit
kernel 代码里有个 pktgen。就是用来内核态发包用的。
我记得 pktgen 只能发udp包吧,我们需要的是tcp包,更进一步需要内核态的 http server/client。
Godbach
发表于 2016-07-22 18:42
回复 105# wait_rabbit
嗯,好像是的。
txchxl
发表于 2016-07-25 12:03
个人理解,是的。
帮我看个图片:
第二次路由判断在OUTPUT之后,POSTROUTING之前。
第二次路由判断在OUTPUT之前。
感觉第一个可能更准确一些,因为OUTPUT可以做DNAT,用来在防火墙主机访问自己的WAN时做DNAT,所以猜测路由判断可能在这之后。(另一个应该DNAT是针对WAN 网主机常用的PREROUTING的DNAT)。这两个图捋不清哪个准确
回复 90# Godbach
Godbach
发表于 2016-07-25 13:54
回复 107# txchxl
第一个。
这个东西,其实去看一下代码更直接。 {:qq29:}
txchxl
发表于 2016-07-25 14:55
看了些代码,感觉也是1,但不能很确定回复 108# Godbach
Godbach
发表于 2016-07-25 16:11
回复 109# txchxl
这里面其实有两个阶段,一个是查路由,另外一个是真正路由的动作。
我记得之前看代码,hook 执行完毕之后,就调用了 dst_output,也就是执行路由动作了。那么肯定在这个之前,做了查询路由的操作。
页:
1
2
3
4
5
6
7
8
9
10
[11]
12