設計的哲學

2021-04-23 08:37:38 字數 1382 閱讀 9022

主要內容

一、基礎目標:設計乙個統一的網路系統,可以保證更高的整合度,提供更好的效能。多路傳輸使用分組交換實現,網路通過閘道器進行互聯。

二、二級目標:

1、即使網路和閘道器失效,網路通訊必須能夠繼續。 2、

網際網路必須支援多種通訊服務 3、

網際網路絡結構必須能夠適應多種網路硬體 4、

網際網路結構必須允許資源的分布式管理 5、

網際網路絡的花費必須是有效的 6、

網際網路結構必須能夠方便地進行主機連線 7、

網際網路結構使用的資源必須是可以統計的

上述目標是按照重要性排序的,當要求變化時這些目標的重要性也會有所變化。

三、面對網路失效時的應對

如果兩個實體在通過網路進行通訊時,由於某些原因導致網路暫時被干擾,被重新設定並重新開始服務,那麼之前通訊的實體雙方仍能夠繼續通訊,而不是重新建立連線開始新的對話。就是說主機之間應該始終保持連通,短暫的網路失效應該不能影響到網路的結構。

四、服務的型別

網際網路結構的第二個目標是在傳輸級別提供多種型別的服務。不同型別的服務由於對速度、時延和可靠性的要求不同而有所區別。傳統的服務型別是雙向可靠的資料傳輸,有時也叫做「虛電路」服務,適合遠端登入和檔案傳輸,是網際網路結構提供的第乙個使用

tcp協議的服務。由於遠端登入需要低時延低頻寬的要求,檔案傳輸卻很少關心時延而對頻寬卻有較高的要求,

tcp在設計時同時支援兩種型別的服務。最初的設計思想是通用和支援各種型別的服務要求。然而由於服務需求的多樣性使得將需求集中於乙個協議過於複雜。

五、網路的多樣性

網際網路能夠提供廣泛的包括民用和商用的網路技術是它獲得巨大成功的重要原因。網際網路應用非常廣,是因為它對網路本身能提供的功能只做了最小的要求,即網路是能夠傳輸報文的。

六、其他目標

分布式網路管理、效率問題、新增使用者的消耗以及可統計性

七、結構和實現

對於網際網路提供的特殊服務需要關注主機和閘道器的具體實現。在網路結構設計中考慮形式化的效能約束比較困難,因為層次設計的目標之一就是不需要考慮效能約束的,而且缺乏有效的描述工具。

八、報文和

tcp

使用報文作為底層網路傳輸的實體。

tcp選擇基於流量的視窗控制。

九、總結

報文是整個網際網路結構成功的關鍵,閘道器將使用的報文看做單獨的單元進行處理。由於報文在資源統計和管理等方面的缺陷,有人建議尋求新的構造單元替代報文。這種新的構造單元應該可以識別源到目的的分組順序,而不管這種流是什麼服務。

Unix設計的哲學

1 小既是美 相對於同類的龐然大物,小巧的事物有著無可比擬的巨大優勢。2 每個程式之作好一件事情 通過集中精力應對單一任務,程式可以減少很多冗餘的 從而避免過高的資源開銷 不必要的複雜性和缺乏靈活性。3 盡快建立原型 短時間內建立設計原型,有助於提高效率。4 舍高效率而取可移植性 unix作為第乙個...

譯 Godot設計哲學

每款遊戲引擎都有不同定位 滿足不同的需求。這不僅因為它們所提供的功能不同,更在於每款引擎獨特的設計。這些引擎背後各自的設計哲學,會給遊戲帶來不同的開發流程和開發方式。godot信奉物件導向設計,並以之為核心,構建出了靈活的場景系統和節點層級機制。它嘗試為你的遊戲專案提供一種直觀的結構組織方式,這種方...

React Router 動態路由的設計哲學

缺點 先宣告,後使用,而且必須在應用執行之前,無法在應用執行期間改變。優點 路由可以在你的應用執行期間使用,作為元件的一部分,那這也就意味著路由可以在執行期間動態的自由組合 關於動態路由是如何工作的 響應式路由 考慮一種動態構建的介面需要在不同的螢幕尺寸下執行不同的互動,比如乙個列表項的元件,當它在...