阅读:3051回复:22
第一桶.hardware acceleration
freeswan,偶要用硬件加密,怎么办呢..
1.see source.colubris.com 2.step by step 2.1 crypto lib 2.2 对freeswan的改变 2.3 等偶研究完再来和大家讨论.两周内不行就拉倒. |
|
|
沙发#
发布于:2002-06-12 18:56
大水桶四处灌水。这问题我都看了3遍了。
|
|
|
板凳#
发布于:2002-06-12 18:59
上fpga?dsp?
|
|
|
地板#
发布于:2002-06-13 10:21
不是啦,这个问题是早就有的问题了.
原来也做过,只能用中断方式,那样做速度太慢了 |
|
|
地下室#
发布于:2002-06-13 10:23
卡是反熔丝fpga...不过这不关卡的事
|
|
|
5楼#
发布于:2002-06-13 17:12
这个我没做过,但知道出现的问题很多。
两个星期太短了,不过,可能你很牛。 赫赫 |
|
|
6楼#
发布于:2002-06-15 20:25
hehe,我已做过了。
|
|
7楼#
发布于:2002-06-15 21:21
怎么做的能稍稍说说吗,关于这方面我总感觉很糊涂的样子。总之没概念。
|
|
|
8楼#
发布于:2002-06-16 10:55
hehe,我已做过了。 ??? |
|
|
9楼#
发布于:2002-06-18 12:26
看来只有这里有点反应哈.,那么,就向这里灌了
|
|
|
10楼#
发布于:2002-06-18 13:55
接着说吧。系统构成,通信方法。。。。。。
|
|
|
11楼#
发布于:2002-06-18 17:04
首先要搞清的一个概念是中断上半部和下半部..
|
|
|
12楼#
发布于:2002-06-18 17:17
不清楚。。。说说吧,,,,
|
|
|
13楼#
发布于:2002-06-19 09:50
很容易的事情为什么要那么复杂?
修改freeswan源代码,懒惰的可以将DES处理程序换成你自己的 从加密硬件抽取出的加密/解密过程(内核) 而后你就等好吧. 计划时间 1~3天(硬件加密驱动已开发好,主要花在调试上) 5 天(自己写硬件驱动(实际都可以不是完整的驱动程序)) 给你源代码就是让你修改的!如果没时间就没有必要去使用什么接口.你们不觉得那样很烦?呵呵,恐怕连开源的意义都没有了. |
|
14楼#
发布于:2002-06-19 10:34
你改过么,偶骨计没有.
所以,你不会知道细节. 想当然的说,我也会. 这个嘛,简单,半天就ok了,事实上也改完了 不过有个问题,跑起来效率 算了,懒得说了,知道的自然知道,不知道的自然不知道.如此而已 |
|
|
15楼#
发布于:2002-06-19 10:49
方法一完工,只是
The weak is that we HAVE TO POLL when card do encryption and so CPU can not do other task. Because we do ipsec_rcv() and ipsec_tunnel_start_xmit() int NIC bottom-half procedule and so we CAN NOT sleep_on in here and HAVE TO POLL the card completion. :( 还得改........... |
|
|
16楼#
发布于:2002-06-19 10:54
In ipsec_tunnel_start_xmit() function (in ipsec_tunnel.c), modify the following code:
Before modify: ... ... des_ede3_cbc_encrypt(idat, idat, ilen, (caddr_t)(&((struct des_eks*)(tdbp->tdb_key_e))[0]), (caddr_t)(&((struct des_eks*)(tdbp->tdb_key_e))[1]), (caddr_t)(&((struct des_eks*)(tdbp->tdb_key_e))[2]), (caddr_t)iv, 1); ... ... After modify: ... ... { int num = 0; /* To Enable hardware Card interrupt */ spin_unlock_irqrestore(&tdb_lock, tdb_flags); des_ede_ofb64_encrypt_hardware(idat, idat, ilen, tdbp->tdb_key_e, &(tdbp->tdb_key_e[8]), tdbp->tdb_key_e, (caddr_t)iv, &num); spin_lock_irqsave(&tdb_lock, tdb_flags); [编辑 - 6/19/02 by sirroom] |
|
|
17楼#
发布于:2002-06-19 11:11
方法一完工,只是 :) 是呀,这就是核心了,一个中断,一个队列, 加密卡,网卡,冲突。问题来了。 祝你好运。 我帮不上什么忙,这一块不是我做。 |
|
18楼#
发布于:2002-06-20 17:43
说的都是些什么呀,看不懂,睡觉去了。
|
|
|
19楼#
发布于:2002-06-20 18:26
二楼的说的,
就是加密卡和网卡的中断问题! |
|
|
上一页
下一页