歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> NetWare與UNIX的互聯方法與實現

NetWare與UNIX的互聯方法與實現

日期:2017/2/28 16:47:12   编辑:Linux教程

  異型網絡之間的互聯是當今計算機網絡技術發展的熱點問題之一。隨著計算機技術的深入發展與網絡的不斷普及,異型機與異型網絡的互相連接、互相共享資源已經成為人們需要迫切解決的問題了。現在廣泛流行的網絡操作系統netware與同樣為人們所喜愛的unix系統之間的互聯問題正是在這種背景下提出來的。由於novell公司已經成功地使netware支持tcp/ip協議,而unix的聯網正是建立在tcp/ip 協議之上的,所以一些基於tcp/ip協議的應用層協議,就自然成為解決netware與unix互聯問題的較好方法了。網絡文件系統(nfs)正是這些協議中,應用較廣、技術較為成熟的協議之一,而且現在市場上已經推出了幾十種nfs產品。

  它們被廣泛地應用於netware與unix的互聯之中。本文將通過對nfs的概念和實現方法的討論,來說明netware與unix之間是如何通過nfs實現互聯的。

  一、網絡文件系統概述

  sun microsystems公司是以其高品質的工作站而享譽計算機界的。其工作站現已廣泛地應用於多種領域,如cad、仿真、圖形處理等。sun工作站采用的是開放式的系統結構,它們大都是基於unix操作系統之上的,並且支持tcp/ip協議作為其網絡的體系結構。也正是由於對tcp/ip協議的支持,使得sun工作站可以很方便地在ethernet上,基於tcp/ip進行通訊。

  同時,又由於tcp/ip協議在網際互聯上的優越性能,使得sun工作站與其它異種機之間的通訊實現起來較為方便和容易。

  為了實現網絡上的文件服務,sun公司提出了網絡文件系統(network file system, nfs)的概念。它提供了異種機、異種操作系統之間的透明在線(on-line)共享文件的手段。nfs允許用本地操作系統的i/o調用方式訪問遠地文件,並且這與文件存放的物理位置和使用何種操作系統無關。

  從用戶的角度看,nfs是不可見的。用戶可以運行一獨占的程序並且可以對獨享文件進行i/o操作,而這時用戶並不清楚它們是本地的還是遠程的程序或文件。

  使用nfs的好處很多。nfs允許多台機器使用同一個數據文件,所以文件的數據對網絡上的各機器來說都是可存取的。而且nfs可以通過將大的文件存儲在一台機器上而由大家來共享的方式,使存儲的費用明顯的降低。尤其是在數據庫應用系統中,你可以把數據文件可靠、統一地集中在一起,既可共享使用又可以進行方便的統一管理。

  nfs目前已經得到開放系統組織的承認,成為今天的分布式文件系統的工業標准。nfs不僅能夠支持sun工作站之間的連接,而且能夠支持來自主要計算機廠家的產品。尤其是大多數unix操作系統,諸如sco unix,都提供了支持nfs協議的軟件,以實現unix與其它操作系統之間的通訊。

  二、從網絡的體系結構來說明nfs的實現

  nfs在一個操作系統中的具體形式如圖1。當一個應用程序運行時,它可以通過系統調用打開一個文件,並對其進行存取訪問。這時的文件存取系統可以接收用戶的各種請求,並且能夠自動判斷將該請求發往何處,即是本地文件系統還是nfs客戶服務部分。這種判斷是根據被請求的文件是在本地存儲介質上還是在遠程的計算機上而做出的。當一個被請求文件在遠地時,nfs客戶服務軟件利用nfs協議與遠地機器上適當的nfs服務器取得聯系,並且進行相應的請求操作。在遠地服務器對請求做出回答後,客戶服務軟件獲得結果,將它傳送給應用程序。

  從程序員的角度來看,nfs協議本身並沒有提供什麼特別的調用過程。一旦管理員將nfs設置完成後,程序員就可以對遠地和本地的文件進行同樣的存取操作,它們之間並無明顯的差別。

  對於nfs,設計者並沒有將它設計成為解決所有文件傳輸的綜合性協議,而是將nfs的實現分成三個相對獨立的部分:nfs協議本身、遠程過程調用 (remote procedure call, rpc)機制和外部數據表示(external data representation, xdr)。如果將它們與iso/osi的推薦標准相對照的話,可以看出rpc對應於會話層,xdr對應於表示層,而nfs協議本身則對應於應用層,見圖 2。從這個體系結構可以看出,真正的nfs服務是建立在外部數據表示xdr和遠程過程調用rpc所提供的服務功能之上。

Copyright © Linux教程網 All Rights Reserved