www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 技術學院 > 基礎知識科普站
[導讀]Telnet是位于OSI模型的第7層---應用層上的一種協(xié)議,是一個通過創(chuàng)建虛擬終端提供連接到遠程主機終端仿真的TCP/IP協(xié)議。

Telnet是位于OSI模型的第7層---應用層上的一種協(xié)議,是一個通過創(chuàng)建虛擬終端提供連接到遠程主機終端仿真的TCP/IP協(xié)議。這一協(xié)議需要通過用戶名和口令進行認證,是Internet遠程登陸服務的標準協(xié)議。應用Telnet協(xié)議能夠把本地用戶所使用的計算機變成遠程主機系統(tǒng)的一個終端。它提供了三種基本服務:1)Telnet定義一個網(wǎng)絡虛擬終端為遠程系統(tǒng)提供一個標準接口。客戶機程序不必詳細了解遠程系統(tǒng),他們只需構造使用標準接口的程序;2)Telnet包括一個允許客戶機和服務器協(xié)商選項的機制,而且它還提供一組標準選項; .3)Telnet對稱處理連接的兩端,即Telnet不強迫客戶機從鍵盤輸入,也不強迫客戶機在屏幕上顯示輸出。

Telnet協(xié)議的內(nèi)容

適應異構為了使多個操作系統(tǒng)間的Telnet交互操作成為可能,就必須詳細了解異構計算機和操作系統(tǒng)。比如,一些操作系統(tǒng)需要每行文本用ASCⅡ回車控制符(CR)結束,另一些系統(tǒng)則需要使用ASCⅡ換行符(LF),還有一些系統(tǒng)需要用兩個字符的序列回車-換行(CR-LF);再比如,大多數(shù)操作系統(tǒng)為用戶提供了一個中斷程序運行的快捷鍵,但這個快捷鍵在各個系統(tǒng)中有可能不同(一些系統(tǒng)使用CTRL+C,而另一些系統(tǒng)使用ESCAPE)。如果不考慮系統(tǒng)間的異構性,那么在本地發(fā)出的字符或命令,傳送到遠地并被遠程系統(tǒng)解釋后很可能會不準確或者出現(xiàn)錯誤。因此,Telnet協(xié)議必須解決這個問題。 為了適應異構環(huán)境,Telnet協(xié)議定義了數(shù)據(jù)和命令在Internet上的傳輸方式,此定義被稱作網(wǎng)絡虛擬終端NVT(Net Virtual Terminal)。它的應用過程如下: 對于發(fā)送的數(shù)據(jù):客戶機軟件把來自用戶終端的按鍵和命令序列轉換為NVT格式,并發(fā)送到服務器,服務器軟件將收到的數(shù)據(jù)和命令,從NVT格式轉換為遠地系統(tǒng)需要的格式; 對于返回的數(shù)據(jù):遠地服務器將數(shù)據(jù)從遠地機器的格式轉換為NVT格式,而本地客戶機將接收到的NVT格式數(shù)據(jù)再轉換為本地的格式?!τ贜VT格式的詳細定義,有興趣的朋友可以去查找相關資料。

傳送遠程命令我們知道絕大多數(shù)操作系統(tǒng)都提供各種快捷鍵來實現(xiàn)相應的控制命令,當用戶在本地終端鍵入這些快捷鍵的時候,本地系統(tǒng)將執(zhí)行相應的控制命令,而不把這些快捷鍵作為輸入。那么對于Telnet來說,它是用什么來實現(xiàn)控制命令的遠程傳送呢? Telnet同樣使用NVT來定義如何從客戶機將控制功能傳送到服務器。我們知道ASCⅡ字符集包括95個可打印字符和33個控制碼。當用戶從本地鍵入普通字符時,NVT將按照其原始含義傳送;當用戶鍵入快捷鍵(組合鍵)時,NVT將把它轉化為特殊的ASCⅡ字符在網(wǎng)絡上傳送,并在其到達遠地機器后轉化為相應的控制命令。將正常ASCⅡ字符集與控制命令區(qū)分的原因:1)這種區(qū)分意味著Telnet具有更大的靈活性:它可在客戶機與服務器間傳送所有可能的ASCⅡ字符以及所有控制功能;2)這種區(qū)分使得客戶機可以無二義性的指定信令,而不會產(chǎn)生控制功能與普通字符的混亂。 .

數(shù)據(jù)流向上面我們提到過將Telnet設計為應用級軟件有一個缺點,那就是:效率不高。這是為什么呢?下面給出Telnet中的數(shù)據(jù)流向:數(shù)據(jù)信息被用戶從本地鍵盤鍵入并通過操作系統(tǒng)傳到客戶機程序,客戶機程序將其處理后返回操作系統(tǒng),并由操作系統(tǒng)經(jīng)過網(wǎng)絡傳送到遠程機器,遠程操作系統(tǒng)將所接收數(shù)據(jù)傳給服務器程序,并經(jīng)服務器程序再次處理后返回到操作系統(tǒng)上的偽終端入口點,最后,遠程操作系統(tǒng)將數(shù)據(jù)傳送到用戶正在運行的應用程序,這便是一次完整的輸入過程;輸出將按照同一通路從服務器傳送到客戶機?!∫驗槊恳淮蔚妮斎牒洼敵?,計算機將切換進程環(huán)境好幾次,這個開銷是很昂貴的。還好用戶的鍵入速率并不算高,這個缺點我們?nèi)匀荒軌蚪邮?。?

