㈠ 數據包是如何在網路中傳輸的
我們電腦上的數據,是如何「走」到遠端的另一台電腦的呢?這是個最基礎的問題,可能很多人回答不上來,盡管我們每天都在使用網路。這里我們以一個最簡單的「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了。
以上是一個最簡單的路由過程,任何復雜的網路都是在次基礎之上實現的。
㈡ 用交換機接起來一個區域網(不連外網),計算機之間的數據是以包的形式傳輸的嗎但是包不是網路層才有嗎
給你舉個例子,你從某寶買件商品,商品的內容包裝在商家提供的包裝盒內。
之後這件商品給到物流,物流會將這個商家包裝盒裝在物流包裝盒內,然後運送。
交換機也一樣。
㈢ 簡要說明TCP/IP參考模型五個層次的名稱,各層的傳輸格式和使用的設備是什麼
TCP/IP參考模型是ARPANET及其後繼的網際網路使用的參考模型。其將協議分為:網路接入層、網際互連層、傳輸層以及應用層。
1.應用層:對應OSI參考模型的上層,為用戶提供所需的各種服務,如FTP,Telnet,DNS,SMTP等。
2.傳輸層:傳輸層對應於OSI參考模型的傳輸層,為應用層實體提供端到端通信功能,確保數據包的順序傳輸和數據的完整性。該層定義了兩個主要協議:傳輸控制協議(TCP)和用戶數據報協議(UDP)。
TCP協議提供可靠的,面向連接的數據傳輸服務;而UDP協議提供不可靠的無連接數據傳輸服務。
3.互聯網互聯層:互聯網互聯層對應OSI參考模型的網路層,主要解決從主機到主機的通信問題。它包含通過網路邏輯傳輸的協議設計數據包。重點是重新給主機一個IP地址來完成主機的定址,它還負責在各種網路中路由數據包。
該層有三個主要協議:Internet協議(IP),Internet組管理協議(IGMP)和Internet控制消息協議(ICMP)。 IP協議是Internetworking層中最重要的協議。它提供可靠的無連接數據報傳送服務。
4.網路接入層:網路接入層(即主機 - 網路層)對應於OSI參考模型中的物理層和數據鏈路層。它負責監視主機和網路之間的數據交換。
實際上,TCP / IP本身並沒有定義該層的協議,但參與互連的每個網路都使用自己的物理層和數據鏈路層協議,然後與TCP / IP的網路接入層連接。地址解析協議(ARP)在此層(OSI參考模型的數據鏈路層)上工作。
(3)沒有鏈路層如何傳輸數據擴展閱讀:
OSI參考模型與TCP/IP參考模型的異同點:
1. OSI參考模型和TCP / IP參考模型都使用分層結構,但OSI使用的七層模型和TCP / IP是四層結構。
2. TCP / IP參考模型的網路介面層實際上沒有真正的定義,但是是概念性描述。 OSI參考模型不僅分為兩層,而且每層的功能都非常詳細。即使在數據鏈路層,也分離媒體訪問子層以解決區域網中共享媒體的問題。
3. TCP / IP的網路互連層等同於OSI參考模型的網路層中的無連接網路服務。
4. OSI參考模型基本上類似於TCP / IP參考模型的傳輸層功能。它負責為用戶提供真正的端到端通信服務,並且還從高層屏蔽底層網路的實現細節。
不同之處在於TCP / IP參考模型的傳輸層基於網路互連層,網路互連層僅提供無連接網路服務,因此面向連接的功能完全在TCP協議中實現,當然, TCP / IP的傳輸層還提供UDP等無連接服務;
相反,OSI參考模型的傳輸層基於網路層,它提供面向連接和無連接的服務,但傳輸層僅提供面向連接的服務。
5.在TCP / IP參考模型中,沒有會話層和表示層。事實證明,這兩層的功能可以完全包含在應用層中。
6. OSI參考模型具有高抽象能力,適用於描述各種網路。 TCP / IP是首先開發TCP / IP模型的協議。
7. OSI參考模型的概念明顯不同,但它過於復雜;雖然TCP / IP參考模型在服務,介面和協議之間的區別中不清楚,但功能描述和實現細節是混合的。
8. TCP / IP參考模型的網路介面層不是真實層; OSI參考模型的缺點是層數太多,劃分意義不大但增加了復雜性。
9.盡管OSI參考模型是樂觀的,但由於缺乏時間安排,該技術尚不成熟且難以實施;相反,雖然TCP / IP參考模型有許多令人不滿意的地方,但它非常成功。
㈣ 數據鏈路層的主要任務是什麼網路層的主要功能有哪些
1、數據鏈路層在物理層提供的服務的基礎上向網路層提供服務,其最基本的服務是將源自網路層來的數據可靠地傳輸到相鄰節點的目標機網路層。
為達到這一目的,數據鏈路必須具備一系列相應的功能,主要有:
(1)如何將數據組合成數據塊,在數據鏈路層中稱這種數據塊為幀(frame),幀是數據鏈路層的傳送單位;
(2)如何控制幀在物理信道上的傳輸,包括如何處理傳輸差錯,如何調節發送速率以使與接收方相匹配;
(3)以及在兩個網路實體之間提供數據鏈路通路的建立、維持和釋放的管理。
2、網路層的目的是實現兩個端系統之間的數據透明傳送,具體功能包括定址和路由選擇、連接的建立、保持和終止等。它提供的服務使傳輸層不需要了解網路中的數據傳輸和交換技術。如果您想用盡量少的詞來記住網路層,那就是「路徑選擇、路由及邏輯定址」。
(4)沒有鏈路層如何傳輸數據擴展閱讀
OSI模型有7層結構,每層都可以有幾個子層。 OSI的7層從上到下分別是 7應用層6表示層5 會話層 4傳輸層3網路層2數據鏈路層1物理層
1、應用層
與其它計算機進行通訊的一個應用,它是對應應用程序的通信服務的。例如,一個沒有通信功能的字處理程序就不能執行通信的代碼,從事字處理工作的程序員也不關心OSI的第7層。但是,如果添加了一個傳輸文件的選項,那麼字處理器的程序員就需要實現OSI的第7層。
2、表示層
這一層的主要功能是定義數據格式及加密。例如,FTP允許你選擇以二進制或ASCII格式傳輸。如果選擇二進制,那麼發送方和接收方不改變文件的內容。
如果選擇ASCII格式,發送方將把文本從發送方的字元集轉換成標準的ASCII後發送數據。在接收方將標準的ASCII轉換成接收方計算機的字元集。示例:加密,ASCII等。
3、會話層
它定義了如何開始、控制和結束一個會話,包括對多個雙向消息的控制和管理,以便在只完成連續消息的一部分時可以通知應用,從而使表示層看到的數據是連續的,在某些情況下,如果表示層收到了所有的數據,則用數據代表表示層。示例:RPC,SQL等。
4、傳輸層
這層的功能包括是否選擇差錯恢復協議還是無差錯恢復協議,及在同一主機上對不同應用的數據流的輸入進行復用,還包括對收到的順序不對的數據包的重新排序功能。示例:TCP,UDP,SPX。
5、網路層
這層對端到端的包傳輸進行定義,它定義了能夠標識所有結點的邏輯地址,還定義了路由實現的方式和學習的方式。為了適應最大傳輸單元長度小於包長度的傳輸介質,網路層還定義了如何將一個包分解成更小的包的分段方法。示例:IP,IPX等。
6、數據鏈路層
它定義了在單個鏈路上如何傳輸數據。這些協議與被討論的各種介質有關。示例:ATM,FDDI等。
數據鏈路層:是為了提供功能上和規程上的方法,以便建立、維護和釋放網路實體間的數據鏈路 。
物理鏈路(物理線路):是由傳輸介質與設備組成的。原始的物理傳輸線路是指沒有採用高層差錯控制的基本的物理傳輸介質與設備。
數據鏈路(邏輯線路):在一條物理線路之上,通過一些規程或協議來控制這些數據的傳輸,以保證被傳輸數據的正確性。實現這些規程或協議的硬體和軟體加到物理線路,這樣就構成了數據鏈路。從數據發送點到數據接收點(點到點 point to point)所經過的傳輸途徑。
當採用復用技術時,一條物理鏈路上可以有多條數據鏈路。
7、物理層
OSI的物理層規范是有關傳輸介質的特性標准,這些規范通常也參考了其他組織制定的標准。連接頭、幀、幀的使用、電流、編碼及光調制等都屬於各種物理層規范中的內容。物理層常用多個規范完成對所有細節的定義。示例:Rj45,802.3等。
參考資料來源:網路—網路層
參考資料來源:網路—數據鏈路層