網路資料傳輸需要注意的兩個問題

2021-07-23 22:40:40 字數 1177 閱讀 8947

網路資料傳輸需要注意兩個問題:一是大小端機器的問題;二是資料校驗問題。

所謂大小端問題是指資料傳送端和資料接收端有可能是不同的

cpu儲存模式(大端模式或小端模式),比如當大端機器給小端機器傳送機器,如果小端機器考慮和傳送端的不同就直接處理,那麼小端處理的資料將是混亂。如何解決這個問題呢?一種思路是在傳送資料時傳送端先檢查傳送端是大端還是小端,然後將儲存模式作為傳送資料的一部分告訴資料接收端,資料接收端也獲取自身的儲存模式,如果它和資料傳送端機器的儲存模式是一樣的,那就不用特殊處理,如果不一樣,則要先進行大小端資料的轉換。

第二個問題是資料校驗問題。計算機網路體系結構

(architecture

)劃分為以下七層:

物理層:

將資料轉換為可通過物理介質傳送的電子訊號

相當於郵局中的搬運工人。

資料鏈路層

: 決定訪問網路介質的方式在此層將資料分幀,並處理流控制。本層

指定拓撲結構並提供硬體尋

址。相當於郵局中的裝拆箱工人

網路層:

使用權資料路由經過大型網路

相當於郵局中的排序工人

傳輸層:

提供終端到終端的可靠連線

相當於公司中跑郵局的送信職員

會話層:

允許使用者使用簡單易記的名稱建立連線

相當於公司中收寄信、寫信封與拆信封的秘書

表示層:

協商資料交換格式

相當公司中演示文稿老闆、替老闆寫信的助理

應用層:

使用者的應用程式和網路之間的介面老闆

那麼問題來了,在應用層中如何保證傳輸資料的準確性和完整性呢?比如要傳輸乙個大檔案,往往要分多次傳輸,最後肯定要保證接收端收到檔案的完整性,又比如網銀轉賬,需要保證轉賬金額在服務端和客戶端的一致。因為應用層不能保證硬體,也不能保證網路服務,比如不能保證硬體是否做了手腳,也不能保證資料被中途截獲並做了篡改。要解決問題就需要在要傳輸的資料加入乙個校驗碼,這個校驗碼是用於保證資料接收的準確性的。它是如何保證的呢?就是資料傳送端和資料接收端產生的校驗碼的方式只有雙方才知曉,比如方式可以是要傳輸的資料再加一段常量字串產生的乙個

md5碼,資料傳送端產生這個

md5碼,客戶端收到資料後再產生這個

md5碼,只有這兩個

md5碼一致才表示接收到的資料是完整準確的。

參考文獻:

1. osi

模型

VC 對話方塊間資料傳輸 兩個類資料傳輸

1 首先先建立兩個dialog 乙個叫dlg1 還有乙個叫dlg2 在dlg1 裡面宣告乙個 cstring 型別static 的變數 static cstring dlg1data 2 分別在對話方塊上面建立乙個文字框,和乙個按鈕 和乙個定時器 第乙個對話方塊中文字框的內容是要傳送的,按鈕是可以定...

兩個fragment之間資料傳輸

最近要折騰兩個fragment之間傳資料的問題,在網上看了很多文章,基本都是使用兩種方法 1,兩個fragment之間使用getfragmentmanager begintransaction replace r.id realtabcontent 容器 myjdeditfragment 要跳轉的f...

網路資料傳輸的原理

線纜中的電壓是在高低狀態之間進行變化的。因而,二進位制1是通過產生乙個正電壓來傳輸的,而二進位制0是通過產生乙個負電壓來傳輸的。數字服務可以比模擬服務提供更高的可靠性,特別是對於長途情況更是如此。如果這個訊號需要放大,數碼訊號只需要簡單地再生就行了。與此相反,模擬訊號在長途情況下需要一級級放大,而且...