<listing id="vjp15"></listing><menuitem id="vjp15"></menuitem><var id="vjp15"></var><cite id="vjp15"></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><menuitem id="vjp15"></menuitem></video></cite>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<menuitem id="vjp15"><strike id="vjp15"></strike></menuitem>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"></strike></var>
<var id="vjp15"></var>
<var id="vjp15"></var>
<var id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></var>
<menuitem id="vjp15"></menuitem><cite id="vjp15"><video id="vjp15"></video></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></cite>
<var id="vjp15"></var>
<var id="vjp15"></var>
<menuitem id="vjp15"><span id="vjp15"><thead id="vjp15"></thead></span></menuitem>
<cite id="vjp15"><video id="vjp15"></video></cite>
<menuitem id="vjp15"></menuitem>

一種基于數據單元的數據傳輸方法

文檔序號:8006321閱讀:392來源:國知局
一種基于數據單元的數據傳輸方法
【專利摘要】本發明公開了一種基于數據單元的數據傳輸方法,包括:定義數據單元步驟;在發送端和接收端定義相同數據流結構體步驟;數據流組包步驟;數據流發送和接收步驟;數據流解析步驟。本發明的有益效果為:1)外層通信協議在發送端和接收端雙方達成共識即可,數據協議為一種固定規則,不需要傳輸,任意擴展。2)數據結構體定義簡單,每個數據單元內碼和數據單元數據結對形成獨立的數據體,且當結構體內包含多個數據體時,排序也不受順序限制。3)數據結構體可根據需求,靈活伸縮和擴展數據體。
【專利說明】一種基于數據單元的數據傳輸方法
【技術領域】
[0001]本發明涉及數據通信領域,尤其涉及一種基于數據單元的數據傳輸方法。
【背景技術】
[0002]數據通信是依照一定的通信協議,利用數據傳輸技術在兩個終端之間傳遞數據信息的一種通信方式和通信業務。它可實現計算機和計算機、計算機和終端以及終端與終端之間的數據信息傳遞。
[0003]現有技術中,數據通信協議是準確有效地進行通信所必須遵循的規則和約定,但是采取通信協議有以下缺點:
1)打包協議和解析協議必須嚴格對應,否則導致解析錯誤
2)擴展性差:如協議增加或減少項目,則打包協議和解析協議必須同時更新
3)解析邏輯重用性差。
[0004]如果能提供一種方便的數據傳輸的方法,將是十分有意義的。

【發明內容】

