Đề tài tác giả thực hiện có tên là “ NGHIÊN CỨU SỬ DỤNG CÔNG NGHỆ OPENFLOW TRONG TỐI ƯU HÓA NĂNG LƯỢNG TẠI TRUNG TÂM DỮ LIỆU ”.Trong đề tài này tác giả phát triển một hệ thống thông minh
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ - VIỄN THÔNG
Sinh viên thực hiện : Nguyễn Tiến Trung
Lớp KSTN – ĐTVT – K54 Giảng viên hướng dẫn : PGS TS NGUYỄN VĂN KHANG Cán bộ phản biện :
Hà Nội, 06 – 2014
Trang 2LỜI NÓI ĐẦU
Ngày nay công nghệ thông tin đang ngày càng phát triển rất mạnh mẽ.Nhu cầu lưulượng cũng như khối lượng dữ liệu cần được lưu trữ ngày càng tăng Để có thể đápứng điều này các trung tâm dữ liệu đang phải mở rộng cả về kích thước với việctăng số lượng máy chủ, các thiết bị mạng cũng như quy mô với nhiều trung tâm dữliệu phân bố khắp thế giới Với việc mở rộng này, chi phí danh cho việc duy trì hoạtđộng của các hệ thống trung tâm dữ liệu gia tăng chóng mặt bên cạnh đó là sự ảnhhưởng xấu đến môi trường do lượng khí thải từ sự tiêu thụ năng lượng của cácthành phần trong trung tâm dữ liệu Việc giảm năng lượng tiêu thụ trong các trungtâm dữ liệu không chỉ giảm chi phí hoạt động đem lại lợi ích cho cả nhà đầu tư lẫnngười sử dụng mà còn mang lại lợi ích to lớn cho môi trường
Nhiều giải pháp đã được đưa ra để cải thiện hiệu quả hoạt động của các thiết bịphần cứng cũng như các giải pháp quản lý tài nguyên hiệu quả Các hướng nghiêncứu đáng chú ý gồm có: xây dựng kiến trúc máy chủ thông minh có công suất tiêuthụ tỷ lệ với tải xử lý, hệ thống làm mát thông minh, tối ưu số lượng máy chủ đápứng với nhu cầu lưu lượng, di chuyển máy ảo… Tuy nhiên hầu hết các nghiên cứu
đã thực hiện chỉ tập trung vào các thành phần làm mát và hệ thống máy chủ việc tối
ưu năng lượng hoạt động của thành phần mạng chưa dành được sự quan tâm đúngmức Trong đề tài nghiên cứu này, tác giả xây dựng một hệ thống quản lý các thiết
bị mạng thông minh với mục đích tiết kiệm năng lượng
Đề tài tác giả thực hiện có tên là “ NGHIÊN CỨU SỬ DỤNG CÔNG NGHỆ OPENFLOW TRONG TỐI ƯU HÓA NĂNG LƯỢNG TẠI TRUNG TÂM DỮ LIỆU ”.Trong đề tài này tác giả phát triển một hệ thống thông minh linh động duy trì
số lượng tối thiểu các thiết bị mạng để đáp ứng với tải dao động trong trung tâm dữliệu, đồng thời phát triển thuật toán thích ứng trạng thái đường liên kết (Link StateAdaptation) cho phép thay mức tốc độ của đường đường liên kết tùy thuộc vào lưulượng chảy trong mạng Kết quả thu được cho thấy hệ thống đưa ra có thể tiết kiệmđược khoảng 30% - 50% năng lượng tiêu thụ của các thiết bị mạng so với việc đểtất cả các thiết bị này ở trạng thái hoạt động liên tục với dung lượng đường liên kếtluôn ở mức tối đa Đây là một kết quả hứa hẹn về tiềm năng phát triển của đề
Trang 3tài.Tác giả hi vọng sẽ phát triển hoàn thiện hơn các giải pháp trong đề tài, triển khaitrong môi trường Testbed thật từ đó có thể áp dụng trong việc tư vấn thiết kế cácmạng trung tâm dữ liệu xanh.
Trong quá trình thực hiện đề tài do sự hạn chế về nền tảng kiến thức, kinh nghiệmnghiên cứu, cùng với hạn chế về mặt thời gian nên đồ án không thể tránh khỏinhững thiếu sót Em rất mong thầy cô tham gia đóng góp phê bình để đồ án của emđược hoàn thiện hơn
Xin trân trọng cảm ơn trường Đại học Bách khoa Hà Nội, Trung Tâm Đào Tạo TàiNăng, Viện Điện Tử Viễn Thông trong suốt 5 năm qua đã dạy bảo và cung cấp cho
em những kiến thức nền tảng rất có ích phục vụ cho quá trình thực hiện đồ án cũngnhư cuộc sống sau này
Xin chân thành cảm ơn PGS.TS Nguyễn Văn Khang, người đã trực tiếp hướng dẫn em thực hiện đồ án này, cùng PGS.TS Nguyễn Hữu Thanh, TS.Trương Thu
Hương đã dìu dắt, giúp đỡ và tận tình chỉ bảo em trong suốt thời gian thực hiện đồ
án
Xin cảm ơn tập thể các bạn trong nhóm Green Network, phòng nghiên cứu C9 –
201 đã cùng mình nghiên cứu, chia sẻ trong suốt thời gian qua
Cảm ơn tập thể lớp KSTN – ĐTVT – K52 suốt thời gian học tập cùng các bạn làquãng thời gian không thể nào quên trong cuộc đời của mình
Cuối cùng, xin gửi lời cảm ơn tới gia đình, bố mẹ, anh em, đã là nền tảng, là ngườiluôn theo sát, chăm sóc động viên cho con trong suốt cuộc đời này Dù bất cứ khinào, thành quả của con đạt được không thể thiếu công ơn sinh thành và dạy dỗ củagia đình
Hà nội, tháng 06 năm 2014
Sinh viên
Nguyễn tiến trung
Trang 4TÓM TẮT ĐỒ ÁN
Các trung tâm dữ liệu đang phát triển một cách nhanh chóng và ngày càng được mởrộng để đáp ứng nhu cầu về lưu lượng do sự phát triển rộng rãi không ngừng củamạng Internet Hệ quả là các trung tâm dữ liệu tiêu thụ một lượng lớn điện năng vàthải ra rất nhiều khí thải nhà kính.Điều này trở thành mối quan tâm lớn đối vớinhững người chủ, những nhà quản lý các trung tâm dữ liệu và các nhà hoạch địnhchính sách.Xu hướng hiện nay là xây dựng các trung tâm dữ liệu xanh với tiêu chítăng cường hiệu quả sử dụng năng lượng đồng thời giảm thiểu các tác động xấu tớimôi trường
Vấn đề này đã thu hút được rất nhiều nghiên cứu bao gồm: thiết kế các hệ thốnglàm mát thông minh, di chuyển máy ảo, tối ưu năng lượng tiêu thụ bởi các máy chủ
và thiết bị mạng Đề tài này tập trung nghiên cứu giải pháp tối ưu năng lượng tiêuthụ bởi các thiết bị mạng bằng việc xây dựng một hệ thống điều khiển thông minhlinh động điều chỉnh số lượng các thiết bị mạng hoạt động tỷ lệ với tổng lưu lượng
đi qua trung tâm dữ liệu Bằng cách tắt bật các switch khi lưu lượng thay đổi kếthợp với việc giới hạn mức ngưỡng cho các link theo thuật toán dự đoán trước lưulượng thực tế, ta có thể tiết kiệm được đáng kể năng lượng tiêu thụ, đồng thời vẫnđảm bảo được độ tin cậy của mạng Kết quả thu được cho thấy hệ thống đưa ra cóthể tiết kiệm được khoảng 30% - 50% năng lượng tiêu thụ của các thiết bị mạng sovới việc để tất cả các thiết bị này ở trạng thái hoạt động liên tục với dung lượngđường liên kết luôn ở mức tối đa.Hệ thống đề xuất được đánh giá bằng việc giả lậpmạng trung tâm dữ liệu với các kích thước khác nhau trong môi trường Mininet vớicác switch hỗ trợ công nghệ Openflow và bộ điều khiển NOX
Trang 5Global data center is growing rapidly to satisfy the tremendous traffic demanddriven by the exponential development and popularity of the Internet.Consequently, data centers consume a huge amount of energy and emit a lot ofgreenhouse gases This has been a big concern for data center owners and managersand for policy-makers The societal and technological trends have increased focus
on building “green data centers” with the purpose to maximizeenergy efficiency and
to minimize negative environmental effects
There are many researches that have addressed these issues including designingsmart coolingsystems, migrating VMs across physical machines, optimizing powerconsumption of servers, optimizing power consumption of network components…This project focuses on optimizing power consumption of network components bydesigning an intelligent network control system that dynamically adjusts the set ofactive network elements corresponding to the total traffic going through the datacenter By turning ON/OFF network devices incorporating with changing linkcapacity by using the predictive traffic algorithm The results of my thesis show thatsavings of 30 – 50% of the network energy in data center when considering with allnetwork equipments that are active with maximum link capacity We implementedand evaluated the proposed system on a prototype testbed built with programableOpenflow switches controlled by NOX controller on Mininet emulator
Trang 6MỤC L
LỜI NÓI ĐẦU 1
TÓM TẮT ĐỒ ÁN 3
ABSTRACT 4
MỤC LỤC 5
DANH MỤC HÌNH VẼ 7
DANH SÁCH CÁC BẢNG BIỂU 9
DANH SÁCH CÁC TỪ VIẾT TẮT 10
MỞ ĐẦU 11
Chương 1 TỔNG QUAN 13
1.1 Tầm quan trọng của trung tâm dữ liệu 13
1.2 Kiến trúc mạng trung tâm dữ liệu 15
1.3 Đặc điểm lưu lượng trong trung tâm dữ liệu 17
1.3.1 Đặc điểm ở mức giao tiếp mạng 17
1.3.2 Đặc điểm ở mức giao tiếp ứng dụng 18
1.3.3 Đặc điểm lưu lượng trong trung tâm dữ liệu vừa và nhỏ 20
1.4 Mô hình năng lượng tiêu thụ của switch 20
1.5 Các giải pháp tiết kiệm năng lượng trong trung tâm dữ liệu 27
1.5.1 Thích ứng trạng thái link (LSA – Link State Adaptation)[10] 28
1.5.2 Tập trung lưu lượng vào một số link và switch [10] 29
1.5.3 Tập trung lưu lượng vào một số ít server [10] 30
1.6 Kết luận chương 31
Chương 2 CÔNG NGHỆ OPENFLOW VÀ CÁC CÔNG CỤ THỰC HIỆN .32 2.1 Công nghệ Openflow 32
2.2 Bộ điều khiển NOX 38
Trang 72.2.1 Giới thiệu về NOX 38
2.2.2 Chức năng và phương thức hoạt động của NOX 38
2.2.3 Các thành phần và các sự kiện của NOX 40
2.3 Mininet 42
2.4 Bộ phát lưu lượng D-ITG 48
2.5 Kết luận chương 50
Chương 3 THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG MÔ PHỎNG 51
3.1 Mô hình hệ thống 51
3.2 Giả lập mạng trung tâm dữ liệu 53
3.3 Khối dự đoán lưu lượng 55
3.3.1 Thuật toán Exponential Weighted Moving Average - EWMA 56
3.3.2 Dự đoán lưu lượng trong mạng sử dụng EWMA 57
3.4 Khối Tối ưu 58
3.4.1 Thuật toán Topo – Aware Heuristic 59
3.4.2 Thuật toán Link Adaptive State 61
3.4.3 Xây dựng khối tối ưu 62
3.5 Mô hình đánh giá năng lượng tiêu thụ trong trung tâm dữ liệu 63
3.6 Kết luận chương 65
Chương 4 KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 66
4.1 Các kết quả thu được 66
4.1.1 Kết quả mô phỏng với Fattree k = 4 69
4.1.2 Kết quả mô phỏng với Fattree k = 6 77
4.1.3 Kết quả mô phỏng với Fattree k = 8 82
4.1.4 Đánh giá kết quả thu được 86
4.2 Hướng phát triển đề tài 87
Trang 8KẾT LUẬN 88 TÀI LIỆU THAM KHẢO 89 PHỤ LỤC 91
Trang 9DANH MỤC HÌNH VẼY
Hình 1.1Trung tâm dữ liệu 15
Hình 1.2 Mô hình tổng quát của trung tâm dữ liệu 17
Hình 1.3Đồ hình của một trung tâm dữ liệu truyền thống 18
Hình 1.4 Kiến trúc Fattree k = 4 19
Hình 1.5 Đặc tính tiêu thụ năng lượng của switch so với tải 28
Hình 1.6 Các phương pháp tiết kiệm năng lượng trong trung tâm dữ liệu 33
Hình 2.1 Cấu trúc của switch thông thường 35
Hình 2.2 Cấu trúc switch hỗ trợ công nghệ Openflow 35
Hình 2.3 Openflow switch lý tưởng 36
Hình 2.4 Flow Table Actions 37
Hình 2.5 Mạng OpenFlow switch với NOX controller 41
Hình 2.6 Giao diện đồ họa của NOX Controller 44
Hình 2.7 Mininet Edit 49
Hình 2.8 Mininet Console với 16 hosts 49
Hình 2.9 Kích thước packet và thời gian giữa 2 lần phát 50
Hình 2.10 Cấu trúc D-ITG 51
Hình 2.11 Vị trí của bộ phát lưu lượng D-ITGtrong mạng trung tâm dữ liệu 52
Hình3.1 Mô hình hệ thống mô phỏng 53
Hình 3.2 Topology mạng thực hiện mô phỏng với trường hợp k = 4 56
Hình 3.3 Sơ đồ thực hiện Khối tối ưu 65
Hình 4.1 Giao diện hệ thống 68
Hình 4.2 Mô hình near traffic 70
Hình 4.3 Mô hình middle traffic 70
Hình 4.4 Mô hình far traffic 71
Hình 4.5 Near traffic, khối tối ưu không áp dụng LSA, fattree k=4 71
Hình 4.6 Middle traffic, khối tối ưu không áp dụng LSA, fattree k=4 72
Hình 4.7 Far traffic, khối tối ưu không áp dụng LSA,fattree k=4 72
Hình 4.8 Mix traffic, khối tối ưu không áp dụng LSA, fattree k=4 73
Hình 4.9 Near traffic,khối tối ưu áp dụng LSA, fattree k=4 73
Hình 4.10 Middle traffic, khối tối ưu áp dụng LSA, fattree k=4 74
Trang 10Hình 4.11 Far traffic, khối tối ưu áp dụng LSA, fattree k=4 74
Hình 4.12 Mix traffic, khối tối ưu áp dụng LSA, fattree k=4 75
Hình 4.13 Mức công suất tiêu thụ khi phát near traffic, fattree k=4 75
Hình 4.14 Mức công suất tiêu thụ khi phát middle traffic, fattree k=4 76
Hình 4.15 Mức công suất tiêu thụ khi phát far traffic, fattree k=4 77
Hình 4.16 Mức công suất tiêu thụ khi phát mix traffic, fattree k=4 77
Hình 4.17 So sánh mức công suất tiêu thụ giữa các loại lưu lượng, fattree k=4 78
Hình 4.18 Near traffic, khối tối ưu áp dụng LSA, fattree k=6 79
Hình 4.19 Middle traffic, khối tối ưu áp dụng LSA, fattree k=6 79
Hình 4.20 Far traffic, khối tối ưu áp dụng LSA, fattree k=6 80
Hình 4.21 Mix traffic, khối tối ưu áp dụng LSA, fattree k=6 80
Hình 4.22 Mức công suất tiêu thụ khi phát near trafic, fattree k=6 81
Hình 4.23 Mức công suất tiêu thụ khi phát middle traffic, fattre k=6 81
Hình 4.24 Mức công suất tiêu thụ khi phát far traffic, fattree k=6 82
Hình 4.25 Mức công suất tiêu thụ khi phát mix traffic, fattree k=6 82
Hình 4.26 So sánh mức công suất tiêu thụ của các loại lưu lượng, fattree k=6 83
Hình 4.27 Near traffic, khối tối ưu áp dụng LSA, fattree k=8 84
Hình 4.28 Middle traffic, khối tối ưu áp dụng LSA, fattree k=8 84
Hình 4.29 Far traffic, khối tối ưu áp dụng LSA, fattree k=8 85
Hình 4.30 Mức công suất tiêu thụ khi phát near traffic, fattree k=8 85
Hình 4.31 Mức công suất tiêu thụ khi phát middle traffic, fattree k=8 86
Hình 4.32 Mức công suất tiêu thụ khi phát far traffic, fattree k=8 86
Hình 4.33 Mức công suất tiêu thụ khi phát mix traffic, fattree k=8 87 Hình 4.34 So sánh mức tiêu thụ năng lượng giữa các kiểu lưu lượng, fattree k=8 .87
Trang 11DANH SÁCH CÁC BẢNG BIỂU
Bảng 1.1 Phân bố cho các tham số của tiến trình tới tại các switch 21
Bảng 1.2 Phân bố tiến trình đến trong các loại trung tâm dữ liệu 22
Bảng 1.3 Đặc điểm của các trung tâm dữ liệu vừa và nhỏ 22
Bảng 1.4 Công suất tiêu thụ của switch 25
Bảng 2.1 Flow Table entry 37
Bảng 2.2 Trường tiêu đề trong openflow switch 37
Bảng 2.3 Thời gian khởi động, bộ nhớ sử dụng trong Mininet 47
Bảng 2.4 Băng thông trong Mininet 48
Bảng 2.5 Thời gian cho từng hoạt động của Mininet 48
Bảng 2.6 Đặc trưng cơ bản của D-ITG 50
Bảng 3.1 Thông số Fattree k = 4 55
Bảng 3.2 Thông số Fattree k = 6 55
Bảng 3.3 Thông số Fattree k = 8 56
Bảng 3.4 Giá trị ID của Core switch và các switch trong POD 57
Bảng 3.5 Giá trị ID của các server 57
Bảng 4.1 Kết quả tổng hợp khi khối tối ưu không áp dụng LSA 88
Bảng 4.2 Kết quả tổng hợp khi khối tối ưu áp dụng LSA 89
Trang 12DANH SÁCH CÁC TỪ VIẾT TẮT
NAT Network Address Translation Chuyển đổi địa chỉ mạng
SSL Secure Socket Layer
VLAN Virtual Local Arena Network Mạng cục bộ ảo
TLS Transport Layer Security
D-ITG Distributed Internet Traffic Generator Bộ phát lưu lượng
ECMP Equal Cost Multi Path Đa đường cân bằng tải
MAC Media Access Control Giao thức điều khiển truy nhậpPMAC Pseudo Media Address Control Địa chỉ MAC giả
IT Information Technology Công nghệ thông tin
LSA Link State Adaptation Thích ứng trạng thái đườnglinkEWMA Exponential Weighted Moving Average
Trang 13MỞ ĐẦU Đặt vấn đề
Để đáp ứng nhu cầu lưu lượng đang ngày càng gia tăng một cách nhanh chóng, các
hệ thống trung tâm dữ liệu đang phải mở rộng cả về kích thước cũng như quy môvới nhiều trung tâm dữ liệu phân bố khắp thế giới Như một hệ quả tất yếu, chi phídành cho năng lượng đang gia tăng chóng mặt và là thành phần tăng nhanh nhấttrong số các chi phí để duy trì hoạt động của các trung tâm dữ liệu.Năng lượng ởđây gồm các thành phần chính là năng lượng cho các thiết bị làm mát, năng lượngcho server, và năng lượng cho các thiết bị mạng Việc giảm năng lượng tiêu thụ củacác trung tâm dữ liệu sẽ dẫn đến giảm chi phí hoạt động giảm các tác động xấu đếnmôi trường Nhiều giải pháp đã được đưa ra để cải thiện hiệu quả hoạt động củacác thiết bị phần cứng cũng như các giải pháp quản lý tài nguyên hiệu quả Cáchướng nghiên cứu đáng chú ý gồm có: xây dựng kiến trúc máy chủ thông minh cócông suất tiêu thụ tỷ lệ với tải xử lý, hệ thống làm mát thông minh, tối ưu số lượngmáy chủ đáp ứng với nhu cầu lưu lượng, di chuyển máy ảo…Trong đề tài nghiêncứu khoa học này, tác giả tập trung vào nghiên cứu giải pháp tiết kiệm năng lượngcho các thành phần mạng trong trung tâm dữ liệu
Mục đích chính nghiên cứu của đề tài là tối ưu hóa năng lượng trong trung tâm dữliệu thông qua các thuật toán tối ưu đồ hình mạng, tối ưu hóa băng thông, dunglượng của đường liên kết, tiến hành bật tắt các switch trong mạng khi không cầnthiết dựa trên nền công nghệ Openflow
Trang 14Hướng triển khai đề tài
Để thực hiện đề tài, trước tiên tác giả đi vào tìm hiểu các kiến trúc điển hình củamạng trung tâm dữ liệu đặc biệt là các kiểu kiến trúc nâng cao như Fattree, ElasticTree, các mô hình lưu lượng trong trung tâm dữ liệu, đặc điểm lưu lượng trong cáctrung tâm dữ liệu Bước tiếp theo là nghiên cứu các thuật toán tối ưu phù hợp.Cuốicùng đưa ra phương pháp thực hiện là: tiến hành tối ưu hóa đồ hình mạng dựa vàolưu lượng chảy bên trong mạng, sau đó thay đổi dung lượng đường liên kết kết hợpvới chuyển các switch không cần thiết sang trạng thái ngủ hoặc tắt để tiết kiệm nănglượng
Hiện tại tác giả đã cùng với nhóm nghiên cứu tiếp tục phát triển hệ thống Testbed
mô phỏng dựa trên các công cụ giả lập mạng (Mininet), công cụ điều khiển cácswitch Openflow NOX, bộ phát lưu lượng D-ITG trên nền tảng các switch hỗ trợcông nghệ Openflow Đóng góp chính của tác giả trong đề tài này là áp dụng thuậttoán thích ứng trạng thái đường liên kết (Link State Adaptive) thay đổi tốc độđường liên kết nhằm tiết kiệm năng lượng
Cấu trúc của đồ án
Chương 1: Trình bày lý thuyết tổng quan về trung tâm dữ liệu các đặc điểm
của lưu lượng, mô hình lưu lượng trong các trung tâm dữ liệu và mô hinhnăng lượng tiêu thụ của swich Cuối chương đề cập đến một số phương pháptiết kiệm năng lượng trong trung tâm dữ liệu
Chương 2: Giới thiệu các công cụ, phần mềm được sử dụng để thực hiện đồ
án, chức năng chính và vai trò của chúng
Chương 3: Trình bày tổng quan về mô hình hệ thống mô phỏng, các thành
phần chính trong hệ thống đó Trình bày chi tiết về việc thực hiện khối tối
ưu, các thuật toán sử dụng trong khối tối ưu và đưa ra mô hình đánh gia nănglượng tiêu thụ rong trung tâm dữ liệu
Chương 4: Trình bày kết quả mô phỏng với các kích thước của trung tâm dữ
liệu khác nhau, đánh giá và so sánh kết quả đạt được với hệ thống trước đó,cuối cùng đưa ra hướng phát triển của đề tài trong tương lai
Trang 15Chương 1 TỔNG QUAN
Chương này trình bày cái nhìn tổng quan về mạng trung tâm dữ liệu, tầm quan trọngcủa trung tâm dữ liệu, bên cạnh đó giới thiệu các kiến trúc phổ biến và một số đặcđiểm lưu lượng trong mạng trung tâm dữ liệu.Cuối chương đề cập các giải pháp tiếtkiệm năng lượng trong trung tâm dữ liệu
1.1 Tầm quan trọng của trung tâm dữ liệu
Trung tâm dữ liệu là nơi đặt các hệ thống máy tính lớn và các thành phầnliên quan như hệ thống truyền dẫn và hệ thống lưu trữ Trung tâm này được thiết kế
để đảm bảo độ sẵn sàng và an toàn cao nhất cho dữ liệu với các nguồn dự phòng,kết nối dữ liệu dự phòng, các thiết bị kiểm soát môi trường (điều hòa không khí,
chống cháy) và các thiết bị an ninh bảo mật.
Hình 1.1Trung tâm dữ liệu
Nói một cách chung nhất, trung tâm dữ liệu được xây dựng nhằm đáp ứng nhu cầunhư sau:
Trang 16 Khi doanh nghiệp ngày càng phát triển nhu cầu tập trung dữ liệu để quản lý
và cung cấp cho nhiều chi nhánh của công ty là yêu cầu vô cùng cần thiết
Các dịch vụ trên Internet cần tập trung để xử lý một lượng thông tin cực lớnyêu cầu cần có một hệ thống có đủ sức mạnh để xử lý và hệ thống Trung tâm
dữ liệu ra đời nhằm để đáp ứng các nhu cầu cần thiết đó
Kinh tế cũng là vấn đề được đặt ra khi triển khai hệ thống Trung tâm dữ liệuvới chi phí rất lớn nhưng lại rất tiết kiệm chi phí quản lý và bảo dưỡng hệthống, và rẻ hơn rất nhiều khi gộp nhiều hệ thống để có được khả năng xử lýcủa hệ thống Trung tâm dữ liệu
Các tính năng của Trung tâm dữ liệu gồm có:
Nơi tích hợp tất cả các công nghệ hàng đầu về mạng, hệ thống và phần mềmứng dụng được sử dụng trong hệ thống Trung tâm dữ liệu
Mạng được thiết kế dành riêng đáp ứng yêu cầu cực cao về tốc độ truyềngiữa các thiết bị, tính ổn định được coi trọng và vấn đề bảo mật cho hệ thốngmạng được đặt lên hàng đầu Được cấu hình tối ưu và hỗ trợ khi một kết nối
bị hỏng với một thiết bị thì thiết bị vẫn hoạt động bình thường với kết nốiluôn ở tốc độ cao
Với hệ thống máy chủ có hiệu năng cực cao đáp ứng các ứng dụng chạy trên
nó với độ trễ nhỏ nhất, thời gian đáp ứng nhanh nhất, hỗ trợ nhiều ứng dụng
và cấu hình hoàn hảo giúp hệ thống chạy ổn định 24/7
Các phần mềm hỗ trợ sử dụng tối đa hiệu năng của phần cứng, giúp liên kếtcác máy chủ với Cluster tăng sức mạnh cho máy chủ và khả năng backup dữliệu khi có sự cố xảy ra chỉ trong một thời gian ngắn hệ thống có thể đi vàohoạt động như bình thường và dữ liệu được bảo vệ không bị mất
Trang 17Hình 1.2 Mô hình tổng quát của trung tâm dữ liệu
1.2 Kiến trúc mạng trung tâm dữ liệu
Hiện nay có rất nhiều trung tâm dữ liệu có tuổi thọ từ 10- 15 năm, đã trở nênlỗi thời khó có thể đáp ứng được các nhu cầu hiện nay, hơn nữa các trung tâm nàycòn tiêu tốn rất nhiều năng lượng cao hơn gấp 2-3 lần so với các thiết bị IT hiện naycần Nhu cầu mở rộng và thay thế bởi các trung tâm dữ liệu mới là điều tất yếu, đặcbiệt hướng tới việc xây dựng các trung tâm dữ liệu xanh, có khả năng đáp ứng cao,tiêu thụ ít năng lượng và thân thiện với môi trường.Các trung tâm dữ liệu cũ có kiếntrúc mạng hạn hẹp đang phải đối mặt với các vấn đề như khả năng mở rộng kém,khó quản lý, khả năng kết nối kém và bị giới hạn trong việc di chuyển các máyảo.Các kiểu kiến trúc cũ thường ở dạng Tree (dạng 2N), có từ 2 đến 3 tầng địnhtuyến và chuyển mạch Một kiến trúc 3 tầng bao gồm: tầng core là gốc của cây, tầngaggregation ở giữa và tầng edge là lá của cây Kiến trúc 2 tầng sẽ chỉ có corevàaggregation.Với kiến trúc này thường thì các chuyển mạch tầng dưới chỉ hội tụ vàomột chuyển mạch ở tầng trên và sẽ gây ra mất mát lớn nếu chuyển mạch tầng trêngặp phải sự cố
Hình 1.3 bên dưới là một kiểu kiến trúc điển hình của trung tâm dữ liệu hiện
nay.Kiến trúc này được xây dựng với các tủ rack chứa các server, các rack liên kết
Trang 18trực tiếp với các switch tầng dưới, các switch tầng dưới liên kết với các switch tầngtrên, tầng trên cùng liến kết với các core switch.
Hình 1.3Đồ hình của một trung tâm dữ liệu truyền thống
Để thay thế các kiến trúc cũ các nhà phát triển đã đưa ra rất nhiều các loại kiến trúckhác nhau như Bcube [5], Dcell [4], VL2 [3], Fat-Tree [2]… đặt biệt là kiến trúcFat-Tree với các ưu điểm định tuyến chống lỗi tầng 2.5 sử dụng địa chỉ PMAC (địachỉ MAC giả), dạng topo đối xứng và cố định ứng với mỗi cấp nên dễ quản lý, cókhả năng truyền lưu lượng đầy hai chiều ( full bisection bandwith) Kiến trúc nàycòn được nhiều nhà phát triển áp dụng để xây dựng nên kiến trúc Elastic Tree [1]với mục đích tiết kiệm năng lượng tiêu thụ trong mạng trung tâm dữ liệu
Hình 1.3 là một dạng của kiến trúc Fat-Tree.Kiến trúc này được xây dựng dựa trên
các switch k-port , thường nghiên cứu với kiến trúc 3-Stages Fat-Tree Trong kiếntrúc có hỗ trợ kết nối giữa k3/4 host , sử dụng 5 k2
/4 switchs k-port Fat-Tree đượcchia ra làm k pod mỗi pod có chứa k2
/4 host, số core switch là k2
/4 số aggregationswitch bằng số edge switch là k2/2 Các aggregation switch và edge switch nối vớinhau tạo thành đồ thị hai phía đầy đủ
Trang 19Hình 1.4 Kiến trúc Fattree k = 4
Dựa vào các ưu điểm của kiến trúc Fat-Tree trình bày ở trên kết hợp như hiệu quảkinh tế cao, tăng hiệu năng và tính chống lỗi… ngoài ra công việc trong đề tài liênquan rất nhiều đến bài báo [1], trong đó các tác giả cũng sử dụng kiến trúc Fat-Treenên nhóm quyết định sử dụng kiến trúc Fat-Tree để thực hiện và đánh giá các thuậttoán tối ưu năng lượng tiêu thụ cũng như các thuật toán định tuyến trong mạngtrung tâm dữ liệu
1.3 Đặc điểm lưu lượng trong trung tâm dữ liệu
Hiện nay đã có một số nghiên cứu về mô hình lưu lượng trong các mạngtrung tâm dữ liệu được thực hiện trên một loạt các trung tâm dữ liệu điện toán đámmây, doanh nghiệp và trong trường học [6, 7, 8] Từ các kết quả nghiên cứu này ta
có thể rút ra những đặc điểm chung cho lưu lượng trong mạng trung tâm dữ liệunhư sau:
1.3.1 Đặc điểm ở mức giao tiếp mạng
1.3.1.1 Các luồng lưu lượng
Gần 75% lưu lượng trong các trung tâm dữ liệu đám mây là chảy trong chínhrack mà nó được tạo ra Điều này có thể lý giải là do trong các trung tâm dữliệu dạng đám mây đa phần là các dịch vụ Web phục vụ khách hàng và các
Trang 20dịch vụ này tạo ra rất nhiều chảy qua nhiều server trong trung tâm dữ liệu.
Để tránh cho việc 1 rack chứa nhiều ứng dụng/dịch vụ, chính các nhà quảntrị đã thực hiện việc đưa các thành phần phụ thuộc vào cùng 1 rack và tạonên kết quả này
Đối với trung tâm dữ liệu trường đại học và trung tâm dữ liệu doanh nghiệp,
ít nhất 50% lưu lượng rời khỏi rack, khác hẳn so với mức 25% của các trungtâm dữ liệu đám mây Những trung tâm dữ liệu này chạy các ứng dụng phục
vụ người dùng như dịch vụ Web và server lưu trữ, có nhiều điểm tương tựvới các trung tâm dữ liệu đám mây, nhưng kết quả lại có sự khác biệt Khảnăng có thể nghĩ đến chỉ đơn giản là do trong các trung tâm dữ liệu này, việctối ưu cho các dịch vụ phụ thuộc đã không được tốt như trong trung tâm dữliệu đám mây
1.3.1.2 Hiệu suất sử dụng link
Hiệu suất sử dụng link được đánh giá từ các dữ liệu SNMP:
Hiệu suất sử dụng trong lớp core và aggregation cao hơn lớp edge, nhận xétnày đúng với tất cả các loại trung tâm dữ liệu
Kết quả này là do số lượng link ở lớp core ít hơn số lượng link ở lớp edge vàdung lượng của link ở lớp core lớn hơn ở lớp aggregation và lớn hơn ở lớpedge
1.3.2 Đặc điểm ở mức giao tiếp ứng dụng
1.3.2.1 Mức độ flow
Số lượng active flow trong 1s tại mọi khoảng thời gian là nhỏ hơn 10,000
2 đến 13% số flow có thời gian giữa hai lần đến nhỏ hơn 10 μs s
Đối với các switch trong trung tâm dữ liệu dạng trường đại học, 80% thờigian inter-arrival nằm trong dải 4 đến 40ms
80% flow nhỏ hơn 10KB
Hầu hết các byte nằm trong 10% các luồng lớn
Ta rút ra nhận xét về độ dài các flow trong trung tâm dữ liệu từ đồ thị: 80%các flow có chiều dài ngắn hơn 11s
Trang 211.3.2.2 Mức độ packet
Để đánh giá ở mức độ packet, trước hết ta đánh giá đặc tính phụ thuộc thờigian của các packet trace Tiến trình đến của packet trong trung tâm dữ liệu đượcbiểu hiện theo các mẫu ON/OFF, việc xác định các các chu kì ON/OFF sẽ dựa trênngưỡng thời gian inter-arrival của packet Đặt arrival95 là giá trị mức 95% trongphân bố thời gian inter-arrival tại 1 switch thành phần Chúng ta xác định:
Chu kì ON là chu kì liên tục dài nhất mà trong đó các thời gian inter-arrivalnhỏ hơn arrival
Chu kì OFF là chu kì nằm giữa 2 chu kì ON
Để xác định đặc tính các mẫu lưu lượng ON/OFF, chúng ta tập trung vào 3 vấn đề:khoảng thời gian của chu kì ON, khoảng thời gian chu kì OFF và thời gian inter-
arrival giữa các packet trong cùng 1 chu kì ON Các kết quả trong Bảng 1.1 thể hiện
phân bố cho các tham số của tiến trình tới tại các switch trong các trung tâm dữ liệukhảo sát
Bảng 1.1 Phân bố cho các tham số của tiến trình tới tại các switch
Loại trung tâm
dữ liệu
Phân bố chu kì OFF Phân bố chu kì ON Phán bố tỉ lệ
inter-arrival
1.3.3 Đặc điểm lưu lượng trong trung tâm dữ liệu vừa và nhỏ
Sau khi thu thập và phân tích dữ liệu của lưu lượng trong các trung tâm dữliệu, chúng ta có thể đưa ra một mô hình lưu lượng phù hợp cho trung tâm dữ liệu
Trang 22vừa và nhỏ Các đặc điểm của mô hình lưu lượng này được trình bày trong bảngsau:
Bảng 1.2 Phân bố tiến trình đến trong các loại trung tâm dữ liệu
Loại trung tâm
dữ liệu
Phân phối trong giai đoạn ON
Phân phối trong giai đoạn ON
Phân phối thời gian giữa hai lần đến
Điện toán đám
mây
Bảng 1.3 Đặc điểm của các trung tâm dữ liệu vừa và nhỏ
Đặc điểm Trung tâm dữ liệu vừa và nhỏ
Hiệu suất sử dụng link Core>Edge>Aggregation
Tỷ lệ link đứt Aggregation>Edge>Core
Số lượng flow trong 1s ở
1 Switch
10 đến 100Các flow có thể đến trong khoảng thời gian rất ngắn,chỉ 10μs s
Thời gian giữa hai flow
1.4 Mô hình năng lượng tiêu thụ của switch
Năng lượng tiêu thụ chủ yếu bởi các thành phần mạng trong trung tâm dữliệu là năng lượng tiêu thụ của các switch và router Hiện tại chúng ta chỉ biết đượcgiá trị công suất tiêu thụ tối đa của các switch/router qua datasheet của chúng Nănglượng tiêu thụ thật sự của các switch/router phụ thuộc vào rất nhiều yếu tố như cấuhình của thiết bị và lượng tải mà thiết bị cần xử lý, do đó chỉ dựa vào công suất tiêuthụ tối đa sẽ không thể tính toán chính xác được năng lượng tiêu thụ thật Trong haibài báo [9,10], các tác giả đã mô hình, đo đạc công suất tiêu thụ của nhiều loại thiết
bị mạng và xây dựng mô hình dự đoán công suất tiêu thụ của bất kì switch/router
Trang 23nào.Kết quả cho thấy cấu hình thiết bị và lưu lượng thông tin đi qua sẽ ảnh hưởngđến công suất tiêu thụ của các thiết bị mạng Phần này của đồ án sẽ trình bày một sốnội dung và kết quả thu được từ hai bài báo của cùng nhóm tác giả trên.
Mỗi một switch/router đều chứa nhiều thành phần cấu tạo khác nhau như: chassis,linecard, TCAM, RAM, processor, quạt,… Một switch/router đặc trưng gồm mộtchassis (có thể hiểu là bộ khung của switch) chứa các slot cắm các linecard, mỗilinecard chứa nhiều port (cổng mạng) chính là các cổng giao tiếp của switch/routervới các switch/router khác hoặc với các máy tính khác Việc đo thông số nănglượng tiêu thụ của tất cả các thành phần trong switch một cách toàn diện rất khó đểthực hiện Dưới đây là các yếu tố quan trọng ảnh hưởng đến công suất tiêu thụ củaswitch/router:
Công suất tiêu thụ của chassis: Các switch hiệu năng cao chứa một chassis
và một số lượng cố định các khe cắm (slot) dùng để cắm các linecard Đốivới các switch hiệu năng thấp hơn (các switch phổ thông với 24 port trởxuống), các slot và linecard được gắn cố định, không thể thay đổi Trong cảhai trường hợp, công suất tiêu thụ cơ bản của chassis là tổng công suất tiêuthụ của một số thành phần khác nhau của switch như processor, quạt,memory…
Số lượng linecard: số lượng port của một linecard và tổng lưu lượng thông
tin mà nó có thể xử lý là có hạn Cơ chế cắm và rút các linecard trên các kheslot của switch cho phép các nhà quản lý mạng linh động cắm số lượnglinecard cần thiết linh động đáp ứng nhu cầu về tải Hơn nữa, cơ chế đó cũngđưa ra nhiều lựa chọn cho việc cắm loại linecard phù hợp, ví dụ như cắm mộtlinecard 24 port 1Gbps để có khả năng xử lý lưu lượng 24Gbps, hay cắm mộtlinecard 4 port 10Gbps để có khả năng xử lý lưu lượng 40 Gbps
Số lượng active port: thuật ngữ này đề cập tới tổng số port trên switch (của
tất cả các linecard) ở trạng thái hoạt động (active) Các port còn lại trênswitch được tắt đi thông qua giao diện câu lệnh hỗ trợ tắt bật đưa ra từ nhàsản xuất
Trang 24 Công suất xử lý tối đa của một port (port capacity) hay tốc độ hoạt động
tối đa của một port: ta có thể thay đổi thông số công suất xử lý tối đa của mỗiport để giới hạn tốc độ xử lý thông tin của port đó Ví dụ, công suất xử lý tối
đa của một port full-duplex 1Gbps có thể được cấu hình xuống 100Mbps hay10Mbps Việc thay đổi công suất xử lý tối đa này sẽ ảnh hưởng đến nănglượng tiêu thụ nói chung của switch Khi giảm công suất xử lý tối đa, nănglượng tiêu thụ của port sẽ giảm, dẫn đến năng lượng tiêu thụ của cả switchnói chung giảm theo
Hiệu suất sử dụng của port (port utilization): thuật ngữ này mô tả thông
lượng thật chảy qua một port so với công suất xử lý tối đa của port đó Ví dụtrong trường hợp công suất xử lý tối đa của một port là 100Mbps, thônglượng dữ liệu đi qua port đó là 10Mbps, khi đó hiệu suất sử dụng của port đó(hay port utilization) là 10% Phụ thuộc vào hiệu suất sử dụng của port mà ta
có thể thiết lập các giá trị công suất xử lý tối đa của port đó một cách phùhợp Ví dụ, nếu một port phải xử lý 60 Mbps lưu lượng, khi đó ta sẽ thiết lậpcông suất xử lý tối đa của switch là 100 Mbps để có hiệu quả sử dụng nănglượng một cách tốt nhất
TCAM (Ternary Content Addressable Memory): hầu hết các switch thực
hiện việc phân loại packet trên phần cứng và hầu hết các nhà sản xuất sửdụng TCAM để thực hiện chức năng này do thời gian xử lý tìm kiếm củaTCAM là rất nhanh Tuy nhiên, TCAM tiêu thụ một lượng công suất lớn.Ngoài ra, kích thước TCAM trong các switch cũng khác nhau
Firmware: các nhà sản xuất cập nhật firmware cho switch/router theo định
kỳ Các phiên bản firmware khác nhau cũng có thể ảnh hưởng tới công suấttiêu thụ của switch/router
Ngoài ra, đặc tính lưu lượng thông tin đi qua mỗi port cũng có thể ảnh hưởngtới công suất tiêu thụ của port đó Hai đặc tính quan trọng nhất của lưu lượng củamột flow là kích thước mỗi gói tin và khoảng thời gian giữa hai gói tin liên tiếp.Dựa vào mô hình năng lượng tiêu thụ của các thiết bị mạng khác nhau, chúng ta cóthể xác định các thời điểm thích hợp để điều chỉnh hiệu quả công suất tiêu thụ của
Trang 25các thiết bị này Ví dụ, một port của switch sẽ bị tắt đi khi không có lưu lượng qua
nó hay linh động điều chỉnh công suất tiêu thụ của một port dựa vào tải nó phải xử
lý Do công suất tiêu thụ của một port phụ thuộc vào tốc độ hoạt động của nó, việctiết kiệm năng lượng sẽ phụ thuộc vào lưu lượng port đó phải xử lý Trong trườnghợp các thiết bị có nhiều linecard, khi không có lưu lượng đi qua các port của mộtlinecard, toàn bộ linecard đó sẽ được tắt đi để tiết kiệm năng lượng.Cuối cùng, hiệuquả tiết kiệm năng lượng cao nhất đạt được khi tắt hoàn toàn một switch nếu không
có lưu lượng qua nó
Bảng sau thể hiện công suất tiêu thụ của switch với các cấu hình khác nhau
Bảng 1.4 Công suất tiêu thụ của switch
Tóm lại, mô hình công suất tiêu thụ của một switch được thể hiện theo côngthức tuyến tính như sau:
power switch=power chassis+num linecards∗power linecard+ ∑
Trang 26 Powerlinecardlà công suất tiêu thụ của một linecard khi không có lưu lượng qua
nó Nói cách khác, các port của line card không phải xử lý bất cứ lượng lưulượng nào
Numlinecards là số linecard của switch
Powerconfigsi là công suất tiêu thụ của một port chạy ở tốc độ i
Numportsconfigsi là số port chạy ở tốc độ i
i: có thể có các giá trị 10Mbps, 100 Mbps hay 1Gbps
Qua Bảng 1.4 ta thấy đối với Rack switch (các switch thường công suất xử
lý thấp, ít hơn 24 cổng), do các linecard được gắn cố định, không thay đổi được nêncông suất tiêu thụ của chassis chính là công suất tiêu thụ cơ bản và cố định củaswitch khi switch được bật mà không xử lý bất cứ một lượng lưu lượng nào, côngsuất tiêu thụ của linecard khi đó được bao gồm trong công suất tiêu thụ của chassis.Mặt khác đối với các chuyển mạch tầng 2 có công suất xử lý cao hơn, số lượng cáclinecard có thể thay đổi bằng cách cắm/rút các linecard vào/ra các slot, nên khôngthể tính gộp vào công suất tiêu thụ của chassis Trong trường hợp này, mỗi linecardđược cắm thêm vào, công suất tiêu thụ của switch sẽ tăng thêm 39W Tuy nhiên,trong cả hai trường hợp ta có thể thấy công suất tiêu thụ của các port trên switchphụ thuộc vào cấu hình tốc độ hoạt động của các port đó Tốc độ hoạt động tăng,công suất tiêu thụ của port cũng tăng lên
Ngoài ra, ta có thể quan sát thấy công suất tiêu thụ của chassis chiếm phần lớn côngsuất tiêu thụ của switch, nên việc tắt các switch không sử dụng (không có lưu lượng
đi qua) sẽ mang lại lợi ích lớn nhất Lấy ví dụ 1 switch thường 24 port, khi không
có lưu lượng đi qua sẽ tiêu thụ 146W, trong khi công suất tiêu thụ tối đa khi lượnglưu lượng tối đa qua (mỗi port đặt ở tốc độ hoạt động 1Gbps), công suất tiêu thụ củaswitch sẽ là: 146+0.87*24=167W Nếu ta không tắt switch khi không có lưu lượng
đi qua, switch sẽ luôn tiêu thụ một lượng công suất nền rất lớn: 146W
Về lý tưởng, một switch không có tải đi qua sẽ không tiêu thụ năng lượng(bằng cách tắt switch), và năng lượng sử dụng sẽ tăng lên theo lưu lượng thông tin
đi qua nó Tiêu thụ năng lượng tỷ lệ với lượng tải cần xử lý là đặc tính được kỳ
Trang 27vọng ở các switch trong tương lai Ngoài ra, ta cũng có thể đặt switch vào các trạngthái tiêu thụ năng lượng thấp như sleep, kết hợp với các kỹ thuật như Wake-on-LAN (kỹ thuật được sử dụng trong LAN đối với mạng máy tính, dùng đánh thứccác máy tính đang ở trạng thái sleep) để mang lại hiệu quả cao hơn về hiệu năng sovới tắt switch, do thời gian chuyển giao giữa trạng thái sleep và trạng thái hoạt động
là nhỏ hơn so với thời gian chuyển giao giữa trạng thái tắt và trạng thái hoạt độngbình thường Ở đây ta cần phân biệt hai khái niệm idle và sleep Idle là trạng tháiswitch vẫn hoạt động, tuy nhiên không có lưu lượng đi qua nó Sleep là trạng tháiswitch ngừng hoạt động, tiêu thụ chỉ một phần năng lượng nhỏ, và có thể chuyểnnhanh sang trạng thái hoạt động bằng kỹ thuật như Wake-on-LAN hoặc sử dụngproxy, tuy nhiên switch ở trạng thái sleep không có khả năng thực hiện các chứcnăng giao tiếp mạng Tuy nhiên, các switch hiện nay không có khả năng tiêu thụnăng lượng tỷ lệ với lượng tải qua nó, trên thực tế, đặc tính công suất tiêu thụ củacác switch hiện nay rất xa so với tính tỷ lệ thuận kỳ vọng có được trong các switchtrong tương lai
Hình vẽ sau miêu tả đặc tính tiêu thụ năng lượng của switch so với tải quanó:
Hình 1.5 Đặc tính tiêu thụ năng lượng của switch so với tải
Từ các kết quả thu được, hai bài báo đưa ra một số kết luận quan trọng sau:
Trang 28 Công suất tiêu thụ phụ thuộc vào số active port Việc tắt các port không được
sử dụng (không có lưu lượng đi qua) sẽ làm giảm năng lượng tiêu thụ củathiết bị.Công suất tiêu thụ của switch/router tăng tuyến tính với số activeport
Công suất tiêu thụ phụ thuộc vào tốc độ hoạt động được cấu hình của mỗiport (chính là công suất xử lý tối đa của mỗi port) Cấu hình hoạt động ở tốc
độ càng cao, port càng tiêu thụ nhiều năng lượng, cụ thể
P1Gbps>P100Mbps>P10Mbps Kết quả này là do một lượng năng lượng tăng lên tronghoạt động ở tầng vật lý (PHY) ở tốc độ cao hơn Do đó, một phương pháp đểtiết kiệm năng lượng là thiết lập tốc độ tối đa hoạt động của port phù hợp vớitốc độ lưu lượng đi qua nó Hiện nay, các cổng của switch luôn hoạt động ởtrạng thái tốc độ tối đa, không có khả năng thông minh, tự động thay đổi tốc
độ theo lưu lượng qua nó
Lượng traffic đi qua không có ảnh hưởng đến công suất tiêu thụ của các thiết
bị mạng (nói một cách chính xác là ảnh hưởng không đáng kể) Ngoài ra,công suất tiêu thụ độc lập với kích thước của các gói tin
Công suất tiêu thụ của các thiết bị mạng còn phụ thuộc vào một số yếu tốkhác như phiên bản firmware của switch/router Số slot TCAM được sử dụngkhông ảnh hưởng đến công suất tiêu thụ
Dựa vào đặc tính tiêu thụ năng lượng của các switch, phần tiếp theo sẽ trìnhbày một số kỹ thuật được dùng trong tiết kiệm năng lượng tiêu thụ của các thiết bịmạng trong trung tâm dữ liệu Các kỹ thuật này rất hứa hẹn, tuy nhiên hầu nhưchúng chỉ được đánh giá qua mô phỏng, chưa có mô hình nào thực sự được triểnkhai trong thực tế để kiểm chứng tình hiệu quả của chúng
1.5 Các giải pháp tiết kiệm năng lượng trong trung tâm dữ liệu
Các thiết bị mạng tiêu thụ một lượng năng lượng khổng lồ và năng lượngtiêu thụ này hầu như độc lập với lưu lượng thông tin đi qua chúng Để đáp ứng nhucầu thiết yếu của việc cắt giảm chi phí hoạt động, nghiên cứu các giải pháp tiết
Trang 29kiệm năng lượng tiêu thụ bởi các thiết bị mạng là một bước quan trọng trong tiếtkiệm chi phí năng lượng nói chung trong trung tâm dữ liệu.
Tới nay, lĩnh vực tiết kiệm năng lượng đã được nghiên cứu rất nhiều và cũng
đã đạt được các thành quả cải tiến đáng ghi nhận trong lĩnh vực thiết bị không dâynhư điện thoại di động, laptop… Ví dụ, các thiết bị này sẽ tự động chuyến sangtrạng thái hoạt động tiết kiệm năng lượng khi người dùng không sử dụng máy…Tuy nhiên, các nghiên cứu tiết kiệm năng lượng trong các trung tâm dữ liệu mới chỉ
ở giai đoạn khởi đầu, xuất hiện vài năm gần đây do sự bùng nổ của các dịch vụmạng dẫn đến sự bùng nổ của các trung tâm dữ liệu quy mô ngày càng lớn, phân bốkhắp thế giới Các kết quả nghiên cứu chủ yếu chỉ có tính nghiên cứu, đề xuất, môphỏng Một lý do chính đó là quy mô các trung tâm dữ liệu là rất lớn, nên kiểm tratính hiệu quả của các phương pháp đề xuất trên một trung tâm dữ liệu thật là rất khókhăn
Do một số nỗ lực đưa ra các kiến trúc ảo hóa mạng gần đây như các dự ánGENI, Planet, OpenFlow, các nhà nghiên cứu đã có thể kiểm tra các kết quả côngviệc của mình qua các mô hình lớn với các chuyển mạch ảo hóa, có thể dùng giả lập
cả những trung tâm dữ liệu lớn với hang trăm ngàn server Phần sau đây, ta sẽ đivào trình bày ba kỹ thuật chính được đề xuất trong tiết kiệm năng lượng của cácthiết bị mạng trong các trung tâm dữ liệu
Bên cạnh thích ứng linh hoạt trạng thái các thiết bị trong mạng trung tâm dữliệu với tải qua nó bằng cách sử dụng các kỹ thuật như thay đổi tốc độ hoạt độngcủa các port trên switch, hay tắt các switch và link không hoạt động, ta còn có thểtiết kiệm năng lượng bằng cách kết hợp các thuật toán phân chia job (chính là cácyêu cầu cần xử lý từ khách hàng) đến các nguồn tài nguyên mạng (server, switch)một cách hợp lý, tập trung lưu lượng vào một số lượng switch, link, và server íthơn Thuật toán phân chia job nhận thức năng lượng cần tính đến cả các yếu tố làhiệu suất sử dụng hiện tại của mạng, đồ hình của mạng trước khi gán các server để
xử lý một job nào đó
Trang 30Chúng ta sử dụng một bộ điều khiển mạng tập trung (trong đồ án, bộ điềukhiển mạng này chính là NOX, sẽ được trình bày ở chương 2) để tập hợp các thôngtin về lưu lượng từ tất cả các switch trong trung tâm dữ liệu (ngoài ra có thể sử dụngmột số công cụ khác như SNMP để tổng hợp các thông tin này), sau đó tính toánhiệu suất sử dụng của mỗi port trên các switch Dựa trên thông tin này, bộ điềukhiển mạng sẽ giao tiếp với tất cả các switch và thực hiện các hành động như tắtcác switch không hoạt động, tắt các port không hoạt động hay thích ứng tốc độ hoạtđộng của link/port theo tải qua nó Ba thuật toán tiết kiệm năng lượng gồm có:
1.5.1 Thích ứng trạng thái link (LSA – Link State Adaptation)[10]
Trong phương pháp này, bộ điều khiển công suất các thiết bị mạng sử dụngthông tin về lưu lượng của mỗi link và thay đổi trạng thái hoạt động của link theolưu lượng đang chạy qua link đó Một link có 4 trạng thái hoạt động là: tắt, 10Mbps,100Mbps và 1Gbps Các này đảm bảo lưu lượng đi qua được xử lý ở tốc độ hoạtđộng thích hợp nhất của link để giảm công suất tiêu thụ của port Ví dụ, lưu lượng
90 Mbps sẽ được xử lý bởi link có tốc độ hoạt động 100 Mbps Tuy nhiên, nếu đơnthuần chi thay đổi trạng thái link theo tải đặt vào nó, hiệu năng và độ tin cậy sẽkhông được đảm bảo Để khắc phục điểm này, ta có thể đặt một mức ngưỡngchuyển trạng thái link.Ví dụ, luôn đảm bảo lưu lượng đi qua không vượt quá mộtmức ngưỡng nào đó, chả hạn 70% trạng thái link hiện tại Tức là lưu lượng nhỏ hơn
70 Mbps sẽ được phục vụ bởi link 100Mbps, tuy nhiên khi lưu lượng vượt quá70Mbps, ta sẽ phải dùng link 1Gbps Ngoài ra, cũng với mục đích cải thiện hiệunăng và tính tin cậy, chống lỗi, ta luôn đảm bảo có một đường dư thừa (chỉ đặt ở 10Mbps) để xử lý lưu lượng có thể tăng đột biến Bằng cách thay đổi trạng thái link, ta
đã gián tiếp giảm năng lượng tiêu thụ cho mỗi switch nối với link đó do mỗi linkđều nối với 2 port, thay đổi trạng thái link chính là thay đổi tốc độ hoạt động củaport
1.5.2 Tập trung lưu lượng vào một số link và switch [10]
Sử dụng phương pháp kỹ thuật lưu lượng (traffic engineering) để tập trunglưu lượng vào một số lượng link và switch ít hơn, khi đó các link và switch không
có lưu lượng đi qua sẽ bị tắt đi Ví dụ, khi chưa sử dụng kỹ thuật lưu lượng, hai
Trang 31flow cùng loại có cùng tốc độ 0.3 Mbps đi qua 2 link khác nhau, mỗi link sẽ phảihoạt động ở tốc độ 1Gbps Sau khi sử dụng kỹ thuật lưu lượng, hai flow này sẽđược dồn vào 1 link với lưu lượng tổng cộng 0.6 Mbps, do đó link 1Gbps này vẫn
đủ khả năng lý lượng tải này, link còn lại sẽ được tắt đi Phương pháp này giảmđáng kể năng lượng tiêu thụ bằng cách loại bỏ tất cả các sự dư thừa trong mạng(lượng tài nguyên mạng là tối thiểu để đáp ứng nhu cầu lưu lượng hiện tại, các link/port đều trong trạng thái hiệu suất sử dụng cao nhất có thể) Tuy nhiên phương phápnày sẽ ảnh hưởng lớn đến tính tin cậy của mạng trung tâm dữ liệu do không có cácđường dư thừa trong đồ hình nếu ta sử dụng cách tắt các link không có lưu lượng điqua (cũng như tắt toàn bộ switch khi switch đó kết nối với tất cả các link rỗi, không
có lưu lượng qua) Tuy không có tính thực tế, nhưng phương pháp này cho ta thấytính đối lập giữa tiết kiệm năng lượng và tính chống lỗi, độ tin cậy.Lượng nănglượng tiêu thụ giảm càng nhiều, độ tin cậy, tính chống lỗi càng giảm Tuy nhiên, đểkhắc phục điểm này, ta có thể biến đổi phương pháp này một chút ví dụ thay bằngcách tắt link không hoạt động ta sẽ chuyển trạng thái link đó sang tốc độ 10Mbpstương tự như cách chống lỗi, tăng hiệu năng của phương pháp LSA ở trên
1.5.3 Tập trung lưu lượng vào một số ít server [10]
Các thuật toán phân chia job (phân chia công việc xử lý các yêu cầu từ ngườidùng dịch vụ của trung tâm dữ liệu) hiện tại không xem xét đến lưu lượng mạng và
đồ hình mạng Một cách gián tiếp để tập trung lưu lượng mạng vào một số lượnglink ít hơn và cho phép bộ điều khiển mạng tắt các port và các switch không được
sử dụng là di chuyển job để mà một số ít hơn server được dùng để xử lý các job đivào hệ thống trung tâm dữ liệu Thuật toán cần đảm bảo các nguồn tài nguyên củaserver như là CPU và memory đủ để xử lý các job của hệ thống Kết hợp việc tậptrung lưu lượng vào một số ít hơn các server và phương pháp tập trung lưu lượngvào một số lượng link ít hơn, ta sẽ thu được kết quả tiết kiệm năng lượng nhiềunhất
Nhược điểm tất yếu của các phương pháp tiết kiệm năng lượng sẽ dẫn đếngiảm chất lượng dịch vụ, độ tin cậy và tính chống lỗi của hệ thống do độ dư thừagiảm đi, số nguồn tài nguyên tính toán ít đi Ví dụ, một link tốc độ xử lý tối đa
Trang 321Gbps có 5Mbps lưu lượng thông tin qua nó, sử dụng phương pháp thích ứng tốc độlink (LSA), trạng thái link sẽ chuyển từ tốc độ hoạt động 1Gbps xuống 10Mbps đểtiết kiệm năng lượng, tuy nhiên điều này dẫn đến tăng trễ do trễ hàng đợi tăng Đểlàm giảm các ảnh hưởng về hiệu năng của hệ thống, ta có thể thêm một số hạn chếvào các thuật toán ở trên ví dụ đảm bảo hiệu suất sử dụng của một link không baogiờ được vượt quá một ngưỡng nhất định trước khi thay đổi tốc độ của nó Thôngthường, mức ngưỡng được chọn theo kinh nghiệm của các hệ thống trung tâm dữliệu là 70% Khi đó trễ giảm và tính chống lỗi sẽ tăng lên.
Tóm lại, ngoài các giải pháp cải thiện phần cứng, có 3 phương pháp chính đểtiết kiệm năng lượng tiêu thụ trong trung tâm dữ liệu là: thay đổi thích ứng trạngthái link theo tải đặt vào nó, tập trung tải vào một số lượng link ít hơn, và cuối cùng
là tập trung lưu lượng vào một số lượng server ít hơn Kết hợp ba phương pháp này
sẽ cho ta kết quả tiết kiệm năng lượng cáo nhất Tuy nhiên, do hạn chế về thời gian,kiến thức cũng như công cụ thực hiện, trong đề tài tốt nghiệp này, em chưa khaithác được ưu tất cả các ưu điểm của cả 3 phương pháp này Đề tài chỉ tập trung vàohai phương pháp đầu đựa trên kỹ thuật lưu lượng tập trung tải vào một số ít các link,switch, thay đổi tốc độ link theo tải đặt vào nó, và tắt các link và switch không được
sử dụng Chi tiết về cách thực hiện sẽ được trình bày ở các chương sau
Trang 33Hình 1.6 Các phương pháp tiết kiệm năng lượng trong trung tâm dữ liệu
1.6 Kết luận chương
Tóm lại trong chương này tác giả đã trình bày về các đặc điểm của một trung tâm
dữ liệu, tầm quan trọng của trung tâm dữ liệu trong cuộc sống hiện nay và dẫn ramột số giải pháp tiết kiệm năng lượng nổi bật nhất.Để bắt đầu vào thực hiện ý tưởngđặt ra tác giả đã tìm hiểu về công nghệ Openflow và các công cụ phục vụ cho đề tài.Nội dung chi tiết sẽ được trình bày ở chương tiếp theo
Trang 34Chương 2 CÔNG NGHỆ OPENFLOW VÀ CÁC CÔNG CỤ
THỰC HIỆN
Chương 2 trình bày về công nghệ Openflow và các công cụ được sử dụng để thựchiện đồ án Trước hết là phần giới thiệu về công nghệ OpenFlow dùng để xây dựngcác mạng ảo hóa gồm các switch theo chuẩn OpenFlow NOX-bộ điều khiển mạngdùng điều khiển switch hỗ trợ công nghệ OpenFlow.Bên cạnh đó em giới thiệu vềMininet- một công cụ cho phép xây dựng môi trường giả lập topology mạng gồmcác switch ảo hỗ trợ công nghệ OpenFlow Cuối cùng là phần mềm D-ITG dùnglàm bộ tạo lưu lượng trong mạng
2.1 Công nghệ Openflow
Hiện nay hầu như không có phương pháp nào có tính thực tế để thử nghiệm,kiểm chứng các giao thức mạng mới trong môi trường thực tế với quy mô lưu lượngthật.Kết quả là hầu hết các ý tưởng mới từ cộng đồng nghiên cứu không được thửnghiệm và kiểm chứng.Openflow [11, 12] là phương tiện cho phép các nhà nghiêncứ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.OpenFlow dựa trên nguyên tắc Ethernet switch, với một flow-table bên trong, vàgiao diện chuẩn hóa để thêm, xóa các flow entries trong flow-table Mục đích củaviệc đưa ra Openflow nhằm khuyến khích các nhà sản xuất thiết bị mạng thêm chứcnăng Openflow vào các switch của họ để mang triển khai trong thực tế Openflowđang được sử dụng rộng rãi bởi nhiều nhà nghiên cứu, các viện nghiên cứu trên thếgiới do nó có tính thực tế dựa trên các ưu điểm: cho phép các nhà nghiên cứu chạycác thử nghiệm trên các switch khác nhau theo cùng một cách như nhau, không cầncấu hình triển khai theo cấu hình từng loại switch, hoạt động ở line-rate cùng vớimật độ port lớn, hơn nữa các nhà sản xuất vẫn có thể giữ bí mật về thiết kế cácswitch của họ Ngoài việc cho phép các nhà nghiên cứu đánh giá các ý tưởng của họtrong môi trường lưu lượng thế giới thực, Openflow còn là một công cụ hữu hiệu
cho triển khai các testbed qui mô rộng như GENI (Global Environment for Network
Innovation, network/testbed gồm các tài nguyên chung cho các nhà nghiên cứu, chia sẻ tài nguyên bằng phương pháp ảo hóa- virtulization ) GENI là kiến trúc
mạng có khả năng lập trình được.Mạng có khả năng lập trình cần có các phần tử
Trang 35switch/router có khả năng lập trình để xử lý các packet cho nhiều thử nghiệm trênmạng đồng thời không ảnh hưởng lẫn nhau.OpenFlow cho phép ta có thể lập trìnhđược switch/router.
Hình 2.1 và Hình 2.2 cho thấy sự khác nhau trong cấu trúc của switch truyền thống
và switch hỗ trợ công nghệ Openflow
Hình 2.7 Cấu trúc của switch thông thường
Hình 2.8 Cấu trúc switch hỗ trợ công nghệ Openflow
Trang 36Hình 2.9 Openflow switch lý tưởng
OpenFlow cung cấp một giao thức mở để lập trình flow-table trong cácswitch/router khác nhau.Người quản trị mạng có thể chia traffic thanh các luồng(flow) cho mạng thông thường và luồng cho việc nghiên cứu.Bằng cách này, cácnhà nghiên cứu có thể thử các giao thức định tuyến, các mô hình bảo mật, các cách
đánh địa chỉ mới, thậm chí thay thế cho IP.Hình 2.3 trên mô tả một OpenFlow
switch giao tiếp với một controller thông qua kênh kết nối bảo mật SSL sử dụnggiao thức OpenFlow Kênh bảo mật kết nối switch với controller sử dụng giao thứcOpenFlow cho phép các lệnh và các packet được truyền qua lại giữa controller vàswitch.Giao thức OpenFlow là một giao thức mở và chuẩn hóa cho phép controllergiao tiếp với switch Mỗi OpenFlow switch chứa một flow-table gồm các flow-entry, mỗi flow-entry có một hoặc nhiều action tương ứng, khi switch nhận đượcflow có đặc điểm giống như mô tả trong flow-entry, switch sẽ xử lý các packet củaflow đó theo các action tương ứng Các action trong chuẩn OpenFlow 1.0 được mô
tả trong Hình 2.4 gồm có: chuyển tiếp gói tin đến bộ điều khiển (controller), hủy
gói tin, thay đổi các trường trong gói tin, chuyển gói tin đến một hoặc nhiều cổngxác định của switch
Trang 37Hình 2.10 Flow Table Actions Bảng 2.1 thể hiện các thành phần của một flow table entry, bao gồm trường tiêu đề
(header field), counter chứa các thông số thống kê sẽ nói chi tiết ở chương 4 vàtrường action
Bảng 2.5 Flow Table entry
Header Fields Counters ActionsTrường tiêu đề trong OpenFlow switch loại “Type 0” bao gồm 10 tham số như
trong Bảng 2.2 Một luồng TCP có thể được xác định bằng toàn bộ 10 tham số, mặt
khác một luồng IP có thể định nghĩa mà không bao gồm địa chỉ transport ports Mỗitrường tiêu đề có thể là một ký tự “wildcard” (hay ký tự *) để cho phép định nghĩatổng hợp các nhiều flow, ví dụ như các flow chỉ được định nghĩa bởi trường VLAN
ID sẽ áp dụng cho tất cả lưu lượng của một VLAN cụ thể
Bảng 2.6 Trường tiêu đề trong openflow switch
Trường tiêu đề bao gồm một bộ 10 tham số sau đây:
Trang 38- Cổng vào switch
- VLAN ID
- Địa chỉ MAC nguồn (SMA)
- Địa chỉ MAC đích (DMA)
Kênh bảo mật (secure channel):
Là giao diện kết nối các OpenFlow Switch đến controller.Thông qua giaodiện này, Controller cấu hình và quản lý các switch, nhận các sự kiện từ switch, gửilệnh và gói tin tới các switch Các giao diện được thực hiện riêng biệt, tuy nhiên tất
cả các bản tin gửi qua kênh bảo mật phải được định dạng theo giao thức OpenFlow.Giao thức OpenFlow hỗ trợ 3 loại bản tin sau đây:
Controller to Switch Message : được tạo bởi Controller và sử dụng để trực
tiếp quản lý và kiểm tra trạng thái của OpenFlow Switch, có thể không đòihỏi sự phản hồi từ Switch, bao gồm các tin nhắn:
- Features Message: Khi Transport Layer Security (TLS) được thành
lập, Controller sẽ gửi tin nhắn này đến Switch Switch phải gửi phảnhồi xác định khả năng hỗ trợ của nó tới Controller
- Configuaration Message: Controller có khả năng thiếp lập và cấu hình
các tham số của Switch Swicth sẽ phản hồi 1 truy vấn từ Controller
- Modify-State Message: thông điệp này nhằm quản lý trạng thái của
Switch, thêm hoặc xóa các flow-entry trong flow-table
Trang 39- Read-State Message: Giúp Controller thu thập số liệu thống kê từ các
flow-table, ports, các flow-entry riêng lẻ
- Send Packet Message: Đưa các gói ra một cổng xác định của Switch.
- Barrier Message: Để đảm bảo các tin nhắn phụ thuộc đã được đáp ứng
hoặc để nhận thông báo cho các hoạt động đã hoàn thành
Asynchronous Message: được bắt đầu bởi Switch, dùng để cập nhật các sự
kiện trong mạng và trạng thái của Switch cho Controller:
- Packet - in Message:Với các gói mà không có entry nào phù hợp,
Switch sẽ gửi tin nhắn này tới Controller
- Flow - Removed Message:Khi 1 flow-entry đuọc xóa khỏi Flow-table
- Port - Status Message: thay đổi trạng thái cấu hình của các port
- Error Message: Switch thông báo cho Controller các vấn lỗi có thể
xảy ra trong quá trình hoạt động
Symmetic Message: được gửi đi hoặc do Switch, hoặc do Controller mà
không cần có yêu cầu:
- Hell : được trao đổi giữa Controller và Switch khi 1 kết nối được khởi
động
- Echo Request/Reply: có thể sử dụng để chỉ ra độ trễ, băng thông hoặc
khả năng của một kết nối Controller – Switch
- Vendor: cung cấp các tiêu chuẩn cho Switch để đáp ứng các chức năng
bổ sung trong các thông điệp OpenFLow
Giao thức OpenFlow Protocol cung cấp chuẩn mở cho bộ điều khiển giaotiếp với switch Bằng cách chỉ ra giao diện chuẩn (Openflow Protocol) qua đó, cácentry trong Flow-table có thể được định nghĩa từ ngoài (qua controller), các nhànghiên cứu không cần lập trình từng switch
Trang 402.2 Bộ điều khiển NOX
Bộ điều khiển NOX là thành phần có trách nhiệm quản lý các OpenFlow Switch, cóthể thêm, sửa, hay xóa bỏ các flow-entry trong flow-table của Switch Controller cóthể là một ứng dụng chạy trên PC hoặc một thiết bị tinh vi có thể linh động kiểmsoát mạng lưới của mình cũng như quyết định cách xử lý các luồng dữ liệu
2.2.1 Giới thiệu về NOX
Các controller dùng trong mạng Openflow gồm có: bộ điều khiển mặc định,NOX, SNAC (giao diện web dùng quản lý mạng Openflow), Beacon Tuy nhiêncontroller chính và đáng chú ý nhất là NOX Controller (Bộ điều khiển NOX) [13].NOX là một bộ điều khiển OpenFlow mã nguồn mở Mục đích của NOX nhằmcung cấp một nền tảng cho việc viết các phần mềm quản lý mạng ( như các ứngdụng routing, firewall…) sử dụng ngôn ngữ C++ hoặc Python Tuy vẫn còn trongquá trình phát triển nhưng NOX hiện nay đã được sử dụng trong một số mạng lớn.NOX hỗ trợ cả các mạng doanh nghiệp lớn gồm hàng trăm switch hỗ trợ hàng ngànhost và home network với chỉ một switch đơn chạy trên platform nhúng hiệu năngthấp NOX chạy trên phần cứng PC thông thường và cung cấp một môi trường phầnmềm trong đó các chương trình có thể điều khiển một mạng lớn với tốc độ hàngGbps
2.2.2 Chức năng và phương thức hoạt động của NOX
Bộ điều khiển NOX cung cấp các chức năng sau:
Các chức năng quản lý, hiển thị, điều khiển truy nhập… trên các switch giárẻ
Một giao diện cho phép quản lý các switch có tốc độ line speed.Các nhà pháttriển có thể ghép thêm phần mềm điều khiển của riêng họ
Mô hình lập trình tập trung cho toàn bộ mạng – một chương trình có thể điềukhiển việc chuyển mạch của tất cả các switch trong mạng Điều này làm choviệc phát triển chương trình trở nên dễ dàng hơn mô hình phân tán chuẩntrước đây