Tài liệu Nghiên cứu giải pháp tiết kiệm năng lượng trong thiết kế chuyển mạch sử dụng ở trung tâm dữ liệu (tt)

  • Số trang: 27 |
  • Loại file: PDF |
  • Lượt xem: 69 |
  • Lượt tải: 0
thuvientrithuc1102

Đã đăng 15893 tài liệu

Mô tả:

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI TRẦN HOÀNG VŨ NGHIÊN CỨU GIẢI PHÁP TIẾT KIỆM NĂNG LƯỢNG TRONG THIẾT KẾ CHUYỂN MẠCH SỬ DỤNG Ở TRUNG TÂM DỮ LIỆU Chuyên nghành: Kỹ thuật Điện tử Mã số: 62520203 TÓM TẮT LUẬN ÁN TIẾN SĨ KỸ THUẬT ĐIỆN TỬ HÀ NỘI - 2015 Công trình này được hoàn thành tại: Trường Đại học Bách Khoa Hà Nội Người hướng dẫn khoa học: PGS. TS. Phạm Ngọc Nam Phản biện 1: Phản biện 2: Phản biện 3: Luận án sẽ được bảo vệ trước Hội đồng chấm luận án tiến sĩ cấp trường họp tại Trường Đại học Bách khoa Hà Nội. Vào hồi ….. giờ, ngày … tháng…. năm ………. Có thể tìm hiểu luận án tại: 1. Thư viện Tạ Quang Bửu, Trường ĐHBK Hà Nội 2. Thư viện Quốc gia Việt Nam 1 MỞ ĐẦU 1. Năng lƣợng tiêu thụ của thiết bị mạng trong trung tâm dữ liệu Theo các nghiên cứu gần đây, các trung tâm dữ liệu điều tra dân số toàn cầu Dynatmics 2012 cho thấy, năng lượng tiêu thụ của các trung tâm dữ liệu giữa các năm 2011 và 2012 trên toàn cầu tăng 63%. Năng lượng tiêu thụ của mạng Internet toàn cầu sẽ tăng rất nhanh trong thời gian tới 2010 - 2020. Trong đó các thiết bị mạng chiếm từ 20% đến 30% năng lượng tiêu thụ. Chi phí năng lượng cho trung tâm dữ liệu chiếm 44% tổng chi phí hoạt động. Đồng thời, với mức tiêu thụ năng lượng rất lớn, các trung tâm dữ liệu đang thải ra khoảng từ 2% đến 4% lượng khí thải cacbon, với đà phát triển công nghiệp hiện nay, con số đó có thể tăng gấp đôi vào khoảng năm 2020. Một trong những nguyên nhân của tình trạng trên là do mạng Internet nói chung cũng như các trung tâm dữ liệu nói riêng được thiết kế để có thể chịu tải tại giờ cao điểm ban ngày và ban đêm khi lưu lượng tải đạt giá trị cực đại. Tuy nhiên tại các khoảng thời gian còn lại (từ 0am – 6am), lúc này lưu lượng trên mạng thường thấp hơn nhiều so với lưu lượng tối đa. Mặt khác các thiết bị mạng hiện nay được thiết kế để có khả năng xử lý tối đa lượng tải tại mọi thời điểm. Điều này dẫn đến hiệu năng về mặt năng lượng của các thiết bị mạng hiện nay khá thấp. Ngoài ra, năng lượng tiêu thụ của các thiết bị mạng hiện tại khá tĩnh, nghĩa là năng lượng tiêu thụ của thiết bị trong trạng thái tải thấp, hoặc trạng thái nghỉ cao gần bằng năng lượng tiêu thụ trong trường hợp tải cao. Hầu hết các thiết bị mạng hiện nay không sử dụng năng lượng một cách hiệu quả. Hiện nay, có một số phương pháp nghiên cứu năng lượng tiêu thụ hợp lý cho chuyển mạch trong trung tâm dữ liệu. Về cơ bản, phần lớn các phương pháp này được phân loại như sau: (1) Tái thiết kế (Re-engineering), (2) Tương thích động (Dynamic adaptation), (3) Chế độ nghỉ thông minh (Smart sleeping/standby) 2. Những vấn đề còn tồn tại Trong số các công trình nghiên cứu được công bố nói trên, ta nhận ra rằng:  Khó có thể tìm thấy những công trình mang lại cho ta thấy chi tiết về năng lượng tiêu thụ của các thành phần bên trong NetFPGA. Để thiết kế lại các bộ chuyển mạch có khả năng tiết kiệm năng lượng thì hiệu suất năng lượng của các thành phần bên trong các bộ chuyển mạch NetFPGA hiện nay cần được nghiên cứu chi tiết hơn.  Các phương pháp để cải thiện hiệu quả năng lượng được đề xuất trong các công trình công bố trên vẫn còn dưới mức tối ưu bởi vì trong hầu hết kết quả nghiên cứu thích ứng tần số được áp dụng cho một số khối chức năng nhưng không phải cho toàn bộ hệ thống.  Chưa có chỉ số đánh giá rõ ràng mức năng lượng tiêu thụ và năng lượng tiết kiệm tại một mức lưu lượng được sử dụng nhất định. Qua khảo sát về các công trình nghiên cứu trên về tiết kiệm năng lượng trong trung tâm dữ liệu. Ta thấy rằng công trình nghiên cứu về tiết kiệm năng lượng cho thiết bị mạng hiện nay chưa được quan tâm đúng mức và không có nhiều công trình được công bố trên các tạp chí, hội thảo khoa học trong nước và quốc tế. Mặc dù năng lượng tiêu thụ của các thiết bị 2 mạng chiếm không nhỏ khoảng từ 20% đến 30% năng lượng tiêu thụ trong trung tâm dữ liệu. Vì vậy, việc “Nghiên cứu giải pháp tiết kiệm năng lượng trong thiết kế chuyển mạch sử dụng ở trung tâm dữ liệu” đã trở thành đề tài mang tính thời sự. 3. Mục tiêu, đối tƣợng và phạm vi nghiên cứu  Mục tiêu nghiên cứu:  Đề xuất các giải pháp tiết kiệm năng lượng và thiết kế chuyển mạch mới có chức năng tiết kiệm năng lượng theo bộ điều khiển NOX hoặc POX. Đề xuất giải pháp thiết kế một chuyển mạch tự động tiết kiệm năng lượng theo lưu lượng đầu vào.  Đề xuất các thuật toán về giới hạn nhỏ nhất, lớn nhất và trung bình của năng lượng tiêu thụ trên các thiết bị mạng dưới lưu lượng tải khác nhau. Đề xuất chỉ số công suất trung bình API (Average Power Index) để đánh giá tỉ lệ năng lượng tiết kiệm.  Đề xuất giải pháp WOL (Wake on Lan) cho chuyển mạch OpenFlow giúp cho việc dễ dàng quản lý và tăng khả năng điều khiển linh hoạt cho chuyển mạch OpenFlow trong trường hợp hệ thống trung tâm dữ liệu có quy mô lớn hoặc khi sự cố xảy ra.  Đối tƣợng và phƣơng pháp nghiên cứu:  Tập trung vào kiến trúc chuyển mạch OpenFlow trên nền tảng Kit NetFPGA-1G, và bản tin điều khiển OpenFlow được phát triển đầu tiên bởi Đại học Standford.  Tập trung nghiên cứu các thuật toán thuật mô hình hóa năng lượng cho chuyển mạch OpenFLow.  Phương pháp nghiên cứu lý thuyết kết hợp thực nghiệm.  Phạm vi nghiên cứu:  Nghiên cứu các giải pháp tiết kiệm năng lượng và chức năng WOL cho chuyển mạch OpenFlow trên nền tảng NetFPGA, triển khai trên hệ thống thực nghiệm bao gồm bộ điều khiển NOX /POX, bộ phát và thu lưu lượng và sử dụng board PCIEXT-64UB để đo đạc, đánh giá năng tiết kiệm được cho chuyển mạch.  Mô hình hóa năng lượng tiêu thụ của chuyển mạch và đưa ra thuật toán tối ưu cho NetFPGA-1G (4 cổng) trong thực nghiệm, đồng thời đánh giá thuật toán bằng Matlab trên các mô hình năng lượng của chuyển mạch NetFPGA mở rộng có số cổng lớn hơn 16.  Nội dung của luận án chỉ tập trung nghiên cứu các giải pháp tiết kiệm năng lượng tiêu thụ cho chuyển mạch OpenFlow. Các kết quả đạt được của luận án được các đồng nghiệp sử dụng đánh giá mức năng lượng tiêu thụ trên toàn mạng trong kiến trúc thử nghiệm ECODANE. 4. Cấu trúc nội dung của luận án Nội dung của luận án bao gồm 4 chương. Giới thiệu lý thuyết tổng quan, và vấn đề tiết kiệm năng lượng trong trung tâm dữ liệu được trình bày ở Chương 1. Toàn bộ đóng góp khoa học của luận án thể hiện ở các nội dung đề xuất và thực hiện trong Chương 2, Chương 3, Chương 4. Cuối cùng là kết luận với các đóng góp khoa học của luận án và hướng phát triển nghiên cứu trong thời gian tới. 3 Chƣơng 1 Tổng quan lý thuyết và các công nghệ sử dụng trong trung tâm dữ liệu Giới thiệu chƣơng Chương này cũng giới thiệu về kiến trúc mạng ECODANE (Reducing Energy Consumption in DAta Centre NEtworks based on Traffic Engineering) và các công nghệ sử dụng trong mạng. ECODANE là một kiến trúc mới dựa trên công nghệ SDN cho phép tùy chọn và bổ sung các chức năng mới vào mạng một cách nhanh chóng và mềm dẻo. Kiến trúc mạng ECODANE cho phép tạo ra một môi trường thử nghiệm tích hợp thuật toán tối ưu hoá RA-TAH cùng với chuyển mạch OpenFlow trên nền tảng NetFPGA để tiết kiệm năng lượng cho trung tâm dữ liệu. 1.2. Kiến trúc mạng ECODANE 1.1. Hình 1.5. Kiến trúc thử nghiệm ECODANE 1.3. Các công nghệ phát triển kiến trúc mạng ECODANE 1.3.1. Công nghệ OpenFlow Công nghệ OpenFlow là một công nghệ mạng điều khiển bằng phần mềm SDN (Software Defined Networking) là phương tiện cho phép các nhà nghiên cứu chạy các giao thức thử nghiệm trên hệ thống mạng mà ta sử dụng hàng ngày. Bộ chuyển mạch OpenFlow dựa trên nguyên tắc của các chuyển mạch Ethernet, bao gồm ba thành phần chính: Bảng Flow (Flow-table), kênh an toàn (Secure Channel), giao thức OpenFlow (OpenFlow Protocol), như trên Hình 1.6. Hình 1.6. Cấu trúc của chuyển mạch OpenFlow 4 1.3.2. Công nghệ NetFPGA Nền tảng NetFPGA (Hình 1.8) cho phép các nhà nghiên cứu xây dựng nguyên mẫu của những hệ thống mạng tốc độ cao, được tăng tốc bằng phần cứng một cách nhanh chóng. Nền tảng này giúp cho các nhà nghiên cứu xây dựng những chuyển mạch Ethernet và các bộ định tuyến IP trên phần cứng thay vì trên phần mềm, có thể sử dụng NetFPGA để thử nghiệm các dịch vụ mạng tiên tiến phục vụ cho các mạng thế hệ tiếp theo. Nền tảng NetFPGA bao gồm ba thành phần chính: phần cứng, gateware, phần mềm. Hình 1.8. Nền tảng NetFPGA 1.3.3. Chuyển mạch OpenFlow trên nền tảng NetFPGA Việc xây dựng bộ chuyển mạch OpenFlow trên kit NetFPGA được dựa trên mô hình đường ống (Hình 1.13) mô tả kiến trúc đơn giản trong nf2_core. Hình 1.13. Mô hình đường ống áp dụng cho việc thiết kế phần cứng mạng 1.4. Tổng kết chƣơng Chương này đã trình bày về tầm quan trọng, đặc điểm kiến trúc mạng trung tâm dữ liệu. Ngoài ra, chương này cũng giới thiệu về kiến trúc mạng ECODANE và các công nghệ được sử dụng trong mạng. Xuất phát từ các ưu điểm của kiến trúc mạng ECODANE, các đề xuất nghiên cứu trong các chương tiếp theo của luận án tập trung nghiên cứu các giải pháp tiết kiệm năng lượng cho chuyển mạch OpenFlow trên nền tảng NetFPGA. Chƣơng 2 Các giải pháp tiết kiệm năng lƣợng cho chuyển mạch OpenFlow 2.1. Giới thiệu chƣơng Chương này xây dựng hệ thống đo đạc và đưa ra phân bổ năng lượng tiêu thụ của từng khối chức năng trong Kit NetFPGA-1G. Từ đó đánh giá và đưa ra quyết định nên cắt giảm điện năng tiêu thụ của các khối trong chuyển mạch. Dựa trên sự đánh giá này, tác giả đề xuất các giải pháp thiết kế chuyển mạch OpenFlow mới có chức năng tiết kiệm năng lượng. Mở rộng bản tin điều khiển OpenFlow kết hợp với bộ điều khiển NOX /POX để điều khiển 5 chuyển mạch nhằm tiết kiệm năng lượng. Ngoài ra chương này cũng xây dựng chuyển mạch tự động tiết kiệm năng lượng dựa theo lưu lượng đầu vào. 2.2. Phân ổ năng lƣợng của chuyển mạch OpenFlow 2.2.1 Hệ thống đo đạc năng lƣợng tiêu thụ của Kit NetFPGA-1G Hệ thống đo đạc sử dụng Kit NetFPGA-1G là cơ sở cho phát triển chuyển mạch có chức năng tiết kiệm năng lượng. Kit gồm 4 cổng Ethernet 1Gbps và một bộ điều khiển dựa trên Virtex II Pro 50 FPGA dòng sản phẩm của Xilinx. Thiết kế ban đầu của chuyển mạch được thiết kế dựa trên dự án chuyển mạch OpenFlow phiên bản 1.0.0.4. Hình 2.2 mô tả chi tiết kiến trúc của hệ thống đo đạc và kiểm tra. C0 C0 Chuyển mạch C1 C1 NetFPGA C2 C0 C3 C2 Chuyển mạch C1 NetFPGA C2 C0 C2 Chuyển mạch NetFPGA C1 C3 C0 C2Chuyển mạch NetFPGA C1 C0 C0 C2 C1 C3 Chuyển mạch C2 NetFPGA C1 Phát lưu lượng 2 Phát lưu lượng 1 Host PC Bo mạch hiển thị công suất 5.0V 3.3V PCIEXT-64UB Thiết bị Oscilloscope Chú ý: Băng thông 800Mbps 1Gbps Hình 2.2. Hệ thống đo đạc năng lượng của chuyển mạch trên nền tảng NetFPGA 2.2.2 Đặc tính năng lƣợng chi tiết của Kit NetFPGA-1G Quá trình đo đạc đặc tính năng lượng của chuyển mạch NetFPGA bao gồm 4 bước: (1) đường đặc tính năng lượng cơ bản, (2) đặc tính giao tiếp năng lượng mạng, (3) đặc tính năng lượng động, (4) chi tiết đặc tính năng lượng của từng khối chức năng trong chuyển mạch OpenFlow. Kết quả đo lường được tóm tắt như Hình 2.4. Hình 2.4 Đặc tính năng lượng của Kit NetFPGA khi chạy như chuyển mạch OpenFlow Nhận xét kết quả đo được: 3 điểm đáng chú ý của đặc tính năng lượng Kit NetFPGA chạy như một chuyển mạch OpenFlow được chỉ rõ như sau: Năng lượng cơ bản tiêu thụ gần 39% của tổng năng lượng. Trong khi đó chip FPGA chiếm khoảng 23.3% và khối Ethernet chiếm khoảng 37.7%. 2.3. Giải pháp giảm tần Đặc tính năng lượng của Kit NetFPGA ở Mục 2.2.2, ta thấy rằng năng lượng tiêu thụ chip FPGA chiếm khoảng 23.3% có thể cắt giảm. Dựa vào điều này tác giả đề xuất giải pháp tiết kiệm năng lượng cho chuyển mạch OpenFlow bằng cách thiết kế một bộ điều 6 khiển tần số CC (Clock Controller), và mở rộng bản tin điều khiển từ NOX /POX để giảm tần số hoạt động của chuyển mạch nhằm tiết kiệm năng lượng. 2.3.1. Nguyên lý giảm tần Năng lượng tiêu thụ Pc của thiết bị CMOS, chính là chip FPGA tỉ lệ thuận với tần số clock được chỉ ra ở công thức (2.1) (2.1) Theo công thức (2.1), để tiết kiệm năng lượng, tác giả đề xuất giảm tần số hoạt động sẽ được giảm xuống còn: f/2, f/4, f/8, f/16, f/32, f/64... 2.3.2. Thiết kế khối điều khiển tần số CC (Clock Controller) Trong mục này tác giả đề xuất thiết kế khối điều khiển đồng hồ CC tạo ra một nguồn xung nhịp độc lập và linh hoạt với nhiều mức đầu ra tần số, bằng cách bổ sung thêm khối điều khiển tần số CC và khối chia tần số CD (Clock Divider) được chỉ ra ở Hình 2.5 nhằm tiết kiệm năng lượng. NF2TOP Clock Divider cpci clk Giảm tần Clock Controller master_clock Gói tin vào Gói tin ra Bộ đệm vào Xử lý gói tin Bộ đệm ra Xử lý gói tin NF2CORE core clk UDP Hình 2.5. Bốn khối chức năng mới được nhúng trên Core FPGA (khối nét đứt) Như được chỉ ra ở Hình 2.5, xung nhịp chính được sử dụng trong khối mở rộng core_clk, với tần số mặc định là 125 Mhz. Để tiết kiệm năng lượng, tần số làm việc của hệ thống giảm xuống bằng cách chia tần số chính ra với các hệ số 2, 4, 8. 16, vv. Trên thực nghiệm, chuyển mạch không thể phục hồi về trạng thái bình thường nếu tần số làm việc được giảm xuống thấp hơn 3.90625 Mhz. Do đó, tác giả đề xuất giữ tần số làm việc của hệ thống nhỏ nhất là 3.90625 Mhz. 2.3.3. Mở rộng ản tin OpenFlow điều khiển giảm tần Để giảm công suất tiêu thụ của chuyển mạch tác giả mở rộng các bản tin giao thức OpenFlow để điều khiển tần số hoạt động của chuyển mạch. Bản tin mở rộng OpenFlow được định nghĩa như sau: Bảng 2.1. Bản tin OFPT_SWITCH_MOD giảm tần Opflow header 8bytes Datapath ID Switch state Option Pad 8 bytes 1bytes 4bytes 3bytes 7 F Flag 0 - - - Reserved - M2 M1 Mode Hình 2.6. Trường Switch state M0 7 2.4. Giải pháp điều khiển trạng thái các cổng Ethernet Đặc tính năng lượng của Kit NetFPGA ở Mục 2.2.2 đưa ra năng lượng tiêu thụ của các cổng Ethernet lớn nhất chiếm khoảng 37.7% khi được thiết lập ở chế độ 1Gbps. Dựa vào điều này tác giả đề xuất giải pháp tiết kiệm năng lượng cho chuyển mạch OpenFlow bằng cách xây dựng phần mềm điều khiển và mở rộng bản tin OpenFlow để thay đổi tốc độ liên kết của các cổng Ethernet nhằm tiết kiệm năng lượng cho chuyển mạch. 2.4.1. Nguyên lý thay đổi tốc độ liên kết (link_rate) Trong BCM5464SR NIC có 4 thanh ghi MII để điều khiển 4 cổng Ethernet riêng biệt. Do vậy, bằng cách thay đổi driver OpenFlow, chuyển mạch có thể nhận được bản tin điều khiển OpenFlow từ bộ điều khiển (NOX hay POX) và thiết lập giá trị của thanh ghi MII để thay đổi chế độ hoạt động. Cấu trúc của tin nhắn MDIO mô tả ở Hình 2.8. 31 30 29 28 27 0 1 - - - 2 bit đầu 22 - - - - - Địa chỉ vật lý[4:0] Hoạt động - - - 17 16 15 - - - - TA Địa chỉ thanh ghi [4:0] 0 - - - Bit điều khiển dữ liệu [15:0] Hình 2.8. Cấu trúc bản tin MDIO Kết hợp bit 6 và bit 13 của thanh ghi MII để chọn 3 trạng thái băng thông khác: a) “00” cho 10 Mbps; b) “01” cho 100 Mbps; c) “10” cho 1 Gbps và “11” không sử dụng (Hình 2.9) Tự động thương lượng Chế độ công suất thấp 15 R 13 - SP0 AN LP - - - - 6 5 SP1 - 0 - - - - - Lựa chọn tốc độ Hình 2.9. Chức năng các bit trong thanh ghi MII 2.4.2. Mở rộng ản tin OpenFlow điều khiển cổng Ethernet Để thay đổi tốc độ liên kết các cổng Ethernet cho chuyển mạch nhằm tiết kiệm năng, tác giả mở rộng bản tin điều khiển OpenFlow. Trường link_state chứa thông tin điều khiển cổng như trên Hình 2.10. Giá trị „1‟ tại ô cờ (Flag) sẽ quyết định có hay không đổi trạng thái của chuyển mạch. Cặp bit {P1, P0} xác định số hiệu cổng, cặp bit {B1, B0} xác định băng thông trên cổng đã chọn: “11” tức là 1Gbps, “10” nghĩa là 100Mbps, “01” sẽ giới hạn băng thông về 10Mbps, và “00” biểu thị cho việc tắt cổng đó. Bảng 2.4. Bản tin OFPT_PORT_MOD OpenFlow header Port no MAC address Config Mask Link state Advertise Pad 8bytes 2bytes 6bytes 4bytes 4bytes 1bytes 4bytes 3bytes 7 F Flag 0 - - Reserved - B1 B0 Link Rate P1 P0 Port No. Hình 2.10. Trường Link state mô tả tốc độ liên kết của cổng Ethernet 8 2.5. Giải pháp thiết kế chuyển mạch OpenFlow tiết kiệm năng lƣợng dƣới sự điều khiển của NOX / POX 2.5.1. Thiết kế phần cứng chuyển mạch Dựa trên giải pháp giảm tần được đưa ra, khối điều khiển tần số có tên là Clock Controller (CC) được xây dựng thêm như một khối chức năng của chuyển mạch. Chức năng của khối CC lấy thông tin từ phần mềm thông qua PCI bus để điều khiển việc chia tần số hoạt động của chuyển mạch. Hình 2.12. Vị trí của khối Clock Controller trong khối User Data Path 2.5.2. Thiết kế phần mềm chuyển mạch  Xây dựng phần mềm điều khiển tốc độ link_rate cho cổng Ethernet  Mở rộng bản tin điều khiển OpenFlow cho chuyển mạch Phần mềm điều khiển tốc độ các cổng Ethernet của chuyển mạch Openlow dựa vào lưu lượng đầu vào nhằm tiết kiệm năng lượng. Đầu tiên mô hình điều khiển phần mềm được mô tả như Hình 2.16. FPGA PORT [0:3] PC SOFTWARE USER DATA PATH MII Control Register NF2_REG_GRP ETHERNET DRIVER CONTROL SOFTWARE MDIO Hình 2.16. Khối điều khiển mềm (PC Software) Khối phần mềm lập trình điều khiển mỗi cổng: bật /tắt hoặc đặt tốc độ liên kết đến 10Mbps, 100Mbps, và 1Gbps bằng cách cấu hình cho các bit 6, bit 13 và bit 11 của thanh ghi MII. 2.5.2.1. Định nghĩa chế độ làm việc cho chuyển mạch OpenFLow Các chế độ hoạt động mới của chuyển mạch được định nghĩa như sau: Bảng 2.5. Các chế độ hoạt động mới của chuyển mạch Chế độ Tần số Băng thông trên mỗi cổng Công suất cao 125 MHz Idle/10Mbps/100Mbps/1Gbps Công suất thấp 62.5 MHz Idle/10Mbps/100Mbps Ngủ 3.90625 MHz Idle 9 2.5.2.2. Mở rộng bản tin OpenFlow cho các chế độ làm việc Để thực hiện các chế độ hoạt động mới cho chuyển mạch nhằm tiết kiệm năng, tác giả mở rộng bản tin điều khiển OpenFlow. Trường Switch_mode lưu trữ các thông tin cấu hình chuyển mạch như trong Bảng 2.6. Giá trị „1‟ ở vị trí cờ (F) cho phép chuyển mạch thay đổi trạng thái. Trường Switch_ mode chỉ ra chế độ làm việc của chuyển mạch như sau: chế độ công suất cao (M1M0=00), chế độ công suất thấp (M1M0=01) và chế độ ngủ (M1M0=10). M1M0=11 dự phòng (Hình 2.19). Bảng 2.6. Bản tin OFPT_Switch_mode cho 3 chế độ hoạt động OpenFlow Header Switch Mode Pad 8 Bytes 1 Bytes 3 Bytes 7 0 F - Flag - - - - M1 M0 Mode Reserved Hình 2.19. Trường Switch Mode định nghĩa các chế độ hoạt động 2.6. Giải pháp thiết kế chuyển mạch OpenFlow tự động tiết kiệm năng lƣợng theo lƣu lƣợng đầu vào Lưu lượng thường lên mức đỉnh vào ban ngày và hạ xuống rất thấp vào ban đêm. Khi lưu lượng thấp các thiết bị mạng vẫn đang ở trạng thái hoạt động, điều này gây ra tiêu tốn nhiều năng lượng không cần thiết để chạy các thiết bị mà không có lưu lượng đi qua. Vì vậy để tăng hiệu quả tiết kiệm năng lượng cho chuyển mạch, tác giả đề xuất một giải pháp khác giúp chuyển mạch Openflow có thể tự động tiết kiệm năng lượng theo lưu lượng đầu vào mà không cần sự can thiệp của bộ điều khiển NOX /POX. 2.6.1. Giải pháp thiết kế Thông thường một thiết bị mạng có chức năng tiết kiệm năng lượng tiêu thụ thì nó thường hoạt động ở hai chế độ: chế độ làm việc (working mode) và chế độ ngủ (sleep mode. Như vậy, năng lượng tiêu thụ của một thiết bị mạng nói chung có thể được mô hình hóa như sau: E = Pworking * Tworking + Psleep * Tsleep (2.2) Trong đó Tworking và Tsleep là thời gian thiết bị hoạt động ở chế độ làm việc và chế độ ngủ, Pworking và Psleep là công suất tiêu thụ của thiết bị tương ứng trong mỗi chế độ. Do vậy, để tăng sự tiết kiệm năng lượng cho chuyển mạch OpenFlow, chúng ta có thể tăng thời gian Tsleep bằng cách cho gói tin chứa trong hàng đợi đầu vào và chờ đợi đến một ngư ng lớn nhất có thể mà không ảnh hưởng đến chất lượng truyền dữ liệu thì chuyển mạch sẽ tự động được đánh thức (Wake up) để xử lý và chuyển tiếp các gói tin (Hình 2.21). Lưu lượng (Mbps) Th i gian h Số gói tin lớn nhất Tín hiệu đầu vào Tín hiệu đầu ra Th i gian (Phút) Chiều dài hàng đợi lớn nhất Hình 2.21. Hoạt động của chuyển mạch tự động tiết kiệm năng lượng 10 2.6.2. Thiết kế khối phát hiện dữ liệu trên chuyển mạch OpenFlow Để thiết kế chuyển mạch tự động tiết kiệm năng lượng theo dữ liệu đầu vào, tác giả xây dựng thêm khối phát hiện dữ liệu DD (Data Detector) và khối điều khiển tần số FC (Frequency Controller) cho chuyển mạch OpenFlow như mô tả Hình 2.22. Khối phát hiện dữ liệu này có chức năng quản lý các trạng thái của chuyển mạch và đưa ra tín hiệu điều khiển đến khối điều khiển tần số để thay đổi tần số cho chuyển mạch nhằm tiết kiệm năng lượng. 2.6.2.1. Vị trí khối phát hiện dữ liệu Khối phát hiện dữ liệu được thiết kế nằm trong NF2 Core như mô tả trên Hình 2.22, nhằm lấy tín hiệu đầu vào từ các khối CPCI Bus, NF2 DMA, CPU DMA Queue, NF2 Reg grp, User Data Path và NF2 Mac. NF2 TOP NF2 CORE CPU DMA QUEUE CPU RX Queue CPU TX Queue FC NF2 DMA CPCI BUS NF2 REG GRP DD (Frequency Controller) (Data Detector) NF2_MAC USER DATA PATH TX RX Queue Queue Input Arbiter Ethernet MAC VLAN remover Output Port Lookup VLAN adder Output Queues Watchdog Hình 2.22. Vị trí khối phát hiện d liệu trong chuyển mạch 2.6.2.2. Xây dựng khối phát hiện dữ liệu Dựa trên cấu trúc của chuyển mạch OpenFlow trên nền tảng NetFPGA, tác giả đã tổng hợp và tìm ra các tín hiệu báo có gói tin tới chuyển mạch và tín hiệu báo chuyển mạch đã chuyển hết các gói tin tới các thiết bị khác trong mạng. Từ đó, khối phát hiện dữ liệu dựa vào các tín hiệu đầu vào này đã được đề xuất. Các tín hiệu được trình bày trong Hình 2.23. Data Detector NF2 MAC Queue Condition Mac_grp_core_en NF2 DMA Packets Manager Max Queue L Max Num Packet Registers Wait timeout Software Register Idle timeout Core_clk_packet_en Frequency Core Clock Core_clk_en Controller Controller Working state Core_clk_reg_en USER DATA PATH System States Registers Manager NF2 REG GROUP CPCI BUS CPU QUEUE Hình 2.23. Thiết kế chi tiết khối phát hiện d liệu 11 Trong thiết kế này bao gồm các khối chức năng nhỏ: Khối trạng thái hệ thống (System States), khối thanh ghi (Registers), khối điều kiện hàng đợi (Queue Condition), khối quản lý gói tin (Packets Manager), khối quản lý thanh ghi (Registers Manager) và khối điều khiển Core Clock (Core Clock Controller). Từ những tín hiệu trên, ba trạng thái mới cho chuyển mạch tiết kiệm năng lượng OpenFlow được đề xuất như Hình 2.25. mac_grp_core_en |dma_vld_c2n | working_state = 1 IDLE WORKING core_clk_packet_en =1 core_clk_packet_en =1 le Id tim e > le id tim SLEEP ut eo core_clk_packet_en =0 ma |d c _ g r ma p_ _vl cor d_ e_e c2 n n =1 mac_grp_core_en |dma_vld_c2n | working_state = 0 Hình 2.25. S đ chuyển trạng thái của chuyển mạch tiết kiệm năng lượng Sự thay đổi các trạng thái này được biểu diễn như trên Hình 2.25. Tại WORKING mode và IDLE mode thì tín hiệu core_clk_packet_en = 1 để yêu cầu duy trì tần số hoạt động ở 125 MHz. Tần số hoạt động này sẽ được giảm xuống 0 MHz ở SLEEP mode (tín hiệu core_clk_packet_en= 0) để tiết kiệm năng lượng tiêu thụ của chuyển mạch OpenFlow. 2.6.3. Thiết kế khối điều khiển tần số FC (Frequency Controller) Khối này có nhiệm vụ sử dụng tín hiệu core_clk_en để phát hiện trạng thái của chuyển mạch và lựa chọn cung cấp tần số cho chuyển mạch ở 125MHz hoặc 0. Việc có thể chuyển tần số về 0 không gây ảnh hưởng tới hệ thống khi bật do hệ thống luôn duy trì một khối phát hiện dữ liệu cho phép bật core_clk. Toàn bộ khối này đều hoạt động ở miền clock khác (gmii_tx_clk) không bị tắt. Sơ đồ cấu tạo khối FC như Hình 2.28. Khối FC gồm 1 khối Digital Clock Managers (DCM), khối BUFGMUX và khối BUFG. core_clk_en DCM core_clk = 125MHz CLKIN CLK0 125MHz Io 0 CLKFB core_clk_int I1 BUFGMUX BUFG Hình 2.28. S đ khối FC 2.6.4. Định nghĩa các chế độ hoạt động cho chuyển mạch OpenFlow  Chế độ Normal: Đây là chế độ hoạt động bình thường của chuyển mạch. Ở chế độ này chuyển mạch OpenFlow hoạt động với tần số là core clock là 125 MHz và không tiết kiệm năng lượng.  Chế độ High Performance: Mục đích của chế độ này là đưa chuyển mạch về chế độ hoạt động bình thường sau khi nhận hoàn chỉnh 1 gói tin. Vì cơ chế hoạt động của 12 chuyển mạch là nó nhận hoàn chỉnh gói tin thì mới bắt đầu xử lý nên việc bật trước khi xử lý cũng không mang lại tác dụng. Do vậy các thông số được cấu hình như sau: Idle Timeout = 5 clocks, Max Queue Length = 2000 bytes, Max Number packet = 1gói tin, Wait_Timeout = 12500 clocks = 100us.  Chế độ Save Power: Mục đích của chế độ này là cài đặt các thông số lớn nhất có thể với mong muốn có thể tiết kiệm được nhiều năng lượng nhất. Do vậy, các thông số được cấu hình như sau: Idle Timeout = 5 clocks, Max Queue Length = 5120 bytes, Max Number packet = 127 gói tin, Timeout = 12500000 clocks = 100ms. 2.7. Hệ thống đo đạc và kết quả đạt đƣợc Tác giả xây dựng một hệ thống kiểm tra đo đạc năng lượng cho chuyển mạch OpenFlow trên nền tảng NetFPGA. Mô hình hoàn chỉnh của hệ thống kiểm tra được cho trên Hình 2.31. Hình 2.31. Hệ thống thực nghiệm đo đạc và kiểm tra 2.7.1. Kết quả đo đạc giải pháp giảm tần Để đo công suất tiêu thụ của chuyển mạch hoạt động ở các chế độ giảm tần. Đầu tiên, tác giả đo điện năng tiêu thụ của chuyển mạch đồng thời thay đổi tần số đầu vào. Kết quả đo đạc này được mô tả Bảng 2.9. Bằng phương pháp thực nghiệm, tác giả giảm tần số của chuyển mạch xuống thấp hơn 3.90625MHz thì chuyển mạch không thể chuyển tiếp các gói tin, có nghĩa là ta có thể đưa chuyển mạch sang trạng thái ngủ. Bảng 2.9. Công suất tiêu thụ của chuyển mạch khi giảm tần Chế độ Tần số hoạt động của Số lần Công suất tiêu Công suất tiết chuyển mạch (MHz) giảm thụ (mW) kiệm (mW) 0 125 1 11576 0 1 62.5 1/2 10228 1348 2 31.25 1/4 9872 1701 3 15.625 1/8 9554 2022 4 7.8125 1/16 9271 2305 5 3.90625 1/32 8965 2611 13 Kết quả thực nghiệm: Cho thấy khối điều khiển tần số CC giúp cho chuyển mạch có khả năng tiết kiệm được khoảng 22.5% năng lượng tiêu thụ (2611mW của 11576mW). 2.7.2. Kết quả đo đạc giải pháp thay đổi trạng thái cổng Ethernet Đo công suất tiêu thụ của chuyển mạch hoạt động ở các băng thông khác nhau. Kết quả đo được hiển thị trên Bảng 2.10. Bảng 2.10. Thay đổi tốc độ link-rate của cổng Ethernet Chế độ Băng thông Công suất tiêu thụ của Công suất tiết kiệm trên 4 cổng chuyển mạch P(mW) P(mW) 1 1Gbps 11525.6 0 2 100Mbps 7372 4154 3 10 Mbps 6537.6 4988 4 Idle (tắt cổng) 6440.6 5085 Kết quả thực nghiệm: cho thấy rằng chuyển mạch có thể giảm khoảng 35% điện năng tiêu thụ khi thay đổi băng thông từ 1Gbps xuống 100Mbps. Ngoài ra, con số này có thể lên đến gần 41,6% nếu chúng ta tắt tất cả các cổng của chuyển mạch. 2.7.3. Kết quả đo đạc chuyển mạch OpenFlow tiết kiệm năng lƣợng dựa trên ộ điều khiển NOX /POX Để đo công suất tiêu thụ của chuyển mạch hoạt động ở các chế độ làm mới. Các kết quả đo được hiển thị như trong Bảng 2.12. Bảng 2.12. Công suất tiêu thụ của chuyển mạch ứng với các chế độ hoạt động Chế độ Tần số (MHz) Băng thông (Mbps) Công suất (mW) Công suất cao 125 1000 11574 Công suất thấp 62.5 100 6175 Ngủ 3.9065 0 4577 Kết quả thực nghiệm: ta có thể tiết kiệm đến 46.6% năng lượng của chuyển mạch khi thiết lập chế độ công suất thấp và hơn nữa mức tiết kiệm có thể lên đến 60% nếu chế độ ngủ so với chế độ công suất cao. 2.7.4. Kết quả đo và đánh giá chuyển mạch tự động tiết kiệm theo lƣu lƣợng đầu vào 2.7.4.1. Kết quả đo công suất tiêu thụ của chuyển mạch Xây dựng hệ thống kiểm tra, đo đạc công suất tiêu thụ của các chế độ hoạt động đã đề xuất cho chuyển mạch OpenFlow tự động tiết kiệm năng lượng theo lưu lượng đầu vào. Thí nghiệm số 1: Sự phụ thuộc công suất tiêu thụ theo mức lưu lượng đầu vào. Tác giả sử dụng phần mềm Packet Generator để tạo ra lưu lượng đi vào chuyển mạch theo các mức khác nhau từ 0 tới 1Gbps (Hình 2.34) Lưu lượng (Mbps) 14 1500 1000 500 0 0 10 20 30 40 50 Thời gian (phút) 60 70 Hình 2.34. Lưu lượng đi vào chuyển mạch từ mức 0 đến 1Gb Sau đó, đo đạc công suất tiêu thụ trung bình của chuyển mạch trong tại các chế độ đã đề xuất: chế độ Normal, chế độ High Performance, và chế độ Save Power. Kết quả đo đạc như Hình 2.35. Hình 2.35. Đ thị công suất tiêu thụ của chuyển mạch tại các chế độ Thí nghiệm số 2: Sự phụ thuộc năng lượng tiêu thụ theo các lưu lượng đầu vào khác nhau. Trong phép đo số 2 này, các đặc tính lưu lượng đầu vào khác nhau trên PC1 được tạo ra để gửi cho PC2 qua chuyển mạch OpenFlow. Sử dụng phần mềm Packet Generator tạo ra các đặc tính lưu lượng đầu vào khác nhau: Lưu lượng đầu vào 1, Lưu lượng đầu vào 2, Lưu lượng đầu vào 3. Sau đó lần lượt phát các đặc tính lưu lượng này và đo tổng năng lượng tiêu thụ trong vòng 15 phút của chuyển mạch tại các chế độ đã đề xuất: chế độ Normal, chế độ High Performance, và chế độ Save Power. Kết quả đo đạc được trình bày trong Bảng 2.14. Bảng 2.14. Năng lượng tiêu thụ tại các chế độ trong Đặc tính Năng lượng tiêu thụ tại c c chế độ (J) Chế độ Normal Chế độ High Chế độ Save Performance power ph t Năng lượng tiết kiệm (%) Chế độ High Performance Chế độ Save power Lưu lượng đầu vào 1 10314J 7088J 6881J 31.27% 33.3% Lưu lượng đầu vào 2 10314J 6530J 6453J 36.68% 37.43% Lưu lượng đầu vào 3 10314J 6625J 6510J 35.77% 36.88% 15 Dựa trên kết quả Bảng 2.14, ta thấy năng lượng tiết kiệm của chuyển mạch phụ thuộc vào các lưu lượng đầu vào khác nhau. Với lưu lượng đầu vào thấp, ít sử dụng như buổi đêm (khoảng 0h đến 6h) thì năng lượng tiết kiệm được lớn. Trong thí nghiệm số 2, kết quả thu được cũng cho thấy mức năng lượng tiết kiệm được của chế độ Save Power là lớn nhất dao động từ 33% - 37%. 2.7.4.2. Đánh giá khả năng đáp ứng của chuyển mạch mới Từ các kết quả đo đạc, tác giả đã đánh giá trễ và mất gói tin của các chế độ hoạt động mới đã đề xuất cho chuyển mạch, có thể tổng kết các kết quả theo Bảng 2.15. Bảng 2.15. Đánh giá thời gian trễ và mất gói tin so với chuyển mạch thường Tham số High Performance Save Power Thời gian trễ Khoảng 16ns – 24ns Twait timeout + Tprocess Mất gói tin Không Không 2.8. Tổng kết chƣơng Qua chư ng này tác giả thực hiện bốn công việc chính:  Đề xuất giải pháp thay đổi tần số hoạt động trên toàn bộ chip FPGA, do đó năng lượng tiết kiệm sẽ được nhiều hơn.  Trong chương này đã đề xuất phương pháp điều khiển mỗi cổng Ethernet chạy ở một số băng thông khác nhau tiết kiệm năng lượng nhiều hơn.  Thiết kế chuyển mạch OpenFlow tiết kiệm năng lượng dựa theo bộ điều khiển NOX /POX và mở rộng bản tin điều khiển OpenFlow  Thiết kế thành công chuyển mạch tự động tiết kiệm năng lượng cho mạng OpenFlow dựa theo lưu lượng đầu vào. Chƣơng 3 Mô hình hóa năng lƣợng cho chuyển mạch 3.1. Giới thiệu chƣơng Chương 3 trình bày mô hình hóa điện năng tiêu thụ của một chuyển mạch các chế độ hoạt động khác nhau, đề xuất thuật toán giới hạn năng lượng tối đa và thuật toán giới hạn năng lượng tối thiểu cũng như năng lượng sử dụng trung bình, chỉ số công suất trung bình API (Average Power Index) để đánh giá tỉ lệ năng lượng tiết kiệm khi lưu lượng đầu vào tốt hơn chỉ số EPI. 3.2. Chỉ số tỉ lệ năng lƣợng tƣơng đối (EPI) Chỉ số EPI (Energy Proportionality Index) để định lượng được tỉ lệ năng lượng của thiết bị mạng : (3.1) 16 3.3. Mô hình tuyến tính của công suất tiêu thụ Phần này sẽ đưa ra mô hình tuyến tính của điện năng tiêu thụ trong chuyển mạch liên quan đến lưu lượng sử dụng. Mô hình tuyến tính được đề xuất có thể được biểu diễn bằng công thức dưới đây: ( ) ( )( ) (3.4) 3.4. X y dựng thuật toán tính đƣ ng iên công suất cực tiểu Thuật toán 1. Tìm kiếm trạng thái tiêu thụ năng lượng nhỏ nhất ứng với một lưu lượng qua chuyển mạch Switch_state get_min_power_state(throughput T){ N1000 = (int)floor(T*1.0/999); check1000: if(N1000 >= N){ N1000 = N; N100 = 0; N10 = 0; goto finish; } N100 = (int)floor(max((T-N1000*999), 0)*1.0/99); check100: if((N100 > N - N1000) || (N100*P100 > P1000)){ N1000++; goto check1000; } N10 = (int)ceil(max((T-N1000*1000-N100*99), 0)*1.0/9); if((N10 > N-N1000-N100) || (N10*P10 > P100)){ N100++; goto check100; } finish: N0 = N - N1000 - N100 - N10; return Switch_state(N1000,N100,N10,N0); } 3.5. X y dựng thuật toán tính đƣ ng iên công suất cực đại Thuật toán 2. Tìm kiếm trạng thái tiêu thụ năng lượng lớn nhất ứng với một lưu lượng qua chuyển mạch Switch_state get_max_power_state(throughput T){ N1000 = (int)floor(T * 1.0 / 100); if(N1000 >= N){ N1000 = N; N100 = 0; N10 = 0; N0 = 0; }else{ N100 = (int)floor(max((T-N1000*100), 0) * 1.0 / 10); if(N100 >= N - N1000){ N100 = N-N1000; N10 = 0; N0 = 0; }else{ N10 = max((T - N1000*100 - N100*10), 0); if(N10 >= N - N1000 - N100){ N10 = N - N1000 - N100; N0 = 0; else{ N0 = N - N1000 - N100 - N10; } } } return Switch_state(N1000,N100,N10,N0); } * Thủ tục get_max_power_state() trong thuật toán 2 trả về trạng thái + tương ứng với công suất tiêu thụ cực đại của chuyển mạch 17 Pmax(T) tại lưu lượng T. Do đó đường biên công suất cực đại của chuyển mạch được biểu diễn bởi công thức Pmax(T); , -. 3.6. Tính toán đƣ ng cong công suất trung ình Đường công suất trung bình được biểu diễn theo hàm: ̅( ) ∑ , ( ) -; (3.12) 3.7. Đề xuất chỉ số công suất trung ình (API) Để thể hiện các đặc điểm công suất của thiết bị mạng tốt hơn, chỉ số mới API (Average Power Index) ch s c ng su t trung nh được đề xuất, để chỉ ra bao nhiêu năng lượng mà thiết bị có thể tiết kiệm được dựa trên đường công suất trung bình. API được định nghĩa là tỉ lệ phần trăm của tổng công suất trung bình tiết kiệm được so với công suất tiêu thụ cực đại khi chuyển mạch hoạt động ở trạng thái tối đa. API được tính như sau: ̅( ∫ * )+ ∫ ̅( ) ∫ (3.13) Với khái niệm API, chuyển mạch có API cao hơn sẽ tiết kiệm được nhiều năng lượng hơn. Như miêu tả của Hình 3.2, API của thiết bị 1 được chỉ ra là vùng diện tích được giới hạn bởi đường cong công suất trung bình (đường nét liền) với đường công suất hằng số 100% . Tương tự, thiết bị 2 cũng có API với đường biên là đường nét đứt. Ta có thể thấy rằng, diện tích của API1 lớn hơn so với API2; điều đó có nghĩa là thiết bị 1 tiết kiệm năng lượng tốt hơn thiết bị 2. Hình 3.2. Chỉ số EPI và API của thiết bị mạng 3.8. Đánh giá hiệu năng 3.8.1. Biểu đồ sử dụng năng lƣợng của chuyển mạch NetFPGA Đo và tính toán công suất của chuyển mạch theo lưu lượng đầu vào sử dụng các thuật toán đường công suất cực đại, đường công suất cực tiểu, đường công suất trung bình ta được biểu đồ đặc tính năng lượng theo lưu lượng đầu vào biểu diễn trên Hình 3.3. Hình 3.3. Đặc tính năng lượng của chuyển mạch NetFPGA 4 cổng 18 Theo biểu đồ Hình 3.3, ta có một số nhận xét về năng lượng tiêu thụ của chuyển mạch như sau: Cả đường biên giới hạn của Pmax và Pmin đều có dạng bậc thang do sự nhảy bậc năng lượng sử dụng của các trạng thái cổng Ethernet. 3.8.2. So sánh hiệu quả sử dụng năng lƣợng giữa chuyển mạch NetFPGA-1G với chuyển mạch thƣơng mại So sánh phương pháp điều khiển năng lượng đã xây dựng trên NetFPGA với hai chuyển mạch thương mại có tính năng tương tự là Tier-2 HP Enterprise-16 cổng và OpenFlow Pronto-48 cổng. Cả hai chuyển mạch đều có thuật toán điều khiển công suất. a) Chuyển mạch 8 cổng b) Chuyển mạch 16 cổng Hình 3.4. Liên kết các NetFPGA qua cổng SATA để tạo các chuyển mạch có nhiều cổng Hình 3.5. Đặc tính năng lượng của chuyển mạch NetFPGA 8 cổng So sánh hiệu quả sử dụng năng lượng của chuyển mạch NetFPGA 16 cổng với chuyển mạch 16 cổng HP Enterprise. a) So sánh đường bao công suất tối đa và tối thiểu HP Enterprise và NetFPGA 16 cổng b) So sánh đường công suất trung bình của HP Enterprise và NetFPGA 16 cổng Hình 3.6. So sánh công suất tiêu thụ trên HP Enterprise và NetFPGA 16 cổng
- Xem thêm -