㈠ 關於網路通信原理的困惑,求網路達人賜教,萬分感謝!!!
首先說明一下,OSI七層模型是一種思想、思路,是各廠商開發軟體時遵循的通用標准。它詮釋了數據通信的過程。它是個抽象的概念。
回答1:既不是操作系統的TCP/IP協議也不是是網路設備。因為這兩個只是完成7層中的某個功能。tcp(a和b兩台電腦的虛通道建立)工作在傳輸層,ip(路由轉發)工作在網路層。而網路設備。比如路由器(三層交換機也有這個功能,只是和路由器的側重點不一樣)只把數據解析到第三層,在第三層封裝後的數據叫做包。而二層交換機只把數據解析到第二層,在第二層封裝後的數據包叫做幀。
回答2:物理層也就是第一層,處理的數據是比特流。而「本地連接」是工作在應用層也就是第7層。一塊乙太網網卡包括OSI(開方系統互聯)模型的兩個層。物理層和數據鏈路層。物理層定義了數據傳送與接收所需要的電與光信號、線路狀態、時鍾基準、數據編碼和電路等,並向數據鏈路層設備提供標准介面。數據鏈路層則提供定址機構、數據幀的構建、數據差錯檢查、傳送控制、向網路層提供標準的數據介面等功能。
回答3:其實數據鏈路層是把網路層的數據加上頭和尾形成幀再交付給物理層。這就是封裝。
之所以要加上頭和尾是因為物理層只管電信號,必須要有一個特殊的電信號告訴物理層這是一個幀的開始和結尾。
一般頭和尾的電信號是連續的10101010這樣的形式,當物理層接收到信號後,知道這是一個幀來了,經過模數轉換後交付給數據鏈路層,數據鏈路層剝離頭和尾把數據交付給上面的網路層,這就是解封裝的過程。
其實網路的七層結構基本上都是封裝和解封裝的過程,上層數據下來的時候就給他加特定的頭,相當於裝了個信封,就這樣一層層的裝下來。下層的數據送到上層就一層層的剝離頭(信封),直到最後沒有信封得到最終的數據為止。
數據封裝的原理:
數據封裝是指將協議數據單元(PDU)封裝在一組協議頭和尾中的過程。在OSI7層參考模型中,每層主要負責與其它機器上的對等層進行通信。該過程是在「協議數據單元」(PDU)中實現的,其中每層的PDU一般由本層的協議頭、協議尾和數據封裝構成。
每層可以添加協議頭和尾到其對應的PDU中。協議頭包括層到層之間的通信相關信息。協議頭、協議尾和數據是三個相對的概念,這主要取決於進行信息單元分析的各個層。例如,傳輸頭(TH)包含只有傳輸層可以看到的信息,而位於傳輸層以下的其它所有層將傳輸頭作為各層的數據部分進行傳送。在網路層,一個信息單元由層3協議頭(NH)和數據構成;而數據鏈路層中,由網路層(層3協議頭和數據)傳送下去的所有信息均被視為數據。換句話說,特定OSI層中信息單元的數據部分可能包含由上層傳送下來的協議頭、協議尾和數據。
例如,如果計算機A要將應用程序中的某數據發送至計算機B應用層。計算機A的應用層聯系任何計算機B的應用層所必需的控制信息,都是通過預先在數據上添加協議頭。結果信息單元,其包含協議頭、數據、可能包含協議尾,被發送至表示層,表示層再添加為計算機B的表示層所理解的控制信息的協議頭。信息單元的大小隨著每一層協議頭和協議尾的添加而增加,這些協議頭和協議尾包含了計算機B的對應層要使用的控制信息。在物理層,整個信息單元通過網路介質傳輸。
計算機B中的物理層接收信息單元並將其傳送至數據鏈路層;然後B中的數據鏈路層讀取包含在計算機A的數據鏈路層預先添加在協議頭中的控制信息;其次去除協議頭和協議尾,剩餘部分被傳送至網路層。每一層執行相同的動作:從對應層讀取協議頭和協議尾,並去除,再將剩餘信息發送至高一層。應用層執行完後,數據就被傳送至計算機B中的應用程序接收端,最後收到的正是從計算機A應用程所發送的數據。
網路分層和數據封裝過程看上去比較繁雜,但又是相當重要的體系結構,它使得網路通信實現模塊化並易於管理。
解封裝正好是封裝的反向操作,把封裝的數據包還原成數據.
希望對你有幫助,如果你還困惑,建議你看一下網路工程師教程。
㈡ 一對一直播源碼開發,即時通訊技術實現有哪幾種選擇
在一對一直播交友源碼的開發過程中,即時通訊是最關鍵的功能之一。那一對一直播源碼系統是如何實現即時通訊的呢?
即時通訊就是實時語音文字視頻等交流,實現即時通訊目前有四種方式:短輪詢、長輪詢、SSE、websocket,接下來我們來按順序簡單了解一下。
(1)短輪詢
即每隔一小段時間就發送一個請求到伺服器,伺服器返回最新數據然後客戶端根據獲得的數據來更新界面,這樣就間接地實現了即時通信。這一方式的優點是簡單,缺點是對伺服器的壓力較大,浪費帶寬的流量,但通常情況下數據都是沒有發生改變的。
(2)長輪詢
即客戶端發送一個請求到伺服器,然後伺服器查看客戶端請求的數據(就是伺服器中的數據)是否發生變化,如果發生變化,就會立即響應返回,否則保持這個鏈接並定期檢查最新數據,直到發生了數據更新或者連接超時。因此,客戶端連接一旦斷開,就會再次發出請求,這樣一來,在相同的時間內大大減少了客戶端請求伺服器的次數。這一方式有一個弊端:伺服器長時間的連接會消耗資源,返回數據的順序無法保證,管理和維護困難。
(3)SSE
即伺服器推送事件,為了解決瀏覽器只能夠單向傳輸數據到服務端,HTML5提供了一種新的技術叫做伺服器推送事件SSE。SSE技術提供的是從伺服器單向推送數據給瀏覽器的功能,但是配合瀏覽器主動請求,實際上就是實現客戶端與伺服器之間的雙向通信。
(4)Websocket
在HTML5中,為了加強web的功能,提供了websocket技術,它不僅是一種web通信方式,也是一種應用層協議。它提供了瀏覽器和伺服器之間原生的全雙工跨域通信。通過瀏覽器和伺服器之間所建立的websocket連接,在同一時刻能夠實現客戶端到伺服器和伺服器到客戶端的數據發送。
㈢ 通信原理中,怎樣根據絕對碼寫出相對碼請舉例說明
比方說絕對碼是11001011000
那麼相對碼分兩種,如果以0為基準,那麼用0去和絕對碼第一個去比較,發現不一樣,那麼就得到相對碼下一個一個是「1」;這時用新得到的數「1」去和絕對碼第二個比較,一樣就得「0」;再用這個去和絕對碼第三個比較,又一樣,再的「0」;依次類推。
最後結果為10001101111,以1為基準的話,道理一樣,就不慢慢寫了,結果為01110010000。
傳輸媒質為導線、電纜、光纜、波導、納米材料等形式的通信,其特點是媒質能看得見,摸得著(明線通信、電纜通信、光纜通信、光纖光纜通信)。
(3)通信技術源碼轉化相對碼擴展閱讀
在各種各樣的通信方式中,利用「電」來傳遞消息的通信方法稱為電信(Telecommunication),這種通信具有迅速、准確、可靠等特點,且幾乎不受時間、地點、空間、距離的限制,因而得到了飛速發展和廣泛應用。
在現今因電波的快捷性使得從遠古人類物質交換過程中就結合文化交流與實體經濟不斷積累進步的實物性通信(郵政通信)被人類理解為制約經濟發展的阻礙。
在古代,人類通過驛站、飛鴿傳書、烽火報警、符號、身體語言、眼神、觸碰等方式進行信息傳遞。
在現代科學水平的飛速發展,相繼出現了無線電、固定電話、行動電話、互聯網甚至視頻電話等各種通信方式。通信技術拉近了人與人之間的距離,提高了經濟的效率,深刻地改變了人類的生活方式和社會面貌。
㈣ 通信原理中設絕對碼全1111 1111,0000 0000,1001 1010求相對碼
相對碼的碼反變換規則為 「比較相對碼本碼元與前一碼元 電位相同 絕對碼為0,否則為1」
假設參考的初始電位都是0
第一題 1111 1111
所以絕對碼為 1000 0000
第二題 0000 0000
所以絕對碼為 0000 0000
第三題 1001 1010
所以絕對碼為 1101 0111
嘿嘿 概念的東西有點記不咋個清楚了 有問題追問哈~
㈤ 通信原理中,怎樣根據絕對碼寫出相對碼請舉例說明
比方說
絕對碼是11001011000(隨手寫的啊)
那麼相對碼分兩種
如果以0為基準,那麼用0去和絕對碼第一個去比較,發現不一樣,那麼就得到相對碼下一個一個是「1」;這時用新得到的數「1」去和絕對碼第二個比較,一樣就得「0」;再用這個去和絕對碼第三個比較,又一樣,再的「0」;依次類推。
最後結果為10001101111
以1為基準的話,道理一樣,就不慢慢寫了,結果為01110010000
㈥ 通信原理中絕對碼和相對碼是干什麼的為什麼要引進這兩個概念
用來解決相位模糊。
解調的話,可以先按相對碼來解,再變換成絕對碼。
還有一種差分相干解調方式。
通原書上都有,好好看看書就明白了。
㈦ VB RS485代碼
不是很繁瑣,有差異,這個是原先的一個老答案,應該對你有幫助
根據協議來的,485匯流排設備是帶有地址碼的,打個比方吧,232串口通信就是兩個人通過電話進行通信,肯定只能點對點,而485則是教室裡面一個老師和很多個學生交談,當老師(主控設備)點名(即輪詢到某個485地址碼)要求某個學生(從設備)回答問題,這個學生如果沒有翹課(從設備故障或者通信故障)的話,就應答站起來回答問題。在老師點名,學生答問的過程中,都是只有一個人發言,因為485匯流排有這樣的仲裁機制,所以才可以實現點到多點的通信,而232的則沒有這個機制,所以不行。不知道這樣是否清楚。
㈧ DPSK數字通信系統的輸入數據為110100010110,求相對碼(相對碼的第一個比特設為1)
1 0 1 1 0 0 0 0 1 1 0 1 1 絕對碼的第一位和相對碼第一位(1)異或得到相對碼第二位,絕對碼的第二位和相對碼第二位異或得到相對碼第三位,以此往後推即可
㈨ 《Visual+C++_Turbo+C串口通信編程實踐》與《Visual C++串口通信技術詳解》哪本內容好,望高手指點一下
我用的是《Visual+C++_Turbo+C串口通信編程實踐》,感覺還好,串口編程時遇到的問題基本都有。