安全套接層(SSL)是保證Web事務處理安全的標準方法。SSL密碼系統(tǒng)所需的數(shù)學計算涉及到大數(shù)和大多數(shù)商用處理器指令集中所沒有的數(shù)學函數(shù)。
這類計算一般利用軟件完成,因而給服務器造成沉重負擔,一般服務器性因此會下降兩個數(shù)量級。當事務處理全部采用SSL保護時,每秒能夠處理1000次事務的服務器,每秒只能完成10次事務處理。
解決這種性能問題的傳統(tǒng)解決辦法是采用多CPU服務器來處理安全傳輸流,并且將安全網(wǎng)頁限量應用在盡可能小的關鍵事務處理集合中,如信用卡數(shù)字交換。
另一種辦法是利用協(xié)處理器提高SSL密碼系統(tǒng)的速度。這類產(chǎn)品執(zhí)行RSA加密或分組加密,或同時執(zhí)行這兩種加密。所有這些加密仍依靠主機處理器向加密芯片發(fā)送和從加密芯片接收SSL記錄。這些處理器每秒處理成千上萬個新SSL握手請求。但是,它們的實現(xiàn)方法要求重要的“粘接件”支持加密硬件與主機處理器之間的協(xié)作處理,并且大多數(shù)方法仍依靠PCI總線在加密芯片與主機之間傳送數(shù)據(jù)。這種架構增加了復雜性,而且由于處理一次SSL會話握手就需要加密處理器與主機CPU之間進行多次交換,從而形成了性能瓶頸。
單芯片系統(tǒng)
解決性能瓶頸的一種方法是將整個系統(tǒng)放在一個芯片上來執(zhí)行傳輸流分類、全部SSL協(xié)議和所有的分組加密。單芯片系統(tǒng)不需要與主機CPU打交道,從而減少了復雜性,并大大改進了性能。單芯片安全處理器為客戶機端和服務器端提供了工業(yè)標準的千兆以太網(wǎng)接口。妨礙消滅海量SSL會話的最有威脅的障礙之一是處理封裝SSL記錄的TCP/IP包。即使沒有建立SSL會話,僅一條千兆TCP/IP傳輸流就夠讓一個傳統(tǒng)CPU忙個不停。新型芯片集成了高性能TCP/IP處理器,這個處理器可以為SSL傳輸流處理TCP分割、包重新排序和其他可能使主處理器陷于停頓的協(xié)議功能。客戶機端接口是千兆媒體獨立接口(GMII)端口,該端口直接安裝在網(wǎng)絡接口卡(NIC)或專用設備的物理接口的后面。
客戶機HTTP傳輸流直接通過芯片被傳送到服務器端口。服務器端口也是GMII接口。輸入的SSL傳輸流被傳送到芯片的加密部分。芯片執(zhí)行所有的SSL協(xié)議功能和分組加密,并在對解密后的明文信息進行梳理并提交給服務器端口。
梳理是關鍵
接收解密明文的目標服務器不會出現(xiàn)SSL與非SSL傳輸流之間的性能損失,相反,目標服務器接收SSL傳輸流時可能會出現(xiàn)更好的性能,這是由于提交給它的TCP/IP傳輸流經(jīng)過梳理的原故。嵌入式SSL解決方案除非以每秒1G的線速度、全雙工執(zhí)行其所有的網(wǎng)絡和加密功能,否則毫無價值。配置、加載SSL密鑰和證書文件以及管理信息檢索功能,是通過作為管理端口的GMII接口執(zhí)行的。所有的管理功能和通信都可以采用SSL加密。
加密更多網(wǎng)絡傳輸流并取得線速度性能需要采用一種全新的加密方法。嵌入式方法帶來了一種高可管理性的SSL解決方案,這種解決方案實現(xiàn)了高性能并且易于與Web服務器NIC、SSL專用設備以及其他4至7層設備集成。
本文來源:中國IT實驗室 作者: