數據鏈路層的協議分析

數據鏈路層目的是建立在物理層基礎上,通過一些數據鏈路層協議,在不太可靠的物理鏈路上實現可靠的數據傳輸。即數據鏈路層提供網絡中相鄰節點之間可靠的數據通信。 

   數據鏈路層的主要功能是爲網絡層提供連接服務,並在數據鏈路連接上傳送幀。依據功能可以分爲有連接和無連接兩種。本實驗採用的是有應答,無連接服務。 無連接服務時,發送方的數據鏈路層要發送數據時,就直接發送數據幀。接收方的數據鏈路層能夠接受數據幀,或者收到的幀校驗正確,就像源主機數據鏈路層發送應答幀;不能接受或接受到的幀校驗不正確時,就返回否定應答,發送端要麼重發原幀,要麼進入等待狀態。

   在數據鏈路層主要是負責傳輸數據,有很多種協議,用的最多的是局域網中的以太網協議,和廣域網中的PPP協議,HDLC協議

    Ethereal軟件抓包原理

        1.首先數據會根據應用(比如WEB應用是採用TCP協議)進行傳輸層的封裝,封裝TCP的報文數據,而TCP報文是根據源,目端口通信的,也就是說此端口號來標識我們計算機應用層中哪個應用!比如我們的計算機發次HTTP連接,我們的計算機會隨機取一個端口號,而目的端口會封裝80(假如目的WEB服務器採用默認端口),目標主機收到此份數據,就會知道原來這份數據是交給我的HTTP應用的!

        2.再次進行網絡層的封裝,裏面會包含控制位,來說明此份數據報文是採用哪種傳輸層協議,比如TCP爲0X06,這裏會有源,目IP地址的封裝。

       3.最後進行數據鏈路層封裝,也就是2層,裏面會有TYPE字節來指示我上層封裝的是哪種網絡層協議,比如IP就爲0X0800,然後進行的源,目MAC地址封裝,此地址用來在以太網網絡中尋址的。

這樣一份數據包就完成了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章