耿少輝
摘 要:作為一種早期的源代碼開放操作系統(tǒng),Linux本身就具有開放源代碼的特性和一定的優(yōu)勢,在很多大型企業(yè)和政府機構中都得到了廣泛的應用,其市場份額也在不斷擴大。本文對基于Linux的網絡計算機服務器的設計與實現進行了簡要的分析,通過分析網絡計算機以及在Linux上實現網絡計算機服務器的主要技術需求,梳理了當前NC服務器的主流實現技術,對以Linux為基礎的網絡計算機服務器NCS體系結構進行了分析,供相關人員參考。
關鍵詞:設計;網絡計算機服務器;Linux
中圖分類號: TP393 文獻標識碼: A 文章編號: 1673-1069(2016)16-164-2
0 引言
在個人電腦和網絡發(fā)展的過程中,信息系統(tǒng)的主要終端形式就是PC,因此需要對硬件系統(tǒng)和軟件系統(tǒng)進行更新,這樣不僅會增加總體擁有的成本,也會帶來比較繁瑣的維護工作。與此同時以服務為中心的計算模式對計算機系統(tǒng)的資源共享性提出了更高的要求,我國的網絡帶寬提高幅度也非常迅速,網絡計算機加高性能用服務器成為了網絡計算機服務器體系結構的主要發(fā)展方向。
1 NC(網絡計算機)及其技術要求
1.1 NC(網絡計算機)
作為一種瘦客戶端,網絡計算機能夠運用網絡來提供大多數的資源,因此網絡服務器是獲取網絡計算用服務的主要來源。根據網絡計算的相應性能和基本概念,當前的NC主要有以下3個方面的內容:①NetPC,其基礎是實現服務器的增加,通過集中式管理的方式對計算機進行簡化。②類NC,就是以X終端和無盤工作站的改進為基礎的windows終端。③真NC,真NC的主要技術是Java,符合NC-1規(guī)范標準,對資源具有較少的要求。
對比個人電腦可以發(fā)現,網絡計算機具有較強的管理性,而且價格相對較低,其系統(tǒng)主要包括網絡服務器上的應用服務、網絡計算機服務器、網絡計算機3個層面[1]。
1.2 在Linux上實現網絡計算機服務器的技術要求
作為世界上使用范圍最廣的操作系統(tǒng),Linux系統(tǒng)在各種嵌入式設備、桌面PC、網絡服務器中都得到了廣泛的應用。我國的很多高校、企業(yè)和電子政務中也開始應用Linux,這就需要在Linux上實現網絡計算機服務器。
X窗口平臺是Linux系統(tǒng)在桌面上的主要應用形式,其優(yōu)點在于能夠在遠端設備上顯示應用程序的用戶界面,但是其也存在一些問題,與NC架構不適應:
①NC的物理屬性不同,導致了網絡服務器和NC之間的網絡帶寬具有一定的可變性。
②NC具有多個可供選擇的安全級別,局域網的安全級別要求較低,只需對用戶密碼信息進行加密傳輸,但是廣域網具有較高的安全級別要求,輸出和輸入的信息都必須進行加密。
③作為一種多用戶操作系統(tǒng),Linux要求用戶要在Linux服務器上使用各自的身份進行登錄,每次要對服務器進行登錄都要用到ASP作為一次用戶會話,NCS會對每一次會話的狀態(tài)進行保存。
④用戶界面的輸出信息會被傳輸至NC,然后ASP也會接收NC的鼠標和鍵盤發(fā)送的信息,X客戶程序是Linux上的主要ASP形式,必須獲得X服務器的支持[2]。
2 NC服務器的主流實現技術
2.1 VNC
無狀態(tài)極瘦客戶端并應用于VNC架構中,使用RFB協(xié)議可以向客戶端發(fā)送服務器的幀緩沖,并對該客戶端發(fā)送的輸入信息進行接收,然后轉發(fā)給別的應用服務。VNC服務器在Linux上的實現是由X服務器完成的,通過X協(xié)議,X客戶程序可以和服務器進行交互。同時在對顯示請求進行處理時,也可以通過VNC服務器的RFB協(xié)議向瘦客戶端傳送X客戶程序的顯示信息。VNC系統(tǒng)的被動式適應能力較強,以客戶端的需求來驅動桌面的更新,其對網絡環(huán)境和客戶端物理屬性均無主動適應能力[3]。
2.2 Tarantella
Tarantella服務器能夠向瘦客戶端同時提供不同平臺類型的服務,因此在企業(yè)的集中管理中應用的比較廣泛。X、SSH、Telnet、ICA、RDP等協(xié)議都可以使用Tarantella服務器進行轉換,并向瘦客戶端傳送。Tarantella能夠對數據傳輸的線路狀態(tài)進行監(jiān)控,并對網絡相應進行優(yōu)化。
2.3 Terminal Server
通過對Windows NT功能進行擴充和修改,產生了Terminal Server。其能夠將標準的windows,應用服務提供給,windows終端,通過修改windows的虛擬內存管理構建,能夠使用戶對系統(tǒng)資源進行共享。Terminal Server的安全策略共有3種,而且其應用服務器也具有較強的可擴展性,能夠與負載均衡策略和用戶會話目錄相結合,形成集群系統(tǒng)。
3 以Linux為基礎的網絡計算機服務器NCS體系結構
為了使網絡計算機服務器,NCS得到實現需要兩種進程。網絡計算機NC的請求主要由主進程,行監(jiān)聽,而本次網絡計算機NC鏈接的傳遞則由另一進程來實現,本次會話服務的進行也由該進程負責。以Linux為基礎的網絡計算機服務器,NCS體系包括以下幾個方面。
3.1 用戶登錄
NCSD會守在固定端口,通過NC用戶可以發(fā)起請求,從而使其生成NCSD進程,然后該端口會由NCSD父進程進行監(jiān)聽,通過NC,SM會收到NCSD子進程發(fā)出的請求,主要是請求獲得空閑會話服務進程iss。在完成登錄之后,會話切換進程就會啟動,從而對與之相關的會話服務進行查找,并將其提供給用戶,以供用戶進行選擇。若用戶原有斷連會話服務不存在于服務器中,那么xinit就會對桌面進行初始化,并將其向SM申請的空閑會話服務進程iss作為用戶的會話服務。SM能夠管理SS的狀態(tài)信息,其中主要包括會話斷開時間、會話建立時間、會話狀態(tài)、會話色彩深度、會話桌面高度、會話桌面寬度、顯示標識符、會話用戶名等??梢詫挿諣顟B(tài)分為3種,分別為斷連狀態(tài)、忙狀態(tài)和空閑狀態(tài)??梢詫⑾到y(tǒng)的安全級別分為兩種模式:非安全模式和安全模式,這主要是為了使用戶能夠自由的選擇安全模式,同時也對傳輸信息的安全進行有效的保障。在局域網中應用NC,可以使用非安全模式,也就是圖像、鼠標、鍵盤等輸入輸出的信息在NCS和NC之間傳輸不會經過加密。如果要選擇安全模式,那么要由SSH對NCS和NC之間傳輸的信息進行加密,對傳輸信息的安全進行保障[4]。
3.2 用戶的斷連
在對網絡計算機NC進行關閉之后,用戶就會退出,但用戶的會話服務并不會被注銷。即時會話服務可以獲取鏈接斷開事件,然后再關閉當前的鏈接,向SM會話管理發(fā)出相應的請求。此時的網絡計算機NC就會呈現出斷連的狀態(tài)。在輪詢模式下,會話服務可以等待下一次的用戶連接請求。
3.3 用戶注銷
在用戶對會話進行主動注銷時,用戶主要是對注銷進程進行啟動。注銷進程以顯示標識為依據,發(fā)出相應的請求。SM收到注銷進程發(fā)出的請求之后,就會將其傳送的注銷信息發(fā)送到會話服務上。以輪詢模式為基礎,在消息列隊中找到這個會話服務,并對該事件進行刪除。與此同時,還要做好相應的繪畫后續(xù)結尾工作,完成整個工作之后,本次會話記錄刪除的請求就會被發(fā)送到SM上,這樣一來用戶就能夠退出和注銷。
4 結語
Linux是一種源代碼開放操作系統(tǒng),出現的時間較早,對未來的軟件利用和開發(fā)具有一定的引導作用,在未來的發(fā)展中,其應用范圍會越來越廣。通過分析NC(網絡計算機)及其技術要求,以及3種當前有比較廣泛的NC服務器的主流實現技術,本文探討了以Linux為基礎的網絡計算機服務器NCS體系結構的設計和實現。在未來的研究中還要對以Linux為基礎的網絡計算機應用的傳輸效率、相關環(huán)境特征進行進一步的研究,使網絡計算機的應用可行性得到提高,繼續(xù)推動基于Linux的網絡計算機服務器的發(fā)展。
參 考 文 獻
[1] 白靜.嵌入式LINUX在信息家電軟件開發(fā)中的與應用與前景[J].硅谷,2011(20).
[2] 殷曉輝.基于Linux操作系統(tǒng)的網絡編程方法研究[J].科技傳播,2011(13).
[3] 熊曉強.淺析Linux操作系統(tǒng)的發(fā)展[J].企業(yè)導報,2011(09).
[4] 蘇金玲,韓伯凱.淺談網絡計算機的概況及其應用[J].中小企業(yè)管理與科技(上旬刊),2011(11).