Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 77 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
77
Dung lượng
1,9 MB
Nội dung
TRẦN TRƯỜNG PHAN BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - TRẦN TRƯỜNG PHAN KỸ THUẬT ĐIỆN TỬ XÂYDỰNGFIREWALLTRÊNNỀNTẢNGFPGA LUẬN VĂN THẠC SĨ KHOA HỌC KỸ THUẬT ĐIỆN TỬ 2008-2010 Hà Nội 03 – 2011 XâydựngFireWalltảngFPGA Mục lục Danh sách chữ viết tắt……………………………………………………………… Danh sách bảng biểu…………………………………………………………… Danh sách hình vẽ, sơ đồ……………………………………………………… Mở đầu Chương Tổng quan 1.1 Giao thức mạng TCP/IP [17] 1.1.1 Kiến trúc phân tầng OSI 1.1.2 Chồng giao thức TCP/IP 10 1.1.4 TCP UDP 20 1.3 Các vấn đề việc lọc gói tin[12][13][14][15][16] 29 1.4 Các giải pháp phân loại gói tin[15][16] 30 Chương Thiết kế phần cứng 36 2.1 Tree Bitmap Eatherton Dittia[10] [11] 36 2.1.1 Mô tả cấu trúc Tree Bitmap 36 2.1.2 Kỹ thuật tìm kiếm Tree Bitmap 40 2.2 Mô hình thiết kế phần cứng 45 2.2.1 Ethernet Control Module 46 2.2.2 FPL Module 48 2.2.3 Forward Module 52 2.2.4 TCAM 54 2.2.5 NodeRAM 54 2.2.6 BVRAM 54 Chương Thiết kế phần mềm 55 3.1 Thiết kế mô hình tổ chức nhớ 55 3.1.1 Giải pháp thứ 56 3.1.2 Giải pháp thứ hai 56 3.2 Giải thuật cập nhật thông tin bảng lọc vào nhớ 61 Chương Thực 66 4.1 Xâydựng bo mạch phần cứng [19][20][21] 66 4.2 Sơ đồ chi tiết phần cứng 68 4.3 Phần cứng giải thuật thực FPGA 68 4.4 Hệ thống phần mềm để thêm nút vào RAM……………………………………… 68 4.5 Kết thực ………………………………………………………………….68 KẾT LUẬN 73 TÀI LIỆU THAM KHẢO 74 Học viên: Trần Trường Phan 1 XâydựngFireWalltảngFPGA Danh sách chữ viết tắt Tên viết tắt Tên đầy đủ ý nghĩa LAN Local Area Network Mạng cục MAN Metropolitan Area Network Mạng đô thị WAN Wide Area Network Mạng diện rộng OSI Open System Interconnect Mô hình kết nối hệ thống mở IP Internet Protocol Giao thức liên mạng TCP Transmission Control Protocol Giao thức truyền dẫn hướng kết nối UDP User Datagram Protocol ICMP Internet Protocol IGMP Internet Gateway Protocol ARP Address Resolution Protocol SMTP Simple Mail Protocol SNMP Simple Network Management Giao thức quản lý mạng đơn giản Protocol HTTP Hyper Text Protocol MAC Media Access Control Điều khiển truy nhập môi trường ACL Access Control List Danh sách điều khiển truy nhập NAT Network Address Translation Dịch địa mạng MTU Maximum Transmit Unit Đối tượng truyền tối đa CPU Central Processing Unit Bộ xử lý trung tâm PC Personal Computer Máy tính cá nhân FPGA Field Programmable Gate Array Mảng cổng lập trình Control Học viên: Trần Trường Phan Giao thức truyền dẫn không hướng kết nối Message Giao thức điều khiển thông báo lỗi Manager Giao thức quản lý nhóm Multicast Giao thức phân giải địa Transmission Giao thức truyền thư điện tử đơn giản Transmission Giao thức truyền siêu văn (Web) 2 XâydựngFireWalltảngFPGA RAM ROM TCAM BV-TCAM BVRAM NodeRAM Random Access Memory Read Only Memory Ternary Content Addressable Memory Bit Vector- Ternary Content Addressable Memory Bit Vector RAM Node RAM PIX Học viên: Trần Trường Phan Bộ nhớ truy cập ngẫu nhiên Bộ nhớ đọc Bộ nhớ có khả tìm kiếm Mảng Vec tơ bit TCAM Mảng Bit Vec tơ RAM Một nút bảng luật lọc IP RAM Tên thiết bị tưởng lửa hãng Cisco 3 XâydựngFireWalltảngFPGA Danh sách bảng biểu Bảng 1.1 Các địa multicast dành riêng Bảng 1.2 Các cờ TCP header ý nghĩa Bảng 1.3 Cấu trúc UDP Header Bảng 1.4 Cấu trúc gói số liệu ARP Bảng 1.5: Ví dụ bảng lọc gói tin Bảng 1.6: Bảng lọc luật khác Bảng 1.7: Các tiền tố trường cổng nguồn bảng lọc hình 1.2 BitVector tương ứng Bảng 2.1: Số bit để mã hóa node Bảng 2.2: Thống kê thông số thay đổi theo S Học viên: Trần Trường Phan 4 XâydựngFireWalltảngFPGA Danh sách hình vẽ, sơ đồ Hình 1.1 Cấu trúcphân lớp mô hình OSI Hình1.2 Các lớp chồng giao thức TCP/IP Hình 1.3 Giao tiếp vật lý logic lớp Hình 1.4 Cấu trúc IP Header Hình 1.5 Cấu trúc trường Type of Service Hình 1.6 Cấu trúc trường Flags Hình 1.7 Nguyên tắc phân mảnh gói số liệu IP Hình 1.8 Cấu trúc chung địa IP Hình 1.9 Khuôn dạng địa lớp IP Hình 1.10 Cấu trúc TCP Header Hình 1.11 Thiết lập kết nối TCP/IP Hình1.12 Dịch vụ định tuyến lại (ICMP Redirect) Hình 1.13: Mô hình tường lửa Hình 1.14: Kiến trúc đa vi xử lý Hình 1.15: Mô hình định Hình 1.16: TCAM kiến trúc BV - TCAM Hình 1.17: Chuyển dải “số hiệu cổng ≥ 1024 ” thành tiền tố Hình 1.18: Mô hình Tree Bitmap BitVector tương ứng cổng nguồn Hình 1.19: Sơ đồ khối lọc gói tin sử dụng kiến trúc BV – TCAM Hình 2.1: Mô hình Tree Bitmap Hình 2.2: Chuyển node thành bitmap Hình 2.3: Xâydựng Internal PrefixBitmap node hình 2.2 Hình 2.4: Cây có chiều sâu 16 Hình 2.5: Ví dụ định Hình 2.6: Thông tin bitmap node gốc Hình 2.7: Thông tin node tương ứng Hình 2.8: Ví dụ Count_Ones Hình 2.9: Ví dụ Prefix_Search Hình 2.10: Sơ đồ giải thuật Prefix_Search Hình 2.11: Sơ đồ mô đun phần cứng Hình 2.12: Sơ đồ diễn tiến trạng thái Ethernet Control Module Hình 2.13: Sơ đồ nguyên lý FPL Hình 2.14: Sơ đồ diễn tiến trạng thái FPL Hình 2.15: Sơ đồ khối Forward module Hình 3.1: Chèn node vào NodeRAM Hình 3.2: Mô hình tổ chức nhớ theo kiểu chia vùng nhớ Hình 3.3: Đề xuất cấu trúc liệu NodeRAM Hình 3.4: Đề xuất cấu trúc liệu BVPtrRAM Hình 3.5: Sơ đồ thuật toán tìm kiếm tiền tố Học viên: Trần Trường Phan 5 XâydựngFireWalltảngFPGA Hình 3.6: Sơ đồ thuật toán thêm tiền tố Hình 3.7: Sơ đồ giải thuật chèn node vào NodeRAM Hình 4.1: Mô hình kết nối mạng có ứng dụng Firewall(FW) Hình 4.2: Sơ đồ khối hệ thống FireWall Hình 4.3: Hình vẽ sơ đồ thiết kế phần cứng Hình 4.4: Mạch chuyển mạch gói tin Hình 4.5 : Giao diện MPLAD IDE phát triển phần mềm Hình 4.6 : Báo cáo tốc độ sau thực tổng hợp FPGA Học viên: Trần Trường Phan 6 XâydựngFireWalltảngFPGA Mở đầu Ngày nay, với bùng nổ Internet, liệu truyền qua mạng tốc độ truyền liệu ngày tăng (đến GigaBit/s) Do đó, thiết bị bảo mật tường lửa (Firewall) thông thường dựa vi xử lý (tường lửa phần cứng (PIX router) phần mềm (dựa máy tính PC) không đáp ứng với tốc độ truyền mạng Vì vậy, việc thiết kế thiết bị phần cứng để thiết lập chế bảo mật, nhờ có khả xử lý luồng song song xu hướng có tiềm Giải pháp sử dụngFPGA cho thiết bị mạng thiết bị bảo mật nhiều trung tâm nghiên cứu, đặc biệt trung tâm nghiên cứu ứng dụng: hệ thống mạng truyền thông đa phương tiện - Network and Multimedia Systems Research Lab trường đại học Washington, Saint Louis (http://www.arl.wustl.edu) nhà sản xuất quan tâm tới Ý tưởng sử dụng mạch cứng để tạo chế lọc gói tin cho thiết bị tường lửa nhằm mục đích: - Tăng tốc độ lọc gói tin, tạo khả đáp ứng tốc độ đường truyền ngày cao - Giảm tải gánh nặng cho CPU máy trạm Thêm vào đó, ta thiết kế để ngăn chặn kiểu công tầng thấp (tầng IP) kiểu công phân mảnh gói tin IP gây treo máy trạm (ví dụ DoS) Luận văn trình bày chương: Chương 1: Trình bày tổng quan mạng IP vể tường lửa (firewall) đưa phương pháp lựa chọn thiết kế Chương 2: Trình bày thiết kế phần cứng (cấu hình cho FPGA) Chương 3: Trình bày thiết kế phần mềm để nạp liệu cho tường lửa (firewall) Chương 4: Trình bày kết đạt (lập trình mô phỏng) Học viên: Trần Trường Phan 7 XâydựngFireWalltảngFPGA Chương Tổng quan Trong chương từ tổng quan mạng IP tường lửa Từ nghiên cứu đề phương án thiết kế 1.1 Giao thức mạng TCP/IP [17] Vì FireWall hoạt động chủ yếu dựa giao thức mạng TCP/IP nên trước vào tìm hiểu hoạt động FireWall ta cần khảo sát khía cạnh liên quan đến giao thức 1.1.1 Kiến trúc phân tầng OSI Để việc tổ chức trao đổi số liệu ứng dụng hệ thống mạng thuận tiện không phức tạp, người ta phân chia hệ thống thành chức nhỏ, có phân cấp, độc lập “dựa vào nhau, có tác dụng tương hổ cho nhau” Nguyên tắc tổ chức hệ thống cách phân chia hệ thống thành chức có phân cấp cho phép giảm độ phức tạp thiết kế thực hệ thống thông qua việc xác định chức cấu thành hệ thống giao diện chức mà không qui định bắt buộc phải thực chức nào, mà cho phép thực việc kết nối mở hệ thống không đồng nhất, nghĩa kết nối hệ thống có kiến trúc phần cứng, phần mềm hệ thống cấu trúc số liệu không giống Mô hình mức OSI mô hình kết nối mở hệ thống tính toán xâydựng nguyên tắc phân mức chức 1.Tầng ứng dụng (Application Layer) Có chức cung cấp phương tiện để người sử dụng truy nhập vào môi trường OSI Đồng thời cung cấp dịch vụ mạng Tầng biểu diển thông tin (Presentation Layer) Tầng hoạt động phiên dịch liệu cho mạng Nó thực việc chuyển đổi cú pháp liệu để đáp ứng yêu cầu truyền liệu ứng dụng qua môi trường OSI Học viên: Trần Trường Phan 8 XâydựngFireWalltảngFPGA Application Presentation Session Transport Network Datalink Physical Hình 1.1 Cấu trúcphân lớp mô hình OSI Tầng phiên (Session Layer) Tầng phiên cung cấp chức quản lý truyền thông ứng dụng chạy máy tính khác như: Thiết lập, trì, đồng hoá huỷ bỏ phiên truyền thông ứng dụng Ngoài thực nhiều chức hỗ trợ khác nhau, cho phép quy trình giao tiếp mạng chứng thực người sử dụng bảo vệ truy cập tài nguyên Tầng giao vận (Transport layer) Thực việc truyền liệu hai đầu giao tiếp, tiến hành kiểm soát lỗi điều khiển luồng liệu hai đầu mút truyền liệu cần Nó thực việc ghép kênh, cắt hợp liệu cần Nói chung, nhiệm vụ tầng đảm bảo cho Datagram chuyển giao theo thứ tự gửi không bị mát hay trùng lặp Tầng mạng ( Network Layer) Tầng mạng chịu trách nhiệm điều khiển hoạt động mạng con, định liệu theo lộ trình vật lý nào, vào điều kiện mạng, độ ưu tiên dịch vụ điều kiện khác Thực chức cắt hợp liệu cần Tầng liên kết liệu(Datalink Layer) Tầng có chức cung cấp phương tiện để truyền thông tin qua liên kết vật lý đảm bảo tin cậy thông qua chế đồng hoá, kiểm soát lỗi điều khiển luồng liệu, báo nhận phục hồi lỗi xảytầng vật lý Tầng vật lý(Physical Layer) Nhìn chung, chức tầng vật lý liên quan tới việc biểu diễn bit thông tin giao thức điều khiển việc truyền bit qua đường truyền vật lý Theo tiêu chuẩn Học viên: Trần Trường Phan 9 XâydựngFireWalltảngFPGA - Xóa tiền tố Chèn thêm tiền tố Một tiền tố có dạng (nPrefix, nMask) chèn vào Tree Bitmap Ví dụ: 1000 101* **** **** 1000 101* **** **** nMask = nPrefix = (1000 1010 0000 0000)2 = 35328 Mức node chứa tiền tố là: nPLevel = nMask/4 (Thương nMask 4) Mức tiền tố node là: nSublevel = div(nMask,4) (Số dư nMask 4) Ta cần thực việc tìm kiếm tiền tố để xác định vị trí Sơ đồ thuật toán biểu diễn hình 3.4 Hình 3.5: Sơ đồ thuật toán tìm kiếm tiền tố Học viên: Trần Trường Phan 62 XâydựngFireWalltảngFPGA Có trường hợp: – Tiền tố có Tree Bitmap → Cập nhật lại BitVector – Tiền tố nằm node có sẵn → Xác định mảng BVPtrRAM chứa BitVectorPtr node Tạo BitVector tiền tố BVRAM lưu địa BVRAM mảng xác định (Hàm NewBitVectorPtr()) cập nhật lại thông tin InternalPrefixBitmap node – Tiền tố không nằm node có sẵn → Xác định tạo node chứa Tiền tố (hàm NewNode()) cách: Nếu node nằm mảng có sẵn NodeRAM → Chèn node vào mảng Nếu node không nằm mảng có sẵn → Tạo node cha node này,… Bắt đầu Node hành = Node gốc nLv = nPLevel = nLv ? sai Có node con? Tiền tố cần thêm tồn ? sai đúng sai Node hành = node Node hành = NewNode() Cập nhật BitVector NewBitVector() NewBitVectorPtr() nLv = nLv + Cập nhật node Kết thúc Học viên: Trần Trường Phan 63 XâydựngFireWalltảngFPGA Hình 3.6: Sơ đồ thuật toán thêm tiền tố Chú thích: - nLv: biến để lưu trữ mức node hành - NewNode(): hàm tạo thêm node - NewBitVector(): hàm tạo BitVector BVRAM - NewBitVectorPtr(): hàm tạo trỏ BVPtr trỏ tới Bitvector tạo Các hàm NewBitVectorPtr() NewNode() thực theo nguyên tắc đưa phần 3.1.2 Sơ đồ giải thuật hàm NewNode biểu diễn hình 3.6 Học viên: Trần Trường Phan 64 XâydựngFireWalltảngFPGA Bắt đầu sai Vùng nhớ hành đầy? Tìm mảng nhỏ vùng hành Di chuyển liệu xuống Mảng nhỏ nhât mảng hành? sai Tìm vùng nhớ phù hợp Tìm vùng nhớ phù hợp Sao chép mảng hành Sao mảng nhỏ sang vùng Thêm node Thêm node Cập nhật header vùng nhớ phù hợp mảng nhỏ Cập nhật node cha Cập nhật node cha Di chuyển lại liệu vùng nhớ hành Cập nhật Header vùng nhớ phù hợp mảng hành Di chuyển liệu vùng nhớ hành Thêm node Cập nhật Node cha Cập nhật Header mảng hành Cập nhật Header vùng nhớ hành Kết thúc Hình 3.7: Sơ đồ giải thuật chèn node vào NodeRAM Học viên: Trần Trường Phan 65 XâydựngFireWalltảngFPGA Chương Thực 4.1 Xâydựng bo mạch phần cứng [19][20][21] Bo mạch phần cứng phát triển để nhúng thuật toán xâydựngFireWall vào FPGATrên bo mạch bao gồm chíp FPGA sparten XC3S400 Xilinx chip vi xử lý PIC18F87J60 dùng để điều khiển trình nạp luật cho FPGA Ngoài chip PIC18F87J60 dùng để nạp cấu hình cho chip giao diện khởi tạo FireWalldùng để bảo mật cho máy với mạng Internet nội mạng với mạng bên HUB FW FW FW FW Hình 4.1: Mô hình kết nối mạng có ứng dụng Firewall(FW) Trên bo mạch chip FPGA CPU nhân có chíp xử lý giao diện ENC624J600 với tốc độ 100M Trên ENC624J600 chức làm giao diện Ethernet tích hợp mã hóa giải mã AES hỗ trợ lọc tầng MAC Học viên: Trần Trường Phan 66 XâydựngFireWalltảngFPGAFPGAFireWall core Port0 CPE Port1 RTE MAC/PHY Interface Logic core FireWall core RAM CPU PIC18F87J60 RS232 to PC Hình 4.2: Sơ đồ khối hệ thống FireWall - MAC/PHY interface: Khối bao gồm chip xử lý giao diện bên ENC624J600 Khối sau giao tiếp với khối Logic core để thực xử lý giao tiếp với CPU FireWall core - Logic core: Nhận liệu từ MAC/PHY bên thực đưa liệu sang khối FireWall core Ngoài làm cầu nối giao diện để nạp cấu hình khởi động cho chip ENC624J600 - Khối CPU: Sử dụng để cập nhật liệu luật lên RAM - FireWall core: thực lọc gói tin theo theo luật nằm RAM - RAM: Lưu trữ luật gói tin cần lọc - RS232: Giao tiếp với PC để thực cập nhật luật lên bảng lọc phần mềm Học viên: Trần Trường Phan 67 XâydựngFireWalltảngFPGA 4.2 Sơ đồ chi tiết phần cứng Sau sơ đồ khối thực phần mạch cứng Hình 4.3: Hình vẽ sơ đồ thiết kế phần cứng 4.3 Phần cứng giải thuật thực FPGA Sơ đồ thiết kế phần cứng thể trang sau Học viên: Trần Trường Phan 68 XâydựngFireWalltảngFPGA Hình 4.4: Mạch chuyển mạch gói tin Học viên: Trần Trường Phan Cao học khóa 2008 -2010 69 XâydựngFireWalltảngFPGA Phần cứng đồ án viết ngôn ngữ VHDL, sử dụng phần mềm thiết kế ISE 9.2 (Integrated Software Environment) Xilinx[20] Vì FireWall có giao diện mạng: cổng cổng 1: cổng kết nối với máy trạm cần bảo vệ cổng dùng để kết nối với mạng bên Do có luồng gói tin trao FireWallnên ta phải thiết kế lọc gói tin cho cổng cổng Dữ liệu bảng lọc trường cổng nguồn cổng đích lưu cặp RAM: - Local_port NodeRAM Local_BVRAM: lưu trữ trường cổng nguồn ứng với liệu vào từ cổng trường cổng đích ứng với liệu vào từ cổng - Remote_port NodeRAM Remote_BVRAM: lưu trữ trường cổng đích ứng với liệu vào từ cổng trường cổng nguồn ứng với liệu vào từ cổng Ta thêm chọn kênh có tín hiệu chọn số (txpid) cổng – cổng hay cổng để phân chia thời gian truy cập RAM lọc Trong sơ đồ trên, nửa khối phục vụ lọc gói tin cổng 1, nửa khối phục vụ lọc gói tin cổng Tín hiệu rxpid đưa trở lại FPGA tín hiệu đảo txpid gói tin vào từ cổng đưa mạng cổng ngược lại Do dung lượng RAM sẵn có FPGA – Spartan XC3S400 288Kbit Lượng RAM không lớn nên để thử nghiệm thiết kế phần cứng, lựa chọn thông số sau: - Số lượng luật lớn bảng lọc: N = 64 Do TCAM có dung lượng 64 x 72 bit - Dung lượng Local_port NodeRAM Remote_port NodeRAM: 512 x 64 bit tức hỗ trợ tối đa 512 node - Dung lượng Local_port BVRAM Remote_port BVRAM: 512 x 64 bit tức hỗ trợ tối đa 512 tiền tố Học viên: Trần Trường Phan Cao học khóa 2008 -2010 70 XâydựngFireWalltảngFPGA Các nhớ RAM, TCAM, FIFO tạo từ IP core (intellectual property) Xilinx cung cấp thông qua chương trình CoreGen Chương trình Coregen Xilinx hỗ trợ tạo FIFO có chuẩn chiều dài 32, 64, 128,… nên ta chọn chiều dài FIFO 128 (phải lớn 96 theo tính toán mục 2.2.3) Tần số hoạt động tất thành phần hệ thống 25Mhz để phù hợp với tốc độ truyền liệu từ FPGA sang chíp giao tiếp Ethern 4.4 Hệ thống phần mềm để thêm nút vào RAM Hệ thống phần mềm xâydựngtảng dòng chip PIC hãng Microchip Mã nguồn hệ thống xâydựng mã nguồn mở cung cấp miễn phí TCP/IP stack hãng Microchip[22] CPU dùng PIC18F87J60 với 128KB Flash 3.8KB RAM, 10MIPS có giao diện mở rộng Ethernet Ở có tính chất giới thiệu module phần mềm với xu hướng cập nhật node Ram lập trình để tạo thành trang webserver để cấu hình firewall từ xa Trong khuôn khổ luận văn phần mềm chưa viết Hình 4.5 : Giao diện MPLAD IDE phát triển phần mềm Học viên: Trần Trường Phan Cao học khóa 2008 -2010 71 XâydựngFireWalltảngFPGA 4.5 Kết thực Do thời gian đặt mạch in linh kiện kèm theo mạch bị trễ nên kết dừng lại mô module đánh giá Sau biên dịch chương trình (synthesis) kết thu được: - Tần số hoạt động tối đa mạch: 64.729 MHz, tức tần số hoạt động FPGA : 25 MHz hoàn toàn chấp nhận Hình 4.6 : Báo cáo tốc độ sau thực tổng hợp FPGA Học viên: Trần Trường Phan Cao học khóa 2008 -2010 72 XâydựngFireWalltảngFPGA KÊT LUẬN Sau thời gian thực luận văn tác giả thu số kết sau: • Nghiên cứu tìm hiểu tảng mạng giao thức, ứng dụng • Nghiên cứu chế phương thức hoạt động FireWall • Tìm hiểu FPGA ngôn ngữ VHDL • Tìm hiểu lập trình ứng dụng nhúng cho vi điều khiển (PIC 18) • Nghiên cứu ứng dụng giải thuật TCAM BV-CAM vào FPGA để xâydựngFireWall cứng • Thiết kế bo mạch phần cứng (nguyên lý) để thực hệ thống nhúng FireWall Tuy nhiên, hệ thống nhiều thiếu sót như: Chưa thiết kế bo mạch phần cứng để thực giải thuật xâydựng lý thuyết Cấu trúc tưởng lửa đơn giản thiếu tính linh hoạt Hệ thống nêu mang tính chất giới thiệu, đưa vào thực tế cần có đầu tư nghiên cứu nhiều Học viên: Trần Trường Phan Cao học khóa 2008 -2010 73 XâydựngFireWalltảngFPGA TÀI LIỆU THAM KHẢO Bài báo [1] Haoyu Song and John W Lockwood (2005), “Efficient Packet Classification for Network Intrusion Detection using FPGA”, International Symposium on Fieldprogrammable gate arrays, Montery,CA,(Feb 20-22),1-8 [2] David E Taylor, John W Lockwood, Todd S Sproull, Jonathan S Turner, David B Parlour (2002), “Scalable IP Lookup for Programmable Routers”, IEEE INFOCOM 2002,1-11 [3] Marcel Waldvogely, George Varghesez, Jon Turnerz, Bernhard Plattner (1997) “Scalable High Speed IP Routing Lookups” by SIGCOMM '97 Proceedings of the ACM SIGCOMM '97 conference on Applications, technologies, architectures, and protocols for computer communication,1-12 [4] Kai Zheng1 and Hao Che and Zhijun Wang3 and Bin Liu1 and Xin Zhang (2006),“A TCAM -based distributed parallel IP lookup scheme and performance analysis”, IEEE/ACM Transactions on Networking (TON), VOL.14, (4),1-35 [5] Karthik Lakshminarayanan and Anand Rangarajan and Srinivasan Venkatachary (2005)“Algorithms for Advanced Packet Classification with Ternary CAMs”, In Proceedings of SIGCOMM'2005,193-204 [6] Christopher Hayes and Yatin Singhal “Rules-based Network Intrusion Detection using a Field Programmable Gate Array”, 16.671 Advanced Computer Architecture, UMASS Lowell, 1-21 [7] James Moscola and John Lockwood and Ronald P Loui and Michael Pachos (2003) “Implementation of a Content-Scanning Module for an Internet Firewall”, FieldProgrammable Custom Computing Machines (FCCM)- Napa- CA, April 9-11, 1-8 Học viên: Trần Trường Phan Cao học khóa 2008 -2010 74 XâydựngFireWalltảngFPGA [8] Shubhash Wasti (2001),“Hardware Assisted Packet Filtering Firewall” Proceedings of the 2000-2001 Grad Symposium, CS Dept, University of Saskatchewan, 11 April 2001,1-10 [9] Long Bu and John A Chandy (2004), "FPGA Based Network Intrusion Detection using Content Addressable Memories," fccm,12th Annual IEEE Symposium on FieldProgrammable Custom Computing Machines (FCCM'04),316-317 [10] Ioannis Sourdis and Dionisios Pnevmatikatos (2005), “Fast, Large-Scale String Match for a 10Gbps FPGA-based NIDS” New Algorithms, Architectures, and Applications for Reconfigurable Computing ,Chapter 16, ISBN 1-4020-3127-0,195-207 [11] W Eatherton and Z Dittia and G Varghese (2004),“Tree Bitmap : Hardware/Software IP Lookups with Incremental Updates”, Computer Communication Review 2004, 97-122 Đồ án [12] William N Eatherton (1999), Hardware – based internet protocol prefix lookups, Washington University, department of electrical Engineering [13] Weidong Lu (2003), Designing TCP/IP Functions In FPGAs, Faculty of Electrical Engineering, Mathematics and Computer Science, Mekelweg university, Netherlands [14] Tinoosh Mohsenin (2004), Design and Evaluation of FPGA-Based GigabitEthernet/PCI Network Interface Card, Rice University [15] Christophoros Kachris (2001), Design and Implementation of a TCP/IP core for reconfigurable logic, Technical university of crete [16] Joannis Sourdis (2004), Efficient and High-Speed FPGA-based String Matching for Packet Inspection, Technical University of Crete, Electronic and Computer Engineering department Học viên: Trần Trường Phan Cao học khóa 2008 -2010 75 XâydựngFireWalltảngFPGA Sách tham khảo [17] Libor Dostalek and Alena Kabelova (2006),Understanding TCP/ IP, Birmingham, [England] : Packt Pub [18] Elizabeth D Zwicky, Simon Cooper & D Brent Chapman (2000), Building Internet Firewalls , O'Reilly Media Website [19] http://www.arl.wustl.edu [20] http://www.xilinx.com [21] http://www.opencores.org [22] http://www.microchip.com Học viên: Trần Trường Phan Cao học khóa 2008 -2010 76 ... Trường Phan 5 Xây dựng FireWall tảng FPGA Hình 3.6: Sơ đồ thuật toán thêm tiền tố Hình 3.7: Sơ đồ giải thuật chèn node vào NodeRAM Hình 4.1: Mô hình kết nối mạng có ứng dụng Firewall( FW) Hình... Phan 6 Xây dựng FireWall tảng FPGA Mở đầu Ngày nay, với bùng nổ Internet, liệu truyền qua mạng tốc độ truyền liệu ngày tăng (đến GigaBit/s) Do đó, thiết bị bảo mật tường lửa (Firewall) thông... Trường Phan 7 Xây dựng FireWall tảng FPGA Chương Tổng quan Trong chương từ tổng quan mạng IP tường lửa Từ nghiên cứu đề phương án thiết kế 1.1 Giao thức mạng TCP/IP [17] Vì FireWall hoạt động