[發明專利]一種socket協議連接轉換為其它協議連接的實現方法在審
| 申請號: | 202010108712.0 | 申請日: | 2020-02-21 |
| 公開(公告)號: | CN111327614A | 公開(公告)日: | 2020-06-23 |
| 發明(設計)人: | 曹明選;葉德望 | 申請(專利權)人: | 浙江德迅網絡安全技術有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06 |
| 代理公司: | 北京化育知識產權代理有限公司 11833 | 代理人: | 尹均利 |
| 地址: | 311200 浙江省溫*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 socket 協議 連接 轉換 其它 實現 方法 | ||
1.一種socket協議連接轉換為其它協議連接的實現方法,其特征在于:具體包括以下步驟:
S1、客戶端創建:創建一個客戶端對象TcpClient,調用對象TcpClient下的方法BeginConnect對客戶端進行嘗試連接,其中客戶端的入口參數分別為目標IP地址、目標端口號、連接成功后的返調函數和傳遞參數,在調用完函數后,系統將進行嘗試連接服務器;
S2、數據接收:完成連接成功后的返調函數,定義一個函數void-Connected,在連接服務器成功后,系統調用函數void-Connected,在函數void-Connected里,進行獲取系統分配的數據流傳輸對象,接著獲取數據流傳輸對象NetworkStream,將數據流傳輸對象NetworkStream設置為全局變量,調用ns下的方法BeginRead,其中入口參數包括數據緩沖、緩沖起始序號、緩沖長度、接收到數據后的返調函數和傳遞參數,在調用完畢函數后將掛起數據接收等待;
S3、數據處理:在服務器向客戶端發送數據后,系統調用函數BeginRead,在函數BeginRead里獲得數據流byte數組,在函數BeginRead中包含入口參數state,將buff傳遞進函數BeginRead中,然后將buff強制轉換成byte數組,在完成byte數組的轉換后,獲取緩沖區的大小ns,最后對數據進行處理;
S4、服務器端創建:建立兩個服務器端程序結構,其中第一個程序結構負責服務器的啟動與客戶端連接的登記,建立協議TcpListener,啟動服務器,接著啟動客戶端的嘗試連接,其中入口參數包括客戶端連接上后的返調函數和傳遞參數,建立客戶端連接上的返調函數,并且在函數中獲取客戶端的對象tcplst,在完成客戶端的處理完畢后,啟動下一個客戶端的連接;
S5、實現協議轉換:另一個程序結構負責單個客戶端與服務器端的處理程序,主要負責數據的通訊,在判斷出客戶端與服務器端連接已斷開后,將客戶端數據傳輸到第一個程序結構中進行刪除客戶端操作,利用多個客戶端與一個服務器端之間進行連接,利用服務器端內部的程序結構實現對socket協議連接轉換成其它協議連接。
2.根據權利要求1所述的一種socket協議連接轉換為其它協議連接的實現方法,其特征在于:所述步驟S1中,對客戶端對象TcpClient的命名空間在System.Net.Sockets中。
3.根據權利要求1所述的一種socket協議連接轉換為其它協議連接的實現方法,其特征在于:所述步驟S2中,數據流傳輸對象用于處理客戶端與服務器端之間的數據傳輸,并且數據流傳輸對象由TcpClient獲得。
4.根據權利要求1所述的一種socket協議連接轉換為其它協議連接的實現方法,其特征在于:所述步驟S3中,調用ns下的方法向服務器端發送數據,另外入口參數包括數據緩沖、緩沖起始序號和緩沖長度。
5.根據權利要求1所述的一種socket協議連接轉換為其它協議連接的實現方法,其特征在于:所述步驟S3中,在獲取的length為0時表示客戶端已經斷開連接。
6.根據權利要求1所述的一種socket協議連接轉換為其它協議連接的實現方法,其特征在于:所述步驟S4中,在程序結構建立的時候構造函數分別包括localaddr和port兩個參數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江德迅網絡安全技術有限公司,未經浙江德迅網絡安全技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/202010108712.0/1.html,轉載請聲明來源鉆瓜專利網。





