[發明專利]一種基于Socket協議的數據傳輸容錯系統無效
| 申請號: | 201110278635.4 | 申請日: | 2011-09-20 |
| 公開(公告)號: | CN103023602A | 公開(公告)日: | 2013-04-03 |
| 發明(設計)人: | 王志剛 | 申請(專利權)人: | 鎮江雅迅軟件有限責任公司 |
| 主分類號: | H04L1/00 | 分類號: | H04L1/00;H04L29/06;H04L29/08 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 212009 江蘇省鎮江市丁卯*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 socket 協議 數據傳輸 容錯 系統 | ||
技術領域
本發明涉及一種數據傳輸容錯系統,尤其是一種基于Socket協議的數據傳輸容錯系統。本發明屬于通信技術領域。
背景技術
隨著互聯網技術的發展,目前越來越多的應用都需要在網絡中傳輸數據,而各種應用間內的數據交互的準確性是一個十分重要的問題,對于用戶來說數據就是企業的生命線,數據傳輸的安全性,數據傳輸的準確性,對數據在傳輸過程中丟失,或者數據傳輸錯誤,系統能否自動容錯都是現在需要重要解決的一個問題。
數據傳輸的方法也越來越受到軟件開發人員的重視,目前數據傳輸的手段是大都是通過TCP協議或者UDP協議來進行數據的傳輸,UDP協議不提供數據包分組、組裝和不能對數據包進行排序的缺點,也就是說,當報文發送之后,是無法得知其是否安全完整到達的,TCP協議通過三個報文段完成連接的建立,這個過程稱為三次握手(three-way?handshake)。第一次握手:建立連接時,客戶端發送SYN包(SEQ=x)到服務器,并進入SYN_SEND狀態,等待服務器確認。第二次握手:服務器收到SYN包,必須確認客戶的SYN(ACK=x+1),同時自己也送一個SYN包(SEQ=y),即SYN+ACK包,此時服務器進入SYN_RECV狀態。第三次握手:客戶端收到服務器的SYN+ACK包,向服務器發送確認包ACK(ACK=y+1),此包發送完畢,客戶端和服務器進入Established狀態,完成三次握手。雖然TCP協議比UDP協議在傳輸的準確性上有了很大的提高,但是如果在傳輸過程中出錯,TCP協議是無法解決的。
現有的技術存在如下的弊端:一是通過現有技術仍然只能采用先建立連接的方法來確定數據傳輸的準確性,對數據包的檢驗比較弱。在多播廣播中還可能使數據包發生串包。導致接收到的數據不準確甚至接收到錯誤的數據。UDP協議不提供數據包分組、組裝和不能對數據包進行排序的缺點,也就是說,當報文發送之后,是無法得知其是否安全完整到達的。TCP協議雖然彌補了UDP協議的不足,但是也只能確定數據是否能正常的傳輸到目的地,對數據的準確性不進行驗證,遇到錯誤的數據包也不能自動的修復。對錯誤的數據只能響應接收,不能再請求服務器發送正確的數據。雖然在傳輸數據的過程中可以通過某些組件來完成數據的容錯性,但是通過第三方組件會使原本的協議高傳輸效率這一特點大大折扣,而且相同的組件對不同的系統支持的程序也不相同,導致兼容性差、系統間的數據傳輸速度慢,達不到數據傳輸的最佳效果。
本發明要解決的問題是提供一種數據傳輸容錯方法,通過Socket技術中的數據緩存機制對數據進行校驗、容錯,并將正確的數據包發響應到相應的地點。對傳輸過程中的數據包丟失或數據包錯誤能及時的將消息發送給服務器端并要求重新接收數據,在數據的傳輸過程中就能對正確的數據和錯誤的數據進行并行處理。保證到達目的地的數據的準確性。顯然,本發明更能方便、有效、安全的傳輸數據。
發明內容
本發明的目的在于:針對以上現有技術存在的不足,提供一種基于Socket協議的數據傳輸容錯系統,以克服現有技術中數據傳輸準確性不夠的問題。為了達到以上目的,本發明包含如下組成部分:
建立模塊——建立基于Socket協議的通訊模式,并且驗證連接是否可用;
生成模塊——定義數據交換過程中的數據包格式,數據包格式有3部分組成:協議頭、功能碼、數據(請求或接收的數據),并且對每個數據包的協議頭進行定義,并將數據包封裝到寄存器中;
緩沖處理模塊——采用寄存器技術對服務器端和客戶端的數據進行緩沖處理;
為實現本發明的功能,上述功能模塊還包括如下子模塊:
建立通訊模塊——建立連接模塊和驗證連接模塊
——通過建立連接子模塊,將服務器和客戶端建立連接。
——通過驗證連接子模塊,在服務器和客戶端建立連接后,自動識別服務器和客戶端間的是否正常,若連接異常,將斷開連接,重新建立連接。
生成模塊——拆分子模塊、定義協議頭子模塊、定義功能碼子模塊、數據封裝子模塊
——按照數據大小將數據拆分成各個數據包。
——定義協議頭,協議頭主要有事務ID標識、數據包大小。
——定義2個功能碼(十進制):1、讀取寄存器里的值,2、寫入寄存器里的值。
——對數據進行數據包封裝,存儲到寄存器中。
緩沖處理模塊——Socket緩沖區驗證子模塊、并行處理子模塊
——通過Socket緩沖區驗證子模塊,驗證數據包中包含寄存器的數量,計算從服務器端返回數據的大小,進行驗證。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于鎮江雅迅軟件有限責任公司,未經鎮江雅迅軟件有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110278635.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種辦公桌用保護罩
- 下一篇:一種抽屜組件及抽屜及托板組件





