本發(fā)明涉及數(shù)據(jù)交換技術(shù)領(lǐng)域,更具體地說,特別涉及一種數(shù)據(jù)打包交換的方法和系統(tǒng)。
背景技術(shù):為了實現(xiàn)物聯(lián)網(wǎng)和互聯(lián)網(wǎng)的數(shù)據(jù)交換,通常需要針對不同設(shè)備而開發(fā)專門的程序來實現(xiàn),在設(shè)備端和服務(wù)器端都需要制定專用的數(shù)據(jù)交換協(xié)議,這樣就會造成多種不同的設(shè)備需要重新定義數(shù)據(jù)交換協(xié)議和開發(fā)相應(yīng)的程序,從而造成人力、物力的重復(fù)。
技術(shù)實現(xiàn)要素:本發(fā)明的第一目的在于針對現(xiàn)有技術(shù)中的物聯(lián)網(wǎng)和互聯(lián)網(wǎng)的數(shù)據(jù)交換需要在設(shè)備端和服務(wù)器端指定專用的數(shù)據(jù)交換協(xié)議而存在人力、物力浪費的技術(shù)問題,提供一種數(shù)據(jù)打包交換的方法。本發(fā)明的第二目的在于提供一種實現(xiàn)上述方法的系統(tǒng)。為了達到上述第一目的,本發(fā)明采用的技術(shù)方案如下:S1、源終端按照第一數(shù)據(jù)交換功能指令組包,發(fā)送調(diào)度請求給服務(wù)端系統(tǒng);所述的第一數(shù)據(jù)交換功能指令為終端認證請求指令;S2、服務(wù)端系統(tǒng)接收并處理上述的調(diào)度請求,再返回一可用的交換節(jié)點服務(wù)器地址給源終端或返回一請求失敗的信息給源終端;S3、若為步驟S2中所述的返回一可用的交換節(jié)點服務(wù)器地址給源終端,即源終端按照第二數(shù)據(jù)交換功能指令組包,向服務(wù)端系統(tǒng)的交換節(jié)點服務(wù)器地址發(fā)送數(shù)據(jù)包;所述的第二數(shù)據(jù)交換功能指令為發(fā)送接收數(shù)據(jù)指令,請求數(shù)據(jù)指令,發(fā)送狀態(tài)指令,發(fā)送時間校驗指令,或接收控制指令中的任一項;S4、服務(wù)端系統(tǒng)的交換節(jié)點服務(wù)器處理步驟S3中的數(shù)據(jù)包,并發(fā)送給至少一個目標終端;其中,所述源終端組包的數(shù)據(jù)格式包括包頭、包體以及校驗位;且所述包頭包括同步幀、源終端編碼、目標終端編碼、接收確認、功能號、發(fā)送包號、應(yīng)答包號以及包長度;所述包體包括包內(nèi)容;所述校驗位包括校驗和;其中:所述同步幀、源終端編碼、目標終端編碼、接收確認、功能號、發(fā)送包號、應(yīng)答包號和包長度分別為3個、12個、12個、1個、2個、4個、4個和4個字節(jié),所述包內(nèi)容為任意個字節(jié),所述校驗和為2個字節(jié)。優(yōu)選的,在步驟S1中,源終端按照終端認證請求功能指令組包,發(fā)送調(diào)度請求給服務(wù)端系統(tǒng);在步驟S2中,服務(wù)端系統(tǒng)接收并處理上述的調(diào)度請求,且服務(wù)端系統(tǒng)對源終端進行認證,如認證通過,則服務(wù)端系統(tǒng)分配一個可用的交換節(jié)點服務(wù)器地址給源終端并返回該交換節(jié)點服務(wù)器地址給源終端;如認證不通過,則返回一請求失敗的信息給源終端;在步驟S3中,當(dāng)所述第二數(shù)據(jù)交換功能指令為發(fā)送接收數(shù)據(jù)指令時,源終端按照發(fā)送接收數(shù)據(jù)指令組包,并發(fā)送至服務(wù)端系統(tǒng),以及,在步驟S4中,服務(wù)端系統(tǒng)的交換節(jié)點服務(wù)器把收到的數(shù)據(jù)包加入發(fā)送隊列,并將數(shù)據(jù)包處理發(fā)送給至少一個目標終端中,最后,至少一個目標終端向服務(wù)端系統(tǒng)返回數(shù)據(jù)分發(fā)完成結(jié)果;或者,在步驟S3中,當(dāng)所述第二數(shù)據(jù)交換功能指令為請求數(shù)據(jù)指令時,源終端按照請求數(shù)據(jù)功能指令組包,并發(fā)送至服務(wù)端系統(tǒng),以及,在步驟S4中,服務(wù)端系統(tǒng)查找目標終端,并重新對請求數(shù)據(jù)功能指令組包,發(fā)送至目標終端中,目標終端接收并處理數(shù)據(jù)包,返回內(nèi)容至服務(wù)端系統(tǒng),最后,服務(wù)端系統(tǒng)發(fā)送該內(nèi)容給源終端;或者,在步驟S3中,當(dāng)所述第二數(shù)據(jù)交換功能指令為發(fā)送狀態(tài)指令時,源終端按照發(fā)送狀態(tài)功能指令組包,并發(fā)送至服務(wù)端系統(tǒng),以及,在步驟S4中,服務(wù)端系統(tǒng)接收并處理源終端的設(shè)備狀態(tài)信息,最后,服務(wù)端系統(tǒng)將該信息反饋至源終端;或者,在步驟S3中,當(dāng)所述第二數(shù)據(jù)交換功能指令為發(fā)送時間校驗指令時,源終端按照發(fā)送時間校驗功能指令組包,并發(fā)送至服務(wù)端系統(tǒng),以及,在步驟S4中,服務(wù)端系統(tǒng)接收該時間校驗數(shù)據(jù)包,并返回結(jié)果至源終端中;或者,在步驟S3中,當(dāng)所述第二數(shù)據(jù)交換功能指令為接收控制指令時,服務(wù)端系統(tǒng)按照接收控制功能指令組包,并發(fā)送源終端,以及,在步驟S4中,源終端接收并處理該接收控制指令數(shù)據(jù)包,最后,源終端將處理后的數(shù)據(jù)包返回至服務(wù)端系統(tǒng)中。優(yōu)選的,所述源終端、目標終端與服務(wù)端系統(tǒng)之間的協(xié)議為TCP/IP協(xié)議,通訊模式為請求/應(yīng)答的同步/異步通訊模式。優(yōu)選的,在步驟S3中,所述源終端發(fā)出數(shù)據(jù)包后,若未收到響應(yīng)或該源終端發(fā)送不成功,則該源終端間隔T秒后重新發(fā)送該數(shù)據(jù)包;若源終端重新發(fā)送N次后,均未收到響應(yīng)或該源終端發(fā)送不成功,則放棄發(fā)送;且所述T=30,N=3。優(yōu)選的,所述源終端、目標終端與服務(wù)端系統(tǒng)之間采用并發(fā)方式發(fā)送數(shù)據(jù)包,且所述源終端或目標終端在每次應(yīng)答前均接收不超過10個數(shù)據(jù)包。優(yōu)選的,所述源終端每隔30秒向服務(wù)端系統(tǒng)發(fā)送時間校驗包。為了達到上述第二目的,本發(fā)明采用的技術(shù)方案如下:一種數(shù)據(jù)打包交換的系統(tǒng),其包括,源終端,用于裝載待發(fā)送的數(shù)據(jù);目標終端,用于接收從源終端發(fā)送的數(shù)據(jù);服務(wù)端系統(tǒng),用于將源終端的數(shù)據(jù)發(fā)送至目標終端;所述服務(wù)端系統(tǒng)分別與所述源終端和目標終端連接。優(yōu)選的,所述服務(wù)端系統(tǒng)包括,管理配置模塊,用于后臺界面的管理;交換模塊,用于為源終端或目標終端提供數(shù)據(jù)的接收和發(fā)送;調(diào)度模塊,用于對源終端或目標終端進行調(diào)度,分配交換模塊的地址給源終端或目標終端;認證模塊,用于對源終端或目標終端進行認證、授權(quán);監(jiān)控模塊,用于實時監(jiān)控源終端、目標終端和服務(wù)端系統(tǒng)端的運行狀態(tài),提供預(yù)警通知功能;日志記錄模塊,用于記錄系統(tǒng)運行中的日志記錄;所述調(diào)度模塊、交換模塊、認證模塊、監(jiān)控模塊以及日志記錄模塊均與管理配置模塊連接。與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于:針對物聯(lián)網(wǎng)和互聯(lián)網(wǎng)的數(shù)據(jù)交換建立一套通用的數(shù)據(jù)交換方法和系統(tǒng),使得物聯(lián)網(wǎng)的所有設(shè)備類型都可以采用統(tǒng)一的數(shù)據(jù)交換方法,進而減少了人力和物力的浪費。附圖說明下面結(jié)合附圖和實施例對本發(fā)明作進一步說明。圖1是本發(fā)明的數(shù)據(jù)打包交換的方法流程圖。圖2是本發(fā)明的數(shù)據(jù)打包交換的具體方法流程圖。圖3是本發(fā)明的數(shù)據(jù)打包交換的方法中的發(fā)送和處理終端認證請求指令的過程圖。圖4是本發(fā)明的數(shù)據(jù)打包交換的方法中的發(fā)送和處理發(fā)送接收數(shù)據(jù)指令的過程圖。圖5是本發(fā)明的數(shù)據(jù)打包交換的方法中的發(fā)送和處理請求數(shù)據(jù)指令的過程圖。圖6是本發(fā)明的數(shù)據(jù)打包交換的方法中的發(fā)送和處理發(fā)送狀態(tài)指令的過程圖。圖7是本發(fā)明的數(shù)據(jù)打包交換的方法中的發(fā)送和處理發(fā)送時間校驗指令的過程圖。圖8是本發(fā)明的數(shù)據(jù)打包交換的方法中的發(fā)送和處理接收控制指令的過程圖。圖9是本發(fā)明的數(shù)據(jù)打包交換的系統(tǒng)的方框圖。附圖標記說明:100、源終端,200、目標終端,300、服務(wù)端系統(tǒng),3001、管理配置模塊,3002、調(diào)度模塊,3003、交換模塊,3004、認證模塊,3005、監(jiān)控模塊,3006、日志記錄模塊。具體實施方式下面結(jié)合附圖和具體實施方式對本發(fā)明作進一步的詳細說明。參閱圖1-2所示,一種數(shù)據(jù)打包交換的方法,其包括以下步驟,第一步、源終端100按照第一數(shù)據(jù)交換功能指令組包,發(fā)送調(diào)度請求給服務(wù)端系統(tǒng)300;第二步、服務(wù)端系統(tǒng)300接收并處理上述的調(diào)度請求,再返回一可用的交換節(jié)點服務(wù)器地址給源終端100或返回一請求失敗的信息給源終端100;第三步、若為步驟S2中的返回一可用的交換節(jié)點服務(wù)器地址給源終端100,即源終端100按照第二數(shù)據(jù)交換功能指令組包,向服務(wù)端系統(tǒng)300的交換節(jié)點服務(wù)器地址發(fā)送數(shù)據(jù)包;第四步、服務(wù)端系統(tǒng)300的交換節(jié)點服務(wù)器處理步驟S3中的數(shù)據(jù)包,并發(fā)送給至少一個目標終端200。具體的,即是:首先,源終端100連接調(diào)度模塊3002,取得交換模塊3003的地址(即交換節(jié)點服務(wù)器地址);源終端100按照協(xié)議(即第二數(shù)據(jù)交換功能指令)把要發(fā)送的數(shù)據(jù)組包,然后,源終端100連接交換模塊3003,發(fā)送上述組包后的數(shù)據(jù)包;同時,交換模塊3003把收到的源終端100數(shù)據(jù)包加入發(fā)送隊列;最后,交換模塊3003將數(shù)據(jù)包發(fā)送到目標終端200。再具體的,上述第一步中的第一數(shù)據(jù)交換功能指令為終端認證請求指令;第三步中的第二數(shù)據(jù)交換功能指令為發(fā)送接收數(shù)據(jù)指令,請求數(shù)據(jù)指令,發(fā)送狀態(tài)指令,發(fā)送時間校驗指令,或接收控制指令中的任一項;在使用時,可以按照如下表1對各指令進行命名:表1功能指令表一般的,上述的源終端100組包的數(shù)據(jù)格式包括:包頭、包體以及校驗位;且包頭包括同步幀、源終端編碼、目標終端編碼、接收確認、功能號、發(fā)送包號、應(yīng)答包號以及包長度;包體包括包內(nèi)容;校驗位包括校驗和;其中:同步幀、源終端編碼、目標終端編碼、接收確認、功能號、發(fā)送包號、應(yīng)答包號和包長度分別為3個、12個、12個、1個、2個、4個、4個和4個字節(jié),包內(nèi)容為任意個字節(jié)(表示為N個),校驗和為2個字節(jié)。具體可以用下表2的數(shù)據(jù)包格式和表3的數(shù)據(jù)包格式布局來表示(其中,表格中的String表示數(shù)字、字母及其他字符):表2數(shù)據(jù)包格式表3數(shù)據(jù)包格式布局較佳的,上述的源終端100、目標終端200與服務(wù)端系統(tǒng)300之間的協(xié)議均為TCP/IP協(xié)議,即以TCP協(xié)議進行數(shù)據(jù)傳輸,而通訊模式為請求/應(yīng)答的同步/異步通訊模式。同時,源終端100發(fā)出數(shù)據(jù)包后,若未收到響應(yīng)或該源終端100發(fā)送不成功,則該源終端100間隔T秒后重新發(fā)送該數(shù)據(jù)包;且若源終端100重新發(fā)送N次后,均未收到響應(yīng)或該源終端100發(fā)送不成功,則源終端100放棄發(fā)送數(shù)據(jù)包;一般的,選擇T=30,N=3。為了提高數(shù)據(jù)包的發(fā)送效率,源終端100、目標終端200與服務(wù)端系統(tǒng)300之間采用并發(fā)方式發(fā)送數(shù)據(jù)包,同時加以滑動窗口流量控制,滑動窗口參數(shù)W可配置,建議W=10,即源終端100或目標終端200在每次應(yīng)答前均接收不超過10個數(shù)據(jù)包。下面再結(jié)合附圖3-圖8對不同的功能指令作具體描述,其中:定義源終端100或目標終端200向服務(wù)端系統(tǒng)300發(fā)送數(shù)據(jù)為上行的過程,而服務(wù)端系統(tǒng)300向源終端100或目標終端200發(fā)送數(shù)據(jù)即為下行的過程。參閱圖3所示,其為源終端100向服務(wù)端系統(tǒng)300終端發(fā)送認證請求指令,其具體的過程為:即在上述第二步中,服務(wù)端系統(tǒng)300接收并處理第一步中的調(diào)度請求,且服務(wù)端系統(tǒng)300對源終端100進行認證,如認證通過,則服務(wù)端系統(tǒng)300分配一個可用的交換節(jié)點服務(wù)器地址給源終端100并返回該交換節(jié)點服務(wù)器地址給源終端100;如認證不通過,則返回一請求失敗的信息給源終端100。該過程如按表3的數(shù)據(jù)包格式布局來表示其上行、下行,可用下表4、表5來表示:表4終端認證上行表5終端認證下行參閱圖4所示,其為源終端100和目標終端200之間發(fā)送接收數(shù)據(jù)指令,其具體的過程為:即在上述第三步中,當(dāng)?shù)诙?shù)據(jù)交換功能指令為發(fā)送接收數(shù)據(jù)指令時,源終端100按照發(fā)送接收數(shù)據(jù)指令組包,并發(fā)送至服務(wù)端系統(tǒng)300,而在第四步中,服務(wù)端系統(tǒng)300的交換節(jié)點服務(wù)器把收到的數(shù)據(jù)包加入發(fā)送隊列,并將數(shù)據(jù)包處理發(fā)送給至少一個目標終端200中,最后,至少一個目標終端200向服務(wù)端系統(tǒng)300返回數(shù)據(jù)分發(fā)完成結(jié)果。該過程如按表3的數(shù)據(jù)包格式布局來表示其上行、下行;在發(fā)送數(shù)據(jù)時,可用下表6、表7來表示,在接收數(shù)據(jù)時,可用下表8、表9來表示:表6發(fā)送數(shù)據(jù)上行序號域名長度類型描述1同步幀3StringUPO2源終端編碼12String3目的終端編碼12String4接收確認1String5功能號2String216發(fā)送包號4String7應(yīng)答包號4String00008包長度4String9包內(nèi)容NString要傳輸?shù)臄?shù)據(jù),自定義格式10校驗和2String表7發(fā)送數(shù)據(jù)下行表8接收數(shù)據(jù)下行序號域名長度類型描述1同步幀3StringODW2源終端編碼12String3目的終端編碼12String當(dāng)前終端編碼4接收確認1String5功能號2String216發(fā)送包號4String7應(yīng)答包號4String00008包長度4String9包內(nèi)容NString要傳輸?shù)臄?shù)據(jù),自定義格式10校驗和2String表9接收數(shù)據(jù)上行參閱圖5所示,其為源終端100和目標終端200之間的請求數(shù)據(jù)指令,其具體的過程為:即在上述第三步中,當(dāng)?shù)诙?shù)據(jù)交換功能指令為請求數(shù)據(jù)指令時,源終端100按照請求數(shù)據(jù)功能指令組包,并發(fā)送至服務(wù)端系統(tǒng)300;在第四步中,服務(wù)端系統(tǒng)300查找目標終端200,并重新對請求數(shù)據(jù)功能指令組包,發(fā)送至目標終端200中,目標終端200接收并處理數(shù)據(jù)包,返回內(nèi)容至服務(wù)端系統(tǒng)300,最后,服務(wù)端系統(tǒng)300發(fā)送該內(nèi)容給源終端100.該過程如按表3的數(shù)據(jù)包格式布局來表示其上行、下行;可用下表10、表11來表示:表10請求數(shù)據(jù)上行表11請求數(shù)據(jù)下行序號域名長度類型描述1同步幀3StringODW2源終端編碼12String3目的終端編碼12String4接收確認1String05功能號2String226發(fā)送包號4String7應(yīng)答包號4String8包長度4String9包內(nèi)容NString要傳輸?shù)臄?shù)據(jù),自定義格式10校驗和2String參閱圖6所示,其為源終端100和服務(wù)端系統(tǒng)300之間發(fā)送狀態(tài)指令,其具體的過程為:即在上述第三步中,當(dāng)?shù)诙?shù)據(jù)交換功能指令為發(fā)送狀態(tài)指令時,源終端100按照發(fā)送狀態(tài)功能指令組包,并發(fā)送至服務(wù)端系統(tǒng)300;在第四步中,服務(wù)端系統(tǒng)300接收并處理源終端100的設(shè)備狀態(tài)信息,最后,服務(wù)端系統(tǒng)300將該信息反饋至源終端100。該過程如按表3的數(shù)據(jù)包格式布局來表示其上行、下行;可用下表12、表13來表示:表12發(fā)送狀態(tài)上行表13發(fā)送狀態(tài)下行序號域名長度類型描述1同步幀3StringODW2源終端編碼12String為12個‘0’3目的終端編碼12String上行數(shù)據(jù)包源終端編碼4接收確認1String05功能號2String236發(fā)送包號4String00007應(yīng)答包號4String上行數(shù)據(jù)包發(fā)送包號8包長度4String9包內(nèi)容2String詳見表19《應(yīng)答狀態(tài)表》10校驗和2String參閱圖7所示,其為源終端100和服務(wù)端系統(tǒng)300之間發(fā)送時間校驗指令,其具體的過程為:即在上述第三步3中,當(dāng)?shù)诙?shù)據(jù)交換功能指令為發(fā)送時間校驗指令時,源終端100按照發(fā)送時間校驗功能指令組包,并發(fā)送至服務(wù)端系統(tǒng)300;在第四步中,服務(wù)端系統(tǒng)300接收該時間校驗數(shù)據(jù)包,并返回結(jié)果至源終端100中。一般的,在本發(fā)明中源終端100是每隔30秒就向服務(wù)端系統(tǒng)300上行時間校驗包。該過程如按表3的數(shù)據(jù)包格式布局來表示其上行、下行;可用下表14、表15來表示:表14發(fā)送時間校驗上行序號域名長度類型描述1同步幀3StringUPO2源終端編碼12String3目的終端編碼12String為12個‘0’4接收確認1String05功能號2String246發(fā)送包號4String7應(yīng)答包號4String00008包長度4String00009包內(nèi)容0String空10校驗和2String表15發(fā)送時間校驗下行參閱圖8所示,其為源終端100和服務(wù)端系統(tǒng)300之間接收控制指令,其具體的過程為:即在上述第三步中,當(dāng)?shù)诙?shù)據(jù)交換功能指令為接收控制指令時,服務(wù)端系統(tǒng)300按照接收控制功能指令組包,并發(fā)送源終端100;在第四步中,源終端100接收并處理該接收控制指令數(shù)據(jù)包,最后,源終端100將處理后的數(shù)據(jù)包返回至服務(wù)端系統(tǒng)300中。同理,該過程如按表3的數(shù)據(jù)包格式布局來表示其上行、下行;可用下表16、表17來表示:表16接收控制指令下行序號域名長度類型描述1同步幀3StringODW2源終端編碼12String3目的終端編碼12String12個‘0’4接收確認1String05功能號2String256發(fā)送包號4String00007應(yīng)答包號4String00008包長度4String9包內(nèi)容NString參考表18《控制指令格式說明》10校驗和2String表17接收控制指令上行同時,數(shù)據(jù)包中的包內(nèi)容可以為指定內(nèi)容,也可以為自定義的內(nèi)容,其在數(shù)據(jù)包中可以參照表18來進行表示。表18控制指令格式說明域名長度類型描述指令編碼4String在門戶平臺上自定義指令內(nèi)容NString自定義指令內(nèi)容而數(shù)據(jù)包中的應(yīng)答包的內(nèi)容可參照表19來表示。表19應(yīng)答狀態(tài)表狀態(tài)編碼狀態(tài)內(nèi)容01接收成功02接收失敗參閱圖9所示,本發(fā)明提供的一種數(shù)據(jù)打包交換的系統(tǒng),其包括,源終端100,用于裝載待發(fā)送的數(shù)據(jù);目標終端200,用于接收從源終端100發(fā)送的數(shù)據(jù);且服務(wù)端系統(tǒng)300分別與源終端100和目標終端200連接。其中:服務(wù)端系統(tǒng)300包括,管理配置模塊3001,用于后臺界面的管理;調(diào)度模塊3002,用于對源終端100或目標終端200進行調(diào)度,分配交換模塊的地址給源終端100或目標終端200;交換模塊3003,用于為終端提供數(shù)據(jù)的接收和發(fā)送;認證模塊3004,用于對源終端100或目標終端200進行認證、授權(quán);監(jiān)控模塊3005,用于實時監(jiān)控源終端100、目標終端200和服務(wù)端系統(tǒng)300端的運行狀態(tài),提供預(yù)警通知功能;日志記錄模塊3006,用于記錄系統(tǒng)運行中的日志記錄,而上述的調(diào)度模塊3002、交換模塊3003、認證模塊3004、監(jiān)控模塊3005以及日志記錄模塊3006均與管理配置模塊3001連接。本發(fā)明通過采用上述系統(tǒng),借助服務(wù)端系統(tǒng)300、源終端100、目標終端200的配合作用,從而針對物聯(lián)網(wǎng)和互聯(lián)網(wǎng)的數(shù)據(jù)交換建立一套通用的數(shù)據(jù)交換系統(tǒng),使得物聯(lián)網(wǎng)的所有設(shè)備類型都可以采用統(tǒng)一的數(shù)據(jù)進行交換。雖然結(jié)合附圖描述了本發(fā)明的實施方式,但是專利所有者可以在所附權(quán)利要求的范圍之內(nèi)做出各種變形或修改,只要不超過本發(fā)明的權(quán)利要求所描述的保護范圍,都應(yīng)當(dāng)在本發(fā)明的保護范圍之內(nèi)。