本申請涉及計算機,具體涉及通信,尤其涉及一種數據通信協議實現方法、裝置和系統(tǒng)。
背景技術:
1、現有技術中,替換應用程序的網絡通信協議需要修改應用源碼,并且,應用程序原有的網絡通信協議一旦被替換,就很難兼容遵循老通信協議的其他應用同時接入此應用,無法實現網絡通信協議的“透明”替換效果,即無需修改代碼或重新編譯目標應用,對用戶無感知。
技術實現思路
1、本申請實施例提供了一種數據通信協議實現方法、裝置、系統(tǒng)、設備以及存儲介質。
2、根據第一方面,本申請實施例提供了一種數據通信協議實現方法,該方法包括:將目標動態(tài)庫注入到目標應用程序以對網絡io相關庫函數進行接管;基于網絡io相關庫函數鉤子,采用新協議替換目標應用程序的初始協議。
3、根據第二方面,本申請實施例提供了一種數據通信協議實現裝置,該裝置包括:注入模塊,被配置成將目標動態(tài)庫注入到目標應用程序以對網絡io相關庫函數進行接管;替換模塊,被配置成基于網絡io相關庫函數鉤子,采用新協議替換目標應用程序的初始協議。
4、根據第三方面,本申請實施例提供了一種數據通信協議實現系統(tǒng),該系統(tǒng)包括:基于初始協議相互通信的第一通信主體和第二通信主體;第一通信主體用于將第一動態(tài)庫注入到第一應用程序以對網絡io相關庫函數進行接管;基于網絡io相關庫函數鉤子,采用新協議替換第一應用程序的初始協議;第二通信主體用于將第二動態(tài)庫注入到第二應用程序以對網絡io相關庫函數進行接管;基于網絡io相關庫函數鉤子,采用新協議替換第二應用程序的初始協議。
5、根據第四方面,本申請實施例提供了一種電子設備,該電子設備包括一個或多個處理器;存儲裝置,其上存儲有一個或多個程序,當一個或多個程序被該一個或多個處理器執(zhí)行,使得一個或多個處理器實現如第一方面的任一實施例的數據通信協議實現方法。
6、根據第五方面,本申請實施例提供了一種計算機可讀介質,其上存儲有計算機程序,該程序被處理器執(zhí)行時實現如第一方面的任一實施例的數據通信協議實現方法。
7、本申請通過提供一種數據通信協議實現系統(tǒng),該系統(tǒng)包括基于初始協議相互通信的第一通信主體和第二通信主體;第一通信主體用于將第一動態(tài)庫注入到第一應用程序以對網絡io相關庫函數進行接管;基于網絡io相關庫函數鉤子,采用新協議替換第一應用程序的初始協議;第二通信主體用于將第二動態(tài)庫注入到第二應用程序以對網絡io相關庫函數進行接管;基于網絡io相關庫函數鉤子,采用新協議替換第二應用程序的初始協議,即通過動態(tài)庫注入方式實現了應用程序通信協議的透明替換。
8、應當理解,本部分所描述的內容并非旨在標識本公開的實施例的關鍵或重要特征,也不用于限制本公開的范圍。本公開的其他特征將通過以下的說明書而變得容易理解。
1.一種數據通信協議實現系統(tǒng),所述系統(tǒng)包括:基于初始協議相互通信的第一通信主體和第二通信主體;
2.根據權利要求1所述的系統(tǒng),所述新協議為客戶端/服務器架構的通信協議,所述第一通信主體為客戶端,所述第二通信主體為服務端;
3.根據權利要求2所述的系統(tǒng),其中,所述服務端用于同時監(jiān)聽原始協議和新協議的建連請求,并基于新協議或初始協議進行數據傳輸。
4.根據權利要求3所述的系統(tǒng),所述同時監(jiān)聽原始協議和新協議的建連請求,并基于新協議或初始協議進行數據傳輸,包括:
5.根據權利要求4所述系統(tǒng),所述同時監(jiān)聽原始協議和新協議的建連請求,并基于新協議或初始協議進行數據傳輸,還包括:
6.根據權利要求4所述系統(tǒng),其中,所述服務端進一步用于:
7.根據權利要求4所述系統(tǒng),所述服務端進一步用于:
8.一種數據通信協議實現方法,所述方法包括:
9.根據權利要求8所述的方法,其中,所述新協議為客戶端/服務器架構的通信協議,所述方法還包括:
10.一種數據通信協議實現裝置,所述裝置包括:
11.一種電子設備,其特征在于,包括:
12.一種存儲有計算機指令的非瞬時計算機可讀存儲介質,其特征在于,所述計算機指令用于使所述計算機執(zhí)行權利要求9-10中任一項所述的方法。