ymind的个人空间 https://bbs.21ic.com/?643836 [收藏] [复制] [RSS]

日志

郁闷,采购的P1010型号不支持硬件加密,导致VPN/IPsec性能只有55Mbps ...

已有 1414 次阅读2013-9-16 16:04 |个人分类:P1010|系统分类:通信网络| VPN, OpenSWAN, 加密, 硬件

openswan-2.6.39移植到powerpc了:
$ make programs
$ make install DESTDIR=/opt/nfsroot_p1010gap/
$ make KERNELSRC=~/work.mpc/linux-3.8.18 modules

为简单起见,使用内核的NETKEY IPsec stack,没有用openswan的KLIPS stack。但freescale文档说后者性能高一些,大包能到600Mbps。
放狗搜索后,采用Road Warrior方式配置。但第一步生成公私钥对时,死在ipsec程序里面了:
# ipsec newhostkey --output /etc/ipsec.secrets
经跟踪调试,发现设备文件/dev/random不是硬件随机数生成器,而软件模拟的随机数生成器使用的环境噪声源是keyboard input。就是在这时,我才明白我当时移植P1010时,为啥要把其SEC部分去掉 ---- 我们买的P1010NSN5HHA就不含SEC,以后要最后买P1010NXE5HHA。
我们的平台当然没有keyboard了,所以临时折中采用随机性差的/dev/urandom了。
# rm /dev/random
$ ln -sf /dev/urandom /dev/random

最后VPN能ping通了,在VPN网关能看见ESP:
# tcpdump -i eth1        ;ESP means encrypted (Encapsulating Security Payload)
12:01:11.931877 IP 192.168.1.200 > 192.168.1.10: ESP(spi=0x80a125cc,seq=0x16fe8), length 132
12:01:11.931955 IP 192.168.1.200 > 192.168.108.10: ICMP echo request, id 3948, seq 0, length 64
12:01:11.932415 IP 192.168.1.10 > 192.168.1.200: ESP(spi=0x6957d80a,seq=0xb818), length 132
调用的是内核的软件CRYPTO_ALG。

最后得到性能了,网内跑netserver, 网外跑netperf,才55.06Mbps。


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)