




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、TCP/IP基礎介紹 一子網的設定 若公司不上Internet,那一定不會煩惱IP Address的問題,因為可以任意使用所有的IP Address,不管是A Class或是B Class,這個時候不會想到要用Sub Net,但若
2、是上Internet那IP Address便彌足珍貴了,目前全球一陣Internet熱,IP Address已經愈來愈少了,而所申請的IP Address目前也趨保守,而且只有經申請的IP Address能在Internet使用,但對某些公司只能申請到一個C CLass的IP Address,但又有多個點需要使用,那這時便需要使用到Subnet,這篇短文說明Subnet的原理及如何規(guī)劃。 1Subnet Mask的介紹 設定任何網路上的任何設備不管是主機、PC、Router等皆需要設定IP Address,而跟隨著IP Address的是所謂的NetMask,這個NetMask主要的目的是由I
3、P Address中也能獲得NetworkNumber,也就是說IP Address和Net Mask作AND而得到Network Number,如下所示: IP Address11000000.00001010.00001010.00000110 NetMask11111111.11111111.11111111.00000000 ANDNetwork Number11000000.00001010.00001010.00000000 NetMask有所謂的預設值,如下所示 Class IP Address 范圍 Net
4、Mask A-55 B-55 C-55在預設的Net Mask都只有255的值,在談到Subnet Mask時這個值便不一定是255了。在完整一組C Class中如-55NetMask,稱之Network Number(將IP Address和Netmask作AND),而55是Broadca
5、st的IP Address,所以這?兩者皆不能使用,實際只能使用-54等254個IP Address,這是以作NetMask的結果,而所謂Subnet Msk尚可將整組C Class分成數(shù)組Network Number,這要在NEtMask作手腳,若是要將整組C CLass分成2個Network Number那NetMask設定為92,若是要將整組C CLass分成8組Network Number則NetMask要為24,這是怎麼來的,由以上知道Network Number
6、是由IP Address和NetMask作AND而來的,而且將NetMask以二進位表示法知道是1的會保留,而為0的去掉93-11000000.00001010.00001010.10000001 -11111111.11111111.11111111.00000000 - -11000000.00001010.00001010.00000000以上是以為Net Mask的結果,Network Number是,若是使用24作Net Mask結果便有所不
7、同93-11000000.00001010.00001010.10000000 24-11111111.11111111.11111111.11100000 - 92-11000000.00001010.00001010.10000000 此時Network Number變成了92,這便是Subnet。那要如何決定所使用的NetMask,24以二進位表示法為11111111.11111111.11111111.11100000,變化是在最後一組,11100000便是224,以三
8、個Bit可表示2的3次方便是8個Network NumberNetMask二進位表示法可分幾個Network 11111111.11111111.11111111.000000001 28 11111111.11111111.11111111.100000002 92 11111111.11111111.11111111.110000004 24 11111111.11111111.11111111.111000008 40 11111111.11111111.11
9、111111.1111000016 48 11111111.11111111.11111111.1111100032 52 11111111.11111111.11111111.1111110064 以下使用24將CClass分成8組Net work Number,各個Network Number及其Broadcast IP Address及可使用之IP Address序號Network Number Broadcast可使用之IP Address (1)-203.67.1
10、0.31 -0 (2)2-3 3-2 (3)4-5 5-4 (4)6-27 7-26 (5)28-59 29-58 (6)60-91 61
11、-90 (7)92-23 93-22 (8)24-55 25-54 可驗證所使用的IP Address是否如上表所示 15-11001011.01000011.00001010.01110011 24-11111111.11111111.11111111.11100000 - 6-11001011.01000011.0000101
12、0.01100000 5-11001011.01000011.00001010.00110111 24-11111111.11111111.11111111.11100000 - 2-11001011.01000011.00001010.00100000 其他的NetMask所分成的NetworkNumber可自行以上述方法自行推演出來。 2Subnet的應用 使用Subnet是要解決只有一組C Class但需要數(shù)個Network Number的問題,并不是解決IP Address不夠用的問題,因為使用Subnet反而能使用
13、的IP Address會變少,Subnet通常是使用在總公司在臺北,但分公司在臺中,兩者之間使用Router連線,同時也上Internet,但只申請到一組C Class IP Address,過Router又需不同的Network,所以此時就必須使用到Subnet,當然二辦公司間可以Remote Bridge連接,那便沒有使用Subnet的問題,這點在此不討論,所以在以上情況下的網路連線架構及IP Address的使用 二TCP/IP協(xié)議簇簡介 TCP/IP(傳輸控制協(xié)議/網間協(xié)議)是一種網絡通信協(xié)議,它規(guī)范了網絡上的所有通信設備,尤其是一個主機與另一個主機之間的數(shù)據往來格式以及傳送方式。TC
14、P/IP是INTERNET的基礎協(xié)議,也是一種電腦數(shù)據打包和尋址的標準方法。在數(shù)據傳送中,可以形象地理解為有兩個信封,TCP和IP就像是信封,要傳遞的信息被劃分成若干段,每一段塞入一個TCP信封,并在該信封面上記錄有分段號的信息,再將TCP信封塞入IP大信封,發(fā)送上網。在接受端,一個TCP軟件包收集信封,抽出數(shù)據,按發(fā)送前的順序還原,并加以校驗,若發(fā)現(xiàn)差錯,TCP將會要求重發(fā)。因此,TCP/IP在INTERNET中幾乎可以無差錯地傳送數(shù)據。在任何一個物理網絡中,各站點都有一個機器可識別的地址,該地址叫做物理地址.物理地址有兩個 特點: (1)物理地址的長度,格式等是物理網絡技術的一部分,物理網
15、絡不同,物理地址也不同. (2)同一類型不同網絡上的站點可能擁有相同的物理地址. 以上兩點決定了,不能用物理網絡進行網間網通訊. 在網絡術語中,協(xié)議中,協(xié)議是為了在兩臺計算機之間交換數(shù)據而預先規(guī)定的標準。TCP/IP并不是一個而是許多協(xié)議,這就是為什么你經常聽到它代表一個協(xié)議集的原因,而TCP和IP只是其中兩個基本協(xié)議而已。 你裝在計算機-的TCP/IP軟件提供了一個包括TCP、IP以及TCP/IP協(xié)議集中其它協(xié)議的工具平臺。特別是它包括一些高層次的應用程序和FTP(文件傳輸協(xié)議),它允許用戶在命令行上進行網絡文件傳輸。 TCP/IP是美國政府資助的高級研究計劃署(ARPA)在二十世紀七十年代
16、的一個研究成果,用來使全球的研究網絡聯(lián)在一起形成一個虛擬網絡,也就是國際互聯(lián)網。原始的Internet通過將已有的網絡如ARPAnet轉換到TCP/IP上來而形成,而這個Internet最終成為如今的國際互聯(lián)網的骨干網。 如今TCP/IP如此重要的原因,在于它允許獨立的網格加入到Internet或組織在一起形成私有的內部網(Intranet)。構成內部網的每個網絡通過一種-做路由器或IP路由器的設備在物理上聯(lián)接在一起。路由器是一臺用來從一個網絡到另一個網絡傳輸數(shù)據包的計算機。在一個使用TCP/IP的內部網中,信息通過使用一種獨立的叫做IP包(IPpacket)或IP數(shù)據報(IP datagra
17、ms)的數(shù)據單元進-傳輸。TCP/IP軟件使得每臺聯(lián)到網絡上的計算機同其它計算機“看”起來一模一樣,事實上它隱藏了路由器和基本的網絡體系結構并使其各方面看起來都像一個大網。如同聯(lián)入以太網時需要確認一個48位的以太網地址一樣,聯(lián)入一個內部網也需要確認一個32位的IP地址。我們將它用帶點的十進制數(shù)表示,如。給定一個遠程計算機的IP地址,在某個內部網或Internet上的本地計算機就可以像處在同一個物理網絡中的兩臺計算機那樣向遠程計算機發(fā)送數(shù)據。 TCP/IP提供了一個方案用來解決屬于同一個內部網而分屬不同物理網的兩臺計算機之間怎樣交換數(shù)據的問題。這個方案包括許多部分,而TCP/
18、IP協(xié)議集的每個成員則用來解決問題的某一部分。如TCP/IP協(xié)議集中最基本的協(xié)議-IP協(xié)議用來在內部網中交換數(shù)據并且執(zhí)行一項重要的功能:路由選擇選擇數(shù)據報從A主機到B主機將要經過的路徑以及利用合適的路由器完成不同網絡之間的跨越(hop)。 TCP是一個更高層次的它允許運行在在不同主機上的應用程序相互交換數(shù)據流。TCP將數(shù)據流分成小段叫做TCP數(shù)據段(TCP segments),并利用IP協(xié)議進行傳輸。在大多數(shù)情況下,每個TCP數(shù)據段裝在一個IP數(shù)據報中進行發(fā)送。但如需要的話,TCP將把數(shù)據段分成多個數(shù)據報,而IP數(shù)據報則與同一網絡不同主機間傳輸位流和字節(jié)流的物理數(shù)據幀相容。由于IP并不能保證接
19、收的數(shù)據報的順序相一致,TCP會在收信端裝配TCP數(shù)據段并形成一個不間斷的數(shù)據流。FTP和Telnet就是兩個非常流行的依*TCP的TCP/IP應用程序。 另一個重要的TCP/IP協(xié)議集的成員是用戶數(shù)據報協(xié)議(UDP),它同TCP相似但比TCP原始許多。TCP是一個可*的協(xié)議,因為它有錯誤檢查和握手確認來保證數(shù)據完整的到達目的地。UDP是一個“不可*”的協(xié)議,因為它不能保證數(shù)據報的接收順序同發(fā)送順序相同,甚至不能保證它們是否全部到達。如果有可*性要求,則應用程序避免使用它。同許多TCP/IP工具同時提供的SNMP(簡單網絡管理協(xié)議)就是一個使用UDP協(xié)議的應用例子。其它TCP/IP協(xié)議在TCP
20、/IP網絡中工作在幕后,但同樣也發(fā)揮著重要作用。例如地址轉換協(xié)議(ARP)將IP地址轉換為物理網絡地址如以太網地址。而與其對應的反向地址轉換協(xié)議(RARP)做相反的工作,即將物理網絡地址轉換為IP地址。網際控制報文協(xié)議(ICMP)則是一個支持性協(xié)議,它利用IP完成IP數(shù)據報在傳輸時的控制信息和錯誤信息的傳輸。例如,如果一個路由器不能向前發(fā)送一個IP數(shù)據報,它就會利用ICMP來告訴發(fā)送者這里出現(xiàn)了問題。 三TCP/IP網絡的七層結構模型 網絡設計者在解決網絡體系結構時經常使用ISO/OSI(國際標準化組織/開放系統(tǒng)互連)七層模型,該模型每一層代表一定層次的網絡功能。最下面是物理層,它代表著進行數(shù)
21、據轉輸?shù)奈锢斫橘|,換句話說,即網絡電纜。其上是數(shù)據鏈路層,它通過網絡接口卡提供服務。最上層是應用層,這里運行著使用網絡服務的應用程序。TCP/IP是同ISO/OSI模型等價的。當一個數(shù)據單元從網絡應用程序下流到網絡接口卡,它通過了一列的TCP/IP模塊。這其中的每一步,數(shù)據單元都會同網絡另一端對等TCP/IP模塊所需的信息一起打成包。這樣當數(shù)據最終傳到網卡時,它成了一個標準的以太幀(假設物理網絡是以太網)。而接收端的TCP/IP軟件通過剝去以太網幀并將數(shù)據向上傳輸過TCP/IP棧來為處于接收狀態(tài)的應用程序重新恢復原始數(shù)據(一種最好的了解TCP/IP工作實質的方法,是使用探測程序來觀察網絡中的到
22、處流動的幀中被不同TCP/IP模塊所加上的信息)。為了勾勒TCP/IP在現(xiàn)實網絡世界中所扮演的角色,請考慮當使?* TTP(超文本傳輸協(xié)議)的Web瀏覽器從連接在Internet上的Web服務器上獲取一頁HTML數(shù)據時所發(fā)生的情況。為形成同Web服務器的虛鏈路,瀏覽器使用一種被抽象地稱為套接口(socket)的高層軟件。為了獲取Web頁,它通過向套接口向套接口寫入HTTPGET命令來向Web服務器發(fā)出該指令。接下來套接口軟件使用TCP協(xié)議向Web服務器發(fā)出包含GET命令的字節(jié)流和位流,TCP將數(shù)據分段并將各獨立段傳到IP模塊,該模塊將數(shù)據段轉換成數(shù)據報并發(fā)送給Web服務器。如果瀏覽器和服務器運
23、-在不同物理網絡的計算機上(一般情況如此),數(shù)據報從一個網絡傳到另一個網絡,直到抵達服務器所在的那個網。最終,數(shù)據被傳輸?shù)侥康牡刂凡⒈恢匦卵b配,這樣Web服務器通過讀自己的套接口來獲得數(shù)據主干,并進而查看連續(xù)的數(shù)據流。對瀏覽器和服務器來說,數(shù)據在這一端寫入套接口而在另一端出現(xiàn)如同魔術一般,但這只是底下發(fā)生的各種復雜的交互,它創(chuàng)造了數(shù)據經過網絡無縫傳輸?shù)募傧蟆?四評論 對于TCP/IP有許多可談的,但這里僅講三個關鍵點:1TCP/IP是一族用來把不同的物理網絡聯(lián)在一起構成網際網的協(xié)議。TCP/IP聯(lián)接獨立的網絡形成一個虛擬的網,在網內用來確認各種獨立的不是物理網絡地址,而是IP地址。2TCP/I
24、P使用多層體系結構,該結構清晰定義了每個協(xié)議的責任。TCP和UDP向網絡應用程序提供了高層的數(shù)據傳輸服務,并都需要IP來傳輸數(shù)據包。IP有責任為數(shù)據包到達目的地選擇合適的路由。3在Internet主機上,兩個運行著的應用程序之間傳送要通過主機的TCP/IP堆棧上下移動。在發(fā)送端TCP/IP模塊加在數(shù)據上的信息將在接收端對應的TCP/IP模塊上濾掉,并將最終恢復原始數(shù)據。RIP協(xié)議路由器的關鍵作用是用于網絡的互連,每個路由器與兩個以上的實際網絡相連,負責在這些網絡之間轉發(fā)數(shù)據報。在討論IP進行選路和對報文進行轉發(fā)時,我們總是假設路由器包含了正確的路由,而且路由器可以利用ICMP重定向機制來要求與
25、之相連的主機更改路由(具體請看IP部分的相應章節(jié))。但在實際情況下,IP進行選路之前必須先通過某種方法獲取正確的路由表。在小型的、變化緩慢的互連網絡中,管理者可以用手工方式來建立和更改路由表。而在大型的、迅速變化的環(huán)境下,人工更新的辦法慢得不能接受。這就需要自動更新路由表的方法,即所謂的動態(tài)路由協(xié)議,RIP是其中最簡單的一種。RIP(route information protocol)協(xié)議是基于V-D算法(又稱為Bellman-Ford算法)的內部動態(tài)路由協(xié)議。V-D是Vector-Distance的縮寫,因此V-D算法又稱為距離向量算法。這種算法在ARPARNET早期就用于計算機網絡的路由
26、的計算。RIP協(xié)議在目前已成為路由器、主機路由信息傳遞的標準之一,就因為這個原因,RIP協(xié)議被大多數(shù)IP路由器商業(yè)賣主廣泛使用。先大致解釋一下什么是內部路由協(xié)議。由于歷史的原因,當前的INTERNET網被組成一系列的自治系統(tǒng),各自治系統(tǒng)通過一個核心路由器連到主干網上。而一個自治系統(tǒng)往往對應一個組織實體(比如一個公司或大學)內部的網絡與路由器集合。每個自治系統(tǒng)都有自己的路由技術,對不同的自治系統(tǒng)路由技術是不相同的。用于自治系統(tǒng)間接口上的單獨的協(xié)議稱為外部路由器協(xié)議,簡稱EGP(Exterior Gateway Protocol)。用于自治系統(tǒng)內部的路由協(xié)議稱為內部路由器協(xié)議,簡稱IGP(Inte
27、rior Gateway Protocol)。內部路由器與外部路由器協(xié)議EGP不同,外部路由協(xié)議只有一個,而內部路由器協(xié)議則是一族。各內部路由器協(xié)議的區(qū)別在于距離制式(distance metric,即距離度量標準)不同,和路由刷新算法不同。RIP協(xié)議是最廣泛使用的IGP之一,著名的路徑刷新程序Routed便是根據RIP實現(xiàn)的。RIP協(xié)議被設計用于使用同種技術的中型網絡,因此適應于大多數(shù)的校園網和使用速率變化不是很大的連續(xù)線的地區(qū)性網絡。對于更復雜的環(huán)境,一般不使用RIP協(xié)議。在實現(xiàn)時,RIP作為一個系統(tǒng)長駐進程(daemon)而存在于路由器中,它負責從網絡系統(tǒng)的其它路由器接收路由信息,從而對
28、本地IP層路由表作動態(tài)的維護,保證IP層發(fā)送報文時選擇正確的路由,同時廣播本路由器的路由信息,通知相鄰路由器作相應的修改。RIP協(xié)議處于UDP協(xié)議的上層(如圖1.1),RIP所接收的路由信息都封裝在UDP的數(shù)據報中,RIP在520號端口上接收來自遠程路由器的路由修改信息,并對本地的路由表做相應的修改,同時通知其它路由器。通過這種方式,達到全局路由的有效。RIP協(xié)議分為傳統(tǒng)RIP協(xié)議、需求RIP協(xié)議(Demand RIP)和觸發(fā)RIP,而傳統(tǒng)RIP協(xié)議又分為RIP-1,和RIP-2兩個版本。需求RIP協(xié)議和觸發(fā)RIP協(xié)議與傳統(tǒng)RIP協(xié)議的區(qū)別在于需求RIP協(xié)議和觸發(fā)RIP協(xié)議支持對撥號網的路由的
29、維護,增添了幾種相應的報文命令,增加了報文發(fā)送確認方式。RIP協(xié)議V-D算法的介紹 路由表的建立IP路由表需要一個建立過程,它的建立過程指的是它的初始化過程。任何路由器啟動時,都必須首先獲取一個初始路由表。不同的網絡操作系統(tǒng),獲取初始路由表的方式不同,總的來說,有三種方式。第一種,路由器系統(tǒng)啟動時,從外存讀入一個完整的尋徑表,長駐內存使用;系統(tǒng)關閉時再將當前路由表(可能經過刷新),寫回外存,供下次使用。第二種,系統(tǒng)啟動時,只提供一個空表,通過執(zhí)行顯式命令(比如批處理文件中的命令)來填充。第三種,系統(tǒng)啟動時,從與本路由器直接相連的各網絡地址中,推導出一組初始路由,當然通過初始路由只能訪問相連網上
30、的主機。顯見,無論哪種情況,初始路由表總是不完善的,需要不斷地運行過程中加以補充,這就是路由表的刷新。RIP正是用于路由表的維護和刷新,RIP協(xié)議中的路由刷新算法是距離向量算法,它采取的路由表的初始化方式是上述三種中的最后一種。距離向量算法距離向量算法的思想很簡單:所有參加RIP協(xié)議的路由器周期性地向外廣播路由刷新報文,主要內容是由很多路由項(entry)組成的路由刷新報文。對路由來說,最主要的內容是目的地址和下一跳地址(next hop)。對動態(tài)路由協(xié)議來說,為了找到本協(xié)議概念中的最佳路由,還必須注意路由的開銷(metric)。所以路由項主要包括了目的地址、下一跳地址和路由開銷。其他的如路由
31、標記(tag)等內容在講報文格式時,將具體講到。在設計時,每個路由器的另外RIP管理了一個路由數(shù)據庫,該路由數(shù)據庫為系統(tǒng)中所有可能的信宿包含一個路由項,并為每個信宿保留如下信息:目的地址:在算法的IP實現(xiàn)中,這指的是主機或網絡的IP地址。下一跳地址:到信宿的路由中的第一個路由器。接口:用于到下一跳物理網絡。metric值:一個數(shù),指明本路由器到信宿的開銷。定時器:路由項最后一次被修改的時間。路由標記:區(qū)分路由為內部路由協(xié)議的路由還是外部路由協(xié)議的路由的標記。數(shù)據庫由與系統(tǒng)直接相連的實體的描述初始化,通過從相鄰路由器受到的報文修改維護。路由器間交換的最重要的信息是修改報文,參加路由維護計劃的路由
32、器發(fā)送當前存在于實體的描述路由數(shù)據庫的路由修改報文。僅通過相鄰路由器間交換路由信息是可以維護整個系統(tǒng)的最佳路由的,這在接下來的討論中會逐步得到證明。距離向量算法總是基于一個這樣的事實:路由數(shù)據庫中的路由已是目前通過報文交換而得到的最佳路由。同時,報文交換僅限于相鄰的實體間,也就是說,實體共享同一個網絡。當然,要定義路由是最佳的,就必須有衡量的辦法,這就用到前面所說的“metric”。RIP簡單的網絡中,通常用可行路由所經的路由器數(shù)簡單地計算metric值。在復雜的網絡中,metric一般代表該路由傳輸數(shù)據報的延遲或其它發(fā)送開銷。令D(i,j)代表從實體i到實體j的最佳路由的metric值,d(
33、i,j)代表從i直接到j的開銷,因為開銷是可加的,算法中最佳路由如此獲取表示:D(i,i)=0,對所有的iD(i,j)=MINd(i,j)+D(k,j),當i不等于k時實體i從相鄰路由器k收到k到j的開銷的估計D(i,j),i將D(i,j)加上i到k的開銷估計d(i,j),i比較從所有相鄰路由器得到的數(shù)值,取得最小數(shù),就得到了它到j的最佳路由。RIP協(xié)議中的特殊處理1、對相同路由開銷的的處理當修改報文中的路由開銷和路由數(shù)據庫的路由開銷相同時,不修改路由數(shù)據庫中的路由。這種情況對應在實際網絡中的問題,是指網絡中出現(xiàn)了多條開銷相同的路由時,路由如何選擇的問題。在這種情況下,采用先入為主的原則,即采
34、用以前的路由。這符合處理方式的簡單性和實用性。2、對過時路由的處理根據V-D算法,一條路由只在出現(xiàn)一條更優(yōu)路由時才被刷新,否則,將繼續(xù)保留在路由數(shù)據庫中。這就忽略了這樣一種情況,即當某條路由突然崩潰,需要選擇一條新的路由來代替現(xiàn)存路由。但這靠V-D中的刷新算法來是不能得到解決的。針對這種情況,在實際應用中,RIP規(guī)定,所有機器對其路由數(shù)據庫中的每一表目都設置一個時鐘,每增加一個新表目,就相應設置一個新時鐘。在收到V-D報文中假如有關于此路由的表目,則將時鐘清零,重新記時。假如在規(guī)定時間內,一直未收到該路由的刷新信息,時鐘期滿,則將該路由從路由數(shù)據庫中刪除。如果到指定的信宿有其它路由,則新的路由
35、將從進一步收到的定時刷新報文中獲得,否則去往原信宿的路由不存在。3、布局改變時的處理在上一章所述的V-D算法中,有一個嚴重的問題,即“慢收斂”(slow convergence)問題,又叫“計算到無窮”(count to infinity)。如圖3.1(a)中所示正常網間網拓撲結構,從G1可直接到達網絡Net1,從G2經G1(距離為1)可到達Net1.正常情況下,G2收到G1的V-D報文后,會建立一條路由(1,G1,1).現(xiàn)在假設從G1到Net1的路由因故障而崩潰,但G1依然能正常工作.G1一旦檢測到不可達,會立即將原來的路由廢除(將距離改為16).然后會出現(xiàn)兩種可能:第一種,在收到來自G2的
36、V-D報文之前,G1將修改后的路由信息廣播出去,于是G2將修改其路由數(shù)據庫,將原來去往Net1的路由(1,G1,1)刪除.這是完全正常的.第二種,在G1發(fā)送新的報文之前,G2廣播自己的V-D報文.該報文中必然有一條路由(1,1)表目,說明從G2出發(fā),經1個驛站可以到達Net1.G1收到該報文后,顯然會根據此表目更改自己的路由表,產生關于Net1的新路由(1,G2,2).于是G1與G2間產生尋徑環(huán),如圖3.1(b)所示.上述路由環(huán)會通過G1和G2間的不斷V-D報文交換而解除,但解除的過程是非常緩慢的:出現(xiàn)路由環(huán)后,在下一輪路由廣播中,G1將向G2通告(1,2)表目,G2收到此表目修改本地路由數(shù)據
37、庫,將去往Net1的路由改為(1,G1,3).然后,G2向G1通告(1,3)表目,G1將去往Net1的表目改為(1,G2,4).如此下去,直到路由長度變?yōu)?6.也就是說,至少要經過7番來回(至少30*7秒),路由環(huán)才能解除.這就是所謂滿收斂問題.其實這只是一種非常簡單的情況,路由環(huán)也可以建立在不相鄰的路由器之間.對于這種情況,如果減小路由的最大長度,對解決慢收斂問題將有所幫助,但這會限制網點的規(guī)模,無疑是不行的.對于這種問題,有很多種辦法,在本協(xié)議的實現(xiàn)中,用的是水平分割(Split Horizon)和毒性逆轉法(Poison Reverse),并在毒性逆轉時采用觸發(fā)刷新(Triggered
38、Update).具體實現(xiàn)是這樣的:水平分割:當路由器從某個網絡接口發(fā)送RIP路由刷新報文時,其中不包含從該接口獲取的路由信息.毒性逆轉:某路徑崩潰后,最早廣播此路由的路由器將原路由繼續(xù)保留在若干報文中,但指明該路由為無限長.觸發(fā)刷新:一旦檢測到路由崩潰,立即廣播路由刷新報文,而不等到下一刷新周期.根據路由環(huán)產生的過程,可知通過水平分割法對解決兩路由器之間形成的路由環(huán)是極為有效的方法.毒性逆轉法可解決多路由器之間的路由環(huán)問題.使用觸發(fā)刷新,顯然可以加快新路由的有效刷新.更有這樣一個事實,從本接口發(fā)出的路由再從別的接口收到,對本地路由表是不會幫助的,正是基于這種考慮,水平分割是在RIP協(xié)議的實現(xiàn)中
39、是必不可少的.對于這一點在后來的討論中會更清楚地得到認識TCP/IP RPC協(xié)議遠程過程調用(RPC)是一種通過網絡從遠程計算機程序上請求服務,而不需要了解底層網絡技術的協(xié)議。RPC 協(xié)議假定某些傳輸協(xié)議的存在,如 TCP 或 UDP,為通信程序之間攜帶信息數(shù)據。在 OSI 網絡通信模型中,RPC 跨越了傳輸層和應用層。RPC 使得開發(fā)包括網絡分布式多程序在內的應用程序更加容易。 RPC 采用客戶機/服務器模式。請求程序就是一個客戶機,而服務提供程序就是一個服務器。首先,調用進程發(fā)送一個有進程參數(shù)的調用信息到服務進程,然后等待應答信息。在服務器端,進程保持睡眠狀態(tài)直到調用信息的到達為止。當一個
40、調用信息到達,服務器獲得進程參數(shù),計算結果,發(fā)送答復信息,然后等待下一個調用信息,最后,客戶端調用過程接收答復信息,獲得進程結果,然后調用執(zhí)行繼續(xù)進行。目前,有多種 RPC 模式和執(zhí)行。最初由 Sun 公司提出。IETF ONC 憲章重新修訂了 Sun 版本,使得 ONC PRC 協(xié)議成為 IETF 標準協(xié)議。現(xiàn)在使用最普遍的模式和執(zhí)行是開放式軟件基礎的分布式計算環(huán)境(DCE)。協(xié)議結構遠程過程調用(RPC)信息協(xié)議由兩個不同結構組成:調用信息和答復信息。信息流程如下所示: RPC:遠程過程調用流程RPC 調用信息:每條遠程過程調用信息包括以下無符號整數(shù)字段,以獨立識別遠程過程:
41、· 程序號(Program number) · 程序版本號(Program version number) · 過程號(Procedure number) RPC 調用信息主體形式如下:struct call_body unsigned int rpcvers;unsigned int prog;unsigned int vers;unsigned int proc;opaque_auth cred;opaque_auth verf;1
42、;parameter2 parameter . . . ;RPC 答復信息:RPC 協(xié)議的答復信息的改變取決于網絡服務器對調用信息是接收還是拒絕。答復信息請求包括區(qū)別以下情形的各種信息: · RPC 成功執(zhí)行調用信息。. · RPC 的遠程實現(xiàn)不是協(xié)議第二版,返回 RPC 支持的最低和最高版本號。 · 在遠程系統(tǒng)中,遠程程序不可用。 · 遠程程序不支持被請求的版本號。返回遠程程序所支持的最低和最高版本號。 · 請求的過程號不存在。通常是呼叫方協(xié)議或程序差錯。 RPC答復信息形式如下:enum
43、160;reply_stat stat MSG_ACCEPTED = 0,MSG_DENIED = 1 ;TCP/IP DNS協(xié)議DNS 的來由如果您為您的機器設定過internet連線那么您一定接觸過DNS了但DNS又是什么東東呢說穿了DNS是用來幫助記憶網路位址的,完全是為了遷就人類的記憶思維而設的。 DNS 的全稱是Domain Name System(或 Service)當您連上一個網址在URL打上 的時候可以說就是使用了 DNS 的服務了。但如果您知道這個 的 IP 位址直接輸入216.
44、239.53.101 也同樣可以到達這個網址。其實電腦使用的只是 IP 位址而已(最終也是 0 和 1 啦)這個 只是讓人們容易記憶而設的。因為我們人類對一些比較有意義的文字記憶(如)比記憶那些毫無頭緒的號碼(如01)往往容易得多。DNS 的作用就是為我們在文字和 IP 之間擔當了翻譯而免除了強記號碼的痛苦。 假如您的電話有名字記憶功能您只需知道對方的名字就可以撥號給友人了我們可以說這電話也具備如 DNS 的功能了呢但是我們在網路中使用的 DNS 系統(tǒng)就是這么簡單嗎非也復雜得很呢下面就讓我們一起去探索一下 DNS 的奧秘 在早期的 IP 網路世界里面每臺電腦都只用 IP
45、 位址來表示不久人們就發(fā)現(xiàn)這樣很難記憶于是一些 UNIX 的管理者就建立一個 HOSTS 對應表將 IP 和主機名字對應起來這樣用戶只需輸入電腦名字就可以代替 IP 來進行溝通了。如果你安裝了 Linux 系統(tǒng)在 /etc 下面就可以找到這個 hosts 檔案在 NT 的系統(tǒng)里你也可以在 winntsystem32driversetc 下面找到它。不過這個 HOSTS 檔是要由管理者手工維護的最大的問題是無法適用于大型網路而且更新也是件非常頭痛的事情。這就是 DNS 大派用場的時候了。DNS 的結構 DNS 是一個分層級的分散式名稱對應系統(tǒng)有點像電腦的目錄樹結構在最頂端的是一個"ro
46、ot"然后其下分為好幾個基本類別名稱如comorgedu 等再下面是組織名稱如ibmmicrosoftintel 等繼而是主機名稱如wwwmailftp 等。因為當初 internet 是從美國發(fā)展起的所以當時并沒有國域名稱但隨著后來 internet 的蓬勃發(fā)展DNS 也加進了諸如 twhkcn 等國域名稱。所以一個完整的 dns 名稱就好象是這樣的.tw而整個名稱對應的就是一個(或多個) IP 位址了。 在早期的設計下root 下面只有六個組織類別 不過自從組織類別名稱開放以后各種各樣五花八門的名稱也相繼涌現(xiàn)出來了但無論如何取名的規(guī)則最好盡量適合網站性質。除了原來的類別資料由美國
47、本土的 NIC(Network Information Center) 管理之外其它在國域以下的類別分別由該國的 NIC 管理(比方說臺灣的 DNS 將授權給 twnic 來管理)。這樣的結構看起來就像這樣 在結構中各組織的 DNS 經過申請后由該組織或其委托主機管理(通常當您申請注冊一個 domain 域名稱的時候都要指定兩臺 DNS 主機負責該域名的 DNS 管理)。 DNS 的運作 在我們設定 IP 網路環(huán)境的時候都要告訴每臺主機關于 DNS 伺服器的位址(我們可以手動的在每一臺主機上面設置也可以使用 DHCP 來指定)。但這設定的義意
48、何在呢?從前面的介紹我們或可知道:其目的就是請 DNS 幫忙解析主機名稱與 IP 位址啦。在這個設定過程中,DNS 被稱為 resolver (也就是負責解析的 DNS Server),而被設定主機,則只是單純的 DNS Client 了,也就是提出解析請求的主機。 下面讓我們看看 DNS 是怎樣運作的 1. 當被詢問到有關本域名之內的主機名稱的時候DNS 伺服器會直接做出回答 2. 客戶端向伺服器提出查詢項目 3. 當被詢問到有關本域名之內的主機名稱的時候DNS 伺服器會直接做出回答4. 如果所查詢的主機名稱屬于其它域名的話會檢查快取記憶體(Cache)看看有沒有相關資料
49、0;5. 如果沒有發(fā)現(xiàn)則會轉向 root 伺服器查詢 6. 然后 root 伺服器會將該域名之下一層授權(authoritative)伺服器的位址告知(可能會超過一臺) 7. 本地伺服器然后會向其中的一臺伺服器查詢并將這些伺服器名單存到記憶體中以備將來之需(省卻再向 root 查詢的步驟) 8. 遠方伺服器回應查詢 9. 若該回應并非最后一層的答案,則繼續(xù)往下一層查詢,直到獲的客戶端所查詢的結果為止 10. 將查詢結果回應給客戶端并同時將結果儲存一個備份在自己的快取記憶里面 11. 如果在存放時間尚未過時之前再接到相同的查詢則以存放于快取記憶里面的資料來做回應。 從這個過程我們可以看出沒有任何
50、一臺 DNS 主機會包含所有域名的 DNS 資料資料都是分散在全部的 DNS 伺服器中而 NIC 只需知道各 DNS 伺服器位址就可以了。為了更好地理解一下 DNS 的運作讓我們用下圖看看查詢 .tw 這臺主機位址的過程 在這個例子中.tw 臺主機的 DNS 對應資料是由負責 .tw 這個域名的 DNS 伺服器管理的。(在 DNS 術語中我們稱一個域名為"zone"這個 zone 可以是您從 NIC 申請回來的域名也可以是從該域名之下延伸出來的"sub-zone")。在這臺 DNS 伺服器上面必須有一個關于 .tw 這個 zone 的檔案而
51、這檔案里面必須有一筆關于 www 的記錄(任何主機都是以"記錄"來表示,稱為 Resource Record)。這個記錄可以為一個 IP 位址也可以以別名形式來對應一臺主機名稱但無論如何所對應的主機名稱最終是要被一個 IP 位址所對應著就是了。 同時DNS 還能提供"反查詢"(reverse lookup) 功能也就是以 IP 來查詢主機名稱。網路上面的許多服務如FTP, SMTP等等都需要到這個功能。其實DNS 服務本身就必須要使用反查詢功能而且在設定上也必須要為每個網路建立起 reverse zone。雖然有些人發(fā)覺即使沒有 reverse zone
52、 也可以使用到 DNS 服務但其中弊端卻不容易被察覺到在這個(中文)網頁.tw/Basic/WhenToUse-Rev.html 上面您可以看到忽略 revers zone 所致一些問題。 DNS 的名稱記錄 事實上DNS 不僅僅是用來解釋位址用的而且還可以回答更多關于網路和主機的其它信息其中很重要的一個功能就是可以供郵件系統(tǒng)進行路由。這些資料通常會以不同的"記錄"名稱出現(xiàn)在DNS的資料檔案中。 分擔 DNS 工作 由于 DNS 的重要性日益顯著,為提高其容錯能力
53、及查詢效能,我們在架設某一單一 zone 的時侯,常以多臺服務器來負責該 zone 的服務。其中,我們必需指定一臺 Primary(master) DNS 服務器,它是架設在某一個網域下被主要授權并控制所有名稱記錄的主控服務器管轄著該網域的所有記錄數(shù)據這些記錄數(shù)據只有 primary(master) 可以修改。 但如果在一個比較大型的網絡中DNS 服務器就會變得很繁忙所以您可以設定多個 DNS 來分擔 master 的工作但您或許不愿意到每一個 DNS 服務器去更新數(shù)據吧而且就算您愿意這樣做也容易出現(xiàn)錯誤或數(shù)據不同步的情形。這樣您可以設定其它的服務器為 secondary (slave) DN
54、S 來復制 master 上面的記錄數(shù)據這樣其它的計算機可以被分派到不同的 DNS 做查詢既可以分擔 master 的工作而且資料也可以自動進行同步工作。為確保數(shù)據的一致性,master 每次更新過數(shù)據后會以 notify 機制主動通知 slave 前來同步。此外,您可以設定 DNS 資料同步的時間間隔在 dns 檔案中的 Refresh 設定就是了。DHCP協(xié)議DHCP是Dynamic Host Configuration Protocol(動態(tài)主機分配協(xié)議)縮寫它的前身是BOOTP。BOOTP原本是用于無磁盤主機連接的網絡上面的網絡主機使用BOOT ROM而不是磁盤起動并連接上網絡BOOT
55、P則可以自動地為那些主機設定TCP/IP環(huán)境。但BOOTP有一個缺點:您在設定前須事先獲得客戶端的硬件地址,而且,與IP的對應是靜態(tài)的。換而言之,BOOTP非常缺乏"動態(tài)性",若在有限的IP資源環(huán)境中,BOOTP的一對一對應會造成非??捎^的浪費。DHCP可以說是BOOTP的增強版本它分為兩個部份一個是服務器端而另一個是客戶端。所有的IP網絡設定數(shù)據都由DHCP服務器集中管理并負責處理客戶端的DHCP要求而客戶端則會使用從服務器分配下來的IP環(huán)境數(shù)據。比較起B(yǎng)OOTP,DHCP透過"租約"的概念,有效且動態(tài)的分配客戶端的TCP/IP設定,而且,作為兼容考慮
56、,DHCP也完全照顧了BOOTP Client 的需求。DHCP 的分配形式首先必須至少有一臺 DHCP 工作在網絡上面它會監(jiān)聽網絡的 DHCP 請求并與客戶端搓商 TCP/IP 的設定環(huán)境。它提供兩種 IP 定位方式 Automatic Allocation 自動分配其情形是一旦 DHCP 客戶端第一次成功的從 DHCP 服務器端租用到 IP 地址之后就永遠使用這個地址。 Dynamic Allocation 動態(tài)分配當 DHCP 第一次從 HDCP 服務器端租用到 IP 地址之后并非永久的使用該地址只要租約到期客戶端就得釋放(release)這個 IP 地址以給其它工作站使用。當然客戶端可以比其它主機更優(yōu)先的更新(renew)租約或是租用其它的 IP 地址。動態(tài)分配顯然比自動分配更加靈活尤其
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 寵物狗血尿治療-寵物狗貧血治療方法
- 2025年測風塔市場分析報告
- 中國橡膠板、管、帶制造項目創(chuàng)業(yè)計劃書
- 安全方案培訓課件
- 車輛代理代辦合同協(xié)議書
- 中國帶蓋方型垃圾桶行業(yè)市場前景預測及投資價值評估分析報告
- 合同違約免責協(xié)議書范本
- 門店全屋定制合同協(xié)議書
- 長春健身器材設備項目商業(yè)計劃書-圖文
- 2025年工藝美術專業(yè)建設的可行性論證報告
- 公路工程項目環(huán)境保護措施及其可行性論證
- 普通車床的主軸箱設計機械外文文獻翻譯、中英文翻譯、外文翻譯
- 神經外科各種引流管的護理精品課件
- 隧道CRD法施工工法
- 遞進式流程通用模板PPT
- 腦損傷病情觀察意識狀態(tài)的分級
- 請假通用員工請假單模板
- 八年級音樂下冊 第7單元《當兵的人》好男兒就是要當兵課件1 湘教版
- 褲類統(tǒng)一單價表-服裝工序工價表
- 我們是共產主義接班人歌詞--拼音版本
- 麥凱66客戶檔案管理表格
評論
0/150
提交評論