強制命令我們應該考慮到這樣一種情況:假設本地用戶運行了遠地機器的一個無休止循環(huán)的錯誤命令或程序,且此命令或程序已經(jīng)停止讀取輸入,那么操作系統(tǒng)的緩沖區(qū)可能因此而被占滿,如果這樣,遠程服務器也無法再將數(shù)據(jù)寫入偽終端,并且最終導致停止從TCP連接讀取數(shù)據(jù),TCP連接的緩沖區(qū)最終也會被占滿,從而導致阻止數(shù)據(jù)流流入此連接。如果以上事情真的發(fā)生了,那么本地用戶將失去對遠程機器的控制。為了解決此問題,Telnet協(xié)議必須使用外帶信令以便強制服務器讀取一個控制命令。我們知道TCP用緊急數(shù)據(jù)機制實現(xiàn)外帶數(shù)據(jù)信令,那么Telnet只要再附加一個被稱為數(shù)據(jù)標記(date mark)的保留八位組,并通過讓TCP發(fā)送已設置緊急數(shù)據(jù)比特的報文段通知服務器便可以了,攜帶緊急數(shù)據(jù)的報文段將繞過流量控制直接到達服務器。作為對緊急信令的相應,服務器將讀取并拋棄所有數(shù)據(jù),直到找到了一個數(shù)據(jù)標記。服務器在遇到了數(shù)據(jù)標記后將返回正常的處理過程。由于Telnet兩端的機器和操作系統(tǒng)的異構性,使得Telnet不可能也不應該嚴格規(guī)定每一個telnet連接的詳細配置,否則將大大影響Telnet的適應異構性。因此,Telnet采用選項協(xié)商機制來解決這一問題。Telnet選項的范圍很廣:一些選項擴充了大方向的功能,而一些選項制涉及一些微小細節(jié)。例如:有一個選項可以控制Telnet是在半雙工還是全雙工模式下工作(大方向);還有一個選項允許遠地機器上的服務器決定用戶終端類型(小細節(jié))。Telnet選項的協(xié)商方式也很有意思,它對于每個選項的處理都是對稱的,即任何一端都可以發(fā)出協(xié)商申請;任何一端都可以接受或拒絕這個申請。另外,如果一端試圖協(xié)商另一端不了解的選項,接受請求的一端可簡單的拒絕協(xié)商。因此,有可能將更新,更復雜的Telnet客戶機服務器版本與較老的,不太復雜的版本進行交互操作。如果客戶機和服務器都理解新的選項,可能會對交互有所改善。否則,它們將一起轉到效率較低但可工作的方式下運行。所有的這些設計,都是為了增強適應異構性,可見Telnet的適應異構性對其的應用和發(fā)展是多么重要。上面討論了一些原理方面的東西,雖然我們在Telnet的使用過程中很難接觸到這一層面,但我認為了解這些是有意義的,它會給我們帶來許多啟示。下面讓我們來看看Win2000的Telnet服務。

子選項協(xié)商有些選項不是僅僅用“激活”或“禁止”就能夠表達的。指定終端類型就是一個例子,客戶進程必須發(fā)送用一個A S C I I字符串來表示終端類型。為了處理這種選項,我們必須定義子選項協(xié)商機制。在R F C 1 0 9 1 [ VanBokkelen 1989]中定義了如何表示終端類型這樣的子選項協(xié)商機制。首先連接的某一方(通常是客戶進程)發(fā)送3個字節(jié)的字符序列來請求激活該選項。這里的2 4(十進制)是終端類型選項的I D號。如果收端(通常是服務器進程)同意,那么響應數(shù)據(jù)是:然后服務器進程再發(fā)送如下的字符串:該字符串詢問客戶進程的終端類型。其中S B是子選項協(xié)商的起始命令標志。下一個字節(jié)的“2 4”代表這是終端類型選項的子選項(通常S B后面的選項值就是子選項所要提交的內(nèi)容)。下一個字節(jié)的“ 1”表示“發(fā)送你的終端類型”。子選項協(xié)商的結束命令標志也是I A C,就像S B是起始命令標志一樣。如果終端類型是i b m p c,客戶進程的響應命令將是:第4個字節(jié)“0”代表“我的終端類型是”(在Assigned Numbers RFC文檔中有正式的關于終端類型的數(shù)值定義,但是最起碼在U n i x系統(tǒng)之間,終端類型可以用任何對方可理解的數(shù)據(jù)進行表示。只要這些數(shù)據(jù)在t e r m c a p或t e r m i n f o數(shù)據(jù)庫中有定義)。在Te l n e t子選項協(xié)商過程中,終端類型用大寫表示,當服務器收到該字符串后會自動轉換為小寫字符。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀
關閉