1樓:時雨
是不可靠的。
鏈路層在封幀時通過增加迴圈冗餘碼,在兩端進行校驗,可以實現差錯檢測,意思就是說接收端如果收到資料,那就一定是正確的資料(錯誤的被丟了),但並不能保證發動端傳送的資料全部都能被收到。
至於想實現可靠傳輸要依靠運輸層TCP協議來實現。
2樓:
鏈路層是不可靠的。
在光纖出現之前,鏈路上噪音是很大的,會帶來比較高的誤位元速率。然後通常會使用ECC技術,把誤位元速率降到一定值以下,但並不是零。而且,由於成本的原因,這個允許的誤碼值比較小但不是特別小。
過了這一關,鏈路層的任務就完成了,交給上一層。如果上層需要更低的誤位元速率,就由上層再想辦法處理。
光纖出現之後,就出現了大變化,光纖本身的誤位元速率非常低。這樣鏈路層就相當可靠,需要上層處理的概率就比較小。我估計這是IP層/TCP層的校驗碼比較弱但大家仍然滿意的乙個原因。
但整個廣域網不僅有光纖,還有很多電子裝置,總的來看,還不能說鏈路層絕對可靠。
3樓:tracy要開心
首先,network layer的傳輸是不可靠的,換言之,IP傳輸是不可靠的。而transport layer的TCP是可以實現可靠傳輸的。
其次,鏈路層也就是data link layer的傳輸更是不可靠的。
最後,幀填充,可以是IP在切片的時候,尾幀長度不夠,那麼可以理解成network layer做的填充,有效資料的最後乙個位元組是特殊字段。另外,也可以是物理層填充,在沒有路由器或者交換機的網路。
FYI: 最短幀的限制的歷史原因是802.3的CSMA/CD。
在shared networks,傳送幀的節點在傳送當前幀結束前,要求幀頭已經傳到了bus/hub互聯的每個節點,也就是propagation time less than transmission time. 這樣,傳送節點在檢測到collision的時候才能知道這是它發的幀和別人衝突了,因為它當前幀還沒發完。這也就要求節點是可以收發同時。
這也就多帶出了乙個概念,為什麼802.11協議不能用CDMA/CD,只能用CDMA/CA。
4樓:這是一種懷念
TCP/IP沒有規定鏈路層,現有的鏈路層和物理層協議一般是乙太網。TCP/IP協議簇關注的是網際互聯和應用到應用的通訊。所以TCP/IP協議簇嚴格來講只想解決互聯問題。
也就是各種不同體系結構的網路的互聯。只是目前網際網路的下兩層已經基本被乙太網占領,所以才會有一種鏈路層是TCP/IP一部分的錯覺。乙太網的鏈路層是不可靠的無連線無狀態的不可靠服務,這在乙太網幀格式上就表現出來了。
但是TCP可以實現可靠傳輸,雖然在底層沒有實現可靠鏈路。這主要是因為要實現可靠傳輸需要付出很大的代價,參考TCP協議的格式和運作方式就能明白。所以TCP/IP的核心思想是把複雜的東西放在端系統處理,其他地方盡量簡單。
這也是網路分層原理的魅力所在,把什麼問題放在什麼地方處理會更加高效合理。當然你也可以發明乙個不分層的網路體系。
5樓:馬甲
手機打字費力,先強答一點,占個坑。
TCP/IP 設計出來的時候就說的是 OSI 七層標準裡網路層以及以上的層。TCP/IP 設計的目的就是在各種不同的網路實體間互聯的。對於TCP/IP 來說,只要資料鏈路層能傳遞IP資料報就行。
也就是說,資料鏈路層既可以是可靠的,也可以是不可靠的。底層的事對上層來說是透明的,也就是無所謂的,能提供服務點就行。
6樓:車小胖
問題一:鏈路可靠性
總體來說,網線比無線可靠,但網線也不是100%可靠,在交換機的入埠錯誤統計上,CRC Error 一般都是名列前茅,造成CRC Error 的原因有:網絡卡的軟體故障、硬體故障、網線質量、訊號干擾。
曾經在資料中心裡,接入層的交換機某些入口有1.5%% 的CRC Error,先換網線,情況依然。到最後把伺服器重啟,CRC Error 消失,過幾天故障依然。
後來發現這種情況只發生在某個型號,特定版本的伺服器上,解決方案是公升級軟體版本,故障消失。
無線是很不可靠的,可以在電腦上ping 無線路由器,ping 100個包,一般都會丟幾個。造成丟失的原因:因為周圍有很多任務作在同乙個頻端的無線路由器,互相會干擾,造成無線訊號不可用,從而丟棄。
還有乙個原因,無線路由器與電腦之間有很多牆,訊號衰減很多,再加上干擾,最後變得面目可憎而被拋棄。
問題二:如何分幀?
首先乙太網幀是段狀結構,不是連續的,幀與幀之間有乙個時間間隙(Time Slot)
如上圖,這個Inter packet gap 就是間隙,在10/100/1000/10000 G的乙太網上,這12 byte 對應的是不同的時間間隙,速率越高,時間間隙越小。
問題三: 位填充
IP層做位填充
IP層處理IP包是以32 bit (4 byte)為乙個單位,所以IP包的總長度如果不是 4 byte 的整數倍,則需要填充至整數倍,填充內容為0x00(16進製制)。
網絡卡做位填充
乙太網幀如果長度小於64 byte(其中包括乙太網頭部14 byte,幀校驗FCS 4 byte),網絡卡需要將其填充到至少64 byte,滿足網絡卡對最小幀長度的限制。
假設IP層發給網絡卡的包長只有40 byte, 則網絡卡需要填充至少 6個 byte 的 0x00(16進製制)。
乙太網頭 + IP + 0x 00 00 00 00 00 00 + FCS
問題四:如何讓接收方知道位填充的長度?
IP包頭有IP包總長度,那位填充的長度就可以根據這個等式得到:
位填充長度 = 乙太網卡提交給IP層的包長 - IP包總長度
其中 乙太網卡提交給IP層的包長 = 網絡卡接收幀 - 乙太網幀頭 - FCS
7樓:張楊
網絡卡物理層會把bit轉為電訊號,網絡卡之間是有時鐘同步的,fram之間有間隔,為了把frame提出來,frame前還會有前導碼,到了TCPIP,前導碼會被剝離,拿到的就是鏈路層的幀。
對於多填充的幾個位元組,用wireshark抓包很容易看到,為了滿足鏈路層最小幀的限制,比較小的包,報文末尾會有4個0……這個4個0就是填充上去的。
8樓:陳碩
1. 不可靠。
2. 分幀是硬體完成的,例如乙太網是靠 frame 之間的 gap。
3. 接收端的網路層(IP 層)會丟棄多餘的填充位元組,因為 IP header 裡有長度字段。
雲服務是安全可靠的嗎?
偷故事的人 現在,雲服務越來越多,我們承認雲服務是有很多好處,但雲儲存也同樣存在著一些問題。下面是資料上雲儲存的幾個主要壞處 1.安全性與穩定性得不到保障 當企業實施資料上雲之後,必然要將資料從原來的主儲存系統遷移到新的雲儲存系統中,這個遷移的過程產生了極大的安全隱患,若操作不當可能導致企業資料丟失...
實際應用中,TCP IP協議棧是如何工作的?
清風竹影 看了一下目前的幾個回答,作為乙個自以為在這方面理解比較深的,從原理和自身的理解來直觀的問答一下 問題一 協議棧是分層的 對於流程分析基本是對的,但是原理還是有很大偏差。協議棧分層應該大家都知道,但是怎麼理解呢?傳送HTTP請求,應用層會向TCP層傳送資料報文。TCP層看到的是資料,它是根據...
請問pyqt的tcp ip程式設計怎麼學習?
ydc 你可以帶著思考來學習tcpip,機器無非就是乙個帶著unique id的節點,路由器等無非就是連線這些節點或者類似自身的中間節點。現在你要考慮以下問題 1 當節點加入或者離開時,你如何更新各中間節點的路由資訊?也就是如何更新圖的連線。2 如何管理路由資訊使得即便某些中間節點突然斷了,圖還是聯...