Abstract
目前有許多的應用程式都以Java技術來進行開發,尤其是在網路方面的應用程式。在Java的應用中,使用了執行緒的機制來達到多程式系統(Multi-Programs-System,MPS)的功能,這一類的系統都需要資源管理的機制。 由於執行環境所提供的可用資源是有限的,為了維持資源分配的合理性與資源存取的安全性,甚至對使用者進行收費的動作,資源管理的機制是不可或缺的。資源管理的問題可再細分為三個子問題,分別是(i)資源的統計、(ii)資源的回收、(iii)資源的配置,一個資源管理的機制,大致上必須滿足以上的三個需求。 資源可以依據與硬體相關的程度區分為兩類,分別是(i)physical level resource、(ii)logical level resource。然而標準的JVM並沒有能力對這些physical level的資源進行控管,使得這些以Java為基礎所開發的應用程式,有可能在資源的使用上面臨種種問題,例如資源分配的不合理、遭遇denial of service的攻擊、資源受到未經授權程式存取等等。 本篇論文中,主要針對了單一主機上的網路資源進行管理。所管理的網路資源設定在解決以下幾種網路資源的配置與管理:(i)對socket connection做連線的限制、(ii)對socket ports配置數量的限制、(iii)在已建立好的socket connection上而做的傳輸速率控制(iv)在已建立好的socket connection上而做的傳輸總量限制。並針對多程式系統提出了Account-Session-Thread Management Scheme三層式的資源管理架構。並且實作出具備portable與plugable兩項特性的網路資源管理模組。