[0005]為解決上述問題,本發明提出了一種基于數據單元的數據傳輸方法,包括:
定義數據單元步驟;
在發送端和接收端定義相同數據流結構體步驟;
數據流組包步驟;
數據流發送和接收步驟;
數據流解析步驟;
其中,所定義的數據單元包含數據、數據名稱、代表數據名稱的數據內碼、數據長度、數據解析方法;
數據流結構體定義了外層通信協議和內層數據體,所述外層通信協議定義了數據流的開始標識及其數據長度、結束標識及其數據長度,所述內層數據體位于開始標識及結束標識之間,按照數據內碼及數據成對出現;
所述數據流組包的步驟是將待傳輸數據單元按照數據結構體進行組裝成數據包;
所述數據流的解析是根據定義的數據流結構體對數據流進行解析。
[0006]本發明的有益效果為:
I)外層通信協議在發送端和接收端雙方達成共識即可,數據協議為一種固定規則,不需要傳輸,縮短了數據流的長度,且可任意擴展。
[0007]2)數據結構體定義簡單,每個數據單元內碼和數據單元數據結對形成獨立的數據體,且當數據體內的數據內碼及數據對具有多個時,排序也不受順序限制。
[0008]3)數據結構體可以靈活擴展,增添數據,并也可根據需求,靈活伸縮和擴展數據包。
[0009]4)可根據數據包,自動解析和運算。[0010]5)以數據單元為解析單元,方便更新維護擴展解析邏輯。
【具體實施方式】
[0011]下面對本發明技術方案進行詳細說明。
[0012]本發明基本思想使以單個數據單元為邏輯主體,主要包含的步驟包括:
定義數據單元步驟;
在發送端和接收端定義相同數據流結構體步驟;
數據流組包步驟;
數據流發送和接收步驟;
數據流解析的步驟。
[0013]下面對各步分別予以說明。
[0014]1.定義數據單元步驟
數據單元為本發明定義的系統最小數據體,包含待傳輸數據的全面信息,具體有、數據名稱、數據類型(如整形、字符型等)、數據長度、修正系數和/或修正偏移量、數據解析方法、用于系統區分不同數據信息的數據內碼。
[0015]如一個空氣檢測系統,需要把傳感設備采集的數據傳輸到上位機,傳輸的數據信息有設備編號,設備類型,空氣溫度,空氣濕度,則可將設備編號,設備類型,空氣溫度,空氣濕度分別定義為數據單元,如 下表所示:
【權利要求】
1.一種基于數據單元的數據傳輸方法,其特征在于,包括: 定義數據單元步驟; 在發送端和接收端定義相同數據流結構體步驟; 數據流組包步驟; 數據流發送和接收步驟; 數據流解析步驟; 其中,所定義的數據單元包含數據、數據名稱、代表數據名稱的數據內碼、數據長度、數據解析方法; 數據流結構體定義了外層通信協議和內層數據體,所述外層通信協議定義了數據流的開始標識及其數據長度、結束標識及其數據長度,所述內層數據體位于開始標識及結束標識之間,按照數據內碼及數據成對出現; 所述數據流組包的步驟是將待傳輸數據單元按照數據結構體進行組裝成數據包; 所述數據流的解析是根據定義的數據流結構體對數據流進行解析。
2.如權利要求1所述的一種基于數據單元的數據傳輸方法,其特征在于,所述數據單元還包括了數據類型和/或修正系數、修正偏移量。
3.如權利要求1或2所述的一種基于數據單元的數據傳輸方法,其特征在于,數據單元的解析方法是采取解析函數。
4.如權利要求1所述的一種基于數據單元的數據傳輸方法,其特征在于,所述數據流采取16進制字符串。
5.如權利要求1或2或4所述的一種基于數據單元的數據傳輸方法,其特征在于,所述數據流開始標識為7E,結束標識為21。
6.如權利要求1、2、4中任一項所述的一種基于數據單元的數據傳輸方法,其特征在于,所述數據流解析的步驟具體為: 步驟A:接收端校驗數據流開始標識及結束標識,如合法則進行下列步驟; 步驟B:將接受到的數據流換為字節數組byte□,其中byte[0]為開始標識,索引index 為 O ; 步驟C:索引index+開始標識數據長度,獲取第一個數據內碼。 步驟D:索引index+上步獲取數據內碼的長度,根據所述數據內碼對應的數據的長度,讀取指定長度數據。 步驟E:將步驟D獲取的數據內碼與數據保存。 步驟F:索引index+步驟D獲取數據的長度,獲取下一個數據內碼,如果下一數據為結束標識,則結束,否則重復步驟D、E0 步驟G:根據數據內碼,調用對應數據單元的數據解析方法解析數據。
7.如權利要求6所述的一種基于數據單元的數據傳輸方法,其特征在于,所述數據流解析的步驟中,接收端定義數據臨時存儲載體存儲數據及其對應的數據內碼。
8.如權利要求7所述的一種基于數據單元的數據傳輸方法,其特征在于,所述數據臨時存儲載體采用Dictionary〈int, object〉存儲。其中int記錄數據內碼,object記錄數據。
【文檔編號】H04L29/06GK103475651SQ201310394226
【公開日】2013年12月25日 申請日期:2013年9月3日 優先權日:2013年9月3日
【發明者】韋光亮, 王筱東, 羅明思, 李正 申請人:廣西慧云信息技術有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
韩国伦理电影