本發(fā)明涉及通信技術領域,尤其涉及一種數(shù)據(jù)傳輸系統(tǒng)、方法、外接設備和移動終端。
背景技術:
隨著移動通信技術的發(fā)展,移動終端已經(jīng)成為用戶隨身攜帶,必不可少的電子設備。在運營商和各大oem(originalequipmentmanufacturer,原始設備制造商)廠商的牽頭下,3g(3rdgeneration,第三代移動通信技術)、4g(the4thgenerationmobilecommunicationtechnology,第四代移動通信技術)、ca(carrieraggregation,應用載波聚合技術)以及最新的5g(5th-generation,第五代移動通信技術)應運而生,這些技術的目的是為了提高用戶的上網(wǎng)帶寬。在此種背景下,一種提高用戶上網(wǎng)帶寬的方式也悄然而生,移動終端連接兩個調(diào)制解調(diào)器,每個調(diào)制解調(diào)器都有對應的sim(subscriberidentificationmodule)卡,且每個調(diào)制解調(diào)器都可以獨立上網(wǎng),然后在上層將用戶訪問的網(wǎng)絡根據(jù)實際情況進行兩個數(shù)據(jù)網(wǎng)絡的網(wǎng)速疊加,從而達到提高上網(wǎng)帶寬的目的。由于運營商對傳統(tǒng)用戶上網(wǎng)帶寬的壟斷和限制,終端廠商可以通過該網(wǎng)速疊加技術方案加大用戶上網(wǎng)帶寬,有效的整合了移動終端中兩張sim卡的上網(wǎng)資源,并實現(xiàn)了真dsda(dualsimdualactive,雙卡雙通),以及雙卡雙lte(longtermevolution,長期演進)待機。
因此,為了使移動終端連接兩個調(diào)制解調(diào)器,將移動終端與含有調(diào)制解調(diào)器的外接設備的連接。但是在移動終端和外接設備之間進行數(shù)據(jù)傳輸過程中,當外接設備和移動終端之間所傳輸?shù)臄?shù)據(jù)包過大時,會導致數(shù)據(jù)包傳輸失敗的情況出現(xiàn)。
技術實現(xiàn)要素:
本發(fā)明的主要目的在于提出一種數(shù)據(jù)傳輸系統(tǒng)、方法、外接設備和移動終端,旨在解決移動終端通過外接設備實現(xiàn)雙lte通信過程中,外接設備和移動終端之間傳輸?shù)臄?shù)據(jù)包過大,導致數(shù)據(jù)包傳輸失敗的技術問題。
為實現(xiàn)上述目的,本發(fā)明提供的一種數(shù)據(jù)傳輸系統(tǒng),所述數(shù)據(jù)傳輸系統(tǒng)包括移動終端和外接設備,所述移動終端包括內(nèi)嵌有虛擬用戶識別卡的第一應用處理器,以及與實體用戶識別卡連接的第一調(diào)制解調(diào)器,所述第一調(diào)制解調(diào)器包括第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器,所述第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器包括第一接收臨時緩沖區(qū),所述第一應用處理器包括第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊和與所述第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器連接的第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端,所述第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端包括第一發(fā)送臨時緩沖區(qū);所述外接設備包括第二應用處理器和第二調(diào)制解調(diào)器,所述第二調(diào)制解調(diào)器包括第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器,所述第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器包括第二發(fā)送臨時緩沖區(qū),所述第二應用處理器包括第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊和與所述第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器連接的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端,所述第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端包括第二接收臨時緩沖區(qū);
所述第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器,用于當偵測到發(fā)送待傳輸數(shù)據(jù)包的數(shù)據(jù)傳輸指令時,根據(jù)所述數(shù)據(jù)傳輸指令獲取待傳輸數(shù)據(jù)包;將所述待傳輸數(shù)據(jù)包緩存至所述第二發(fā)送臨時緩沖區(qū)中;
所述第二應用處理器,用于從所述第二接收臨時緩沖區(qū)中獲取所述待傳輸數(shù)據(jù)包,將所述待傳輸數(shù)據(jù)包通過預設接口發(fā)送給所述第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊;
所述第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊,用于當接收到所述第二應用處理器發(fā)送的待傳輸數(shù)據(jù)包時,獲取所述待傳輸數(shù)據(jù)包中的類別標識;若根據(jù)所述類別標識確定所述待傳輸數(shù)據(jù)包為待轉(zhuǎn)發(fā)數(shù)據(jù)包,則將所述待傳輸數(shù)據(jù)包轉(zhuǎn)發(fā)給所述第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端;
所述第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端,用于將所述待傳輸數(shù)據(jù)包緩存至所述第一發(fā)送臨時緩沖區(qū)中;
所述第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器,用于從所述第一接收臨時緩沖區(qū)中獲取所述待傳輸數(shù)據(jù)包;
其中,所述第二發(fā)送臨時緩沖區(qū)和所述第二接收臨時緩沖區(qū)的容量值是同步變化的,所述第二發(fā)送臨時緩沖區(qū)和所述第二接收臨時緩沖區(qū)的容量值等于第一默認值與第一增大值之和,且所述第一默認值與所述第一增大值之和大于或者等于所述待傳輸數(shù)據(jù)包的大?。?/p>
所述第一發(fā)送臨時緩沖區(qū)和所述第一接收臨時緩沖區(qū)的容量值是同步變化的,所述第一發(fā)送臨時緩沖區(qū)和所述第一接收臨時緩沖區(qū)的容量值等于第二默認值與第二增大值之和,且所述第二默認值與所述第二增大值之和大于或者等于所述待傳輸數(shù)據(jù)包的大小。
可選地,所述第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器還用于計算所述待傳輸數(shù)據(jù)包的大小,并判斷所述待傳輸數(shù)據(jù)包的大小是否大于所述第一默認值;若所述待傳輸數(shù)據(jù)包的大小大于所述第一默認值,則計算所述待傳輸數(shù)據(jù)包的大小和所述第一默認值之間的差值,根據(jù)所述差值確定所述第一增大值;若所述待傳輸數(shù)據(jù)包的大小小于或者等于所述第一默認值,將所述待傳輸數(shù)據(jù)包緩存至容量值為第一默認值的所述第二發(fā)送臨時緩沖區(qū)中;
所述第二應用處理器還用于從容量值為第一默認值的所述第二接收臨時緩沖區(qū)中獲取所述待傳輸數(shù)據(jù)包,將所述待傳輸數(shù)據(jù)包通過預設接口發(fā)送給所述第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊。
可選地,所述第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器還用于當所述第二應用處理器從所述第二接收臨時緩沖區(qū)中獲取到所述待傳輸數(shù)據(jù)包時,減小所述第二發(fā)送臨時緩沖區(qū)的容量值至所述第一默認值。
此外,為實現(xiàn)上述目的,本發(fā)明還提出一種數(shù)據(jù)傳輸方法,所述數(shù)據(jù)傳輸方法應用于外接設備,所述外接設備包括第二應用處理器和第二調(diào)制解調(diào)器,所述第二調(diào)制解調(diào)器包括與所述第二應用處理器連接的第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器,所述第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器包括第二發(fā)送臨時緩沖區(qū),所述數(shù)據(jù)傳輸方法包括:
當所述第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器偵測到發(fā)送待傳輸數(shù)據(jù)包的數(shù)據(jù)傳輸指令時,根據(jù)所述數(shù)據(jù)傳輸指令獲取待傳輸數(shù)據(jù)包;
將所述待傳輸數(shù)據(jù)包緩存至所述第二發(fā)送臨時緩沖區(qū)中,以供所述第二應用處理器從與所述第二發(fā)送臨時緩沖區(qū)對應的第二接收臨時緩沖區(qū)中獲取所述待傳輸數(shù)據(jù)包,將所述待傳輸數(shù)據(jù)包通過預設接口發(fā)送給移動終端;
其中,所述第二發(fā)送臨時緩沖區(qū)和所述第二接收臨時緩沖區(qū)的容量值是同步變化的,所述第二發(fā)送臨時緩沖區(qū)和所述第二接收臨時緩沖區(qū)的容量值等于第一默認值與第一增大值之和,且所述第一默認值與所述第一增大值之和大于或者等于所述待傳輸數(shù)據(jù)包的大小。
可選地,所述將所述待傳輸數(shù)據(jù)包緩存至所述第二發(fā)送臨時緩沖區(qū)中的步驟之前,還包括:
計算所述待傳輸數(shù)據(jù)包的大小,并判斷所述待傳輸數(shù)據(jù)包的大小是否大于所述第一默認值;
若所述待傳輸數(shù)據(jù)包的大小大于所述第一默認值,則計算所述待傳輸數(shù)據(jù)包的大小和所述第一默認值之間的差值,根據(jù)所述差值確定所述第一增大值;
若所述待傳輸數(shù)據(jù)包的大小小于或者等于所述第一默認值,將所述待傳輸數(shù)據(jù)包緩存至容量值為第一默認值的所述第二發(fā)送臨時緩沖區(qū)中,以供所述第二應用處理器從容量值為第一默認值的所述第二接收臨時緩沖區(qū)中獲取所述待傳輸數(shù)據(jù)包,將所述待傳輸數(shù)據(jù)包通過預設接口發(fā)送給移動終端。
可選地,所述將所述待傳輸數(shù)據(jù)包緩存至所述第二發(fā)送臨時緩沖區(qū)中的步驟之后,還包括:
當所述第二應用處理器從所述第二接收臨時緩沖區(qū)中獲取到所述待傳輸數(shù)據(jù)包時,所述第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器減小所述第二發(fā)送臨時緩沖區(qū)的容量值至所述第一默認值。
可選地,所述將所述待傳輸數(shù)據(jù)包緩存至所述第二發(fā)送臨時緩沖區(qū)中的步驟之后,還包括:
當所述第二應用處理器從所述第二接收臨時緩沖區(qū)獲取到所述待傳輸數(shù)據(jù)包時,所述第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器刪除所述第二發(fā)送臨時緩沖區(qū)中緩存的所述待傳輸數(shù)據(jù)包。
此外,為實現(xiàn)上述目的,本發(fā)明還提出一種數(shù)據(jù)傳輸方法,所述數(shù)據(jù)傳輸方法應用于移動終端,所述移動終端包括內(nèi)嵌有虛擬用戶識別卡的第一應用處理器,以及與實體用戶識別卡連接的第一調(diào)制解調(diào)器,所述第一調(diào)制解調(diào)器包括第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器,所述第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器包括第一接收臨時緩沖區(qū),所述第一應用處理器包括第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊和與所述第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器連接的第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端,所述第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端包括第一發(fā)送臨時緩沖區(qū),所述數(shù)據(jù)傳輸方法包括:
當所述第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊接收到外接設備第二應用處理器發(fā)送的待傳輸數(shù)據(jù)包時,獲取所述待傳輸數(shù)據(jù)包中的類別標識;
若根據(jù)所述類別標識確定所述待傳輸數(shù)據(jù)包為待轉(zhuǎn)發(fā)數(shù)據(jù)包,則將所述待傳輸數(shù)據(jù)包轉(zhuǎn)發(fā)給所述第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端,以供所述第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端將所述待傳輸數(shù)據(jù)包緩存至所述第一發(fā)送臨時緩沖區(qū)中,由所述第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器從所述第一接收臨時緩沖區(qū)中獲取所述待傳輸數(shù)據(jù)包;
其中,所述第一發(fā)送臨時緩沖區(qū)和所述第一接收臨時緩沖區(qū)的容量值是同步變化的,所述第一發(fā)送臨時緩沖區(qū)和所述第一接收臨時緩沖區(qū)的容量值等于第二默認值與第二增大值之和,且所述第二默認值與所述第二增大值之和大于或者等于所述待傳輸數(shù)據(jù)包的大小。
此外,為實現(xiàn)上述目的,本發(fā)明還提出一種外接設備,所述外接設備包括第二應用處理器和第二調(diào)制解調(diào)器,所述第二調(diào)制解調(diào)器包括第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器,所述第二應用處理器包括第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊和與所述第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器連接的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端,所述第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端包括第二接收臨時緩沖區(qū);所述外接設備應用于如上所述的應用于外接設備的數(shù)據(jù)傳輸方法。
此外,為實現(xiàn)上述目的,本發(fā)明還提出一種移動終端,所述移動終端包括內(nèi)嵌有虛擬用戶識別卡的第一應用處理器,以及與實體用戶識別卡連接的第一調(diào)制解調(diào)器,所述第一調(diào)制解調(diào)器包括第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器,所述第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器包括第一接收臨時緩沖區(qū),所述第一應用處理器包括第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊和與所述第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器連接的第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端,所述第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端包括第一發(fā)送臨時緩沖區(qū);所述移動終端應用于如上所述的應用于移動終端的數(shù)據(jù)傳輸方法。
本發(fā)明提供一種數(shù)據(jù)傳輸系統(tǒng)、方法、外接設備和移動終端,在外接設備和移動終端之間傳輸待傳輸數(shù)據(jù)包過程中,增大外接設備和外接設備中各個組件(第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器、第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端、第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊、第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊、第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器和第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端)中臨時緩沖區(qū)的容量值,使各個組件中臨時緩沖區(qū)的容量值大于或者等于待傳輸數(shù)據(jù)包的大小,避免了在外接設備和移動終端進行數(shù)據(jù)傳輸過程中,由于所傳輸?shù)臄?shù)據(jù)包過大,導致數(shù)據(jù)包傳輸失敗的情況出現(xiàn)。
附圖說明
圖1為本發(fā)明一實施例的lte網(wǎng)絡架構(gòu)的示意圖;
圖2為本發(fā)明實施例中移動終端和外接設備通訊連接的一種硬件結(jié)構(gòu)示意圖;
圖3為本發(fā)明實施例中移動終端和外接設備通訊連接的一種實體結(jié)構(gòu)示意圖;
圖4為本發(fā)明實施例中移動終端和外接設備通訊連接的另一種結(jié)構(gòu)示意圖;
圖5為本發(fā)明中應用于外接設備的數(shù)據(jù)傳輸方法第一實施例的流程示意圖;
圖6為本發(fā)明中應用于外接設備的數(shù)據(jù)傳輸方法第二實施例的流程示意圖;
圖7為本發(fā)明中應用于外接設備的數(shù)據(jù)傳輸方法第三實施例的流程示意圖;
圖8為本發(fā)明中應用于移動終端的數(shù)據(jù)傳輸方法較佳實施例的流程示意圖。
本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做說明。
具體實施方式
應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
現(xiàn)在將參考附圖描述實現(xiàn)本發(fā)明各個實施例的移動終端。在后續(xù)的描述中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發(fā)明的說明,其本身并沒有特定的意義。因此,"模塊"與"部件"可以混合地使用。
圖1是本發(fā)明一實施例的lte網(wǎng)絡架構(gòu)的示意圖。本發(fā)明一實施例的lte網(wǎng)絡架構(gòu)包括:一個或多個移動終端(userequipment,ue)100、e-utran(evolvedumtsterrestrialradioaccessnetwork,演進的umts陸地無線接入網(wǎng))(圖中未標號)、演進分組核心(epc)(圖中未標號)、歸屬訂戶服務器(hss)107、網(wǎng)絡(例如,因特網(wǎng))(圖中未標號)以及電路交換系統(tǒng)(圖中未標號)。
e-utran包括演進b節(jié)點(enodeb)101和其它enodeb102。enodeb101提供朝向移動終端100的用戶面和控制面的協(xié)議終接。enodeb101可經(jīng)由x2接口連接到其他enodeb。enodeb101也可稱為基站、基收發(fā)機站、無線電基站、無線電收發(fā)機、收發(fā)機功能、基本服務集、擴展服務集、或其他某個合適的術語。enodeb101為移動終端100提供去往epc的接入點。
enodeb101通過s1接口連接到epc。epc包括移動管理實體(eem)104、其他移動管理實體106、服務網(wǎng)關103,以及分組數(shù)據(jù)網(wǎng)絡(pdn)網(wǎng)關105。移動管理實體104是處理移動終端100與epc之間的信令的控制節(jié)點。移動管理實體104提供承載和連接管理。所有用戶ip分組通過服務網(wǎng)關103來傳遞,服務網(wǎng)關103自身連接到pdn網(wǎng)關105。pdn網(wǎng)關105提供ueip地址分配以及其他功能。pdn網(wǎng)關105連接到網(wǎng)絡,例如,因特網(wǎng)。
電路交換系統(tǒng)包括交互解決方案模塊(iws)108、移動交換中心(msc)109、基站110和移動站111。在一個方面,電路交換系統(tǒng)可以通過iws和mme(mobilitymanagemententity,移動管理實體)與eps(evolvedpacketsystem,演進的分組系統(tǒng))進行通信。
圖2為本發(fā)明實施例中移動終端和外接設備通訊連接的一種硬件結(jié)構(gòu)示意圖。在本發(fā)明實施例中,移動終端100通過預設接口與外接設備200連接。移動終端100包括第一處理芯片001和與第一處理芯片001連接的第一射頻模塊12。其中,第一處理芯片001包括內(nèi)嵌有虛擬用戶識別卡13的第一應用處理器(applicationprocessor)10、與實體用戶識別卡14連接的第一調(diào)制解調(diào)器11(modem1)和rpm(resourcepowermanager,資源電源管理器)15。外接設備200包括第二處理芯片002和與第二處理芯片002連接的第二射頻模塊22。其中,第二處理芯片002包括第二應用處理器20和第二調(diào)制解調(diào)器(modem2)21。用戶識別卡為sim卡。
第一應用處理器10和第二應用處理器20的內(nèi)部框架包括應用層、框架層等,可處理復雜的邏輯操作以及進行任務分配等。第一應用處理器10內(nèi)嵌有虛擬用戶識別卡13,虛擬用戶識別卡13包括存儲模塊和虛擬片內(nèi)操作系統(tǒng)(vcos,virtualchipoperatingsystem),該存儲模塊可為efs(encryptingfilesystem,加密文件系統(tǒng)),存儲模塊用于存儲虛擬用戶識別卡13的鑒權(quán)數(shù)據(jù)。
在本發(fā)明實施例中,應用處理器指android操作系統(tǒng),以及基于android操作系統(tǒng)的各種apk(androidpackage,安卓安裝包)。第一應用處理器10和第二應用處理器20通過預設接口實現(xiàn)連接,為用戶提供交互接口,將用戶輸入的操作指令(例如,用戶通過用戶界面輸入的有關啟動視頻通話的操作指令)傳輸給第一調(diào)制解調(diào)器11或第二調(diào)制解調(diào)器21,以實現(xiàn)兩個處理器之間數(shù)據(jù)的定義與傳遞,例如,進行兩個應用處理器的休眠、喚醒、同步的控制、開關機時芯片啟動順序的控制等。
第一應用處理器10通過預設接口與第二應用處理器20連接,以實現(xiàn)移動終端100與外接設備200之間的連接。在本發(fā)明實施例中,預設接口為usb(universalserialbus,通用串行總線),usb復用出三條數(shù)據(jù)通道,分別用于第一應用處理器10和第二應用處理器20之間用戶數(shù)據(jù)、信令數(shù)據(jù)和sim卡鑒權(quán)數(shù)據(jù)的交互。即第一應用處理器10和第二應用處理器20通過usb傳輸用戶數(shù)據(jù)、信令數(shù)據(jù)和sim卡鑒權(quán)數(shù)據(jù)。其中,用戶數(shù)據(jù)包括但不限于上網(wǎng)產(chǎn)生的數(shù)據(jù),圖片和聊天信息數(shù)據(jù);信令數(shù)據(jù)包括但不限于開關機的控制數(shù)據(jù),開關飛行模式的控制數(shù)據(jù),顯示狀態(tài)信號的控制數(shù)據(jù);sim卡鑒權(quán)數(shù)據(jù)包括但不限于imsi(internationalmobilesubscriberidentificationnumber,國際移動用戶識別碼)和ki(keyidentifier,鑒權(quán)密鑰)。
具體地,第一應用處理器10和第二應用處理器20通過otg(on-the-go)技術進行數(shù)據(jù)交互。通過otg技術,移動終端100中的第一調(diào)制解調(diào)器11可通過實體用戶識別卡14或虛擬用戶識別卡13中的sim卡參數(shù)來接入enodeb101,第二調(diào)制解調(diào)器21可通過實體用戶識別卡14或虛擬用戶識別卡13的sim卡參數(shù)來接入enodeb101,sim卡參數(shù)包括但不限于sim卡鑒權(quán)數(shù)據(jù)。
第一調(diào)制解調(diào)器11和第二調(diào)制解調(diào)器21包含各種網(wǎng)絡交互的網(wǎng)絡制式的協(xié)議棧,協(xié)議棧包含lte/wcdma(widebandcodedivisionmultipleaccess,寬帶碼分多址)/gsm(globalsystemformobilecommunication,全球移動通信系統(tǒng))/td-scdma(timedivision-synchronouscodedivisionmultipleaccess,同步時分碼分多址)/cdma(codedivisionmultipleaccess,碼分多址)/edge(enhanceddatarateforgsmevolution,強型數(shù)據(jù)速率gsm演進技術)等通訊標準里邊規(guī)定的協(xié)議代碼。移動終端100通過協(xié)議與運營商網(wǎng)絡進行交互,即進行數(shù)據(jù)流量上網(wǎng)、volte(voiceoverlte)打電話或者cs(circuitswitched,電路交換)域打電話。第一調(diào)制解調(diào)器11和第二調(diào)制解調(diào)器21還用于對sim卡的管控等等。
在本發(fā)明實施例中,第一射頻模塊12用于將移動終端100傳輸?shù)臄?shù)據(jù)處理后傳給enodeb101(基站網(wǎng)絡),以及用于將enodeb101傳輸?shù)臄?shù)據(jù)處理后傳給移動終端100。第二射頻模塊22用于將外接設備200傳輸?shù)臄?shù)據(jù)處理后傳給enodeb101(基站網(wǎng)絡),以及用于將enodeb101傳輸?shù)臄?shù)據(jù)處理后傳給外接設備200。
第一射頻模塊12和第二射頻模塊22所涉及的無線接入技術可以包括lte、gsm、gprs(generalpacketradioservice,通用分組無線服務)、cdma、edge、wlan(wirelesslocalareanetworks,無線局域網(wǎng))、cdma-2000、td-scdma、wcdma、wifi(wirelessfidelity,無線保真)等等。
實體用戶識別卡14與第一調(diào)制解調(diào)器11連接,虛擬用戶識別卡13以軟件的形式嵌在第一應用處理器10中。實體用戶識別卡14和虛擬用戶識別卡13可存儲與不同或相同的技術標準相關聯(lián)的用戶信息,用于提供移動通信業(yè)務(cs語音業(yè)務、ps數(shù)據(jù)業(yè)務和ps語音業(yè)務)所需的相關數(shù)據(jù),并在其內(nèi)部存儲用戶信息、短消息、執(zhí)行鑒權(quán)算法和產(chǎn)生加密密匙等。在特定非限制性實例中,技術標準可為2g通信技術,例如,gsm、edge)、3g通信技術(例如,wcdma、td-scdma)、4g通信技術(例如,lte),或任何其它移動通信技術(例如,4g等等)。
當虛擬用戶識別卡13需要進行網(wǎng)絡注冊時,通過開啟的無線保真(wifi)網(wǎng)絡發(fā)送包含業(yè)務菜單數(shù)據(jù)的下載請求至虛擬用戶識別卡13對應的云端服務器,以從云端服務器獲取虛擬用戶識別卡13的數(shù)據(jù)信息。當獲取到虛擬用戶識別卡13的數(shù)據(jù)信息時,將數(shù)據(jù)信息寫入虛擬用戶識別卡13的存儲模塊中,以實現(xiàn)虛擬用戶識別卡13的網(wǎng)絡注冊。其中,數(shù)據(jù)信息可以包括:imsi、ki(keyidentifier,鑒權(quán)密鑰)、iccid(integratedcircuitcardidentifier)、pin(個人標識號,personalidentificationnumber)、puk(pinunlockingkey)。可以理解的是,云端服務器中存儲了各個運營商的卡號資源。
由于目前的移動終端100只有一套射頻模塊,當移動終端100有兩張用戶識別卡時,移動終端100的兩張用戶識別卡使用該套射頻是分時復用的關系,并不能同時占用。例如,在兩張用戶識別卡全開時,其中一張用戶識別卡只處理gsm通話,而另一張用戶識別卡處理4g網(wǎng)絡信息,具體哪張用戶識別卡執(zhí)行何種網(wǎng)絡,在此不做限定。因此目前的射頻雙卡分時復用這種架構(gòu)僅做到了lte+gsm(即一張用戶識別卡對應的技術標準為lte,另一張用戶識別卡對應的技術標準為gsm)。
可以理解的是,現(xiàn)有的移動終端100雖然可以支持雙用戶識別卡,由于移動終端100在注冊網(wǎng)絡的情況下,兩張用戶識別卡支持的是不同技術標準的網(wǎng)絡,一張支持2g或3g,另一張支持4g,會使得移動終端100使用過程中,上網(wǎng)流量速度較慢。在本發(fā)明實施例中,移動終端100通過usb連接外接設備200,由于外接設備200包括第二調(diào)制解調(diào)器21和第二射頻模塊22,且第二射頻模塊22支持4g網(wǎng)絡,因此,移動終端100可通過usb與外接設備200交互,從而使得移動終端100具備雙lte功能(此時虛擬用戶識別卡13和實體用戶識別卡14管理的技術標準均為lte標準,第一射頻模塊12和第二射頻模塊22所涉及的無線接入技術為lte)。
在本發(fā)明實施例中,數(shù)據(jù)傳輸系統(tǒng)包括移動終端100和外接設備200,移動終端100通過外接設備200具備雙lte功能的實現(xiàn)過程可為:①實體用戶識別卡14通過第二調(diào)制解調(diào)器21支持lte,具體過程為:第一調(diào)制解調(diào)器11將實體用戶識別卡14中需要訪問lte網(wǎng)絡的數(shù)據(jù)發(fā)送給第一應用處理器10,第一應用處理器10將所接收的數(shù)據(jù)通過usb發(fā)送給外接設備200的第二應用處理器20,第二應用處理器20將所接收的數(shù)據(jù)發(fā)送給第二調(diào)制解調(diào)器21,由第二調(diào)制解調(diào)器21轉(zhuǎn)發(fā)給第二射頻模塊22,第二射頻模塊22將所接收的數(shù)據(jù)通過lte網(wǎng)絡發(fā)送出去;虛擬用戶識別卡13通過第一調(diào)制解調(diào)器11支持lte,以實現(xiàn)移動終端100可支持雙lte。②虛擬用戶識別卡13通過第二調(diào)制解調(diào)器21支持lte,具體過程為:第一應用處理器10將虛擬用戶識別卡13中需要訪問lte網(wǎng)絡的數(shù)據(jù)通過usb發(fā)送給外接設備200的第二應用處理器20,第二應用處理器20將所接收的數(shù)據(jù)發(fā)送給第二調(diào)制解調(diào)器21,由第二調(diào)制解調(diào)器21轉(zhuǎn)發(fā)給第二射頻模塊22,第二射頻模塊22將所接收的數(shù)據(jù)通過lte網(wǎng)絡發(fā)送出去;實體用戶識別卡14通過第一調(diào)制解調(diào)器11支持lte,以實現(xiàn)移動終端100可支持雙lte。
當移動終端100未通過usb與外接設備200連接時,實體用戶識別卡14所對應的技術標準為gsm,用于進行語音通訊,虛擬用戶識別卡13通過第一調(diào)制解調(diào)器11支持lte,用于通過4g網(wǎng)絡進行數(shù)據(jù)訪問。
實體用戶識別卡14在與移動終端100交互時,移動終端100檢測實體用戶識別卡14存在與否的信號只在開機瞬時產(chǎn)生,當開機檢測不到實體用戶識別卡14存在時,移動終端100將提示“插入用戶識別卡”。移動終端100開機之后,移動終端100和實體用戶識別卡14之間28秒通信一次,完成一些固定的通信檢查(例如,用戶識別卡是否在位等)。
移動終端100的rpm15用于管控各種資源,包括時鐘資源、總線資源、pmic(powermanagementic,電源管理集成電路,即各個芯片的電壓)、ddr(內(nèi)存分配),以及管理芯片的休眠喚醒的中斷和應用處理器喚醒的截止時間。移動終端100的各個子系統(tǒng),在需要資源時,向rpm15申請資源,各個子系統(tǒng)分別包括第一應用處理器10,第一調(diào)制解調(diào)器11、pronto(wifi/藍牙、nfc(nearfieldcommunication,近場通信)等)、lpass(lowpoweraudiosubsystem,低功耗音頻子系統(tǒng)),rpm15用來決定移動終端100系統(tǒng)的休眠狀態(tài),具體是,rpm15基于各個子系統(tǒng)的投票機制實現(xiàn),當各個子系統(tǒng)都投休眠票時,rpm15才可以使移動終端100整個系統(tǒng)進行休眠。而當移動終端100有一個子或者多個子系統(tǒng)投反對休眠的票,移動終端100整個系統(tǒng)都無法休眠。
在移動終端100的整個系統(tǒng)休眠之后,若是要重新啟動運行,需要喚醒第一應用處理器10以進行數(shù)據(jù)的傳輸交互。
在移動終端100和外接設備200通過usb通訊連接的情況下,喚醒方式可為以下三種:
1、第一應用處理器10接收到信令數(shù)據(jù)時,通過usb發(fā)送握手關鍵字給第二應用處理器20,以喚醒第二應用處理器20。
2、第二調(diào)制解調(diào)器21接收到用戶數(shù)據(jù)時,喚醒第二應用處理器20,由第二應用處理器20通過usb傳送握手關鍵字給第一應用處理器10,以喚醒第一應用處理器10。
3、第二調(diào)制解調(diào)器21周期性查找尋呼請求,以主動激活自己。若接收到尋呼請求,第二調(diào)制解調(diào)器21則喚醒第二應用處理器20,由第二應用處理器20通過usb發(fā)送握手關鍵字給第一應用處理器10,以喚醒第二應用處理器20。
需要說明的是,握手關鍵字可用固定字長的字符標識,是正常數(shù)據(jù)包中不會出現(xiàn)的字段。如可用0xf9f9f9或者0x9f9f9f表示握手關鍵字,通過握手關鍵字可喚醒處于睡眠狀態(tài)的第一應用處理器10或第二應用處理器20。
此外,第二調(diào)制解調(diào)器21還可以定期喚醒自己,以在移動終端100進行位置更新時,跟基站進行握手交互,此時不需要喚醒第一應用處理器10。
參照圖3,圖3為本發(fā)明移動終端100和外接設備200通訊連接的實體結(jié)構(gòu)示意圖。移動終端100通過usb與外接設備200通訊連接,其中,移動終端包括但不限于手機、pc(personalcomputer,個人電腦)或pad(personaldigitalassistant,個人數(shù)字助理),外接設備200包括但不限于無線上網(wǎng)卡和數(shù)據(jù)卡。需要說明的是,移動終端100通過usb與外接設備200連接位置并不限于圖3所示,可根據(jù)具體需要來設置移動終端100通過usb與外接設備200的連接位置。
參照圖4,由圖4可知,第一調(diào)制解調(diào)器11包括uim(useridentitymodule)驅(qū)動112、第一sim卡模塊代理113、遠程sim數(shù)據(jù)訪問server114、第一攔截模塊115和第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116(數(shù)據(jù)轉(zhuǎn)發(fā)server1)。第一應用處理器10包括第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011(數(shù)據(jù)轉(zhuǎn)發(fā)client1)和第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。第二調(diào)制解調(diào)器21包括modem非接入層部分212、第二sim卡模塊代理213、遠程sim數(shù)據(jù)訪問client214、第二攔截模塊215和第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216(數(shù)據(jù)轉(zhuǎn)發(fā)server2),第二應用處理器20包括第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021(數(shù)據(jù)轉(zhuǎn)發(fā)client2)。
其中,uim驅(qū)動112存儲了接入網(wǎng)絡必須的數(shù)據(jù),如uimid、鑒權(quán)數(shù)據(jù)aky值、imsi號等。
遠程sim數(shù)據(jù)訪問server114和遠程sim數(shù)據(jù)訪問client214用于實現(xiàn)第一調(diào)制解調(diào)器11和第二調(diào)制解調(diào)器21之間sim卡數(shù)據(jù)的傳輸。
第一攔截模塊115用于截取遠程sim數(shù)據(jù)訪問server114中所需傳輸?shù)膕im卡數(shù)據(jù);第二攔截模塊215用于截取遠程sim數(shù)據(jù)訪問client214中所需傳輸?shù)膕im卡數(shù)據(jù)。通過第一攔截模塊115和第二攔截模塊215實現(xiàn)遠程sim數(shù)據(jù)訪問server114和遠程sim數(shù)據(jù)訪問client214中sim卡數(shù)據(jù)的交互。
第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216和第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021相對應,用于實現(xiàn)第二調(diào)制解調(diào)器21和第二應用處理器20之間的數(shù)據(jù)傳輸;第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116和第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011相對應,用于實現(xiàn)第一調(diào)制解調(diào)器11和第一應用處理器10之間的數(shù)據(jù)傳輸。
第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012和第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022用于通過usb實現(xiàn)第二應用處理器20和第一應用處理器10之間的數(shù)據(jù)傳輸。
基于上述的lte網(wǎng)絡架構(gòu)圖、移動終端100和外接設備200通訊連接的硬件結(jié)構(gòu)示意圖、實體結(jié)構(gòu)示意圖以及現(xiàn)有技術存在的問題,提出本發(fā)明的各個實施例。
需要說明的是,本實施例中的數(shù)據(jù)傳輸方法是以外接設備200為發(fā)送端,移動終端100為接收端為例來說明外接設備200和移動終端100之間的數(shù)據(jù)傳輸過程。在其它實施例中,也可以將移動終端100作為發(fā)送端,外接設備200作為接收端來說明外接設備200和移動終端100之間的數(shù)據(jù)傳輸過程??梢岳斫獾氖?,移動終端100作為發(fā)送端,外接設備200作為接收端與移動終端100作為接收端,外接設備200作為發(fā)送端的數(shù)據(jù)傳輸原理一致,在此不再贅述。
提出本發(fā)明一種數(shù)據(jù)傳輸系統(tǒng)的第一實施例。在本實施例中,數(shù)據(jù)傳輸系統(tǒng)包括移動終端100和外接設備200,移動終端100包括內(nèi)嵌有虛擬用戶識別卡13的第一應用處理器10,以及與實體用戶識別卡14連接的第一調(diào)制解調(diào)器11,第一調(diào)制解調(diào)器11包括第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116,第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116包括第一接收臨時緩沖區(qū),第一應用處理器10包括第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012和與第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116連接的第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011,第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011包括第一發(fā)送臨時緩沖區(qū);外接設備200包括第二應用處理器20和第二調(diào)制解調(diào)器21,第二調(diào)制解調(diào)器21包括第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216包括第二發(fā)送臨時緩沖區(qū),第二應用處理器20包括第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和與第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216連接的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021,第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021包括第二接收臨時緩沖區(qū)。
第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216,用于當偵測到發(fā)送待傳輸數(shù)據(jù)包的數(shù)據(jù)傳輸指令時,根據(jù)數(shù)據(jù)傳輸指令獲取待傳輸數(shù)據(jù)包。
當外接設備200的第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216偵測到數(shù)據(jù)傳輸指令,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216根據(jù)數(shù)據(jù)傳輸指令獲取待傳輸數(shù)據(jù)包。其中,數(shù)據(jù)傳輸指令可為第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216接收到enodeb101的數(shù)據(jù)請求時所觸發(fā)的,或者為需要獲取移動終端100中虛擬用戶識別卡13或?qū)嶓w用戶識別卡14等的數(shù)據(jù)時所觸發(fā)的。因此,待傳輸數(shù)據(jù)包可為獲取數(shù)據(jù)的數(shù)據(jù)請求數(shù)據(jù)包,也可為響應移動終端100數(shù)據(jù)包的響應數(shù)據(jù)包等。
第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216還用于將待傳輸數(shù)據(jù)包緩存至第二發(fā)送臨時緩沖區(qū)中。
第二應用處理器20,用于從第二接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包,將待傳輸數(shù)據(jù)包通過預設接口發(fā)送給第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。
其中,第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值是同步變化的,第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值等于第一默認值與第一增大值之和,且第一默認值與第一增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。
當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216獲取到待傳輸數(shù)據(jù)包時,將待傳輸數(shù)據(jù)包緩存至第二發(fā)送臨時緩沖區(qū)中,以供第二應用處理器20的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021從與第二發(fā)送臨時緩沖區(qū)對應的第二接收臨時緩沖區(qū)獲取待傳輸數(shù)據(jù)包,將待傳輸數(shù)據(jù)包發(fā)送給第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022,由第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)通過預設接口發(fā)送給移動終端100的第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。
在本發(fā)明實施例中,預設接口為usb,在其它實施例中,預設接口可為其它可實現(xiàn)數(shù)據(jù)傳輸?shù)慕涌?。第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值等于第一默認值與第一增大值之和。為了保證第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216和第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021之間的待傳輸數(shù)據(jù)包可以全部成功傳輸,第一默認值與第一增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。如當最大待傳輸數(shù)據(jù)包的大小為124字節(jié)時,第一增大值和第一默認值之和應大于或者等于124字節(jié)??梢岳斫獾氖?,第一默認值為常規(guī)情況下第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216和第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021中臨時緩沖區(qū)的默認容量值,第一增大值為第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216和第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021容量的增大值。
當?shù)诙锰幚砥?0中的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021從第二接收臨時緩沖區(qū)中獲取到待傳輸數(shù)據(jù)包時,將所獲取轉(zhuǎn)發(fā)給第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022。當?shù)诙?shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022接收到待傳輸數(shù)據(jù)包時,通過usb將待傳輸數(shù)據(jù)包發(fā)送給第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。需要說明的是,第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022中包括了第二臨時緩沖區(qū),第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012中包括了第一臨時緩沖區(qū)。在第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012傳輸數(shù)據(jù)之前,先增大第一臨時緩沖區(qū)和第二臨時緩沖區(qū)的容量值。第一臨時緩沖區(qū)和第二臨時緩沖區(qū)容量值增大的幅度為保證第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012之間可以成功傳輸所有的待傳輸數(shù)據(jù)包。第一臨時緩沖區(qū)和第二臨時緩沖區(qū)對應著同一個物理地址,通過該物理地址,可控制第一臨時緩沖區(qū)和第二臨時緩沖區(qū)的狀態(tài)和容量值是同步變化。因此,當?shù)诙?shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022將待傳輸數(shù)據(jù)包緩存至第二臨時緩沖區(qū)時,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012即可在第一臨時緩沖區(qū)中獲取到該待傳輸數(shù)據(jù)包。
在本實施例中,可在第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216首次偵測到數(shù)據(jù)傳輸指令時,調(diào)用與第二發(fā)送臨時緩沖區(qū)對應的驅(qū)動接口,增大第二發(fā)送臨時緩沖區(qū)的容量值。需要說明的是,由于第二接收臨時緩沖區(qū)和第二發(fā)送臨時緩沖區(qū)對應著同一個物理地址,因此當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216增大第二發(fā)送臨時緩沖區(qū)的容量值時,第二接收臨時緩沖區(qū)的容量值也同步增大。在本實施例中,在第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216首次傳輸待傳輸數(shù)據(jù)包時,增大第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值,而第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值增大后,是固定不變的,不會再次改變。
在本發(fā)明實施例中,第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)需要占用外接設備200的內(nèi)存空間,如當?shù)诙l(fā)送臨時緩沖區(qū)的容量值為50字節(jié),外接設備200的內(nèi)存空間為1024字節(jié)時,第二發(fā)送臨時緩沖區(qū)的512字節(jié)需要占用外接設備200內(nèi)存空間中的50字節(jié)。
第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012,用于當接收到第二應用處理器20發(fā)送的待傳輸數(shù)據(jù)包時,獲取待傳輸數(shù)據(jù)包中的類別標識;若根據(jù)類別標識確定待傳輸數(shù)據(jù)包為待轉(zhuǎn)發(fā)數(shù)據(jù)包,則將待傳輸數(shù)據(jù)包轉(zhuǎn)發(fā)給第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011。
第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011,用于將待傳輸數(shù)據(jù)包緩存至第一發(fā)送臨時緩沖區(qū)中。
第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116,用于從第一接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包。
其中,第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值是同步變化的,第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值等于第二默認值與第二增大值之和,且第二默認值與第二增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。
當移動終端100的第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012接收到外接設備200第二應用處理器20發(fā)送的待傳輸數(shù)據(jù)包時,獲取待傳輸數(shù)據(jù)包中的類別標識,根據(jù)所獲取的類別標識確定待傳輸數(shù)據(jù)包的類型。若根據(jù)類別標識確定待傳輸數(shù)據(jù)包為待轉(zhuǎn)發(fā)數(shù)據(jù)包,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012則將待傳輸數(shù)據(jù)包轉(zhuǎn)發(fā)給第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011。當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)客戶端011接收到待傳輸數(shù)據(jù)包時,將待傳輸數(shù)據(jù)包緩存至第一發(fā)送臨時緩沖區(qū)中。當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)客戶端011成功將待傳輸數(shù)據(jù)包緩存至第一發(fā)送臨時緩沖區(qū)中,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216從第二接收臨時緩沖區(qū)中提取待傳輸數(shù)據(jù)包。
第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值等于第二默認值與第二增大值之和,第二默認值與第二增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。具體地,可在第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011首次偵測到數(shù)據(jù)傳輸指令時,調(diào)用與第一發(fā)送臨時緩沖區(qū)對應的驅(qū)動接口,增大第一發(fā)送臨時緩沖區(qū)的容量值。需要說明的是,由于第一接收臨時緩沖區(qū)和第一發(fā)送臨時緩沖區(qū)對應著同一個物理地址,因此第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值是同步變化的,即當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)服務端增大第一發(fā)送臨時緩沖區(qū)的容量值時,第一接收臨時緩沖區(qū)的容量值也同步增大。在本實施例中,第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值增大后,是固定不變的,不會再次改變。
在本發(fā)明實施例中,為了保證第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116和第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011之間的待傳輸數(shù)據(jù)包可以全部成功傳輸,第二增大值和第二默認值之和應大于或者等于第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116和第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011所傳輸?shù)淖畲蟠齻鬏敂?shù)據(jù)包的大小。
進一步地,若根據(jù)類別標識確定待傳輸數(shù)據(jù)包為待處理數(shù)據(jù)包,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012則執(zhí)行與待傳輸數(shù)據(jù)包對應的操作,如顯示外接設備200的信號強度,或者顯示外接設備200的電量等。
進一步地,若第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012所接收的待傳輸數(shù)據(jù)包為待處理數(shù)據(jù)包,且需要從虛擬用戶識別卡13中獲取對應的數(shù)據(jù)響應該待傳輸數(shù)據(jù)包時,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012在虛擬用戶識別卡13中獲取數(shù)據(jù)響應該待傳輸數(shù)據(jù)包。需要說明的是,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012從虛擬用戶識別卡13中獲取對應的數(shù)據(jù)響應該待傳輸數(shù)據(jù)包過程中,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012不會直接與虛擬用戶識別卡13中的存儲模塊交互,而是先向虛擬用戶識別卡13中的虛擬片內(nèi)操作系統(tǒng)發(fā)送數(shù)據(jù)獲取請求,然后虛擬用戶識別卡13中的虛擬片內(nèi)操作系統(tǒng)基于該數(shù)據(jù)獲取請求在存儲模塊中獲取數(shù)據(jù),然后將獲取的數(shù)據(jù)再傳輸給第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。
需要說明的是,類別標識用于區(qū)分待傳輸數(shù)據(jù)包的類型。在本實施例中,待傳輸數(shù)據(jù)包的類型包括兩種,一種是不需要發(fā)送給第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116的,需要第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012進行處理的待處理數(shù)據(jù)包,另一種是需要發(fā)送給第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116待轉(zhuǎn)發(fā)數(shù)據(jù)包。類別標識可根據(jù)具體需要而設置,如當類別標識為00時,表明待傳輸數(shù)據(jù)包為待處理數(shù)據(jù)包;當類別標識為01時,表明待傳輸數(shù)據(jù)包為待轉(zhuǎn)發(fā)數(shù)據(jù)包。
進一步地,當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)服務器116接收到待傳輸數(shù)據(jù)包時,將待傳輸數(shù)據(jù)包通過第一攔截模塊115、遠程sim數(shù)據(jù)訪問server114和第一sim卡模塊代理113發(fā)送給uim驅(qū)動112,uim驅(qū)動112根據(jù)待傳輸數(shù)據(jù)包從實體用戶識別卡14獲取對應的數(shù)據(jù)響應待傳輸數(shù)據(jù)包,得到響應數(shù)據(jù)包,并將響應數(shù)據(jù)包按原路返回給外接設備200。uim驅(qū)動112根據(jù)待傳輸數(shù)據(jù)包從實體用戶識別卡14獲取對應的數(shù)據(jù)響應該待傳輸數(shù)據(jù)包過程中,uim驅(qū)動112不會直接與實體用戶識別卡14中的文件存儲模塊交互,而是先向?qū)嶓w用戶識別卡14中的cos(chipoperatingsystem,片內(nèi)操作系統(tǒng))操作系統(tǒng)發(fā)送數(shù)據(jù)獲取請求,然后實體用戶識別卡14的cos操作系統(tǒng)基于該數(shù)據(jù)獲取請求在文件存儲模塊中獲取數(shù)據(jù),然后將獲取的數(shù)據(jù)再傳輸給uim驅(qū)動112,以實現(xiàn)待傳輸數(shù)據(jù)包的響應。
本實施例通過在外接設備200和移動終端100之間傳輸待傳輸數(shù)據(jù)包過程中,增大外接設備200和外接設備200中各個組件(第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216、第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021、第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022、第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012、第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116和第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011)中臨時緩沖區(qū)的容量值,使各個組件中臨時緩沖區(qū)的容量值大于或者等于待傳輸數(shù)據(jù)包的大小,避免了在外接設備200和移動終端100進行數(shù)據(jù)傳輸過程中,由于所傳輸?shù)臄?shù)據(jù)包過大,導致數(shù)據(jù)包傳輸失敗的情況出現(xiàn)。
進一步地,通過增大各個組件中臨時緩沖區(qū)的容量值,使待傳輸數(shù)據(jù)包的大小小于或者等于臨時緩沖區(qū)的容量值,實現(xiàn)了在移動終端100和外接設備200進行數(shù)據(jù)傳輸過程中,當所傳輸?shù)拇齻鬏敂?shù)據(jù)包的大小大于臨時緩沖區(qū)的默認值時,不需要拆分待傳輸數(shù)據(jù)包,可直接傳輸一個完整的待傳輸數(shù)據(jù)包,提高了待傳輸數(shù)據(jù)包傳輸效率,同時,由于不需要拆分待傳輸數(shù)據(jù)包,因此避免了在拆分待傳輸數(shù)據(jù)包后,所拆分的某一待傳輸數(shù)據(jù)包丟失,或者在待傳輸數(shù)據(jù)包合成過程中,合成失敗的情況出現(xiàn),提高了待傳輸數(shù)據(jù)包傳輸成功率。
進一步地,提出數(shù)據(jù)傳輸系統(tǒng)的第二實施例。數(shù)據(jù)傳輸系統(tǒng)的第二實施例與第一實施例的區(qū)別在于:
第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216還用于計算待傳輸數(shù)據(jù)包的大小,并判斷待傳輸數(shù)據(jù)包的大小是否大于第一默認值;若待傳輸數(shù)據(jù)包的大小大于第一默認值,則計算待傳輸數(shù)據(jù)包的大小和第一默認值之間的差值,根據(jù)差值確定第一增大值。
當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216計算待傳輸數(shù)據(jù)包的大小,并判斷待傳輸數(shù)據(jù)包的大小是否大于第一默認值。若待傳輸數(shù)據(jù)包的大小大于第一默認值,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216則計算待傳輸數(shù)據(jù)包的大小和第一默認值之間的差值,根據(jù)計算所得的差值確定第一增大值。具體地,第一增大值可與計算所得的差值相等,也可大于計算所得的差值,如可將第一增大值的大小設置為大于該差值一個字節(jié)。當確定第一增大值后,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216根據(jù)第一增大值增大第二發(fā)送臨時緩沖區(qū)的容量值,使得第二發(fā)送臨時緩沖區(qū)的容量值等于第一增大值與第一默認值之和。同時,第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021調(diào)用與第二接收臨時緩沖區(qū)對應的驅(qū)動接口,根據(jù)第一增大值增大第二接收臨時緩沖區(qū)的容量值,以使第二接收臨時緩沖區(qū)和第二發(fā)送臨時緩沖區(qū)的容量值同步變化。
進一步地,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216計算待傳輸數(shù)據(jù)包大小的具體過程為:解析待傳輸數(shù)據(jù)包,得到待傳輸數(shù)據(jù)包的包頭,從包頭中獲取待傳輸數(shù)據(jù)包的大小。其中,待傳輸數(shù)據(jù)包為tlv格式,tlv格式是ber(basicencodingrules,基本編碼規(guī)則)編碼的一種,全稱為type(類型),length(長度),value(值),t字段表示待傳輸數(shù)據(jù)包的類型,l字段表示待傳輸數(shù)據(jù)包的長度,即數(shù)據(jù)包的大小,v字段用來存放待傳輸數(shù)據(jù)包的內(nèi)容。
第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216還用于若待傳輸數(shù)據(jù)包的大小小于或者等于第一默認值,將待傳輸數(shù)據(jù)包緩存至容量值為第一默認值的第二發(fā)送臨時緩沖區(qū)中。
第二應用處理器20還用于從容量值為第一默認值的第二接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包,將待傳輸數(shù)據(jù)包通過預設接口發(fā)送給第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。
若待傳輸數(shù)據(jù)包的大小小于或者等于第一默認值,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216則改變第二發(fā)送臨時緩沖區(qū)的容量值,直接將待傳輸數(shù)據(jù)包緩存至容量值為第一默認值的第二發(fā)送臨時緩沖區(qū)中。當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216將待傳輸數(shù)據(jù)包緩存至容量值為第一默認值的第二發(fā)送臨時緩沖區(qū)時,第二應用處理器20的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021從容量值為第一默認值的第二接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包,將所獲取的待傳輸數(shù)據(jù)包轉(zhuǎn)發(fā)給第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022,由第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022通過usb將待傳輸數(shù)據(jù)包發(fā)送給移動終端100的第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。
當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)服務端接收到第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012發(fā)送的待傳輸數(shù)據(jù)包時,第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011可根據(jù)待傳輸數(shù)據(jù)包的大小動態(tài)調(diào)整第一發(fā)送臨時緩沖區(qū)的容量值,第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011根據(jù)待傳輸數(shù)據(jù)包的大小動態(tài)調(diào)整第一發(fā)送臨時緩沖區(qū)的容量值與第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216根據(jù)待傳輸數(shù)據(jù)包的大小動態(tài)調(diào)整第二發(fā)送臨時緩沖區(qū)的容量值過程相類似,在此不再贅述。
進一步地,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216還用于當?shù)诙锰幚砥?0從第二接收臨時緩沖區(qū)中獲取到待傳輸數(shù)據(jù)包時,減小第二發(fā)送臨時緩沖區(qū)的容量值至第一默認值。
當?shù)诙锰幚砥?0中的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021從容量值等于第一默認值和第一增大值之和的第二接收臨時緩沖區(qū)中成功獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216調(diào)用與第二發(fā)送臨時緩沖區(qū)對應的驅(qū)動接口,將第二發(fā)送臨時緩沖區(qū)的容量值減小至第一默認值,即將第二發(fā)送臨時緩沖區(qū)的容量值從等于第一默認值與第一增大值之和減小至第一默認值。在第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216減小第二發(fā)送臨時緩沖區(qū)的容量值至第一默認值過程中,第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021也調(diào)用與第二接收臨時緩沖區(qū)對應的驅(qū)動接口,將第二接收臨時緩沖區(qū)的容量值減小至第一默認值。
需要說明的是,待傳輸數(shù)據(jù)包存在一個結(jié)束標識,通過該結(jié)束標識可以確定待傳輸數(shù)據(jù)包是否被成功讀取。當?shù)诙邮张R時緩沖區(qū)中待傳輸數(shù)據(jù)包的結(jié)束標識被讀取后,表明第二數(shù)據(jù)轉(zhuǎn)發(fā)服務端已成功獲取到待傳輸數(shù)據(jù)包。由于第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)對應著同一個物理地址,因此第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216可根據(jù)結(jié)束標識被讀取的情況確定第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021是否成功從第二接收臨時緩沖區(qū)中獲取到待傳輸數(shù)據(jù)包,從而決定是否執(zhí)行減小第二發(fā)送臨時緩沖區(qū)的容量值至第一默認值的操作。
可以理解的是,若第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216和第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021之間動態(tài)調(diào)整第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值,第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012之間可以采用動態(tài)調(diào)整,或者采用一次性調(diào)整第二臨時緩沖區(qū)和第一臨時緩沖區(qū)的容量值,第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116和第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011之間可采用動態(tài)調(diào)整,或者采用一次性調(diào)整第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值。由此可知,外接設備200和移動終端100在進行數(shù)據(jù)傳輸過程中,各個臨時緩沖區(qū)對之間容量值調(diào)整方案可一致,也可不一致。在本發(fā)明實施例中,有三對臨時緩沖區(qū)對,分別為第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)、第二臨時緩沖區(qū)和第一臨時緩沖區(qū)、以及第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)。
各個臨時緩沖區(qū)對對應的默認值可能相等,也可能不相等。可以理解的是,當各個臨時緩沖區(qū)對對應的默認值相等時,對應的增大值也相等;當各個臨時緩沖區(qū)對對應的默認值不相等時,對應的增大值也不相等。因此,若三個臨時緩沖區(qū)對都采用動態(tài)調(diào)整容量值的方案,可能會出現(xiàn)其中一個或者兩個臨時緩沖區(qū)對需要調(diào)整容量值,而剩下的臨時緩沖區(qū)對不需要調(diào)整容量值的情況。
在本實施例中,第二臨時緩沖區(qū)和第二發(fā)送臨時緩沖區(qū)的默認值可能相等,也可能不相等,因此,在本實施例中,在第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022通過usb將待傳輸數(shù)據(jù)包發(fā)送給第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012過程中,第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022需要再次根據(jù)待傳輸數(shù)據(jù)包的大小與第二臨時緩沖區(qū)容量值之間的大小關系確定是否增大第二臨時緩沖區(qū)的容量值。第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022增大第二臨時緩沖區(qū)的容量值過程與第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216增大第二發(fā)送臨時緩沖區(qū)的過程相類似,在此不再贅述。
本實施例通過根據(jù)待傳輸數(shù)據(jù)包的大小動態(tài)調(diào)整各個組件中臨時緩沖區(qū)的容量值,保證在外接設備200和移動終端100之間傳輸待傳輸數(shù)據(jù)包過程中,不需要對待傳輸數(shù)據(jù)包進行拆分的額外操作,并確保了第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012和第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022之間數(shù)據(jù)通道透傳的本質(zhì),避免了數(shù)據(jù)傳輸過程中二次拆分重組帶來數(shù)據(jù)損傷,同時避免了各個組件中臨時緩沖區(qū)的容量值一直處于增大狀態(tài),從而導致緩存空間浪費的問題。
進一步地,提出數(shù)據(jù)傳輸系統(tǒng)的第三實施例。數(shù)據(jù)傳輸系統(tǒng)的第三實施例與第一實施例的區(qū)別在于:
第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216還用于當?shù)诙锰幚砥?0從第二接收臨時緩沖區(qū)獲取到待傳輸數(shù)據(jù)包時,刪除第二發(fā)送臨時緩沖區(qū)中緩存的待傳輸數(shù)據(jù)包。
當?shù)诙锰幚砥?0從第二接收臨時緩沖區(qū)中成功獲取到待傳輸數(shù)據(jù)包時,即第二應用處理器20中的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021從第二接收臨時緩沖區(qū)中成功獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216觸發(fā)刪除指令,根據(jù)刪除指令刪除第二發(fā)送臨時緩沖區(qū)中的待傳輸數(shù)據(jù)包,以節(jié)省第二發(fā)送臨時緩沖區(qū)的緩存空間??梢岳斫獾氖?,由于第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)對應著同一個物理地址,因此,當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216刪除第二發(fā)送臨時緩沖區(qū)中的待傳輸數(shù)據(jù)包時,第二接收臨時緩沖區(qū)中的待傳輸數(shù)據(jù)包也會被刪除。
需要說明的是,當?shù)谝粩?shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012從第一臨時緩沖區(qū)中成功獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022會刪除第二臨時緩沖區(qū)中緩存的待傳輸數(shù)據(jù)包。第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022會刪除第二臨時緩沖區(qū)中緩存的待傳輸數(shù)據(jù)包與第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216刪除第二發(fā)送臨時緩沖區(qū)緩存的待傳輸數(shù)據(jù)包過程相類似,在此不再贅述。
進一步地,在第二調(diào)制解調(diào)器21和第二應用處理器20傳輸數(shù)據(jù)之前,第二應用處理器20需要進行初始化。第二應用處理器20初始化的具體過程為:當?shù)诙锰幚砥?0從休眠狀態(tài)進入喚醒狀態(tài)時,第二應用處理器20的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021向?qū)牡诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216發(fā)送請求消息,以請求第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216為第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021分配一個用戶標識。需要說明的是,在外接設備200和移動終端100中,調(diào)制解調(diào)器的一個服務器對應著應用處理器的多個客戶端。當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216接收到第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021發(fā)送的請求消息后,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216根據(jù)該請求消息發(fā)送用戶標識給第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021。當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)客戶端021成功接收到該用戶標識時,第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021發(fā)送測試數(shù)據(jù)包給第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216,其中,該測試數(shù)據(jù)包中攜帶有用戶標識。當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216成功接收到測試數(shù)據(jù)包時,按照原路返回通知消息給第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021。當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)客戶端021成功接收到通知消息時,表明第二應用處理器20初始化成功。當?shù)诙锰幚砥?0初始化成功后,將第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021和第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216中的標識字段的標識設置為特定標識,以表明第二應用處理器20初始化成功。
本發(fā)明還提供一種應用于外接設備200的數(shù)據(jù)傳輸方法。
參照圖5,圖5為本發(fā)明中應用于外接設備200的數(shù)據(jù)傳輸方法較佳實施例的流程示意圖。
本實施例提出一種數(shù)據(jù)傳輸方法,在本實施例中,提供了數(shù)據(jù)傳輸方法的實施例,需要說明的是,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
需要說明的是,本實施例中的數(shù)據(jù)傳輸方法是以外接設備200為發(fā)送端,移動終端100為接收端為例來說明外接設備200和移動終端100之間的數(shù)據(jù)傳輸過程。在其它實施例中,也可以將移動終端100作為發(fā)送端,外接設備200作為接收端來說明外接設備200和移動終端100之間的數(shù)據(jù)傳輸過程??梢岳斫獾氖?,移動終端100作為發(fā)送端,外接設備200作為接收端與移動終端100作為接收端,外接設備200作為發(fā)送端的數(shù)據(jù)傳輸原理一致,在此不再贅述。
數(shù)據(jù)傳輸方法應用于通過預設接口與移動終端100連接的外接設備200中,外接設備200包括第二應用處理器20和第二調(diào)制解調(diào)器21,第二調(diào)制解調(diào)器21包括第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216包括第二發(fā)送臨時緩沖區(qū),第二應用處理器20包括第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和與第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216連接的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021,第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021包括第二接收臨時緩沖區(qū)。移動終端100包括內(nèi)嵌有虛擬用戶識別卡13的第一應用處理器10,以及與實體用戶識別卡14連接的第一調(diào)制解調(diào)器11,第一調(diào)制解調(diào)器11包括第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116,第一應用處理器10包括第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012和與第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116連接的第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011。數(shù)據(jù)傳輸方法包括:
步驟s10,當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216偵測到發(fā)送待傳輸數(shù)據(jù)包的數(shù)據(jù)傳輸指令時,根據(jù)數(shù)據(jù)傳輸指令獲取待傳輸數(shù)據(jù)包。
當外接設備200的第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216偵測到數(shù)據(jù)傳輸指令,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216根據(jù)數(shù)據(jù)傳輸指令獲取待傳輸數(shù)據(jù)包。其中,數(shù)據(jù)傳輸指令可為第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216接收到enodeb101的數(shù)據(jù)請求時所觸發(fā)的,或者為需要獲取移動終端100中虛擬用戶識別卡13或?qū)嶓w用戶識別卡14等的數(shù)據(jù)時所觸發(fā)的。因此,待傳輸數(shù)據(jù)包可為獲取數(shù)據(jù)的數(shù)據(jù)請求數(shù)據(jù)包,也可為響應移動終端100數(shù)據(jù)包的響應數(shù)據(jù)包等。
步驟s20,將待傳輸數(shù)據(jù)包緩存至第二發(fā)送臨時緩沖區(qū)中,以供第二應用處理器20從與第二發(fā)送臨時緩沖區(qū)對應的第二接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包,將待傳輸數(shù)據(jù)包通過預設接口發(fā)送給移動終端100;
其中,第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值是同步變化的,第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值等于第一默認值與第一增大值之和,且第一默認值與第一增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。
當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216獲取到待傳輸數(shù)據(jù)包時,將待傳輸數(shù)據(jù)包緩存至第二發(fā)送臨時緩沖區(qū)中,以供第二應用處理器20的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021從與第二發(fā)送臨時緩沖區(qū)對應的第二接收臨時緩沖區(qū)獲取待傳輸數(shù)據(jù)包,將待傳輸數(shù)據(jù)包發(fā)送給第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022,由第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)通過預設接口發(fā)送給移動終端100的第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。
在本發(fā)明實施例中,預設接口為usb,在其它實施例中,預設接口可為其它可實現(xiàn)數(shù)據(jù)傳輸?shù)慕涌?。第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值等于第一默認值與第一增大值之和。為了保證第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216和第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021之間的待傳輸數(shù)據(jù)包可以全部成功傳輸,第一默認值與第一增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。如當最大待傳輸數(shù)據(jù)包的大小為124字節(jié)時,第一增大值和第一默認值之和應大于或者等于124字節(jié)??梢岳斫獾氖?,第一默認值為常規(guī)情況下第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216和第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021中臨時緩沖區(qū)的默認容量值,第一增大值為第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216和第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021容量的增大值。
當?shù)诙锰幚砥?0中的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021從第二接收臨時緩沖區(qū)中獲取到待傳輸數(shù)據(jù)包時,將所獲取轉(zhuǎn)發(fā)給第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022。當?shù)诙?shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022接收到待傳輸數(shù)據(jù)包時,通過usb將待傳輸數(shù)據(jù)包發(fā)送給第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。需要說明的是,第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022中包括了第二臨時緩沖區(qū),第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012中包括了第一臨時緩沖區(qū)。在第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012傳輸數(shù)據(jù)之前,先增大第一臨時緩沖區(qū)和第二臨時緩沖區(qū)的容量值。第一臨時緩沖區(qū)和第二臨時緩沖區(qū)容量值增大的幅度為保證第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012之間可以成功傳輸所有的待傳輸數(shù)據(jù)包。第一臨時緩沖區(qū)和第二臨時緩沖區(qū)對應著同一個物理地址,通過該物理地址,可控制第一臨時緩沖區(qū)和第二臨時緩沖區(qū)的狀態(tài)和容量值是同步變化。因此,當?shù)诙?shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022將待傳輸數(shù)據(jù)包緩存至第二臨時緩沖區(qū)時,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012即可在第一臨時緩沖區(qū)中獲取到該待傳輸數(shù)據(jù)包。
在本實施例中,可在第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216首次偵測到數(shù)據(jù)傳輸指令時,調(diào)用與第二發(fā)送臨時緩沖區(qū)對應的驅(qū)動接口,增大第二發(fā)送臨時緩沖區(qū)的容量值。需要說明的是,由于第二接收臨時緩沖區(qū)和第二發(fā)送臨時緩沖區(qū)對應著同一個物理地址,因此當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216增大第二發(fā)送臨時緩沖區(qū)的容量值時,第二接收臨時緩沖區(qū)的容量值也同步增大。在本實施例中,在第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216首次傳輸待傳輸數(shù)據(jù)包時,增大第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值,而第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值增大后,是固定不變的,不會再次改變。
在本發(fā)明實施例中,第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)需要占用外接設備200的內(nèi)存空間,如當?shù)诙l(fā)送臨時緩沖區(qū)的容量值為50字節(jié),外接設備200的內(nèi)存空間為1024字節(jié)時,第二發(fā)送臨時緩沖區(qū)的512字節(jié)需要占用外接設備200內(nèi)存空間中的50字節(jié)。
本實施例通過當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216偵測到發(fā)送待傳輸數(shù)據(jù)包的數(shù)據(jù)傳輸指令時,根據(jù)數(shù)據(jù)傳輸指令獲取待傳輸數(shù)據(jù)包;將待傳輸數(shù)據(jù)包緩存至第二發(fā)送臨時緩沖區(qū)中,以供第二應用處理器20從與第二發(fā)送臨時緩沖區(qū)對應的第二接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包,將待傳輸數(shù)據(jù)包通過預設接口發(fā)送給移動終端100;其中,第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值是同步變化的,第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值等于第一默認值與第一增大值之和,且第一默認值與第一增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。通過增大各個組件(第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216、第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021、第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012)中臨時緩沖區(qū)的容量值,避免了在外接設備200和移動終端100進行數(shù)據(jù)傳輸過程中,由于所傳輸?shù)臄?shù)據(jù)包過大,導致數(shù)據(jù)包傳輸失敗的情況出現(xiàn)。
進一步地,通過增大各個組件中臨時緩沖區(qū)的容量值,使待傳輸數(shù)據(jù)包的大小小于或者等于臨時緩沖區(qū)的容量值,實現(xiàn)了在移動終端100和外接設備200進行數(shù)據(jù)傳輸過程中,當所傳輸?shù)拇齻鬏敂?shù)據(jù)包的大小大于臨時緩沖區(qū)的默認值時,不需要拆分待傳輸數(shù)據(jù)包,可直接傳輸一個完整的待傳輸數(shù)據(jù)包,提高了待傳輸數(shù)據(jù)包傳輸效率,同時,由于不需要拆分待傳輸數(shù)據(jù)包,因此避免了在拆分待傳輸數(shù)據(jù)包后,所拆分的某一待傳輸數(shù)據(jù)包丟失,或者在待傳輸數(shù)據(jù)包合成過程中,合成失敗的情況出現(xiàn),提高了待傳輸數(shù)據(jù)包傳輸成功率。
進一步地,提出本發(fā)明應用于外接設備200的數(shù)據(jù)傳輸方法第二實施例。
應用于外接設備200的數(shù)據(jù)傳輸方法第二實施例與第一實施例的區(qū)別在于,參照圖6,應用于外接設備200的數(shù)據(jù)傳輸方法還包括:
步驟s30,計算待傳輸數(shù)據(jù)包的大小,并判斷待傳輸數(shù)據(jù)包的大小是否大于第一默認值。
步驟s40,若待傳輸數(shù)據(jù)包的大小大于第一默認值,則計算待傳輸數(shù)據(jù)包的大小和第一默認值之間的差值,根據(jù)差值確定第一增大值。
當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216計算待傳輸數(shù)據(jù)包的大小,并判斷待傳輸數(shù)據(jù)包的大小是否大于第一默認值。若待傳輸數(shù)據(jù)包的大小大于第一默認值,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216則計算待傳輸數(shù)據(jù)包的大小和第一默認值之間的差值,根據(jù)計算所得的差值確定第一增大值。具體地,第一增大值可與計算所得的差值相等,也可大于計算所得的差值,如可將第一增大值的大小設置為大于該差值一個字節(jié)。當確定第一增大值后,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216根據(jù)第一增大值增大第二發(fā)送臨時緩沖區(qū)的容量值,使得第二發(fā)送臨時緩沖區(qū)的容量值等于第一增大值與第一默認值之和。同時,第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021調(diào)用與第二接收臨時緩沖區(qū)對應的驅(qū)動接口,根據(jù)第一增大值增大第二接收臨時緩沖區(qū)的容量值,以使第二接收臨時緩沖區(qū)和第二發(fā)送臨時緩沖區(qū)的容量值同步變化。
進一步地,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216計算待傳輸數(shù)據(jù)包大小的具體過程為:解析待傳輸數(shù)據(jù)包,得到待傳輸數(shù)據(jù)包的包頭,從包頭中獲取待傳輸數(shù)據(jù)包的大小。其中,待傳輸數(shù)據(jù)包為tlv格式,tlv格式是ber(basicencodingrules,基本編碼規(guī)則)編碼的一種,全稱為type(類型),length(長度),value(值),t字段表示待傳輸數(shù)據(jù)包的類型,l字段表示待傳輸數(shù)據(jù)包的長度,即數(shù)據(jù)包的大小,v字段用來存放待傳輸數(shù)據(jù)包的內(nèi)容。
步驟s50,若待傳輸數(shù)據(jù)包的大小小于或者等于第一默認值,將待傳輸數(shù)據(jù)包緩存至容量值為第一默認值的第二發(fā)送臨時緩沖區(qū)中,以供第二應用處理器20從容量值為第一默認值的第二接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包,將待傳輸數(shù)據(jù)包通過預設接口發(fā)送給移動終端100。
若待傳輸數(shù)據(jù)包的大小小于或者等于第一默認值,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216則改變第二發(fā)送臨時緩沖區(qū)的容量值,直接將待傳輸數(shù)據(jù)包緩存至容量值為第一默認值的第二發(fā)送臨時緩沖區(qū)中。當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216將待傳輸數(shù)據(jù)包緩存至容量值為第一默認值的第二發(fā)送臨時緩沖區(qū)時,第二應用處理器20的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021從容量值為第一默認值的第二接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包,將所獲取的待傳輸數(shù)據(jù)包轉(zhuǎn)發(fā)給第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022,由第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022通過usb將待傳輸數(shù)據(jù)包發(fā)送給移動終端100的第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。
進一步地,應用于外接設備200的數(shù)據(jù)傳輸方法還包括:
步驟a,當?shù)诙锰幚砥?0從第二接收臨時緩沖區(qū)中獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216減小第二發(fā)送臨時緩沖區(qū)的容量值至第一默認值。
當?shù)诙锰幚砥?0中的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021從容量值等于第一默認值和第一增大值之和的第二接收臨時緩沖區(qū)中成功獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216調(diào)用與第二發(fā)送臨時緩沖區(qū)對應的驅(qū)動接口,將第二發(fā)送臨時緩沖區(qū)的容量值減小至第一默認值,即將第二發(fā)送臨時緩沖區(qū)的容量值從等于第一默認值與第一增大值之和減小至第一默認值。在第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216減小第二發(fā)送臨時緩沖區(qū)的容量值至第一默認值過程中,第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021也調(diào)用與第二接收臨時緩沖區(qū)對應的驅(qū)動接口,將第二接收臨時緩沖區(qū)的容量值減小至第一默認值。
需要說明的是,待傳輸數(shù)據(jù)包存在一個結(jié)束標識,通過該結(jié)束標識可以確定待傳輸數(shù)據(jù)包是否被成功讀取。當?shù)诙邮张R時緩沖區(qū)中待傳輸數(shù)據(jù)包的結(jié)束標識被讀取后,表明第二數(shù)據(jù)轉(zhuǎn)發(fā)服務端已成功獲取到待傳輸數(shù)據(jù)包。由于第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)對應著同一個物理地址,因此第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216可根據(jù)結(jié)束標識被讀取的情況確定第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021是否成功從第二接收臨時緩沖區(qū)中獲取到待傳輸數(shù)據(jù)包,從而決定是否執(zhí)行減小第二發(fā)送臨時緩沖區(qū)的容量值至第一默認值的操作。
在本實施例中,第二臨時緩沖區(qū)和第二發(fā)送臨時緩沖區(qū)的默認值可能相等,也可能不相等,因此,在本實施例中,在第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022通過usb將待傳輸數(shù)據(jù)包發(fā)送給第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012過程中,第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022需要再次根據(jù)待傳輸數(shù)據(jù)包的大小與第二臨時緩沖區(qū)容量值之間的大小關系確定是否增大第二臨時緩沖區(qū)的容量值。第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022增大第二臨時緩沖區(qū)的容量值過程與第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216增大第二發(fā)送臨時緩沖區(qū)的過程相類似,在此不再贅述。
本實施例通過根據(jù)待傳輸數(shù)據(jù)包的大小動態(tài)調(diào)整各個組件中臨時緩沖區(qū)的容量值,保證在外接設備200和移動終端100之間傳輸待傳輸數(shù)據(jù)包過程中,不需要對待傳輸數(shù)據(jù)包進行拆分的額外操作,并確保了第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012和第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022之間數(shù)據(jù)通道透傳的本質(zhì),避免了數(shù)據(jù)傳輸過程中二次拆分重組帶來數(shù)據(jù)損傷,同時避免了各個組件中臨時緩沖區(qū)的容量值一直處于增大狀態(tài),從而導致緩存空間浪費的問題。
進一步地,提出本發(fā)明應用于外接設備200的數(shù)據(jù)傳輸方法第三實施例。
應用于外接設備200的數(shù)據(jù)傳輸方法第三實施例與第一實施例的區(qū)別在于,參照圖7,應用于外接設備200的數(shù)據(jù)傳輸方法還包括:
步驟s60,當?shù)诙锰幚砥?0從第二接收臨時緩沖區(qū)獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216刪除第二發(fā)送臨時緩沖區(qū)中緩存的待傳輸數(shù)據(jù)包。
當?shù)诙锰幚砥?0從第二接收臨時緩沖區(qū)中成功獲取到待傳輸數(shù)據(jù)包時,即第二應用處理器20中的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021從第二接收臨時緩沖區(qū)中成功獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216觸發(fā)刪除指令,根據(jù)刪除指令刪除第二發(fā)送臨時緩沖區(qū)中的待傳輸數(shù)據(jù)包,以節(jié)省第二發(fā)送臨時緩沖區(qū)的緩存空間??梢岳斫獾氖?,由于第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)對應著同一個物理地址,因此,當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216刪除第二發(fā)送臨時緩沖區(qū)中的待傳輸數(shù)據(jù)包時,第二接收臨時緩沖區(qū)中的待傳輸數(shù)據(jù)包也會被刪除。
需要說明的是,當?shù)谝粩?shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012從第一臨時緩沖區(qū)中成功獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022會刪除第二臨時緩沖區(qū)中緩存的待傳輸數(shù)據(jù)包。第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022會刪除第二臨時緩沖區(qū)中緩存的待傳輸數(shù)據(jù)包與第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216刪除第二發(fā)送臨時緩沖區(qū)緩存的待傳輸數(shù)據(jù)包過程相類似,在此不再贅述。
進一步地,在第二調(diào)制解調(diào)器21和第二應用處理器20傳輸數(shù)據(jù)之前,第二應用處理器20需要進行初始化。第二應用處理器20初始化的具體過程為:當?shù)诙锰幚砥?0從休眠狀態(tài)進入喚醒狀態(tài)時,第二應用處理器20的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021向?qū)牡诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216發(fā)送請求消息,以請求第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216為第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021分配一個用戶標識。需要說明的是,在外接設備200和移動終端100中,調(diào)制解調(diào)器的一個服務器對應著應用處理器的多個客戶端。當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216接收到第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021發(fā)送的請求消息后,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216根據(jù)該請求消息發(fā)送用戶標識給第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021。當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)客戶端021成功接收到該用戶標識時,第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021發(fā)送測試數(shù)據(jù)包給第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216,其中,該測試數(shù)據(jù)包中攜帶有用戶標識。當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216成功接收到測試數(shù)據(jù)包時,按照原路返回通知消息給第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021。當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)客戶端021成功接收到通知消息時,表明第二應用處理器20初始化成功。當?shù)诙锰幚砥?0初始化成功后,將第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021和第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216中的標識字段的標識設置為特定標識,以表明第二應用處理器20初始化成功。
本發(fā)明還提供一種應用于移動終端100的數(shù)據(jù)傳輸方法。
參照圖8,圖8為本發(fā)明應用于移動終端100的數(shù)據(jù)傳輸方法較佳實施例的流程示意圖。
在本實施例中,提供了數(shù)據(jù)傳輸方法的實施例,需要說明的是,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
數(shù)據(jù)傳輸方法應用于通過usb與外接設備200連接的移動終端100中,移動終端100包括內(nèi)嵌有虛擬用戶識別卡13的第一應用處理器10,以及與實體用戶識別卡14連接的第一調(diào)制解調(diào)器11,第一調(diào)制解調(diào)器11包括第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116,第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116包括第一接收臨時緩沖區(qū),第一應用處理器10包括第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012和與第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116連接的第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011。外接設備200包括第二應用處理器20和第二調(diào)制解調(diào)器21,第二調(diào)制解調(diào)器21包括第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216,第二應用處理器20包括第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和與第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216連接的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021,第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011包括第一發(fā)送臨時緩沖區(qū)。數(shù)據(jù)傳輸方法包括:
步驟s110,當?shù)谝粩?shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012接收到外接設備200第二應用處理器20發(fā)送的待傳輸數(shù)據(jù)包時,獲取待傳輸數(shù)據(jù)包中的類別標識。
步驟s120,若根據(jù)類別標識確定待傳輸數(shù)據(jù)包為待轉(zhuǎn)發(fā)數(shù)據(jù)包,則將待傳輸數(shù)據(jù)包轉(zhuǎn)發(fā)給第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011,以供第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011將待傳輸數(shù)據(jù)包緩存至第一發(fā)送臨時緩沖區(qū)中,由第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116從第一接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包;
其中,第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值是同步變化的,第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值等于第二默認值與第二增大值之和,且第二默認值與第二增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。
當移動終端100的第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012接收到外接設備200第二應用處理器20發(fā)送的待傳輸數(shù)據(jù)包時,獲取待傳輸數(shù)據(jù)包中的類別標識,根據(jù)所獲取的類別標識確定待傳輸數(shù)據(jù)包的類型。若根據(jù)類別標識確定待傳輸數(shù)據(jù)包為待轉(zhuǎn)發(fā)數(shù)據(jù)包,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012則將待傳輸數(shù)據(jù)包轉(zhuǎn)發(fā)給第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011。當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)客戶端011接收到待傳輸數(shù)據(jù)包時,將待傳輸數(shù)據(jù)包緩存至第一發(fā)送臨時緩沖區(qū)中。當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)客戶端011成功將待傳輸數(shù)據(jù)包緩存至第一發(fā)送臨時緩沖區(qū)中,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216從第二接收臨時緩沖區(qū)中提取待傳輸數(shù)據(jù)包。
第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值等于第二默認值與第二增大值之和,第二默認值與第二增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。具體地,可在第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011首次偵測到數(shù)據(jù)傳輸指令時,調(diào)用與第一發(fā)送臨時緩沖區(qū)對應的驅(qū)動接口,增大第一發(fā)送臨時緩沖區(qū)的容量值。需要說明的是,由于第一接收臨時緩沖區(qū)和第一發(fā)送臨時緩沖區(qū)對應著同一個物理地址,因此第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值是同步變化的,即當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)服務端增大第一發(fā)送臨時緩沖區(qū)的容量值時,第一接收臨時緩沖區(qū)的容量值也同步增大。在本實施例中,第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值增大后,是固定不變的,不會再次改變。
在本發(fā)明實施例中,為了保證第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116和第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011之間的待傳輸數(shù)據(jù)包可以全部成功傳輸,第二增大值和第二默認值之和應大于或者等于第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116和第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011所傳輸?shù)淖畲蟠齻鬏敂?shù)據(jù)包的大小。
進一步地,若根據(jù)類別標識確定待傳輸數(shù)據(jù)包為待處理數(shù)據(jù)包,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012則執(zhí)行與待傳輸數(shù)據(jù)包對應的操作,如顯示外接設備200的信號強度,或者顯示外接設備200的電量等。
進一步地,若第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012所接收的待傳輸數(shù)據(jù)包為待處理數(shù)據(jù)包,且需要從虛擬用戶識別卡13中獲取對應的數(shù)據(jù)響應該待傳輸數(shù)據(jù)包時,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012在虛擬用戶識別卡13中獲取數(shù)據(jù)響應該待傳輸數(shù)據(jù)包。需要說明的是,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012從虛擬用戶識別卡13中獲取對應的數(shù)據(jù)響應該待傳輸數(shù)據(jù)包過程中,第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012不會直接與虛擬用戶識別卡13中的存儲模塊交互,而是先向虛擬用戶識別卡13中的虛擬片內(nèi)操作系統(tǒng)發(fā)送數(shù)據(jù)獲取請求,然后虛擬用戶識別卡13中的虛擬片內(nèi)操作系統(tǒng)基于該數(shù)據(jù)獲取請求在存儲模塊中獲取數(shù)據(jù),然后將獲取的數(shù)據(jù)再傳輸給第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012。
需要說明的是,類別標識用于區(qū)分待傳輸數(shù)據(jù)包的類型。在本實施例中,待傳輸數(shù)據(jù)包的類型包括兩種,一種是不需要發(fā)送給第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116的,需要第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012進行處理的待處理數(shù)據(jù)包,另一種是需要發(fā)送給第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116待轉(zhuǎn)發(fā)數(shù)據(jù)包。類別標識可根據(jù)具體需要而設置,如當類別標識為00時,表明待傳輸數(shù)據(jù)包為待處理數(shù)據(jù)包;當類別標識為01時,表明待傳輸數(shù)據(jù)包為待轉(zhuǎn)發(fā)數(shù)據(jù)包。
進一步地,當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)服務器116接收到待傳輸數(shù)據(jù)包時,將待傳輸數(shù)據(jù)包通過第一攔截模塊115、遠程sim數(shù)據(jù)訪問server114和第一sim卡模塊代理113發(fā)送給uim驅(qū)動112,uim驅(qū)動112根據(jù)待傳輸數(shù)據(jù)包從實體用戶識別卡14獲取對應的數(shù)據(jù)響應待傳輸數(shù)據(jù)包,得到響應數(shù)據(jù)包,并將響應數(shù)據(jù)包按原路返回給外接設備200。uim驅(qū)動112根據(jù)待傳輸數(shù)據(jù)包從實體用戶識別卡14獲取對應的數(shù)據(jù)響應該待傳輸數(shù)據(jù)包過程中,uim驅(qū)動112不會直接與實體用戶識別卡14中的文件存儲模塊交互,而是先向?qū)嶓w用戶識別卡14中的cos(chipoperatingsystem,片內(nèi)操作系統(tǒng))操作系統(tǒng)發(fā)送數(shù)據(jù)獲取請求,然后實體用戶識別卡14的cos操作系統(tǒng)基于該數(shù)據(jù)獲取請求在文件存儲模塊中獲取數(shù)據(jù),然后將獲取的數(shù)據(jù)再傳輸給uim驅(qū)動112,以實現(xiàn)待傳輸數(shù)據(jù)包的響應。
本實施例當移動終端100接收到外接設備200發(fā)送的待傳輸數(shù)據(jù)包過程中,通過增大容量值后的臨時緩沖區(qū)完成待傳輸數(shù)據(jù)包在第一應用處理器10和第一調(diào)制解調(diào)器11之間的數(shù)據(jù)傳輸,使第一調(diào)制解調(diào)器11成功接收外接設備200發(fā)送的完整的待傳輸數(shù)據(jù)包,使外接設備200和移動終端100成功傳輸大數(shù)據(jù)包。
進一步地,當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)服務端接收到第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012發(fā)送的待傳輸數(shù)據(jù)包時,第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011可根據(jù)待傳輸數(shù)據(jù)包的大小動態(tài)調(diào)整第一發(fā)送臨時緩沖區(qū)的容量值,第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011根據(jù)待傳輸數(shù)據(jù)包的大小動態(tài)調(diào)整第一發(fā)送臨時緩沖區(qū)的容量值與第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216根據(jù)待傳輸數(shù)據(jù)包的大小動態(tài)調(diào)整第二發(fā)送臨時緩沖區(qū)的容量值過程相類似,在此不再贅述。
可以理解的是,若第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216和第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021之間動態(tài)調(diào)整第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值,第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012之間可以采用動態(tài)調(diào)整,或者采用一次性調(diào)整第二臨時緩沖區(qū)和第一臨時緩沖區(qū)的容量值,第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116和第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011之間可采用動態(tài)調(diào)整,或者采用一次性調(diào)整第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值。由此可知,外接設備200和移動終端100在進行數(shù)據(jù)傳輸過程中,各個臨時緩沖區(qū)對之間容量值調(diào)整方案可一致,也可不一致。在本發(fā)明實施例中,有三對臨時緩沖區(qū)對,分別為第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)、第二臨時緩沖區(qū)和第一臨時緩沖區(qū)、以及第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)。
各個臨時緩沖區(qū)對對應的默認值可能相等,也可能不相等??梢岳斫獾氖?,當各個臨時緩沖區(qū)對對應的默認值相等時,對應的增大值也相等;當各個臨時緩沖區(qū)對對應的默認值不相等時,對應的增大值也不相等。因此,若三個臨時緩沖區(qū)對都采用動態(tài)調(diào)整容量值的方案,可能會出現(xiàn)其中一個或者兩個臨時緩沖區(qū)對需要調(diào)整容量值,而剩下的臨時緩沖區(qū)對不需要調(diào)整容量值的情況。
進一步地,本發(fā)明還提供一種外接設備200,外接設備200包括第二應用處理器20和第二調(diào)制解調(diào)器21,第二調(diào)制解調(diào)器21包括第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216包括第二發(fā)送臨時緩沖區(qū),第二應用處理器20包括第二數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊022和與第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216連接的第二數(shù)據(jù)轉(zhuǎn)發(fā)客戶端021。外接設備200應用于數(shù)據(jù)傳輸方法,數(shù)據(jù)傳輸方法包括:
當?shù)诙?shù)據(jù)轉(zhuǎn)發(fā)服務器216偵測到發(fā)送待傳輸數(shù)據(jù)包的數(shù)據(jù)傳輸指令時,根據(jù)數(shù)據(jù)傳輸指令獲取待傳輸數(shù)據(jù)包;
將待傳輸數(shù)據(jù)包緩存至第二發(fā)送臨時緩沖區(qū)中,以供第二應用處理器20從與第二發(fā)送臨時緩沖區(qū)對應的第二接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包,將待傳輸數(shù)據(jù)包通過預設接口發(fā)送給移動終端100;
其中,第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值是同步變化的,第二發(fā)送臨時緩沖區(qū)和第二接收臨時緩沖區(qū)的容量值等于第一默認值與第一增大值之和,且第一默認值與第一增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。
進一步地,將待傳輸數(shù)據(jù)包緩存至第二發(fā)送臨時緩沖區(qū)中的步驟之前,還包括:
計算待傳輸數(shù)據(jù)包的大小,并判斷待傳輸數(shù)據(jù)包的大小是否大于第一默認值;
若待傳輸數(shù)據(jù)包的大小大于第一默認值,則計算待傳輸數(shù)據(jù)包的大小和第一默認值之間的差值,根據(jù)差值確定第一增大值;
若待傳輸數(shù)據(jù)包的大小小于或者等于第一默認值,將待傳輸數(shù)據(jù)包緩存至容量值為第一默認值的第二發(fā)送臨時緩沖區(qū)中,以供第二應用處理器20從容量值為第一默認值的第二接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包,將待傳輸數(shù)據(jù)包通過預設接口發(fā)送給移動終端100。
進一步地,將待傳輸數(shù)據(jù)包緩存至第二發(fā)送臨時緩沖區(qū)中的步驟之后,還包括:
當?shù)诙锰幚砥?0從第二接收臨時緩沖區(qū)中獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216減小第二發(fā)送臨時緩沖區(qū)的容量值至第一默認值。
進一步地,將待傳輸數(shù)據(jù)包緩存至第二發(fā)送臨時緩沖區(qū)中的步驟之后,還包括:
當?shù)诙锰幚砥?0從第二接收臨時緩沖區(qū)獲取到待傳輸數(shù)據(jù)包時,第二數(shù)據(jù)轉(zhuǎn)發(fā)服務器216刪除第二發(fā)送臨時緩沖區(qū)中緩存的待傳輸數(shù)據(jù)包。
本發(fā)明外接設備200具體實施方式與上述應用于外接設備200的數(shù)據(jù)傳輸方法各實施例基本相同,在此不再贅述。
進一步地,本發(fā)明還提供一種移動終端100,移動終端100包括內(nèi)嵌有虛擬用戶識別卡13的第一應用處理器10,以及與實體用戶識別卡14連接的第一調(diào)制解調(diào)器11,第一調(diào)制解調(diào)器11包括第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116,第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116包括第一接收臨時緩沖區(qū),第一應用處理器10包括第一數(shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012和與第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116連接的第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011,第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011包括第一發(fā)送臨時緩沖區(qū)。移動終端100應用于數(shù)據(jù)傳輸方法,數(shù)據(jù)傳輸方法包括:
當?shù)谝粩?shù)據(jù)讀寫轉(zhuǎn)發(fā)模塊012接收到外接設備200第二應用處理器20發(fā)送的待傳輸數(shù)據(jù)包時,獲取待傳輸數(shù)據(jù)包中的類別標識;
若根據(jù)類別標識確定待傳輸數(shù)據(jù)包為待轉(zhuǎn)發(fā)數(shù)據(jù)包,則將待傳輸數(shù)據(jù)包轉(zhuǎn)發(fā)給第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011,以供第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011將待傳輸數(shù)據(jù)包緩存至第一發(fā)送臨時緩沖區(qū)中,由第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116從第一接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包;
其中,第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值是同步變化的,第一發(fā)送臨時緩沖區(qū)和第一接收臨時緩沖區(qū)的容量值等于第二默認值與第二增大值之和,且第二默認值與第二增大值之和大于或者等于待傳輸數(shù)據(jù)包的大小。
進一步地,當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)客戶端011接收到待傳輸數(shù)據(jù)包時,計算待傳輸數(shù)據(jù)包的大小,并判斷待傳輸數(shù)據(jù)包的大小是否大于第二默認值;
若待傳輸數(shù)據(jù)包的大小大于第二默認值,則計算待傳輸數(shù)據(jù)包的大小和第二默認值之間的差值,根據(jù)差值確定第二增大值;
若待傳輸數(shù)據(jù)包的大小小于或者等于第二默認值,將待傳輸數(shù)據(jù)包緩存至容量值為第二默認值的第一發(fā)送臨時緩沖區(qū)中,以供第一數(shù)據(jù)轉(zhuǎn)發(fā)服務器116從容量值為第二默認值的第一接收臨時緩沖區(qū)中獲取待傳輸數(shù)據(jù)包。
進一步地,當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)服務器116從第一接收臨時緩沖區(qū)中成功獲取到待傳輸數(shù)據(jù)包時,第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011刪除第一發(fā)送臨時緩沖區(qū)所緩沖的待傳輸數(shù)據(jù)包。
進一步地,當?shù)谝粩?shù)據(jù)轉(zhuǎn)發(fā)服務器116從第一接收臨時緩沖區(qū)中成功獲取到待傳輸數(shù)據(jù)包時,第一數(shù)據(jù)轉(zhuǎn)發(fā)客戶端011減小第一發(fā)送臨時緩沖區(qū)的容量值至第一默認值。
本發(fā)明移動終端100具體實施方式與上述應用于移動終端100的數(shù)據(jù)傳輸方法各實施例基本相同,在此不再贅述。
需要說明的是,在本文中,術語“包括”、“包含”或者其任何其它變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者系統(tǒng)不僅包括那些要素,而且還包括沒有明確列出的其它要素,或者是還包括為這種過程、方法、物品或者系統(tǒng)所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者系統(tǒng)中還存在另外的相同要素。
上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的技術方案本質(zhì)上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)(如rom/ram、磁碟、光盤)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,服務器,空調(diào)器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例的方法。
以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其它相關的技術領域,均同理包括在本發(fā)明的專利保護范圍內(nèi)。