CHƯƠNG 2 TÌNH HÌNH NGHIÊN CỨU TRONG VÀ NGOÀI NƯỚC
3.5 Các kiểu kiến trúc bảo mật xây dựng trên nền tảng IPsec
Hiện nay, để đáp ứng yêu cầu bảo mật có các kiến trúc xây dựng trên nền tảng IPsec đảm bảo được hiệu năng của toàn hệ thống và mức độ bảo mật cao khi tích hợp.
Có 2 kiểu kiến trúc là look-aside và flow-through.
Mỗi kiểu kiến trúc có ưu và nhược điểm riêng, được trình bày dưới dây.
Người thiết kế hệ thống thường giảm tải TCP termination cho thiết bị giảm tải TCP nằm giữa lớp vật lý và đơn vị xử lý mạng, NPU cũng có thể xử lý giảm tải TCP.
Việc giảm tải TCP thường tiêu tốn 1 Hz băng thông NPU mỗi bit mỗi giây của băng thông mạng; do đó, việc terminating 1 Gbps lưu lượng truy cập mạng TCP/IP full-duplex hoàn toàn cần 2 GHz băng thông NPU. Tuy nhiên, sự trade-off giữa bps/Hz này và suy giảm tốc độ Gbps do tăng chuyển bộ nhớ và xử lý gián đoạn [90].
Do đó, cho đến nay, việc triển khai VPN IPsec đã sử dụng phần mềm để thực hiện tất cả các chức năng VPN hoặc thêm bộ xử lý bảo mật giao diện với các thành phần xử lý mạng chủ thông qua một bus điều khiển phụ, loại bỏ nó khỏi đường data-path chính. Kiến trúc lookaside giảm tải nhiều hoạt động IPsec và Internet Key Exchange chuyên sâu, nhưng các thiết bị tìm kiếm vẫn yêu cầu các thành phần xử lý mạng để xử lý nhiều tác vụ phân tích gói liên quan cụ thể đến các chức năng bảo mật. Những thiết bị này cũng tạo ra một kiến trúc di chuyển dữ liệu kém hiệu quả. Hơn nữa, với kiến trúc lookaside, các nhà thiết kế VPN chịu nhiều rủi ro trong thiết kế bảo mật.
Để cung cấp cho các nhà sản xuất thiết bị mạng một kiến trúc hoàn chỉnh, hiệu quả, ít rủi ro, bổ sung chức năng xử lý bảo mật mạnh mẽ, thiết kế phải đặt bộ xử lý bảo mật trực tiếp vào đường dẫn dữ liệu để bảo mật lưu lượng mà không cần sự trợ giúp của các thiết bị hoặc phần mềm bên ngoài. Kiến trúc bảo mật flow-through cho phép thêm bảo mật vào hệ thống theo cách giảm tải NPU tối đa với nỗ lực tích hợp hệ thống đến tối thiểu [90].
3.5.1 Kiến trúc lookaside
Việc triển khai bảo mật truyền thống là các bộ định tuyến dựa trên NPU hoặc các thiết bị dựa trên Pentium. Trong cả hai quá trình thực hiện, thiết bị chứa phần cứng tối thiểu để thực hiện lớp vật lý, kiểm soát truy cập phương tiện và bộ đệm gói. Thiết bị bảo mật cũng chứa NPU hoặc Pentium với chipset PCI để xử lý tất cả các chức năng khác
57 như tường lửa, dịch địa chỉ mạng, bảo mật VPN, phát hiện xâm nhập, phát hiện virus và QoS.
Khi hiệu suất VPN của các thiết kế thế hệ tiếp theo giảm xuống mức không thể
chấp nhận, các tùy chọn bao gồm di chuyển sang NPU đắt hơn, hiệu suất cao hơn hoặc thêm NPU bổ sung để giảm bớt gánh nặng. Hoặc là tùy chọn thêm chi phí đáng kể cho thiết kế.
Chức năng VPN yêu cầu băng thông NPU nhiều hơn các chức năng bảo mật khác vì hầu hết xử lý bảo mật đều phân tích các trường nhất định trong một số tiêu đề của một số gói. Tuy nhiên, chức năng VPN yêu cầu NPU xử lý từng bit của mỗi gói với các hoạt động xác thực và mã hóa chuyên sâu. Hơn nữa, Internet Key Exchange yêu cầu NPU thực hiện tính toán các hoạt động khóa công khai. Thật không may, VPN dựa trên phần mềm không thể dễ dàng thực hiện đồng thời các chức năng IKE và IPsec VPN:
Trong khi NPU thực hiện IKE, hiệu suất xử lý IPsec tạm thời suy giảm. VPN dựa trên phần mềm hiện tại không thể hoạt động hiệu quả ở tốc độ gigabit, vì vậy các nhà phát triển sử dụng bộ đồng xử lý bảo mật để tăng tốc các phần quan trọng của xử lý Ipsec [90].
Hình sau [90] nêu khái niệm hệ thống bảo mật Lookaside. Hookup phần cứng đơn giản này thêm chức năng bảo mật tìm kiếm cho một đơn vị xử lý mạng. Trong trường hợp này, bộ đồng xử lý bảo mật kết nối với NPU thông qua một cổng điều khiển riêng bên ngoài đường dẫn dữ liệu chính. PHY: lớp vật lý [90].
Hình 3.15 Khái niệm hệ thống bảo mật Lookaside
Kiến trúc giảm tải tất cả bảo mật IP và xử lý trao đổi khóa Internet. Thiết bị IPsec Flow-through chứa cơ sở dữ liệu, chính sách bảo mật và liên kết bảo mật và hỗ trợ IKE, tất cả trên chip và bộ xử lý mạng thực hiện các chức năng bảo mật, mạng và chất lượng dịch vụ khác. PHY: lớp vật lý
58 Hình 3.16 Khái niệm hệ thống bảo mật Flow-through
Hình trên [90] cho thấy hookup phần cứng đơn giản để thêm chức năng bảo mật lookaside vào NPU. Trong trường hợp này, bộ đồng xử lý bảo mật kết nối với NPU thông qua một cổng điều khiển riêng bên ngoài đường data path chính. Kiến trúc lookaside này cung cấp tùy chọn để thêm bảo mật cho các thiết bị và bộ định tuyến VPN.
Kiến trúc yêu cầu NPU xử lý nhiều tác vụ phân tích gói IPsec và chức năng bảo mật, cũng như các giao thức truyền dữ liệu và chức năng di chuyển dữ liệu liên quan, trước khi chuyển các gói được xử lý sang mạch tích hợp tăng tốc bảo mật. Trong khi bộ xử lý bảo mật ngoại giảm tải các hàm băm và mã hóa đối xứng chuyên sâu tính toán, việc xử lý giao thức còn lại và các chức năng IPsec phụ trợ khác có thể trở thành nút cổ chai trên NPU ở tốc độ gigabit [90].
Một kiến trúc lookaside cũng yêu cầu băng thông bus bổ sung. Di chuyển dữ liệu từ NPU sang bộ xử lý bảo mật và nhân đôi băng thông bus NPU bằng cách yêu cầu hai lượt đi qua bus của nó. Kiến trúc Flow-through cắt giảm một nửa cả số lượng truyền dữ liệu NPU và băng thông bus giữa NPU và bộ xử lý bảo mật vì bus ngoài của nó kết nối với thiết bị khác, chẳng hạn như lớp vật lý mạng.
Tối thiểu, các cổng bảo mật thực hiện chức năng tường lửa và dịch địa chỉ mạng ngoài các chức năng chuyên sâu tính toán khác, như phát hiện xâm nhập, phát hiện virus, quét tải trọng và một số mức QoS. Vì phân loại gói là chung cho tất cả các chức năng bảo mật này, người thiết kế cổng bảo mật có thể thêm các chức năng khác theo module và tăng dần bằng cách tăng cường bảng policy table, sau đó kết hợp thêm phần mềm.
Tuy nhiên, đến một lúc nào đó, tài nguyên NPU sẽ cạn kiệt và hiệu suất thông lượng sẽ bắt đầu suy giảm. Vì chức năng VPN là hoạt động tính toán chuyên sâu nhất, đặc biệt là ở tốc độ gigabit, nên việc tăng tốc phần cứng VPN cho bộ định tuyến hoặc thiết bị có tường lửa và NAT xảy ra trước tiên [90].
3.5.2 Kiến trúc flow-through
Kiến trúc bảo mật Flow-through cung cấp triển khai phần cứng thế hệ tiếp theo của giao thức bảo mật IPsec. Kiến trúc này định vị bộ xử lý bảo mật trước bộ xử lý mạng. Kiến trúc Flow-through đóng gói tất cả chức năng VPN của IPsec và cung cấp hiệu quả hệ thống cao hơn kiến trúc Lookaside. Bộ xử lý bảo mật Flow-through xử lý tất cả các chức năng phần cứng và phần mềm IPsec mà không cần bất kỳ sự can thiệp nào từ bên ngoài, cho phép NPU hoạt động như thể hoàn toàn không biết về chức năng VPN [90].
59 Kiến trúc Flow-through, giảm tải tất cả xử lý IPsec và IKE. Thiết bị IPsec lưu lượng chứa cơ sở dữ liệu policy bảo mật và liên kiết bảo mật và hỗ trợ IKE, tất cả đều trên chip. NPU có thể thực hiện các chức năng bảo mật, kết nối mạng và QoS khác mà không yêu cầu bất kỳ sửa đổi nào đối với phần còn lại của thiết kế. Để chèn thiết bị Flow-through, nhà thiết kế hệ thống thực sự ngắt kết nối phần cứng giữa điều khiển truy cập phương tiện và thiết bị lớp vật lý, sau đó chèn thiết bị lưu lượng ở giữa. Do đó, thiết bị lưu lượng hoạt động như một thiết bị lớp vật lý đến cổng máy chủ và hoạt động như một thiết bị điều khiển truy cập phương tiện ở phía mạng.
Tất cả các chức năng xử lý và giải mã gói cho lưu lượng truy cập hoàn tất trước khi lưu lượng truy cập đến bộ xử lý mạng. Các bộ xử lý bảo mật Flow-through thông qua các giao diện phần cứng cung cấp cho bộ xử lý mạng hoặc hệ thống ở tốc độ đường truyền. Điều này cho phép hiệu suất VPN có thể dự đoán được độc lập với băng thông NPU vì NPU chỉ thực hiện các chức năng cấu hình policy và xử lý ngoại lệ IPsec. Kiến trúc Flow-through làm giảm băng thông bus vì nó không yêu cầu nhiều nút giao bus lookaside và đến từ NPU.
Giải pháp Flow-through có thể hỗ trợ nhà sản xuất thiết bị gốc phát triển thiết bị VPN vì nhà thiết kế có thể tích hợp các thiết bị Flow-through trực tiếp vào data path do chúng hầu như không ảnh hưởng phần còn lại của hệ thống. Điều này có thể làm khối lượng thiết kế hệ thống cần thiết của các nhà phát triển OEM. Các thiết bị Flow-through có thể giảm thêm rủi ro thiết kế bằng cách kết hợp giải pháp IPsec / IKE được chứng nhận của ICSA Labs, đảm bảo khả năng tương tác được kiểm tra và chứng nhận [90].
Hơn nữa, giải pháp Flow-through có thể tăng tốc thời gian đưa ra thị trường bằng cách giảm nỗ lực phần mềm để thực hiện các giao thức IPsec và IKE. Không có API IPsec để tích hợp vào phần mềm hệ thống để xử lý từng gói IPsec. Ngoài ra, nhà phát triển OEM không cần phải duy trì phần mềm IKE và IPsec vì thiết bị Flow-through đã kết hợp điều này. Ngoài ra, nhà phát triển OEM không cần phải di chuyển sang các tiêu chuẩn IPsec mới bởi vì nhà sản xuất thiết bị Flow-through hỗ trợ nâng cấp tiêu chuẩn.
Đối với việc triển khai thiết bị lưu trữ IP, thiết bị Flow-through được đặt giữa một công cụ giảm tải TCP mạng và thiết bị lớp vật lý [90].
3.5.3 So sánh cấu trúc IPsec
Các thực thi VPN điển hình là máy PCbased hoặc mở rộng hơn là bộ định tuyến Router. Với việc không có phần cứng tăng tốc, cũng như thiết bị Pentium hoặc bộ xử lý mạng phải thực hiện chức năng VPN. IPsec yêu cầu giao thức và xử lý gói ngoài mã hóa và xác thực gói. Tương tự, IKE yêu cầu xử lý thông điệp ngoài mã hóa công khai. Tuy nhiên, các chức năng mã hóa được tính toán chuyên sâu và do đó đòi hỏi một lượng băng thông CPU tương đối lớn chỉ để dành riêng cho mã hóa và xác thực.
Công cụ tăng tốc thuật toán IPsec để đạt thông lượng Gbps trở lên nhằm tung ra thị trường cuối những năm 1990. Tuy nhiên, chỉ đơn thuần là tăng tốc chức năng bảo mật vẫn gây gánh nặng cho máy chủ CPU hoặc NPU, cản trở khả năng mở rộng và phát triển của thiết bị. Các nhà sản xuất bắt đầu vận chuyển toàn bộ gói (packet) xử lý tìm kiếm vào năm 2000 để giảm bớt gánh nặng CPU nhằm chuyển đổi các gói IP thành IPsec và ngược lại. Tuy nhiên, điều này vẫn cần bộ định tuyến (Router) hoặc nhà cung cấp thiết bị để có kiến thức chuyên môn về IPsec để phát triển. Thêm vào đó, các kết nối I/O của CPU đến bộ xử lý bảo mật phải cung cấp và tăng gấp đôi thông lượng cần thiết tại ngõ vào và ngõ ra. Quá trình xử lý không tải đến máy chủ CPU hoặc NPU từ
60 bất kỳ IPsec nào hoặc xử lý trao đổi khóa IKE (Internet Key Exchange), do đó giảm bớt các hạn chế kỹ thuật và tạo điều kiện thuận lợi cho quá trình thiết kế [90].
Hình 3.17 So sánh yêu cầu máy chủ cần giữa phần mềm, lookaside và flow-through Hình trên [90] so sánh yêu cầu máy chủ cần để thêm chức năng IKE và IPsec VPN vào hệ thống chỉ dành cho phần mềm, lookaside và flow-through.
Trong hệ thống lookaside, bộ xử lý mạng phân tích cú pháp và phân loại các gói gửi đến, tra cứu chính sách bảo mật (Security policy) và hiệp hội bảo mật (SA) và xóa các tiêu đề (header) IPsec khi cần trước khi giải mã gói được mã hóa trong phần mềm hoặc chuyển tiếp nó tới bộ xử lý bảo mật tìm kiếm giải mã và xác thực. Trong kiến trúc flow-through, tất cả các xử lý IPsec xảy ra trong phần cứng ở tốc độ dòng (line speed).
Lưu lượng truy cập đi theo một quá trình tương tự, hoặc chỉ theo chiều ngược lại [90].
IKE tập trung nhiều hơn vào phép modulo: Một giao dịch IKE duy nhất cũng yêu cầu hình thành 9 thông điệp, đàm phán chính sách bảo mật, thiết lập mục cơ sở dữ liệu hiệp hội bảo mật (SA) và thực hiện các hoạt động khóa công khai Diffie-Hellman và RSA. Hầu hết các bộ xử lý bảo mật lookaside đều tăng tốc các hoạt động của khóa công khai, nhưng để bù lại là phải xử lý giao thức IKE cho máy chủ NPU.
IPsec không chỉ là tiêu chuẩn mã hóa tiên tiến (AES) và thuật toán băm an toàn (SHA-1) cũng như nó yêu cầu phân tích và phân loại gói tin, chính sách bảo mật và tra cứu khu vực lưu trữ, tạo và kiểm tra các tiêu đề bảo mật, kiểm tra bảo mật liên kết thời gian, và cập nhật số liệu thống kê. Hầu hết các bộ xử lý bảo mật lookaside đều loại bỏ
những nhiệm vụ cho máy chủ NPU.
Trong hình 4, cột lookaside đại diện cho chức năng của dịch vụ bảo mật flow- through từ máy tăng tốc thuật toán hoặc nhà cung cấp xử lý gói tin. Máy tăng tốc thuật toán chỉ thực hiện thuật toán mã hóa và xác thực, và một số nhà cung cấp cũng hỗ trợ nén IPComp. Bộ xử lý gói chuyển đổi bổ sung từ gói IP thành gói IPsec và ngược lại [90].
Một số thiết bị mã hóa tìm kiếm, cũng cung cấp phần cứng tăng tốc công khai.
Bởi vì nhìn thiết bị chỉ cung cấp một phần của tổng thể IPsec và chức năng xử lý IKE
61 trong phần cứng, chúng có thể không giải quyết được vấn đề thực hiện IKE và IPsec đồng thời.
Trong cấu hình lookaside, bộ xử lý hệ thống xử lý một số nhiệm vụ cho giao thức VPN, có nghĩa là nhà phát triển OEM phải phát triển, chuyển đổi và tích hợp một lượng đáng kể của phần mềm IPsec và IKE. Thậm chí tải xuống miễn phí phần mềm Ipsec và IKE từ trang web yêu cầu nhà phát triển OEM đến, chuyển đổi, tích hợp và bảo trì phần mềm này. Do đó, việc kết hợp chức năng VPN ở tốc độ đường truyền làm tăng thêm độ phức tạp cũng như thời gian tiếp thị, rủi ro kĩ thuật và quá tải trong sự phát triển tài nguyên. Bởi vì flow-through xử lý đóng gói toàn bộ giải pháp IPsec trong một con chip, việc sử dụng chúng có thể làm giảm đáng kể cả hai kiến thức cần thiết để kết hợp IPsec vào sản phẩm và thời gian cũng như rủi ro liên quan đến quá trình phát triển [90].
3.5.4 Phân tích hiệu năng và chi phí
Bảng sau [90] cho thấy cả lợi ích giảm tải của bộ xử lý và tiết kiệm chi phí bằng đô-la khi thêm bộ xử lý phần cứng IPsec cho các thiết bị dựa trên Pentium. Các tính toán được bắt nguồn bằng cách sử dụng chung đơn vị băng thông Pentium 1GHz để đo lượng băng thông CPU cần thiết để thực hiện các chức năng IPsec khác nhau trong phần mềm, để cung cấp kênh gigabit mang lại giá trị 2Gbps [90].
Bảng 3.19 So sánh hiệu năng và chi phí 3 cấu hình Bộ xử lý AES /
SHA
Giao thức IPSec
Giao thức IKE
Tổng băng thông
Giá Giá xử lý multigigabit
Giá VPN
Chỉ phần mềm 7.6GHz 1GHz 2.5GHz 11.1GHZ $851 $0 $851 Lookaside 0.0GHz 1GHz 0.1GHz 1.1GHz $84 $150 $234 Flowthrough 0.0Ghz 0GHz 0.0GHz 0.0GHz $0 $100 $100
Chi phí mã hóa cho giải thuật tối ưu AES-128 bằng code assembly xấp xỉ khoảng 280 clocks trên 16 byte, trong khi SHA-1 là 830 clocks trên 64 byte. Chuyển đổi sang Pentium clock mỗi bit, những đo lường về mặt năng suất khoảng 3.8 clocks trên bit trên giây, hoặc 7.6GHz băng thông Pentium để hỗ trợ kênh 2Gbps. Bởi vì chi phí xử lý giao thức IPsec và xử lý gói khác nhau phụ thuộc rất nhiều vào nhiều yếu tố bao gồm số hiệp hội bảo mật, chính sách bảo mật, và triển khai tra cứu cũng như liệu trình tăng tốc thuật toán hoặc bộ xử lý gói tin được sử dụng. Chúng tôi ước tính rằng 2Gbps yêu cầu 500Mhz đến 1.5 GHz của băng thông Pentium [90].
Nhìn theo một cách khác, tính toán này xấp xỉ 500 đến 1000 clocks cho mỗi gói với tốc độ xử lý 1 triệu gói trên mỗi giây. Một triệu gói mỗi giây cung cấp băng thông xử lý tốc độ dòng xuống kích thước gói 250 byte, trừ đi khoảng cách giữa các gói, cho một hàng. Hình thành một chế độ đường hầm IKE qua thuật toán Diffie-Hellman, một khóa riêng RSA và hai hoạt động khóa công khai RSA. Hình thành nhanh một IKE trên chế độ đường hầm (tunnel mode) yêu cầu một sự hoạt động Diffie-Hellman. Chúng tôi ước tính rằng việc hình thành 100 đường hầm chính và chế độ nhanh mỗi giây cung cấp đủ tốc độ tạo khóa để hỗ trợ thông lượng tầm Gigabit VPN truy cập từ xa. Thật trùng hợp, một mã nguồn IKE và 300 đường hầm IKE mỗi giây yêu cầu cùng một lượng khóa công khai được xử lý [90].