?? rfc1180.txt
字號:
找匹配的網(wǎng)絡(luò)。Delta的路由表是這樣的:
----------------------------------------------------------------------
|network direct/indirect flag router interface number|
----------------------------------------------------------------------
|development direct <blank> 1 |
|factory direct <blank> 3 |
|accounting direct <blank> 2 |
----------------------------------------------------------------------
表 12. Delta的路由表
下面是Delta的路由表被再次畫出(用數(shù)字表示):
----------------------------------------------------------------------
|network direct/indirect flag router interface number|
----------------------------------------------------------------------
|223.1.2 direct <blank> 1 |
|223.1.3 direct <blank> 3 |
|223.1.4 direct <blank> 2 |
----------------------------------------------------------------------
表 13. Delta的用數(shù)字表示的路由表
在第二個條目發(fā)現(xiàn)了匹配的網(wǎng)絡(luò),IP模塊通過接口3把IP包直接發(fā)給epsilon。
IP包包括epsilon的IP地址和物理地址。
IP包到達(dá)epsilon然后向上傳到epsilon的IP模塊,目的IP地址被檢查發(fā)現(xiàn)和
epsilon的IP地址相同,從而IP包被傳到上面的協(xié)議層。
5.11.選路小結(jié)
當(dāng)一個IP包要在一個很大的網(wǎng)上傳遞,在它到達(dá)目的地以前它要通過很多的路由
器,它所選擇的路徑不是由中央的資源控制的而是通過路由表的查詢而確定的。每一
臺路由器只決定它傳遞的下一步然后依賴這臺路由器沿這條路徑傳遞。
5.12.路徑選擇的管理
在一個大的網(wǎng)絡(luò)上維護(hù)所有計算機(jī)的路由表正確是一項艱巨的任務(wù),網(wǎng)絡(luò)管理員
經(jīng)常更改網(wǎng)絡(luò)配置以適應(yīng)網(wǎng)絡(luò)狀況的變化。路由表中的錯誤會導(dǎo)致中斷通信,這種錯
誤是很難察覺的。
通過簡單的配置使網(wǎng)絡(luò)可靠需要不斷的嘗試。舉個例子,分配IP網(wǎng)絡(luò)到以太網(wǎng)的
最簡單的方法是分配一個網(wǎng)絡(luò)號給每一個以太網(wǎng)。
我們可以從協(xié)議和網(wǎng)絡(luò)應(yīng)用程序中得到幫助。ICMP(網(wǎng)間控制報文協(xié)議)能夠匯
報出一些路由問題。對于小的網(wǎng)絡(luò)的路由表是由網(wǎng)絡(luò)管理員加到每一臺計算機(jī)上去
的。對于大的網(wǎng)絡(luò),網(wǎng)絡(luò)管理員用路由協(xié)議通過網(wǎng)絡(luò)尋找路由使這種手工的操作變?yōu)?
自動。
當(dāng)一臺計算機(jī)從一個網(wǎng)絡(luò)移到另一個,它的IP地址必須改變,它原來的IP地址就
不正確了。這些變化需要寫到"hosts"文件中去。這個單調(diào)的文件變的難以維護(hù)即使
對于中等的網(wǎng)絡(luò)。域名服務(wù)器用來解決這些問題。
6.UDP(用戶數(shù)據(jù)報協(xié)議)
UDP是在IP層之上的兩個主要協(xié)議之一。它提供用戶網(wǎng)絡(luò)應(yīng)用程序的服務(wù),用到UDP
的網(wǎng)絡(luò)應(yīng)用程序有:NFS(網(wǎng)絡(luò)文件系統(tǒng))和SNMP(簡單網(wǎng)絡(luò)管理協(xié)議)。UDP服務(wù)只
是在IP的基礎(chǔ)上加了少許一點(diǎn)。
UDP是無連接的數(shù)據(jù)報服務(wù)沒有丟失檢測。UDP不和遠(yuǎn)端的UDP模塊保持點(diǎn)到點(diǎn)連接,
,它僅僅把包發(fā)送出去而不管有沒有丟失和接收來自外面的數(shù)據(jù)包。
UDP在IP的基礎(chǔ)上加了兩個屬性,一個是端口號,另一個是檢查數(shù)據(jù)完整性的校驗和。
6.1.端口
客戶端是怎樣連上服務(wù)器端的呢?
UDP和應(yīng)用程序之間的通信路徑是通過UDP端口。這些端口是用數(shù)字表示的,從0開始
。提供服務(wù)的應(yīng)用程序用特定的端口號等待消息的進(jìn)入。服務(wù)器不間斷掃描客戶端的
請求服務(wù)。
舉個例子,比如說SNMP,叫做一個SNMP代理,總是在端口161上等待消息。每臺計
算機(jī)只能有一個SNMP代理因為只有一個UDP端口號161。這個端口號是眾人皆知的,它
是固定的,是網(wǎng)絡(luò)分配的唯一的號。如果SNMP客戶請求服務(wù),則它就發(fā)送UDP包到目的
計算機(jī)的端口161。
當(dāng)應(yīng)用程序發(fā)送UDP包,則遠(yuǎn)端收到的是一個單元。比如,如果應(yīng)用程序發(fā)了5個UDP
包,則遠(yuǎn)端就讀取5次。當(dāng)然,發(fā)的5個包和讀取的5個包大小相等。
UDP保存每一個完整的包,它不把兩個應(yīng)用程序消息加在一塊,也不把一個包拆成兩
個。
6.2.校驗和
在IP頭域里顯示"UDP"的IP包被送到UDP模塊。當(dāng)UDP模塊收到UDP包它檢查它的校驗
和。如果它的校驗和為0,則意味著在發(fā)送端校驗和沒有被計算,可以忽略。因此發(fā)送
端的計算機(jī)的UDP模塊產(chǎn)不產(chǎn)生校驗和沒關(guān)系。如果物理幀在一個網(wǎng)絡(luò)的2個UDP模塊間
通信,則不需要產(chǎn)生校驗和。但是我們推薦使用校驗和因為路由表的改變可能導(dǎo)致數(shù)
據(jù)通過不可靠的媒介。
如果校驗和是正確的或為0,目的端口就會檢查它。UDP包傳向這個端口,排隊等待
應(yīng)用程序處理它,否則UDP包就會被丟棄。如果UDP包到達(dá)的速度比應(yīng)用程序能夠處理
的速度快或者等待的UDP包把隊列排滿,UDP包就會被UDP模塊丟棄。UDP模塊會一直丟
棄UDP包直到隊列有多余的空間。
7.TCP(傳輸控制協(xié)議)
TCP提供和UDP不同的服務(wù),TCP提供有連接的比特流,不同于無連接的數(shù)據(jù)報服務(wù)。
TCP保證可靠傳輸,而UDP不保證。
TCP被網(wǎng)絡(luò)應(yīng)用程序調(diào)用時保證可靠傳輸和不能有超時和誤傳。兩個典型的網(wǎng)絡(luò)應(yīng)用
程序時FTP(文件傳送協(xié)議)和TELNET。其他的流行的TCP網(wǎng)絡(luò)應(yīng)用程序包括:X-WINDOW
系統(tǒng),rcp(遠(yuǎn)程復(fù)制),和rseries commands.TCP的強(qiáng)大功能時要代價的:它需要更多
的CPU和網(wǎng)絡(luò)帶寬。TCP模塊的內(nèi)部比UDP模塊要復(fù)雜的多。
和UDP相似,網(wǎng)絡(luò)應(yīng)用程序和TCP端口連接。特定的端口號對應(yīng)特定的應(yīng)用程序。舉
個例子TELNET服務(wù)器使用端口23。TELNET客戶端只能通過連接特定計算機(jī)上的端口23
才能成功。
當(dāng)應(yīng)用程序通過TCP啟動,在客戶端的TCP模塊和在服務(wù)器端的TCP模塊互相通信,這
些兩個端點(diǎn)的TCP模塊構(gòu)成了虛擬的電路。這個虛擬電路消耗兩端的資源。虛擬電路時
雙向的,數(shù)據(jù)能夠同時往兩個方向傳。應(yīng)用程序把數(shù)據(jù)寫到TCP端口,數(shù)據(jù)通過網(wǎng)絡(luò)由
遠(yuǎn)端的應(yīng)用程序控制。
TCP包可以分成任意大小,包與包之間沒有界限。比如,如果應(yīng)用程序往TCP端口發(fā)
了5次,遠(yuǎn)端的應(yīng)用程序也許要讀10次,或者它就只讀一次。在一端寫的次數(shù)和大小與
另一端讀的次數(shù)和大小時沒有關(guān)聯(lián)的。
TCP是一個有超時和重發(fā)的滑動窗口協(xié)議。發(fā)出去的包必須得到遠(yuǎn)端的確認(rèn)。確認(rèn)信
息可以攜帶在數(shù)據(jù)包上。兩個接受端能控制遠(yuǎn)端,從而防止緩沖器溢出。
對于所有的滑動窗口協(xié)議,有一個窗口的大小,窗口的大小決定了在收到確認(rèn)信息
以前可以發(fā)送的總的數(shù)據(jù) 。對于TCP,這個數(shù)量不是TCP段的數(shù)量而是字節(jié)的數(shù)量。
8.網(wǎng)絡(luò)應(yīng)用程序
為什么TCP和UDP要同時存在,而不是只有一個?
他們提供不同的服務(wù),大部分的應(yīng)用程序只用其中的一個。你,程序員,當(dāng)然選擇
最適合你的協(xié)議了。如果你需要可靠的數(shù)據(jù)傳送,TCP可能是最佳的選擇了。如果你需
要數(shù)據(jù)包服務(wù),UDP是最佳的。如果你需要高效的長的通路,TCP可能是最佳的。如果
你需要快的網(wǎng)絡(luò)反應(yīng)時間,UDP可能是最佳的。如果你不想把分類,則"最佳"的選擇
就是模糊的。然而,應(yīng)用程序能夠彌補(bǔ)選擇上的不足。舉個例子,如果你選擇UDP可是
你需要可靠性,則在應(yīng)用程序上加上可靠性就可以了。如果你選擇TCP可是你需要標(biāo)記
的服務(wù),那么應(yīng)用程序必須在字節(jié)流里加入標(biāo)記。
什么樣網(wǎng)絡(luò)應(yīng)用程序是有用的?
這可就有許多可以羅列的。數(shù)目是連續(xù)增長的。自從internet技術(shù)開始就有一些應(yīng)
用程序了:TELNET和FTP。其他的是較新的:X-WINDOWS和SNMP。下面是在這本指南提
到的網(wǎng)絡(luò)應(yīng)用程序的簡短說明。
8.1.TELNET
TELNET提供遠(yuǎn)端登錄服務(wù)。它的操作和外型同通過電話撥號是相似的。在命令行上
用戶敲入:"TELNET DELTA"就會收到從"delta"來的登錄提示。
TELNET很好使,它使一個老的應(yīng)用程序有著廣泛的應(yīng)用。TELNET 通常在不同的操作
系統(tǒng)間工作。 舉個例子,TELNET客戶端使VAX/VMS系統(tǒng),而服務(wù)器端是UNIX V 系統(tǒng)。
8.2 FTP
文件傳送協(xié)議(FTP),是和TELNET一樣久遠(yuǎn)的網(wǎng)絡(luò)應(yīng)用程序,也有廣泛的應(yīng)用。從
操作來看好象你登錄上了遠(yuǎn)端的計算機(jī)。但是你必須用特殊的命令取代你習(xí)慣上的命
令。FTP命令允許你在兩臺計算機(jī)之間拷貝文件。
8.3 RSH
遠(yuǎn)端shell(rsh或者remsh)是全部遠(yuǎn)端UNIX類型命令族中的一個。UNIX拷貝命令
--CP,變成了RCP。UNIX命令"誰在登陸"WHO變成了RWHO。這個系列都被變成了"R
"系列命令。
R*命令主要工作在UNIX系統(tǒng)和被設(shè)計成在互相信任主機(jī)間相互操作。安全性很少
被考慮,但是他們提供了方便的用戶環(huán)境。
為了在一臺遠(yuǎn)端叫做delta的計算機(jī)上執(zhí)行命令"cc file.c",輸入"rsh delta
cc file.c",為了拷貝文件到delta上,輸入"rcp file.c delta"。為了登陸到
delta上,輸入"rlogin delta",如果你在某種特定的方式上管理這臺計算機(jī),你
將不會有登陸提示。
8.4 NFS
網(wǎng)絡(luò)文件系統(tǒng),是由美國SUN公司開發(fā)的,使用UDP,它在不同的計算機(jī)之間上載
UNIX系統(tǒng)文件是很出色的。一個無磁盤的工作站通過存取服務(wù)器的硬盤就好象磁盤是
本地的。在主機(jī)"alpha"上的單一的數(shù)據(jù)庫同樣能被主機(jī)"beta"使用只要數(shù)據(jù)庫文件用
NFS上載在"beta"上。
NFS加入大量的信息給網(wǎng)絡(luò)從而使連接的速度很慢,但是它的優(yōu)點(diǎn)使主要的。NFS客
戶端在內(nèi)核執(zhí)行,允許使用NFS的磁盤好象在本地一樣。
8.5.SNMP
簡單網(wǎng)絡(luò)管理協(xié)議(SNMP)使用UDP,被設(shè)計成由中心網(wǎng)絡(luò)點(diǎn)來管理。它很知名如
果給它足夠的數(shù)據(jù),網(wǎng)絡(luò)管理員就能夠發(fā)覺和診斷網(wǎng)絡(luò)問題。 中心點(diǎn)用SNMP從在網(wǎng)上
的計算機(jī)收集數(shù)據(jù)。SNMP定義了這種數(shù)據(jù)的格式。由中心點(diǎn)或網(wǎng)絡(luò)管理員來解釋這種
數(shù)據(jù)。
8.6.X-WINDOW
X-WINDOW 系統(tǒng)使用基于TCP的X WINDOW 協(xié)議來畫在工作站上的位圖顯示窗口 。X
WINDOW 不僅僅是畫窗口 ,它能夠用來設(shè)計用戶界面。
9.其他信息
許多有關(guān)internet技術(shù)的信息沒有被包括在這本指南里。讀者如果想深入學(xué)習(xí),請
看下面列出的相關(guān)信息:
*網(wǎng)絡(luò)管理命令:arp,route,netstat
*ARP;permanent entry,publish entry,time-out entry,spoofing
*IP路由表:host entry,default gateway,subnets
*IP: time-to-live counter, fragmentation, ICMP
*RIP:routing loops
*DNS(域名解析系統(tǒng))
10.參考書
[1] Comer, D., "Internetworking with TCP/IP Principles, Protocols,
and Architecture", Prentice Hall, Englewood Cliffs, New Jersey,
U.S.A., 1988.
[2] Feinler, E., et al, DDN Protocol Handbook, Volume 2 and 3, DDN
Network Information Center, SRI International, 333 Ravenswood
Avenue, Room EJ291, Menlow Park, California, U.S.A., 1985.
[3] Spider Systems, Ltd., "Packets and Protocols", Spider Systems
Ltd., Stanwell Street, Edinburgh, U.K. EH6 5NG, 1990.
11.和其他RFC的關(guān)系
這本RFC是一本指南,它不同與其他任何的RFC。
12.安全問題
在TCP/IP里有一些安全問題需要考慮。對一些人來說安全是一個嚴(yán)肅的問題,而
另一些人不這樣認(rèn)為,這就看用戶的需求了。
這本指南沒有討論這些問題,但是如果你想學(xué)習(xí)更多的這方面的東西你可以從
ARP-spoofing開始,接著用<<RFC 1122>>的"Security Considerations"節(jié)了解更多
的信息
13.作者的地址
Theodore John Socolofsky
Spider Systems Limited
Spider Park
Stanwell Street
Edinburgh EH6 5NG
United Kingdom
Phone:
from UK 031-554-9424
from USA 011-44-31-554-9424
Fax:
from UK 031-554-0649
from USA 011-44-31-554-0649
EMail: TEDS@SPIDER.CO.UK
Claudia Jeanne Kale
12 Gosford Place
Edinburgh EH6 4BJ
United Kingdom
Phone:
from UK 031-554-7432
from USA 011-44-31-554-7432
EMail: CLAUDIAK@SPIDER.CO.UK
RFC1180——A TCP/IP Tutorial TCP/IP指南
4
RFC文檔中文翻譯計劃
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -