TW202407566A - 設備接入方法、資料交換方法、裝置、聯網設備及存儲介質 - Google Patents

設備接入方法、資料交換方法、裝置、聯網設備及存儲介質 Download PDF

Info

Publication number
TW202407566A
TW202407566A TW112129850A TW112129850A TW202407566A TW 202407566 A TW202407566 A TW 202407566A TW 112129850 A TW112129850 A TW 112129850A TW 112129850 A TW112129850 A TW 112129850A TW 202407566 A TW202407566 A TW 202407566A
Authority
TW
Taiwan
Prior art keywords
target
data
descriptor
configuration information
server
Prior art date
Application number
TW112129850A
Other languages
English (en)
Other versions
TWI840288B (zh
Inventor
黃建邦
Original Assignee
黃建邦
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 黃建邦 filed Critical 黃建邦
Publication of TW202407566A publication Critical patent/TW202407566A/zh
Application granted granted Critical
Publication of TWI840288B publication Critical patent/TWI840288B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申請涉及一種設備接入方法、資料交換方法及相關設備。設備接入方法基於預設生成策略配置聯網設備的配置資訊,配置資訊包括聯網設備在至少一種應用場景下的場景配置資訊,場景配置資訊包括第一描述符集和功能指令集中的至少一種、資料來源配置資訊。藉由預載入場景配置資訊,從而能夠根據目標配置資訊重新定義聯網設備的設備功能,使得設備功能更加豐富。本申請中聯網設備與目標設備之間的通信資料不經過電腦主機,有效避免被電腦主機抓包而洩露真實資料來源和網路通信資料,以及有效避免被惡意程式破解,保證聯網設備和資料的安全性。

Description

設備接入方法、資料交換方法、裝置、聯網設備及存儲介質
本申請涉及通信及資料安全技術領域,尤其涉及一種設備接入方法、資料交換方法、裝置、聯網設備、服務端及電腦可讀存儲介質。
目前,一些接入設備(如通用序列匯流排USB設備)的設備功能都是出廠時固定,在出廠後無法改變或者只能以重新寫入軟體的方式改變其功能。並且當接入設備需要進行應用擴展時,需要在電腦主機中安裝驅動等控制軟體,導致容易被電腦主機抓包,從而暴露真實資料來源和網路通信資料,也可能導致接入設備被惡意程式破解,存在較高的安全風險。
本申請提供一種設備接入方法、資料交換方法、裝置、聯網設備、服務端及電腦可讀存儲介質,以解決當前接入設備功能單一且存在較高安全風險的技術問題。
第一方面,本申請還提供一種設備接入方法,應用於聯網設備,所述方法包括:當與服務端通信連接時,預載入目標配置資訊,所述服務端存儲有至少一種預設配置資訊,所述目標配置資訊為所述預設配置資訊中的一種,所述目標配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集合和描述符指令集合中的至少一種,所述第一描述符集合用於定義所述聯網設備的設備類型;所述服務端存儲的場景配置資訊為:在預載入目標配置資訊之前,基於預設生成策略,藉由配置所述聯網設備的第一描述符集合和描述符指令集合中的至少一種,以及資料來源配置資訊生成的;基於目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種。
在第一方面的一些實現方式中,所述當與服務端通信連接時,預載入目標配置資訊,包括:當與服務端通信連接時,向所述服務端發送配置獲取請求,所述配置獲取請求攜帶有所述聯網設備的標識資訊;接收所述服務端返回的與所述標識資訊對應的目標配置資訊。
在第一方面的一些實現方式中,所述聯網設備作為與目標設備通信連接的主機設備,所述描述符指令集合包括多種功能指令集,所述功能指令集用於控制所述聯網設備與所述目標設備之間的資料交換。
在第一方面的一些實現方式中,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括:基於所述描述符指令集合中的功能指令集,對所述目標設備的第二描述符集合中的多種描述符進行枚舉;若枚舉成功,則配置所述聯網設備與所述目標設備通信時的目標資料來源,所述目標資料來源設於所述目標設備。
在第一方面的一些實現方式中,所述功能指令集包括獲取指令集和驗證指令集,所述基於所述描述符指令集合中的功能指令集,對所述目標設備的第二描述符集合中的多種描述符進行枚舉,包括:基於所述獲取指令集,讀取所述目標設備的第二描述符集合;基於所述驗證指令集,對所述第二描述符集合中的多種描述符進行驗證;若多種所述描述符滿足預設設備要求,則判定枚舉成功。
在第一方面的一些實現方式中,所述功能指令集還包括資料來源指令集,所述目標場景配置資訊還包括資料來源配置資訊,所述配置所述聯網設備與所述目標設備通信時的目標資料來源,包括:基於所述資料來源指令集,根據所述資料來源配置資訊,確定所述聯網設備與所述目標設備通信時的目標資料來源。
在第一方面的一些實現方式中,所述聯網設備為網路讀寫控制設備,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括:基於所述描述符指令集中的功能指令集,對所述目標設備的第二描述符集合中的多種描述符進行枚舉;若枚舉成功,則向所述服務端請求下發與所述目標設備對應的驅動指令集,以完成通信連接,所述驅動指令集用於與所述目標設備進行資料交換。
在第一方面的一些實現方式中,所述聯網設備為網路代理控制設備,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括:基於所述描述符指令集合中的功能指令集,對所述目標設備的第二描述符集合中的多種描述符進行枚舉;若枚舉成功,則將所述第二描述符集合發送至所述服務端,以使在所述服務端對所述目標設備進行虛擬化,生成所述目標設備對應的虛擬裝置,從而建立與所述目標設備之間的通信連接。
在第一方面的一些實現方式中,所述聯網設備作為與目標設備通信連接的從機設備,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括:接收所述目標設備發送的枚舉請求;回應於所述枚舉請求,向所述目標設備返回所述第一描述符集合,以使所述目標設備對所述第一描述符集合進行枚舉,並在枚舉成功後,根據資料來源配置資訊配置所述聯網設備與所述目標設備通信時的目標資料來源,所述目標資料來源設於所述服務端。
在第一方面的一些實現方式中,所述資料來源配置資訊包括資料來源的容量資訊,所述容量資訊包括資料來源的最後邏輯塊位址和塊容量。
在第一方面的一些實現方式中,所述描述符集合包括設備描述符、配置描述符、介面描述符、端點描述符、字串描述符和預設的自訂描述符中的至少一種。
在第一方面的一些實現方式中,所述目標設備包括至少一個第一目標設備和至少一個第二目標設備,所述聯網設備作為與所述第一目標設備通信連接的主機設備,以及作為與所述第二目標設備通信連接的從機設備,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括:基於所述描述符指令集合中的功能指令集,對所述第一目標設備的第二描述符集合中的多種描述符進行枚舉;若枚舉成功,則配置所述聯網設備與所述第一目標設備通信時的第一目標資料來源,以完成與所述第一目標設備的通信連接,所述第一目標資料來源設於所述第一目標設備;接收所述第二目標設備發送的枚舉請求;回應於所述枚舉請求,向所述第二目標設備返回所述第一描述符集合,以使所述第二目標設備對所述第一描述符集合進行枚舉,並在枚舉成功後,根據資料來源配置資訊配置所述聯網設備與所述第二目標設備通信時的第二目標資料來源,所述第二目標資料來源設於所述服務端或所述第一目標設備。
第二方面,本申請還提供一種資料交換方法,應用於聯網設備,所述聯網設備基於上述設備接入方法,與服務端和目標設備建立通信連接,所述方法包括:獲取第一目標方發送的資料交換請求;基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,所述目標資料為第二目標方發送的資料,其中若所述第一目標方為所述服務端,則所述第二目標方為所述目標設備,若所述第一目標方為所述目標設備,則所述第二目標方為所述服務端。
在第二方面的一些實現方式中,所述目標設備包括至少一個第一目標設備和至少一個第二目標設備,所述聯網設備作為與所述第一目標設備通信連接的主機設備,以及作為與所述第二目標設備通信連接的從機設備,其中若所述第一目標方為所述服務端,則所述第二目標方為所述第一目標設備或所述第二目標設備,若所述第一目標方為所述第二目標設備,則所述第二目標方為所述服務端或所述第一目標設備。
在第二方面的一些實現方式中,所述基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,包括:回應於所述資料交換請求,將所述資料交換請求轉發至所述第二目標方;接收所述第二目標方回應於所述資料交換請求返回的目標資料,並將所述目標資料轉發至所述第一目標方。
在第二方面的一些實現方式中,所述聯網設備為網路USBkey設備,所述目標設備為電腦主機,所述回應於所述資料交換請求,將所述資料交換請求轉發至所述第二目標方,包括:回應於所述電腦主機發送的資料交換請求,將所述資料交換請求轉發至所述服務端,所述資料交換請求攜帶有所述網路USBkey設備的憑證資訊,以使所述服務端對所述憑證資訊進行校驗。
在第二方面的一些實現方式中,所述基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,包括:基於預設處理腳本,對所述資料交換請求進行資料處理,得到資料處理結果;基於所述資料處理結果,向所述第二目標方發送目標資料獲取請求;接收所述第二目標方回應於所述目標資料獲取請求返回的與所述資料處理結果對應的目標資料,並將所述目標資料返回至所述第一目標方。
第三方面,本申請還提供一種設備接入方法,應用於服務端,所述方法包括:當與聯網設備通信連接時,向所述聯網設備下發目標配置資訊,所述目標配置資訊用於所述聯網設備建立與目標設備之間的通信連接,所述服務端存儲有至少一種預設配置資訊,所述目標配置資訊為所述預設配置資訊中的一種,所述目標配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集合和描述符指令集合中的至少一種,所述第一描述符集合用於定義所述聯網設備的設備類型;所述服務端存儲的場景配置資訊為:在預載入目標配置資訊之前,基於預設生成策略,藉由配置所述聯網設備的第一描述符集合和描述符指令集合中的至少一種,以及資料來源配置資訊生成的;基於目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種。
第四方面,本申請還提供一種資料交換方法,應用於服務端,所述服務端基於上述設備接入方法,與聯網設備建立通信連接,所述方法包括:向所述聯網設備發送資料交換請求,並接收所述聯網設備返回的目標資料,所述資料交換請求用於所述聯網設備基於預設處理策略對所述資料交換請求進行回應,所述目標資料為目標設備發送的資料;和/或,根據所述聯網設備基於預設處理策略回應的資料交換請求,向所述聯網設備發送目標資料,所述目標資料由所述聯網設備返回至目標設備,所述資料交換請求由所述目標設備發起。
第五方面,本申請還提供一種設備接入裝置,應用於聯網設備,所述裝置包括:預載入模組,用於當與服務端通信連接時,預載入目標配置資訊,所述服務端存儲有至少一種預設配置資訊,所述目標配置資訊為所述預設配置資訊中的一種,所述目標配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集合和描述符指令集合中的至少一種,所述描述符集合用於定義所述聯網設備的設備類型;所述服務端存儲的場景配置資訊為:在預載入目標配置資訊之前,基於預設生成策略,藉由配置所述聯網設備的第一描述符集合和描述符指令集合中的至少一種,以及資料來源配置資訊生成的;第一建立模組,用於基於目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種。
第六方面,本申請還提供一種資料交換裝置,應用於聯網設備,所述聯網設備基於上述設備接入方法,與服務端和目標設備建立通信連接,所述裝置包括:獲取模組,用於獲取第一目標方發送的資料交換請求;回應模組,用於基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,所述目標資料為第二目標方發送的資料,其中若所述第一目標方為所述服務端,則所述第二目標方為所述目標設備,若所述第一目標方為所述目標設備,則所述第二目標方為所述服務端。
第七方面,本申請還提供一種聯網設備,包括處理器和記憶體,所述記憶體用於存儲電腦程式,所述電腦程式被所述處理器執行時實現上述設備接入方法,或上述資料交換方法。
第八方面,本申請還提供一種服務端,所述服務端包括處理器和記憶體,所述服務端能夠實現上述設備接入方法,或上述資料交換方法。
第九方面,本申請還提供一種電腦可讀存儲介質,其存儲有電腦程式,所述電腦程式被處理器執行時實現上述設備接入方法,或上述資料交換方法。
第十方面,本申請提供一種設備接入方法,應用於聯網設備,所述方法包括:基於預設生成策略配置所述聯網設備的配置資訊,所述配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集和功能指令集中的至少一種、資料來源配置資訊,所述第一描述符集用於定義所述聯網設備的設備類型,所述功能指令集包括描述符指令集; 預載入所述場景配置資訊;基於載入後的所述場景配置資訊,建立所述聯網設備與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備。
在第十方面的一些實現方式中,所述預載入所述場景配置資訊包括:所述聯網設備在接入所述目標設備前預載入所述場景配置資訊,所述場景配置資訊存儲在服務端或所述聯網設備中,其中所述服務端表徵為與所述聯網設備通信連接且能夠載入所述場景配置資訊的所有電子設備。
需要說明的是,本申請中的服務端可以為使用網路連接(如使用遠端通訊的TCP/IP等連接)或非網路連接(如使用近場通訊的WIFI、藍牙、LoRA等的點對點連接)的電子設備終端。舉個例子來說,兩個終端建立資料交互關係,第一終端向第二終端(如聯網設備、接入設備等)提供了場景配置資訊或資料來源,那麼第一終端即可理解為是服務端。當然,服務端還可以理解為如部署在網路側伺服器、虛擬伺服器、雲端伺服器、伺服器集群、或者個人電腦、嵌入式電腦、手機、平板電腦、智慧穿戴設備,以及使用者端、控制端等等。
在第十方面的一些實現方式中,所述預載入所述場景配置資訊包括:所述聯網設備在啟動時向所述服務端發送場景資訊獲取請求,所述場景資訊獲取請求包括所述聯網設備的身份標識;所述服務端回應所述場景資訊獲取請求,從所述場景配置資訊中篩選得到與所述聯網設備的身份標識匹配的場景配置資訊,作為所述場景配置資訊;發送所述場景配置資訊給所述聯網設備。
在第十方面的一些實現方式中,所述配置所述聯網設備的場景配置資訊包括:藉由與所述聯網設備通信連接的服務端,或與所述服務端通信連接的使用者端、或所述聯網設備按照預設生成策略,配置所述第一描述符集和所述描述符指令集中的至少一種、資料來源配置資訊後生成所述場景配置資訊,所述預設生成策略包括自訂創建策略、範本創建策略、外部導入創建策略中的至少一種。
在第十方面的一些實現方式中,所述基於載入後的所述場景配置資訊,建立與目標設備之間的通信連接包括:根據所述場景配置資訊中的模式選擇資訊,將所述聯網設備設置為主機模式、從機模式、對等通訊模式中的至少一種。
在第十方面的一些實現方式中,若所述聯網設備設置為主機模式,基於所述描述符指令集,建立與目標設備之間的通信連接包括:向所述目標設備發送握手連接請求;接收所述目標設備回應所述握手連接請求發送的第二描述符集;基於所述功能指令集的描述符指令集,對所述第二描述符集中的多種描述符進行枚舉;若所述第二描述符的多種所述描述符滿足預設設備要求,確定握手連接成功;若多種所述描述符不滿足預設設備要求,確定握手連接失敗,並將獲取的所述第二描述符集發送給服務端,從所述服務端下載對應的第三描述符集,並基於所述第三描述符集中的描述符重新進行枚舉。
在第十方面的一些實現方式中,所述描述符指令集包括獲取設備描述符指令、獲取配置描述符指令、獲取介面描述符指令、獲取端點描述符指令、獲取字串描述符指令、獲取BOS描述符指令。
在第十方面的一些實現方式中,所述方法還包括:若基於所述第三描述符集中的描述符的握手連接成功,則配置所述聯網設備與所述目標設備通信時的目標資料來源,所述目標資料來源設於所述目標設備、或所述服務端、或與所述服務端連接的使用者端、或與所述聯網設備通信連接的任意一個電子設備中。
在第十方面的一些實現方式中,所述功能指令集包括資料來源指令集,所述配置所述聯網設備與所述目標設備通信時的目標資料來源,包括:基於所述資料來源指令集,根據所述資料來源配置資訊,確定所述聯網設備與所述目標設備通信時的目標資料來源。
在第十方面的一些實現方式中,所述目標資料來源包括存儲介質、存儲空間位址區間(如磁區位址區間)、鏡像存儲文檔、特定資料夾、資料庫、資料流程中的至少一種。
在第十方面的一些實現方式中,所述資料來源配置資訊包括資料來源的容量資訊、存儲介質、存儲空間位址區間(如磁區位址區間)、讀寫狀態、鏡像存儲文檔、特定資料夾、資料庫、資料流程中的至少一種,所述容量資訊包括資料來源的最後邏輯塊位址、可格式化邏輯塊總數、塊容量中的至少一種。
在第十方面的一些實現方式中,所述描述符指令集包括第一標準指令集、第一特殊指令集、設置指令集中的至少一種,其中,所述第一標準指令集用於向所述目標設備發送指令,請求所述目標設備的描述符資料;所述特殊指令集用於獲取目標設備的所屬設備類型的資料;所述設置指令集用於發送設置指令,其中所述設置指令至少包括設置位址、使能配置、使能端點或者啟動外設模組等指令中的至少一種。
在第十方面的一些實現方式中,若所述聯網設備設置為主機模式,基於所述描述符指令集,建立與所述目標設備之間的通信連接包括:向所述目標設備發送握手連接請求;根據所述第一標準指令集獲取所述目標設備的描述符資料;根據所述特殊指令集,獲取所述目標設備的資料;根據所述設置指令集,獲取所述目標設備的設置位址的狀態、使能配置的狀態、使能端點的狀態、啟動外設模組的狀態中的至少一種;若確定所述目標設備的描述符資料、所述目標設備的資料,所述目標設備的設置位址的狀態、使能配置的狀態、使能端點的狀態或者啟動外設模組的狀態中的至少一種不符合第一接入狀態判斷規則所規定的條件,確定所述握手連接失敗,並將所述目標設備的描述符資料發送給服務端;接收所述服務端發送的新的場景配置資訊或新的描述符指令集,其中所述服務端根據所述目標設備的描述符資料確定出所述新的場景配置資訊或新的描述符指令集;根據所述新的場景配置資訊或新的描述符指令集,建立所述聯網設備與所述目標設備之間的通信連接。
在第十方面的一些實現方式中,若所述聯網設備設置為從機模式,基於所述第一描述符集,建立與目標設備之間的通信連接包括:接收所述目標設備發送的握手連接請求;回應於所述握手連接請求,向所述目標設備返回所述第一描述符集,以使所述目標設備對所述第一描述符集進行枚舉;若所述握手連接請求滿足預設設備要求,確定握手連接成功;若所述握手連接請求不滿足預設設備要求,確定握手連接失敗,並將所述握手連接請求資料發送給服務端,從所述服務端下載對應的第四描述符集,並基於所述第四描述符集中的描述符重新進行枚舉。
在第十方面的一些實現方式中,所述第一描述符集包括標準資料集、特殊資料集、執行設置指令中的至少一種,其中,所述標準資料集用於在所述目標設備發送標準指令時,根據所述標準指令的類型和參數返回描述符資料;所述特殊資料集用於在所述目標設備發送特殊指令時,根據所述特殊指令的類型和參數,及所述聯網設備類型返回資料;所述執行設置指令用於在所述目標設備發送設置指令時,設置所述聯網設備位址、使能配置、使能端點、啟動外設模組中的至少一種。
在第十方面的一些實現方式中,若所述聯網設備設置為從機模式,基於所述第一描述符集,建立與目標設備之間的通信連接包括:接收所述目標設備發送的握手連接請求;接收所述目標設備發送的標準指令,特殊指令,或設置指令中的至少一種;若所述標準指令,所述特殊指令,或所述設置指令中的至少一種不符合第二接入狀態判斷規則所規定的條件,確定所述握手連接失敗,並將所述目標設備的描述符指令發送給服務端;接收所述服務端發送的新的場景配置資訊或新的第一描述符集,其中所述服務端根據所述目標設備的描述符指令確定出所述新的場景配置資訊或所述新的第一描述符集;根據所述新的場景配置資訊或所述新的第一描述符集,建立所述聯網設備與所述目標設備之間的通信連接。
在第十方面的一些實現方式中,所述第一描述符集包括設備描述符、配置描述符、介面描述符、端點描述符、字串描述符、BOS描述符和預設的自訂描述符中的至少一種。
在第十方面的一些實現方式中,若所述聯網設備設置為對等通訊模式,基於所述配置資訊,建立與目標設備之間的通信連接包括:配置所述聯網設備的第一介面為發送端,並藉由所述第一介面向所述目標設備發送資料;配置所述聯網設備的第二介面為接收端,並藉由所述第二介面接收所述目標設備發送的資料。
在第十方面的一些實現方式中,所述配置資訊包括第三模式、第三介面類別型、交互資料集、第三狀態判斷規則、第三狀態回應規則中的至少一種,其中,所述第三模式用於設置所述聯網設備的工作模式為對等模式;所述第三介面類別型用於設置所述第一介面為所述發送端,及設置所述第二介面為所述接收端;所述交互資料集用於設置所述聯網設備向所述目標設備發送的資料;所述第三狀態判斷規則用於藉由所述目標設備發送的資料判斷所述聯網設備的接入成功狀態或者接入失敗的規則;所述第三狀態回應規則用於根據所述聯網設備的接入狀態做出回應的規則。
在第十方面的一些實現方式中,所述目標設備包括至少一個第一目標設備和至少一個第二目標設備,所述聯網設備作為與所述至少一個第一目標設備通信連接的主機設備,以及作為與所述至少一個第二目標設備通信連接的從機設備,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括:基於所述功能指令集的描述符指令集,對所述至少一個第一目標設備的第二描述符集中的多種描述符進行枚舉;若對所述第二描述符集中的多種描述符握手連接成功,則配置所述聯網設備與所述至少一個第一目標設備通信時的第一目標資料來源,以完成所述聯網設備與所述至少一個第一目標設備的通信連接;接收所述至少一個第二目標設備發送的握手連接請求;回應於所述握手連接請求,向所述至少一個第二目標設備返回所述第一描述符集,以使所述至少一個第二目標設備對所述第一描述符集進行枚舉,並在對所述第一描述符集握手連接成功後,根據所述資料來源配置資訊配置所述聯網設備與所述至少一個第二目標設備通信時的第二目標資料來源。
第十一方面,本申請提供一種資料交換方法,應用於聯網設備,所述聯網設備基於上述設備接入方法,與服務端和目標設備建立通信連接,所述方法包括:獲取第一目標方發送的資料交換請求;基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,所述目標資料為第二目標方發送的資料,其中若所述第一目標方為所述服務端,則所述第二目標方為所述目標設備,若所述第一目標方為所述目標設備,則所述第二目標方為所述服務端。
在十一方面的一些實現方式中,所述目標設備包括至少一個第一目標設備和至少一個第二目標設備,所述聯網設備作為與所述第一目標設備通信連接的主機設備,以及作為與所述第二目標設備通信連接的從機設備,其中若所述第一目標方為所述服務端,則所述第二目標方為所述第一目標設備或所述第二目標設備,若所述第一目標方為所述第二目標設備,則所述第二目標方為所述服務端或所述第一目標設備。
在十一方面的一些實現方式中,所述基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,包括:回應於所述資料交換請求,將所述資料交換請求轉發至所述第二目標方;接收所述第二目標方回應於所述資料交換請求返回的目標資料,並將所述目標資料轉發至所述第一目標方。
第十二方面,本申請提供一種資料交換方法,應用於聯網設備,所述聯網設備基於上述設備接入方法與目標設備建立通信連接,所述方法包括:根據場景配置資訊中的資料來源配置資訊,確定目標資料來源;基於所述目標資料來源,實現所述聯網設備與所述目標設備之間的資料交互。
在第十二方面的一些實現方式中,所述資料來源配置資訊包括資料來源的容量資訊、存儲介質及讀寫狀態,所述容量資訊包括資料來源的最後邏輯塊位址、可格式化邏輯塊總數,或塊容量中的至少一種。
在第十二方面的一些實現方式中,所述目標資料來源設於所述目標設備、或聯網設備、或服務端、或與所述服務端連接的使用者端,或與所述聯網設備通信連接的任意一個電子設備中。
在第十二方面的一些實現方式中,所述基於所述目標資料來源,實現所述聯網設備與所述目標設備之間的資料交互包括:配置所述聯網設備與所述目標設備通信時的自動運行腳本,所述場景配置資訊包括所述自動運行腳本;基於所述自動運行腳本,向所述目標設備發送第一資料交換請求,並接收所述目標設備回應所述第一資料交換請求發送的第一資料;或基於所述自動運行腳本,接收所述目標設備發送的第二資料交換請求,並回應所述第二資料交換請求向所述目標設備發送第二資料,其中所述第一資料或所述第二資料為所述目標資料來源中的資料。
在第十二方面的一些實現方式中,所述接收所述目標設備對所述第一資料交換請求進行回應發送的資料還包括:將所述目標設備發送的資料發送至所述服務端,其中所述服務端表徵為與所述聯網設備通信連接且能夠配置所述配置資訊的所有電子設備。
在第十二方面的一些實現方式中,所述方法還包括:接收所述服務端發送的第一低級指令,所述第一低級指令由所述使用者端發送至所述服務端,所述第一低級指令包括操作類型,操作存儲空間,操作長度及資料包;將所述第一低級指令發送至所述目標設備;若所述第一低級指令的所述操作類型為讀操作,接收所述目標設備響應所述第一低級指令返回的第一磁區位址的資料,其中所述目標設備根據所述操作存儲空間及所述操作長度確定所述第一磁區位址;若所述第一低級指令的所述操作類型為寫操作,將所述資料包中的資料寫入所述目標設備的所述第一磁區位址。
在第十二方面的一些實現方式中,所述方法還包括:接收所述服務端發送的搜索指令,所述搜索指令由使用者端發送至所述服務端,所述搜索指令包括文檔資訊;根據所述搜索指令,分別遍歷讀取所述目標設備或聯網設備的相關存儲空間位址(如磁區位址)以搜索對應的存儲資料;將所述存儲資料發送至所述服務端,以使得所述服務端將所述文檔資料發送至所述使用者端。
在第十二方面的一些實現方式中,所述自動運行腳本為高級指令,所述高級指令包括創建文檔指令、刪除文檔指令、修改檔案屬性指令、讀取文檔內容指令、修改文檔內容指令。
第十三方面,本申請還提供一種設備接入方法,應用於服務端,所述方法包括:當與聯網設備通信連接時,向所述聯網設備下發目標配置資訊,所述目標配置資訊用於所述聯網設備建立與目標設備之間的通信連接,所述目標配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集和描述符指令集中的至少一種,所述第一描述符集用於定義所述聯網設備的設備類型;所述服務端存儲的場景配置資訊為:在預載入所述目標配置資訊之前,基於預設生成策略,藉由配置所述聯網設備的第一描述符集和描述符指令集中的至少一種,以及資料來源配置資訊生成的;基於目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種。
在第十三方面的一些實現方式中,所述向所述聯網設備下發目標配置資訊包括:接收所述聯網設備發送的場景資訊獲取請求,回應所述場景資訊獲取請求,從所述場景配置資訊中篩選得到與所述場景資訊獲取請求中的聯網設備的身份標識相匹配的場景配置資訊;發送所述場景配置資訊給所述聯網設備。
在第十三方面的一些實現方式中,所述方法還包括:接收所述聯網設備發送的目標設備的描述符集,其中所述描述符集為所述聯網設備從所述目標設備處接收;所述服務端根據所述目標設備的描述符集確定出新的場景配置資訊,並將所述新的場景配置資訊發送給所述聯網設備,以使得所述聯網設備根據所述新的場景配置資訊,建立所述聯網設備與所述目標設備之間的通信連接。
第十四方面,本申請還提供一種資料交換方法,應用於服務端,所述服務端基於上述設備接入方法,與聯網設備建立通信連接,所述方法包括:向所述聯網設備發送資料交換請求,並接收所述聯網設備返回的目標資料,所述資料交換請求用於所述聯網設備基於預設處理策略對所述資料交換請求進行回應,所述目標資料為目標設備發送的資料;和/或,根據所述聯網設備基於預設處理策略回應的資料交換請求,向所述聯網設備發送目標資料,所述目標資料由所述聯網設備返回至目標設備,所述資料交換請求由所述目標設備發起。
在第十四方面的一些實現方式中,所述方法還包括:接收所述聯網設備發送的讀操作指令,根據所述讀操作指令從所述服務端的資料來源中確定出資料,並將確定出的資料發送給所述聯網設備;或 接收所述聯網設備發送的寫操作指令及寫資料包,根據所述寫操作指令將所述寫資料包寫入所述服務端的資料來源中。
第十五方面,本申請還提供一種服務端,所述服務端包括處理器和記憶體,所述服務端能夠實現上述設備接入方法,或上述資料交換方法。
第十六方面,本申請還提供一種資料交換裝置,應用於聯網設備,所述聯網設備基於上述設備接入方法,與服務端和目標設備建立通信連接,所述裝置包括:獲取模組,用於獲取第一目標方發送的資料交換請求;回應模組,用於基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,所述目標資料為第二目標方發送的資料,其中若所述第一目標方為所述服務端,則所述第二目標方為所述目標設備,若所述第一目標方為所述目標設備,則所述第二目標方為所述服務端。
第十七方面,本申請還提供一種聯網設備,包括處理器和記憶體,所述記憶體用於存儲電腦程式,所述電腦程式被所述處理器執行時實現上述設備接入方法,或上述資料交換方法。
第十八方面,本申請還提供一種電腦可讀存儲介質,其存儲有電腦程式,所述電腦程式被處理器執行時實現上述設備接入方法,或上述資料交換方法。
本申請藉由配置聯網設備的場景配置資訊,及預載入場景配置資訊,場景配置資訊包括第一描述符集和描述符指令集中的至少一種,第一描述符集用於定義聯網設備的設備類型,從而能夠根據目標配置資訊重新定義聯網設備的設備功能,使得設備功能更加豐富。此外,本申請還藉由服務端存儲預設配置資訊,以便於即時監控,當聯網設備丟失後可以在服務端切斷與聯網設備的通信連接,保證聯網設備的資料來源安全;最後基於場景配置資訊,建立與目標設備之間的通信連接,以使聯網設備接入到目標設備,從而以服務端獲取配置資訊並與目標設備建立通信連接的方式,有效避免被電腦主機抓包而洩露真實資料來源和網路通信資料,以及有效避免被惡意程式破解,保證聯網設備的設備安全性。
下面將結合本申請實施例中的附圖,對本申請實施例中的技術方檔案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬於本申請保護的範圍。
如相關技術記載,一些接入設備的設備功能都是出廠時固定,在出廠後無法改變或者只能以重新寫入軟體的方式改變其功能。例如,USB介面的隨身碟在出廠時規定只能作為存放裝置使用,在後續應用過程中,隨身碟也只能在本機存放區資料。有些接入設備雖然有多種設備功能可以切換,但是這些功能都是在出廠前預先設定好的,使得接入設備只能在固定的功能之間進行切換,不能在出廠後進行改變。另外,一些接入設備的接入介面數量比較少,難以滿足多種功能場景的需求,例如,車載設備USB通訊介面的數量有限(通常為1個),一般只能作為讀隨身碟的功能使用。
此外,由於接入設備的實際應用情況複雜,在出現設備新的型號未被適配、出廠時遺漏特定型號的適配資料等硬體不相容的情況下,可能出現目標設備對接入設備接入資訊無法識別的情況,導致接入設備的接入失敗,造成接入設備的糾錯成本的上升。例如,接入設備(此時接入設備為從機設備)接入主機設備失敗或者接入設備(此時接入設備為主機設備)接入從機設備失敗,需要將接收設備回收,並重新更新硬體,造成資源浪費或成本上升。
另外,設備的相關功能或應用的資料存放在設備本地,這樣不利於資料的保密或保護。設備如果丟失,設備中的資料也隨之丟失。由於資料存儲在設備本地,例如具有重要功能的軟體、驅動等,即使在防護軟體的保護下,資料也容易被逆向破解。並且當接入設備需要進行應用擴展時,需要在電腦主機中安裝驅動等控制軟體,導致容易被電腦主機抓包,從而暴露真實資料來源和網路通信資料,也可能導致接入設備被惡意程式破解,存在較高的安全風險。
以上問題導致了一方面設備功能單一,另一方面糾錯成本上升,再一方面在與電腦主機連接時無法保障本地資料的資料安全。
在介紹本申請各實施例之前,先對本文中的一些技術術語進行簡單的說明。
1.主機與從機的通信規則。分為主機模式和從機模式,主機主動向從機發送資料交互指令,從機根據資料交互指令進行被動回應。以USB通信規則為例,USB分為主機(如電腦主機)和從機(如隨身碟)。主機向從機的端點發送權杖包(或權杖包+資料包),從機根據端點接收到的權杖包(或權杖包+資料包)進行回應。其中權杖包包括但不限於:SETUP權杖包:用於主機向從機發送獲取資料包、執行設置或向從機發送資料包等;IN權杖包:用於主機向從機的獲取資料包。從機返回資料包和ACK狀態包;如果從機無法返回相應的資料包,則返回NAK狀態包;OUT權杖包:用於主機向從機發送資料包,並附帶發送的資料包。從機設備接收資料包,並返回ACK、NYET等狀態包;如果從機設備無法接收資料包,則返回NAK狀態包或STALL狀態包等。一些情況下,在主機在發送OUT權杖包之前,先發送PING權杖包測試從機設備是否具有接收資料包的能力。
此外,以USB為例,權杖包還包括SOF權杖包等以及其他狀態包不再進行贅述。
2.關於枚舉(或建立握手連接)的原理。對於主機設備來說,枚舉(或建立握手連接)是讀取從機設備通訊參數以進一步實現資料交換的過程。以USB大型存放區設備類型為例:一是讀取從機描述符等基本參數,包括硬體描述符、配置描述符、埠描述符、端點描述符的參數,並按照不同的參數載入驅動資訊,實現硬體能夠連接和通訊,如獲取端點的相關資訊。二是讀取移動存放裝置參數,例如容量大小、是否為唯讀等等;三是讀取檔案系統資訊,使之能夠在電腦作業系統上顯示盤符。但是,在本申請使用過程中,不一定嚴格遵守作業系統的枚舉過程,但是一定是讀取了移動存放裝置枚舉所必要的資料。
為此,本申請實施例提供一種設備接入方法,基於預設生成策略配置所述聯網設備的配置資訊,所述配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集和功能指令集中的至少一種、資料來源配置資訊,所述第一描述符集用於定義所述聯網設備的設備類型,所述功能指令集包括描述符指令集;預載入所述場景配置資訊;基於載入後的所述場景配置資訊,建立所述聯網設備與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備。
可選地,所述配置資訊存儲在聯網設備或服務端或使用者端中。
本申請實施例提供一種設備接入方法,基於預設生成策略配置聯網設備的目標配置資訊,目標配置資訊包括聯網設備在至少一種應用場景下的場景配置資訊,場景配置資訊包括第一描述符集和功能指令集中的至少一種、資料來源配置資訊,第一描述符集用於定義聯網設備的設備類型,功能指令集包括描述符指令集,描述符指令集用於控制聯網設備與目標設備之間的資料交換;藉由在聯網設備與服務端通信連接時,預載入目標配置資訊;同時藉由服務端存儲目標配置資訊,以便於即時監控聯網設備,當聯網設備丟失後可以在服務端切斷與聯網設備的通信連接,保證聯網設備的資料來源安全;基於載入後的第一描述符集和功能指令集中的至少一種、資料來源配置資訊,建立所述聯網設備與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備。
本申請實施例提供一種設備接入方法,當與服務端通信連接時,預載入目標配置資訊,服務端存儲有多種預設配置資訊,目標配置資訊為多種預設配置資訊中的一種,目標配置資訊包括聯網設備在至少一種應用場景下的場景配置資訊,場景配置資訊包括第一描述符集和描述符指令集中的至少一種,第一描述符集用於定義聯網設備的設備類型,基於目標場景配置資訊,建立與目標設備之間的通信連接,以使聯網設備接入到目標設備,目標場景配置資訊為場景配置資訊中的一種。
請參照圖1,圖1為本申請實施例提供的一種設備接入方法的流程示意圖。
本申請實施例的方法可應用於聯網設備,該聯網設備包括但不限於具備聯網功能的單片機或嵌入式等設備、智慧手機或筆記型電腦等終端設備、車載終端設備、車載娛樂終端、網路USB key設備(例如銀行U盾、數位憑證、加密狗等)、網路代理控制設備(例如多埠轉發器)、遠端控制器(包括但不限於網路讀寫控制設備、網路控制器(例如路由器和智慧閘道等))、通信類設備(Communication Device Class,CDC,例如網卡、資料機、ISDN(Integrated Services Digital Network)終端)、人體學介面類別設備(Human Interface Device,HID,例如鍵盤或滑鼠)、大型存放區類設備(Mass Storage Device Class,MSC,例如隨身碟、網路隨身碟、讀卡器、網路讀卡器)、印表機類設備(Printer device,例如USB介面的印表機)、靜態圖像獲取類設備(Still Imaging device)、視頻類設備(Video device)、音視頻類設備(Audio/Video Devices)、智慧卡類設備、USB集線器類設備(Universal Serial Bus Hub)以及自訂類設備等。
在本申請一實施例中,聯網設備藉由有線或者無線網路(例如雙絞線或光纖等乙太網介面、WIFI熱點、超寬頻UWB、藍牙、4G或5G移動蜂窩網路、LoRa遠距離無線電等)與服務端通信連接,服務端包括但不限於個人電腦、手機、移動終端、筆記型電腦、嵌入式電腦、物理伺服器、虛擬伺服器、伺服器集群和雲伺服器。在聯網設備與服務端的聯網過程中,可以進一步設置虛擬私人網路絡、使用網路專線等方式加強網路安全性。
在本申請的一實施例中,服務端為一控制端。控制端包括服務端,或使用者端。使用者端與聯網設備通信連接,例如,使用者端藉由P2P通信方式直接連接聯網設備,使用者端與聯網設備之間的通信資料不經過服務端轉發,在資料交換過程中,能夠提高傳輸效率)。
在本申請的一實施例中,控制端位於聯網設備的本地,並且藉由藍牙等近場通訊方式與聯網設備進行連接。在本申請的一實施例中,控制端位於聯網設備的本地,並且藉由藍牙等近場通訊方式與聯網設備進行連接,並有創建場景、下發場景、資料交換控制等功能。在本申請的另一實施例中,控制端也可以位於聯網設備的遠端,並且藉由TCP/IP網路等與進行遠端通訊。在本申請的另一實施例中,控制端一方面可以作為使用者端直接連接聯網設備,另一方面控制端具有服務端的功能,例如創建場景、下發場景、資料交換控制等功能。
在本申請的實施例中,可以由服務端或聯網設備創建場景。
參考圖2所示,為本申請一實施例中聯網設備的結構示意圖。該聯網設備包括但不限於聯網單元201、存儲單元202、交互單元203、第一介面204和第二介面205及主控模組(圖中未示),其中聯網單元201用於與服務端通信連接,交互單元203用於與使用者交互,第一介面204和第二介面205用於與目標設備建立通信連接。第一介面204可以使聯網設備單獨作為從機設備與目標設備(主機)連接,第二介面可以使聯網設備單獨作為主機設備與目標設備(從機)連接,第一介面和第二介面也可以使聯網設備同時作為主機設備和從機設備,分別接入不用的目標設備。例如,第一介面與作為主機的電腦設備通信連接,第二介面與作為從機的存放裝置通信連接,以實現電腦設備、聯網設備(和服務端)以及存放裝置之間的通信連接。
在本申請的一實施例中,所述聯網單元201包括但不限於實現上述有線連接的雙絞線或光纖等乙太網介面單元,以及實現上述無線連接的WIFI單元、藍牙單元、UWB單元、4G或5G通信單元、LoRa遠距離無線電通信單元等。交互單元203包括顯示單元、按鈕、開關或滑動開關。顯示單元可以為顯示幕或觸控屏。主控模組包括微控制單元(Microcontroller Unit,MCU)晶片、主機中的至少一種。
在本申請的一實施例中第一介面204或第二介面205可以為USB介面、HDMI介面、SCSI介面、IEEE1394介面、SATA介面、eMMC介面、SDIO介面、M.2介面、串列通訊介面等介面中的至少一種。
需要說明的是,與“聯網設備”接入的設備均可以作為“目標設備”。“聯網設備”與“目標設備”均可以為主機或從機,也可以作為對等通訊設備。對等通訊設備是指不區分主機、從機的通訊設備。若聯網設備作為對等通訊設備時,聯網設備在第一介面(第一介面為接收端點)接收目標設備發送的資料,在第二介面(第二介面為發送端點)向目標設備發送資料。同理,若目標設備作為對等通訊設備時,目標設備在接收端點接收聯網設備發送的資料,在發送端點向聯網設備發送資料。
在本申請的一實施例中,使用者或設備廠商可以預先在服務端配置聯網設備的場景配置資訊。當聯網設備接入目標設備前,從服務端讀取場景配置資訊對應的第一描述符集,根據第一描述符集將聯網設備的第一介面、第二介面等物理通訊介面設置為主機模式或從機模式、或者對等通訊模式,並接入目標設備,從而建立與目標設備的連接關係,並進行資料交換。
在本申請的一實施例中,當聯網設備作為從機模式時,可以將聯網設備(如聯網設備作為隨身碟)與電腦主機通信所需的資料存儲在服務端中。當聯網設備作為主機模式時,可以將聯網設備與目標設備(如目標設備為隨身碟)的通信協定等資料存放在服務端中。聯網設備在通電後向服務端獲取所需的第一描述符集等接入資料,以完成與目標設備的接入和資料交換。
需要說明的是,本申請實施例所述的“主機”或“主機模式”表示一種設備A相對於另一種設備B時作為主機的一種相對身份關係,並不意味著設備A只能是“主機”或“主機模式”,其相對於又一種設備C還可以是作為“從機”或“從機模式”。同理,本申請實施例所述的“從機”或“從機模式”表示一種設備A相對於另一種設備B時作為從機的一種相對身份關係,在此不再贅述。
在本申請的一實施例中,顯示單元顯示使用者預設的多種場景,並可以供使用者選擇切換不同設備接入場景,其中“*”表示當前所選擇的場景。聯網設備接收使用者選擇的場景,將配置請求發送給服務端或與服務端通信連接的使用者端,其中配置請求中包括選擇的場景。服務端或使用者端獲取配置請求相匹配的場景配置資訊,並藉由與聯網設備通信連接的服務端,或與服務端通信連接的使用者端將場景配置資訊發送給聯網設備,聯網設備根據場景配置資訊設置聯網設備的設備功能。
例如,當選擇隨身碟-64G、隨身碟-1024G或隨身碟-16G之一的場景時,聯網設備為網路隨身碟形態,隨身碟的可用存儲空間分別為64G、1024G和16G,存儲的資料不相同,對應格式化的檔案系統為FAT32、ExFat或CDFS,分別用於存儲工作材料、多媒體素材或作業系統啟動引導程式。
當選擇數位憑證場景時,聯網設備為USBkey形態,可以用於身份認證。例如,與電腦主機通信連接,當電腦主機需要登錄業務系統時,藉由USBkey對電腦主機進行近距離或遠端身份認證。
當選擇代理模式場景時,聯網設備為網路代理控制形態,可以將介面接入的設備虛擬化至服務端或者控制端。
當選擇通用讀寫控制模式時,聯網設備為網路讀寫控制設備形態,可以按照服務端指令或者預設的規則,對第二介面接入的設備進行讀寫等控制。
當選擇音訊增強模式時,聯網設備為網路中間控制設備形態,第一介面接入電腦主機、第二介面接入音訊播放設備,可以將電腦主機發送的音訊資料即時發送至服務端進行計算、或者從服務端下載增強腳本模型的方式在聯網設備進行資料處理,將處理得到的音訊資料發送至音訊播放設備進行音訊播放。
具體的,使用者藉由顯示單元選擇“隨身碟-64G、隨身碟-1024G、隨身碟-16G、數位憑證、通用讀寫控制模式、代理模式、通用讀寫控制模式、音訊增強模式”中的一個場景後,聯網設備接收使用者選擇的場景,將包括場景的配置請求發送給服務端或與服務端通信連接的使用者端。服務端或使用者端獲取選中的場景配置資訊,並藉由與聯網設備通信連接的服務端,或與服務端通信連接的使用者端將對應場景的場景配置資訊發送給聯網設備,聯網設備根據場景配置資訊設置聯網設備的設備功能為選中場景的功能或資料來源(如隨身碟形態的不同資料來源)。
應理解,在其他實施例中,聯網設備還包括更多或更少的元件,例如網路隨身碟僅有第一介面,而沒有第二介面的情況,若第一介面為公口,用作從機設備時的介面,則在需要作為主機設備時,藉由介面轉換器將公口轉換為母口,以作為主機設備時的介面。又例如,聯網設備包括多個第一介面或第二介面,以同時接入多個主機設備或從機設備。聯網設備也可以無需顯示單元,其切換場景的操作在服務端完成,或者聯網設備藉由Wi-Fi、藍牙、NFC、移動蜂窩網路(如4G、5G通訊)或衛星網路等方式使用其他終端進行控制。顯示單元也可以包括更多或更少的場景,在此不再贅述。
在本申請的一實施例中,聯網設備藉由聯網單元201與控制端進行連接。控制端可以作為服務端,或服務端與使用者端的組合設備。示例性地,圖3A至圖3F示出了聯網設備與控制端交互的示意圖。控制端可以為移動終端、臺式電腦或服務端(雲伺服器)等。控制端基於服務端(如雲伺服器)或控制端自身,預先創建、編輯、配置或導入場景(或進一步選定場景)。控制端可以具備全部許可權,也可以對許可權進行控制,如使用者A(臺式顯示器)具備場景創建/配置/導入的場景生成許可權,可以創建或編輯場景;使用者B(移動終端)具備選擇場景許可權,可以根據使用者A創建或編輯的場景進行選擇等。當聯網設備獲取雲伺服器(如藉由遠端通訊)或控制端(如藉由近場通訊)的場景資訊(或進一步地獲取選定的場景資訊),並按照配置使能對應聯網設備的接入場景。聯網設備可以具備選擇場景的許可權;也可以不具備選擇場景的許可權,由控制端進行場景預設選擇。
示例性地,圖3A、圖3B示出了聯網設備作為可攜式設備與控制端交互的示意圖,其中圖3A的聯網設備帶有顯示幕及第二介面205,藉由雲伺服器(如遠端通訊)或控制端(如近場通訊)獲取的場景資訊(或進一步的獲取選定對應介面的場景),可以根據顯示幕的場景清單選定使能的場景;或圖3B的聯網設備不帶有顯示幕,但帶有第二介面205,藉由滑動開關,根據場景的編號順序等選定使能的場景,可以根據場景的編號順序實現單個設備不同場景(功能)的切換。圖3C示出了聯網設備作為移動終端與控制端交互的示意圖,可以從服務端接收或選定場景資訊,也可以在移動終端本地創建、或編輯、或導入場景資訊;圖3D示出了聯網設備作為智慧穿戴設備(如智慧手錶)與控制端交互的示意圖,可以從服務端接收或選定場景資訊。圖3C及圖3D所示的聯網設備包括第二介面205。進一步地,基於第二介面205,聯網設備藉由資料線或介面轉換線,實現手機線(如TYPE-C介面)與USB公口(從機模式下、公頭)或母口(主機模式下、母頭)的轉換。
示例性地,圖3E示出了聯網設備作為車載終端與控制端交互的示意圖。聯網設備帶有顯示幕及第二介面205,藉由獲取雲伺服器(如遠端通訊)或控制端(如近場通訊)的場景資訊(或進一步的獲取選定對應介面的場景),可以根據顯示幕的場景清單選定不同場景(功能)的擴展,有效解決介面數量有限情況下的功能擴展問題。如可以使車載設備的USB介面作為主機設備接入隨身碟、攝像頭等設備,將資料存儲在本機存放區或控制端或雲伺服器;或作為從機設備(如隨身碟設備等)連接筆記型電腦等,存儲交互的資料可以存儲與車載設備本地或網路。
示例性地,圖3F示出了聯網設備作為多周邊設備與控制端交互的示意圖。其中聯網設備帶有多個第二介面205,根據不同的介面分別預先創建、配置或導入場景,或進一步地選定場景。聯網設備獲取雲伺服器(如遠端通訊)或控制端(如近場通訊)的場景資訊,或進一步的獲取選定對應介面的場景,並按照配置使能對應聯網設備對應介面的場景。此外,各個介面還可以藉由滑動開關,根據場景的編號順序等選定使能的場景。可以實現單個設備多個介面的不同場景(功能)的切換。
需要說明的是,上述3A-3F中,可以同樣有圖2的聯網單元201等,此處不再贅述。
參考圖1所示,本實施例的設備接入方法包括如下步驟。
步驟S101,基於預設生成策略配置聯網設備的目標配置資訊,目標配置資訊包括所述聯網設備在至少一種場景下的場景配置資訊,場景配置資訊包括第一描述符集和描述符指令集中的至少一種、資料來源配置資訊,第一描述符集用於定義聯網設備的設備類型。
在本步驟中,場景配置資訊為定義聯網設備的設備類型(或設備功能)的配置資訊,其包括但不限於描述符集、描述符指令集、資料來源配置資訊和設備角色等。描述符集包括但不限於設備描述符、配置描述符、介面描述符、端點描述符、字串描述符、BOS描述符和自訂描述符等。描述符指令集為實現聯網設備的主機功能的指令集,其包括多種功能指令集,功能指令集但不限於獲取符指令集、驗證指令集、資料來源指令集、交互指令集和自訂指令集,獲取指令集用於獲取描述符集,驗證指令集用於對描述符集中的各種描述符進行驗證,資料來源指令集用於獲取資料來源配置資訊等配置參數,交互指令集用於實現聯網設備與其他設備的資料交互,其包括但不限於讀取指令、寫入指令、創建指令、修改指令、刪除指令和設置指令等,自訂指令集用於定義所期望的聯網設備功能。設備角色包括主機角色、從機角色和/或對等角色,當聯網設備作為主機設備時,則設備角色為主機角色,當聯網設備作為從機設備時,則設備角色為從機角色,當聯網設備作為對等通訊設備時,則設備角色為對等角色。
參考圖4所示,為本申請一實施例中配置聯網設備的目標配置資訊的架構圖。
在本申請的一實施例中,藉由與聯網設備通信連接的服務端及與服務端通信連接的使用者端,配置場景配置資訊,所述預設生成策略包括自訂創建策略、範本創建策略或外部導入創建策略中的至少一種。
在本申請的一實施例中,當預設生成策略為自訂創建策略時,使用者端創建場景配置資訊,並將場景配置資訊發送給服務端。聯網設備確定一個場景,並向服務端發送獲取場景的請求。服務端根據聯網設備發送的獲取場景的請求將與場景對應的場景配置資訊發送給聯網設備。
可選地,當預設生成策略為自訂創建策略時,基於使用者選擇的聯網設備的設備角色,配置聯網設備的第一描述符集合和資料來源配置資訊。示例性地,若聯網設備的設備角色選定為主機角色(即作為與目標設備通信連接的主機),配置用於主機枚舉的功能指令集,如獲取指令集、驗證指令集、設置指令集、交互指令集、資料來源指令集和自訂指令集,並配置資料來源配置資訊,以綁定聯網設備與目標設備進行資料交換過程中的資料來源,資料來源包括但不限於鏡像存儲文檔、特定資料夾、資料庫和資料流程等。若聯網設備的設備角色選定為從機角色(即作為與目標設備通信連接的從機),則配置用於向主機回復的描述符參數、設備類型參數和資料來源配置資訊。若聯網設備的設備角色選定為對等角色,則配置設備交換配置資訊。配置設備交換配置資訊包括配置聯網設備的資料發送端或資料接收端,例如配置聯網設備的介面1為資料發送端,及配置聯網設備的介面2為接收端。
在本申請的一實施例中,當預設生成策略為範本創建策略時,基於預設場景範本,配置聯網設備的第一描述符集及描述符指令集中的至少一種、資料來源配置資訊。示例性地,若應用場景為聯網設備作為從機設備(如大型存放區設備、音視頻等),則基於該應用場景對應的預設場景範本,配置描述符中的廠商、標識資訊和字串資訊等,以及配置資料來源配置資訊。
在本申請的一實施例中,當預設生成策略為外部導入創建策略時,基於導入的場景範本,配置聯網設備的第一描述符集及描述符指令集中的至少一種、資料來源配置資訊;或基於導入的場景資訊,配置資料來源配置資訊。
需要說明的是,本實施例藉由創建不同應用場景或者設備角色(設備模式)對應的配置資訊,以使聯網設備能夠應用於多種應用場景,提高聯網設備的適用性。
在本申請的一實施例中,使用者可在聯網設備的顯示單元上選擇一個場景。所述場景包括,但不限於隨身碟場景、USBkey場景、網路代理控制場景網路中間控制場景。
在本申請的一實施例中,場景類型可以為單個設備,如隨身碟等大型存放區設備類場景;也可以為隨身碟、攝像頭等多個場景同時接入目標設備。例如多個場景(隨身碟場景+攝像頭場景)的組合接入。
在本申請的一實施例中,單個場景所對應的設備可以是單獨的一個設備,如作為單獨的隨身碟接入目標設備;也可以為隨身碟、攝像頭等複合設備類型的設備同時接入目標設備;也可以是具有多功能的設備(如隨身碟、攝像頭)進行擇一接入目標設備。
在本申請的一實施例中,在創建場景配置資訊時,可以基於聯網設備的設備角色,配置聯網設備的第一描述符集及描述符指令集中的至少一種、資料來源配置資訊。示例性地,若聯網設備的設備角色為主機(例如作為與目標設備通信連接的主機),配置用於主機枚舉從機的描述符指令集,和/或及配置用於主機與從機進行資料交換的資料來源配置資訊。資料來源配置資訊用於綁定聯網設備與目標設備進行資料交換過程中的資料來源,資料來源包括但不限於存儲介質、存儲空間位址區間(如磁區位址區間)、鏡像存儲文檔、特定資料夾、資料庫和資料流程等。
在本申請的一實施例中,場景配置資訊還包括場景基本資訊、場景切換策略。場景基本資訊包括場景標識及場景名稱中的一種或多種。場景標識用於表徵場景的唯一身份,例如唯一身份可以為場景的唯一ID值。場景名稱用於表徵場景的名稱,例如場景名稱可以為“隨身碟(工作)”、“隨身碟(生活)”等等。場景切換策略用於表徵聯網設備選定或者切換場景的策略。場景切換策略至少包括人工作業選定策略、自動操作選定策略、允許或禁止的選定策略、允許或禁止的接入策略、介面選定策略。
在本申請的一實施例中,人工作業選定策略表徵使用者在使用者端、或服務端、或聯網設備、或控制端、或目標設備的交互介面或物理交互控制項選定聯網設備的場景。例如,使用者在使用者端的應用程式或網頁的流覽器的介面上選定場景。
可選地,聯網設備與目標設備建立連接之後,聯網設備可以藉由資料交換的方式,向目標設備傳輸場景資訊,由目標設備選定聯網設備的場景。
可選地,聯網設備與目標設備建立連接之後,聯網設備可以藉由資料交換的方式,接收目標設備傳輸的場景資訊,由目標設備、或聯網設備、或服務端、或使用者端等選定聯網設備的場景。
在本申請的另一實施例中,人工作業選定策略表徵使用者在聯網設備的交互空間上選定場景。例如,使用者藉由聯網設備的按鈕、開關或滑動開關等選定場景。可選地,場景可以在聯網設備的顯示單元上選擇。示例性地,聯網設備設有顯示單元,在顯示單元展示供使用者選擇應用場景的選項,基於使用者的選擇操作,確定應用場景,以便在聯網設備與服務端通信連接時,預載入基於使用者選擇的場景配置資訊。同樣地,在聯網設備上的選擇過程可以為即時過程,也可以為非即時過程。可選地,預設應用場景還可以在聯網設備的物理開關上選擇。示例性地,聯網設備設有物理開關,藉由撥動物理開關以選擇當前開關指標對應的場景,以便在聯網設備與服務端通信連接時,預載入基於使用者選擇的場景配置資訊。
自動操作選定策略表徵預設選定場景的規則,當使用者端、服務端、聯網設備或目標設備滿足預設的選定場景的規則時自動選定場景。預設選定場景的規則為根據定時時鐘選定場景。例如,當使用者端、服務端或聯網設備的本地定時時鐘或網路定時時鐘符合預設時鐘,選定對應的場景。
在本申請的一實施例中,根據使用者端、服務端或聯網設備的外設模組的資料選定場景。例如,當聯網設備的位置模組(如GPS定位模組、北斗定位模組)的位置資訊符合第一預設位置時,或者聯網設備的Wi-Fi、藍牙等通訊模組信號符合第一預設條件時(如信號中攜帶或未攜帶預設的MAC位址),或者聯網設備的感測器模組的資料符合第一預設數值(例如溫濕度感測器符合對應的第一預設數值),或者聯網設備的近場通訊模組(如NFC通訊模組)收到特定信號時,選定對應的場景。
在本申請的一實施例中,聯網設備基於目標設備的預設交互資料(例如描述符內容、描述符指令或者資料通信(或資料交換)內容),自動選擇對應的應用場景。
允許或禁止的選定策略表徵根據場景基本資訊、接入配置或資料交換配置,允許/或禁止選定聯網設備的場景。在根據接入配置資訊(設備描述符、配置描述符、介面描述符、端點描述符、字串描述符、BOS描述符等)、資料交換配置資訊的預設規則,禁止/或允許選定特定硬體類型的場景,例如禁止選定為大容量設備類型(如隨身碟)的場景等。根據外設模組資料的預設規則,禁止/或允許選定特定場景,例如當聯網設備的位置模組(如GPS、北斗定位等)的位置資訊符合第二預設位置時,或者Wi-Fi、藍牙等通訊模組信號符合第二預設條件(如出現或者未出現預設的MAC位址),或者聯網設備的感測器模組的資料符合第二預設數值(例如溫濕度感測器符合對應的第二預設數值),或者聯網設備的NFC通訊模組收到特定信號時,允許或禁止選定對應的場景。
在本申請的一實施例中,聯網設備基於目標設備的預設交互資料(例如目標設備發送的描述符內容、描述符指令或者資料通信(或資料交換)內容),允許或禁止對應的應用場景。
允許或禁止的接入策略表徵基於預設規則,根據目標設備發送的資料,允許/或禁止聯網設備的介面接入目標設備。當目標設備發送的描述符(如設備的廠商ID(Vendor ID)、設備ID(Product ID)或者設備類型(使用的類、子類、介面命令集、端點傳輸模式)、描述符指令或者資料通信內容中至少一種符合預設要求時,允許/或禁止接入目標設備。例如若允許或禁止的接入策略為禁止大型存放區設備接入,則當聯網設備作為主機模式時,發送描述符指令後,目標設備的響應資料符合大容量設備類型(如隨身碟)的特徵時,聯網設備斷開連接,以保護服務端或者控制端的安全。示例性地,聯網設備作為主機角色時的網路代理控制設備,基於預設腳本,藉由讀取描述符,判斷接入設備的廠商ID(Vendor ID)、設備ID(Product ID)或者設備類型(使用的類、子類、介面命令集、端點傳輸模式)等等,在只有接入的目標設備符合條件的廠商ID、設備ID或者設備類型才允許進行遠端映射,以保護服務端或者控制端的安全。
介面選定策略表徵若聯網設備在僅有一個介面時,選定的場景默認使能在唯一的介面上(例如隨身碟設備的唯一介面),若聯網設備有多個介面(例如USBHUB設備的多個介面),選定的場景進一步從多個介面中選擇使能的至少一個介面。例如聯網設備有2個介面,可以選定場景A使能介面1,場景B使能介面2,也可以選定場景A同時使能介面1和介面2。應理解,在其他實施例中,聯網設備還包括更多或更少的元件,例如僅有第一介面,而沒有第二介面的情況,若第一介面為公口,用作從機設備(如網路隨身碟模式)時的介面,則在需要作為主機設備(如讀寫隨身碟模式)時,藉由介面轉換器(如OTG轉接頭)將公口轉換為母口,以作為主機設備時的介面。又例如,聯網設備包括多個第一介面或第二介面,以同時接入多個主機設備或從機設備。聯網設備也可以無需顯示單元,其切換場景的操作在服務端完成,或者聯網設備藉由Wifi、藍牙、NFC等方式使用其他終端進行控制。顯示單元也可以包括更多或更少的場景,在此不再贅述。
在本申請的一實施例中,在創建場景配置資訊時,若聯網設備的設備角色為主機角色(即作為與目標設備通信連接的主機),則配置第一設備接入配置資訊。第一設備接入配置資訊包括第一模式、第一介面類別型、標準指令集、特殊指令集、設置指令集、第一接入狀態判斷規則、第一狀態回應規則。
第一模式將聯網設備設置為主機模式。第一介面類別型用於設置聯網設備的物理介面類別型,例如設置為USB介面、HDMI介面、SCSI介面、IEEE1394介面、SATA介面、eMMC介面、SDIO介面、M.2介面、串列通訊介面等。第一介面類別型還可以進一步綁定介面類別型對應的通訊協定指令,例如綁定USB中的權杖包(如SETUP、IN、OUT、PING等)、或狀態包(如ACK、NAK、NYET等)、或傳輸方式(如控制傳輸、批量傳輸、中斷傳輸、同步傳輸等)、或標準通訊協定等。第一標準指令集包括描述符指令集,用於向目標設備(從機)發送指令(如獲取設備描述符、獲取配置描述符、獲取介面描述符、獲取端點描述符、獲取字串描述符、獲取BOS描述符等等),請求從機對應的描述符資料,以接入目標設備。特殊指令集包括獲取設備類型資料指令集,用於獲取不同設備類型的資料。需要說明的是,不同聯網設備對應的特殊指令集不同,例如USB相關的隨身碟(USB Mass Storage Class)的特殊指令集包括用於指示MAXLUN獲取最大邏輯單元數描述符,鍵鼠設備(Human Interface Device)的特殊指令集包括用於獲取HID描述符),攝像頭(USB Video Class)的特殊指令集包括用於指示GET_RES 獲取解析度屬性描述符等。設置指令集,用於發送設置指令。設置指令至少包括設置位址、使能配置(設置配置)、使能端點或者啟動外設模組等指令中的一種或多種。第一接入狀態判斷規則,用於藉由目標設備返回的資料或回應狀態(有回應/或無回應)判斷聯網設備為接入成功/或者失敗的規則。目標設備返回的資料包括在聯網設備的接入階段或資料交換階段中目標設備返回的資料。第一狀態回應規則,用於根據聯網設備的接入的狀態做出回應的規則。例如當判斷聯網設備接入成功時,聯網設備向服務端發送接入成功的資訊,服務端提示使用者端可以進行下一步操作;當判斷聯網設備接入失敗時,向服務端發送接入失敗的資訊,獲取新的指令集,並重新向目標設備發送指令。需要說明的是,以上所述的指令集,可以為至少一條資料交換指令,也可以為多條資料交換指令。
在本申請的一實施例中,可以預設多個預選場景在接入失敗時進行自動選擇,例如,當選擇的場景A(如接入隨身碟場景)接入失敗時,切換場景B(如接入攝像頭設備場景)或場景C(如接入鍵盤設備場景)等進行重新嘗試接入,直至嘗試所有的預選場景或接入成功。
在本申請的一實施例中,服務端根據聯網設備接入失敗時提交的相關接入資料(如目標設備向聯網設備返回的資料(如全部或部分描述符或相關握手資料等)),進一步的對返回的資料進行檢索、比對、分析和判斷,確認目標設備的設備類型,從而向聯網設備發送新的獲取描述符指令集或者選定新的場景,以使得聯網設備重新嘗試接入目標設備。
在本申請的另一實施例中,在創建場景配置資訊時,若聯網設備的設備角色為從機角色(即作為與目標設備通信連接的從機),則配置第二設備接入配置資訊。
在本申請的一實施例中,第二設備接入配置資訊包括第二模式、第二介面類別型、標準資料集、特殊資料集、執行設置指令、第二接入狀態判斷規則、第二狀態回應規則。
第二模式將聯網設備設置為從機模式。第二介面類別型用於設置聯網設備的物理通訊介面的類型,例如USB介面、HDMI介面、SCSI介面、IEEE1394介面、SATA介面、eMMC介面、SDIO介面、M.2介面、串列通訊介面等介面。第一介面類別型還可以進一步綁定介面類別型對應的通訊協定指令,例如回應USB中的權杖包(如SETUP、IN、OUT、PING等)、或狀態包(如ACK、NAK、NYET)、或傳輸方式(如控制傳輸、批量傳輸、中斷傳輸、同步傳輸等)、或標準通訊協定等。標準資料集包括第一描述符資料集(如設備描述符、配置描述符、介面描述符、端點描述符、字串描述符、BOS描述符等等),用於在目標設備(目標設備為主機設備)發送指令時,根據發送指令的類型和參數返回對應的描述符資料,以與聯網設備建立通信連接。特殊資料集包括設備類型特殊資料集(如MAXLUN最大邏輯單元數、GET_RES解析度屬性等),用於在目標設備發送指令時,根據發送指令的類型和參數,及聯網設備場景配置或設備類型返回對應的資料。執行設置指令用於在目標設備發送設置指令時,根據發送的設置指令的類型和參數(例如設置位址、使能配置(設置配置)、使能端點或者啟動外設模組等指令),執行設置聯網設備、聯網設備的物理通訊介面或外設模組等的操作。第二接入狀態判斷規則用於藉由目標設備發送的資料(包括在設備接入階段或資料交換階段目標設備發送的資料),例如請求隨身碟設備與請求攝像頭設備的指令有所不同,判斷聯網設備為接入成功/或者失敗的規則。第二狀態回應規則用於根據聯網設備接入(即握手或枚舉)的狀態做出回應的規則。例如當判斷聯網設備為接入成功(或握手成功、枚舉成功)時,向服務端發送接入成功的資訊,服務端提示使用者端可以進行下一步操作;當判斷聯網設備為接入失敗時,在向服務端發送接入失敗的資訊,獲取新的資料集,並重新向目標設備發送建立連接的信號(例如可枚舉信號)。需要說明的是,以上所述的資料集,可以為至少一條資料交換指令的返回資料,也可以為多條資料交換指令的多條返回資料。
在本申請的一實施例中,可以預設多個預選場景在接入失敗時進行自動選擇,例如,當選擇的場景A(作為隨身碟場景)接入失敗時,切換場景B(作為攝像頭設備場景)或場景C(作為鍵盤設備場景)等進行重新嘗試接入,直至嘗試所有的預選場景或接入成功。
在本申請的一實施例中,服務端根據聯網設備接入失敗時提交的相關接入資料(如目標設備向聯網設備發送的資料(如標準指令,或特殊指令,或設置指令等指令資料或其他相關的握手資料等),進一步的對發送的指令資料進行檢索、比對、分析和判斷,確認目標設備需要接入的設備類型,從而向聯網設備發送新的描述符集或者選定新的場景,以使得聯網設備重新嘗試接入目標設備。
需要說明的是,本申請實施例中聯網設備的介面可以在出廠後能夠在主機模式、從機模式之間進行切換(如具備OTG功能的介面),也可以固定為主機模式或固定為從機模式(如不具備OTG功能的介面,在硬體電路上設計固定為主機或從機的介面)。當介面固定為主機或從機的模式時,介面對應的場景只能為主機模式或從機模式下的不同場景,無需在場景配置中進行配置。同時,根據介面類別型的不同,可以固定為特定的通訊協定,無需在場景配置中進行配置,例如當介面為USB介面時固定為對應的USB協定等。
在本申請的另一實施例中,在創建場景配置資訊時,若聯網設備的設備角色為對等通訊模式,配置第三設備接入配置資訊。第三設備接入配置資訊包括第三模式、第三介面類別型、交互資料集、設置指令集、第三狀態判斷規則、第三狀態回應規則。
第三模式用於設置聯網設備為對等通訊模式。第二介面類別型用於設置聯網設備的物理通訊介面的類型。交互資料集用於設置接入時向目標設備發送的資料。執行設置指令用於在目標設備發送設置指令時,根據發送設置指令的類型和參數(例如設置位址或者啟動外設模組等指令),執行設置聯網設備、聯網設備的介面或外設模組等的操作。第三狀態判斷規則,用於藉由目標設備發送的資料(包括在資料交換階段目標設備發送的資料)判斷聯網設備接入成功/或者失敗的規則。第三狀態回應規則,用於根據接入的狀態做出回應的規則。例如當判斷聯網設備為接入成功時,向服務端發送接入成功的資訊,服務端提示使用者端可以進行下一步操作;當判斷聯網設備為接入失敗時,在向服務端發送接入失敗的資訊的同時,進一步獲取新的資料發送指令或者回應資料集,並重新向目標設備發送資料/或等待接收資料。
在本申請的一實施例中,場景配置資訊還包括資料交換配置資訊。若聯網設備的設備角色為主機(例如作為與目標設備通信連接的主機),資料交換配置資訊包括資料來源指令集、資料交換指令集、自動執行指令腳本、第一綁定交互系統或資料來源策略、第一允許/禁止交換策略。
資料來源指令集用於向目標設備發送獲取、設置目標設備資料來源資訊的指令,例如獲取目標設備的容量資訊(如最大邏輯單元數、可格式化邏輯塊總數、最後邏輯塊位址、塊容量、總容量、可用空間容量等)或讀寫狀態(如唯讀狀態、只寫狀態、可讀可寫狀態)等。資料交換指令集,用於向目標設備發送指令,使目標設備執行預設指令或者返回資料。例如向目標設備發送寫指令和資料包,使目標設備在其存儲介質的特定位置寫入資料包的資料;或者向目標設備發送讀指令,使目標設備返回其存儲介質特定位置資料,或者讀取目標設備的外設模組的特定資料,或者感測器特定資料。其中寫指令及讀指令中至少包括操作存儲介質的存儲空間位址(如磁區位址)、操作的存儲空間數量(如磁區數量)。
在本申請的一實施例中,資料交換指令集可以為低級指令。資料交換指令包括USB通訊協定指令。USB通訊協定指令包括:向目標設備(如USB設備)的特定端點(如1端點),發送IN權杖包,以獲取目標設備返回的資料(即向1端點IN資料指令);及/或向目標設備(USB設備)的特定端點(如2端點),發送OUT權杖包及資料包,以向目標設備發送資料(及向2端點OUT資料指令)。
資料交換指令(如低級指令)包括小型電腦系統介面(Small Computer System Interface, SCSI)透明命令集指令。SCSI透明命令集指令向目標設備(如USB存放裝置)發送讀指令,以獲取目標設備存儲空間的特定磁區位址的資料;及/或向目標設備(如USB存放裝置)發送寫指令及資料包,向目標設備存儲空間的特定磁區位址寫入資料。
在本申請的另一實施例,資料交換指令集包括自動執行指令腳本。自動執行指令腳本表徵根據預設腳本規則,自動向目標設備發送交互指令(包括低級指令、或高級指令等),實現自動化操作。自動執行指令腳本包括自動執行讀取文檔目錄腳本。例如,在目標設備(如為存放裝置)連接成功後,觸發自動運行規則,自動執行讀取文檔目錄腳本讀取文檔資訊,將讀取到的文檔資訊的資料進行資料轉換,在交互系統(如使用者端介面)中進行顯示。具體的,自動執行讀取文檔目錄腳本按照檔案系統協定規則自動化的讀取所有文檔目錄資料,讀取規則包括:先讀取引導磁區資料(一般為磁區位址0x00)以分析出檔案系統引導磁區位址;再讀取檔案系統引導磁區資料以分析出根資料夾(或首目錄)的磁區位址以及簇(塊)大小等相關參數,再讀取根資料夾磁區位址資料分析出文檔資訊;再基於文檔資訊可以分析出子目錄、子文檔等。
進一步地,自動執行指令腳本還可以包括高級指令,高級指令為基於多個低級指令(如USB通訊協定和/或SCSI透明命令集指令的讀/寫)的操作腳本指令,根據使用者操作、或定時等條件執行。例如,針對不同檔案系統協議(如exfat、fat32等檔案系統)開發的文檔操作指令,根據高級指令的參數(如文檔路徑、檔案名等),可以自動向目標設備發送多條交互指令(包括多個低級指令、高級指令之間的引用等),並根據交互指令的讀寫資料的上下文分析,讀/或寫目標設備檔案系統特定的存儲空間資料(如磁區位址資料),以實現特定的文檔操作功能,如“創建文檔指令”“刪除文檔指令”“修改檔案屬性指令”“讀取文檔內容指令”“修改文檔內容指令”等。高級指令可以由操作人員藉由使用者端、服務端、或者聯網設備等觸發指令向聯網設備下達;也可以藉由定時裝置、GPS等外設模組觸發指令向聯網設備下達。高級指令之間也可以互相引用,例如,“創建並生成內容高級指令”,可以先執行創建文檔指令(檔案名為創建文檔指令的參數),再執行修改文檔內容指令(檔案名、文檔內容為修改文檔內容指令的參數),如創建檔案名為test.txt、文檔資料為test字串的文字文檔。
在本申請的一實施例中,高級指令可以為根據不同檔案系統協定開發的文檔操作指令,如創建文檔指令、刪除文檔指令、修改檔案屬性指令、讀取文檔內容指令、修改文檔內容指令等。
在本申請的一實施例中,自動執行指令腳本包括資料監聽腳本。資料監聽腳本用於在符合預設規則時,自動向服務端、使用者端進行回應。例如,聯網設備藉由向目標設備(如USB視頻源設備、USB攝像頭等)的IN端點發送IN權杖包,檢測目標設備否有藉由IN端點向聯網設備發送資料包(非NAK狀態包),當IN端點有發送資料包時,向使用者端、或服務端轉發從IN端點接收的資料包。
在本申請的一實施例中,自動執行指令腳本包括:根據外設模組(如定位模組GPS等、感測器等)、定時裝置或者網路模組的資料,自動執行預設腳本(如高級指令或低級指令等)。例如,當GPS定位裝置檢測出的位置不在預設位置或者聯網設備的本機IP位址不在特定位址時,執行刪除文檔資料指令、啟動資料監聽腳本等。
第一綁定交互系統或資料來源策略用於聯網設備將使用者端、服務端下發的指令自動轉換為預設的資料交換指令集(至少一個指令)並將轉換後的資料交換指令集發送給目標設備執行,例如下發的指令可以為使用者端讀出一個文檔/或寫入一個文檔、讀/寫特定磁區位址等操作。
在本申請的另一實施例中,第一綁定交互系統或資料來源策略還用於將聯網設備對目標設備操作後的資料,自動存儲至聯網設備、使用者端、服務端中的存儲介質(如存儲晶片、硬碟等)、存儲空間(如磁區區間)、特定的資料庫/或資料夾/或文檔(如鏡像文檔)、存儲空間或結構化的資料串等任意位置中。
第一允許/禁止交換策略表徵允許/禁止使用者端或服務端藉由聯網設備向目標設備下發特定的指令等操作,例如禁止向目標設備發送寫入資料的指令。
在本申請的一實施例中,第一允許/禁止交換策略可以包括低級指令。第一允許/禁止交換策略可以為USB通訊協定指令,例如第一允許/禁止交換策略可以為允許/禁止向特定端點發送IN/或OUT權杖包指令。第一允許/禁止交換策略還可以為SCSI透明命令集指令,例如第一允許/禁止交換策略可以為僅允許/禁止向特定磁區位置發送讀/寫的指令。
在本申請的另一實施例中,第一允許/禁止交換策略可以包括高級指令,例如,第一允許/禁止交換策略可以為文檔操作指令,如僅允許/禁止發送刪除文檔指令。
第一允許/禁止交換策略還可以表徵基於指令對應的資料包進行控制,允許/禁止目標設備向聯網設備發送特定資料(例如帶有特定特徵的資料包)。例如,允許/禁止寫入指令中附帶的資料包符合特定特徵,且該寫入指令向目標設備發送。或者允許/禁止讀取指令中目標設備返回的資料包符合特定特徵,且該讀取指令向服務端、使用者端發送。第一允許/禁止交換策略還可以表徵根據外設模組(如定位模組、感測器、網路模組等)的資料執行允許/禁止資料交換的策略。
在本申請的一實施例中,若聯網設備的設備角色為從機(例如作為與目標設備通信連接的主機),資料交換配置資訊包括指令回應操作、自動執行指令回應操作腳本、第二綁定交互系統或資料來源策略、第二允許/禁止交換策略。
指令回應操作用於根據目標設備發送的資料交換指令進行回應,例如執行預設操作或者返回資料。
在本申請的一實施例中,目標設備向聯網設備發送的資料交換指令集可以為低級指令,例如為USB通訊協定指令。資料交換指令集包括:當目標設備(如USB設備主機)向聯網設備的特定端點(如1端點)發送IN權杖包時,則向1端點回復回應資料包;當目標設備的特定端點(如2端點)發送OUT權杖包及資料包時,接收目標設備向2端點OUT發送的資料包。
在本申請的一實施例中,目標設備向聯網設備發送的資料交換指令集可以為SCSI透明命令集指令。資料交換指令集包括:當目標設備(作為主機設備)發送讀指令以讀取特定磁區位址的資料時,向目標設備返回資料存儲空間特定磁區位址的資料;向目標設備發送寫指令(寫指令包括特定磁區位址及資料包)時,將資料包寫入至資料存儲空間特定磁區位址。
在本申請的一實施例中,目標設備向聯網設備發送的資料交換指令集可以為高級指令,例如根據不同檔案系統協定開發的文檔操作指令。資料交換指令集包括創建文檔指令、刪除文檔指令、修改檔案屬性指令、讀取文檔內容指令、修改文檔內容中的至少一種。資料交換指令集也可以是基於多個低級指令(如USB通訊協定和SCSI透明命令集指令的讀/寫)的操作,或者可以是為按照特定規則進行操作的自動化腳本。
在本申請的一實施例中,聯網設備的資料交換指令集的指令操作的物件包括存儲類物件及外設模組類物件。存儲類物件包括聯網設備的本機存放區晶片、使用者端、服務端中的資料庫/或資料夾/或文檔(如鏡像文檔)/或存儲空間(如磁區區間)中的至少一種。外設模組類物件包括定位模組、感測器模組、音視頻源模組、人機交互模組、加密模組中的至少一種。
自動執行指令回應操作腳本表徵根據預設腳本的規則,聯網設備自動向目標設備返回資料,或進行資料相關的讀寫操作,或進行外設模組的控制,實現自動化操作。例如,在有備份的需求下且預設對特定磁區位址的資料進行保護時,當目標設備發送寫入特定磁區位址的資料時,自動先讀取該磁區位址的資料並寫入到備份的存儲空間,再執行目標設備的寫入資料操作。
在本申請的一實施例中,聯網設備自動執行指令回應操作腳本包括資料監聽腳本。資料監聽腳本包括低級指令。當符合預設規則時,資料監聽腳本自動向服務端、或使用者端、或控制端、或聯網設備連接的電子設備等進行回應。例如,目標設備向聯網設備的OUT端點發送OUT權杖包及資料包,聯網設備當檢測到端點號或資料包內容符合預設規則時,向使用者端、或服務端轉發資料包或進行提醒。
在本申請的一實施例中,自動執行指令回應操作腳本包括:根據外設模組(如定位模組GPS等、感測器等)、定時裝置、或者網路模組的資料,自動執行預設腳本(如高級指令或低級指令等)。例如,當GPS定位裝置檢測出的位置不在預設位置或者聯網設備的本機IP位址不在特定位址時,執行刪除文檔資料指令、啟動資料監聽腳本等。
第二綁定交互系統/或資料來源用於將目標設備下發的指令自動轉換為預設的指令回應操作並執行,例如目標設備下發的指令可以為目標設備讀出一個文檔/或寫入一個文檔、讀/寫特定磁區位址等操作指令。聯網設備根據指令執行相應的操作,並返回資料包或者狀態包。同時,聯網設備根據指令還響應容量資訊(如最大邏輯單元數、可格式化邏輯塊總數、最後邏輯塊位址、塊容量、總容量、可用空間容量等)或讀寫狀態(如唯讀狀態、只寫狀態、可讀可寫狀態)等。
在本申請的另一實施例中,第二綁定交互系統或資料來源策略還用於將指令回應操作的資料來源自動關聯至聯網設備、使用者端、服務端中的存儲介質(如存儲晶片、硬碟等)、存儲空間(如磁區區間)、特定的資料庫/或資料夾/或文檔(如鏡像文檔)、存儲空間或結構化的資料串等任意位置中。
第二允許/禁止資料交換策略表徵基於指令進行控制,並允許/禁止使用者端、服務端或聯網設備對目標設備下發特定的指令進行操作(或回應),例如禁止對目標設備發送的寫入資料指令進行操作或回應。
在本申請的一實施例中,第二允許/禁止資料交換策略包括低級指令。第二允許/禁止資料交換策略可以為USB通訊協定指令,例如為允許/禁止操作(或響應)目標設備向聯網設備的端點IN/或OUT發送的權杖包指令。第二允許/禁止交換策略還可以為SCSI透明命令集指令,例如為允許/禁止操作(或響應)目標設備向聯網設備發送特定磁區位置發送讀/寫指令。
在本申請的另一實施例中,第二允許/禁止交換策略可以包括高級指令包括高級指令,例如,第二允許/禁止交換策略可以為文檔操作指令,例如為允許/禁止操作(或響應)目標設備向聯網設備發送的刪除文檔指令。第二允許/禁止交換策略還可以表徵基於指令對應的資料包進行控制,對目標設備向聯網設備發送的特定資料允許/禁止操作(或回應)。
在本申請的另一實施例中,在創建場景配置資訊時,若聯網設備的設備角色為對等通訊設備,配置設備交換配置資訊。配置設備交換配置資訊包括配置聯網設備的資料發送端或資料接收端,例如配置聯網設備的介面1為資料發送端,並藉由介面1向目標設備的接收端發送資料;配置聯網設備的介面2為接收端,並藉由介面2接收目標設備發送的資料。在本申請的一實施例中,配置聯網設備的資料發送端的具體內容可參考上述配置主機的資料交換配置資訊,配置聯網設備的資料接收端的具體內容可參考上述配置從機的資料交換配置資訊。
步驟S102,預載入所述目標配置資訊。
可選地,場景配置資訊在聯網設備本地創建,當聯網設備啟動時(或接入前),預載入所述場景配置資訊。
可選地,場景配置資訊在服務端創建,聯網設備預載入從服務端獲取的場景配置資訊。
可選地,場景配置資訊預設在服務端,聯網設備預載入從服務端獲取的場景配置資訊。
可選地,所述步驟S102還包括:當與服務端通信連接時,預載入目標配置資訊,所述服務端存儲有多種預設配置資訊,所述目標配置資訊為多種所述預設配置資訊中的一種,所述目標配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集和描述符指令集中的至少一種,所述第一描述符集用於定義所述聯網設備的設備類型。
可選地,所述步驟S102還包括:所述服務端存儲的場景配置資訊為:在預載入目標配置資訊之前,基於預設生成策略,藉由配置所述聯網設備的第一描述符集合和描述符指令集合中的至少一種,以及資料來源配置資訊生成的。
可選地,所述步驟S102之前:基於預設生成策略,配置所述聯網設備的第一描述符集合和資料來源配置資訊,以生成所述場景配置資訊,所述預設生成策略包括自訂創建策略、範本創建策略或外部導入創建策略中的至少一種。
在本申請的一實施例中,在聯網設備啟動時(或接入前),聯網設備與服務端建立通信連接,並預載入服務端存儲的場景配置資訊。可以理解的是,在其他實施例中,預載入過程可以在聯網設備與服務端建立通信連接後的其他時刻進行,通信建立過程也可以在聯網設備啟動後的其他時刻進行。
在本申請的一實施例中,場景配置資訊與聯網設備的標識資訊進行關聯。例如,聯網設備的標識資訊可以為S123456。使用者或廠商預先在服務端將單個場景的場景配置資訊,或多個場景的場景配置資訊與聯網設備的標識資訊S123456進行關聯。聯網設備向服務端發起連接請求,所述連接請求中攜帶有聯網設備的標識資訊,服務端根據聯網設備發送的連接請求,將與聯網設備的標識資訊對應的場景配置資訊發送給聯網設備。聯網設備的標識資訊可以是固定在聯網設備主控晶片內的資料,也可以是聯網設備的外設模組(如加密晶片等)的資料,也可以是使用者的標識資訊,例如使用者對設備進行綁定後設備留存有使用者的唯一標識資訊。聯網設備的標識資訊可以為字串、或者二進位資料等。另外,也可以藉由使用者標識資訊與場景配置資訊進行關聯,藉由使用者標識資訊關聯的場景配置資訊,可以進行許可權控制或者多使用者共用場景。
在本申請的一實施例中,可以預載入服務端存儲的與聯網設備對應的全部場景配置資訊,也可以預載入聯網設備在當前應用場景下的場景配置資訊。例如,基於預設應用場景,向服務端預載入該應用場景對應的場景配置資訊。
在本申請的一實施例中,聯網設備預置固定的場景配置範本,從服務端獲取場景配置中的特定資訊,再將特定資訊與預置的場景配置範本結合,生成場景配置資訊並進行載入。例如聯網設備出廠預設了隨身碟的場景範本,在切換場景時,從服務端獲取的場景配置資訊只包含存儲容量資訊、讀寫狀態、相關字串、廠商ID(Vendor ID)、設備ID(Product ID)等和資料來源相關的其他配置,以切換不同的隨身碟資料來源,實現功能的改變。
在本申請的一實施例中,聯網設備的供電方式包括但不限於:1.聯網設備與目標設備連接時,使用目標設備的電源為聯網設備供電,例如,聯網設備作為從機時,與目標設備(如電腦主機)連接,以獲取電腦主機的電源;2.聯網設備內置有電源設備,以採用內置電源進行供電;3.聯網設備藉由外接電源進行供電,例如聯網設備作為主機時,藉由第一介面接入移動電源或充電頭獲取電能,第二介面連接目標設備(如從機設備),聯網設備作為從機時,藉由第二介面接入移動電源或充電頭獲取電能,第一介面連接主機設備。
可選地,聯網設備與服務端的通信建立過程包括:基於預設服務端配置資訊,向服務端發送通信連接請求。其中預設服務端配置資訊可以存儲於聯網設備,其包括但不限於服務端的通信地址(IP位址或功能變數名稱位址等)、埠、使用者名和訪問密碼等。示例性地,當聯網設備通電啟動時,讀取本地的預設服務端配置資訊,基於該預設服務端配置資訊,向服務端發送通信連接請求,以建立通信連接。
可選地,聯網設備藉由有線或者無線網路(例如雙絞線或光纖等乙太網介面、Wi-Fi熱點、超寬頻UWB、藍牙、移動蜂窩網路(如4G或5G)、衛星通訊和LoRa遠距離無線電等)與服務端通信連接,服務端包括但不限於個人電腦、筆記型電腦、嵌入式電腦、物理伺服器和雲伺服器等帶有網路服務功能的設備,或手機、移動終端等電子產品。在聯網過程中,可以進一步設置虛擬私人網路絡、使用網路專線等方式加強網路安全性。
在本申請的一實施例中,預設的應用場景可以在服務端上選擇。示例性地,藉由使用者端(如應用程式或網頁流覽器等)訪問服務端,使用者在使用者端上選擇需要發送給聯網設備的場景配置資訊,從而在聯網設備與服務端通信連接時,預載入基於使用者選擇的場景配置資訊。
可以理解的是,在服務端選擇過程可以為即時過程,也可以為非即時過程,即可以在需要預載入場景配置資訊時,在服務端上即時選擇場景配置資訊對應的應用場景,也可以預先選擇場景配置資訊對應的應用場景,當需要預載入場景配置資訊,基於預先選擇的應用場景,預載入場景配置資訊。
在本申請的一實施例中,預設的應用場景可以在聯網設備的交互模組上選擇。示例性地,聯網設備的交互模組設有顯示單元,在顯示單元展示供使用者選擇應用場景的選項,基於使用者的選擇操作,確定應用場景,從而在聯網設備與服務端通信連接時,預載入基於使用者選擇的場景配置資訊。同樣地,在聯網設備上的選擇過程可以為即時過程,也可以為非即時過程。
在本申請的一實施例中,預設的應用場景還可以在聯網設備的物理開關上選擇。示例性地,聯網設備設有物理開關,藉由撥動物理開關以選擇當前開關指標對應的應用場景,從而在聯網設備與服務端通信連接時,預載入基於使用者選擇的場景配置資訊。
在本申請的一實施例中,預設的應用場景還可以在聯網設備自動選擇。示例性地,聯網設備基於目標設備的預設交互資料(例如描述符內容、描述符指令或者資料通信內容),自動選擇對應的應用場景。或者,根據聯網設備的GPS模組的位置資訊,在特定位置選擇對應的應用場景;或者,根據聯網設備的本地定時時鐘或網路定時時鐘,自動選擇對應的應用場景。 聯網設備在獲取場景資訊後,可以在本地保存,下次運行時直接使用該場景資訊,無需再從服務端獲取。也可以在聯網設備連接服務端失敗,或者服務端下發清除場景資料指令時,刪除場景資訊。需要說明的是,本申請的目標配置資訊可以存儲於服務端,以防止聯網設備丟失後被惡意逆向破解,同時服務端有利於實現目標配置資訊的即時熱更新。
在本申請的一實施例中,場景資訊的載體包括但不限於以下至少一種:(1)傳輸的二進位資料流,例如為網路資料流程,網路資料流程可以為字串、結構體等,其中聯網設備可以直接從服務端讀取並配置使用場景資訊;(2)二進位檔案,例如為“網路隨身碟.txt”(單場景)或者“USER123456.txt”(使用者場景集)等文檔,其中聯網設備藉由下載檔案後導入並配置使用場景資訊;(3)經過程式庫文檔,例如為“網路隨身碟.so”(單場景)或者“USER123456.so”(使用者場景集)等動態連結程式庫,其中聯網設備藉由下載程式庫文檔後,藉由程式進一步調用函數、變數、字面值等配置使用場景資訊,又例如為者“網路隨身碟.a”(單場景)或者“USER123456.a”(使用者場景集)等靜態連接庫,其中聯網設備藉由下載程式庫文檔後進一步編譯、或直接調用函數、變數、字面值等配置使用場景資訊。
在本申請的一實施例中,聯網設備在獲取場景資訊後,將場景資訊使能在聯網設備的第一介面或第二介面。若聯網設備在僅有1個介面的情況下,場景預設使能唯一的通訊介面,如第一介面或第二介面。若聯網設備有多個介面(參考圖4所示),根據場景配置資訊中的介面編號進行使能,選定使能的方式可以在使用者端或服務端選定、可以在聯網設備的交互模組上選定,或可以由目標設備發送的資料包選定。對於2個以上介面的聯網設備,場景資訊可以靈活地使能在多個介面上、介面之間對於資料來源能夠共用和協同操作。
聯網設備的介面對應的場景可以有以下幾種。
1. 多個場景或場景設備類型可以為同一個,例如相同的場景設備類型(如大型存放區設備的設備類型為多個隨身碟的場景)的介面,可以分別接入不同的目標設備。
2.多個場景或場景設備類型使用相同的場景設備類型和資料來源(如大型存放區設備類型的聯網設備有多個隨身碟的場景,多個隨身碟共用同一個資料來源),可以分別接入不同的目標設備,以實現資料共用和協同操作。
3.多個場景或場景設備類型為不同的場景設備類型,例如介面1為從機模式(如隨身碟模式)的場景設備類型,可以將介面1以隨身碟的模式接入目標設備1(目標設備1為電腦主機),若介面2為主機模式的場景設備類型(如聯網設備具有讀取大型存放區設備類型的指令集,可以讀取目標設備2),可以接入目標設備2(目標設備2為隨身碟的模式)。
4. 僅有1個場景,但場景由多個介面組成,介面之間的資料進行配合、協作,例如,聯網設備(主機模式+從機模式場景下)的介面1為主機模式,接入的目標設備為從機設備(如隨身碟),介面2為從機模式,接入的目標設備為主機設備(電腦主機),進一步的,主機設備(電腦主機)藉由介面2發送的資料,由聯網設備藉由介面1轉發至從機設備(如隨身碟),從機設備(如隨身碟)回應的資料,由介面1發送,再由聯網設備藉由介面2轉發至主機設備(電腦主機),由於電腦主機和隨身碟的資料由聯網設備控制,實現了聯網設備作為中間控制設備場景,聯網設備、服務端或使用者端可以對電腦主機與隨身碟的資料交互指令進行控制;再例如,在對等通訊模式下,聯網設備的介面1為發送端(TX),介面1接入目標設備的接收端(RX);聯網設備的介面2為接收端(RX),介面2接入目標設備的發送端(TX),由聯網設備的介面1向目標設備發送資料,並由介面2接收目標設備發送的資料。
5. 僅有1個場景,但場景由多個聯網設備組成,多個聯網設備之間的資料進行分工、配合、協作,例如,以圖5A為例,使用者選定了場景A,場景A分別對聯網設備A的介面1、物理通訊介面2和聯網設備B的介面1、介面2進行設置,實現2台聯網設備及4個介面進行分工、配合、協作。
6.多個場景之間進行分工、配合、協作,如圖5B所示,多個場景之間控制之下的多個聯網設備以及多個目標設備之間進行資料共用、分工、配合和協作。
步驟S103,基於載入後的場景配置資訊,建立所述聯網設備與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備。
在本申請的一實施例中,聯網設備根據場景配置資訊,藉由介面與目標設備建立握手連接。當聯網設備作為主機模式時,用於識別接入的目標設備(此時目標設備為從機設備)的類型,以用於載入目標設備的驅動程式(如指令集),並進一步操作目標設備;當聯網設備作為從機模式時,根據目標設備發送的指令,向目標設備響應描述符等資料,用於目標設備載入聯網設備的驅動程式,並進一步操作聯網設備。
在本步驟中,目標設備可以是作為主機的電腦設備,如筆記型電腦、桌上型電腦、嵌入式主機、工業控制設備、車載設備、移動終端和物理伺服器等電腦設備;也可以是作為從機的電子設備,如隨身碟(USB快閃記憶體盤)、移動硬碟、硬碟、快閃記憶體設備讀卡器、SD卡、TF卡和外置光碟機等。當目標設備作為主機時,聯網設備作為從機與目標設備通信連接;當目標設備為從機時,聯網設備作為主機與目標設備通信連接。
可選地,當預載入的目標配置資訊包括所有應用場景下的場景配置資訊時,基於使用者在聯網設備上選擇的當前應用場景,從多個場景配置資訊中,確定與當前應用場景對應的目標場景配置資訊;基於目標場景配置資訊,定義聯網設備的設備功能,並與目標設備建立通信連接。
可選地,當預載入的目標配置資訊僅包括當前應用場景下的場景配置資訊時,基於該場景配置資訊,定義聯網設備的設備功能,並與目標設備建立通信連接。
可選地,聯網設備與目標設備之間的通信建立方式可以基於握手通信方式實現。其中,當目標設備作為主機,聯網設備作為從機時,目標設備向聯網設備發送握手請求,聯網設備回應於該握手請求,向目標設備返回目標場景配置資訊中的通信參數(例如設備描述符等描述符),以達成握手協議,從而建立通信連接。當目標設備作為從機,聯網設備作為主機時,由聯網設備發起握手請求。可選地,在達成握手協議過程中,可藉由枚舉方式驗證通信參數。
需要說明的是,本實施例藉由定義聯網設備的設備類型,以使聯網設備作為主機設備或從機設備,能夠適用於更多應用場景,實現聯網設備的應用拓展,通信資料可以不經過電腦主機,有效避免被電腦主機抓包而洩露真實資料來源和網路通信資料,以及有效避免被電腦主機上的惡意程式破解,保證聯網設備的設備安全性和資料安全性;以及在聯網設備出售或丟失時,能夠藉由服務端授權或解除與聯網設備的通信關係,進一步保證聯網設備的資料來源安全性。
需要說明的是,聯網設備與目標設備建立握手連接的過程本質上也是一種資料交換。聯網設備的模式(如主機模式、從機模式和對等通訊模式)不同,聯網設備與目標設備建立握手連接的方式也不同。
在本申請的一實施例中,若聯網設備的設備角色選定為主機模式(即作為與目標設備通信連接的主機),配置用於主機枚舉的描述符指令集中的功能指令集,如獲取指令集、驗證指令集、設置指令集、交互指令集、資料來源指令集和自訂指令集,並配置資料來源配置資訊,以綁定聯網設備與目標設備進行資料交換過程中的資料來源,資料來源包括但不限於存儲介質、存儲空間位址區間(如磁區位址區間)、鏡像存儲文檔、特定資料夾、資料庫和資料流程等。若聯網設備的設備角色選定為從機角色(即作為與目標設備通信連接的從機),則配置用於向主機回復的描述符參數、設備類型參數和資料來源配置資訊。
在一些實施例中,在圖1所示實施例的基礎上,所述步驟S102,包括:當與服務端通信連接時,向所述服務端發送配置獲取請求,所述配置獲取請求攜帶有所述聯網設備的標識資訊;接收所述服務端返回的與所述標識資訊對應的目標配置資訊。
在本申請的一實施例中,由於服務端可能同時連接多個聯網設備,所以聯網設備的標識資訊與目標配置資訊的對應關係,保證聯網設備準確獲取到的目標配置資訊。
在本申請的一實施例中,標識資訊為表示聯網設備的標識資訊,如聯網設備的設備編號、聯網設備所屬使用者的使用者名稱(或使用者編號、使用者sessionID)等。可選地,預先建立標識資訊與目標配置資訊之間的對應關係,該對應關係可以在聯網設備出廠時固定設置,也可以更改設置。可以理解的是,聯網設備的所有配置資訊均可以藉由使用者端訪問服務端,以在使用者端的頁面上進行配置,後續不再贅述。
在本申請的一實施例中,配置獲取請求還攜帶有聯網設備的當前應用場景參數,以根據標識資訊和當前應用場景參數,準確獲取當前應用場景參數對應的目標場景配置資訊。
需要說明的是,由於設備之間建立通信連接時,作為主機的設備根據通信協定(如握手協定或控制傳輸協定等)進行超時判定(通常為毫秒級或微秒級的超時判定),所以為了保證在預設時間內完成通信連接的建立,將功能指令集和描述符集預載入至聯網設備。應理解,在設備之間進行資料傳輸過程中,其傳輸協定為批量傳輸協定或者等時傳輸協定或者中斷傳輸協定,即具有較長時間的超時判定,所以對於設備交互過程的資料傳輸,可以無需預載入相關資料。另外,在一些對超時判定較長的接入情景,功能指令集和描述符集可以即時向服務端獲取。
在一些實施例中,所述聯網設備作為與目標設備通信連接的主機設備,所述描述符指令集包括多種功能指令集,所述功能指令集用於控制所述聯網設備與所述目標設備之間的資料交換。
在圖1所示實施例的基礎上,所述步驟S103,包括:基於所述描述符指令集中的功能指令集,對所述目標設備的第二描述符集中的多種描述符進行枚舉;若枚舉成功,則配置所述聯網設備與所述目標設備通信時的目標資料來源,所述目標資料來源設於所述目標設備。
若枚舉不成功,則將獲取的描述符集向服務端提交,經服務端識別後,從服務端下載對應的描述符集或者功能指令集等,並重新進行枚舉。
在本實施例中,由於聯網設備作為主機時,需要主動發起請求,所以為實現聯網設備的主機功能,預先設置開發的驅動程式(即功能指令集),並將驅動程式存儲於服務端,以保護聯網設備的功能指令集資料安全,防止聯網設備丟失後被惡意使用設備功能或資料洩露或者被逆向破解。
在一些實施例中,枚舉過程包括:基於所述獲取指令集,讀取所述目標設備的第二描述符集;基於所述驗證指令集,對所述第二描述符集中的多種描述符進行驗證;若多種所述描述符滿足預設設備要求,則判定枚舉成功。
在本申請的一實施例中,若聯網設備作為主機模式或主機角色時,在聯網設備啟動並選定場景後,從場景配置資訊中讀取第一設備接入配置資訊。聯網設備根據第一設備接入配置資訊中的第一模式,將聯網設備的介面(如第一介面或第二介面)設置為主機模式;根據介面類別型,例如將介面的通信協定設置為USB通訊協定。當目標設備(從機設備)發送可以進行枚舉(接入)的電信號時,聯網設備向目標設備發送枚舉請求(建立握手連接請求)。
聯網設備根據第一設備接入配置資訊中的標準指令集(如獲取描述符資料指令集)、特殊指令集(如獲取設備類型指令集)、設置指令集,藉由設置的(或預設的)介面,按照介面的通訊協定(如USB通訊協定),向目標設備發送至少一個資料交互指令(例如向目標設備的預設端點0發送標準請求),並接收目標設備返回的資料。當返回的資料符合第一接入狀態判斷規則所規定的接入成功條件時,聯網設備確定建立握手連接成功,並根據第一狀態回應規則,向服務端發送連接成功的資料包;當返回的資料符合第一接入狀態判斷規則所規定的接入失敗條件時,聯網設備確定建立握手連接失敗,根據第一狀態回應規則向服務端發送連接失敗的資料包,並向服務端請求新的指令集資料,以重新連接目標設備。
如下以聯網設備藉由讀寫隨身碟場景為例說明本實施例中的設備接入方法。所述步驟S101包括:配置第一設備接入配置資訊。具體的,配置第一模式為主機模式,配置第一介面類別型為USB介面,配置如下標準指令集中的一種或多種:獲取硬體描述符;獲取配置描述符;獲取介面描述符;獲取端點描述符;獲取字串描述符,配置如下特殊指令集中的一種或多種:獲取可格式化邏輯塊總數;獲取最後邏輯塊位址,配置如下設置指令集中的一種或多種:設置設備位址;設置設備配置(設置使能配置);設置Bulk-Only Mass Storage Rese指令,配置第一接入狀態判斷規則為:判斷返回的介面描述符、端點描述符資料、容量資訊等參數是否符合大容量設備類型的參數,若不符合大容量設備類型的參數,確定接入失敗;若符合大容量設備類型的參數確定接入成功,設置第一狀態回應規則為:若接入失敗時,使用“第二描述符集進行重新接入(枚舉),若還是接入失敗,向服務端發送接入失敗的狀態資料包;若接入成功時,向服務端發送接入成功的狀態資料包。
所述步驟S102包括:預載入所示第一設備接入配置資訊。
所述步驟S103包括:當聯網設備介面檢測到有設備接入,根據第一設備接入配置資訊進行隨身碟的接入。具體地,根據第一設備接入配置資訊中的第一模式,將聯網設備的介面設置為主機模式;根據第一介面類別型,將介面的通信協定設置為USB通訊協定,根據“設置設備位址”,設置隨身碟的通訊位址;根據“獲取硬體描述符”、“獲取配置描述符”、“獲取介面描述符”、“獲取端點描述符”、“獲取字串描述符”中至少一種指令獲取隨身碟的描述符,根據“獲取可格式化邏輯塊總數”、“獲取最後邏輯塊位址”中至少一種指令獲取隨身碟的容量資訊,根據 “設置設備配置”指令啟動隨身碟的配置(如隨身碟啟動回應的端點)、根據“Bulk-Only Mass Storage Reset”指令啟動隨身碟的大型存放區功能。基於隨身碟的描述符,隨身碟的容量資訊、隨身碟的端點資訊、隨身碟的大型存放區功能中的至少一種,根據第一接入狀態判斷規則,判斷隨身碟接入的成功狀態/或失敗狀態。若藉由第一狀態回應規則,確定隨身碟接入失敗時,使用第二描述符集進行重新接入或重新選擇預設的備選場景並重新接入,如接入攝像頭的場景,若還是接入失敗,向服務端發送接入失敗的狀態資料包;若接入成功,向服務端發送接入成功的狀態資料包。
需要說明的是,上述根據第一設備接入配置資訊進行隨身碟的接入流程中的各個步驟在實際實現過程並非一一對應,或者全部必須。
在本可選實施例中,描述符集包括但不限於設備描述符、配置描述符、介面描述符、端點描述符、字串描述符、BOS描述符和預設的自訂描述符等。預設設備要求為通信協定中的協定要求。示例性地,下表一示出了聯網設備作為主機設備時藉由描述符指令獲取的描述符以及藉由設置指令進行設置的示例,應理解,下表一所展示的獲取描述符指令、設置指令僅用作示例,在其他實施例中還可以包括更多或更少的描述符,在此不再贅述。
示例性地,下表一示出了聯網設備作為主機設備或主機模式時發送的描述符指令。
指令類型 描述符指令(主機) 描述符說明(從左到右依次說明)
獲取設備描述符 0x80 0x06 0x00 0x01 0x00 0x00 0x12 0x00 0x80表示設備到主機的通信方向,請求為標準請求,請求的接收者為設備;0x06表示請求的命令類型為獲取描述符類型;0x00和0x01 表示命令參數,其中01表示設備描述符; 0x00和0x00表示語言,預設為0;0x12和0x00表示所需要傳輸的描述符位元組數為12。
獲取配置描述符 0x80 0x06 0x00 0x02 0x00 0x00 0x20 0x00 0x80表示設備到主機的通信方向,請求為標準請求,請求的接收者為設備;0x06表示請求的命令類型為獲取描述符類型;0x00和0x02 表示命令參數,其中02表示配置描述符; 0x00和0x00表示語言,預設為0;0x20和0x00表示所需要傳輸的描述符位元組數為20。
獲取字串描述符 0x80 0x06 0x00 0x03 0x00 0x00 0xFF 0x00 0x80表示設備到主機的通信方向,請求為標準請求,請求的接收者為設備;0x06表示請求的命令類型為獲取描述符類型;0x00和0x03 表示命令參數,其中03表示字串描述符; 0x00和0x00表示語言,預設為0;0xFF和0x00表示所需要傳輸的描述符位元組數為FF。
設置位址指令 0x00 0x05 0x08 0x00 0x00 0x00 0x00 0x00 0x00表示主機到設備的通信方向;0x05表示為設置位址指令;0x08表示為主機設置從機設備的匯流排位址。
設置配置指令 (使能配置指令) 0x00 0x09 0x01 0x00 0x00 0x00 0x00 0x00 0x00表示主機到設備的通信方向;0x09表示為設置配置指令;0x01表示為設置配置的編號。
獲取最大邏輯單元數 0xa1 0xfe 0x00 0x00 0x00 0x00 0x01 0x00 獲取最大邏輯單元數指令
表一
示例性地,聯網設備基於描述符指令集,讀取設備描述符、配置描述符和字串描述符中的以下資訊:1.廠商、標識資訊和字串等;2.介面使用的類,例如大型存放區類;3.傳輸端點,例如端點1表示IN,端點2表示OUT;4.端點傳輸模式,例如批量傳輸模式。基於驗證指令集,驗證介面使用的類、端點和端點傳輸模式是否符合聯網設備的應用場景要求。若符合,則判定枚舉成功(或建立握手連接成功),若不符合,則判定枚舉失敗(或建立握手連接失敗),並向服務端返回連接失敗的資訊。
可選地,功能指令集還包括設置指令集,用於向目標設備發送設置指令。例如,聯網設備向從機設備發送一個設置指令,要求從機設備使能相應的端點、設置匯流排位址、使能配置中的至少一種。需要說明的是,聯網設備作為主機設備時,支援接入多個從機設備,並支援對多個從機設備進行枚舉。
需要說明的是,本實施例將聯網設備作為主機設備與目標設備通信連接,對於未知的接入設備(目標設備),能夠藉由獲取該目標設備發送的描述符等資料,並將其提交至服務端進行識別,以從服務端下載對應的描述符集或者功能指令集,或者自動選擇備選的其它場景,從而可以充分擴展聯網設備應對不同類型目標設備的接入能力。
在一些實施例中,目標資料來源的配置過程,包括:
基於所述資料來源指令集,根據所述資料來源配置資訊,確定所述聯網設備的目標資料來源。
在本可選實施例中,基於聯網設備的應用場景,配置聯網設備的資料來源指令集,以操作目標設備的資料來源。例如,聯網設備連接大型存放區設備的應用場景,則配置聯網設備的對應資料來源指令集,以對目標設備資料存儲空間進行操作。又例如,聯網設備連接鍵盤設備的應用場景,配置聯網設備對應資料來源指令集,以讀取鍵盤的輸入的鍵值。以上對目標設備資料來源操作的交互資料,可以即時向服務端同步,也可以經過預設腳本或者設置規則的篩選(或者轉換),再向服務端同步。
可選地,對於聯網設備連接大型存放區設備的應用場景,所述資料來源配置資訊包括但不限於資料來源的容量資訊,所述容量資訊包括資料來源的最後邏輯塊位址,(最後邏輯塊位址+1)×塊容量=容量資訊;可格式化邏輯塊總數和塊容量(可格式化邏輯塊總數)×塊容量=容量資訊;資料來源配置資訊還包括最大邏輯單元數,其中最大邏輯單元數表示分區數;最大邏輯單元數;以及讀寫狀態(如唯讀狀態、只寫狀態、可讀可寫狀態)等。
示例性地,主機模式下,以讀取從機設備(如讀取隨身碟設備)場景為例:在設備通電前或者通電後,在服務端或者設備本地,將聯網設備設置為網路讀寫控制設備模式。具體包括聯網設備通電,插入隨身碟,聯網設備的介面檢測到有目標設備接入,藉由預設描述符指令進行枚舉,如果枚舉成功,獲得設備類型,並向服務端發送枚舉成功的資訊(該資訊包括設備類型),以建立通信連接;如果枚舉失敗,則向服務端發送聯網設備所能夠讀取到的描述符資訊,並請求服務端發送新的功能指令集(獲取描述符指令集或者資料交換指令集等)或新的場景資訊,並在收到新的描述符指令或場景資訊後重新進行枚舉。服務端根據設備類型載入相應的驅動程式或者操作軟體。驅動程式或者操作軟體藉由服務端,向聯網設備發送相關指令(資料來源指令集),並進行計算,以獲取目標設備(如隨身碟)的最大邏輯單元數、總空間容量、讀寫狀態、可用空間容量、相關字串、廠商ID(Vendor ID)、設備ID(Product ID)等,完成枚舉和操作準備。服務端或使用者端藉由軟體進行讀寫操作。使用者可以藉由服務端軟體或者使用者端APP、網頁流覽器等應用程式對(目標設備如隨身碟)進行操作。例如,使用者將使用者端的文檔寫入到隨身碟、或者讀取隨身碟的文檔保存到使用者端、或者讀取隨身碟指定磁區位置的資料、或者向隨身碟指定磁區位置寫入資料。
需要說明的是,對於需要將存放裝置A的資料拷貝至存放裝置B的場景(或者服務端的資料下載到存放裝置A或B中,或者將存放裝置A或B的資料上傳到服務端中),當前技術需要將存放裝置A和存放裝置B連接至電腦進行資料拷貝(或者在電腦設備中安裝應用軟體才能連接服務端進行操作),導致資料拷貝過程中被電腦設備抓包而使得資料洩露。而本實施例將聯網設備作為主機設備與目標設備通信連接能夠很好的解決上述場景問題。由於本實施例可以無需使用(帶有作業系統的)電腦設備,防止資料在拷貝過程中被惡意程式竊取;上傳資料直接存儲在服務端,防止設備丟失導致的資料丟失或洩露;由聯網設備直接連接服務端,使得網路流量資料無需經過電腦設備和目標設備,從而降低被網路資料抓包的可能性,保證資料安全性。
在一些實施例中,所述聯網設備為網路讀寫控制設備場景,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括:
基於所述描述符指令集中的功能指令集,對所述目標設備的第二描述符集中的多種描述符進行枚舉;
若枚舉成功,則向所述服務端請求下發與所述目標設備對應的驅動指令集,以完成通信連接,所述驅動指令集用於與所述目標設備進行資料交換。
在本實施例中,驅動指令集為針對不同設備分別開發的驅動指令集,其包括但不限於交互指令集和自訂指令集等。獲取描述符等枚舉過程請參見聯網設備作為主機設備時的相關描述,在此不再贅述。
本實施例藉由向服務端請求下發與目標設備對應的驅動指令集,以根據目標設備的第二描述符集識別出目標設備的設備類型,從而能夠針對不同目標設備的設備類型從服務端載入對應的驅動指令集,以用於聯網設備與目標設備進行資料交換,實現多種設備類型的接入和資料交換。
需要說明的是,對於網路讀寫控制設備,其可以根據實際應用需求,配置目標資料來源,也可以不配置目標資料來源。 在一些實施例中,所述聯網設備為網路代理控制設備場景,所述步驟S103,包括:基於所述描述符指令集中的功能指令集,對所述目標設備的第二描述符集中的多種描述符進行枚舉;若枚舉成功,則將所述第二描述符集發送至所述服務端,以使在所述服務端對所述目標設備進行虛擬化,生成所述目標設備對應的虛擬裝置,從而建立與所述目標設備之間的通信連接。
在本實施例中,描述符枚舉過程請參見聯網設備作為主機設備時的相關描述,在此不再贅述。可選地,虛擬化過程可以在服務端內部執行,也可以由控制服務端的電腦前端執行。需要說明的是,對於網路代理控制設備,其可以根據實際應用需求,配置目標資料來源,也可以不配置目標資料來源。
作為示例而非限定,以還下提供聯網設備作為主機設備時的幾種應用場景。
1.聯網設備作為遠端控制器。以自訂驅動實現服務端直接控制程式,而無需虛擬化USB設備(應理解,也可以虛擬化USB設備)。藉由自訂驅動的方式開發驅動程式進行控制,即不使用作業系統自帶的通用驅動,自行重新開發。
例如,一種設置為主機角色的網路讀寫控制設備(根據自訂的交互指令、腳本,可以進行協議轉換),讀寫USB介面、HDMI介面、SCSI介面、IEEE1394介面、SATA介面、eMMC介面、SDIO介面、M.2介面、串列通訊介面等周邊設備的握手協定資料(例如描述符集等),以基於上述枚舉過程對所述目標設備進行枚舉,從而建立網路讀寫控制設備與存放裝置之間的通信連接。再基於服務端安裝的用於讀寫操作的驅動指令集,藉由使用者端控制服務端或者以服務端預設指令的方式,向網路讀寫控制設備發送交互指令,網路讀寫控制設備將交互指令經過轉換後,發送至存放裝置中,以向存放裝置寫入服務端的資料或者向服務端上傳存放裝置的資料。
同理,網路讀寫控制設備也可以藉由與攝像頭和麥克風等感測器設備建立通信連接,並讀取感測器設備採集的資料向服務端上傳,或者將服務端下發的控制指令(即自訂指令集中的指令),控制攝像頭調整方向和角度等,或控制麥克風調節功率等。
2.聯網設備作為網路代理控制設備,藉由聯網設備作為代理設備結合原生驅動,藉由軟體將目標設備虛擬化為本地USB設備(如將獲取的描述符等資訊在USB匯流排中進行註冊),以使服務端或由控制服務端的電腦前端認為目標設備為本地USB設備,從而在不二次開發驅動程式的情況下,能夠正常識別並使用目標設備。可選地,對於主機設備同時接入多個目標設備的情況,支援將所有目標設備網路映射到電腦前端或服務端,以在電腦前端或服務端將目標設備虛擬化為本地USB設備。
需要說明的是,現有技術的的資料實現是USB設備-電腦主機1-網路共用-電腦主機2-虛擬USB設備,其存在以下問題:1.資料要經過電腦主機1,而電腦主機1存在未知的風險;2.資料經過電腦主機1容易被抓包,導致被發現資料來源位址和資料交互邏輯,存在安全隱患;3.電腦主機1一般為PC、個人筆記本等形式,需要安裝作業系統和軟體;4.上述資料實現為純軟體的形式。而本申請的網路代理控制設備可以為獨立硬體形式,可以無需經過電腦主機,降低安全風險。
例如,聯網設備以USB介面作為主機介面,向接入的印表機(目標設備)讀取基本描述符集,以基於上述枚舉過程對所述目標設備進行枚舉,當枚舉成功後,聯網設備向服務端發送印表機的描述符集。服務端藉由虛擬匯流排等方式,將接收到的描述符集在本地電腦生成虛擬的USB設備。印表機的原生驅動程式(即功能指令集)藉由操作虛擬的USB設備遠端控制被映射的印表機進行列印。即通信關係為:服務端(印表機驅動程式-虛擬USB設備)-聯網USB設備(主機設備)-印表機。在其他實施例中,還可以藉由電腦前端控制服務端,以在電腦前端視覺化服務端的虛擬化過程,以及印表機的待列印資料和列印進度等,在此不再贅述。
可以理解的是,在現場將聯網設備插入印表機後,藉由與聯網設備通信連接的遠端服務端利用原生印表機驅動程式直接識別到印表機,以控制印表機進行列印,從而可以避免重要文檔拷貝到風險未知的電腦而導致資料洩露。
可以理解的是,上述應用場景僅用作示例而非限定,在其他場景下可以是多種應用場景的結合,例如同時以場景1和場景2的方式進行開發實現,在此不再贅述。
在一些實施例中,在圖1所示實施例的基礎上,所述聯網設備作為與目標設備通信連接的從機設備,所述步驟S103,包括:接收所述目標設備發送的枚舉請求;回應於所述枚舉請求,向所述目標設備返回所述第一描述符集,以使所述目標設備對所述第一描述符集進行枚舉,並在枚舉成功後,根據資料來源配置資訊配置所述聯網設備與所述目標設備通信時的目標資料來源,所述目標資料來源設於所述服務端。
在本實施例中,類似於聯網設備作為主機設備時的通信連接過程,本實施例的聯網設備作為從機設備時,目標設備作為枚舉請求的發起者,聯網設備作為枚舉請求的回應者,由目標設備執行如聯網設備作為主機設備時的枚舉動作,聯網設備對目標設備的枚舉動作進行回復。聯網設備作為從機設備時,支援連接多個主機設備,並支援回應多個主機設備的枚舉請求,具體枚舉過程可參見聯網設備作為主機設備時的實施例,在此不再贅述。
在本申請的一實施例中,若聯網設備作為從機模式時,在聯網設備選定場景後,從場景配置資訊中讀取第二設備接入配置資訊。聯網設備根據第二設備接入配置資訊中的第一模式,將聯網設備的介面(如第一介面或第二介面)設置為從機模式;根據介面類別型,將介面的通信協定設置為USB通訊協定。當目標設備(主機設備)連接後進行回應,並發送可以進行枚舉(接入)的電信號。
聯網設備藉由設置的(或預設的)介面,接收目標設備發送的資料交互指令(例如目標設備向聯網設備的端點0發送標準請求),當資料交互指令符合第二設備接入配置資訊中的標準資料集(如獲取描述符資料集)、特殊資料集(如設備類型資料集)、執行設置指令集、第二接入狀態判斷規則、第二狀態回應規則中至少一種對應的資料或滿足匹配規則時,向目標設備返回資料;當資料交換指令包括執行設置指令集中的資料內容時,聯網設備執行預設操作。當聯網設備發送的資料符合第二接入狀態判斷規則所規定的接入成功條件時,聯網設備確定建立握手連接成功,並根據第一狀態回應規則,向服務端發送連接成功的資料包;當目標設備返回的資料符合第一接入狀態判斷規則所規定的接入失敗條件時,聯網設備確定建立握手連接失敗,根據第一狀態回應規則向服務端發送連接失敗的資料包,並向服務端請求新的描述符資料,以重新連接目標設備。
如下將聯網設備以隨身碟場景為例說明本實施例中的設備接入方法。
所述步驟S101包括:配置第二設備接入配置資訊。具體的,配置第二模式為從機模式,配置第二介面類別型為USB介面,配置如下標準資料集中的一種或多種:第一硬體描述符、第二硬體描述符、第一描述符、第二描述符、第一介面描述符、第二介面描述符、第一端點描述符、第二端點描述符、第一字串描述符、第二字串描述符,配置如下特殊資料集中的一種或多種:可格式化邏輯塊總數、最後邏輯塊位址、最大邏輯單元數、讀寫狀態等,配置如下執行設置指令中的一種或多種:執行設置設備位址、執行設置設備配置、執行Bulk-Only Mass Storage Reset指令,配置第二接入狀態判斷規則為:判斷聯網設備發送的獲取第一硬體描述符指令、獲取第一配置描述符指令、獲取第一介面描述符指令、獲取第一端點描述符指令、獲取第一字串描述符指令、獲取可格式化邏輯塊總數指令、獲取最後邏輯塊位址指令、獲取讀寫狀態指令等指令是否符合讀取大型存放區設備類型的參數,若不符合大容量設備類型的參數,確定接入失敗;若符合大容量設備類型的參數確定接入成功,設置第二狀態回應規則為:若接入失敗時,使用描述符集中的第二硬體描述符、第二配置描述符、第二介面描述符、第二端點描述符、第二字串描述符進行重新接入(枚舉),若還是接入失敗,向服務端發送接入失敗的狀態資料包;若接入成功時,向服務端發送接入成功的狀態資料包。
所述步驟S102包括:預載入第二設備接入配置資訊。
所述步驟S103包括:根據第二設備接入配置資訊將聯網設備(隨身碟場景)接入目標設備。具體地,藉由介面向目標設備發送可以枚舉的電信號,當接收到目標設備回應枚舉的電信號,返回的資料交互指令時,根據第二設備接入配置資訊中的第二模式,將聯網設備的介面設置為從機模式;根據第二介面類別型,將介面的通信協定設置為USB通訊協定,根據執行設置設備位址,執行設置聯網設備的USB通訊位址;根據獲取第一硬體描述符指令、獲取第一配置描述符指令、獲取第一介面描述符指令、獲取第一端點描述符指令、獲取第一字串描述符指令等指令中的至少一種進行回應;根據執行設置設備配置指令使能聯網設備的介面對應的端點和功能;根據執行Bulk-Only Mass Storage Reset指令進行大型存放區設備類功能自檢,並返回執行狀態包;根據第二接入狀態判斷規則,判斷獲取第一硬體描述符指令、獲取第一配置描述符指令、獲取第一介面描述符指令、獲取第一端點描述符指令、獲取第一字串描述符指令、獲取可格式化邏輯塊總數指令、獲取最後邏輯塊位址指令、獲取讀寫狀態指令等指令是否符合大容量設備類型的指令,若不符合獲取大容量設備類型的指令,確定接入失敗;若符合大容量設備類型的參數確定接入成功;若接入失敗時,使用描述符集中的第二硬體描述符、第二配置描述符、第二介面描述符、第二端點描述符、第二字串描述符進行重新接入,若接入失敗,向服務端發送接入失敗的狀態資料包,或切換備選的場景,如攝像頭場景等,若接入成功時,向服務端發送接入成功的狀態資訊。
示例性地,下表二示出了聯網設備作為從機設備或從機模式時回復的描述符。
描述符類型 回復描述符(從機) 描述符說明(從左到右依次說明)
設備描述符 0x12 0x01 0x00 0x02 0x00 0x00 0x00 0x40 0xff 0xff 0x78 0x56 0x00 0x02 0x01 0x02 0x03 0x01 0x12表示描述符長度;0x01表示設備描述符;0x00和0x02表示使用的USB協議版本;0x00表示類代碼;0x00子類代碼;0x00表示設備所用協定;0x40表示端點0最大包長;0xff和0xff表示廠商ID;0x78和0x56表示產品ID;0x00和0x02表示設備版本號;0x01表示廠商字串索引;0x02表示產品字串索引;0x03表示產品序號字串索引;0x01表示可能的配置數。
配置描述符 0x09 0x02 0x20 0x00 0x01 0x01 0x00 0x80 0x32 0x09 0x04 0x00 0x00 0x02 0x08 0x06 0x50 0x00 0x07 0x05 0x81 0x02 0x00 0x02 0x00 0x07 0x05 0x02 0x02 0x00 0x02 0x00 0x09表示描述符長度;0x02表示配置描述符;0x20和0x00表示配置描述符集的總長度;0x01表示該配置所支援的介面數;0x01表示該配置的值;0x00描述該配置的字串的索引;0x80表示該設備的屬性;0x32表示所需電流; 0x09表示描述符長度;0x04表示介面描述符;0x00表示該介面的編號(從0開始);0x00表示該介面的備用編號;0x02表示該介面所用的端點數;0x08表示該介面所使用的類;0x06表示該介面所使用的子類;0x50表示該介面所使用的協定;0x00表示該介面的字串索引值; 0x07表示描述符長度;0x05表示端點描述符;0x81表示該端點的位址和傳輸方向;0x02表示該端點的屬性;0x00和0x02表示該端點支持的最大包長度;0x00表示端點的查詢時間; 0x07表示描述符長度;0x05表示端點描述符;0x02表示該端點的位址和傳輸方向;0x02表示該端點的屬性;0x00和0x02表示該端點支持的最大包長度;0x00表示端點的查詢時間;
字串描述符 0x12 0x03 0x55 0x00 0x53 0x00 0x42 0x00 0x20 0x00 0x44 0x00 0x49 0x00 0x53 0x00 0x4b 0x00 0x12表示描述符長度;0x03表示字串描述符;0x55 0x00 0x53 0x00 0x42 0x00 0x20 0x00 0x44 0x00 0x49 0x00 0x53 0x00 0x4b 0x00表示字串資料,藉由解碼字串為“USBDISK”
設置相關狀態 (可選的) 一般來說,只回復空白資料包代表設置完成
MAXLUN最大邏輯單元 0x00 最大邏輯單元數。0x00代表僅有一個邏輯單元
表二
在一些實施例中,所述目標設備包括至少一個第一目標設備和至少一個第二目標設備,所述聯網設備作為與所述第一目標設備通信連接的主機設備,以及作為與所述第二目標設備通信連接的從機設備,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括:
基於所述描述符指令集中的功能指令集,對所述第一目標設備的第二描述符集中的多種描述符進行枚舉;
若枚舉成功,則配置所述聯網設備與所述第一目標設備通信時的第一目標資料來源,以完成與所述第一目標設備的通信連接,所述第一目標資料來源設於所述第一目標設備;接收所述第二目標設備發送的枚舉請求;回應於所述枚舉請求,向所述第二目標設備返回所述第一描述符集,以使所述第二目標設備對所述第一描述符集進行枚舉,並在枚舉成功後,根據資料來源配置資訊配置所述聯網設備與所述第二目標設備通信時的第二目標資料來源,所述第二目標資料來源設於所述服務端或所述第一目標設備。
在本實施例中,描述符枚舉過程和目標資料來源的配置過程請參見聯網設備作為主機設備或從機設備時的相關描述,在此不再贅述。本實施例的聯網設備具有至少2個以上物理介面,作為“主機設備+從機設備”同時存在聯網設備獲取第一目標設備(從機)的第二描述符集,以完成對第一目標設備的枚舉;聯網設備在第二目標設備(主機)發起枚舉請求時,將第一描述符集轉發至第二目標設備,以在第二目標設備中完成枚舉,以實現第一目標設備、聯網設備(和服務端)以及第二目標設備之間的多設備交互。
可選地,聯網設備也可以將第二目標設備發送的描述符指令直接轉發至第一目標設備,將第一目標設備的響應資料直接轉發至第二目標設備,以完成枚舉。
可選地,服務端對第一目標設備和第二目標設備的資料交換進行日誌記錄,以用於第一目標設備和第二目標設備的審計;在資料交換的情況下,聯網設備或服務端還可以對資料進行修改、替換等操作,以保護第一目標設備和第二目標設備的資料安全。
作為示例而非限定,聯網設備作為網路USB集線器(如USBHUB),本實施例可以對接入的第一目標設備進行監測,檢測描述符參數和通信資料。具體地在第一目標設備接入聯網設備時,向服務端上傳第一目標設備的描述符集(例如廠商ID(Vendor ID)、設備ID(Product ID)或者設備類型(使用的類、子類、介面命令集、端點傳輸模式)),經過服務端確定第一目標設備符合條件的廠商ID、設備ID或者設備類型,才允許第一目標設備與聯網設備或第二目標設備進行資料交換。
可選地,對於聯網設備作為大型存放區設備的從機設備時,所述資料來源配置資訊包括但不限於資料來源的容量資訊,所述容量資訊包括資料來源的最後邏輯塊位址和塊容量,(最後邏輯塊位址+1)×塊容量=容量資訊,資料來源配置資訊還包括最大邏輯單元數,其中最大邏輯單元數表示分區數。在本申請的另一實施例中,所述容量資訊包括資料來源的可格式化邏輯塊總數和塊容量,(可格式化邏輯塊總數)×塊容量=容量資訊。
需要說明的是,當前接入設備均是功能單一的存放裝置或者外接設備,並且作為存放裝置時僅能夠在存放裝置本機存放區資料,其存儲容量受到硬體限制,以及資料存儲空間能夠被電腦設備輕易識別而存在資料被盜取風險。而本實施例將聯網設備作為從機設備與目標設備通信連接,基於場景切換可以實現一個設備的多種不同功能形態,並能夠很好的解決存儲容量受限和資料存儲空間容易被識別的風險,提高了資料來源安全性。
作為示例而非限定,以下提供聯網設備作為從機設備時的幾種應用場景。
1.聯網設備作為網路隨身碟,或其他存儲介質。將聯網設備設置為隨身碟形態(如大型存放區設備類型、批量傳輸端點等)、或SD卡形態、TF卡形態、或硬碟形態,電腦主機獲取聯網設備的描述符集,並對所述描述符集進行枚舉,從而建立聯網設備與電腦主機之間的通信連接。在一實施例中,電腦主機向聯網發送讀指令或寫指令,聯網設備將讀指令或寫指令發送給服務端、使用者端或控制端。以下僅以服務端為例進行說明。聯網設備基於在服務端或使用者端或控制端建立的鏡像文件(例如分盤.dd的磁片鏡像文檔或分盤.ISO的光碟鏡像文檔),與電腦主機之間建立關聯關係,以讀或寫聯網設備的目標資料來源。在資料寫入場景下,電腦主機將交互資料寫入網路隨身碟、網路SD卡、網路TF卡或網路硬碟時,網路隨身碟、網路SD卡、網路TF卡或網路硬碟向服務端上傳該交互資料,服務端將該交互資料寫入到鏡像文檔的指定偏移量位置。在資料讀取場景下,在服務端中將鏡像文檔的指定偏移量資料讀出,並返回給電腦主機。
需要說明的是,鏡像文檔的資料是按照順序存儲在存儲空間裡的。例如,根據檔案系統的解析,鏡像文件A.dd分配了0x1000至0x1007磁區位址的磁區區間。此外,鏡像文檔的0x1000至0x1007磁區位址的磁區區間大小僅僅是示例,真實存儲介質的磁區區間大於上述磁區區間。
以FAT32檔案系統為例,鏡像文檔的文檔資訊裡帶有首簇位址,FAT32檔案系統根據首簇位址和FAT(檔案配置表)能找到所有的簇位址,從而轉換成所有的磁區位址,例如將A.dd文檔轉換成上述的0x1000至0x1007的磁區。指定偏移量表示鏡像文檔對應讀、寫指令操作位址的偏移量,例如使用上述鏡像文檔A.dd作為資料來源,若目標設備讀、寫的磁區位址(即指定偏移量)是0,則轉換為鏡像文檔A.dd的0磁區位址(首磁區位址)即0x1000,若目標設備讀、寫的磁區位址是1,則轉換為鏡像文檔A.dd的(0+1)磁區位址,以此類推,從而將指定偏移量映射到特定的磁區位址。不同的資料來源對應的磁區位址不同,例如鏡像文檔A.dd存儲的磁區是0x1000至0x1007磁區,鏡像文檔B.dd存儲的磁區是0x2000至0x2007磁區。若將資料來源由鏡像文件A.dd切換到鏡像文檔B.dd,則只需將讀、寫操作的位址轉換到0x2000至0x2007磁區,由於資料來源對應的磁區位址不一樣,資料來源因此也改變了,可以實現資料來源的切換。或者進一步的,資料來源採用不同的物理存儲介質,實現不同資料來源直接的物理隔離。
位元組位元 0-7 8-10 11 12 13-15 16-17 18-19 20-21 22-23 24-25 26-27 28-31
參數 檔案名 副文檔名 保留 檔案屬性 創建時間 創建日期 最後訪問日期 開始簇高位元組 最後修改時間 最後修改日期 開始簇低位元組 文件大小
示例 資料0x 41 20 20 20 20 20 20 20 54 58 54 20 10 a4 0a b4 a8 56 a8 56 00 00 c8 b3 a8 56 1d 00 06 00 00 00
表三
參考表三,以FAT32檔案系統為例(A.txt的文檔資訊,鏡像文檔同理):起始簇號為0x1d,根據檔案系統的計算,可得到首磁區(開始磁區位址);在FAT表中可得到對應的簇鏈,並根據簇鏈進行計算,可得到文檔內容資料的磁區位址集合,磁區位址集合的資料為A.txt文檔的內容資料,例如123456字串的二進位資料,如果為鏡像文檔,則為對應的磁區資料。
可以理解,不同的資料來源的容量資訊(包括最後邏輯塊位址、可格式化塊容量總數、塊容量、總空間容量、可用空間容量、最大邏輯單元數)、讀寫狀態(如唯讀狀態、只寫狀態、可讀可寫狀態等)、相關字串、廠商ID(Vendor ID)、設備ID(Product ID)等也可以不同。所以,雖然多個不同場景的設備類型一致(如同為大型存放區設備類型的隨身碟設備),但由於切換了不同的資料來源配置和資料來源,實際上也是修改了設備的功能。
此外,聯網設備在與電腦主機進行交互時,也可以不藉由文檔,而是直接以存儲空間區間(磁區位址區間)進行管理。例如,上述的0x1000至0x1007的磁區區間為分配給隨身碟(如第一隨身碟)的磁區區間,0x2000至0x2007磁區為分配給另一隨身碟(第二隨身碟)的磁區區間。
對於隨身碟(USB介面)、SD卡(emmc等介面)、TF卡(emmc等介面)或硬碟(SATA、M.2等介面)來說,本質上只是資料來源(磁區位址)、或容量資訊(可選的)不同,聯網設備實際上是起到一種讀寫指令遠端映射器(即將服務端的資料轉換為USB介面的隨身碟,或者eMMC、或SDIO介面的SD卡、TF卡,或者SATA介面或M.2等介面的硬碟等)的作用。
在本申請的一實施例中,資料來源包括但不限於存儲介質、存儲空間位址區間(如磁區位址區間)、鏡像存儲文檔、特定資料夾、資料庫和資料流程。特定文檔為使用者預先選定的允許電腦設備讀寫的文檔,其能夠在電腦設備上展示給使用者。將特定文檔映射至目標位址是指將存放裝置中的特定文檔的磁區位址映射到目標位址。鏡像文檔作為存儲資料來源能夠接入到電腦主機中。聯網設備藉由有線方式或無線方式與服務端通信連接,服務端包含多個鏡像文檔。可選地,在基於分散式存儲技術、優化存儲和CDN網路加速的情況下,鏡像文檔可以為資料庫的資料,或者多個文檔的組合、拼湊和映射等。
在本申請的一實施例中,聯網設備連接服務端,並向服務端發送標識號,服務端根據聯網設備的標識號關聯對應的鏡像文檔,在電腦主機發送資料交互指令時,向服務端轉發資料交互指令的讀寫要求(例如讀或寫操作,操作開始的磁區位址,操作磁區的長度),服務端接收到聯網設備發送的讀寫要求後,返回鏡像文檔對應的磁區文檔資料塊位址,以實現聯網設備的資料空間擴展。在本申請的一實施例中,根據聯網設備的標識號,在服務端切換控制聯網設備對應的目標鏡像文檔,以將目標鏡像文檔接入到電腦主機。例如根據聯網設備的標識號(或者使用者的標識號(藉由帳號登錄綁定))綁定“分盤1.dd”、“分盤2.dd”和“分盤3.dd”3個鏡像文檔,以在該3個鏡像文檔中切換接入到電腦主機的資料來源。
在本申請的一實施例中,目標設備連接服務端,將服務端存儲的“分盤1.dd”的鏡像文檔接入到電腦主機,電腦主機以單磁區大小為512位元組的方式發送資料交互指令,若該資料交互指令用於讀取第0磁區位址的資料、向第1磁區位址寫入資料,則藉由聯網設備向服務端發送請求,服務端將第0磁區轉換為“分盤1.dd”的首位址,將第1磁區轉換為“分盤1.dd”的第512個位元組偏移量位址。服務端根據轉換後的位址,返回鏡像文件“分盤1.dd”首位址的0至後面的511個位元組資料。向“分盤1.dd”的第512個位元組為偏移量位址至後面的511個位元組資料寫入資料,聯網設備再將服務端返回的結果返回至電腦主機。上述單磁區大小為512位元組僅為示例,而非對本申請實施例的限定,例如,單磁區大小還可以為1024、2048、4096等位元組。
在本申請的一實施例中,聯網設備能夠在電腦主機無需安裝軟體工具(如藉由作業系統自帶的隨身碟讀寫驅動程式)的情況下隨意切換不同的存儲資料來源,資料來源的真真實位址對電腦主機來說不可見,資料來源保存在雲端,當聯網設備丟失時可以遠端取消資料來源,提高資料存放裝置的資料安全性。同時,本實施例直接讀寫取服務端關聯文檔的特定偏移位址資料(或者文檔對應的磁區位址資料,並以轉發方式將資料直接轉發至服務端或電腦主機,從而不受存放裝置本身存儲空間的限制,提高效率和增大適用場景。
本申請實施例不同於現有網路隨身碟,相關技術是先將服務端的文檔下載的網路隨身碟存放裝置中,再藉由電腦讀取存放裝置的檔案系統的文檔進行下載;或者電腦先將文檔寫入到隨身碟的存放裝置的檔案系統中,再由網路隨身碟上傳到服務端。這樣的話,需要佔用網路隨身碟自身存儲空間的容量,例如16G的網路隨身碟無法傳輸32G的文檔,或者剩餘空間不足4G的網路隨身碟,無法傳輸大於4G的文檔。本發明藉由資料在緩衝區(如以單磁區512位元組為緩衝區)轉發,不存在文件限制的問題。另一方面,無法對整個存儲分盤的資料進行切換。而在本發明基於磁區位址的讀寫,分盤1.dd對應可以格式化為FAT32檔案系統,文檔有A.txt、B.txt;分盤2.dd可以格式化為ExFAT檔案系統,文檔有C.txt、D.txt,並可以直接接入電腦進行顯示。而現有的網路隨身碟只能選擇特定的文檔進行拷貝。另外,服務端的映射的“分盤1.dd”等鏡像文檔,在基於分散式存儲技術、優化存儲和CDN網路加速的情況下,可以為資料庫的資料,或者多個文檔的組合、拼接、映射等等。
在本申請的一實施例中,若聯網設備為SD卡或TF卡時,聯網設備可以藉由Emmc介面或SDIO介面以及對應的通訊協定發送或接收資料包。如藉由SDIO_CMD線發送讀、寫指令,及藉由SDIO_D線,用於發送或接收資料包。
在本申請的一實施例中,若聯網設備為硬碟時,聯網設備可以藉由SATA介面或M.2介面以及對應的通訊協定發送或接收資料包。
2.聯網設備作為網路USBkey設備(例如銀行U盾、數位憑證、加密狗等)。將聯網設備設置為USBkey形態,接入電腦主機。其中,網路USBkey設備內部包括:1.PIN密碼(密碼由使用者輸入或者感測器採集轉換的資料),2.演算法,3.金鑰。對於PIN密碼,可以藉由聯網方式將使用者輸入或者感測器採集轉換的資料發送到服務端進行PIN校驗;對於演算法,可以藉由腳本方式從服務端進行遠端下載,即可以隨時更新演算法或者選擇演算法;對於金鑰,可以將金鑰或者組成金鑰的部分(例如本地金鑰和服務端金鑰相結合的加密方式)資料存放於服務端,以提高安全性。可選地,聯網設備在服務端在交互過程中,服務端進行日誌記錄和行為分析,及時阻斷可疑行為並預警,防止USBkey的濫用。
需要說明的是,1.USBkey本身可以不存儲重要資料,例如PIN、演算法和金鑰,其重要資料在運行過程中,從服務端下載到USBkey的記憶體,在USBkey斷電後重要資料則消除,以提高安全性;2.使用者每次使用USBkey時,服務端都能進行使用日誌記錄,防止濫用。例如虛擬化USB設備的技術可以將USBkey的資料在多個電腦的共用;3.對於丟失的USBkey,可以遠端鎖定,防止盜用。4.可以加裝GPS、北斗等衛星定位模組,在向服務端請求時,報送USBkey的地理位置,當符合預設地理位置條件時,才允許使用USBkey。5.USBkey的資料來源存儲於服務端,聯網通信鏈路可以不經過主機端,能夠保證資料來源的資料安全。5.對於USBKEY密碼,可以在使用時才藉由使用者端或服務端遠端進行輸入驗證。
3.聯網設備作為中繼裝置(如具有聯網能力的存放裝置)。電腦主機向中繼裝置發送讀寫交互指令,例如發送讀取位址0資料,讀取資料長度512位元組;寫入位址1資料,寫入資料為0x1212...(512位元組),寫入資料長度512位元組。中繼裝置接收到後,結合位址、單個磁區位元組數(例如為512位元組)、資料長度計算,將資料交互指令操作磁區位址轉換成服務端資料對應的位址(或者由服務端根據轉發的資料交互指令,按照預設的規則進行轉換),例如轉化為對服務端的U.dd文檔資料的讀寫操作。例如,位址0轉化為服務端的U.dd文檔資料的磁區0位址,位址1轉換為服務端的U.dd文檔資料的磁區1位址,轉化後對服務端的U.dd文檔資料進行操作,如返回服務端的U.dd文檔資料位址0的資料,向服務端的U.dd文檔資料磁區位址1寫入資料0x1212...(512位元組)。
可以理解的是,上述應用場景僅用作示例而非限定,在其他場景下可以是其他硬體形態,例如鍵盤等輸入器等,在此不再贅述。
參考圖6所示,為本申請一實施例提供的一種設備接入方法的流程示意圖,其中聯網設備與從機設備之間的通信採用USB通信協定,並以聯網設備(主機模式)藉由USB介面讀取從機設備資料(以隨身碟為例)說明本實施例中的設備接入方法。需要說明的是,本示例和相關資料非限定,例如其他目標設備(從機設備)可以為其他設備類型如USB攝像頭等,在此不再贅述。
使用者端藉由服務端創建(或存儲的)“讀隨身碟場景”的場景配置資訊,或者選擇已有的“讀隨身碟場景”的場景配置資訊。在聯網設備向服務端請求時,服務端將“讀隨身碟場景”的場景配置資訊發送給聯網設備。
在本申請的另一實施例中,場景配置資訊也可以在服務端中創建,聯網設備向服務端發送配置獲取請求,服務端根據配置獲取請求從服務端獲取讀隨身碟場景的場景配置資訊,並將獲取的讀隨身碟場景的場景配置資訊發送給聯網設備。
在目標設備(即隨身碟)插入聯網設備的介面後,隨身碟向聯網設備發送枚舉請求(如可枚舉的電信號)。聯網設備向隨身碟發送獲取硬體描述符指令,並向隨身碟的特定端點發送IN權杖包進行查詢資料返回,例如聯網設備藉由SETUP權杖包向隨身碟的端點0發送硬體描述符指令。
需要說明的是,本實施例中,聯網設備作為主機主動向從機(如隨身碟)發送資料交互指令,從機根據資料交互指令進行被動回應。例如,以USB通信規則為例,聯網設備向從機的端點發送權杖包(或權杖包+資料包),則從機根據端點接收到的權杖包(或權杖包+資料包)進行回應(如向主機回復資料包或狀態包)。若聯網設備作為從機,則聯網設備接收主機發送的權杖包(或權杖包+資料包),並根據接收到的權杖包(或權杖包+資料包)進行回應。其中權杖包包括但不限於SETUP權杖包、IN權杖包、OUT權杖包、PING權杖包、SOF權杖包中的至少一種。狀態包包括但不限於ACK、NAK、NYET、STALL狀態包中的至少一種。握手包包括權杖包與狀態包。
表四為SETUP權杖包的指令格式的參數表。其中,本申請的0x表示十六進位編碼值。
SETUP ADDR ENDP DATA0 DATA(8 bytes) ACK
0x2D 0x25 0x00 0xC3 0x80 06 00 01 00 00 12 00 0xD2
表四
參考表四,在本申請的一實施例中,SETUP權杖包的指令格式包括指令第一類型欄位(SETUP)、第一位址欄位(ADDR)、第一端點欄位(ENDP)、第一資料欄位(DATA)及第一狀態欄位(ACK或NAK)。第一指令類型欄位記錄SETUP指令標識,以表徵第一指令類型為SETUP權杖包,0x2D表示標識值。第一位址欄位用於記錄SETUP權杖包的接收方(即隨身碟)的位址資訊,例如記錄的隨身碟的USB匯流排位址資訊為0x25。第一端點欄位用於記錄SETUP權杖包的接收方的端點資訊,例如,記錄的隨身碟的端點資訊為0x00。第一資料欄位(DATA)用於記錄SETUP權杖包的資料包資料,例如DTAT欄位的資料為獲取設備描述符指令。第一狀態欄位用於記錄SETUP權杖包的接收方(即隨身碟)的狀態。狀態欄位包括ACK狀態包及NAK狀態包等,其中ACK狀態包表徵接收方的成功的狀態,NAK狀態包表徵接收方的失敗的狀態。
參考表五、表六,在本申請的一實施例中,聯網設備接收到隨身碟回應SETUP權杖包發送的ACK狀態包後,繼續向隨身碟發送IN權杖包。隨身碟根據IN權杖包,向聯網設備返回隨身碟的硬體描述符資料包。
需要說明的是,若聯網設備向從機設備(隨身碟)的特定端點發送IN權杖包後,接收到隨身碟返回的NAK狀態包(0x5A),表徵從機設備(隨身碟)無法提供資料,如表五。聯網設備向隨身碟重複發送(超時判定內)IN權杖包,直至隨身碟返回第一ACK狀態包,如表六。本申請不再贅述。
IN ADDR ENDP NAK
0x69 0x25 0x00 0x5A
表五
IN ADDR ENDP DATA1 DATA(18 bytes) ACK
0x69 0x25 0x00 0x4B 0x12 01 00 02 00 00 00 40 ff ff 78 56 00 02 01 02 03 01 0xD2
表六
參考表六,在本申請的一實施例中,IN權杖包的指令格式包括第二指令類型欄位(IN)、第二位址欄位(ADDR)、第二端點欄位(ENDP)、第二資料欄位(DATA)及第二狀態欄位(ACK或NAK等)。第二指令類型欄位記錄IN指令標識,該IN指令標識可取值為0x69,以表徵指令類型為IN權杖包。第二位址欄位用於記錄IN權杖包的接收方的位址資訊,例如記錄的隨身碟的USB匯流排位址資訊為0x25。第二端點欄位用於記錄IN權杖包的接收方的端點資訊,例如,記錄的隨身碟的端點資訊為0x00。第二資料欄位用於記錄IN權杖包的接收方(即隨身碟)返回的資料,如DTAT欄位的資料為設備描述符。第二狀態欄位用於記錄IN權杖包的接收方的狀態。第二狀態欄位包括ACK狀態包及NAK狀態包等,其中ACK狀態包表徵接收方的成功的狀態,NAK狀態包表徵接收方的失敗的狀態。在本申請的一實施例中,目標設備(從機設備,如隨身碟等)的硬體描述符資料至少包括:表示描述符長度(如0x12);表示設備描述符(如0x01);表示使用的USB協議版本(如0x00 0x02);表示類代碼(如0x00);子類代碼(如0x00);表示設備所用協定(如0x00);表示端點0最大包長(如0x40);表示廠商ID(如0xff 0xff);表示產品ID(如0x78 0x56);表示設備版本號(如0x00 0x02);表示廠商字串索引(如0x01);表示產品字串索引(如0x02);表示產品序號字串索引(如0x03);表示配置數量(如0x01)。
需要說明的是,聯網設備接收到目標設備(從機設備,如隨身碟等)發送的硬體描述符資料後,根據SETUP權杖包對應的規則(如控制傳輸的規則),需要向目標設備發送OUT權杖包,並附帶空資料包(參考表七),以通知目標設備(從機設備)資料接收成功。本申請不再贅述。
OUT ADDR ENDP DATA1 DATA(0 bytes) ACK
0xE1 0x25 0x00 0x4B 0xD2
表七
參考表七,OUT權杖包的指令格式包括第三指令類型欄位(OUT)、第三位址欄位(ADDR)、第三端點欄位(ENDP)、第三資料欄位(DATA0或DATA1)及第三狀態欄位(ACK、NAK或NETY)。第三指令類型欄位記錄OUT指令標識,該OUT指令標識可取值為0xE1,以表徵指令類型為OUT權杖包。第三位址欄位用於記錄OUT權杖包的接收方的位址資訊,例如記錄的隨身碟的USB匯流排位址資訊為0x25。第三端點欄位用於記錄OUT權杖包的接收方的端點資訊,例如,記錄隨身碟的端點資訊為0x00。第三資料欄位用於記錄OUT權杖包的接收方返回的資料,例如,記錄的資料為空。第三狀態欄位用於記錄OUT權杖包的接收方的狀態。第三狀態欄位包括ACK狀態包及NAK狀態包等,其中ACK狀態包表徵接收方的成功的狀態,NAK狀態包表徵接收方的失敗的狀態。
參考表八,聯網設備向隨身碟發送設置設備位址指令以給從機設備(如隨身碟)分配位址,並向從機設備(如隨身碟)的特定端點發送IN權杖包進行查詢資料返回,例如聯網設備藉由SETUP權杖包向隨身碟的端點0發送設置設備位址指令。隨身碟根據設置設備位址指令及IN權杖包,向聯網設備返回隨身碟的第一ACK狀態包,例如,隨身碟藉由端點0向聯網設備返回第一ACK狀態包。例如,聯網設備向隨身碟的0端點發送SETUP權杖包,SETUP權杖包中的資料(參考表九中的DATA欄位中的資料)用於設置位址。聯網設備接收到隨身碟返回的第一ACK狀態包以表徵隨身碟的位址設置成功。
SETUP ADDR ENDP DATA0 DATA(8 bytes) ACK
0x2D 0x00 0x00 0xC3 0x00 05 19 00 00 00 00 00 0xD2
表八
聯網設備向隨身碟發送獲取字串描述符指令,並向隨身碟的特定端點發送IN權杖包進行查詢資料返回,例如聯網設備藉由SETUP權杖包向隨身碟的端點0發送獲取字串描述符指令。隨身碟根據獲取字串描述符指令及IN權杖包,向聯網設備返回隨身碟的字串描述符資料包。 需要說明的是,相關獲取描述符指令、設置指令、描述符、權杖包、狀態包等相關的握手包和資料包的示例資料,除了參考上述表格外,還可以參考表一、表二或其他的示例等,本申請不再贅述。
聯網設備向隨身碟發送獲取配置描述符指令,並向隨身碟的特定端點發送IN權杖包進行查詢資料返回,例如聯網設備藉由SETUP權杖包向隨身碟的端點0發送獲取配置描述符指令。隨身碟根據獲取配置描述符指令及IN權杖包,向聯網設備返回隨身碟的配置描述符資料包,例如,隨身碟藉由端點0向聯網設備返回配置描述符資料包(通常來說,該配置描述符資料包包含了配置描述符、介面描述符和端點描述符)。
聯網設備向隨身碟發送設置配置指令以設置隨身碟的配置資訊,並向隨身碟的特定端點發送IN權杖包進行查詢資料返回,例如聯網設備藉由SETUP權杖包向隨身碟的端點0發送設置配置指令。隨身碟根據設置配置指令及IN權杖包,向聯網設備返回隨身碟的第二ACK狀態包。
聯網設備根據上述隨身碟返回的描述符資料判斷聯網設備與目標設備是否連接(或接入)成功。若聯網設備根據第一狀態回應規則及隨身碟返回的描述符資料,確定隨身碟連接失敗,向服務端請求新的場景配置或新的指令集進行重新連接;若連接成功,進入特殊請求並按照獲取描述符的資訊,進行特殊請求和資料交換。進一步的,聯網設備藉由分析獲取隨身碟的描述符資訊(如介面描述符和端點描述符等),得出隨身碟資料傳輸的特定端點號和傳輸方式,繼續向隨身碟發送指令。例如,根據獲取的端點描述符分析,端點1為OUT端點,端點1的傳輸方式為批量傳輸,設置聯網設備的端點2為IN端點,傳輸方式為批量傳輸。需要說明的是,每個設備的端點號和端點功能均不同,一般藉由端點描述符獲取得到,上述端點1及端點2為舉例說明,並不構成對目標設備的限定。
需要說明的是,聯網設備(作為主機)與目標設備(作為從機)或者聯網設備(作為從機)與目標設備(作為主機),判斷是否連接(或接入、或握手)成功,可以在握手階段(如獲取描述符指令、設置配置等),也可以在資料交換階段(如讀寫磁區位址指令符合預設、發送TEST檢測指令等),本申請不再贅述。
聯網設備向隨身碟發送獲取MAXLUN描述符指令(特殊指令集),並向隨身碟的特定端點發送IN權杖包進行查詢資料返回,例如聯網設備藉由SETUP權杖包向隨身碟的端點0發送獲取MAXLUN描述符指令。隨身碟根據獲取MAXLUN描述符指令及IN權杖包,向聯網設備返回隨身碟的MAXLUN資料包。隨身碟根據IN權杖包,向聯網設備返回MAXLUN資料,如0x00。例如,隨身碟藉由端點0向聯網設備返回MAXLUN資料,其中MAXLUN資料包括最大邏輯單元數。
聯網設備向隨身碟發送獲取設備資訊(INquiry)指令,並向隨身碟的特定端點發送IN權杖包進行查詢資料返回,例如聯網設備藉由OUT權杖包向隨身碟的端點1發送獲取設備資訊描述符指令,以及向端點2發送IN權杖包。隨身碟根據獲取設備資訊描述符指令及IN權杖包,向聯網設備返回隨身碟的設備資訊資料包。
例如聯網設備根據預設場景配置,向目標設備端點1發送指令(例如,SCSI、SATA指令,如CBW資料包),以請求獲取目標設備的設備資訊(INquiry)資料。目標設備回應讀取“INquiry”的請求,向聯網設備返回第一資料包(INquiry資料包)及狀態包(如SCSI、SATA指令的CSW包)。
參考表九,CBW包包括如下資訊:CBW包的識別字,CBW包的序號,傳輸的位元組數,傳輸方向,操作的邏輯單元,命令塊長度,操作指令代碼,操作指令參數。其中,當其中操作指令代碼為0x12時,代表聯網設備(主機模式)向目標設備(從機設備)發送獲取“INquiry”資料請求指令。
CBW識別字 序號 傳輸位元組 傳輸方向 邏輯單元 命令長度 操作指令代碼 指令參數
0x55534243 0x06 0x08 0x80 0x00 0x06 0x12 0x00...0x24...
表九
參考表十,第一資料包(INquiry資料)包括如下資訊:
位元組\位元 7 6 5 4 3 2 1 0
0 保留 外設類型
1 RMB  保留
2 ISO版本號 ECMA版本號 ANSI版本號
3 保留 資料格式
4 資料長度(保留資料、廠商字串、產品字串、產品版本資訊)
05--07 保留資料
08--15 廠商資訊(字串)
16--31 產品資訊(字串)
32--35 產品版本資訊(字串)
示例資料 0x008004021f000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
表十
參考表十一,CSW狀態包括:CSW識別字,CBW包的序號,剩餘位元組數,錯誤代碼。
CSW識別字 序號 剩餘位元組 錯誤代碼
0x55534253 0x06 0x00 0x00
表十一
需要說明的是,上述基於SCSI通訊協定對上述CBW指令包、CSW狀態包的資料結構進行說明,本申請的其他相關內容對此不再贅述。
聯網設備向隨身碟的特定OUT端點發送獲取容量資訊(如最大邏輯單元數、可格式化邏輯塊塊總數、最後邏輯塊位址、塊容量等)或獲取讀寫狀態(MODESENCE6)指令,並向隨身碟的特定IN端點發送IN權杖包進行查詢資料返回。例如聯網設備藉由OUT權杖包向隨身碟的端點1發送獲取容量資訊或獲取讀寫狀態指令,以及向端點2發送IN權杖包,隨身碟藉由端點2返回隨身碟的容量資訊或讀寫狀態的資料包。
在本申請的一實施例中,聯網設備向目標設備的特定OUT端點發送讀取“可格式化邏輯塊總數”(READ_FORMAT_CAPACITIES)的請求。例如聯網設備向目標設備(如隨身碟)發送CBW包,其中操作指令代碼:0x23,請求獲取目標設備(如隨身碟)的“可格式化邏輯塊總數”。目標設備(如隨身碟)響應讀取“可格式化邏輯塊總數”的請求,向聯網設備返回第一資料包(如表十二)及CSW狀態包。
參考表十二,第一資料包(可格式化邏輯塊總數)包括如下資訊:
位元組\位元 7 6 5 4 3 2 1 0
0 保留
1 保留
2 保留
3 容量資訊長度
4 可格式化邏輯塊總數
5
6
7
8 保留 描述符代碼
9 塊容量(單塊位元組數)
10
11
示例資料 0x01de1fff00000200
表十二
在本申請的一實施例中,聯網設備向目標設備的特定OUT端點發送讀取“最後邏輯塊位址”(READ_CAPACITY)的請求。例如聯網設備向目標設備(如隨身碟)發送CBW包,操作指令代碼:0x25,請求獲取目標設備(如隨身碟)的“最後邏輯塊位址”資料。目標設備(如隨身碟)響應讀取“最後邏輯塊位址”的請求,向聯網設備返回第一資料包(如表十三)及CSW狀態包。
參考表十三,第一資料包(最後邏輯塊位址)包括如下資訊:
位元組\位元 7 6 5 4 3 2 1 0
0 最後邏輯塊位址
1
2
3
4 可格式化邏輯塊總數
5
6
7
示例數據 0x01de200000000200
表十三
需要說明的是,聯網設備(主機模式)藉由“可格式化邏輯塊總數”與“最後邏輯位址塊”均能單獨計算出容量資訊,並非需要同時獲取2者的資料。
在本申請的一實施例中,聯網設備向目標設備的特定OUT端點發送讀取“讀寫狀態”(MODESENCE6)的請求。例如聯網設備向目標設備(如隨身碟)發送CBW包,操作指令代碼:0x2A,以請求獲取目標設備(如隨身碟)的“MODESENCE6” 資料。目標設備(如隨身碟)回應讀取“MODESENCE6”的請求,向聯網設備返回第一資料包(如表十四)及CSW狀態包。
參考表十四,第一資料包(MODESENCE6)包括如下資訊:
位元組\位元 7 6 5 4 3 2 1 0
0 資料長度
1 保留
2 讀寫狀態(如0x00代表可讀可寫;0x80代表唯讀等)
3                                       保留
示例數據 0x03000000
表十四
聯網設備根據上述隨身碟返回的MAXLUN資料包、設備資訊資料包、容量資訊資料包、讀寫狀態(MODESENCE6)資料包中的至少一種判斷聯網設備與目標設備是否連接(或接入)成功。聯網設備根據第一狀態回應規則,確定隨身碟連接失敗,向服務端請求新的指令集進行重新連接;若連接成功,若連接成功,向服務端發送連接成功的狀態資料包,並藉由服務端將連接成功的狀態資料包發送給使用者端。
參考圖7所示,為本申請另一實施例提供的一種設備接入方法的流程示意圖,其中聯網設備與從機設備之間的通信採用USB通信協定,聯網設備(從機模式)以隨身碟場景為例說明本實施例中的設備接入方法。
需要說明的是,本示例以及相關資料非限定,其他聯網設備(從機設備、從機模式)可以為其他設備類型如USB攝像頭場景等,在此不再贅述。此外,本實施例相關權杖包、CBW包、CSW包、操作指令、資料包等資料內容與上述的聯網設備(主機模式)讀隨身碟實施例的相似,即作為主機與從機角色以及指令資料和回應資料互換,並在場景配置中進行回應的配置,在本實施例中也不再贅述。
使用者端創建隨身碟場景的場景配置資訊,或者選擇已有的隨身碟場景的場景配置資訊。聯網設備向服務端發送配置獲取請求,其中配置獲取請求中包括隨身碟場景。服務端根據配置獲取請求從使用者端獲取隨身碟場景的場景配置資訊,並將獲取的隨身碟場景的場景配置資訊發送給聯網設備(即隨身碟)。
聯網設備根據場景配置資訊,設置為從機模式,啟動預設端點0,並設置為控制傳輸。
在聯網設備(如隨身碟)的介面插入目標設備(主機設備)後,向目標設備發送枚舉請求(如可枚舉的電信號)。
目標設備向聯網設備的特定端點發送獲取硬體描述符指令,並向聯網設備的特定端點發送IN權杖包進行查詢資料返回。例如目標設備藉由SETUP權杖包向聯網設備的端點0發送硬體描述符指令。聯網設備根據獲取硬體描述符指令及IN權杖包,向目標設備的特定端點返回隨身碟的硬體描述符資料包,例如,聯網設備藉由端點0向目標設備返回聯網設備(如隨身碟)的硬體描述符資料包。聯網設備(如隨身碟)的硬體描述符資料包至少包括隨身碟的設備類型、設備功能。
目標設備向聯網設備的特定端點發送設置設備位址指令以給聯網設備分配位址,並向聯網設備的特定端點發送IN權杖包進行查詢資料返回,例如目標設備藉由SETUP權杖包向聯網設備的端點0發送設置設備位址指令。聯網設備根據設置設備位址指令執行設置位址操作,並根據IN權杖包向目標設備返回隨身碟的第三ACK狀態包,例如,聯網設備藉由端點0向目標設備返回第一ACK狀態包。第一ACK狀態包用於指示聯網設備的位址是否分配成功。
目標設備向聯網設備的特定端點發送獲取字串描述符指令,並向聯網設備的特定端點發送IN權杖包進行查詢資料返回,例如目標設備藉由SETUP權杖包向聯網設備的端點0發送獲取字串描述符指令。聯網設備根據獲取字串描述符指令及IN權杖包,向目標設備返回隨身碟的字串描述符資料包,例如,聯網設備藉由端點0向聯網設備返回字串描述符資料包。
目標設備向聯網設備的特定端點發送獲取配置描述符指令,並向聯網設備的特定端點發送IN權杖包進行查詢資料返回,例如目標設備藉由SETUP權杖包向聯網設備的端點0發送獲取配置描述符指令。聯網設備根據獲取配置描述符指令及IN權杖包,向目標設備返回隨身碟的配置描述符資料包,例如,聯網設備藉由端點0向目標設備返回配置描述符資料包。
目標設備向聯網設備的特定端點發送設置配置指令以設置聯網設備的配置資訊,並向聯網設備的特定端點發送IN權杖包進行查詢資料返回,例如目標設備藉由SETUP權杖包向聯網設備的端點0發送設置配置指令。聯網設備根據設置配置指令執行設置操作,例如根據設置指令選定的描述符資料,啟動對應的傳輸端點,根據IN權杖包向目標設備返回隨身碟的第二ACK狀態包,例如,聯網設備藉由端點0向聯網設備返回第二ACK狀態包。聯網設備根據上述指令或場景配置進行使能配置。例如,聯網設備啟動特定端點(如端點1)設置為OUT端點,並設置OUT端點1的傳輸方式為批量傳輸;將聯網設備啟動特定端點(如端點2)設置為IN端點,並設置IN端點2的傳輸方式為批量傳輸。
聯網設備根據目標設備返回的指令及第二狀態回應規則,判斷聯網設備與目標設備是否連接(或接入)成功。若目標設備發送的指令不符合第二狀態回應規則所規定的預設設備要求,確定聯網設備連接失敗,並向服務端請求新的描述符集進行重新連接;若目標設備返回的指令符合第二狀態回應規則所規定的預設設備要求,確定連接成功,並進入特殊請求的資料交換流程。
在特殊請求的資料交換流程中,目標設備向聯網設備的特定端點發送獲取MAXLUN描述符指令,並向聯網設備的特定端點發送IN權杖包進行查詢資料返回,例如目標設備藉由SETUP權杖包向聯網設備的端點0發送獲取MAXLUN描述符指令。聯網設備根據MAXLUN描述符指令及IN權杖包,向目標設備返回聯網設備(如隨身碟)的MAXLUN資料包。
目標設備向聯網設備發送獲取設備資訊描述符指令,並向聯網設備的特定端點發送IN權杖包進行查詢資料返回,例如目標設備藉由OUT權杖包向隨身碟的端點1發送獲取容量資訊描述符指令。聯網設備根據獲取容量資訊描述符指令及IN權杖包,藉由端點2返回隨身碟的容量資訊資料包。目標設備向聯網設備的特定端點發送獲取容量資訊描述符指令,並向聯網設備的特定端點(如端點2)發送IN權杖包進行查詢資料返回,例如目標設備藉由OUT權杖包向隨身碟的端點1發送獲取容量資訊指令(獲取最大邏輯單元數、可格式化邏輯塊總數、最後邏輯塊位址、塊容量等)或讀寫狀態等。聯網設備根據容量資訊指令及IN權杖包,藉由端點2返回聯網隨身碟的容量資訊或讀寫狀態資料包。
目標設備向聯網設備發送獲取讀寫狀態(MODESENCE6)指令,並向聯網設備的特定端點發送IN權杖包進行查詢資料返回,例如目標設備藉由OUT權杖包向聯網設備的端點1發送獲取MODESENCE6指令。聯網設備根據MODESENCE6指令及IN權杖包,藉由端點2返回聯網設備(隨身碟)的MODESENCE6資料包。
聯網設備根據目標設備發送的指令及第二介面狀態規則判斷聯網設備與目標設備是否連接(或接入)成功。聯網設備根據第一狀態回應規則,確定目標設備連接聯網設備(隨身碟)失敗,向服務端請求新的描述符集進行重新連接;若連接成功,向服務端發送連接成功的狀態資料包,並藉由服務端將連接成功的狀態資料包發送給使用者端。
需要說明的是,上述聯網設備作為從機向目標設備(主機設備)返回的描述符、容量資訊、讀寫狀態等資料,是藉由場景配置(隨身碟場景)預先進行設置的。
在本申請的一實施例中,若聯網設備作為對等通訊模式時,在聯網設備啟動定並選定場景後,從場景配置資訊中讀取第三設備接入配置資訊。
在聯網設備啟動並選定場景後,獲取場第三設備接入配置資訊中的第三模式、第三介面類別型、交互資料集、第三狀態判斷規則及第三狀態回應規則;根據第三模式,設置聯網設備的工作模式為對等通訊模式;根據第三介面類別型選定聯網設備的物理通訊介面為2個介面,分別為發送資料介面和資料接收介面,其中,聯網設備的發送資料介面連接目標設備的資料接收介面,聯網設備的接收資料介面連接目標設備的資料發送介面。
聯網設備藉由發送資料介面(TX),在基於交互資料集的規則下,向目標設備發送資料,並藉由資料接收介面接收目標設備返回的資料。聯網設備藉由資料接收介面(RX),在基於交互資料集的規則下,接收目標設備發送的資料,並藉由發送資料介面向目標設備返回資料。
當目標設備發送的資料符合第三接入狀態判斷規則規定的預設的接入成功條件時,聯網設備確定建立握手連接成功;並根據第三狀態回應規則向服務端發送連接成功的資料包;當目標設備返回的資料符合第三接入狀態判斷規則規定的預設的接入失敗條件時,聯網設備確定建立握手連接失敗;根據第三狀態回應規則向服務端發送連接失敗的資料包,請求新的交互資料集等資料,並重新連接/或等待目標設備的連接。
參照圖8所示,為本申請一實施例提供的一種設備接入方法的流程示意圖。本申請實施例的方法可應用於聯網設備,所述聯網設備存儲有至少一種應用場景的場景配置資訊,該聯網設備包括但不限於具備聯網功能的單片機或嵌入式等設備、車載設備、智慧手機、平板電腦或筆記型電腦等終端設備、網路USBkey設備(例如銀行U盾數位憑證、加密狗等)、網路代理控制設備(例如多埠轉發器),遠端控制器(包括但不限於網路讀寫控制設備、網路控制器(例如路由器和智慧閘道等))、通信類設備(Communication Device Class,CDC,例如網卡、資料機、ISDN(Integrated Services Digital Network)終端)、人體學介面類別設備(Human Interface Device,HID,例如鍵盤或滑鼠)、大型存放區類設備(Mass Storage Device Class,MSC,例如隨身碟、網路隨身碟、讀卡器、網路讀卡器)、印表機類設備(Printer device,例如USB介面的印表機)、靜態圖像獲取類設備(Still Imaging device)、視頻類設備(Video device)、音視頻類設備(Audio/Video Devices)、智慧卡類設備、USB集線器類設備(Universal Serial Bus Hub)以及自訂類設備等。
如圖8所示,本實施例的設備接入方法包括如下步驟。
步驟S301,當與服務端通信連接時,預載入目標配置資訊,所述服務端存儲有多種預設配置資訊,所述目標配置資訊為多種所述預設配置資訊中的一種,所述目標配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集合和描述符指令集合中的至少一種,所述第一描述符集合用於定義所述聯網設備的設備類型。
步驟S302,基於目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種。
在本申請的一實施例中,所述場景配置資訊是所述聯網設備按照預設生成策略,配置所述第一描述符集和所述描述符指令集中的至少一種、資料來源配置資訊後生成所述場景配置資訊,所述預設生成策略包括自訂創建策略、範本創建策略或外部導入創建策略中的至少一種。
參照圖9所示,為本申請一實施例提供的一種設備接入方法的流程示意圖。如圖9所示,本實施例的設備接入方法包括:
步驟S701,基於目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種,所述場景配置資訊包括第一描述符集和描述符指令集中的至少一種,所述第一描述符集用於定義所述聯網設備的設備類型。
在本實施例中,類似於圖1所示實施例的設備接入過程,其步驟解釋可參見圖1實施例的相關描述,在此不再贅述。需要說明的是,本實施例的目標場景配置資訊存儲於聯網設備本機存放區空間,而無需從服務端獲取,以進一步提高設備接入效率,或限定聯網設備的功能範圍。
參考圖10所示,為本申請實施例提供的一種資料交換方法的流程示意圖。本申請實施例的方法可應用於聯網設備,所述聯網設備上述設備接入方法,與服務端和目標設備建立通信連接,該聯網設備包括但不限於具備聯網功能的單片機或嵌入式等設備、智慧手機或筆記型電腦等終端設備、網路USBkey設備(例如銀行U盾、數位憑證、加密狗等)、網路代理控制設備(例如多埠轉發器等),遠端控制器(包括但不限於網路讀寫控制設備、網路控制器(例如路由器和智慧閘道等))、通信類設備(Communication Device Class,CDC,例如網卡、資料機、ISDN(Integrated Services Digital Network)終端)、人體學介面類別設備(Human Interface Device,HID,例如鍵盤或滑鼠)、大型存放區類設備(Mass Storage Device Class,MSC,例如隨身碟、網路隨身碟、讀卡器、網路讀卡器)、印表機類設備(Printerdevice,例如USB介面的印表機)、靜態圖像獲取類設備(Still Imaging device)、視頻類設備(Video device)、音視頻類設備(Audio/Video Devices)、智慧卡類設備、USB集線器類設備(Universal Serial Bus Hub)以及自訂類設備等。
如圖10所示,本實施例的資料交換方法,所述方法包括步驟S801至步驟S802,詳述如下。
步驟S801,獲取第一目標方發送的資料交換請求。
步驟S802,基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,所述目標資料為第二目標方發送的資料,其中若所述第一目標方為所述服務端,則所述第二目標方為所述目標設備,若所述第一目標方為所述目標設備,則所述第二目標方為所述服務端。
在本申請的一實施例中,資料交換請求為聯網設備與目標設備進行資料交互時的請求,包括聯網設備發起的第一交換請求和目標設備發起的第二交換請求。預設處理策略為對資料交換請求進行處理的策略,其包括但不限於基於在聯網設備本地進行處理的第一策略和基於向服務端轉發資料交換請求的第二策略。
在本申請的一實施例中,聯網設備作為主機設備時,支援接入多個從機設備,並支援與多個從機設備進行資料交換;聯網設備作為從機設備時,也能夠支援連接多個主機設備,並支援與多個主機設備的資料交換。本實施例藉由圖1、圖8或圖9所示實施例的設備接入方法連接聯網設備、服務端與目標設備,以使聯網設備在不同資料交換場景承擔不同的交互角色和交互過程,從而聯網設備在多種應用場景下的資料交換,提高聯網設備的場景適用性。
在本申請的一實施例中,聯網設備作為主機模式,藉由獲取描述符指令,獲得目標設備(USB從機設備)的端點資訊,如端點1為IN、端點2為OUT。聯網設備藉由網路介面,向服務端發起指令查詢操作指令請求,等待服務端下發交互指令。當查詢到有交互指令時,聯網設備下載用於交交互操作的交互指令集。例如需要向目標設備發送資料A1,並接收目標設備的返回資料。聯網設備將A1資料發送至目標設備的端點2(OUT),並向端點1(IN)發送IN權杖包進行查詢資料返回。當聯網設備接收到端點1的DATA資料包A2後,向服務端上傳。
在本申請的一實施例中,聯網設備作為從機模式,根據場景配置中的端點相關資訊(如介面描述符、端點描述符等),使能對應端點的端點號、傳輸方向、傳輸方式(如端點1為IN端點、批量傳輸方式;端點2為OUT端點、批量傳輸方式等),並等待電腦主機向上述2個埠發送交互指令資料。聯網設備接收到電腦主機向端點2(OUT)發送的A1資料。聯網設備藉由網路介面,將A1資料上傳至服務端。服務端對A1資料進行解析,等待聯網設備下載A2資料。聯網設備藉由網路介面,下載A2資料。當電腦主機向聯網設備端點1(IN)發送IN權杖包時,向電腦主機返回DATA資料包A2。
在本申請的一實施例中,聯網設備同時具有從機模式和主機模式。所述目標設備包括至少一個第一目標設備和至少一個第二目標設備,所述聯網設備作為與所述第一目標設備通信連接的主機設備,以及作為與所述第二目標設備通信連接的從機設備,其中若所述第一目標方為所述服務端,則所述第二目標方為所述第一目標設備或所述第二目標設備,若所述第一目標方為所述第二目標設備,則所述第二目標方為所述服務端或所述第一目標設備。
具體地,聯網設備一方面作為從機模式(例如介面1),根據場景配置中的端點相關資訊(如介面描述符、端點描述符等),使能第一端點(例如端點1)為IN、第二端點(例如端點2)為OUT,並等待目標設備1(電腦主機)藉由介面1,向上述2個埠發送交互指令資料。另一方面作為主機模式(例如介面2),藉由介面2發送獲取描述符指令,獲得目標設備2(USB設備)的端點資訊,例如端點1為IN、端點2為OUT。聯網設備的介面1接收到目標設備1向聯網設備端點2(OUT)發送的A1資料。聯網設備將A1資料藉由介面2發送至目標設備2的端點2(OUT),並向端點1(IN)發送IN權杖包進行查詢資料返回。當聯網設備的介面2接收到目標設備2端點1的DATA資料包A2後,藉由聯網設備的介面1的端點1,向目標設備1返回DATA資料包A2。聯網設備藉由網路介面,在服務端下載預設規則,對資料交互A1和A2資料進行檢測,實現對資料上傳至服務端,或者向服務端下載資料以對A1或A2資料進行替換或修改,或者阻斷目標設備1或目標設備2的通信。
需要說明的是,本申請實施例至少能夠解決以下幾點問題。
容量問題:聯網設備以網路隨身碟場景為例(從機),現有的資料交換是先將服務端的文檔(如test.avi文檔大小為4GB)全部下載至隨身碟中,電腦再讀取隨身碟的test.avi資料。
而本申請的資料交換方法,在下載過程中直接轉發請求或相應的資料包,只需給資料包少量的資料緩衝存放區空間即可。例如,在每個磁區512位元組的情況下,設置1個512位元組的記憶體緩衝區,電腦主機要讀取test.avi文檔的首磁區位址資料,則聯網設備將讀取指令轉發至服務端,並從服務端下載回應首磁區位址資料存放至記憶體緩衝區,再將記憶體緩衝區的資料轉發回復至電腦主機。而後,電腦主機繼續讀取第二磁區位址乃至test.avi文檔的尾磁區位址時,不斷將更新至記憶體緩衝區,服務端和電腦主機交換,實現了以512個位元組的存儲容量完成4GB文檔的傳輸,傳輸文檔的大小不受聯網設備本身存儲空間限制。相反,如果聯網設備以網路讀寫控制設備讀寫隨身碟的test.avi為例,可以藉由512個位元組的記憶體緩衝區,將test.avi上傳至服務端。
上述的例子僅為示例,在不同的檔案系統可能讀寫方式不同,也可能採用多磁區合併成一個簇進行管理,但均可以應用於這個基本的資料交換原理。在實際交換過程中,為了加快傳輸效率,也可以將多磁區的請求合併處理,例如緩存空間為128×512個位元組,同時以128個磁區進行資料交換等,不再贅述。
功能擴展問題:以網路讀寫控制設備為例(主機),現有技術是作為主機的設備只能先將帶有交互指令的程式軟體(例如驅動程式、解析程式等等)先行安裝在設備中,在有本地設備有驅動的情況下,才能進行對接入設備的控制,所以需要提前安裝好驅動,才能控制目標設備,導致設備的功能不容易擴展。
而使用本申請的聯網設備的資料交換技術,在服務端可以即時下載交互指令。例如,以聯網設備連接標準隨身碟(已裝軟體)和特殊攝像頭(未裝軟體)為例,在連接隨身碟的情況下,由於設備本身已安裝隨身碟的讀寫程式(功能指令集),可以直接進行隨身碟的讀寫;在連接攝像頭的情況下,由於沒有特殊攝像頭的功能指令集,獲取的描述符無法被識別,無法完成枚舉,從而將獲取的描述符發送服務端,經過服務端設別後,下發相關功能指令集(獲取描述符、校驗指令等),設備按照功能指令集重新進行對攝像頭進行枚舉,以建立連接;服務端直接向聯網設備下發讀取特殊攝像頭資料指令,聯網設備將指令轉發至特殊攝像頭,在攝像頭返回資料後,聯網設備可以直接顯示攝像頭畫面,或者將畫面資料轉發至服務端,由服務端進行存儲或者共用。
安全問題:聯網設備的資料緩衝區和下載的功能指令資料可以存放記憶體之中,設備本身可以不存資料,斷電後資料就消失。可以保護重要資料不被竊取。
在一些實施例中,在圖10所示實施例的基礎上,所述步驟S802,包括:回應於所述資料交換請求,將所述資料交換請求轉發至所述第二目標方;接收所述第二目標方回應於所述資料交換請求返回的目標資料,並將所述目標資料轉發至所述第一目標方。
在本申請一實施例中,基於向服務端轉發資料交換請求的第二策略,聯網設備對資料交換請求進行轉發處理。
在本申請一實施例中,當聯網設備接收到目標設備發起的資料交換請求,聯網設備將該資料交換請求轉發至服務端,在服務端對該資料交換請求進行解析和處理,並向聯網設備返回目標資料,聯網設備再將目標資料返回至目標設備。
在本申請一實施例中,所述聯網設備為網路USBkey設備,所述目標設備為電腦主機,所述回應於所述資料交換請求,將所述資料交換請求轉發至所述第二目標方,包括:回應於所述電腦主機發送的資料交換請求,將所述資料交換請求轉發至所述服務端,所述資料交換請求攜帶有所述USBkey設備的憑證資訊(憑證資訊可以由使用者輸入或者感測器採集轉換得到),以使所述服務端對所述憑證資訊進行校驗。其中憑證資訊包括但不限於PIN文本密碼和生物特徵資訊,生物特徵資訊包括但不限於指紋資訊、虹膜資訊、人臉資訊和聲紋資訊。可以理解的是,網路USBkey設備的相關實現原理描述可以參見上述設備接入方法中關於網路USBkey設備的相關描述,在此不再贅述。
在本申請一實施例中,當使用者在聯網設備上操作並發起資料交換請求時,先將資料交換請求發送至服務端進行解析和處理,服務端再向聯網設備返回目標資料,聯網設備將目標資料返回至目標設備。示例性地,聯網設備作為鍵盤設備,鍵盤設備以從機角色接入到電腦主機,當使用者在電腦前端或服務端點擊鍵盤設備的某個按鍵(如按鍵A)以在電腦主機輸入“A”,則將點擊按鍵A而觸發資料交換請求發送至服務端,服務端藉由識別按鍵A對應的鍵值“A”,並向鍵盤設備返回鍵值“A”,在目標設備(電腦)掃描鍵盤輸入時,鍵盤設備再將鍵值“A”發送至電腦主機。從而可以作為一個遠端鍵盤輸入場景,對於使用者遠端向電腦主機輸入敏感字串(例如密碼等),無需將敏感字串告訴現場人員進行輸入,提高安全性。應理解,以上鍵值僅用作示例而非限定,同時鍵盤設備也同樣適用於採用預設處理腳本進行處理的場景,在此不再贅述。
在本申請一實施例中,聯網設備作為網路代理控制設備,以主機角色連接到印表機,接收電腦主機發送的待列印資料,對於需要對待列印資料進行優化處理時(例如對圖像資料進行增強處理,以提高圖像的列印品質),將待列印資料發送至服務端進行優化處理,接收服務端返回的優化資料,並將優化資料發送至印表機進行列印。應理解,以上圖像資料僅用作示例而非限定,在其他實施例也可能是其他資料。
在本申請一實施例中,藉由請求轉發方式在服務端進行資料處理,以降低聯網設備的硬體壓力,從而能夠針對部分算力差的聯網設備實現高算力的資料處理,從而使得低級別功能的聯網設備能夠實現高級別功能,提高聯網設備的高級應用拓展,同時保護高級功能的程式不在本地被逆向、破解和濫用。
在本申請一實施例中,在圖10所示實施例的基礎上,所述步驟S802,包括:基於預設處理腳本,對所述資料交換請求進行資料處理,得到資料處理結果;基於所述資料處理結果,向所述第二目標方發送目標資料獲取請求;接收所述第二目標方回應於所述目標資料獲取請求返回的與所述資料處理結果對應的目標資料,並將所述目標資料返回至所述第一目標方。
在本申請一實施例中,預設處理腳本為集成資料處理邏輯的腳本程式,其能夠使聯網設備在本地處理資料或運行資料邏輯,而無需將所有資料轉發服務端執行,只有觸發某種條件時才與服務端交互,以提高資料處理效率。
在本申請一實施例中,聯網設備作為大型存放區設備(從機角色),基於預設處理腳本處理資料交換請求,例如識別到電腦主機發送的資料交換請求表示需要讀取的檔案名為test.txt(即資料處理結果),則向服務端請求讀取test.txt文檔資料,並下載服務端發送的test.txt文檔資料(即目標資料),再將test.txt文檔資料返回電腦主機。同理,對於資料寫入過程,也可以在電腦主機寫入test.txt文檔時,聯網設備將該test.txt文檔上傳到服務端進行存儲,其他文檔正常在本機存放區。
在本申請一實施例中,聯網設備作為網路讀寫控制設備(主機角色),其自帶存儲介質,將通用或開源的交互指令的處理邏輯存放在本機存放區介質中執行,以提高資料交換速度。將特殊指令存放於服務端,再根據實際需求,從服務端遠端載入特殊指令,以防止特殊指令的交互邏輯在本地端被逆向分析,保證資料交換的安全性。基於預設腳本,對接入的大型存放區設備等(例如隨身碟等)進行資料檢索,例如搜索檔案名為test.txt的文檔、搜索文檔首磁區首位元組為0xFF的文檔等等,並將搜索到的文檔資料自動上傳至服務端。
在本申請一實施例中,聯網設備作為主機角色時的網路代理控制設備,基於預設腳本,藉由讀取描述符,識別接入設備的廠商ID(Vendor ID)、設備ID(Product ID)或者設備類型(使用的類、子類、介面命令集、端點傳輸模式)等等,在只有接入的目標設備符合條件的廠商ID、設備ID或者設備類型才允許進行遠端映射,以保護服務端或者控制端的安全。
在本申請一實施例中,聯網設備作為主機角色時的網路中間控制設備,基於預設腳本或者下載腳本,腳本為多種AI模型或演算法。當設備連接音訊設備與電腦主機時,切換音訊優化增強演算法,對電腦主機向音訊設備發送的音訊資料予以優化,以增強音訊設備的聲音播放效果;當設備連接攝像頭與電腦主機時,切換AI圖像識別模型,對攝像頭發送至電腦主機的圖像資料進行處理,實現物品標記等。
在本申請一實施例中,上述大型存放區設備、網路讀寫控制設備、網路代理控制設備和網路中間控制設備同樣適用於請求轉發場景,而不在本地利用預設處理腳本進行處理。其他設備類型的資料交換可以參見上述設備接入方法的相關示例描述,在此不再贅述。
參考圖11所示,為本申請另一實施例中資料交互方法的流程圖。所述資料交互方法包括如下步驟。
步驟S1101,配置聯網設備與目標設備通信時的場景配置資訊,所述場景配置資訊包括自動運行腳本。
步驟S1102,基於自動運行腳本,向目標設備發送第一資料交換請求,並接收目標設備回應第一資料交換請求所發送的資料;或基於所述自動運行腳本,接收所述目標設備發送的第二資料交換請求,並回應所述第二資料交換請求向所述目標設備發送資料。
在本申請的一實施例中,在接收目標設備對所述第一資料交換請求進行回應所發送的資料時,聯網設備將目標設備發送的資料發送給服務端。 在本申請的一實施例中,聯網設備在與目標設備進行資料交換過程中,按照資料交換配置資訊的預設配置,可以基於聯網設備的本地資料模組(如存儲晶片模組、攝像頭模組)與目標設備進行資料交換,也可以基於使用者端、服務端提供的資料來源與目標設備進行資料交換。
如下以聯網設備為主機模式介紹本實施例中資料交換方法。
在聯網設備在聯網設備啟動並選定場景後,根據場景配置資訊中的資料交換配置資訊對聯網設備進行配置;若資料交換配置資訊中包括自動執行指令腳本(如自動發送資料交互指令腳本),則聯網設備根據自動執行指令腳本的內容自動向目標設備發送指令;若資料交換配置資訊中包括資料來源指令集、資料交換指令集,聯網設備根據資料來源指令集、資料交換指令集向目標設備發送指令。在向目標設備下發指令後,等待並接收目標設備響應的資料。
在本申請的一實施例中,目標設備回應的資料可以為指令請求的資料包,也可以為指令執行結果的狀態包。在接收到目標設備回應的資料後,若確定指令未執行完畢且指令為高級指令,例如指令為多個低級指令的組合或自動執行指令腳本(如自動發送資料交互指令腳本),則根據高級指令的規則,識別回應的資料,並繼續下發高級指令中所預設的指令;若確定指令執行完畢,根據指令預設的規則,可以在聯網設備的本機存放區介質(如存儲晶片、硬碟等)保存回應的資料,也可以向服務端、使用者端發送目標設備響應的資料。
在本申請的一實施例中,根據資料交換配置資訊中的資料來源指令集、資料交換指令集、綁定交互系統或資料來源中的至少一種,聯網設備向服務端、使用者端返回資料。聯網設備返回的資料可以為目標設備回應的原始資料(如原始資料包),也可以是經過資料交換配置資訊中的指令預設規則處理後的資料(如將狀態包轉換為特定的標記)。
在本申請的一實施例中,根據資料交換配置資訊中的允許/禁止資料交換策略,聯網設備可以對使用者端、服務端發送的指令的參數內容進行識別,如對使用者端、服務端向聯網設備發送指令中的操作類型(如讀/寫類型)、操作目標(如特定磁區位址)進行識別,並對特定參數內容的指令進行限制,例如禁止寫操作的指令,或禁止操作磁區位址為0x00的指令等。
在本申請的一實施例中,根據允許/禁止資料交換策略,聯網設備可以對接收的指令或者回應指令的資料包內容進行識別。例如,對使用者端、服務端發送的寫指令中的寫入資料包,或回應讀指令返回的資料包,按照資料包的雜湊值或者特定位置的位元組值進行判斷與識別。
在本申請的另一實施例中,可以根據外設模組的資料結合指令參數或資料包內容進行識別與判斷。例如,外設模組的資料可以為GPS定位模組的特定位置區域或聯網模組的IP位址。當指令或回應的資料符合預設規則時,聯網設備根據允許/禁止的交換策略對指令或回應的資料進行操作,如聯網設備轉發或不轉發使用者端、服務端發送的指令,或者聯網設備轉發或不轉發目標設備向使用者端、服務端響應的資料包。
在本申請的一實施例中,還可以結合外設模組的資料與指令參數或資料包內容進行判斷與識別,例如GPS定位模組的GPS位置位於特定位置時,才允許向目標設備執行讀特定位置磁區的指令。
如下以聯網設備(主機模式)讀寫取隨身碟(場景)為例說明本實施例中的資料交換方法。
步驟S1101還包括:配置讀取隨身碟場景的資料交換配置資訊。具體地,在配置資料交換配置資訊時,對如下資料來源指令集中的一種或多種指令進行配置:最大邏輯單元數、獲取可格式化塊數量;獲取最後邏輯塊位址;獲取塊容量大小;讀寫狀態等。對如下資料交換指令集中的一種或多種指令進行配置:USB通訊協定指令;SCSI透明命令集指令;文檔操作指令。對綁定交互系統或資料來源策略中的一種或多種指令進行配置:服務端、使用者端操作指令與聯網設備預設指令的綁定關係。對綁定交互系統或資料來源策略中的一種或多種指令進行配置:例如,在定位模組中位置資料不位於特定位置區域時,禁止使用者端、服務端向目標設備發送“文檔操作指令”中的刪除根目錄下“test.txt”文檔的指令。
在本申請的一實施例中,在聯網設備與目標設備枚舉成功後,步驟S1102包括:聯網設備執行“讀取文檔目錄腳本”,自動讀取目標設備的引導磁區資料(一般為磁區位址0x00),並分析出檔案系統引導磁區位址;讀取檔案系統引導磁區位址的資料,分析出根資料夾(或首目錄)磁區位址以及簇(塊)大小等相關參數;讀取根資料夾磁區位址資料,並分析出文檔資訊。聯網設備根據“綁定交互系統/或資料來源”的規則,將文檔資訊資料進行處理,並將處理結果發送給使用者端、或服務端,以使使用者端、或服務端在交互介面上顯示相應文檔資訊(類似隨身碟接入電腦時的根目錄顯示)。
在本申請的一實施例中,聯網設備基於交互指令集中的自動執行指令腳本,按照檔案系統協定規則讀取多個磁區的位址,根據讀取的資料分析文檔目錄和文檔資料,並在聯網設備本地、服務端或使用者端保存文檔目錄和文檔資料。例如,參考圖12、13所示,聯網設備向目標設備特定端點發送讀磁區位址指令資料,並發送獲取特定端點資料指令,例如,聯網設備藉由OUT權杖包向目標設備的端點1發送讀磁區位址指令資料(如SCSI、SATA的CBW包等),並藉由IN權杖包向目標設備的端點2發送獲取端點資料指令。目標設備根據讀磁區位址指令資料及獲取端點資料指令,向聯網設備返回磁區位址對應的資料包。聯網設備根據讀取的資料分析文檔文檔目錄和文檔資料,其中文檔目錄至少包括檔案名、檔案屬性、文檔啟示地址中的至少一種。聯網設備將文檔目錄和文檔資料發送給服務端。服務端將文檔目錄和文檔資料發送給使用者端,以使使用者端在交互介面上顯示文檔目錄和文檔資料。
在本申請的一實施例中,聯網設備基於場景(接入)配置資訊設置為主機模式,並根據資料交換配置資訊中的自動執行指令腳本與目標設備進行資料交互。藉由獲取場景(接入)配置資訊的描述符指令,獲得目標設備(USB設備)的資料交互端點資訊。聯網設備藉由介面,向服務端發起指令查詢操作指令請求,等待服務端下發交互指令。當查詢到有交互指令時,聯網設備下載用於交交互操作的交互指令集。在聯網設備接收到交互指令集後,基於交互指令集中的自動執行指令腳本,按照USB通訊協定和大型存放區設備規則,向目標設備發送指令資料(超時判定內),並不斷發送權杖包,請求IN端點的資料,並直至IN端點返回資料或者返回ACK狀態包。
例如,參考圖12所示,聯網設備向目標設備發送指令資料,並發送獲取端點資料指令,例如,聯網設備藉由OUT權杖包向目標設備的端點1發送指令資料,並藉由IN權杖包向目標設備的端點2發送指令獲取端點資料。目標設備根據指令資料及獲取端點資料指令,當無資料返回或未完成返回資料準備時,向聯網設備返回NAK狀態包,其中NAK狀態包指示無資料。聯網設備根據NAK狀態包重複向目標設備發送獲取端點資料指令並直至獲取到目標設備返回的磁區資料及ACK狀態包。
在本申請的一實施例中,聯網設備與目標設備可以進行磁區讀寫操作的交互。
具體地,藉由使用者端、服務端向聯網設備發送磁區讀/或寫操作指令(例如SCSI、SATA等特定磁區位址的讀或寫的指令,如CBW包等),聯網設備根據“綁定交互系統或資料來源”的指令規則解析使用者端、服務端下發的磁區讀寫操作指令,按照“資料交換指令集”中預設的指令(如SCSI透明命令集指令)向目標設備發送磁區讀寫操作指令。磁區讀寫操作指令包括:若向目標設備發送讀指令(例如讀特定磁區的資料),目標設備返回資料存儲空間的特定磁區位址的資料包和狀態包;若向目標設備發送寫指令(寫特定磁區指令和資料包),將資料包寫入至目標設備的資料存儲空間的特定磁區位址,目標設備返回狀態包。聯網設備在接收到資料包或狀態包的資料後,基於“綁定交互系統或資料來源”的指令規則向使用者端、服務端回應。
具體的,參見圖14A所示,聯網設備(主機設備)向目標設備(從機設備,如隨身碟)發送的指令(包括權杖包、CBW包),以SCSI協議為例,0x28代表:READ(10)指令,請求讀取磁區位址資料。該指令中還包含有操作磁區位址0x00000000及操作磁區數量0x0001。目標設備(從機設備)接收到指令後,向主機回應資料包(DATA包)和狀態包(CSW包)。參見圖14B所示,為多磁區連續讀指令,聯網設備(主機設備)操作磁區數量為:0x0002。目標設備(從機設備)接收到指令後,向主機回應2個資料包(DATA包)和狀態包(CSW包)。
具體的,參見圖14C所示,聯網設備(主機設備)向目標設備(從機設備,如隨身碟)發送的指令(包括權杖包、CBW包),以SCSI協議為例,0x2A代表:WRITE(10)指令,請求將資料寫入磁區位址。該指令中還包含資料包(DATA包)。目標設備(從機設備)接收到指令和資料包後進行操作,向主機回應狀態包(CSW包)。參見圖14D所示,為多磁區連續寫指令,聯網設備(主機設備)操作磁區數量為:0x0002,指令也附帶了2個資料包(DATA包),目標設備(從機設備)接收到指令和2個資料包後進行操作,向主機回應狀態包(CSW包)。
需要說明的是,為避免贅述,本申請其他地方對讀、寫指令的相關參數進行簡化表述。
參考圖15所示,在本申請的一實施例中,使用者端向服務端發送讀磁區位址指令資料。服務端將接收的讀磁區位址指令資料發送給聯網設備。聯網設備藉由OUT權杖包向目標設備的特定OUT端點(如端點1)發送讀磁區位址指令資料(如SCSI中的CBW包),並藉由IN權杖包向目標設備的特定IN端點(如端點2)發送獲取端點資料指令。目標設備根據讀磁區位址指令資料及IN權杖包,向聯網設備返回對應磁區位址的資料包和執行指令的狀態包(如SCSI中的CSW包)。聯網設備將資料包和狀態包(或狀態資料)發送給服務端,並藉由服務端將磁區資料包和狀態包(或狀態資料)轉發給使用者端。
參考圖15所示,在本申請的一實施例中,使用者端(或控制端)向服務端發送寫磁區位址指令資料和資料包。服務端將接收的寫磁區位址指令和資料包發送給聯網設備。聯網設備藉由OUT權杖包向目標設備的特定OUT端點(如端點1)發送寫磁區位址指令(如SCSI中的CBW包)和資料包,並藉由IN權杖包向目標設備的特定IN端點(如端點2)發送獲取IN權杖包。目標設備根據寫磁區位址指令和資料包執行操作,並向聯網設備返回狀態包(如SCSI中的CSW包或USB中的ACK、NAK包等)。聯網設備將狀態包(或狀態資料)發送給服務端,並藉由服務端將狀態包(或狀態資料)轉發給使用者端。
在本申請的一實施例中,聯網設備與目標設備可以進行文檔讀寫操作的交互。具體地,藉由使用者端、或服務端向聯網設備發送文檔操作指令(例如創建文檔指令、刪除文檔指令、修改檔案屬性指令、讀取文檔內容指令、修改文檔內容指令等),聯網設備根據“綁定交互系統或資料來源”的指令規則解析使用者端、服務端下發的文檔操作指令,按照資料交換指令集中預設的指令向目標設備發送文檔操作指令。若文檔操作指令為向目標設備寫入資料的指令,如創建文檔指令、刪除文檔指令、修改檔案屬性指令、修改文檔內容指令等,文檔操作指令為寫入資料包的寫指令,目標設備根據文檔操作指令返回狀態包資料。若文檔操作指令為向目標設備讀取資料的指令,如讀取文檔內容指令,文檔操作指令為讀指令,目標設備根據文檔操作指令返回資料包和狀態包的資料。聯網設備在接收到資料包或狀態包的資料後,基於“綁定交互系統或資料來源”的指令規則向使用者端、服務端回應。
參考圖16所示,在本申請的另一實施例中,使用者端向服務端發送創建文檔指令。服務端將創建文檔指令發送給聯網設備,聯網設備根據檔案系統協定規則以及預先存儲的文檔目錄,將創建文檔的資料寫入特定的磁區位址中。例如,聯網設備根據創建文檔指令,藉由OUT權杖包向目標設備的端點1發送寫磁區位址指令資料及創建文檔資料。目標設備根據寫磁區位址指令資料及創建文檔資料將創建文檔的資料寫入特定的磁區位址中,並向聯網設備返回磁區資料包,例如目標設備藉由端點2向聯網設備返回磁區資料包。聯網設備從磁區資料包,確定創建結果資料,並將創建結果資料返回該服務端。服務端將創建結果資料返回給使用者端。
在本申請的一實施例中,當使用者端、服務端下發指令或者執行自動執行指令腳本時,聯網設備在向目標設備發送資料交互指令時,根據“允許/禁止交換策略”的規則進行執行。例如,根據上述CBW包指令,允許/禁止對特定磁區資料的讀/寫,如果為禁止則不向目標設備發送CBW指令。
參考圖17所示,在本申請的一實施例中,使用者端向服務端發送搜索文檔指令。服務端將搜索文檔指令發送給聯網設備,聯網設備根據檔案系統協定規則自動化的讀取多個存儲空間位址(如磁區位址),確定搜索的文檔資料及分析文檔目錄。例如,聯網設備根據搜索文檔指令,藉由OUT權杖包向目標設備的端點1發送讀磁區位址指令資料,並藉由IN權杖包向目標設備的端點2發送獲取端點資料指令。目標設備根據讀磁區位址指令資料及獲取端點資料指令向聯網設備返回磁區資料包(如文檔內容)或搜索結果(如文檔資訊)資料包,例如目標設備藉由端點2向聯網設備返回磁區資料包。聯網設備從磁區資料包或搜索結果資料包,確定搜索的文檔資料及分析文檔目錄,並將搜索的結果或文檔資料返回該服務端。服務端將搜索的文檔資料返回給使用者端。
需要說明的是,根據不同的檔案系統協定,創建文檔、搜索文檔的方式不同,此外,還包括刪除文檔、修改檔案屬性、修改文檔內容等文檔操作,根據不同的檔案系統規則可以藉由腳本或高級指令等方式在場景中進行配置,在此不再贅述。
如下以聯網設備為從機模式介紹本實施例中資料交換方法。
聯網設備在啟動(或接入前)並選定場景後,根據場景配置資訊中的資料交換配置資訊對聯網設備進行配置,例如對資料交換配置資訊中的指令回應操作、自動執行指令回應操作腳本、第二綁定交互系統或資料來源策略、第二允許/禁止交換策略進行配置。聯網設備根據配置後的指令回應操作、自動執行指令回應操作腳本、第二綁定交互系統或資料來源策略、第二允許/禁止交換策略對目標設備下方的指令進行接收、處理和回應。聯網設備依據接收的指令進行操作的物件包括如下中的至少一種:1.聯網設備本機存放區晶片、使用者端、服務端中的特定的資料庫或資料夾或文檔(如鏡像文檔)或存儲空間(如磁區區間);2.本地的外設模組,如定位模組、感測器模組、音視頻源模組、人機交互模組。
在本申請的一實施例中,聯網設備根據指令回應操作、第二綁定交互系統或資料來源策略等指令對目標設備發送的指令或資料進行回應。例如,聯網設備回應目標設備發送的USB權杖包的資料接收OUT端點的資料包,將資料包寫入至存儲空間,並在IN端點上傳存儲空間的資料。需要說明的是,上述聯網設備對目標設備發送的指令或資料進行回應的方式為自動回應方式,如按照目標設備的指令,自動對讀取綁定的資料來源進行讀寫,讀寫過程中無需人工干涉。
在本申請的另一實施例中,聯網設備根據指令回應操作、第二綁定交互系統或資料來源策略等指令,在戶端、服務端的交互介面執行指令的回應操作。例如,當聯網設備為鍵盤設備時,當目標設備發送USB權杖包進行請求時(如IN權杖時),使用者可以在使用者端的交互介面上輸入字元“A”,聯網設備將字元“A”的資料包在IN端點上返回給目標設備,實現藉由人工與目標設備進行交互。
如下以聯網設備(從機模式)為隨身碟場景為例說明本實施例中的資料交換方法。
步驟S1101還包括:配置隨身碟的資料交換配置資訊。具體地,在配置資料交換配置資訊時,對如下指令回應操作中的一種或多種指令進行配置:最大邏輯單元數、可格式化邏輯塊總數;最後邏輯塊位址;塊容量大小;讀寫狀態;USB通訊協定指令;SCSI透明命令集指令;文檔操作指令,用於響應目標設備對應的指令。對如下綁定交互系統或資料來源策略中的一種或多種指令進行配置:配置資料來源的綁定關係,資料來源可以位於聯網設備本地、服務端、使用者端、控制端等,例如將資料來源綁定為服務端資料來源時,目標設備發送的讀/寫磁區指令映射到服務端的存儲空間(如特定磁區區間或者鏡像文檔),使目標設備進行讀寫操作的資料是服務端的資料來源。將自動執行指令回應操作腳本配置為:預設備份腳本,用於對被寫入的資料進行備份。對如下綁定交互系統或資料來源策略中的一種或多種指令進行配置:在定位模組中位置資料不位於特定位置區域時,禁止使用者端、服務端向目標設備發送“磁區讀指令”中的讀取磁區位址的資料。
在本申請的一實施例中,在聯網設備與目標設備枚舉成功後,步驟S1102包括:接收目標設備發送的磁區讀/寫指令(如SATA、SCSI指令),聯網設備根據綁定交互系統或資料來源的指令規則,將操作指令轉換為服務端磁區位址的指令(或原始指令),並將轉換後的指令(或原始指令)發送給服務端,使得服務端進一步根據轉換後的指令進行磁區位址操作。例如目標設備發送讀指令時,聯網設備向目標設備返回服務端存儲空間的特定磁區位址的資料包和狀態包。目標設備發送寫指令(寫特定磁區指令、資料包)時,聯網設備將資料包寫入至服務端資料存儲空間特定磁區位址,並向目標設備返回狀態包。
在本申請的一實施例中,當聯網設備執行目標設備下發的指令,或向目標設備響應資料時,根據“允許/禁止交換策略”的規則進行執行。例如,根據SCSI、SATA指令中的CBW包的參數(如讀或寫指令、操作磁區空間的位址等)以及讀或寫的資料包內容進行判斷。
在本申請的一實施例中,所述資料交換方法根據場景配置資訊中的資料來源配置資訊,確定目標資料來源,目標資料來源可以存儲在使用者端,服務端或聯網設備中,所述資料交換方法可以基於所述目標資料來源,實現所述聯網設備與所述目標設備之間的資料交互。
參考圖18所示,為本申請另一實施例中資料交互方法的流程圖,以聯網設備與目標設備進行交互的資料來源存儲在使用者端為例。
使用者端配置場景的資料來源,將資料來源設置在使用者端。
目標設備向聯網設備(如OUT端點1)發送讀資料指令(如讀磁區位址為0x00的SCSI指令),聯網設備將讀數據指令發送給服務端,服務端將讀資料指令轉發使用者端,使用者端根據讀資料指令從使用者端的存儲空間位址(如磁區位址)中讀取對應的存儲資料(如磁區資料),並將資料(如磁區資料)藉由服務端返回給聯網設備。聯網設備將從服務端接收的資料(如磁區資料)返回給目標設備(如IN端點2)。
目標設備向聯網設備(如OUT端點1)發送寫資料指令(如寫磁區位址為0x00的SCSI指令)和資料包,聯網設備將寫資料指令和資料包發送給服務端,服務端將寫資料指令和資料包轉發使用者端,使用者端根據寫資料指令和資料包從使用者端的存儲空間位址(如磁區位址)中寫入對應的資料(如磁區資料),並將寫入的狀態(如狀態包)藉由服務端返回給聯網設備。聯網設備將從服務端接收的狀態資料(如資料包)返回給目標設備(如IN端點2)。
需要說明的是,使用者端也可以直接與聯網設備進行點對點(P2P)連接,不經過服務端轉發資料,以提高傳輸效率。
參考圖19所示,為本申請另一實施例中資料交互方法的流程圖,以聯網設備與目標設備進行交互的資料來源存儲在服務端為例。
使用者端等控制端配置場景的資料來源,將資料來源設置在服務端。
目標設備向聯網設備(如OUT端點1)發送讀資料指令(如讀磁區位址為0x00的SCSI指令),聯網設備將讀資料指令發送給服務端,服務端根據讀指令從服務端的存儲空間位址(如磁區位址)中讀取對應的存儲資料(如磁區資料),並將資料(如磁區資料)返回給聯網設備。聯網設備將從服務端接收的資料(如磁區資料)返回給目標設備(如IN端點2)。
目標設備向聯網設備(如OUT端點1)發送寫資料指令(如寫磁區位址為0x00的SCSI指令)和資料包,聯網設備將寫資料指令和資料包發送給服務端,服務端根據寫指令和資料包從服務端的存儲空間位址(如磁區位址)中寫入對應的資料(如磁區資料),並將寫入的狀態(如狀態包)返回給聯網設備。聯網設備將從服務端接收的狀態資料(如資料包)返回給目標設備(如IN端點2)。
需要說明的是,服務端也可以將資料包或狀態資料發送至使用者端。
參考圖20所示,為本申請另一實施例中資料交互方法的流程圖,以聯網設備與目標設備進行交互的資料來源存儲在聯網設備為例。
使用者端等控制端配置場景的資料來源,將資料來源設置在聯網設備本地。
目標設備向聯網設備(如OUT端點1)發送讀資料指令(如讀磁區位址為0x00的SCSI指令),聯網設備根據讀指令從本機存放區空間位址(如存儲晶片的磁區位址)中讀取對應的存儲資料(如磁區資料),並將資料(如磁區資料)返回給目標設備(如IN端點2)。
目標設備向聯網設備(如OUT端點1)發送寫資料指令(如寫磁區位址為0x00的SCSI指令)和資料包,聯網設備根據寫指令和資料包從本機存放區空間位址(如磁區位址)中寫入對應的資料(如磁區資料),並將寫入的狀態(如狀態包)返回給目標設備(如IN端點2)。
需要說明的是,聯網設備也可以將資料包或狀態資料發送至服務端或使用者端。
參考圖21所示,為本申請另一實施例中資料交互方法的流程圖。
在本申請的一實施例中,聯網設備與目標設備基於高級指令進行資料交互。如下以高級指令為搜索文檔或資料指令為例介紹本申請的資料交互方法。目標設備向聯網設備向特定端點發送搜索文檔或資料指令及獲取特定端點資料指令,例如目標設備藉由OUT權杖包向聯網設備的端點1發送搜索文檔或資料指令,及藉由IN權杖包向聯網設備的端點2發送獲取搜索文檔或資料指令。其中,搜索文檔或資料指令用於搜索存儲資料。聯網設備根據搜索文檔或資料指令,在聯網設備的本機存放區或資料來源中搜索對應的存儲資料,若聯網設備未搜索到對應的存儲資料,將搜索文檔或資料指令發送給服務端;若聯網設備搜索到對應的存儲資料,將搜索到的存儲資料返回給目標設備。服務端根據接收的搜索文檔或資料指令在服務端的資料來源中搜索對應的存儲資料,若服務端搜索到對應的存儲資料,將搜索到的存儲資料返回給聯網設備,並由聯網設備返回給目標設備;若服務端未搜索到對應的存儲資料,將搜索文檔或資料指令發送給使用者端。使用者端根據搜索文檔或資料指令在使用者端的資料來源中搜索對應的存儲資料,並將搜索到的存儲資料發送給服務端,並由服務端將存儲資料經由聯網設備發送給目標設備。
需要說明的是,執行搜索的資料來源,可以預設指定(如僅搜索服務端的資料等),也可以不預設指定。
在本申請的一實施例中,還提供一種設備接入方法,所述方法應用在服務端中。所述服務端與聯網設備通信連接。所述服務端基於預設生成策略配置所述聯網設備的配置資訊,所述配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集和功能指令集中的至少一種、資料來源配置資訊,所述第一描述符集用於定義所述聯網設備的設備類型,所述功能指令集包括描述符指令集。所述服務端在接收到聯網設備發送的場景資訊獲取請求,將所述場景配置資訊發送給所述聯網設備。例如,聯網設備在啟動時向服務端發送場景資訊獲取請求,場景資訊獲取請求包括聯網設備的身份標識,服務端回應場景資訊獲取請求,從場景配置資訊中篩選得到與聯網設備的身份標識相匹配的場景配置資訊,作為所述場景配置資訊,並將所述場景配置資訊發送給所述聯網設備。
在本申請的一實施例中,服務端接收聯網設備發送的目標設備的描述符集或描述符指令,其中描述符集或描述符指令為聯網設備從目標設備處接收。服務端根據目標設備的描述符集或描述符指令確定出新的場景配置資訊,並將所述新的場景配置資訊發送給所述聯網設備。所述聯網設備根據所述新的場景配置資訊,建立所述聯網設備與所述目標設備之間的通信連接。
在本申請的一實施例中,所述服務端還用於接收所述聯網設備發送的讀操作指令,根據所述讀操作指令從所述服務端的資料來源中確定出資料,並將確定出的資料發送給所述聯網設備,使聯網設備能夠從服務端的資料來源中讀取資料。
在本申請的一實施例中,所述服務端還用於接收聯網設備發送的寫操作指令及寫資料包根據寫操作指令將寫資料包寫入所述服務端的資料來源中。
為了執行上述圖1所示方法實施例對應的方法,以實現相應的功能和技術效果。參見圖22,圖22示出了本申請實施例提供的一種設備接入裝置的結構框圖。為了便於說明,僅示出了與本實施例相關的部分,本申請實施例提供的設備接入裝置,應用於聯網設備,所述裝置包括:
配置模組501,配置所述聯網設備的目標配置資訊,所述目標配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集和描述符指令集中的至少一種,所述第一描述符集用於定義所述聯網設備的設備類型;預載入模組502,預載入所述目標配置資訊;第一建立模組503,用於基於載入後的所述目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種。
在一些實施例中,所述配置模組501,具體用於:當與服務端通信連接時,向服務端發送配置獲取請求,配置獲取請求攜帶有聯網設備的標識資訊;接收服務端返回的與標識資訊對應的目標配置資訊。
在一些實施例中,聯網設備作為與目標設備通信連接的主機設備,所述描述符指令集包括多種功能指令集,所述功能指令集用於控制所述聯網設備與所述目標設備之間的資料交換。
在一些實施例中,所述第一建立模組503,包括:第一枚舉單元,用於基於所述描述符指令集中的功能指令集,對所述目標設備的第二描述符集中的多種描述符進行枚舉;第一配置單元,用於若枚舉成功,則配置所述聯網設備與所述目標設備通信時的目標資料來源,所述目標資料來源設於所述目標設備。
在一些實施例中,所述功能指令集包括獲取指令集和驗證指令集,所述枚舉單元,具體用於:基於所述獲取指令集,讀取所述目標設備的第二描述符集;基於所述驗證指令集,對所述第二描述符集中的多種描述符進行驗證;若多種所述描述符滿足預設設備要求,則判定枚舉成功。
在一些實施例中,功能指令集還包括資料來源指令集,目標場景配置資訊還包括資料來源配置資訊,所述配置單元,具體用於:基於資料來源指令集,根據資料來源配置資訊,確定所述聯網設備的目標資料來源。
在一些實施例中,所述聯網設備為網路讀寫控制設備,所述第一建立模組503,包括:第二枚舉單元,用於基於所述描述符指令集中的功能指令集,對所述目標設備的第二描述符集中的多種描述符進行枚舉;請求單元,用於若枚舉成功,則向所述服務端請求下發與所述目標設備對應的驅動指令集,以完成通信連接,所述驅動指令集用於與所述目標設備進行資料交換。
在一些實施例中,所述聯網設備為網路代理控制設備,所述第一建立模組503,包括:第二配置單元,用於基於所述描述符指令集中的功能指令集,配置所述聯網設備與所述目標設備通信時的目標資料來源,以及對所述目標設備的第二描述符集中的多種描述符進行枚舉;發送單元,用於若枚舉成功,則將所述第二描述符集發送至所述服務端,以使在所述服務端對所述目標設備進行虛擬化,生成所述目標設備對應的虛擬裝置,從而建立與所述目標設備之間的通信連接。
在一些實施例中,聯網設備作為與目標設備通信連接的從機設備,所述第一建立模組503,包括:第一接收單元,用於接收所述目標設備發送的枚舉請求;第一返回單元,用於回應於所述枚舉請求,向所述目標設備返回所述第一描述符集,以使所述目標設備對所述第一描述符集進行枚舉,並在枚舉成功後,根據資料來源配置資訊配置所述聯網設備與所述目標設備通信時的目標資料來源,所述目標資料來源設於所述服務端。
在一些實施例中,資料來源配置資訊包括資料來源的容量資訊,所述容量資訊包括資料來源的最後邏輯塊位址和塊容量。
在一些實施例中,所述描述符集包括設備描述符、配置描述符、介面描述符、端點描述符、字串描述符、BOS描述符和預設的自訂描述符中的至少一種。
在一些實施例中,所述目標設備包括至少一個第一目標設備和至少一個第二目標設備,所述聯網設備作為與所述第一目標設備通信連接的主機設備,以及作為與所述第二目標設備通信連接的從機設備,所述第一建立模組503,包括:第三枚舉單元,用於基於所述描述符指令集中的功能指令集,對所述第一目標設備的第二描述符集中的多種描述符進行枚舉;第三配置單元,用於若枚舉成功,則配置所述聯網設備與所述第一目標設備通信時的第一目標資料來源,以完成與所述第一目標設備的通信連接,所述第一目標資料來源設於所述第一目標設備;第二接收單元,用於接收所述第二目標設備發送的枚舉請求;第二返回單元,用於回應於所述枚舉請求,向所述第二目標設備返回所述第一描述符集,以使所述第二目標設備對所述第一描述符集進行枚舉,並在枚舉成功後,根據資料來源配置資訊配置所述聯網設備與所述第二目標設備通信時的第二目標資料來源,所述第二目標資料來源設於所述服務端或所述第一目標設備。
在一些實施例中,設備接入裝置,還包括:配置模組,用於基於預設生成策略,配置聯網設備的第一描述符集和資料來源配置資訊,以生成場景配置資訊,預設生成策略包括自訂創建策略和範本創建策略。
參見圖23,在一些實施例中,設備接入裝置可以僅包括預載入模組502及第一建立模組503。預載入模組502及第一建立模組503的具體實現功能請參照上述圖8的描述內容。
為了執行上述圖9所示方法實施例對應的方法,以實現相應的功能和技術效果。參見圖24,圖24示出了本申請實施例提供的一種設備接入裝置的結構框圖。為了便於說明,僅示出了與本實施例相關的部分,本申請實施例提供的設備接入裝置,應用於聯網設備,聯網設備存儲有至少一種應用場景的場景配置資訊,裝置包括:第二建立模組601,用於基於目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種,所述場景配置資訊包括第一描述符集和描述符指令集中的至少一種,所述描述符集用於定義所述聯網設備的設備類型。
為了執行上述圖10所示方法實施例對應的方法,以實現相應的功能和技術效果。參見圖25,圖25示出了本申請實施例提供的一種資料交換裝置的結構框圖。為了便於說明,僅示出了與本實施例相關的部分,本申請實施例提供的資料交換裝置,應用於聯網設備,聯網設備基於圖1、圖8或圖9所示的設備接入方法,與服務端和目標設備建立通信連接,裝置包括:獲取模組701,用於獲取第一目標方發送的資料交換請求;回應模組702,用於基於預設處理策略,對資料交換請求進行回應,並將目標資料返回至第一目標方,目標資料為第二目標方發送的資料,其中若第一目標方為服務端,則第二目標方為目標設備,若第一目標方為目標設備,則第二目標方為服務端。
在一些實施例中,所述目標設備包括至少一個第一目標設備和至少一個第二目標設備,所述聯網設備作為與所述第一目標設備通信連接的主機設備,以及作為與所述第二目標設備通信連接的從機設備,其中若所述第一目標方為所述服務端,則所述第二目標方為所述第一目標設備或所述第二目標設備,若所述第一目標方為所述第一目標設備,則所述第二目標方為所述服務端或所述第二目標設備。
在一些實施例中,所述回應模組702,包括:回應單元,用於回應於資料交換請求,將資料交換請求轉發至第二目標方;轉發單元,用於接收第二目標方響應於資料交換請求返回的目標資料,並將目標資料轉發至第一目標方。
在一些實施例中,所述聯網設備為網路USBkey設備,所述目標設備為電腦主機,回應單元,具體用於:回應於所述電腦主機發送的資料交換請求,將所述資料交換請求轉發至所述服務端,所述資料交換請求攜帶有所述USBkey設備的憑證資訊,以使所述服務端對所述憑證資訊進行校驗。
在一些實施例中,所述回應模組702,包括:處理單元,用於基於預設處理腳本,對資料交換請求進行資料處理,得到資料處理結果;發送單元,用於基於資料處理結果,向第二目標方發送目標資料獲取請求;返回單元,用於接收第二目標方回應於目標資料獲取請求返回的與資料處理結果對應的目標資料,並將目標資料返回至第一目標方。
參見圖26,圖26示出了本申請實施例提供的一種設備接入裝置的結構框圖。為了便於說明,僅示出了與本實施例相關的部分,本申請實施例提供的資料交換裝置,應用於聯網設備,聯網設備基於圖1、圖8或圖9所示的設備接入方法,與服務端和目標設備建立通信連接,裝置包括:確定模組801,用於根據場景配置資訊中的資料來源配置資訊,確定目標資料來源;交互模組802,基於所述目標資料來源,實現所述聯網設備與所述目標設備之間的資料交互。
在本申請的一實施例中,所述資料來源配置資訊包括資料來源的容量資訊、存儲介質及讀寫狀態,所述容量資訊包括資料來源的最後邏輯塊位址、可格式化邏輯塊總數,或塊容量中的至少一種。所述目標資料來源設於所述目標設備、或服務端、或與所述服務端連接的使用者端,或與所述聯網設備通信連接的任意一個電子設備中。
在本申請的一實施例中,所述交互模組802包括:配置單元,用於配置所述聯網設備與所述目標設備通信時的自動運行腳本,所述場景配置資訊包括所述自動運行腳本;第一交互單元,用於基於所述自動運行腳本,向所述目標設備發送第一資料交換請求,並接收所述目標設備回應所述第一資料交換請求發送的第一資料;或第二交互單元,用於基於所述自動運行腳本,接收所述目標設備發送的第二資料交換請求,並回應所述第二資料交換請求向所述目標設備發送第二資料,其中所述第一資料或所述第二資料為所述目標資料來源中的資料。上述的裝置可實施上述方法實施例的方法。上述方法實施例中的可選項也適用於本實施例,這裡不再詳述。本申請實施例的其餘內容可參照上述方法實施例的內容,在本實施例中,不再進行贅述。
參考圖27所示,為本申請一實施例提供的聯網設備的結構示意圖。如圖27所示,該實施例的聯網設備8包括:至少一個處理器80(圖27中僅示出一個)處理器、記憶體81以及存儲在所述記憶體81中並可在所述至少一個處理器80上運行的電腦程式82,所述處理器80執行所述電腦程式82時實現上述任意方法實施例中的步驟。
所述聯網設備8可以是包括但不限於具備聯網功能的單片機或嵌入式等設備、智慧手機或筆記型電腦等終端設備、網路USBkey設備(例如銀行U盾、數位憑證、加密狗等)、網路代理控制設備(例如多埠轉發器等),遠端控制器(包括但不限於網路讀卡器、網路讀寫控制設備、網路控制器(例如路由器和智慧閘道等))、通信類設備(Communication Device Class,CDC,例如網卡、資料機、ISDN(Integrated Services Digital Network)終端)、人體學介面類別設備(Human Interface Device,HID,例如鍵盤或滑鼠)、大型存放區類設備(Mass Storage Device Class,MSC,例如隨身碟、網路隨身碟、讀卡器、網路讀卡器)、印表機類設備(Printer device,例如USB介面的印表機)、靜態圖像獲取類設備(Still Imaging device)、視頻類設備(Video device)、音視頻類設備(Audio/Video Devices)、智慧卡類設備、USB集線器類設備(Universal Serial Bus Hub)以及自訂類設備等。該聯網設備可包括但不僅限於處理器80、記憶體81。本領域技術人員可以理解,圖27僅僅是聯網設備8的舉例,並不構成對聯網設備8的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件,例如還可以包括輸入輸出設備、網路接入設備等。
所稱處理器80可以是中央處理單元(Central Processing Unit,CPU),該處理器80還可以是其他通用處理器、數位訊號處理器(Digital Signal Processor,DSP)、專用積體電路(Application Specific Integrated Circuit,ASIC)、現成可程式設計閘陣列(Field-Programmable Gate Array,FPGA)或者其他可程式設計邏輯器件、分立門或者電晶體邏輯器件、分立硬體元件等。通用處理器可以是微處理器或者該處理器也可以是任何常規的處理器等。
所述記憶體81在一些實施例中可以是所述聯網設備8的內部存儲單元,例如聯網設備8的硬碟或記憶體。所述記憶體81在另一些實施例中也可以是所述聯網設備8的外部存放裝置,例如所述聯網設備8上配備的插接式硬碟,智慧存儲卡(Smart Media Card,SMC),安全數位(Secure Digital,SD)卡,快閃記憶體卡(Flash Card)等。進一步地,所述記憶體81還可以既包括所述聯網設備8的內部存儲單元也包括外部存放裝置。所述記憶體81用於存儲作業系統、應用程式、引導裝載程式(Boot Loader)、資料以及其他程式等,例如所述電腦程式的程式碼等。所述記憶體81還可以用於暫時地存儲已經輸出或者將要輸出的資料。
另外,本申請實施例還提供一種電腦可讀存儲介質,所述電腦可讀存儲介質存儲有電腦程式,所述電腦程式被處理器執行時實現上述任意方法實施例中的步驟。
本申請實施例提供了一種可以運行在單片機、嵌入式設備,或者Window、Linux、iOS、Android、HarmonyOS、等作業系統中的電腦程式產品,當電腦程式產品在聯網設備上運行時,使得聯網設備執行時實現上述各個方法實施例中的步驟。
在本申請所提供的幾個實施例中,可以理解的是,流程圖或框圖中的每個方框可以代表一個模組、程式段或代碼的一部分,所述模組、程式段或代碼的一部分包含一個或多個用於實現規定的邏輯功能的可執行指令。也應當注意的是,在有些作為替換的實現方式中,方框中所標注的功能也可以以不同於附圖中所標注的順序發生。例如,兩個連續的方框實際上可以基本並行地執行,它們有時也可以按相反的循序執行,這依所涉及的功能而定。
所述功能如果以軟體功能模組的形式實現並作為獨立的產品銷售或使用時,可以存儲在一個電腦可讀取存儲介質中。基於這樣的理解,本申請的技術方檔案本質上或者說對現有技術做出貢獻的部分或者該技術方檔案的部分可以以軟體產品的形式體現出來,該電腦軟體產品存儲在一個存儲介質中,包括若干指令用以使得一台聯網設備執行本申請各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:隨身碟、移動硬碟、唯讀記憶體(ROM,Read-Only Memory)、隨機存取記憶體(RAM,Random Access Memory)、Flash記憶體、磁碟或者光碟等各種可以存儲程式碼的介質。
綜上所述,本發明符合發明專利要件,爰依法提出專利申請。惟,以上所述僅為本發明之較佳實施方式,舉凡熟悉本案技藝之人士,在援依本案創作精神所作之等效修飾或變化,皆應包含於以下之申請專利範圍內。
201:聯網單元 202:存儲單元 203:交互單元 204:第一介面 205:第二介面 501:配置模組 502:預載入模組 503:第一建立模組 601:第二建立模組 701:獲取模組 702:回應模組 801:確定模組 802:交互模組 8:聯網設備 S101~S103、S301~S302:步驟 S701、S801~S802、S1101~S1102:步驟
圖1為本申請實施例中一種設備接入方法的流程示意圖。
圖2為本申請一實施例中的聯網設備的結構示意圖。
圖3A-3B為本申請一實施例中聯網設備作為可攜式設備與控制端交互的示意圖。
圖3C為本申請一實施例中聯網設備作為移動終端與控制端交互的示意圖。
圖3D為本申請一實施例中聯網設備作為智慧手錶與控制端交互的示意圖。
圖3E為本申請一實施例中聯網設備作為車載終端與控制端交互的示意圖。
圖3F為本申請一實施例中聯網設備作為多周邊設備與控制端交互的示意圖。
圖4為本申請一實施例中配置聯網設備的目標配置資訊的架構圖。
圖5A為本申請另一實施例中聯網設備的結構圖。
圖5B為本申請另一實施例中聯網設備的結構圖。
圖6為本申請另一實施例提供的一種設備接入方法的流程示意圖。
圖7為本申請另一實施例提供的一種設備接入方法的流程示意圖。
圖8為本申請另一實施例提供的一種設備接入方法的流程示意圖。
圖9為本申請另一實施例提供的一種設備接入方法的流程示意圖。
圖10為本申請實施例提供的一種資料交換方法的流程示意圖。
圖11為本申請另一實施例中資料交換方法的流程圖。
圖12為本申請一實施例中資料交換方法的流程圖。
圖13為本申請另一實施例中資料交換方法的流程圖。
圖14A為本申請一實施例中資料處理過程視角下控制“讀指令(單磁區讀)”磁區位址、資料包或者狀態的示意圖。
圖14B為本申請一實施例中資料交換視角下“讀指令(多磁區連續讀)”磁區位址、資料包或者狀態的示意圖。
圖14C為本申請一實施例中資料交換視角下“寫指令(單磁區寫)”磁區位址、資料包或狀態。
圖14D為本申請一實施例中資料交換視角下控制“寫指令(多磁區連續寫)”磁區位址、資料包或狀態。
圖15為本申請另一實施例中資料交換方法的流程圖。
圖16為本申請另一實施例中資料交換方法的流程圖。
圖17為本申請另一實施例中資料交換方法的流程圖。
圖18為本申請另一實施例中資料交換方法的流程圖。
圖19為本申請另一實施例中資料交換方法的流程圖。
圖20為本申請另一實施例中資料交換方法的流程圖。
圖21為本申請另一實施例中資料交換方法的流程圖。
圖22為本申請一實施例提供的一種設備接入裝置的結構框圖。
圖23為本申請另一實施例提供的一種設備接入方法的流程示意圖。
圖24為本申請另一實施例提供的一種設備接入裝置的結構框圖。
圖25為本申請實一施例提供的一種資料交換裝置的結構框圖。
圖26為本申請實另一施例提供的一種資料交換裝置的結構框圖。
圖27為本申請一實施例提供的聯網設備的結構示意圖。
S101~S103:步驟

Claims (24)

  1. 一種設備接入方法,其中,應用於聯網設備,所述方法包括: 當與服務端通信連接時,預載入目標配置資訊,所述服務端存儲有至少一種預設配置資訊,所述目標配置資訊為所述預設配置資訊中的一種,所述目標配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集合和描述符指令集合中的至少一種,所述第一描述符集合用於定義所述聯網設備的設備類型;所述服務端存儲的場景配置資訊為:在預載入目標配置資訊之前,基於預設生成策略,藉由配置所述聯網設備的第一描述符集合和描述符指令集合中的至少一種,以及資料來源配置資訊生成的; 基於目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種。
  2. 如請求項1所述的設備接入方法,其中,所述當與服務端通信連接時,預載入目標配置資訊,包括: 當與服務端通信連接時,向所述服務端發送配置獲取請求,所述配置獲取請求攜帶有所述聯網設備的標識資訊; 接收所述服務端返回的與所述標識資訊對應的目標配置資訊。
  3. 如請求項1所述的設備接入方法,其中,所述聯網設備作為與目標設備通信連接的主機設備,所述描述符指令集合包括多種功能指令集,所述功能指令集用於控制所述聯網設備與所述目標設備之間的資料交換。
  4. 如請求項3所述的設備接入方法,其中,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括: 基於所述描述符指令集合中的功能指令集,對所述目標設備的第二描述符集合中的多種描述符進行枚舉; 若枚舉成功,則配置所述聯網設備與所述目標設備通信時的目標資料來源,所述目標資料來源設於所述目標設備。
  5. 如請求項4所述的設備接入方法,其中,所述功能指令集包括獲取指令集和驗證指令集,所述基於所述描述符指令集合中的功能指令集,對所述目標設備的第二描述符集合中的多種描述符進行枚舉,包括: 基於所述獲取指令集,讀取所述目標設備的第二描述符集合; 基於所述驗證指令集,對所述第二描述符集合中的多種描述符進行驗證; 若多種所述描述符滿足預設設備要求,則判定枚舉成功。
  6. 如請求項4所述的設備接入方法,其中,所述功能指令集還包括資料來源指令集,所述目標場景配置資訊還包括資料來源配置資訊,所述配置所述聯網設備與所述目標設備通信時的目標資料來源,包括: 基於所述資料來源指令集,根據所述資料來源配置資訊,確定所述聯網設備與所述目標設備通信時的目標資料來源。
  7. 如請求項3所述的設備接入方法,其中,所述聯網設備為網路讀寫控制設備,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括: 基於所述描述符指令集中的功能指令集,對所述目標設備的第二描述符集合中的多種描述符進行枚舉; 若枚舉成功,則向所述服務端請求下發與所述目標設備對應的驅動指令集,以完成通信連接,所述驅動指令集用於與所述目標設備進行資料交換。
  8. 如請求項3所述的設備接入方法,其中,所述聯網設備為網路代理控制設備,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括: 基於所述描述符指令集合中的功能指令集,對所述目標設備的第二描述符集合中的多種描述符進行枚舉; 若枚舉成功,則將所述第二描述符集合發送至所述服務端,以使在所述服務端對所述目標設備進行虛擬化,生成所述目標設備對應的虛擬裝置,從而建立與所述目標設備之間的通信連接。
  9. 如請求項1所述的設備接入方法,其中,所述聯網設備作為與目標設備通信連接的從機設備,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括: 接收所述目標設備發送的枚舉請求; 回應於所述枚舉請求,向所述目標設備返回所述第一描述符集合,以使所述目標設備對所述第一描述符集合進行枚舉,並在枚舉成功後,根據資料來源配置資訊配置所述聯網設備與所述目標設備通信時的目標資料來源,所述目標資料來源設於所述服務端。
  10. 如請求項6或9所述的設備接入方法,其中,所述資料來源配置資訊包括資料來源的容量資訊,所述容量資訊包括資料來源的最後邏輯塊位址和塊容量。
  11. 如請求項4或9所述的設備接入方法,其中,所述描述符集合包括設備描述符、配置描述符、介面描述符、端點描述符、字串描述符和預設的自訂描述符中的至少一種。
  12. 如請求項1所述的設備接入方法,其中,所述目標設備包括至少一個第一目標設備和至少一個第二目標設備,所述聯網設備作為與所述第一目標設備通信連接的主機設備,以及作為與所述第二目標設備通信連接的從機設備,所述基於目標場景描述符資訊,建立與目標設備之間的通信連接,包括: 基於所述描述符指令集合中的功能指令集,對所述第一目標設備的第二描述符集合中的多種描述符進行枚舉; 若枚舉成功,則配置所述聯網設備與所述第一目標設備通信時的第一目標資料來源,以完成與所述第一目標設備的通信連接,所述第一目標資料來源設於所述第一目標設備; 接收所述第二目標設備發送的枚舉請求; 回應於所述枚舉請求,向所述第二目標設備返回所述第一描述符集合,以使所述第二目標設備對所述第一描述符集合進行枚舉,並在枚舉成功後,根據資料來源配置資訊配置所述聯網設備與所述第二目標設備通信時的第二目標資料來源,所述第二目標資料來源設於所述服務端或所述第一目標設備。
  13. 一種資料交換方法,其中,應用於聯網設備,所述聯網設備基於請求項1至12中任一項所述的設備接入方法,與服務端和目標設備建立通信連接,所述方法包括: 獲取第一目標方發送的資料交換請求; 基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,所述目標資料為第二目標方發送的資料,其中若所述第一目標方為所述服務端,則所述第二目標方為所述目標設備,若所述第一目標方為所述目標設備,則所述第二目標方為所述服務端。
  14. 如請求項13所述的資料交換方法,其中,所述目標設備包括至少一個第一目標設備和至少一個第二目標設備,所述聯網設備作為與所述第一目標設備通信連接的主機設備,以及作為與所述第二目標設備通信連接的從機設備,其中若所述第一目標方為所述服務端,則所述第二目標方為所述第一目標設備或所述第二目標設備,若所述第一目標方為所述第二目標設備,則所述第二目標方為所述服務端或所述第一目標設備。
  15. 如請求項13或14所述的資料交換方法,其中,所述基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,包括: 回應於所述資料交換請求,將所述資料交換請求轉發至所述第二目標方; 接收所述第二目標方回應於所述資料交換請求返回的目標資料,並將所述目標資料轉發至所述第一目標方。
  16. 如請求項15所述的資料交換方法,其中,所述聯網設備為網路USBkey設備,所述目標設備為電腦主機,所述回應於所述資料交換請求,將所述資料交換請求轉發至所述第二目標方,包括: 回應於所述電腦主機發送的資料交換請求,將所述資料交換請求轉發至所述服務端,所述資料交換請求攜帶有所述網路USBkey設備的憑證資訊,以使所述服務端對所述憑證資訊進行校驗。
  17. 如請求項13或14所述的資料交換方法,其中,所述基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,包括: 基於預設處理腳本,對所述資料交換請求進行資料處理,得到資料處理結果; 基於所述資料處理結果,向所述第二目標方發送目標資料獲取請求; 接收所述第二目標方回應於所述目標資料獲取請求返回的與所述資料處理結果對應的目標資料,並將所述目標資料返回至所述第一目標方。
  18. 一種設備接入方法,其中,應用於服務端,所述方法包括: 當與聯網設備通信連接時,向所述聯網設備下發目標配置資訊,所述目標配置資訊用於所述聯網設備建立與目標設備之間的通信連接,所述服務端存儲有至少一種預設配置資訊,所述目標配置資訊為所述預設配置資訊中的一種,所述目標配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集合和描述符指令集合中的至少一種,所述第一描述符集合用於定義所述聯網設備的設備類型;所述服務端存儲的場景配置資訊為:在預載入目標配置資訊之前,基於預設生成策略,藉由配置所述聯網設備的第一描述符集合和描述符指令集合中的至少一種,以及資料來源配置資訊生成的; 基於目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種。
  19. 一種資料交換方法,其中,應用於服務端,所述服務端基於請求項18所述的設備接入方法,與聯網設備建立通信連接,所述方法包括: 向所述聯網設備發送資料交換請求,並接收所述聯網設備返回的目標資料,所述資料交換請求用於所述聯網設備基於預設處理策略對所述資料交換請求進行回應,所述目標資料為目標設備發送的資料; 和/或,根據所述聯網設備基於預設處理策略回應的資料交換請求,向所述聯網設備發送目標資料,所述目標資料由所述聯網設備返回至目標設備,所述資料交換請求由所述目標設備發起。
  20. 一種設備接入裝置,其中,應用於聯網設備,所述裝置包括: 預載入模組,用於當與服務端通信連接時,預載入目標配置資訊,所述服務端存儲有至少一種預設配置資訊,所述目標配置資訊為所述預設配置資訊中的一種,所述目標配置資訊包括所述聯網設備在至少一種應用場景下的場景配置資訊,所述場景配置資訊包括第一描述符集合和描述符指令集合中的至少一種,所述描述符集合用於定義所述聯網設備的設備類型;所述服務端存儲的場景配置資訊為:在預載入目標配置資訊之前,基於預設生成策略,藉由配置所述聯網設備的第一描述符集合和描述符指令集合中的至少一種,以及資料來源配置資訊生成的; 第一建立模組,用於基於目標場景配置資訊,建立與目標設備之間的通信連接,以使所述聯網設備接入到所述目標設備,所述目標場景配置資訊為所述場景配置資訊中的一種。
  21. 一種資料交換裝置,其中,應用於聯網設備,所述聯網設備基於請求項1至12中任一項所述的設備接入方法,與服務端和目標設備建立通信連接,所述裝置包括: 獲取模組,用於獲取第一目標方發送的資料交換請求; 回應模組,用於基於預設處理策略,對所述資料交換請求進行回應,並將目標資料返回至所述第一目標方,所述目標資料為第二目標方發送的資料,其中若所述第一目標方為所述服務端,則所述第二目標方為所述目標設備,若所述第一目標方為所述目標設備,則所述第二目標方為所述服務端。
  22. 一種聯網設備,其中,包括處理器和記憶體,所述記憶體用於存儲電腦程式,所述電腦程式被所述處理器執行時實現如請求項1至12中任一項所述的設備接入方法,或請求項13至17中任一項所述的資料交換方法。
  23. 一種服務端,其中,所述服務端包括處理器和記憶體,所述服務端能夠實現如請求項18所述的設備接入方法,或請求項19所述的資料交換方法。
  24. 一種電腦可讀存儲介質,其中,其存儲有電腦程式,所述電腦程式被處理器執行時實現如請求項1至12中任一項所述的設備接入方法,或請求項13至17中任一項所述的資料交換方法。
TW112129850A 2022-08-08 2023-08-08 設備接入方法及其裝置、資料交換方法及其裝置、聯網設備、服務端及存儲介質 TWI840288B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202210946796.4A CN115442083B (zh) 2022-08-08 2022-08-08 设备接入方法、数据交换方法、装置、设备及存储介质
CN2022109467964 2022-08-08
PCT/CN2023/111107 WO2024032474A1 (zh) 2022-08-08 2023-08-03 设备接入方法、数据交换方法及相关设备
WOPCT/CN2023/111107 2023-08-03

Publications (2)

Publication Number Publication Date
TW202407566A true TW202407566A (zh) 2024-02-16
TWI840288B TWI840288B (zh) 2024-04-21

Family

ID=

Also Published As

Publication number Publication date
CN117544336A (zh) 2024-02-09
CN115442083A (zh) 2022-12-06
WO2024032474A1 (zh) 2024-02-15
CN117544334A (zh) 2024-02-09
CN115442083B (zh) 2023-08-25

Similar Documents

Publication Publication Date Title
US8868628B2 (en) Sharing computer data among computers
JP2019091494A (ja) エミュレートされたエンドポイントコンフィグレーション
US8839403B2 (en) Local proxy system and method
CN102870101A (zh) 对在块存取设备和图形存取设备之间共享的存储器池的并行存取
KR101533427B1 (ko) 대용량 가상저장공간을 제공하는 이동식 저장장치 및 그 제공방법
TWI620093B (zh) 用於保全電腦大容量儲存資料的方法和裝置
JP2011513804A (ja) 直接ユーザアクセスを受ける記憶デバイス
TW200903264A (en) Data sharing and transfer systems and methods
CN103078898B (zh) 文件系统、接口服务装置和数据存储服务提供方法
EP2822250A1 (en) Multi-application cloud storage platform and cloud storage terminal
WO2023143646A2 (zh) 数据安全保护方法、设备、系统、安全控制框架及存储介质
EP2997463B1 (en) Extraction of operating system-specific characteristics via a communication interface
WO2024032474A1 (zh) 设备接入方法、数据交换方法及相关设备
US20100235461A1 (en) Network device and method of sharing external storage device
US20130124877A1 (en) Communication method, communication equipment, and storage equipment
CN109451079A (zh) 一种云u盘及其存储方法和存储系统
JP5528034B2 (ja) ブレード・センタにおいてブレード・サーバを管理するための方法、装置、およびプログラム
EP2309701A1 (en) Data storage device
TWI840288B (zh) 設備接入方法及其裝置、資料交換方法及其裝置、聯網設備、服務端及存儲介質
KR100733742B1 (ko) 휴대용 정보처리 단말기 및 상기 단말기의 통신 시스템
WO2023273803A1 (zh) 一种认证方法、装置和存储系统
KR20120134463A (ko) 광학적 데이터 백업 방법 및 이를 적용하는 장치
KR20150073136A (ko) 대용량 가상저장공간을 제공하는 이동식 저장장치 및 그 제공방법
CN101599063B (zh) 无线虚拟储存装置及取得远程文件的方法
US8028122B2 (en) Methods and systems for classifying storage systems using fixed static-IP addresses