開源、開放網絡和 SDN(軟件定義網絡)都是與網絡開放相關的常見概念。這三個術語經常交織在一起,使很多人感到困惑。本文將全面介紹開源,并對開源、開放網絡和SDN進行比較。
什么是開源?
開源是一個術語,表示某些東西可以公開訪問。它最常指的是其源代碼可以被任何人自由使用、修改和共享的軟件或程序。該術語起源于軟件開發,指的是創建計算機程序的特定方法。隨著互聯網的發展,對大量源代碼進行返工的需求越來越大。當源代碼向公眾開放時,人們可以在獲得該代碼的情況下自由查看、學習、共享、修改或可能改進軟件。便于創建多樣化的通信路徑和交互式技術社區。它還可以幫助構建多個網絡設備,例如以太網交換機。因此,開源越來越受到關注。許多專注于開發特定軟件的人,例如開發人員、工程師、服務提供商、供應商等,都加入了開源項目。
通常,開源軟件(程序或應用程序)符合 Apache 或通用公共許可證 (GNU) 等許可證。該許可定義了使用或更改開源軟件的條款和條件,例如,代碼中的版權聲明、僅在同一許可下重新分發許可軟件的要求,或保留作者姓名的要求。用戶在使用開源軟件時必須同意所有協議。
什么是軟件定義網絡?
軟件定義網絡 (SDN) 是一種架構,可將網絡中的控制平面與數據包轉發(數據)平面分離,以創建軟件可編程基礎設施。它是一種網絡虛擬化和容器化方法,網絡配置和管理是從中央儀表板執行的,而不是通過網絡連接每個特定的交換機或服務器。它允許企業和服務提供商優化網絡資源并快速響應不斷變化的業務需求。
什么是開放網絡?
開放網絡基于開放標準(例如OpenFlow協議)和裸機硬件,可以靈活選擇網絡操作系統(OS)。它旨在打破軟件和硬件的專有性質,以提供敏捷、可擴展和可編程的網絡,以適應不同的需求。開放網絡為企業提供了高度的靈活性,例如可以自由選擇設備、軟件和網絡操作系統,從而使企業能夠降低成本、提高能力并推動更好的投資回報率。
SDN 與開源
SDN 和開源在幫助實現開放網絡方面發揮著重要作用,但它們絕對不是一回事。典型的 SDN 包含三個部分 - 應用程序、控制器和網絡設備。SDN 控制器通過北向應用程序編程接口 (API) 與應用程序通信。當它使用 OpenFlow 等南向接口與交換機或路由器通信時。由于 OpenFlow 協議是網絡普遍開源組件的一個示例,因此有人認為 SDN 與開源軟件相同。實際上,大多數 SDN 架構仍然在第三方或商用硬件上使用專有或開源軟件。
此外,如前所述,SDN 允許開放網絡。這讓一些人認為 SDN 也是開源的。實際上,SDN可以在不開放組網的情況下,在更有限的環境下做,更何況開放組網不一定是開源的。總而言之,SDN本身并不開源。它因其功能分離、網絡虛擬化和通過可編程性實現自動化的能力而受到重視。
開放網絡與開源
顧名思義,開放網絡和開源都取決于開放的概念。但是開放網絡和開源之間有明顯的區別。開放網絡及其網絡操作系統不需要開源。
開放網絡允許用戶自由選擇操作系統,例如 Cumulus Networks 的 Cumulus Linux、Big Switch Networks 的 Switch Light,以及安裝在商品硬件或供應商硬件上的 Pica8 的 PicOS。雖然這些網絡操作系統通?;?Linux,但它們不需要開源??偠灾?,開源是可供公眾使用和修改的任何軟件或程序,而開放網絡是基于旨在為網絡設備創造更多靈活性、互操作性和自動化的軟件。