① 從計算機A中發出數據到遠端網路計算機B上,這數據是如何到達的
和計算機網路有關,它會經過物理層,數據鏈路層,網路層,傳輸層到達終端。
數據傳輸後首先會在自己的區域網中尋找目的地址,如果區域網中沒有目的地址,就會把數據傳給區域網中的路由器,路由器根據目的地址的ip地址尋找下一個區域網,如果目的終端在下一個區域網中,那就把數據傳送給下一個區域網中的路由器,最後路由器將數據產送給目的終端,否則再由這個路由器決定把數據產送給那個區域網中,一直傳下去,直至找到目的終端。
其中的計算主要是路由演算法的計算,tcpip協議中,路由演算法主要有兩種:
1、 距離向量路由協議:
每隔30秒,距離向量路由協議就要向相鄰站點發送整個路由選擇表,使相鄰站點的備游路由選擇表得到更新。這樣,肆芹它就能從別的站點(直接相連的或其他方式連接的)收集一個網路的列表,以便進行路由選擇。距離向量路由協議使用跳數作為度量值,來計算到達目的地要經過的路由器數。
2、 鏈路狀態路由選擇協議:
在一個鏈路狀態路由選擇中,一個結點檢查裂滾畢所有直接鏈路的狀態,並將所得的狀態信息發送給網上所有的其他的結點,而不僅僅是發給那些直接相連的結點。每個節點都用這種方式,所有其他的結點從網上接收包含直接鏈路狀態的路由信息。
每當鏈路狀態報文到達時,路由結點便使用這些狀態信息去更新自己的網路拓撲和狀態「視野圖」,一旦鏈路狀態發生改變,結點對跟新的網路圖利用Dijkstra最短路徑演算法重新計算路由,從單一的報源發出計算到達所有的結點的最短路徑。
其實路由演算法的計算,是在你傳輸是就已經計算好了的,所以不影響傳輸時間。
② 計算機網路中,數據是如何到達指定主機的
我們電腦上的數據,是如何「走」到遠端的另一台電腦的呢?這是個最基礎的問題,可能很多人回答不上來,盡管我們每天都在使用網路。
這里我們以一個最簡單的「ping」命令,來解釋一個數據包「旅程」。
假設:我的電腦A,向遠在外地的朋友電腦B傳輸數據,最簡單的就是「ping」一下,看看這個傢伙的那一端網路通不通。A與B之間只有一台路由器。(路由器可能放在學校,社區或者電信機房,無所謂,基本原理是一樣的)
具體過程如下------
1.「ping」命令所產生的數據包,我們歸類為ICMP協議。說白了就是向目的地發送一個數據包,然後等待回應,如果回應正常則目的地的網路就是通的。當我們輸入了「ping」扒喚肆命令之後,我們的機器(電腦A)就生成了一個包含ICMP協議域的數據包,姑且稱之為「小德」吧~~~~
2.「小德」已經將ICMP協議打包到數據段里了,可是還不能發送,因為一個數據要想向外面傳送,還得經過「有關部門」的批准------IP協議。IP要將你的「寫信人地址」和「收信人地址鏈老」寫到數據段上面,即:將數據的源IP地址和目的IP地址分別打包在「小德」的頭部和尾部,這樣一來,大家才知道你的數據是要送到哪裡。
3.准備工作還沒有完。接下來還有部門要審核------ARP。ARP屬於數據鏈路層協議,主要負責把IP地址對應到硬體地址。直接說吧,都怪交換機太「傻」,不能根據IP地址直接找到相應的計算機,只能根據硬體地址來找。於是,交換機就經常保留一張IP地址與硬體地址的對應表以便其查找目的地。而ARP就是用來生成這張表的。比如:當「小德」被送到ARP手裡之後,ARP就要在表裡面查找,看看「小德」的IP地址與交換機的哪個埠對應,然後轉發過去。如果沒找到,則發一個廣播給所有其他的交換機埠,問這是誰的IP地址,如果有人回答,就轉發給它。
4.經過一番折騰,「小德」終於要走出這個倒霉的區域網了。可在此之前,它們還沒忘給「小德」屁股後面蓋個「戳」,說是什麼CRC校驗值,怕「小德」在旅行途中缺胳膊少腿,還得麻煩它們重新發送。。。。。我靠~~~~註:很多人弄不清FCS和CRC。所謂的CRC是一種校驗方法,用來確保數據在傳輸過程中不會丟包,損壞等等,FCS是數據包(准確的說是frame)里的一個區域,用來存放CRC的計算結果的。到了目的地之後,目的計算機要檢查FCS里的CRC值,如果與原來的相同,則說明數據在途中沒有損壞。
5.在走出去之前,那些傢伙最後折磨了一次「小德」------把小德身上眾多的0和1,弄成了什麼「高電壓」「低電壓」,在雙絞線上傳送了出去。暈~~出趟門就這么麻煩嗎?
6.坐著雙絞線旅遊,爽!可當看到很多人坐著同軸電纜,還有坐光纖的時候,小德又感覺不是那麼爽了。就在這時,來到了旅途的中轉站------路由器。這地方可是高級場所,人家直接查看IP地址!剩下的一概不管,交給下面的人去做。夠牛吧?路由器的內部也有一張表,叫做路由表,裡面標識著哪一個網路的IP對應著路由器的哪一個埠。這個表也不是天生就有的,而是靠路由器之間互相「學習」之後生成的,當然也可以由管理員手工設定。這個「學習」的過程是依靠路由協議來完成的,比如RIP,EIGRP,OSPF等等。
7.當路由器查看了「小德」的IP地址以後,根據路由表知道了小德要去的網路,接著就把小德轉到了相應的埠了。至此,路由器的主要工作完成,下面又是打包,封裝成frame,轉換成電壓信號等一系列「折騰」的活,就由數據鏈路層和物理層的模塊去干吧。
8.小德從路由器的出口出來,便來到了目春轎的地----電腦B----所屬的網路的默認網關。默認網關可以是路由器的一個埠,也可以是區域網里的各種伺服器。不管怎樣,下面的過程還是一樣的:到交換機里的ARP表查詢「小德」的IP地址,看看屬於哪個區域網段或埠,然後就轉發到B了。
9.進了B的網卡之後,還要層層「剝皮」,基本上和從A出來的程序是一樣的------電腦B先校驗一下CRC值,看看數據是否完整;然後檢查一下frame的封裝,看到是IP協議之後,就把「小德」交給IP「部門」了;IP協議一看目的地址,正確,再看看應用協議,是ICMP。於是知道了該怎麼做了------產生一個回應數據包,(可以命名為「回應小德」),並准備以同樣的順序向遠端的A發送。。至於剛剛收到的那個數據包就丟棄了。
10.「回應小德」這個數據包又開始了上述同樣的循環,只不過這次發送者是B而接收者是A了。
以上是一個最簡單的路由過程,任何復雜的網路都是在次基礎之上實現的。
③ 互聯網上的一台主機是怎樣給另一台主機發送信息的詳細過程是怎樣的
一台主機的應用層產生要發送的數據,然後傳給下層,會晤層,網路層,數據鏈路層,物理層等,具體去看iso制定的osi 7層網路模型。中間某層使用的協議是TCP或者UDP,下一層是IP,要發送的信息,層層封裝,通過ip來確定接受主機的信息,繼續向下,變成比特流,通過電路進行傳輸,中間經過路由器,路由器一般認為三層,層層向上進行處理,然後又扮頌下來,繼續發送,中間查了路由表,確定下一步送往哪裡。(此處還涉及路由飢散表的各種演算法)最後傳到接受主機的物理層,層層向上處理,解封裝,最後整理成應用程序需要的數據,交給應用層。簡單來說,就是,產生數據,傳給路由器,路由器根據路由表和路由演算法,確定該把這個包送向哪裡,然後送過去,一點點的送到接受主機。具體的過程看下通信網相關文獻吧。具體的東西記不大得了。
剛看到具體的提問,補充說下。簡單說,路由器通過查詢爛缺氏路由表,確定8。8。8。8在哪裡。具體點的給你幾個概念,你自己去看,ip分為class A class B等等,網路中路由器有路由表(他們有自己的演算法進行更新,具體參閱communication networks),路由表裡面寫明了哪個地址應該送到哪裡去,這里涉及很多東西。一兩句說不清楚
④ 主機與外部設備的數據傳輸方式主要有哪些請描述各種數據傳輸方式的傳輸過程。
計算機系統燃簡好中所使用的電子線路和物理設備,是看得見咐茄、摸得著的實體,如中央處理器( CPU )、存儲器、外部設備(輸入輸出設備、I/O設備)及匯流排等。
①存儲器。主要功能是存放程序和數據,程序是計算機操作的依據,數據是計算機操作的對象。存儲器是由存儲體、地址解碼器 、讀寫控制電路、地址匯流排和數據匯流排組成。能由中央處理器直接隨機存取指令和數據的存儲器稱為主存儲器,磁碟、磁帶、光碟等大容量存儲器稱為外存儲皮鉛器(或輔助存儲器) 。由主存儲器、外部存儲器和相應的軟體,組成計算機的存儲系統。
②中央處理器的主要功能是按存在存儲器內的程序 ,逐條地執行程序所指定的操作。中央處理器的主要組成部分是:數據寄存器、指令寄存器、指令解碼器、算術邏輯部件、操作控制器、程序計數器(指令地址計數器 )、地址寄存器等。
③外部設備是用戶與機器之間的橋梁。輸入設備的任務是把用戶要求計算機處理的數據、字元、文字、圖形和程序等各種形式的信息轉換為計算機所能接受的編碼形式存入到計算機內。輸出設備的任務是把計算機的處理結果以用戶需要的形式(如屏幕顯示、文字列印、圖形圖表、語言音響等)輸出。輸入輸出介面是外部設備與中央處理器之間的緩沖裝置,負責電氣性能的匹配和信息格式的轉換。
④硬體:也稱硬設備,計算機系統中所使用的電子線路和物理設備都是硬體是能看見、摸得著的實體,如主機,顯示器,鍵盤,滑鼠等。
⑤ IP數據報是如何從一台數據傳輸到相距甚遠的另一台主機上的
IP定址的工作原理,(包括本地網路定址和非本地網路定址):首先看本地網路實現IP 定址肢碰攜,也就是我們所說的同一網段通信過程,現在我們假設有2個主機,他們是屬於同一個網段。主機A和主機B,首歷伏先主機A通過本機的hosts表或者wins系統或dns系統先將主機B的計算機名 轉換為Ip地址,然後用自己的 Ip地址與子網掩碼計算出自己所出的網段,比較目吵陵的主機B的ip地址與自己的子網掩碼,發現與自己是出於相同的網段,於是在自己的ARP緩存中查找是否有主機B 的mac地址,如果能找到就直接做數據鏈路層封裝並且通過網卡將封裝好的乙太網幀發送有物理線路上去:如果arp緩存中沒有主機B的的mac地址,主機A將啟動arp協議通過在本地網路上的arp廣播來查詢主機B的mac地址,獲得主機B的mac地址厚寫入arp緩存表,進行數據鏈路層的封裝,發送數據。