TIỂU LUẬN HỌC PHẦN BÁO HIỆU VÀ ĐIỀU KHIỂN KẾT NỐI MÃ NGUỒN MỞ SDN HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA VIỄN THÔNG I --------------------------------------- TIỂU LUẬN HỌC PHẦN BÁO HIỆU VÀ ĐIỀU KHIỂN KẾT NỐI MÃ NGUỒN MỞ SDN
TỔNG QUAN VỀ OPENFLOW
Giới thiệu về OP
OpenFlow là công nghệ mới nổi, có khả năng nâng cao giá trị dịch vụ của trung tâm dữ liệu Việc triển khai OpenFlow cho phép các nhà quản lý mạng kiểm soát tốt hơn các nguồn tài nguyên, quản lý máy chủ và tích hợp mạng, đồng thời cung cấp giao tiếp quản trị mở cho hệ thống Router và Switch.
OpenFlow là tiêu chuẩn đầu tiên trong kiến trúc SDN, tách biệt phần điều khiển khỏi phần chuyển tiếp và cung cấp khả năng lập trình cho lớp điều khiển Nó cho phép truy cập trực tiếp và điều khiển mặt phẳng chuyển tiếp của các thiết bị mạng như switch và router, từ thiết bị chuyển mạch thực tế đến phần mềm điều khiển trung tâm.
Giải pháp OpenFlow cung cấp khả năng ảo hóa toàn diện cho hệ thống mạng, hứa hẹn sẽ trở thành một trong những tiêu chuẩn quan trọng, thay đổi kiến trúc hạ tầng mạng trong tương lai gần.
Quyết định về luồng traffic sẽ được tập trung tại OpenFlow Controller, điều này giúp đơn giản hóa việc quản lý cấu hình trong toàn bộ hệ thống.
Các đặc trưng cơ bản của OP
OP có thể được sử dụng bởi ứng dụng phần mềm bên ngoài để điều khiển mặt phẳng chuyển tiếp của các thiết bị mạng, tương tự như cách mà CPU điều khiển một hệ thống máy tính.
Một thiết bị OpenFlow bao gồm ít nhất 3 thành phần:
• Secure Channel: kênh kết nối thiết bị tới bộ điều khiển, cho phép các lệnh và các gói tin được gửi giữa bộ điều khiển và thiết bị
• OP Protocol: giao thức cung cấp phương thức tiêu chuẩn và mở cho một bộ điều khiển truyền thông với thiết bị
• Flow Table: một liên kết hành động với mỗi luồng, giusp thiết bị xử lý các luồng thế nào.
Lợi ích khi sử dụng OP
Công nghệ SDN dựa trên OpenFlow giúp nhân viên IT quản lý các ứng dụng băng thông cao và biến động, từ đó làm cho mạng lưới dễ dàng thích ứng với nhu cầu kinh doanh thay đổi và giảm thiểu đáng kể các hoạt động quản lý phức tạp Các doanh nghiệp và nhà khai thác mạng có thể thu được nhiều lợi ích từ kiến trúc SDN trên nền tảng OpenFlow.
Phần mềm điều khiển SDN cho phép tập trung hóa điều khiển trong môi trường nhiều nhà cung cấp thiết bị, có khả năng quản lý bất kỳ thiết bị mạng nào hỗ trợ giao thức OpenFlow.
Giảm sự phức tạp trong quản lý mạng thông qua tự động hóa là một lợi ích nổi bật của kiến trúc SDN dựa trên OpenFlow Kiến trúc này cung cấp một framework linh hoạt, cho phép phát triển các công cụ tự động hóa cho những nhiệm vụ hiện đang được thực hiện bằng tay, từ đó nâng cao hiệu quả và giảm thiểu sai sót trong quá trình quản lý mạng.
TỔNG QUAN MÃ NGUỒN MỞ SDN
Trong 5 năm đầu tiên của SDN, sự đầu tư chủ yếu tập trung vào nghiên cứu cộng đồng và OpenFlow Từ 2012 đến 2015, không chỉ tiếp tục đầu tư vào OpenFlow mà còn vào các giao thức khác như BGP và NETCONF để đạt được mục tiêu SDN Đối với thiết bị, bộ điều khiển và ứng dụng dựa trên OpenFlow, có nhiều phần mềm nguồn mở phong phú Tuy nhiên, các giải pháp cho giao thức kế thừa chủ yếu hoạt động trên thiết bị sử dụng phần mềm độc quyền, dẫn đến việc phát triển nguồn mở chủ yếu tập trung vào bộ điều khiển, với OpenDaylight (ODL) là ví dụ tiêu biểu Bên cạnh đó, cũng có nguồn mở cho một số giao thức mà bộ điều khiển sử dụng để giao tiếp với thiết bị độc quyền, như NETCONF và BGP.
Trong chương này, chúng ta sẽ khám phá các nỗ lực nguồn mở dựa trên OpenFlow liên quan đến thiết bị, bộ điều khiển và ứng dụng Đồng thời, chúng ta cũng sẽ xem xét các bộ điều khiển nguồn mở mới nổi, hỗ trợ nhiều giao thức như ODL và ONOS.
MÔI TRƯỜNG MÃ NGUỒN MỞ SDN
Trong phần đầu, chúng tôi giới thiệu tổng quan về OpenFlow, tiêu chuẩn được phát triển bởi ONF, tuy nhiên ONF không cung cấp triển khai hoạt động cho công tắc hoặc bộ điều khiển Chương này sẽ cung cấp một lượng lớn các thành phần mã nguồn mở có sẵn cho nghiên cứu, bao gồm mã nguồn cho chính OpenFlow, với một số thành phần có giấy phép phù hợp cho khai thác thương mại Nhiều sáng kiến trong số này sẽ thúc đẩy quá trình tiêu chuẩn hóa và tỷ lệ chấp nhận SDN Chúng tôi cũng sẽ thực hiện một cuộc khảo sát về các sáng kiến này và giải thích mối quan hệ cũng như vai trò của chúng trong bối cảnh SDN rộng lớn hơn.
Chúng tôi đã nhận thấy rằng thuật ngữ SDN đã phát triển vượt xa phạm vi ban đầu, và định nghĩa của SDN hiện nay trở nên mơ hồ trong nhiều công trình nghiên cứu về ảo hóa mạng Mặc dù vậy, phần lớn các công việc liên quan vẫn tiếp tục tập trung vào các khía cạnh của SDN.
Trong lĩnh vực SDN mã nguồn mở, đã có sự phát triển mạnh mẽ trong học thuật và công nghiệp, với một thư viện mã nguồn mở quan trọng cho những ai muốn thử nghiệm hoặc xây dựng sản phẩm thương mại Nhiều công ty lớn như Big Switch, VMware, Brocade, Cisco, IBM, HP, Huawei, Intel và NEC đã đóng góp mã nguồn cho các dự án SDN, đặc biệt là OpenDaylight (ODL) ODL chào đón các đóng góp từ cộng đồng và có quy trình nghiêm ngặt để đánh giá và tích hợp phần mềm Danh sách các kỹ sư đóng góp chủ yếu đến từ Cisco, cùng với nhiều đóng góp khác cho ODL Plexxi đã phát triển một API cho phép tích hợp giữa bộ điều khiển và ứng dụng, trong khi Radware cung cấp phần mềm ngăn chặn các cuộc tấn công DDoS Ngoài ra, Ericsson và IBM đã hợp tác với Cisco để phát triển các plugin OpenFlow, và Pantheon đã cung cấp phiên bản OpenFlow 1.3 Thông tin chi tiết về ODL sẽ được trình bày trong Phần 8.
Hình 1 Tổng quan về mã nguồn mở SDN
Trong hình 1, chúng tôi ánh xạ nhiều lựa chọn nguồn mở này với các thành phần mạng khác nhau Các các thành phần chính, từ dưới lên là:
• Các ứng dụng SDN
• Kiểm tra và mô phỏng
Danh mục cuối cùng, Thử nghiệm và Mô phỏng, được trình bày bên cạnh sơ đồ do không khớp với hệ thống phân cấp từ dưới lên trên Chúng tôi sẽ hiển thị những nguồn mở đáng chú ý có sẵn trong ô gợi ra cho từng danh mục Các phần tiếp theo sẽ cung cấp bản kiểm kê phần mềm, với một số nổi bật như cơ sở cho triển khai thương mại mạng ảo hóa và SDN Trong trường hợp này, chúng tôi sẽ khám phá chi tiết các sản phẩm mã nguồn mở liên quan Khi chuyển qua các thành phần mạng trong phần 7-13, chúng tôi khuyến khích độc giả tham khảo hình 1 để đặt các dự án mã nguồn mở vào bối cảnh của hệ sinh thái SDN.
Cách thức khai thác thương mại phần mềm nguồn mở phụ thuộc vào bản chất của giấy phép nguồn mở mà phần mềm đó được cung cấp Các loại giấy phép này không hoàn toàn bình đẳng, vì vậy trước khi thảo luận về các mô-đun phần mềm cụ thể, cần xem xét các loại giấy phép nguồn mở phổ biến hiện nay.
THUẬT NGỮ
Trong cộng đồng phát triển mã nguồn mở, thuật ngữ "forking" (chia nhánh) thường được sử dụng để mô tả quá trình tách biệt một cơ sở mã nguồn từ bản phát hành hiện có Nếu coi cơ sở mã nguồn như một thân cây, thì các nhánh phát triển sẽ xuất hiện ở nhiều nơi trên thế giới, nơi diễn ra đổi mới và thử nghiệm Nhiều khi, những đổi mới quan trọng từ các nhánh này sẽ được đóng góp trở lại cho bản chính, góp phần vào các phiên bản phát hành sau này Tuy nhiên, khi một cơ sở mã mới được tách ra, nó sẽ cắt đứt kết nối với thân cây, dẫn đến việc các cải tiến trên các nhánh đó sẽ không được đưa trở lại cơ sở mã ban đầu.
CÁC LỖI CẤP PHÉP NGUỒN
Để hiểu rõ về sự phức tạp của lĩnh vực mã nguồn mở, người ta cần có kinh nghiệm thực tế trong việc xây dựng sản phẩm thương mại kết hợp với phần mềm nguồn mở Hiện nay, có rất nhiều loại giấy phép mã nguồn mở khác nhau, với gnu.org hiện đang liệt kê tổng cộng 92 giấy phép phần mềm miễn phí.
Có nhiều sắc thái giữa các giấy phép phần mềm miễn phí, tạo nên sự phức tạp cho người dùng không chuyên Sự khác biệt về quyền sử dụng và yêu cầu ghi nhận tên tác giả hoặc tuân thủ luật xuất khẩu của Hoa Kỳ có thể là những điểm khác biệt chính Các doanh nghiệp cung cấp mã nguồn miễn phí thường ghi tên tổ chức của họ trong giấy phép, làm cho tên này trở thành yếu tố phân biệt giữa các giấy phép Chúng tôi sẽ cung cấp một mô tả ngắn gọn về các giấy phép khác nhau, chú ý đến các nhánh kinh doanh liên quan đến việc lựa chọn kết hợp phần mềm trong sản phẩm thương mại.
Mẫu số chung của mã nguồn mở là mã được cung cấp miễn phí, cho phép người dùng sử dụng và sửa đổi cho những mục đích cụ thể Tuy nhiên, có những mã nguồn mở chỉ cho phép sử dụng phi thương mại, điều này có thể hạn chế tác động của phần mềm Ngay cả khi sử dụng thương mại được phép, vẫn tồn tại những nghĩa vụ tiềm ẩn liên quan đến việc sử dụng phần mềm đó.
Một số hạng mục chính của giấy phép nguồn mở phổ biến trong thương mại hiện nay bao gồm GNU General Public License (GPL), kiểu BSD và Apache Các tổ chức như Free Software Foundation (FSF) và Sáng kiến Nguồn mở tham gia vào việc xác định xem một giấy phép có thực sự là nguồn mở hay không, tuy nhiên, họ không phải lúc nào cũng đồng ý với nhau.
GPL là một hình thức cấp phép phổ biến, cho phép người dùng sao chép và sửa đổi phần mềm cho hầu hết mọi mục đích Hệ điều hành Linux được phân phối theo GPL, nhưng có một hạn chế quan trọng: bất kỳ tác phẩm phát sinh nào phải được phân phối theo cùng một giấy phép Điều này có nghĩa là nếu một công ty thương mại mở rộng mã nguồn mở GPL để cung cấp chức năng mới, các sửa đổi phải được cung cấp miễn phí cho cộng đồng nguồn mở Nếu tính năng đó là tài sản trí tuệ cốt lõi của công ty, điều này thường khó chấp nhận Tuy nhiên, mã GPL có thể phù hợp trong các trường hợp mà tính năng không yêu cầu bảo vệ trí tuệ cao.
Sự khác biệt rõ ràng giữa các sản phẩm thương mại có thể ảnh hưởng lớn đến định giá mà các công ty khởi nghiệp nhận được từ nhà đầu tư Vì lý do này, mã nguồn mở GPL được sử dụng một cách thận trọng trong ngành công nghiệp Mặc dù vậy, GPL vẫn là giấy phép phần mềm miễn phí phổ biến nhất, với các phiên bản GPL V.2 và GPL V.3 có phần hạn chế hơn so với phiên bản đầu tiên.
Mô hình cấp phép gia đình BSD, lần đầu tiên được áp dụng cho Berkeley Software Distribution (BSD), là một hệ điều hành tương tự Unix, mang lại sự linh hoạt hơn so với giấy phép GPL Với giấy phép BSD, người dùng không bắt buộc phải đóng góp lại các tác phẩm phái sinh, giúp việc tích hợp mã nguồn mở vào sản phẩm thương mại trở nên ít rủi ro hơn Mặc dù một số phiên bản giấy phép BSD trước đây yêu cầu xác nhận việc sử dụng mã UC Berkeley trong quảng cáo sản phẩm, điều khoản này đã bị loại bỏ trong các phiên bản mới nhất Tuy nhiên, vẫn có nhiều sản phẩm phần mềm, như OpenSSL, yêu cầu xác nhận tác giả trong quảng cáo sản phẩm.
Giấy phép Apache là một loại giấy phép mã nguồn mở dễ dàng, được phát triển bởi Apache Software Foundation (ASF) và áp dụng cho phần mềm do ASF sản xuất cũng như cho một số thực thể khác Phần mềm dưới giấy phép Apache không bị hạn chế sử dụng, tuy nhiên yêu cầu duy trì thông báo bản quyền và tuyên bố từ chối trách nhiệm trong mã nguồn Điều này giúp tối thiểu hóa ảnh hưởng đến khả năng thương mại hóa phần mềm, cho phép nhiều tổ chức thương mại xây dựng các sản phẩm tự do từ mã nguồn được cấp phép của Apache.
Giấy phép Công cộng Eclipse (EPL) được coi là sự kết hợp giữa tính chất copyleft mạnh mẽ của GPL và tính thân thiện với thương mại của giấy phép Apache.
Trong một số trường hợp nhất định, việc sử dụng mã nguồn được cấp phép EPL có thể tạo ra nghĩa vụ đóng góp các sửa đổi trở lại cộng đồng nguồn mở Tuy nhiên, điều này không phải là yêu cầu phổ biến, vì vậy phần mềm này thường được các nhà phát triển tích hợp vào sản phẩm thương mại mà không lo bị buộc phải tiết lộ tài sản trí tuệ của riêng họ Yêu cầu này chỉ có hiệu lực khi các sửa đổi không phải là một mô-đun phần mềm riêng biệt mà là một phần quan trọng của EPL được cấp phép nguyên bản, dẫn đến việc trở thành tác phẩm phái sinh Ngay cả khi yêu cầu phát hành tiện ích mở rộng từ bản gốc không có hiệu lực, người dùng vẫn cần cấp giấy phép cho bất kỳ ai nhận được sửa đổi của họ, cho phép người dùng nắm giữ những sửa đổi đó.
Giấy phép Free and Open-Source Software (FOSS) của Đại học Stanford đáng chú ý vì cách tiếp cận nhằm giải quyết vấn đề sử dụng thương mại GPL với copyleft Động lực của Stanford là khuyến khích phát triển ứng dụng cho bộ điều khiển Beacon mà không gây ra rào cản cho các nhà phát triển Nếu bộ điều khiển Beacon được cấp phép theo GPL mà không có ngoại lệ, các nhà phát triển sẽ phải tuân thủ nghĩa vụ đóng góp mã nguồn mở Giấy phép này được thiết kế riêng cho bộ điều khiển Beacon, mặc dù có thể áp dụng rộng rãi hơn Stanford mong muốn phát hành mã bộ điều khiển Beacon theo điều khoản GPL, yêu cầu người dùng tiếp tục xử lý mã theo các quy định này, trong khi mã ứng dụng Beacon có thể được phát hành dưới nhiều giấy phép phần mềm nguồn mở đã được phê duyệt.
Các giấy phép nguồn mở phổ biến nhất đã được phê duyệt trong chương này cho phép ứng dụng mã nguồn mở được phát hành theo các giấy phép thương mại thân thiện, như Apache Giấy phép này không yêu cầu dẫn xuất hoạt động trên mã ứng dụng, giúp các nhà phát triển bảo vệ tài sản trí tuệ mới của họ.
HỒ SƠ NGƯỜI DUNG MÃ NGUỒN MỞ SDN
Khi đánh giá mức độ liên quan của nguồn mở với nhu cầu SDN của tổ chức, câu trả lời phụ thuộc vào vai trò mà tổ chức muốn đảm nhận trong lĩnh vực SDN Những người chấp nhận SDN ban đầu chủ yếu là các nhà nghiên cứu, và việc duy trì tính linh hoạt cùng khả năng sửa đổi mã là rất quan trọng đối với họ Do đó, bộ điều khiển OpenFlow mã nguồn mở đã trở nên quan trọng trong môi trường nghiên cứu Đối với các công ty khởi nghiệp, việc xây dựng một công tắc hoặc bộ điều khiển OpenFlow mới có thể hấp dẫn nếu họ tận dụng mã nguồn mở hiện có mà không cản trở sự phát triển thương mại của chính họ Cuối cùng, đối với các nhà điều hành điện toán đám mây, việc có một tổ chức hỗ trợ đáng tin cậy là quan trọng hơn so với việc sử dụng bộ điều khiển OpenFlow.
Do đó, chúng tôi đề xuất ba danh mục lớn những người có khả năng sử dụng phần mềm nguồn mở liên quan đến SDN:
• Nhà phát triển thương mại
• Nhà tổ chức mạng lưới
Một phần mềm nguồn mở cần đáp ứng các yêu cầu đa dạng của người dùng, mỗi nhóm người dùng có những mối quan tâm riêng Các nhà phát triển doanh nghiệp chú trọng vào việc bảo vệ khả năng thương mại của sản phẩm và trí tuệ tài sản của họ, tránh việc kết hợp với nguồn mở có thể hạn chế GPL có thể gây khó khăn do yêu cầu công khai các sửa đổi, trong khi các nhà nghiên cứu thường tìm kiếm mã nguồn miễn phí, có thể sửa đổi và phân phối cho bất kỳ mục đích nào Họ cũng ủng hộ phát triển nguồn mở và có thể ưa chuộng giấy phép copyleft, yêu cầu người dùng đóng góp sửa đổi trở lại cộng đồng Cuối cùng, các nhà khai thác mạng quan tâm đến việc duy trì hoạt động của mạng và hỗ trợ sản phẩm nguồn mở một cách mạnh mẽ.
Mã nguồn mở, với bản chất phi thương mại, luôn đặt ra thách thức trong việc xác định trách nhiệm khi có lỗi xảy ra Điều này dẫn đến việc các công ty thương mại hóa hiệu quả mã nguồn mở, cung cấp các bản phát hành và cấu hình đã được thử nghiệm, cùng với dịch vụ hỗ trợ Các nhà khai thác ngày càng ít có thói quen mua công nghệ cũ từ các nhà cung cấp NEM chính thống, vì họ thực sự đang tìm kiếm thiết bị kèm theo chính sách bảo hiểm và công nghệ phù hợp Mặc dù nhà điều hành đám mây có thể không muốn chịu trách nhiệm cho cơ sở hạ tầng chuyển mạch, các ứng dụng mã nguồn mở và phần mềm giám sát có thể đóng vai trò quan trọng trong việc hỗ trợ các dự án địa phương.
Trong chương này, chúng tôi sẽ thảo luận về các dự án phần mềm, cung cấp ví dụ về cách người dùng có thể sử dụng các loại phần mềm khác nhau.
Một công ty chuyển mạch phần cứng đang tìm cách chuyển đổi một công tắc kế thừa thành công tắc hỗ trợ OpenFlow Họ sẽ sử dụng mã chuyển đổi OpenFlow được trình bày trong Phần 8 làm điểm khởi đầu cho quá trình này.
Một công ty có thể bắt đầu dự án của mình bằng cách sử dụng một trong những bộ điều khiển OpenFlow mà chúng tôi đã liệt kê trong Phần 9, sau đó thêm các tính năng cần thiết và thực hiện việc làm cứng mã để đảm bảo tính ổn định và hiệu suất cao cho hệ thống.
Nhà điều hành đám mây có thể tận dụng ứng dụng SDN nguồn mở để thử nghiệm công nghệ OpenFlow, giúp họ đánh giá tính khả thi trước khi quyết định đầu tư vào công nghệ này.
Trong bài viết này, chúng tôi sẽ xem xét các danh mục khác nhau của các dự án phần mềm và xác định nhóm người dùng nào có khả năng chấp nhận phần mềm cụ thể Chúng tôi sẽ cung cấp một bản kiểm kê các mã nguồn mở dành riêng cho SDN, được sử dụng bởi các nhà nghiên cứu, nhà phát triển và các toán tử Do số lượng dự án nguồn mở lớn, chúng tôi đã nhóm chúng thành các danh mục cơ bản như công tắc, bộ điều khiển, điều phối, ứng dụng, và mô phỏng cùng thử nghiệm Các đóng góp mã nguồn mở trong mỗi danh mục sẽ được tóm tắt trong các bảng ở các phần sau Chỉ những dự án có vai trò quan trọng trong sự phát triển của SDN sẽ được mô tả chi tiết hơn.
OPENFLOW SOURCE CODE
Hình 2: Đặc điểm của openFlow source
Bảng 1: Mô tả các bộ điều khiển mã nguồn mở openFlow
Bảng 2: Thông tin chi tiết của các bộ điều khiển mã nguồn mở openflow
Hình 2 minh họa rằng cả thiết bị và bộ điều khiển đều có khả năng tận dụng giao thức OpenFlow Hiện có nhiều triển khai mã nguồn mở cho giao thức OpenFlow.
Trong Bảng 2, chúng tôi cung cấp mô tả cơ bản về các triển khai có sẵn, trong khi Bảng 1 liệt kê thông tin chi tiết về nhà cung cấp mã, loại giấy phép, mã nguồn (nếu có) và lớp khả năng của người dùng Chúng tôi đã xác định các lớp người dùng mục tiêu dựa trên một số tiêu chí, bao gồm: (1) bản chất của giấy phép, (2) thời hạn sử dụng của mã, và (3) người dùng thực tế.
OpenFlow Reference: cơ sở mã tham chiếu theo dõi thông số kỹ thuật
OpenFlow Faucet: triển khai mã nguồn của giao thức OpenFlow 1.0, được sử dụng trong cả bộ điều khiển và công tắc
OpenFlowJ là một mã nguồn triển khai giao thức OpenFlow, được tích hợp vào cả Beacon và Flow Visor Đặc biệt, OpenFlowJ nổi bật nhờ vào bộ điều khiển Beacon, mà nó cũng cung cấp một số triển khai bộ điều khiển khác sử dụng mã này.
SWITCH IMPLEMENTATIONS (Thực hiện chuyển đổi)
OpenVswitch
Open vSwitch (OVS) là một công tắc ảo mã nguồn mở, nổi bật trong việc triển khai OpenFlow OVS không chỉ được sử dụng làm logic điều khiển trong các công tắc phần cứng chính hãng mà còn hoạt động như một công tắc ảo trong môi trường siêu giám sát để cung cấp ảo hóa mạng Trước đây, Nicira, nhà phát triển OVS, đã tích hợp OVS vào sản phẩm NVP của mình, và sau khi VMware mua lại Nicira, sản phẩm NVP hiện đang được phân phối rộng rãi.
OVS, một nhà sản xuất trong lĩnh vực mạng, sử dụng OpenFlow để kiểm soát các luồng dữ liệu và OVSDB để cấu hình hệ thống Để lấy mẫu và giám sát gói tin, OVS áp dụng giao thức sFlow Mã nguồn của OVS đã được tối ưu hóa để hoạt động trên nhiều chipset chuyển mạch, do đó nó cũng được tích hợp vào một số thiết bị chuyển mạch phần cứng.
Mục đích chính của OpenvSwitch là cung cấp lớp chuyển mạch cho môi trường ảo hóa phần cứng, đồng thời hỗ trợ nhiều giao thức và tiêu chuẩn được sử dụng trong hệ thống chuyển mạch thông thường.
Bảng 3: Mô tả các triển khai mã nguồn mở
Bảng 4: thông tin chi tiết của các mã nguồn mở
Indigo
Big Switch Networks đã cung cấp cơ sở mã chuyển mạch Indigo theo giấy phép công khai của Eclipse, thể hiện động thái tự nhiên trong việc xây dựng một hệ sinh thái các thiết bị chuyển mạch phần cứng tương thích với sản phẩm bộ điều khiển OpenFlow thương mại, Big Network Controller.
Giống như OVS, Indigo được thiết kế để hoạt động trên cả công tắc vật lý và công tắc siêu giám sát OpenFlow trong môi trường ảo hóa mạng Đặc biệt, mã này có khả năng chuyển đổi công tắc lớp 2 hoặc lớp 3 kế thừa thành công tắc OpenFlow.
Indigo được tích hợp với ASICs của bộ chuyển mạch Ethernet, nó có thể chuyển đổi các luồng theo mô hình OpenFlow ở tốc độ dòng
Chú ý Big Switch hiện đang tiếp thị phiên bản thương mại của Indigo có tên là Switch Light
Một sự khác biệt quan trọng giữa OVS và Indigo là Indigo được thiết kế đặc biệt để hỗ trợ OpenFlow, trong khi OVS có khả năng hỗ trợ các cơ chế điều khiển khác như OVSDB.
OVS cung cấp hỗ trợ rộng rãi hơn cho các tính năng ảo hóa mạng liên kết, đồng thời nhận được nhiều đóng góp phong phú từ cộng đồng nguồn mở so với Indigo Từ góc độ thiết lập tính năng, OVS dường như tích hợp các tính năng của Indigo một cách hiệu quả.
OpenSwitch là một cộng đồng mới được thành lập bởi HP, bao gồm sự đóng góp từ các công ty như Accton, Broadcom, Intel, VMware, Qosmos và Arista Dự án này được phát hành dưới giấy phép Apache 2.0, cho phép người dùng tự do sử dụng và phát triển.
Các tính năng khác biệt của OpenSwitch
- Nó là một nền tảng chuyển mạch lớp 2 và lớp 3 đầy đủ tính năng
Sản phẩm này được thiết kế với tính năng mô-đun, đảm bảo khả năng sẵn có cao và được xây dựng bằng các công cụ hiện đại, mang lại độ tin cậy vượt trội.
- Nó nguyên bản hỗ trợ OVSDB, OpenFlow và sFlow
Pantou thực sự được thiết kế để chuyển đổi các AP hàng hóa thành AP hỗ trợ OpenFlow thông qua việc tích hợp NOX OpenFlow với OpenWRT.
OpenWRT là một dự án mã nguồn mở theo nguyên tắc SDN, cho phép mở rộng khả năng của thiết bị với nhiều lựa chọn phần cứng AP giá rẻ cho người tiêu dùng Chức năng AP không dây cơ bản có sẵn trên phần cứng giá rẻ mang lại lợi ích cho các nhà nghiên cứu muốn thử nghiệm trong lĩnh vực SDN, đặc biệt là trong mạng 802.11.
CONTROLLER IMPLEMENTATIONS (Việc thực hiện kiểm soát)
Bối cảnh lịch sử
Việc triển khai bộ điều khiển SDN nguồn mở được tóm tắt trong các bảng 5 và 6 Bộ điều khiển Beacon dựa trên OpenFlowJ, là một triển khai mã nguồn mở ban đầu của OpenFlow được phát triển bằng Java tại Đại học Stanford.
Beacon là một bộ điều khiển quan trọng trong nghiên cứu và phát triển OpenFlow, được thực hiện trên nền tảng này Nó cũng là cơ sở mã nguồn từ đó bộ điều khiển Floodlight được phân nhánh.
Beacon là một bộ điều khiển OpenFlow đa nền tảng, đã được triển khai thành công trong một trung tâm dữ liệu thử nghiệm vào năm 2013 với 20 thiết bị chuyển mạch vật lý và 100 thiết bị chuyển mạch ảo Nó hoạt động trên nhiều nền tảng khác nhau, bao gồm cả các máy chủ Linux cao cấp Mặc dù mã nguồn cốt lõi của bộ điều khiển được bảo vệ theo các điều khoản giống GPL-like, phần mềm nguồn mở (FOSS) cho phép các nhà phát triển mở rộng bộ điều khiển với các ứng dụng có thể được cấp phép theo các điều khoản thương mại linh hoạt hơn Sự ổn định của Beacon đã giúp nó nổi bật so với các bộ điều khiển khác, thường chỉ được sử dụng cho mục đích nghiên cứu.
Bảng 5: Mô tả các bộ điều khiển
Bảng 6: Bộ điều khiển nguồn mở lịch sử và hiện tại
NOX là bộ điều khiển OpenFlow tiên phong, hoạt động như một nền tảng điều khiển mạng, cung cấp giao diện lập trình cao cấp cho việc quản lý và phát triển các ứng dụng điều khiển mạng.
Beacon là bộ điều khiển OpenFlow nhanh chóng và đa nền tảng, được xây dựng trên nền tảng Java Nó có khả năng hỗ trợ cả hoạt động dựa trên sự kiện lẫn hoạt động theo luồng, mang đến tính linh hoạt và hiệu suất cao trong việc quản lý mạng.
POX là một nền tảng phần mềm mạng được phát triển bằng Python, hoạt động như một bộ điều khiển OpenFlow Nó hỗ trợ tiêu chuẩn OpenFlow 1.0 và cung cấp tính năng hỗ trợ đặc biệt cho các tiện ích mở rộng Open vSwitch/Nicira.
Các mô-đun của Beacon có khả năng khởi động, dừng và cài đặt mà không làm ảnh hưởng đến hoạt động của các thành phần khác Điều này chứng tỏ tác động quan trọng của mã nguồn mở đối với bộ điều khiển OpenFlow, được sử dụng rộng rãi trong ngành công nghiệp hiện nay.
Floodlight và OpenDaylight, cả hai đều lặp lại ý nghĩa chiếu sáng của tên Beacon Trong
Floodlight là một nhánh phát triển từ Beacon trước khi Beacon được cấp phép theo mô hình GPL/FOSS hiện tại Với giấy phép Apache 2.0, Floodlight không bị ràng buộc bởi các điều khoản copyleft của Beacon, cho phép người dùng tự do sử dụng mã nguồn mà không lo ngại về việc bảo vệ tài sản trí tuệ cho các sản phẩm phái sinh Ngoài ra, Floodlight còn được tích hợp với OpenStack, mở rộng khả năng ứng dụng trong các dự án phát triển.
Một số bộ điều khiển OpenFlow thương mại đang được phát triển dựa trên nền tảng Floodlight, trong đó có bộ điều khiển của Big Switch, một công ty nổi bật trong lĩnh vực mạng Chiến lược kinh doanh của Big Switch tập trung vào việc cung cấp các giải pháp mạng linh hoạt và hiệu quả cho khách hàng.
Bộ điều khiển nguồn mở Floodlight của Big Switch cung cấp một nhóm ứng dụng phức tạp, mặc dù phiên bản thương mại không phải là mã nguồn mở Tuy nhiên, nó hứa hẹn duy trì khả năng tương thích giữa hai phiên bản, phản ánh cách tiếp cận cổ điển trong xây dựng doanh nghiệp phần mềm Big Switch đã tham gia dự án OpenDaylight và quyên góp bộ điều khiển Floodlight với hy vọng tăng cường sự phổ biến của nó trong cộng đồng công nghệ.
Floodlight là bộ điều khiển OpenFlow dựa trên Java, được phát triển và hỗ trợ bởi cộng đồng lớn nhất thế giới Nó cung cấp khả năng điều khiển cho các công tắc ảo dựa trên hypervisor như Open vSwitch, đồng thời hỗ trợ hệ sinh thái đang phát triển của các công tắc OpenFlow.
OpenDayLight
Dự án OpenDaylight (ODL) được thành lập vào đầu năm 2013 nhằm cung cấp một khung SDN mã nguồn mở Mục tiêu của ODL là thúc đẩy và tăng cường việc áp dụng các đổi mới trong thiết kế và thực hiện tiêu chuẩn công khai và minh bạch cho mạng do phần mềm SDN xác định.
Dự án hiện tại nhận được sự hỗ trợ từ các công ty lớn như Cisco, Brocade, Ericsson, Citrix, Intel, HP, Dell và Red Hat Khác với Open Networking Foundation (ONF), ODL xem OpenFlow chỉ là một trong nhiều lựa chọn thay thế cho phần mềm kiểm soát thiết bị mạng ODL cung cấp một bộ điều khiển mã nguồn mở, góp phần vào sự phát triển của công nghệ mạng.
Big Switch đã tặng bộ điều khiển Floodlight cho ODL, với hy vọng Floodlight sẽ trở thành phần OpenFlow chính của dự án Tuy nhiên, kỳ vọng này nhanh chóng tan vỡ khi ODL quyết định chọn Bộ điều khiển Mạng eXtensible (XNC) của Cisco làm trung tâm và chỉ đơn thuần tích hợp công nghệ Floodlight vào lõi đó Kết quả là, Big Switch đã giảm bớt sự tham gia của mình vào dự án ODL và rút lui hoàn toàn.
ONOS
Nhiều nhà cung cấp dịch vụ và vận tải lớn đang đầu tư vào ONOS, với sự tham gia của nhiều công ty đã góp phần hình thành ONOS như một đối thủ cạnh tranh với ODL Điều này giải thích tại sao ONOS nhanh chóng trở thành một yếu tố quan trọng trong cuộc tranh luận về bộ điều khiển SDN nguồn mở.
Giống như ODL, ONOS nhận được sự hỗ trợ từ nhiều nhà cung cấp dịch vụ và các tập đoàn lớn như Alcatel-Lucent, AT&T, China Unicom, Ciena, Cisco, Ericsson, Fujitsu, Huawei, Intel, NEC, và NTT Communications Ngoài ra, Quỹ Linux cũng đã ký kết hợp tác chiến lược với ONOS.
Dự án ONOS bao gồm 17 lược đồ, với nền tảng hỗ trợ cả ODL và ONOS Hai bộ điều khiển này có các khu vực trọng tâm khác nhau: ODL tập trung vào các giao thức kế thừa, trong khi ONOS nhấn mạnh vào OpenFlow.
Một cách để so sánh mức độ hoạt động của ODL với ONOS là thông qua số lượng mã và số lượng người đóng góp cho các dự án mã nguồn mở tương ứng BlackDuck Open HUB theo dõi các dự án mã nguồn mở và tính toán các số liệu thống kê, bao gồm số lượng dự án đã được trích dẫn trước đó Tại thời điểm viết bài này, các con số cho cả hai dự án đều đang được ghi nhận.
Theo Bảng 7, 12 tháng trước, ODL dẫn đầu rõ rệt về số lượng người đóng góp và dòng mã, mặc dù ONOS có sự xuất hiện ít hơn ODL.
Bảng 7: Thống kê đóng góp năm 2015 cho OpenDaylight và ONOS
SDN APPLICATIONS
Ứng dụng SDN là phần mềm được thiết kế để thực hiện các tác vụ trong môi trường mạng do phần mềm xác định Những ứng dụng này có thể thay thế và mở rộng dựa trên chức năng được triển khai thông qua phần sụn của thiết bị phần cứng mạng thông thường Hiện nay, nhiều ứng dụng SDN mã nguồn mở đang được sử dụng rộng rãi Mặc dù thuật ngữ "ứng dụng" khá chung chung, nhưng có bốn chủ đề chính thu hút sự chú ý sớm nhất đối với ứng dụng SDN, bao gồm bảo mật, định tuyến, quản lý mạng và ảo hóa chức năng mạng (NFV).
Có ba ví dụ quan trọng liên quan đến định tuyến trong môi trường SDN: TheBIRD, Quagga và Routeflow TheBIRD là một giải pháp định tuyến mã nguồn mở, trong khi Quagga được sử dụng cho các mục đích chung Bài viết này sẽ mô tả cách mà Routeflow và Quagga có thể được kết hợp để triển khai một mạng SDN hoàn chỉnh Ngoài ra, Avior là một ứng dụng quản lý mạng tích hợp với bộ điều khiển Floodlight, hỗ trợ việc quản lý hiệu quả trong môi trường SDN.
OpenFlow có khả năng lớn trong việc cung cấp hệ thống bảo mật mạng thế hệ mới Hai ví dụ tiêu biểu là FortNOX và Fresco, ứng dụng NFV, cho thấy cách mà lớp ứng dụng ảo hóa chức năng dịch vụ mạng được triển khai bởi một thiết bị độc lập trong các mạng kế thừa.
Ví dụ về các thiết bị như bộ cân bằng tải lưu lượng và hệ thống phát hiện xâm nhập cho thấy tầm quan trọng của việc quản lý lưu lượng mạng FlowScale là một ứng dụng NFV triển khai bộ cân bằng tải lưu lượng như một ứng dụng bộ điều khiển OpenFlow Một số ứng dụng nguồn mở được đề cập trong phần này, trong đó các vấn đề về miền cụ thể được giải quyết thông qua các ứng dụng OpenFlow, giúp nâng cao hiệu suất và bảo mật mạng.
Bộ điều khiển OpenFlow hỗ trợ 18 ứng dụng giao tiếp thông qua giao diện hướng bắc của nó Tuy nhiên, cần lưu ý rằng không phải tất cả các ứng dụng trong mạng định nghĩa phần mềm (SDN) đều sử dụng giao thức OpenFlow.
Các dự án cộng đồng mã nguồn mở SDN
Gần đây, sự chú ý đã tập trung vào các dự án từ cộng đồng SDN Nguồn mở (OSSDN) nhằm tài trợ và phát triển các giải pháp SDN mở, với mục tiêu tăng cường việc áp dụng SDN Các dự án này được liệt kê trong bốn mục cuối cùng của bảng 8, bao gồm Giao thức chuyển tiếp độc lập (PIF), dự án Boulder (giao diện hướng bắc dựa trên ý định - NBI), dự án Atrium (phân phối SDN mã nguồn mở) và dự án Aspen (đặc tả giao diện phương tiện truyền thông thời gian thực) Những dự án này hướng đến việc thúc đẩy sự phát triển của các giải pháp SDN.
Nguồn mở SDN được dẫn dắt bởi ONF, Tail-f/Cisco, mạng chuyển mạch lớn, Infoblox và nhiều tổ chức khác Sáng kiến này hứa hẹn sẽ thúc đẩy việc áp dụng SDN trên quy mô rộng hơn trong những năm tới.
Một số dự án mã nguồn mở SDN:
RouteFlow là một dự án mã nguồn mở tích hợp định tuyến IP với bộ điều khiển OpenFlow dựa trên Dự án Quagflow, cung cấp dịch vụ định tuyến IP ảo hóa qua phần cứng hỗ trợ OpenFlow Kịch bản sử dụng RouteFlow điển hình bao gồm ứng dụng bộ điều khiển OpenFlow (RFProxy), máy chủ RouteFlow độc lập (RFServer), và môi trường mạng ảo tái tạo kết nối của cơ sở hạ tầng vật lý, cho phép chạy các công cụ định tuyến IP như Quagga.
2 Quagga: Cung cấp các giao thức định tuyến IP Quagga là một bộ phần mềm định tuyến, cung cấp triển khai OSPFv2, OSPFv3, RIP v1 và v2, RIPng và BGP-
4 cho các nền tảng Unix, đặc biệt là FreeBSD, Linux, Solaris và NetBSD
Avior là một GUI quản lý mạng được thiết kế đặc biệt cho mạng OpenFlow, nổi bật với tính linh hoạt và khả năng sử dụng Nó cung cấp nhiều thống kê mạng động và các công cụ quản lý hữu ích, như ứng dụng quản lý cho Floodlight.
OSCARS (Hệ thống Đặt trước và Mạch Bảo mật Động) là một sản phẩm mã nguồn mở miễn phí, cung cấp một hệ thống phần mềm tiên tiến cho việc đặt trước thời gian và tài nguyên trên các mạng khoa học tốc độ cao Hệ thống này được sử dụng bởi các nhóm nghiên cứu lớn để chia sẻ khối lượng dữ liệu lớn một cách nhanh chóng và hiệu quả So với các mạng "hàng hóa", mạng khoa học yêu cầu khả năng vận chuyển dữ liệu lớn một cách nhanh chóng và hoàn hảo Việc cấu hình mạng theo cách thủ công để hỗ trợ các hợp tác khoa học quy mô lớn có thể mất vài tuần hoặc thậm chí vài tháng OSCARS giúp đơn giản hóa quy trình này, tiết kiệm thời gian và công sức cho các nhà khoa học trên toàn cầu.
19 có thể định cấu hình và đặt trước một bộ kết nối mạng tùy chỉnh, đáng tin cậy chỉ trong vài phút chứ không phải vài tuần
BIRD hỗ trợ cả IPv4 và IPv6 thông qua việc chạy các daemon riêng biệt Nó thiết lập nhiều bảng định tuyến và sử dụng các giao thức định tuyến như BGP, RIP và OSPF, cùng với các tuyến đường được xác định tĩnh.
FlowScale là dịch vụ cân bằng tải lưu lượng truy cập sử dụng OpenFlow, giúp phân chia và phân phối lưu lượng qua nhiều cổng chuyển mạch vật lý Dự án này tái tạo chức năng của các thiết bị cân bằng tải nhưng sử dụng công tắc Top of Rack (ToR) để tối ưu hóa việc phân phối lưu lượng Với phần mềm điều khiển linh hoạt và phần cứng chuyển tiếp hiệu quả, FlowScale mang lại chi phí thấp và khả năng triển khai thông lượng cao.
Frenetic là ngôn ngữ lập trình dành cho bộ điều khiển OpenFlow, cho phép trừu tượng hóa các chi tiết cấp thấp liên quan đến việc giám sát, chỉ định và cập nhật các chính sách chuyển tiếp gói.
FortNOX là khung bảo mật tiên tiến kết hợp với bộ điều khiển NOX, hiện đã được tích hợp trong SE-Floodlight Nó mở rộng bộ điều khiển OpenFlow thành một dịch vụ hòa giải an ninh, cho phép điều chỉnh và thích ứng với các quy tắc mới nhằm chống lại các chính sách đã được thiết lập.
FRESCO là một ứng dụng bảo mật tích hợp với FortNOX, cung cấp ngôn ngữ kịch bản cụ thể nhằm nâng cao bảo mật cho các mô-đun giảm thiểu và phát hiện bảo mật một cách nhanh chóng.
LẮP ĐẶT VÀ ĐÁNH GIÁ MẠNG
Trong trung tâm dữ liệu, có nhiều tài nguyên máy tính, lưu trữ và mạng có sẵn, và khi áp dụng ảo hóa, số lượng tài nguyên có thể gán sẽ gia tăng đáng kể Công nghệ điều phối cho phép lập trình các hành vi tự động trong mạng để quản lý các tài nguyên này, hỗ trợ cho các ứng dụng và dịch vụ Điều phối mạng liên quan trực tiếp đến ảo hóa mạng, với việc ảo hóa các phần mạng của trung tâm dữ liệu phức tạp yêu cầu sự phối hợp chính xác của nhiều bộ phận độc lập Khác với mạng kế thừa, nơi các bộ phận hoạt động một cách phân tán, ảo hóa mạng đòi hỏi một thực thể tập trung điều phối các hoạt động ở mức độ chi tiết, tương tự như một nhạc trưởng trong dàn nhạc Các giải pháp điều phối SDN và ảo hóa mạng mã nguồn mở được tóm tắt trong các bảng 9 và 10.
FlowVisor cho phép tạo ra các phần tài nguyên mạng và uỷ quyền kiểm soát cho từng phần, giúp nhiều bộ điều khiển OpenFlow có thể chia sẻ một tập hợp các công tắc vật lý.
Maestro Cung cấp giao diện cho các ứng dụng điều khiển mạng để truy cập và sửa đổi mạng
OESS Cung cấp cấp phép VLAN do người dùng kiểm soát bằng OpenFlow công tắc
NetL2API cung cấp một API chung cho việc điều khiển các công tắc lớp 2 thông qua giao diện dòng lệnh (CLI) của nhà cung cấp, không dựa vào OpenFlow Nó có khả năng hỗ trợ ảo hóa mạng mà không cần sử dụng OpenFlow.
Neutron Thành phần mạng của hệ điều hành OpenStack hỗ trợ nhiều plugin mạng, bao gồm cả OpenFlow
Bảng 9 Open-Source Orchestration Solutions: Description
Bảng 10 Open-Source Orchestration Solutions: Details
SIMULATION, TESTING, AND TOOLS
Trong phần này, chúng tôi sẽ trình bày về một số triển khai mã nguồn mở quan trọng liên quan đến mô phỏng mạng, thử nghiệm và các công cụ liên quan đến SDN Các giải pháp SDN nguồn mở trong lĩnh vực này được tóm tắt trong bảng 11 và 12 Một số dự án cung cấp phần mềm hữu ích trong các môi trường không tìm kiếm, nổi bật là Cbench, OFLOPS và OFTEST Mininet đã được các nhà nghiên cứu SDN sử dụng rộng rãi để mô phỏng các mạng chuyển mạch và máy chủ lớn, cho phép bộ điều khiển, như OpenFlow, tạo, sửa đổi và loại bỏ một số lượng lớn các luồng.
Cbench là một công cụ chuẩn hóa bộ điều khiển OpenFlow, cho phép mô phỏng các biến chuyển trong quá trình gửi thông báo PACKET_IN từ các công tắc đến bộ điều khiển đang được kiểm tra Qua đó, người dùng có thể quan sát phản hồi từ bộ điều khiển, giúp nâng cao hiệu quả trong việc quản lý mạng.
OFLOPS là công cụ đánh giá công tắc OpenFlow, cho phép một bộ điều khiển độc lập gửi và nhận tin nhắn đến và từ công tắc OpenFlow Công cụ này mô tả các đặc điểm hiệu suất của công tắc và quan sát phản hồi từ bộ điều khiển, giúp cải thiện hiệu quả hoạt động của hệ thống mạng.
Mininet là công cụ mô phỏng mạng chuyển mạch và máy chủ lớn, không chỉ dành riêng cho SDN nhưng được các nhà nghiên cứu SDN sử dụng phổ biến Nó cho phép mô phỏng công tắc OpenFlow và tạo ra lưu lượng truy cập cho bộ điều khiển OpenFlow, hỗ trợ nghiên cứu và phát triển trong lĩnh vực mạng.
OFTest Kiểm tra chuyển đổi sự tuân thủ với các phiên bản giao thức
Bảng 11: Open-Source Test and Simulation: Description
Bảng 12: Open-Source Test and Simulation: Details
PHẦN MỀM MÃ NGUỒN MỞ CLOUD
OpenStack
OpenStack là một nền tảng mã nguồn mở phổ biến cho điện toán đám mây, được phát hành theo giấy phép Apache Nó cung cấp khả năng ảo hóa cho ba thành phần chính của trung tâm dữ liệu: máy tính, lưu trữ và mạng Thành phần tính toán chính của OpenStack được gọi là Nova, giúp quản lý nhóm máy ảo thông qua các trình giám sát như KVM, XenServer và VMware Ngoài ra, OpenStack còn có các chức năng lưu trữ với Swift và Cinder, trong đó Swift cung cấp dung lượng lưu trữ dự phòng cho phép sao chép và khôi phục dữ liệu theo nhu cầu.
Cinder cung cấp các phiên bản máy tính OpenStack với quyền truy cập vào tập tin và khả năng quản lý các thiết bị lưu trữ, giúp giảm thiểu phụ thuộc vào các ổ lưu trữ hàng hóa Quyền truy cập này tương thích với hầu hết các nền tảng lưu trữ phổ biến trong điện toán đám mây hiện nay, mang lại sự linh hoạt và hiệu quả cho người dùng.
Hình 3: OpenStack components and roles
Horizon cung cấp bảng điều khiển để truy cập, quản lý và cung cấp tài nguyên đám mây trong môi trường OpenStack, với hai dịch vụ chính là Keystone và Glance Keystone đảm nhận vai trò xác thực người dùng và có thể tích hợp với các dịch vụ nhận dạng hiện có như LDAP Glance cho phép sao chép và lưu trữ hình ảnh máy chủ, hỗ trợ việc mở rộng các dịch vụ và cung cấp khả năng sao lưu cơ bản cho các hình ảnh này Neutron, thành phần ảo hóa mạng của OpenStack, là yếu tố quan trọng trong cuộc thảo luận về SDN, trước đây được biết đến với tên gọi Quantum.
Trong kiến trúc OpenStack, Neutron đóng vai trò quan trọng thông qua các Plugin, cung cấp giao diện giữa mạng và sự cân bằng của các thành phần điện toán đám mây OpenStack không chỉ giới hạn trong việc sử dụng Open SDN mà còn cho phép nhiều tùy chọn mạng khác nhau Neutron có khả năng giao tiếp với API hướng bắc của bộ điều khiển OpenFlow, từ đó cung cấp lớp trừu tượng mạng cho các mạng hỗ trợ OpenFlow Tương tự, OpenFlow có thể tương tác với nhiều ứng dụng điều khiển mạng khác nhau thông qua API hướng bắc, cho thấy tính linh hoạt của Neutron trong hệ sinh thái OpenStack.
OpenStack và OpenFlow có thể kết hợp để cung cấp giải pháp mạng toàn diện cho điện toán đám mây mà không bị ràng buộc độc quyền với giải pháp khác OpenStack sử dụng các Neutron Plugin để điều khiển thiết bị mạng kế thừa, trong khi OpenFlow điều khiển các công tắc vật lý và ảo như OVS Việc triển khai giao diện OVS bao gồm plugin hỗ trợ các API hướng bắc Neutron tiêu chuẩn và một tác nhân nằm trên các nút tính toán Nova trong kiến trúc OpenStack OpenStack cung cấp một bản tóm tắt của nhóm mạng ảo, liên quan chặt chẽ đến sự trừu tượng hóa mạng ảo trong giải pháp SDN qua Lớp phủ Nhờ đó, người dùng có thể tạo một mạng và sử dụng cho một đối tượng thuê cụ thể, phù hợp với khái niệm giải pháp SDN qua Lớp phủ OpenStack cũng hỗ trợ nhiều plugin cho các giải pháp lớp phủ hiện có.
CloudStack
CloudStack là sự thay thế của Apache Foundation cho OpenStack, hỗ trợ plugin gốc cho công tắc OVS, cung cấp hỗ trợ trực tiếp cho Open SDN Mặc dù cả hai triển khai đám mây nguồn mở đều tồn tại trong nhiều năm, nhưng OpenStack hiện đang nhận được sự hỗ trợ đáng kể hơn so với CloudStack.
CloudStack là giải pháp được nhiều nhà cung cấp dịch vụ sử dụng để cung cấp dịch vụ đám mây công cộng và cho các công ty cung cấp dịch vụ đám mây tại chỗ hoặc trong giải pháp đám mây lai Đây là một giải pháp chìa khóa trao tay, bao gồm toàn bộ các tính năng cần thiết cho đám mây IaaS, như điều phối máy tính, Network-as-a-Service, quản lý tài khoản và người dùng, cùng với API gốc đầy đủ và mở, giúp đơn giản hóa việc triển khai và quản lý hạ tầng đám mây.
CloudStack cung cấp giao diện người dùng (UI) hạng nhất với sự hỗ trợ cho các siêu giám sát phổ biến như VMware, KVM, Citrix XenServer, Xen Cloud Platform (XCP), Oracle VM và Microsoft Hyper-V Người dùng có thể dễ dàng quản lý đám mây của mình thông qua giao diện web thân thiện, các công cụ dòng lệnh và API RESTful đầy đủ tính năng.
Ngoài ra, CloudStack cung cấp một API tương thích với AWS EC2 và S3 cho các tổ chức muốn triển khai các đám mây lai.