共享資源
共享資源
在計算機領域,共享資源(shared resource)或網路共享(network share)是指使同一個計算機網路上的其他計算機可使用的某台計算機的計算機資源的行為。換而言之,是使計算機上的一種設備或某些信息可通過另一台計算機以區域網或內部網進行遠程訪問,且過程透明,就像資源位於本地計算機一般。網路共享可能通過網路上的進程間通信實現。
共享文件和印表機需要客戶端的操作系統支持訪問伺服器上的資源、伺服器上的操作系統支持客戶端訪問其資源,以及一個應用層文件共享協議與傳輸層協議來支持共享訪問。面向個人電腦的現代操作系統包含支持文件共享的集群文件系統,而手持計算設備有時需要額外軟體來支持訪問共享文件。
最常見的此類文件系統和協議為:
主要操作系統 | 應用層協議 | 傳輸層協議 |
Mac OS | 伺服器消息塊(SMB)、蘋果歸檔協議 | TCP、UDP或AppleTalk |
類Unix系統 | 網路文件系統(NFS)、SMB | TCP或UDP |
MS-DOS、Windows | SMB | TCP、NBT(包含UDP協議)NBF或其他NetBIOS傳輸 |
Novell NetWare(伺服器) MS-DOS、Windows(客戶端) | NCP和SAP | SPX(通過IPX),或TCP |
在Microsoft Windows上,網路共享由Windows網路組件“Microsoft 網路的文件和印表機共享”提供,它採用微軟的伺服器消息塊(SMB)協議。其他操作系統也可能實現該協議,例如Samba就是這樣一個SMB伺服器,可運行在類Unix操作系統以及其他某些非MS-DOS/非Windows操作系統(如OpenVMS)。Samba可採用SMB創建其他運行Microsoft Windows的計算機可訪問的網路共享。另一種方法是集群文件系統,每台計算機都可以訪問共享磁碟驅動器上的“原生”文件系統。共享資源訪問也可通過WebDAV實現。
客戶端計算機可以通過一些命名約定訪問共享,例如DOS和Microsoft Windows上採用通用命名約定(UNC)。這表示按下列方式可以解析網路共享:
\\ServerComputerName\ShareName
其中ServerComputerName是伺服器計算機的WINS名稱、DNS或IP地址,而ShareName可能是文件或文件夾的名稱或其路徑。共享文件夾可被賦予與伺服器端本地文件夾不同的共享名稱,例如\\server\c$通常表示Windows計算機上的驅動器“C:”。
客戶端計算機通常會“映射”共享驅動器或文件夾,使其在本地計算機被分配一個驅動器號。
共享文件如果配置與管理不當,就可能成為安全隱患及弱點。許多電腦蠕蟲會通過網路共享傳播。網路共享可能導致消耗流量計費用戶的流量配額。為保證安全,配置區域網或企業內部網的防火牆時一般會禁止外部計算機訪問網路。如有需要,本地網路外的認證用戶可能通過虛擬專用網(VPN)方式安全訪問共享資源。
在家庭和小型辦公室網路中,通常採用分散式計算方式,其中每個用戶都可以將自己的本地文件夾和印表機提供給別人。這種方式有時被稱為工作組或點對點網路拓撲,因為一台計算機可能同時作為客戶端與伺服器。
在大型企業網路中,通常採用一個中心化的文件伺服器或列印伺服器。
在非常大的網路中,可能會使用存儲區域網路(SAN)。
在本地網路外的伺服器上進行在線存儲也是目前流行的選擇,尤其適用於家庭和小型辦公網路。
共享文件訪問不應該與使用文件傳輸協議(FTP)、藍牙IRDAOBject EXchange(OBEX)協議的文件傳輸混淆。訪問共享資源涉及到變更伺服器上的文件夾時自動同步文件夾信息,並且可能提供伺服器端的文件搜索,而文件傳輸是更基本的服務。
共享文件的訪問對用戶來說是透明的,就好像它是本地文件系統中的資源一樣,並且支持多用戶環境。這包括用戶編輯遠程文件時的併發控制或鎖,以及文件系統許可權。
共享文件訪問通常被認為是一個本地網路(LAN)服務,而FTP是一個網際網路服務。
共享文件訪問牽扯但不同於文件同步及其他信息同步。共享文件訪問基於伺服器端推送文件夾信息,並且通常使用保持在線的網路插座。文件同步則允許用戶不時離線,並且用戶端軟體通常採用輪詢方式不時重新連接以獲知信息、了解差異。現代操作系統通常提供遠程文件的緩存以允許離線訪問和重新連接時的同步。