Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
1,48 MB
Nội dung
ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA NGUYỄN VĂN CƯỜNG C C R L T NGHIÊN CỨU VÀ THỰC HIỆN PHƯƠNG PHÁP TIẾT KIỆM NĂNG LƯỢNG TRÊN BỘ CHUYỂN MẠCH OPENFLOW DU Chuyên ngành : Kỹ thuật Điện tử Mã số : 852.02.03 LUẬN VĂN THẠC SĨ KỸ THUẬT ĐIỆN TỬ Đà Nẵng - Năm 2020 Cơng trình hoàn thành TRƯỜNG ĐẠI HỌC BÁCH KHOA Người hướng dẫn khoa học: PGS.TS Nguyễn Văn Cường C C R L T Phản biện 1: TS Võ Minh Tuấn Phản biện 2: TS Ngô Văn Sỹ DU Luận văn bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ Kỹ thuật Điện tử họp trường Đại học Bách Khoa vào ngày 25 tháng 10 năm 2020 Có thể tìm hiểu luận văn tại: Trung tâm Học liệu, Đại học Đà Nẵng Trường Đại học Bách khoa Thư viện Khoa Điện tử Trường Đại học Bách khoa - ĐHĐN MỞ ĐẦU Sự mở rộng không ngừng phạm vi quy mô trung tâm liệu nhằm đáp ứng nhu cầu sử dụng, dẫn đến thực trạng mức tiêu thụ lượng lớn thiết bị mạng Một giải pháp đưa điều khiển thông minh mức tiêu thụ lượng chuyển mạch sử dụng trung tâm liệu.Vì “Nghiên cứu và thực hiện phương pháp tiết kiệm lượng bộchuyển mạch OpenFlow” lý luận văn tập trung nghiên cứu Nội dung luận văn gồm5 chương: Phần “Tìm hiểu thực trạng giải pháp mạng OpenFlow” Chương 1: Vấn đề tiết kiệm lượng giải pháp sử dụng mạng OpenFlow Chương 2:Ứng dụng mạng OpenFlow tảng NetFPGA Phần “Nghiên cứu giải pháp tiết kiệm lượng” Chương 3: Triển khai hệ thống mạng OpenFlow tảng kit NetFPGA Chương 4: Xây dựng chương trình tiết kiệm lượng cho chuyển mạch OpenFlow Phần “Đo đạc đánh giá kết đạt đươc” Chương 5: Thực đo đạc kết C C DU R L T CHƯƠNG VẤN ĐỀ TIẾT KIỆM NĂNG LƯỢNG VÀ GIẢI PHÁP SỬ DỤNG MẠNG OPENFLOW 1.1 Giới thiệu Cơ sở hạ tầng mạng trở nên quan trọng hoạt động tổ chức trường học, doanh nghiệp, nhà cung cấp dịch vụ mạng Vấn đề đặt cho nhà nghiên cứu phát triển giảm tối đa lượng điện tiêu thụ trung tâm liệu mà khả xử lý thông tin đảm bảo Nội dung chương giới thiệu lý tiết kiệm lượng giải pháp sử dụng mạng OpenFow C C R L T 1.2 Vấn đề tiết kiệm lượng Các switch router không cho biết đầy đủ thông số lượng tiêu thụ Một switch/router đặc trưng gồm chassis chứa khe cắm linecard Công suất tiêu thụ chassis chiếm phần lớn công suất tiêu thụ switch nên đo thông số lượng tiêu thụ tất thành phần switch cách tồn diện khó thực DU 1.3 Giải pháp sử dụng mạng OpenFlow 1.3.1 Sự cần thiết cho một kiến trúc mạng Hầu hết mạng thông thường theo kiến trúc phân cấp Thiết kế hiệu mơ hình tính tốn client-server chiếm ưu thế, khơng thích hợp với u cầu tính tốn đa dạng, động nhu cầu lưu trữ liệu 1.3.2 Mục tiêu mạng OpenFlow Yêu cầu thị trường gánh nặng với kiến trúc mạng truyền thống Những hạn chế mạng bao gồm: - Độ phức tạp cao gây tắc nghẽn - Chính sách khơng đồng - Khả quy mô - Phụ thuộc vào nhà cung cấp thiết bị 1.3.3 Giao thức OpenFlow Giao thức OpenFlow, cho phép trực tiếp thao tác phần chuyển mạch thiết bị mạng, hỗ trợ việc chuyển tiếp gói tin OpenFlow gói tin truyền thống, điều giúp cho doanh nghiệp người sử dụng dễ dàng tiếp cận đến mạng, môi trường mạng thiết lập nhiều nhà cung cấp C C 1.4 Kết luận Tóm lại, xu hướng người sử dụng ngày ưa chuộng tính di động, ảo hóa máy chủ, yêu cầu đáp ứng cách nhanh chóng với điều kiện kinh doanh thay đổi đặt nhiều yêu cầu lên hệ thống mạng, nhiều kiến trúc mạng thông thường đảm đương DU R L T CHƯƠNG ỨNG DỤNG MẠNG OPENFLOW TRÊN NỀN TẢNGNETFPGA 2.1.Giới thiệu Thiết kế hay lập trình cho FPGA thực chủ yếu ngôn ngữ mô tả phần cứng HDL VHDL, Verilog, AHDL Nội dung chương giới thiệu ứng dụng mạng OpenFlow tảng NetFPGA 2.1.1 Ứng dụng FPGA C C R L T FPGA ứng dụng để chế tạo thiết bị mạng máy tính định tuyến, chuyển mạch Trong luận văn chuyển mạch OpenFlow DU 2.1.2 Kiến trúc FPGA Các kiến trúc FPGA bao gồm ba loại thành phần: khối logic, định tuyến, khối vào Nó bao gồm mảng khối logic cấu hình (CLB) kết nối với khối I/O lập trình thơng qua số loại kiến trúc định tuyến lập trình Hình 2.1 Kiến trúc chung FPGA 2.2 Chuyển mạch OpenFlow tảng NetFPGA 2.2.1 Kiến trúc bợ chủn mạch OpenFlow C C Hình 2.5 Cấu trúc OpenFlow Switch Chuyển mạch OpenFlow chủ yếu bao gồm hai bảng luồng (bảng khớp xác bảng ký tự đại diện) giao diện để sửa đổi mục bảng luồng Bộ điều khiển OpenFlow định đường dẫn cho gói Hình 2.5 mơ tả ngắn gọn chuyển mạch OpenFlow 2.2.1.1 Bộ điều khiển OpenFlow Bộ điều khiển thiết bị chính, chịu trách nhiệm trì tất quy tắc mạng phân phối hướng dẫn thích hợp cho thiết bị mạng 2.2.1.2 Chuyển mạch OpenFlow Chuyển mạch OpenFlow chủ yếu bao gồm ba phần: - Flow-table: Bảng bao gồm mục nhập luồng mục nhập luồng có hành động kèm dùng để xử lý luồng - Secure Channel: Là phần mềm dùng để kết nối chuyển mạch với điều khiển Nó cho phép lệnh gói tin truyền qua lại điều khiển chuyển mạch sử dụng giao thức OpenFlow - Giao thức OpenFlow: Giao thức cho phép chỉnh sửa bảng luồng từ điều khiển từ xa, tránh việc phải lập trình cho chuyển mạch 2.2.1.3 Các thành phần chuyển mạch OpenFlow DU R L T a.Giao thức Openflow Ba loại thông báo xác định giao thức OpenFlow: Tin nhắn đối xứng Tin nhắn không đối xứng Tin nhắn điều khiển chuyển mạch Bộ điều khiển quản lý sửa đổi trạng thái chuyển mạch OpenFlow qua tin nhắn b Bảng luồng OpenFlow Chuyển mạch OpenFlow có hai bảng luồng: Bảng khớp xác bảng khớp ký tự đại diện Gói luồng qua xử lý đường ống (pipeline) thể Hình 2.10 C C R L T DU Hình 2.10.Xử lý đường ống c Kênh OpenFlow Chuyển mạch OpenFlow kết nối với điều khiển thông qua kênh OpenFlow Thông qua giao diện này, điều khiển quản lý sửa đổi bảng luồng 2.2.2 Giới thiệu NetFPGA NetFPGA-10G phiên hệ thứ hai.Có bốn cổng Ethernet 10 Gbps song cơng Hình 2.11 Phác thảo phần cứng NetFPGA-10G có đặc điểmsau: 1) Hoạt động tốc độ dòng 10 Gbps vớikích thước gói nhỏ (14,88 Mpps - Hàng triệugói giây) 2) Sử dụng nhớ FPGA bên (Block RAM) 3) Các luồng xóa khỏi nhớ xuất hết thời gian chờ không hoạt động (15 giây) C C R L T DU Hình 2.13.Sơ đồ khối FPGA 2.2.3 Xây dựng bộ chuyển mạch OpenFlow tảng NetFPGA NetFPGA sử dụng phần cứng mạng tốc độ Gigabit, bao gồm thẻ PCI có đồ họa, nhớ bốn cổng Ethernet 1-Gig Cung cấp kiến trúc chuyển tiếp gói linh hoạt dựa hoạt động đặn, cho phép OpenFlow tuân thủ tiêu chuẩn chuyển mạch, dễ dàng cấu hình lại thơng qua mặt phẳng điều khiển để hỗ trợ loại ứng dụng khác 2.3 Kết luận chương Qua chương này, hiểu biết chung công nghệ FPGA chuyển mạch OpenFlow tảng NetFPGA trình bày Nhằm cung cấp hình ảnh tổng quan FPGA kiến thức chuyển mạch OpenFlow tảng NetFPGA C C DU R L T 10 Hình 3.3.Mơ đun tra cứu cổng đầu Khi gói tạo vào chuyển mạch OpenFlow, thơng tin tiêu đề quan trọng trích xuất sau thiết lập thành định dạng so sánh với mục hai bảng luồng Ở đây, gói trùng khớp khơng trùng khớp chuyển đến hàng đợi đầu cuối C C DU R L T 3.3.Kết luận chương Trong chương này, thực việc xây dựng chuyển mạch OpenFlow dựa tảng NetFPGA theo môi trường thực tiễn Việc xây dựng hệ thống mạng sở nghiên cứu khác đặc biệt giải thuật tiết kiệm lượng cho mạng OpenFlow 11 CHƯƠNG XÂY DỰNG CHƯƠNG TRÌNH TIẾT KIỆM NĂNG LƯỢNG CHO CHUYỂN MẠCH OPENFLOW 4.1 Giải pháp tiết kiệm lượng Để tiết kiệm lượng luận văn đưa giải pháp sử dụng tùy chọn “LOCAL”t rong Openflow specification tích hợp “Microprocessor” bên chuyển mạch OpenFlow để phân tích hành động luồng liệu đến/đi để bật tắt cổng tương ứng Phân tích lưu lượng thực cổng để thiết lập chế độ hoạt động cổng cụ thể gồm mục tiêu sau: C C R L T - Phân tích “Action” luồng, hệ thống kích hoạt cổng mà luồng có nhu cầu trao đổi liệu Còn cổng khác tắt DU - Phân tích băng thơng luồng liệu đến End-User đến Port, hệ thống thiết lập chế độ hoạt động cho cổng phù hợp Các giải pháp xuất phát từ việc chuyển trạng thái chuyển mạch trạng thái tiết kiệm lượng Với cổng chuyển mạch OpenFlow ngắt tiết kiệm xấp xỉ 1W với chuyển mạch port tắt tiết kiệm xấp xỉ 10W (4W cho port 6W cho phần lõi) 4.2 Thiết kế mô đun 4.2.1 Mô đun thiết lập mục nhập bảng luồng Mô đun thiết lập mục nhập bảng luồng để trích xuất tiêu đề gói tổ chức chúng định dạng cố định mục nhập bảng luồng 12 Hình 4.1 Mơ đun thiết lập mục nhập luồng 4.2.1.1 Khối hàng đợi Khối hàng đợi đầu vào FIFO khối phổ biến cho kiến trúc chuyển mạch OpenFlowđể giảm tình trạng áp lực ngược 4.2.1.2 Khối phân tích tiêu đề C C DU R L T Bảng 4.1 Các trường khớp Field Match fields Ingress port Ethernet source address Ethernet destination address Ethernet type VLAN id VlAN priority MPLS label MPLS traffic class IPv4 source address IPv4 destination address IPv4 protocol/ARP opcode IPv4 ToS bits IPv6 source address Bits 256 48 48 16 12 20 32 32 128 13 Field Bits IPv6 destination address 128 Transport source port/ICMP Type 16 Transport destination port/ICMP Code 16 Bảng 4.1 cho thấy trường tiêu đề trích xuất từ gói thiết kế đề tài theo trường khớp mơ tả OpenFlow specification v1.1 Hình 4.2 minh họa cấu trúc khung Ethernet có, khơng có thẻ Vlan (0x8100) thẻ QinQ (0x8a88) Hình 4.3 minh họa trình nhận L2 trường tiêu đề Các loại Ethernet khác (xem bảng 4.2) phát thông qua câu lệnh C C R L T DU Hình 4.2.Cấu trúc gói tin Ethernet Hình 4.3.Máy trạng thái trình phân tích cú pháp L2 Bảng 4.2.Loại Ethernet MPLS Loại Ethernet IPv4 ARP MPLS unicast multicast Nội dung 0x0800 0x0806 0x8847 0x8848 Hình 4.5 minh họa thủ tục ip_tp_parser Bên cạnh đó, lỗi giao thức IP phát thông qua câu lệnh if Nếu giao thức IP TCP, UDP,SCTP ICMP (xem bảng 4.3), gói phân tích cú pháp thêm để trích xuất trường tiêu đề tương ứng 14 Bảng 4.3 Loại giao thức IP Loại giao thức IP TCP UDP SCTP ICMP Nội dung 0x06 0x11 0x84 0x01 C C Hình 4.5 Máy trạng thái trình phân tích cú pháp L3/L4 (Ipv4) Nếu loại Ethernet ARP, arp_parser (hình 4.7) bắt đầu hoạt động Mã ARP, địa IP người gửi địa IP đích trường tiêu đề ARP (hình 4.6) trích xuất R L T DU Hình 4.6 Cấu trúc tiêu đề ARP Hình 4.7 Máy trạng thái trình phân tích cú pháp ARP Có thể thấy từ hình 4.8, chiều dài nhãn MPLS 20 bits lưu lượng MPLS lớp bit trường tiêu đề MPLS Nếu loại Ethernet MPLS, máy trạng thái mpls_parser (hình 4.13) bắt đầu 15 trích xuất nhãn MPLS lớp lưu lượng MPLS Hình 4.8 Cấu trúc tiêu đề MPLS C C R L T Hình 4.13 Máy trạng thái phân tích cú pháp MPLS 4.2.1.3 Tra cứu thiết lập mục nhập luồng Khối tra cứu thiết lập mục nhập luồng sẵn sàng để thiết lập khối phân tích cú pháp tiêu đề bắt đầu hoạt động 4.2.1.4 Mô kiểm tra Testbench VHDL viết để kiểm tra chức khối phân tích cú pháp tiêu đề, khối tra cứu thiết lập mục nhập toàn mô đun thiết lập mục nhập bảng luồng Kết kiểm tra mơ thể hình 4.15 Thuật tốn 4.5 cho thấy ví dụ testbench Hình 4.15 cho thấy trường tiêu đề quan trọng trích xuất xác DU Hình 4.15 Kết mơ phân tích tiều đề gói tin 16 Hình 4.16 Kết mô tra cứu mục nhập bảng lưu lượng C C R L T Hình 4.17 Kết mô thiết lập mục nhập bảng luồng 4.2.2 Mô đun điều khiển bảng luồng Mục tra cứu tra cứu mô đun điều khiển bảng luồng sau phân tích cú pháp trích xuất 4.2.2.1 Các thành phần mô đun điều khiển bảng luồng DU Hình 4.18 Mơ đun điều khiển bảng luồng Hình 4.18 minh họa thành phần mô đun điều khiển bảng luồng bao gồm lựa chọn yêu cầu, bảng khớp xác, bảng khớp ký tự đại diện, hành động, so sánh sách điều khiển 4.2.2.2 Các dạng tín hiệu Tín hiệu truy vấnvà trả lời mô đun thiết lập mục nhập luồng 17 Tín hiệu cho mơ đun sách điều khiển Tín hiệu cho mơ đun xử lý hành động 4.2.2.3.Mơ kiểm tra C C Hình 4.20 Kết mô tra cứu bảng luồng R L T DU Hình 4.21 Kết mơ viết mục nhập luồng 4.2.3.Mơ đun xử lý hành đợng Vai trị mơ đun xử lý hành động (hình 4.22) định chuyển tiếp cổng, cập nhật trường tiêu đề độ dài gói theo chuyển mạch OpenFlow 4.2.3.1 Các thành mô đun xử lý hành động Hình 4.22 Mơ đun xử lý hành động 18 Hành động bao gồm thông tin cổng đầu ra, cờ hành động, Vlan ID… Cờ hành động đểhướng dẫn thực thi xác hành động 4.2.3.2 Các dạng tín hiệu Tín hiệu từ mơ đun thiết lập bảng luồng Tín hiệu từ điều khiển bảng luồng 4.2.3.3 Mô kiểm tra C C R L T DU Hình 4.23 Kết mơ xử lý hành động 4.2.4 Mơ đun sách điều khiển Mơ-đun sách điều khiển thực FPGA Nếu khơng tìm thấy trường phù hợp, mơ-đun sách điều khiển bắt đầu hoạt động để đưa định cách đối phó với gói chưa có 4.2.4.1 Chính sách điều khiển Hình 4.24 hình 4.25 minh họa mơ đun sách điều khiển xử lý để viết luồng tương ứng 19 Hình 4.24 Mơ đun sách điều khiển 4.2.4.2 Các dạng tín hiệu Tín hiệuđến từ mơ đun điều khiển bảng luồng Tín hiệu gửi cho mô đun điều khiển bảng luồng 4.2.4.3 Mô kiểm tra Chức mô-đun để tạo thông tin nhập luồng viết chúng vào bảng luồng sau nhận yêu cầu không trùng khớp C C R L T DU Hình 4.26 Kết mơ sách điều khiển 4.3 Kết luận chương Chương đưa giải pháp xây dựng chuyển mạch OpenFlow sang trạng thái lượng thấp; đồng thời quan trọng tạo tin theo chuẩn giao thức OpenFlow mang thông tin chế độ tiết kiệm lượng gửi từ điều khiển Các tin để thiết lập trạng thái hoạt động chuyển mạch OpenFlow thời điểm dựa theo thuật tốn tìm đường nhà phát triển thử nghiệm 20 CHƯƠNG THỰC HIỆN ĐO ĐẠC VÀ KẾT QUẢ 5.1 Chuyển mạch OpenFlow có chức tiết kiệm lượng Với tảng FPGA, thành phần bên thiết bị tảng FPGA thay đổi, tuỳ chỉnh theo yêu cầu thiết kế Các thành phần tắt khơng cần thiết tần số làm việc thiết bị thay đổi 5.2 Đo kiểm tra hệ thống Trong phần này, kết mô hiệu suất mô tả, cụ thể thời gian phục vụ (chuyển mạch điều khiển) thời gian tạm trú C C R L T Bảng 5.1 Bảng thống kê DU Tóm tắt sử dụng thiết bị (giá trị ước tính) Logic sử dụng Sử dụng Có sẵn Tỷ lệ % Số lượng Slice Registers 5330 301440 1,77% Số lượng Slice LUTs 6870 150720 4,56% Số cặp LUTT-FF sử dụng đầy đủ 4604 7596 60,6% Số lượng IOBs 522 600 87% Số lượng Block RAM/FIFO 31 416 7,45% Số lượng BUFG/BUFGCTRLs 16 32 50% Tốc độ xung Clock 100 MHz Nguồn 275 mW 5.3 Thời gian phục vụ thời gian tạm trú Bảng 5.2 cho thấy thời gian phục vụ chuyển mạch thời gian lưu trú Nó kết luậnrằng thời gian lưu trú trường hợp độ trễ gói đầu cuối 21 Bảng 5.2 Kết mô hiệu suất Kích thước gói tin (bytes) Thời gian phục vụ chuyển mạch (µs) Thời gian tạm trú (µs) 64 0.48 0.51 128 0.88 0.93 192 1.3 1.34 256 1.68 1.75 320 2.08 2.12 384 2.58 448 2.88 512 3.38 576 3.70 R L T U 640 C C 2.62 2.91 3.41 3.73 4.08 4.12 4.48 4.51 5.00 5.03 5.28 5.34 896 5.68 5.71 960 6.08 6.11 1024 6.50 6.54 1088 6.88 6.93 1152 7.28 7.31 1216 7.68 7.71 1280 8.08 8.11 1344 8.48 8.51 1408 8.90 8.93 1536 9.30 9.33 704 768 832 D 22 5.4 Kết Hình 5.1 Các kết mô thời gian phục vụ chuyển mạch C C Hình 5.1 Thời gian phục vu chuyển mạch Thời gian tạm trú tăng gần tuyến tínhthể hình 5.2 R L T DU Hình 5.2 Thời gian tạm trú Hình 5.3 Thời gian phục vụ điều khiển Có thể thấy hình 5.3 thời gian phục vụ 23 điều khiển với gói có kích thước khác có thay đổi Trung bình thời gian phục vụ điều khiển là0,045 µs 5.5 Kết luận chương Qua việc thử nghiệm, thực thực yêu cầu đề luận văn Về phương diện lý thuyết, phương án chuyển mạch OpenFlow tỏ ưu việt việc tiết kiệm lượng Song thực tế lại chưa có đánh giá hoàn chỉnh mức lượng tiêu thụ thực áp dụng chuyển mạch OpenFlow Để có kết đo đạc lượng tiêu thụ cụ thể ta đo mơi trường Internet thực tế đo lường nhiều số liệu hiệu suất C C DU R L T 24 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI Trong luận văn này, chi tiết mô hình hệ thống OpenFlow mơ tả kết mô hiệu suất hiển thị Mục tiêu thực mơ hệ thống OpenFlow Một mặt, để thực mơ hình hệ thống OpenFlow tảng FPGA Mặt khác, mô hiệu suất thực để đo thời gian tạm trú thời gian phục vụ Kết là, tìm thấy thời gian tạm trú thời gian phục vụ chuyển mạch có gia tăng gần tuyến tính với gia tăng kích thước payload Hơn nữa, chuyển mạch đáp ứng u cầu viết từ mơ đun sách điều khiển với độ trễ cố định chu kỳ Vì vậy, kết luận thời gian giao tiếp chuyển mạch điều khiển giảm Những phát áp dụng cho nghiên cứu trình bày luận văn khơng thể khái qt Bởi có số hạn chế việc thực chuyển mạch OpenFlow Các số liệu hiệu suất đo môi trường thử nghiệm mô thông qua máy tạo gói bo, khơng phải mơi trường Internet thời gian thực Theo giới hạn trình bày trên, hướng phát triển cần phải tiếp tục nghiên cứu thực tế môi trường internet Các số liệu hiệu suất chuyển mạch OpenFlow phải đo mơi trường Internet thực tế đo nhiều số liệu hiệu suất tỷ lệ gói tin bị Ngoài ra, chuyển mạch điều khiển OpenFlow thực FPGA với nhiều cổng Ethernet C C DU R L T ... lượng chuyển mạch sử dụng trung tâm liệu.Vì ? ?Nghiên cứu và thực hiện phương pháp tiết kiệm lượng bô? ?chuyển mạch OpenFlow? ?? lý luận văn tập trung nghiên cứu Nội dung luận văn gồm5 chương:... Kiến trúc chung FPGA 2.2 Chuyển mạch OpenFlow tảng NetFPGA 2.2.1 Kiến trúc bộ chuyển mạch OpenFlow C C Hình 2.5 Cấu trúc OpenFlow Switch Chuyển mạch OpenFlow chủ yếu bao gồm hai bảng luồng... “Tìm hiểu thực trạng giải pháp mạng OpenFlow? ?? Chương 1: Vấn đề tiết kiệm lượng giải pháp sử dụng mạng OpenFlow Chương 2:Ứng dụng mạng OpenFlow tảng NetFPGA Phần ? ?Nghiên cứu giải pháp tiết kiệm lượng”