本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)傳輸方法、裝置、終端及計(jì)算機(jī)可讀存儲介質(zhì)。
背景技術(shù):
隨著通信技術(shù)的發(fā)展,終端的應(yīng)用也越來越普遍。人們可以利用各個(gè)各樣的通信方式進(jìn)行數(shù)據(jù)的交互。例如,各個(gè)終端間可以建立的無線通信連接,如無線保真(wireless-fidelity,wi-fi)連接、近場通信(nearfieldcommunication,nfc)連接,來發(fā)送和/或接收數(shù)據(jù)。
通常來說,終端會獲取用戶想要傳輸至其它終端的數(shù)據(jù),并在接收到數(shù)據(jù)發(fā)送指令時(shí),可以將該數(shù)據(jù)發(fā)送至其它終端。其它終端可以通過建立的無線通信連接接收到該數(shù)據(jù)。然而,在該終端由于信號較差、電量不足等原因,極易導(dǎo)致該第一終端的數(shù)據(jù)傳輸過程不能持續(xù),使得其它終端不能完整的接收到該終端想要傳輸?shù)臄?shù)據(jù)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)傳輸方法、裝置、終端及計(jì)算機(jī)可讀存儲介質(zhì),可以根據(jù)終端的性能狀態(tài)選取合適的終端以進(jìn)行數(shù)據(jù)傳輸,提高了數(shù)據(jù)傳輸?shù)倪B續(xù)性,并且可以通過多終端的協(xié)作數(shù)據(jù)傳輸,提高了數(shù)據(jù)傳輸效率,方便了數(shù)據(jù)的傳輸。
第一方面,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)傳輸方法,包括:
在所述第一終端需要向直連通信集群中的終端傳輸待傳輸數(shù)據(jù)時(shí),獲取所述第一終端的性能信息;
若確定所述第一終端的性能信息小于對應(yīng)預(yù)置的閾值,則根據(jù)所述直連通信集群中各個(gè)終端的性能信息確定出第二終端;
若確定對所述第二終端的已傳輸數(shù)據(jù)在所述待傳輸數(shù)據(jù)中的比例超過預(yù)置的比例閾值,則發(fā)送通知消息至所述第二終端或者所述直連通信集群中的目標(biāo)終端;所述通知消息用于通知所述第二終端作為發(fā)送端,并與所述目標(biāo)終端之間通過建立的直連通信連接傳輸所述已傳輸數(shù)據(jù)。
第二方面,本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)傳輸方法,該方法包括:
在檢測到第一終端發(fā)送的用于獲取性能信息的請求時(shí),將所述第二終端的性能信息通過與所述第一終端建立的直連通信連接發(fā)送至所述第一終端;
若接收到所述第一終端發(fā)送的通知消息,則作為發(fā)送端,通過與所述直連通信集群中的目標(biāo)終端建立的直連通信連接,將從所述第一終端接收到的已傳輸數(shù)據(jù)發(fā)送至所述目標(biāo)終端。
第三方面,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)傳輸裝置,包括:
獲取模塊,用于在所述第一終端需要向直連通信集群中的終端傳輸待傳輸數(shù)據(jù)時(shí),獲取所述第一終端的性能信息;
確定模塊,用于若確定所述第一終端的性能信息小于對應(yīng)預(yù)置的閾值,則根據(jù)所述直連通信集群中各個(gè)終端的性能信息確定出第二終端;
發(fā)送模塊,用于若確定對所述第二終端的已傳輸數(shù)據(jù)在所述待傳輸數(shù)據(jù)中的比例超過預(yù)置的比例閾值,則發(fā)送通知消息至所述第二終端或者所述直連通信集群中的目標(biāo)終端;所述通知消息用于通知所述第二終端作為發(fā)送端,并與所述目標(biāo)終端之間通過建立的直連通信連接傳輸所述已傳輸數(shù)據(jù)。
第四方面,本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)傳輸裝置,該裝置包括:
發(fā)送模塊,用于在檢測到第一終端發(fā)送的用于獲取性能信息的請求時(shí),將所述第二終端的性能信息通過與所述第一終端建立的直連通信連接發(fā)送至所述第一終端;
所述發(fā)送模塊,還用于若接收到所述第一終端發(fā)送的通知消息,則作為發(fā)送端,通過與所述直連通信集群中的目標(biāo)終端建立的直連通信連接,將從所述第一終端接收到的已傳輸數(shù)據(jù)發(fā)送至所述目標(biāo)終端。
第五方面,本發(fā)明實(shí)施例提供了一種終端,至少包括處理器和存儲器,其中,所述存儲器用于存儲應(yīng)用程序代碼,所述處理器被配置用于調(diào)用所述程序代碼,執(zhí)行如第一方面所述的方法。
第六方面,本發(fā)明實(shí)施例還提供了一種終端,至少包括處理器和存儲器,其中,所述存儲器用于存儲應(yīng)用程序代碼,所述處理器被配置用于調(diào)用所述程序代碼,執(zhí)行如第二方面所述的方法。
第七方面,本發(fā)明實(shí)施例提供了一種計(jì)算機(jī)可讀存儲介質(zhì),所述計(jì)算機(jī)可讀存儲介質(zhì)存儲有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序包括程序指令,所述程序指令當(dāng)被處理器執(zhí)行時(shí)使所述處理器執(zhí)行如第一方面的方法,或者第二方面的方法。
第八方面,本發(fā)明實(shí)施例提供了一種計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括了存儲有計(jì)算機(jī)程序的計(jì)算機(jī)可讀存儲介質(zhì),所述計(jì)算機(jī)程序被處理器使所述處理器執(zhí)行上述第一方面的方法,或者第二方面的方法。
第一終端可以在確定該第一終端的性能信息小于對應(yīng)預(yù)置的閾值時(shí),確定出第二終端,并可以在確定對該第二終端的已傳輸數(shù)據(jù)在所述待傳輸數(shù)據(jù)中的比例超過預(yù)置的比例閾值時(shí),發(fā)送通知消息至第二終端,以使該第二終端可以作為發(fā)送端將該已傳輸數(shù)據(jù)發(fā)送至該直連通信集群中的目標(biāo)終端,使得終端可以根據(jù)自身性能狀態(tài)來選取合適的終端,以繼續(xù)數(shù)據(jù)的傳輸,保障了數(shù)據(jù)傳輸?shù)倪B續(xù)性和完整性,并且可以通過多終端的協(xié)作數(shù)據(jù)傳輸來提高數(shù)據(jù)傳輸?shù)男省?/p>
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例提供的一種網(wǎng)路架構(gòu)圖;
圖2為本發(fā)明再一實(shí)施例提供的一種網(wǎng)路架構(gòu)圖;
圖3為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)傳輸方法的流程示意圖;
圖4為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)傳輸網(wǎng)絡(luò)示意圖;
圖5為本發(fā)明再一實(shí)施例提供的一種數(shù)據(jù)傳輸方法的流程示意圖;
圖6為本發(fā)明再一實(shí)施例提供的一種數(shù)據(jù)傳輸網(wǎng)絡(luò)示意圖;
圖7為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)傳輸裝置的結(jié)構(gòu)示意圖;
圖8為本發(fā)明再一實(shí)施例提供的一種數(shù)據(jù)傳輸裝置的結(jié)構(gòu)示意圖;
圖9為本發(fā)明實(shí)施例提供的一種終端的結(jié)構(gòu)示意圖;
圖10為本發(fā)明再一實(shí)施例提供的一種終端的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”、“第三”等是用于區(qū)別不同對象,而非用于描述特定順序。此外,術(shù)語“包括”以及它們?nèi)魏巫冃危鈭D在于覆蓋不排他的包含。例如包含了一系列步驟或模塊的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備沒有限定于已列出的步驟或模塊,而是可選地還包括沒有列出的步驟或模塊,或可選地還包括對于這些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或模塊。
在本文中提及“實(shí)施例”意味著,結(jié)合實(shí)施例描述的特定特征、結(jié)構(gòu)或特性可以包含在本發(fā)明的至少一個(gè)實(shí)施例中。在說明書中的各個(gè)位置出現(xiàn)該短語并不一定均是指相同的實(shí)施例,也不是與其它實(shí)施例互斥的獨(dú)立的或備選的實(shí)施例。本領(lǐng)域技術(shù)人員顯式地和隱式地理解的是,本文所描述的實(shí)施例可以與其它實(shí)施例相結(jié)合。
應(yīng)理解,本申請所描述的第一終端、第二終端或第三終端可以包括,但不限于:手機(jī)(如android手機(jī)、ios手機(jī)等)、平板電腦等具有網(wǎng)絡(luò)連接和數(shù)據(jù)傳輸功能的移動(dòng)終端。該移動(dòng)終端還可稱為用戶設(shè)備(userequipment,簡稱ue)、終端(terminal)、無線終端或移動(dòng)臺(mobilestation,簡稱ms)等等,本發(fā)明實(shí)施例不做限定。
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
請參閱圖1,為本發(fā)明實(shí)施例提供的一種網(wǎng)絡(luò)架構(gòu)圖。該網(wǎng)絡(luò)架構(gòu)可以應(yīng)用于一般的直連通信場景中,如圖1所示,該網(wǎng)絡(luò)架構(gòu)中可以包括第一終端10、第二終端20。
其中,第一終端10可以與第二終端20間建立直連通信連接。該直連通信連接是指該第一終端10和第二終端20之間直接通信而不借助于第三方設(shè)備,如圖1所示。第一終端10與第二終端20間建立直連通信連接的方式可以包括:第一終端10與第二終端20間基于第二傳輸方式建立第二直連通信連接,并可以在該第二直連通信連接上交互第一傳輸方式的連接信息。該第一終端10與該第二終端20間可以基于該連接信息建立基于第一傳輸方式的第一直連通信連接。其中,第二直連通信連接在進(jìn)行數(shù)據(jù)交互時(shí)的能耗值小于第一直連通信連接在進(jìn)行數(shù)據(jù)交互時(shí)的能耗值,或者第二直連通信連接在進(jìn)行數(shù)據(jù)交互時(shí)的能耗值小于第一終端10與第二終端20間交互該第一傳輸方式的連接信息時(shí)的能耗值。
其中,第二傳輸方式建立的第二直連通信連接包括但不限于藍(lán)牙連接、射頻連接,如近場通信(nearfieldcommunication,nfc)連接、超聲波連接、電磁波連接,如紅外線連接。第一傳輸方式建立的第一直連通信連接包括但不限于無線保真(wirelessfidelity,wi-fi)通信連接。
在一個(gè)實(shí)施例中,在建立第一直連通信連接時(shí),可以先建立第二直連通信連接,例如,可以先在該第一終端10與第二終端20間通過藍(lán)牙建立藍(lán)牙連接,可以在該藍(lán)牙連接上交互wi-fi的連接信息,如wi-fi熱點(diǎn)的用戶名和密碼。該第一終端10與該第二終端20間可以基于該連接信息建立基于wi-fi熱點(diǎn)的第一直連通信連接。第一終端10可以在建立第二直連通信連接后,主動(dòng)開啟第一終端20的wi-fi熱點(diǎn)功能,以便于建立與第二終端20之間的第一直連通信連接,也可以通過第二直連通信連接觸發(fā)第二終端20開啟wi-fi熱點(diǎn)功能,以便于第一終端101接入到第二終端102完成第一直連通信連接的建立。
在一個(gè)實(shí)施例中,第一終端10的用戶在需要向第二終端102傳輸數(shù)據(jù)時(shí),可以在該第一終端10上配置管理第一終端10上的傳輸模式(該傳輸模式,對應(yīng)于至少一種數(shù)據(jù)傳輸方式)的直連通信按鈕,在點(diǎn)擊該按鈕開啟了第一終端10的直連通信模式之后,該第一終端10便可以自動(dòng)開啟藍(lán)牙對應(yīng)的第二傳輸功能以及wi-fi對應(yīng)的第一傳輸功能。同樣,該第二終端20的用戶也可以開啟第二終端20的直連通信按鈕,并自動(dòng)開啟藍(lán)牙對應(yīng)的第二傳輸功能以及wi-fi對應(yīng)的第一傳輸功能。然后,第一終端10的用戶可以在第一終端10通過藍(lán)牙掃描到的至少一個(gè)終端中確定出第二終端20,該第一終端10與第二終端20建立該藍(lán)牙連接。
在一個(gè)實(shí)施例中,在需要建立第一直連通信連接時(shí),該第一終端10也可以首先檢測自身的電量值,如果該電量值大于電量預(yù)設(shè)百分比(例如90%),那么該第一終端10也可以直接建立基于wi-fi熱點(diǎn)的第一直連通信連接。如果該電量值小于或者等于該電量預(yù)設(shè)百分比(例如20%),那么該第一終端10可以首先建立該基于藍(lán)牙的第二直連通信連接,再在藍(lán)牙連接的基礎(chǔ)上建立wi-fi連接,以完成第一直連通信連接的建立。
可見,本發(fā)明實(shí)施例可以通過藍(lán)牙連接(即第二直連通信連接)交互用于建立wi-fi連接(即第一直連通信連接)的連接信息,連接信息例如可以是作為wi-fi熱點(diǎn)的終端的用戶名和接入密碼,再根據(jù)該連接信息建立wi-fi連接(即第一直連通信連接),在一定程度上節(jié)約了終端能耗,并且該wi-fi連接(即第一直連通信連接)可以保證較快的傳輸速度,同時(shí)也提高了終端在傳輸數(shù)據(jù)時(shí)的傳輸效率。
在一個(gè)實(shí)施例中,在需要建立第一直連通信連接時(shí),還可以先在第一終端10中開啟wi-fi熱點(diǎn),并通過二維碼的方式攜帶該wi-fi熱點(diǎn)的用戶名和密碼,第二終端20可以掃描該二維碼,進(jìn)而直接得到第一終端10的wi-fi熱點(diǎn)的用戶名和密碼,接入到第一終端10建立兩者之間的第一直連通信連接。或者第二終端20開啟wi-fi熱點(diǎn),并通過二維碼的方式攜帶該wi-fi熱點(diǎn)的用戶名和密碼,第一終端10可以掃描該二維碼,進(jìn)而直接得到第二終端20的wi-fi熱點(diǎn)的用戶名和密碼,接入到第二終端20建立兩者之間的第一直連通信連接。
下面將在圖1所描述的實(shí)施例1的基礎(chǔ)上,結(jié)合本發(fā)明以包括三個(gè)終端的網(wǎng)絡(luò)架構(gòu)進(jìn)行簡要說明。請參閱圖2,圖2為本發(fā)明實(shí)施例提供的一種網(wǎng)絡(luò)架構(gòu)圖。如圖2所示,該網(wǎng)絡(luò)架構(gòu)中可以包括第一終端10、第二終端20、第三終端30。
該第一終端10、第二終端20、第三終端30可以構(gòu)成一個(gè)直連通信集群,該直連通信集群中的各個(gè)終端可以通過互相建立的直連通信連接,以交互數(shù)據(jù)。該直連通信集群中,還可以包括其它終端,本發(fā)明實(shí)施例僅為展現(xiàn)的其中一個(gè)簡單的網(wǎng)絡(luò)架構(gòu)。
除此之外,第一終端10還可以與多個(gè)終端(除第二終端20、第三終端30)、建立直連通信連接以形成子直連通信集群。相應(yīng)地,第二終端20、第三終端30也可以像第一終端10一樣,形成各自的子直連通信集群。第一終端10、第二終端20以及第三終端30均可以根據(jù)需要通過直連通信連接將數(shù)據(jù)發(fā)送至對應(yīng)子直連通信集群中。
其中,本發(fā)明實(shí)施例提及的直連通信連接為終端間不借助第三方設(shè)備建立的無線通信連接,包括但不限于終端之間的wi-fi連接、藍(lán)牙連接、射頻連接,如nfc連接、紅外線連接、超聲波連接等無線通信連接。其中,終端之間的wi-fi連接是指兩個(gè)終端中至少有一個(gè)終端開啟了wi-fi熱點(diǎn)功能,另一終端直接接入到該建立了wi-fi熱點(diǎn)的終端,建立直連通信連接。
在一個(gè)實(shí)施例中,第一終端10、第二終端20、第三終端30互相之間可以通過建立的不同的直連通信連接,如第一直連通信連接、第二直連通信連接實(shí)現(xiàn)數(shù)據(jù)的并發(fā)。
在一個(gè)實(shí)施例中,該第一直連通信連接可以為能夠快速傳輸視頻、圖片等數(shù)據(jù)量大于或等于預(yù)置閾值(或者大于或等于預(yù)置的數(shù)據(jù)量閾值)的數(shù)據(jù)的通信連接,包括但不限于wi-fi連接等無線通信連接。第二直連通信連接為功耗小于預(yù)設(shè)閾值,且能夠傳輸數(shù)據(jù)量小于預(yù)置閾值(或者小于預(yù)置的數(shù)據(jù)量閾值)的數(shù)據(jù)的通信連接,包括但不限于,如藍(lán)牙連接、射頻連接、紅外線連接等無線通信連接。
在該第一直連通信連接是針對數(shù)據(jù)量大于預(yù)置閾值(或者大于或等于預(yù)置的數(shù)據(jù)量閾值)的待傳輸數(shù)據(jù)中的某部分?jǐn)?shù)據(jù)(包括但不限于某一類文件數(shù)據(jù),如第二類文件數(shù)據(jù))時(shí),該第一終端10、第二終端20、第三終端30可以通過在上述三個(gè)終端間建立的第一直連通信連接傳輸該待傳輸數(shù)據(jù)中的某部分?jǐn)?shù)據(jù)(包括但不限于某一類文件數(shù)據(jù),如第二類文件數(shù)據(jù))。
或者,在該第二直連通信連接是針對數(shù)據(jù)量小于預(yù)置閾值(或者小于預(yù)置的數(shù)據(jù)量閾值)的待傳輸數(shù)據(jù)中的另一部分?jǐn)?shù)據(jù)(包括但不限于另一類文件數(shù)據(jù),如第一類文件數(shù)據(jù))時(shí),該第一終端10、第二終端20、第三終端30可以通過在上述三個(gè)終端間建立的第二直連通信連接傳輸該待傳輸數(shù)據(jù)中的另一部分?jǐn)?shù)據(jù)(包括但不限于另一類文件數(shù)據(jù),如第一類文件數(shù)據(jù))。
在該第一直連通信連接是針對數(shù)據(jù)量大于或等于預(yù)置閾值(或者大于或等于預(yù)置的數(shù)據(jù)量閾值)的待傳輸數(shù)據(jù)時(shí),該第一終端10、第二終端20、第三終端30可以通過在上述三個(gè)終端間建立的第一直連通信連接傳輸該待傳輸數(shù)據(jù)。例如,若第一終端10確定出該待傳輸數(shù)據(jù)的數(shù)據(jù)量為20m,預(yù)置的數(shù)據(jù)量閾值為5m。第一終端10可以確定該待傳輸數(shù)據(jù)的數(shù)據(jù)量大于預(yù)置的數(shù)據(jù)量閾值,則通過與該第二終端20建立的第一直連通信連接,如wi-fi連接,傳輸該待傳輸數(shù)據(jù)?;蛘?,在該第一直連通信連接是針對數(shù)據(jù)量小于預(yù)置閾值(或者小于預(yù)置的數(shù)據(jù)量閾值)的待傳輸數(shù)據(jù)時(shí),該第一終端10、第二終端20、第三終端30可以通過在上述三個(gè)終端間建立的第二直連通信連接傳輸該待傳輸數(shù)據(jù)。例如,若該第一終端10確定出該待傳輸數(shù)據(jù)的數(shù)據(jù)量為1m,預(yù)置的數(shù)據(jù)量閾值為5m,第一終端10可以確定該待傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值,則通過與該第二終端20建立的第二直連通信連接,如藍(lán)牙連接,傳輸該待傳輸數(shù)據(jù)。
在一個(gè)實(shí)施例中,在某一終端將數(shù)據(jù)發(fā)送至另外一個(gè)終端時(shí),該另外一個(gè)終端在接收到該數(shù)據(jù)后,可以將該數(shù)據(jù)作為該另外一個(gè)終端的待傳輸數(shù)據(jù)。其中,該數(shù)據(jù)可以是某一終端的待傳輸數(shù)據(jù)、待傳輸數(shù)據(jù)中部分?jǐn)?shù)據(jù),如某一類數(shù)據(jù)(包括但不限于某一類文件數(shù)據(jù))。換句話說,也可以理解為某一終端的已傳輸數(shù)據(jù)可以作為另外一個(gè)終端的待傳輸數(shù)據(jù)。
在一個(gè)實(shí)施例中,若某一終端(如第一終端10)向另外一個(gè)終端(如第二終端20)傳輸完待傳輸數(shù)據(jù)中的某一類數(shù)據(jù)后,如第一類文件數(shù)據(jù),則可以發(fā)送指示信息至該另外一個(gè)終端(如第二終端20)或者目標(biāo)終端(如第三終端30),該指示信息可以用于指示該另外一個(gè)終端(如第二終端20)和目標(biāo)終端(如第三終端30)建立第二直連通信連接,并在該第二直連通信連接上傳輸該第一類文件數(shù)據(jù)。傳輸完的第一類文件數(shù)據(jù)可以作為某一終端對另外一個(gè)終端的已傳輸數(shù)據(jù)。
在一個(gè)實(shí)施例中,若某一終端(如第一終端10)對另外一個(gè)終端(如第二終端20)的已傳輸數(shù)據(jù)在待傳輸數(shù)據(jù)中的比例超過預(yù)置的比例閾值后,如超過80%,則可以發(fā)送通知消息至該另外一個(gè)終端(如第二終端20)或者目標(biāo)終端(如第三終端30),該通知消息可以用于通知該另外一個(gè)終端(如第二終端20)作為發(fā)送端,并通過與目標(biāo)終端(如第三終端30)建立的直連通信連接,傳輸該已傳輸數(shù)據(jù)。
在一些實(shí)施例中,直連通信集群中各終端間還可以通過第二直連通信連接交互一些請求/消息/指令/信息。例如,上述的通知消息、指示信息。
該第一終端10、第二終端20、第三終端30可以根據(jù)各自的數(shù)據(jù)收發(fā)的需求,作為發(fā)送端和/或接收端來傳輸數(shù)據(jù)。
在第一終端10需要向直連通信集群中的各個(gè)終端傳輸數(shù)據(jù)時(shí),可以作為發(fā)送端以通過與該直連通信集群中的各個(gè)終端建立的直連通信連接,向各個(gè)終端傳輸數(shù)據(jù)。該直連通信集群中的各個(gè)終端可以作為接收端,通過與第一終端10建立的直連通信連接(例如第一直連通信連接或第二直連通信連接)接收由第一終端10發(fā)送的數(shù)據(jù)。
第一終端10可以通過與第二終端20間建立的直連通信連接發(fā)送數(shù)據(jù)至第二終端20。第二終端20可以通過與第一終端10建立的直連通信連接接收到該第一終端10發(fā)送的數(shù)據(jù)。其中,第一終端20還可以通過與第三終端30間建立的直連通信連接發(fā)送數(shù)據(jù)至第三終端30。第三終端30可以通過與第一終端10建立的直連通信連接接收到該第一終端10發(fā)送的數(shù)據(jù)。
在一個(gè)實(shí)施例中,該第一終端10可以在需要向直連通信集群中的各個(gè)終端傳輸數(shù)據(jù)時(shí),將直連通信模式配置為發(fā)送模式,以向該直連通信集群中各個(gè)處于接收模式的終端發(fā)送數(shù)據(jù)。相應(yīng)地,該第二終端20、該第三終端30可以分別將直連通信模式配置為接收模式,以針對性的接收處于發(fā)送模式的終端發(fā)送的數(shù)據(jù),可以更好地根據(jù)各終端的收發(fā)需求來選擇發(fā)送和接收數(shù)據(jù)。
其中,在第一終端10被配置為發(fā)送模式,且該第二終端20被配置為接收模式時(shí),第一終端10可以通過與第二終端20間建立的直連通信連接發(fā)送數(shù)據(jù)至第二終端20。第二終端20可以通過與第一終端10建立的直連通信連接接收到該第一終端10發(fā)送的數(shù)據(jù)。
在第一終端10在被配置為發(fā)送模式,且該第三終端30被配置為接收模式時(shí),第一終端10也可以通過與第三終端30建立的直連通信連接發(fā)送數(shù)據(jù)至第三終端30。第三終端30可以通過與第一終端10建立的直連通信連接接收到該第一終端10發(fā)送的數(shù)據(jù)。
該第一終端10除了與該直連通信集群中的各個(gè)終端直接建立直連通信連接以發(fā)送數(shù)據(jù)之外,還可以通過該直連通信集群中的其它終端向直連通信集群中的目標(biāo)終端發(fā)送數(shù)據(jù)。
在一個(gè)實(shí)施例中,該目標(biāo)終端可以為第一終端10確定出的該直連通信集群中需要接收該待傳輸數(shù)據(jù)的初始終端中,與第一終端10間的信號強(qiáng)度小于預(yù)置信號強(qiáng)度閾值的初始終端?;蛘撸撃繕?biāo)終端也可以是該直連通信集群中未接收到第一終端10發(fā)送的數(shù)據(jù)的終端。或者,該目標(biāo)終端還可以是該直連通信集群中與該第一終端10的數(shù)據(jù)傳輸過程中斷的終端?;蛘撸撃繕?biāo)終端還可以是第一終端10根據(jù)獲取該直連通信集群中的接收端的設(shè)備信息選取的終端。在一個(gè)實(shí)施例中,該目標(biāo)終端可以是接收端,還可以是被配置為接收模式的終端。
對應(yīng)到本網(wǎng)絡(luò)架構(gòu)中,該第一終端10除了直接與該第三終端30建立直連通信連接以發(fā)送數(shù)據(jù)之外,還可以通過第二終端20,以發(fā)送數(shù)據(jù)至目標(biāo)終端,如第三終端30。相應(yīng)地,第一終端10除了與該第二終端20建立直連通信連接以發(fā)送數(shù)據(jù)之外,還可以通過第三終端30以發(fā)送數(shù)據(jù)至目標(biāo)終端,該目標(biāo)終端例如為第二終端20。
下面將以第一終端10通過第二終端20發(fā)送數(shù)據(jù)至作為目標(biāo)終端的第三終端30為例進(jìn)行進(jìn)一步說明。
若第一終端10通過與第二終端20建立的直連通信連接,發(fā)送數(shù)據(jù)至第二終端20。第二終端30可以通過與第三終端30建立的直連通信連接以將該第一終端10發(fā)送的數(shù)據(jù)發(fā)送至第三終端30??蛇x地,該第二終端20可以被配置為中繼模式,以便可以接收第一終端10發(fā)送的數(shù)據(jù),并將接收到的該第一終端10發(fā)送的數(shù)據(jù)轉(zhuǎn)發(fā)至第三終端30。
在一個(gè)實(shí)施例中,該第二終端20可以由第一終端10根據(jù)該直連通信集群中的各個(gè)終端的性能信息確定的。
其中,該第二終端20可以是第一終端10根據(jù)該直連通信集群中的各個(gè)終端的性能信息確定出的性能狀態(tài)較佳的終端。如,該第二終端20為第一終端10確定出的該直連通信集群中剩余電量最多的終端,或者剩余電量超過預(yù)置的電量閾值的終端。
發(fā)送端在和多個(gè)接收端形成直連通信集群后,各個(gè)接收端可以將當(dāng)前本機(jī)的性能信息,如存儲空間、剩余電量、剩余內(nèi)存、傳輸速度等信息上報(bào)至發(fā)送端,以便該發(fā)送端可以根據(jù)該上報(bào)的性能信息確定出性能狀態(tài)最好的某個(gè)終端以發(fā)送數(shù)據(jù)至目標(biāo)終端。
在一個(gè)實(shí)施例中,該直連通信集群中的各個(gè)終端在檢測到第一終端10用于獲取性能信息的請求時(shí),可以將該直連通信集群中的各個(gè)終端性能信息分別通過與該第一終端10建立的直連通信連接發(fā)送至該第一終端10。
在一個(gè)實(shí)施例中,該第二終端20還可以是在確定該第一終端10的性能信息滿足預(yù)置切換條件,如性能信息小于對應(yīng)預(yù)置的閾值時(shí),該第一終端10根據(jù)該直連通信集群中的各個(gè)終端的性能信息確定出的終端。
在一個(gè)實(shí)施例中,該第二終端20還可以是在確定該第一終端10的性能信息小于對應(yīng)預(yù)置的閾值時(shí),該第一終端10根據(jù)該直連通信集群中的各個(gè)終端的性能信息確定出的終端,如性能狀態(tài)較佳的終端。其中,第一終端10的性能信息包括但不限于第一終端10的存儲空間、剩余電量、剩余內(nèi)存、傳輸速度等信息。
在一個(gè)實(shí)施例中,該第一終端10的性能信息小于對應(yīng)預(yù)置的閾值可以通過如下方式確定:在該第一終端10的性能信息包括剩余電量時(shí),判斷該剩余電量是否小于預(yù)置的第一電量閾值;在該第一終端10的性能信息包括傳輸速度時(shí),判斷該傳輸速度是否小于預(yù)置的第一速度閾值;若該剩余電量小于該預(yù)置的第一電量閾值和/或該傳輸速度小于該預(yù)置的第一速度閾值,則確定該第一終端10的性能信息小于對應(yīng)預(yù)置的閾值。
其中,除了可以利用第一終端10的性能信息中的各個(gè)信息以單獨(dú)判斷該第一終端10的性能信息是否小于對應(yīng)預(yù)置的閾值外,還可以將第一終端10的性能信息中的剩余電量、剩余內(nèi)存、存儲空間、傳輸速度等信息以遞進(jìn)或者并列的形式組合起來判斷第一終端10的性能信息是否小于對應(yīng)預(yù)置的閾值。
在一個(gè)實(shí)施例中,該第一終端10的性能信息小于對應(yīng)預(yù)置的閾值還可以通過如下方式確定:在該第一終端10的性能信息包括剩余電量時(shí),判斷該剩余電量是否小于預(yù)置的第一電量閾值;若小于,在該第一終端10的性能信息包括傳輸速度時(shí),判斷該傳輸速度是否小于預(yù)置的第一速度閾值;若小于,若該剩余電量小于該預(yù)置的第一電量閾值和/或該傳輸速度小于該預(yù)置的第一速度閾值,則確定該第一終10端的性能信息小于對應(yīng)預(yù)置的閾值。
在一個(gè)實(shí)施例中,該第一終端10根據(jù)該直連通信集群中的各個(gè)終端的性能信息確定出第二終端20可以包括:判斷該直連通信集群中各個(gè)終端的剩余電量是否超過預(yù)置的電量閾值;判斷該直連通信集群中各個(gè)終端的剩余內(nèi)存是否超過預(yù)置的剩余內(nèi)存閾值;確定該各個(gè)終端中剩余電量超過預(yù)置的電量閾值,和/或確定該各個(gè)終端中剩余內(nèi)存超過預(yù)剩余內(nèi)存閾值的終端為第二終端。在一個(gè)實(shí)施例中,該電量閾值、速度閾值對應(yīng)可以為第二電量閾值、第二速度閾值。
其中,除了可以利用直連通信集群中各個(gè)終端的性能信息中的各個(gè)信息以單獨(dú)判斷以確定出第二終端20外,還可以將直連通信集群中各個(gè)終端的性能信息中的各個(gè)信息以遞進(jìn)或者并列的形式組合起來確定出第二終端20。
在一個(gè)實(shí)施例中,該第一終端10根據(jù)該直連通信集群中的各個(gè)終端的性能信息確定出第二終端20可以包括:判斷該直連通信集群中各個(gè)終端的性能信息中的剩余電量是否大于或者等于預(yù)置的第二電量閾值;在確定該各個(gè)終端中包括剩余電量大于或者等于該預(yù)置的第二電量閾值的多個(gè)終端時(shí),判斷該多個(gè)終端的性能信息中的傳輸速度是否大于或者等于預(yù)置的第二速度閾值;選取該多個(gè)終端中傳輸速度大于或者等于該預(yù)置的第二速度閾值的終端作為第二終端。
在一個(gè)實(shí)施例中,該各個(gè)終端的性能信息除了可以包括前述的剩余電量、剩余內(nèi)存、存儲空間、傳輸速度,還可以包括已接收數(shù)據(jù)的數(shù)據(jù)量。
在一個(gè)實(shí)施例中,該第一終端10根據(jù)該直連通信集群中的各個(gè)終端的性能信息確定出第二終端20還可以包括:判斷該直連通信集群中各個(gè)終端的性能信息中的已接收數(shù)據(jù)的數(shù)據(jù)量是否大于或等于預(yù)置的數(shù)據(jù)接收閾值;在確定該各個(gè)終端中包括已接收數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)接收閾值的多個(gè)終端時(shí),判斷該多個(gè)終端的性能信息中的傳輸速度是否大于或者等于預(yù)置的第二速度閾值;選取該多個(gè)終端中傳輸速度大于或者等于該預(yù)置的第二速度閾值的終端作為第二終端。
在一個(gè)實(shí)施例中,該第二終端20還可以是第一終端10根據(jù)獲取的直連通信集群中各個(gè)終端的設(shè)備信息確定的。
處于發(fā)送模式的第一終端10可以通過與處于中繼模式的第二終端20建立的直連通信連接,發(fā)送數(shù)據(jù)至處于中繼模式的第二終端20。處于中繼模式的第二終端30可以通過與處于接收模式的第三終端30建立的直連通信連接,將該處于接收模式的第一終端10發(fā)送的數(shù)據(jù)發(fā)送至處于接收模式的第三終端30。
在一個(gè)實(shí)施例中,第二終端10可以通過與第三終端30間的第二直連通信連接,獲取第三終端30的設(shè)備信息;第二終端20可以將第二終端20的設(shè)備信息、第三終端30的設(shè)備信息發(fā)送至第一終端10。第一終端10在接收到第二終端20發(fā)送的設(shè)備信息后,可以將該第三終端30的設(shè)備信息確定為發(fā)送數(shù)據(jù)的目標(biāo)終端。
以手機(jī)a包括接收模式、發(fā)送模式、中繼模式為例。用戶可以通過點(diǎn)擊中繼模式選項(xiàng)或者圖標(biāo),將手機(jī)a的直連通信模式設(shè)置為中繼模式。處于中繼模式的手機(jī)a可以獲取其它處于接收模式的手機(jī)b的設(shè)備信息,并且手機(jī)a可以獲取到處于發(fā)送模式的手機(jī)c的設(shè)備信息,從而可以將該處于接收模式的手機(jī)b的設(shè)備信息發(fā)送至該處于發(fā)送模式的手機(jī)c。
該第二終端20可以在接收到第一終端10的轉(zhuǎn)發(fā)請求時(shí),通過第一直連通信連接獲取發(fā)起終端10的發(fā)送的數(shù)據(jù),并可以根據(jù)該轉(zhuǎn)發(fā)請求中指示的傳輸路徑轉(zhuǎn)發(fā)該第一終端發(fā)送的數(shù)據(jù);該轉(zhuǎn)發(fā)請求指示的傳輸路徑可以為通過第二終端20將第一終端10發(fā)送的數(shù)據(jù)發(fā)送至第三終端30。該轉(zhuǎn)發(fā)請求可以包括第三終端的設(shè)備信息。該傳輸路徑可以是第一終端10根據(jù)獲取的設(shè)備信息確定的。
在一個(gè)實(shí)施例中,該第二終端20可以在接收到第一終端10的轉(zhuǎn)發(fā)請求時(shí),通過第二直連通信連接獲取發(fā)起終端10的發(fā)送的數(shù)據(jù),并可以根據(jù)該轉(zhuǎn)發(fā)請求中指示的傳輸路徑轉(zhuǎn)發(fā)該第一終端發(fā)送的數(shù)據(jù);該轉(zhuǎn)發(fā)請求指示的傳輸路徑可以為通過第二終端20將第一終端10發(fā)送的數(shù)據(jù)發(fā)送至第三終端30。該轉(zhuǎn)發(fā)請求可以包括第三終端的設(shè)備信息。該傳輸路徑可以是第一終端10根據(jù)獲取的設(shè)備信息確定的。
在一個(gè)實(shí)施例中,如果該轉(zhuǎn)發(fā)請求中指示的傳輸路徑所指示的下一節(jié)點(diǎn)是第二終端20,則第一終端10與該第二終端20可以建立第一直連通信連接以傳輸數(shù)據(jù);如果該轉(zhuǎn)發(fā)請求中指示的傳輸路徑所指示的下一節(jié)點(diǎn)是該直連通信集群中其它終端,則第一終端10與該其它終端建立第一直連通信連接以傳輸數(shù)據(jù)。該其它終端可以為其它接收端。
該第一終端10可以顯示一個(gè)用戶界面,該用戶界面可以用于顯示獲取的設(shè)備信息。第一終端10可以接收針對設(shè)備信息的選擇操作,并根據(jù)該選擇操作確定出傳輸路徑。例如,第一終端10在需要向第三終端30傳輸數(shù)據(jù)1時(shí),可以在選取該第三終端30以作為發(fā)送數(shù)據(jù)1的目標(biāo)終端后,再選取第二終端20以確定傳輸路徑為通過第二終端20進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)。
在一個(gè)實(shí)施例中,該設(shè)備信息可以包括對應(yīng)終端的標(biāo)識,如媒體訪問控制(mediaaccesscontrol,mac)地址、互聯(lián)網(wǎng)協(xié)議(internetprotocol,ip)地址、名稱、端口號等。在一個(gè)實(shí)施例中,該設(shè)備信息可以包括對應(yīng)終端的標(biāo)識、以及對應(yīng)終端所處的直連通信模式。
該第二終端20還可以是被配置為接收模式的終端,在接收到第一終端10發(fā)送的數(shù)據(jù)后,可以通過將第二終端20的直連通信模式配置為發(fā)送模式,使得該第二終端20可以切換為發(fā)送端以發(fā)送數(shù)據(jù)到處于接收模式的第三終端30。在一個(gè)實(shí)施例中,若第三終端30一直用于接收數(shù)據(jù),則可以將該第三終端30的直連通信模式配置為接收模式。
在一個(gè)實(shí)施例中,直連通信集群中的各個(gè)終端設(shè)置有直連通信模式,該直連通信模式可以為發(fā)送模式、接收模式、中繼模式。若終端被配置為發(fā)送模式,則該終端可以為用于發(fā)送數(shù)據(jù)的發(fā)送端,若該終端被配置為中繼模式,那么該終端可以用于轉(zhuǎn)發(fā)數(shù)據(jù)。若終端被配置為接收模式,則該終端可以為用于接收數(shù)據(jù)的接收端。
在一個(gè)實(shí)施例中,各個(gè)終端可以配置有一個(gè)直連通信按鈕,點(diǎn)擊該直連通信按鈕后,可以進(jìn)行直連通信模式的選擇。
當(dāng)該直連通信集群中的某個(gè)終端開啟中繼模式后,某個(gè)終端可以將周圍掃描到的處于接收模式的終端的設(shè)備信息,發(fā)送到周圍處于發(fā)送模式的終端。通常在某個(gè)終端的傳輸距離受限,可以通過處于中繼模式的終端來轉(zhuǎn)發(fā)數(shù)據(jù)以擴(kuò)大傳輸距離。除此之外,若某個(gè)終端的傳輸距離未受限,則也可以通過處于中繼模式的終端來轉(zhuǎn)發(fā)數(shù)據(jù)來擴(kuò)展數(shù)據(jù)傳輸方式。
在一個(gè)實(shí)施例中,發(fā)送端可以管理自己掃描到的接收端的設(shè)備信息,以及中繼設(shè)備發(fā)送過來的接收端的設(shè)備信息。該接收端可以為處于接收模式的終端。中繼終端可以為處于中繼模式的終端。該發(fā)送端可以為處于發(fā)送模式的終端。
在一個(gè)實(shí)施例中,若用戶在發(fā)送端選擇一個(gè)接收端作為目標(biāo)終端后(可以是根據(jù)獲取的接收端的設(shè)備信息選取的),則發(fā)送端可以根據(jù)該接收端反饋上來的路徑將數(shù)據(jù)先傳輸至下一個(gè)的中繼終端,在由該中繼終端傳輸至目標(biāo)終端?;蛘?,在該用戶選擇一個(gè)接收端作為目標(biāo)終端后,用戶可以再選取一個(gè)以轉(zhuǎn)發(fā)數(shù)據(jù)的中繼終端,再由該中繼終端將數(shù)據(jù)傳輸至目標(biāo)終端。
該直連通信集群中各個(gè)終端根據(jù)設(shè)置的直連通信模式不同,可以進(jìn)行多個(gè)直連通信模式的切換,以便基于設(shè)置的不同直連通信模式,來使各個(gè)終端提供不同功能。并且可以在終端間距離發(fā)生變化,距離較遠(yuǎn)、終端性能較差等原因?qū)е虏荒芾^續(xù)傳輸任務(wù)或者不想繼續(xù)數(shù)據(jù)傳輸時(shí),通過將終端作為中繼終端的方式,可以擴(kuò)展數(shù)據(jù)傳輸距離,增加組網(wǎng)的靈活性。
在一個(gè)實(shí)施例中,該第一終端10在被配置為中繼模式時(shí),可以基本實(shí)現(xiàn)第二終端20處于中繼模式時(shí)所實(shí)現(xiàn)的所有功能。該第二終端20在被配置為發(fā)送模式時(shí),可以基本實(shí)現(xiàn)第一終端10處于發(fā)送模式時(shí)所實(shí)現(xiàn)的所有功能。
在第一終端10需要向第二終端20發(fā)送數(shù)據(jù)時(shí),該第一終端10向第二終端20發(fā)送的數(shù)據(jù)可以為第一終端10選取的待傳輸數(shù)據(jù)。該待傳輸數(shù)據(jù)包括但不限于該文檔、音視頻文件、圖片等數(shù)據(jù)。其中,第一終端10可以通過與第二終端20間建立直接通信連接來傳輸數(shù)據(jù)。該第一終端10向第二終端20傳發(fā)送的數(shù)據(jù)還可以為第一終端10選取的待傳輸數(shù)據(jù)中的部分?jǐn)?shù)據(jù)(包括但不限于某一類文件數(shù)據(jù))。在一個(gè)實(shí)施例中,該發(fā)送的數(shù)據(jù)還可以為第一終端10對第二終端20的已傳輸數(shù)據(jù),該已傳輸數(shù)據(jù)可以為上述待傳輸數(shù)據(jù),還可以是待傳輸數(shù)據(jù)中的部分?jǐn)?shù)據(jù)(包括但不限于某一類文件數(shù)據(jù))。
在一個(gè)實(shí)施例中,第二終端20與第三終端30之間的用于傳輸數(shù)據(jù)的直連通信連接可以通過第一終端10發(fā)送連接請求的形式觸發(fā)建立。
在一個(gè)實(shí)施例中,該連接請求可以由第一終端10發(fā)送至目標(biāo)終端,如第三終端30。其中,該連接請求可以包括第二終端20的設(shè)備信息?;蛘?,該連接請求還可以由第一終端10發(fā)送至第二終端20。其中,該連接請求可以包括目標(biāo)終端,如第三終端30的設(shè)備信息。
在一個(gè)實(shí)施例中,根據(jù)連接請求所觸發(fā)建立的直連通信連接的不同,該連接請求還可以包括第一連接請求,第二連接請求。
在一個(gè)實(shí)施例中,第一終端10可以確定發(fā)送的數(shù)據(jù)的數(shù)據(jù)量;并在該數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置閾值(或者大于或等于預(yù)置的數(shù)據(jù)量閾值)時(shí),發(fā)送第一連接請求至第二終端20或者第三終端30,該第一連接請求10用于觸發(fā)建立該第二終端20與第三終端30間的第一直連通信連接;在該數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置閾值(或者小于預(yù)置的數(shù)據(jù)量閾值)時(shí),則發(fā)送第二連接請求至第二終端20或者第三終端30,該第二連接請求用于觸發(fā)建立該第二終端20與第三終端30之間的第二直連通信連接,從而實(shí)現(xiàn)根據(jù)第一終端10傳輸?shù)臄?shù)據(jù)的數(shù)據(jù)量的不同,觸發(fā)與第二終端20建立不同的直連通信連接以進(jìn)行數(shù)據(jù)的傳輸,提高了數(shù)據(jù)傳輸效率。其中,該第一連接請求、第二連接請求可以通過第一終端10與第二終端間建立的第二直連通信連接發(fā)送至第二終端20,也可以通過第一終端10與第三終端30建立的第二直連通信連接發(fā)送至第三終端30。
在一個(gè)實(shí)施例中,第一終端10向第二終端20發(fā)送的數(shù)據(jù)還可以是將待傳輸數(shù)據(jù)進(jìn)行分類后通過至少一個(gè)直連通信連接依次發(fā)送的數(shù)據(jù),或者通過多個(gè)直連通信連接并行發(fā)送的數(shù)據(jù)。其中,對該待傳輸數(shù)據(jù)進(jìn)行分類包括但不限于將該待傳輸數(shù)據(jù)中各個(gè)數(shù)據(jù)按照類別、大小、名稱進(jìn)行分類。
在一個(gè)實(shí)施例中,第一終端10可以確定出該待傳輸數(shù)據(jù)中的第一類文件數(shù)據(jù),該第一類文件數(shù)據(jù)為數(shù)據(jù)量小于預(yù)置閾值的數(shù)據(jù);將該第一類文件數(shù)據(jù)第一終端10通過與該第二終端20建立的第二直連通信連接,將該第一類文件數(shù)據(jù)發(fā)送至該第二終端20。第一終端10確定出該待傳輸數(shù)據(jù)中的第二類文件數(shù)據(jù),該第二類文件數(shù)據(jù)為數(shù)據(jù)量大于或等于預(yù)置閾值的數(shù)據(jù);該第一終端10通過與該第二終端20建立的第一直連通信連接,將該第二類文件數(shù)據(jù)發(fā)送至該第二終端20。
假設(shè)待傳輸數(shù)據(jù)包括文件1、文件2、文件3,若按照數(shù)據(jù)大小對該待傳輸數(shù)據(jù)進(jìn)行分類。其中數(shù)據(jù)量小于1m的有文件1。則數(shù)據(jù)量大于1m的待傳輸數(shù)據(jù)有文件2、文件3。可以確定文件1為第一類文件數(shù)據(jù)。需要說明的是,第二終端20在接收到第一終端10發(fā)送的數(shù)據(jù)后,可以通過與第三終端30間的直連通信連接發(fā)送至第三終端30。
第二終端20與第三終端30間的直連通信連接包括但不限于以第二終端20接收到連接請求后觸發(fā)建立。其中,該連接請求可以為第一終端10發(fā)送的,還可以為第三終端30發(fā)送的。在一個(gè)實(shí)施例中,該連接請求可以包括前面提到的第一連接請求或者第二連接請求。
在一個(gè)實(shí)施例中,第一終端10可以發(fā)送通知消息至第二終端20或者第三終端30,該通知消息用以通知第二終端20作為發(fā)送端,并與第三終端30之間通過建立的直連通信連接傳輸?shù)谝唤K端10發(fā)送的數(shù)據(jù)或者第一終端10的已傳輸數(shù)據(jù)。其中,第二終端20可以接收第一終端10發(fā)送的通知消息。其中,若該第一終端10在確定目標(biāo)終端為多個(gè)接收端時(shí)。第二終端20可以選取將該第一終端10發(fā)送的數(shù)據(jù)或者第一終端10的已傳輸數(shù)據(jù)分別發(fā)送至該多個(gè)接收端。
在一個(gè)實(shí)施例中,第一終端10可以發(fā)送指示消息至第二終端20或者第三終端30,該指示消息用以指示第二終端20與第三終端30之間建立直連通信連接,并指示第二終端20與第三終端30之間傳輸該第一終端10發(fā)送的數(shù)據(jù)或者第一終端10的已傳輸數(shù)據(jù),如第一類文件數(shù)據(jù)。其中,第二終端20可以通過第二直連通信連接接收第一終端10發(fā)送的指示信息。
若該第一終端10在確定目標(biāo)終端為多個(gè)接收端時(shí)。則第二終端20可以選取將該第一終端10發(fā)送的數(shù)據(jù)或者第一終端10的已傳輸數(shù)據(jù),如第一類文件數(shù)據(jù)分別發(fā)送至該多個(gè)接收端。
在一個(gè)實(shí)施例中,該第一終端10可以在完成針對目標(biāo)終端的部分?jǐn)?shù)據(jù),如某一類文件數(shù)據(jù)的傳輸任務(wù)后,再依次進(jìn)行或者同時(shí)向其它設(shè)備進(jìn)行剩余數(shù)據(jù)的傳輸任務(wù);還可以同時(shí)開展多個(gè)傳輸任務(wù),例如在向目標(biāo)終端進(jìn)行數(shù)據(jù)傳輸時(shí),同時(shí)向多個(gè)設(shè)備中的部分終端或者全部終端進(jìn)行數(shù)據(jù)傳輸。
在一個(gè)實(shí)施例中,發(fā)送端可以優(yōu)先將小文件傳輸給當(dāng)前性能狀態(tài)較佳或者最好的接收端。該小文件可以為本發(fā)明實(shí)施例提及的待傳輸數(shù)據(jù)中數(shù)據(jù)量小于預(yù)置閾值的數(shù)據(jù)。并且,發(fā)送端可以在傳完該小文件后,繼續(xù)傳輸其它文件,并且可以發(fā)送一些信息,如設(shè)備信息,或包括設(shè)備信息的連接請求,至其它接收端,以便建立該性能狀態(tài)最好的接收端與其它接收端間的直連通信連接。其中,發(fā)送端還可以觸發(fā)已經(jīng)接收完小文件的性能狀態(tài)最好的接收端將部分?jǐn)?shù)據(jù)發(fā)送至其它接收端(包括但不限于以通知消息觸發(fā))。優(yōu)先接收到部分?jǐn)?shù)據(jù)的終端可以向其它目標(biāo)接收端發(fā)送剛剛接收到的小文件,從而可以組成多終端并行傳輸?shù)姆绞?。該發(fā)送端可以為第一終端10,該性能狀態(tài)最好的終端可以為第二終端20。該其它目標(biāo)終端可以為第三終端30。通過多終端并行傳輸?shù)姆绞剑梢蕴岣邤?shù)據(jù)傳輸效率。
發(fā)送端還可以優(yōu)先將小文件傳輸給當(dāng)前性能狀態(tài)最好的接收端,并將其它接收端的信息,如設(shè)備信息或包含設(shè)備信息的連接請求,發(fā)送至該性能狀態(tài)最好的接收端,以便該性能狀態(tài)最好的接收端可以與其它接收端間建立直連通信連接以傳輸數(shù)據(jù)。該小文件可以為本發(fā)明實(shí)施例提及的待傳輸數(shù)據(jù)中數(shù)據(jù)量小于預(yù)置閾值的第一類文件數(shù)據(jù)。并且,發(fā)送端可以在傳完該小文件后,傳輸大文件。該大文件可以為待傳輸數(shù)據(jù)中數(shù)據(jù)量大于預(yù)置閾值的第二類文件數(shù)據(jù)。若該發(fā)送端因?yàn)槟承┰?如電量低于預(yù)置的電量閾值)而不能繼續(xù)傳輸任務(wù)時(shí),可以觸發(fā)該性能狀態(tài)最好的接收端作為發(fā)送端以發(fā)送接收到的數(shù)據(jù)到其它目標(biāo)接收端(包括但不限于以通知消息觸發(fā)),從而提高直連通信集群中的終端的整體工作效率。該發(fā)送端可以為第一終端10,該性能狀態(tài)最好的終端可以為第二終端20。該其它目標(biāo)終端可以為第三終端30。
在一些實(shí)施例中,上述待傳輸數(shù)據(jù)中部分?jǐn)?shù)據(jù),如某一類數(shù)據(jù)(包括但不限于第一類文件數(shù)據(jù)或第二類文件數(shù)據(jù))或者已傳輸數(shù)據(jù)可以作為目標(biāo)數(shù)據(jù)?;蛘?,上述待傳輸數(shù)據(jù)也可以稱為目標(biāo)數(shù)據(jù)。
根據(jù)第一終端10對直連通信集群中各個(gè)終端的傳輸任務(wù)分配的不同,對該數(shù)據(jù)劃分情況也不同。如,將該待傳輸數(shù)據(jù)劃分為多個(gè)類別,分別發(fā)送至多個(gè)目標(biāo)終端,再由多個(gè)終端將需要發(fā)送至其它終端的數(shù)據(jù)通過至少一個(gè)直連通信連接依次或并行發(fā)送至其它終端,這樣就完成了多個(gè)設(shè)備的協(xié)作數(shù)據(jù)傳輸。相應(yīng)地,隨著參與協(xié)作傳輸?shù)脑O(shè)備的增加,該數(shù)據(jù)也可以被劃分為、第一類數(shù)據(jù)、第二類數(shù)據(jù)、第三類數(shù)據(jù)、第四類數(shù)據(jù)……其中,本發(fā)明實(shí)施例對數(shù)據(jù)的標(biāo)號、稱謂不做限定。
請參閱圖3,為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)傳輸方法的流程示意圖。其中,該方法可以應(yīng)用于智能終端,包括但不限于手機(jī)、平板電腦、智能可穿戴設(shè)備等便攜式移動(dòng)設(shè)備。其中,該方法可以包括:
s201、在所述第一終端需要向直連通信集群中的終端傳輸待傳輸數(shù)據(jù)時(shí),獲取所述第一終端的性能信息。
本發(fā)明實(shí)施例中,該第一終端的性能信息包括但不限于第一終端的存儲空間、剩余電量、剩余內(nèi)存、傳輸速度等信息。該待傳輸數(shù)據(jù)可以為第一終端選取的將要傳輸?shù)囊粢曨l文件、圖片、文檔等數(shù)據(jù)。
需要說明的是,第一終端可以與直連通信集群中的各個(gè)終端建立直連通信連接。該直連通信連接可以為第一直連通信連接和/或第二直連通信連接。
s202、若確定所述第一終端的性能信息小于對應(yīng)預(yù)置的閾值,則根據(jù)所述直連通信集群中各個(gè)終端的性能信息確定出第二終端。
本發(fā)明實(shí)施例中,該各個(gè)終端的性能信息包括但不限于各個(gè)終端的存儲空間、剩余電量、剩余內(nèi)存、傳輸速度等信息。
可選地,在該第一終端的性能信息包括剩余電量時(shí),判斷該剩余電量是否小于預(yù)置的第一電量閾值;在該第一終端的性能信息包括傳輸速度時(shí),判斷該傳輸速度是否小于預(yù)置的第一速度閾值;若該剩余電量小于該預(yù)置的第一電量閾值和/或該傳輸速度小于該預(yù)置的第一速度閾值,則確定該第一終端的性能信息滿足預(yù)置的切換條件。
舉例來說,假設(shè)第一終端的預(yù)置的第一電量閾值為30%、第一速度閾值為0.5m/s。在該第一終端當(dāng)前的剩余電量為60%,可以確定傳輸速度為1m/s,則可以確定第一終端的性能信息不小于對應(yīng)預(yù)置的閾值。若該終端當(dāng)前的剩余電量低于60%,和/或當(dāng)前的傳輸速度小于1m/s,則可以確定該第一終端的性能信息小于對應(yīng)預(yù)置的閾值。
本發(fā)明實(shí)施例可以在該第一終端性能狀態(tài)不佳時(shí),及時(shí)地確定出第二終端以傳輸待傳輸數(shù)據(jù),從而可以保障數(shù)據(jù)傳輸?shù)倪B續(xù)性,提高了數(shù)據(jù)傳輸效率,避免了第一終端因性能不佳導(dǎo)致數(shù)據(jù)傳輸?shù)闹袛啵柙俳⑦B接以重傳數(shù)據(jù)。其中,該傳輸速度指的是數(shù)據(jù)傳輸速度??蛇x地,可以通過先發(fā)送一個(gè)探測幀以測試該傳輸速度。
可選地,在該第一終端的性能信息包括傳輸速度時(shí),第一終端可以判斷該傳輸速度是否小于預(yù)置的第一速度閾值;若小于,在該第一終端的性能信息包括剩余電量時(shí),第一終端可以判斷該剩余電量是否小于預(yù)置的第一電量閾值;若小于,則第一終端可以確定該第一終端的性能信息小于對應(yīng)預(yù)置的閾值。
舉例來說,假設(shè)第一終端的預(yù)置的第一電量閾值為30%、第一速度閾值為0.5m/s。在該第一終端當(dāng)前的傳輸速度為0.3m/s時(shí),可以確定該傳輸速度小于0.5m/s。若該第一終端當(dāng)前的剩余電量為20%,則可以進(jìn)一步確定剩余電量小于30%。因此,可以確定第一終端的性能信息小于對應(yīng)預(yù)置的閾值。
可選地,在該第一終端的性能信息包括存儲空間時(shí),第一終端可以判斷該存儲空間是否小于預(yù)置的第一存儲空間閾值;若小于,在該第一終端的性能信息包括剩余內(nèi)存時(shí),第一終端可以判斷該剩余內(nèi)存是否小于預(yù)置的第一剩余內(nèi)存閾值;若小于,則第一終端可以確定該第一終端的性能信息小于對應(yīng)預(yù)置的閾值。
可選地,在該第一終端的性能信息包括傳輸速度時(shí),第一終端可以判斷該傳輸速度是否小于預(yù)置的第一速度閾值;若小于,在該第一終端的性能信息包括剩余內(nèi)存時(shí),第一終端可以判斷該剩余內(nèi)存是否小于預(yù)置的第一剩余內(nèi)存閾值;若小于,則第一終端可以確定該第一終端的性能信息小于對應(yīng)預(yù)置的閾值。
在步驟s302中,第一終端可以根據(jù)該直連通信集群中各個(gè)終端的性能信息確定出第二終端,以便第一終端將數(shù)據(jù)傳輸任務(wù)轉(zhuǎn)交給第二終端,第二終端可以繼續(xù)第一終端的數(shù)據(jù)傳輸任務(wù),從而保障數(shù)據(jù)傳輸?shù)臅r(shí)效性。
其中,該第一終端可以通過與該直連通信集群中各個(gè)終端建立的第二直連通信連接,來獲取直連通信集群中各個(gè)終端的性能信息。
本發(fā)明實(shí)施例中,該第二直連通信連接包括但不限于射頻連接、藍(lán)牙連接、超聲波連接等無線通信連接。該第一直連通信連接可以為wi-fi連接等無線通信連接。
舉例來說,如圖4所示,該直連通信集群中包括終端400、終端401、終端402、終端403、終端404。在該直連通信集群中,若第一終端為終端402,則終端402可以通過第二直連通信連接,如藍(lán)牙連接,獲取到終端400的剩余電量、終端401的剩余電量、終端403的剩余電量、終端404的剩余電量。
其中,該第一終端可以通過比較分析該直連通信集群中的各個(gè)終端的性能信息以確定出性能狀態(tài)較佳或最佳的終端作為第二終端。
可選地,若獲取的性能信息為剩余電量,則第一終端可以通過比較分析該通信集群中各個(gè)終端的剩余電量,從而可以確定出剩余電量較多或者最多的終端為第二終端。
可選地,若獲取的性能信息為剩余內(nèi)存,則第一終端可以通過比較分析該通信集群中各個(gè)終端的剩余內(nèi)存,從而可以確定出剩余內(nèi)存較多或者最多的終端為第二終端。
可選地,若獲取的性能信息為傳輸速度,則第一終端可以通過比較分析該通信集群中各個(gè)終端的數(shù)據(jù)的傳輸速度,從而可以確定出傳輸速度較快或者最快的終端為第二終端。
可選地,第一終端還可以結(jié)合各個(gè)終端的存儲空間、剩余電量、剩余內(nèi)存、傳輸速度等信息中的兩種或者多種信息來確定出第二終端。
進(jìn)一步可選地,第一終端判斷該直連通信集群中各個(gè)終端的性能信息中的剩余電量是否大于或者等于預(yù)置的第二電量閾值;在確定該各個(gè)終端中包括剩余電量大于或者等于該預(yù)置的第二電量閾值的多個(gè)終端時(shí),判斷該多個(gè)終端的性能信息中的傳輸速度是否大于或者等于預(yù)置的第二速度閾值;選取該多個(gè)終端中傳輸速度大于或者等于該預(yù)置的第二速度閾值的終端作為第二終端。
舉例來說,如圖4所示,該直連通信集群中包括終端400、終端401、終端402、終端403、終端404。在該直連通信集群中,若第一終端為終端402,則終端402可以通過第二直連通信連接,如藍(lán)牙連接,獲取到終端400的剩余電量以及傳輸速度、終端401的剩余電量以及傳輸速度、終端403的剩余電量以及傳輸速度、終端404的剩余電量以及傳輸速度。若預(yù)置的第二電量閾值為60%,預(yù)置的第二速度閾值為1m/s,在終端402確定出的剩余電量大于60%的終端有終端400以及終端401時(shí),可以再進(jìn)一步判斷終端400的傳輸速度以及終端401中傳輸速度是否大于1m/s的終端。若終端401的傳輸速度大于1m/s,則可以確定終端401為第二終端。
進(jìn)一步可選地,可以選取該多個(gè)終端中傳輸速度最大的終端作為第二終端。
其中,該第二電量閾值可以與前述第一電量閾值相同,也可以不同。該第二速度閾值也可以與前述第一速度閾值相同,也可以不同。
需要說明的是,在確定第二終端作為發(fā)送端傳輸數(shù)據(jù)時(shí),往往需要選取電量較多,傳輸速度較快的終端來作為第二終端。因此,根據(jù)電量以及傳輸速度確定出性能狀態(tài)較佳或者最佳的第二終端的情況,與第一終端的性能信息低于對應(yīng)預(yù)置的閾值,即與第一終端的性能狀態(tài)不好的情況確定出第二終端的情況有所不同,所以第二速度閾值往往大于該第一速度閾值、第二電量閾值大于第一電量閾值。
進(jìn)一步可選地,第一終端判斷該直連通信集群中各個(gè)終端的性能信息中的已接收數(shù)據(jù)的數(shù)據(jù)量是否大于或等于預(yù)置的數(shù)據(jù)接收閾值;在確定該各個(gè)終端中包括已接收數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)接收閾值的多個(gè)終端時(shí),判斷該多個(gè)終端的性能信息中的傳輸速度是否大于或者等于預(yù)置的第二速度閾值;選取該多個(gè)終端中傳輸速度大于或者等于該預(yù)置的第二速度閾值的終端作為第二終端。其中,終端可以根據(jù)確定出數(shù)據(jù)的數(shù)據(jù)量較大的終端,從而保障數(shù)據(jù)傳輸?shù)耐暾?,并且可以通過進(jìn)一步通過確定傳輸速度較快的終端,可以保障終端間處于較高的傳輸速度,能快速地傳輸數(shù)據(jù)。其中,若存在終端未接收到第一終端傳輸?shù)臄?shù)據(jù),則已接收數(shù)據(jù)的數(shù)據(jù)量為0。
舉例來說,如圖4所示,該直連通信集群中包括終端400、終端401、終端402、終端403、終端404。在該直連通信集群中,若第一終端為終端402,則終端402可以通過第二直連通信連接,如藍(lán)牙連接,獲取到終端400的已接收數(shù)據(jù)的數(shù)據(jù)量以及傳輸速度、終端401的已接收數(shù)據(jù)的數(shù)據(jù)量以及傳輸速度、終端403的已接收數(shù)據(jù)的數(shù)據(jù)量以及傳輸速度、終端404的已接收數(shù)據(jù)的數(shù)據(jù)量以及傳輸速度。若預(yù)置的數(shù)據(jù)接收閾值為100m、預(yù)置的第二速度閾值為1m/s。若終端402確定出已接收數(shù)據(jù)的數(shù)據(jù)量大于或等于100m的終端有終端400以及終端401,則可以再進(jìn)一步判斷終端400的傳輸速度以及終端401中傳輸速度是否大于1m/s的終端。若終端401的傳輸速度大于1m/s,則可以確定終端401為第二終端。
進(jìn)一步可選地,可以選取該多個(gè)終端中傳輸速度最大的終端作為第二終端。
進(jìn)一步可選地,第一終端判斷該直連通信集群中各個(gè)終端的性能信息中的剩余內(nèi)存是否大于或者等于預(yù)置的第二剩余內(nèi)存閾值;在確定該各個(gè)終端中包括剩余內(nèi)存大于或者等于該預(yù)置的第二剩余內(nèi)存閾值的多個(gè)終端時(shí),判斷該多個(gè)終端的性能信息中的傳輸速度是否大于或者等于預(yù)置的第二速度閾值;選取該多個(gè)終端中傳輸速度大于或者等于該預(yù)置的第二速度閾值的終端作為第二終端。
進(jìn)一步可選地,第一終端判斷該直連通信集群中各個(gè)終端的性能信息中的已接收數(shù)據(jù)的數(shù)據(jù)量是否大于或等于預(yù)置的數(shù)據(jù)接收閾值;在確定該各個(gè)終端中包括已接收數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)接收閾值的多個(gè)終端時(shí),判斷該多個(gè)終端的性能信息中的剩余內(nèi)存是否大于或者等于預(yù)置的第二剩余內(nèi)存閾值;選取該多個(gè)終端中剩余內(nèi)存大于或者等于該預(yù)置的第二剩余內(nèi)存閾值的終端作為第二終端。
進(jìn)一步可選地,第一終端判斷該直連通信集群中各個(gè)終端的性能信息中的已接收數(shù)據(jù)的數(shù)據(jù)量是否大于或等于預(yù)置的數(shù)據(jù)接收閾值;在確定該各個(gè)終端中包括已接收數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)接收閾值的多個(gè)終端時(shí),判斷該多個(gè)終端的性能信息中的存儲空間是否大于或者等于預(yù)置的第二存儲空間閾值;選取該多個(gè)終端中存儲空間大于或者等于該預(yù)置的第二存儲空間閾值的終端作為第二終端。
進(jìn)一步可選地,第一終端判斷該直連通信集群中各個(gè)終端的性能信息中的存儲空間是否大于或等于預(yù)置的第二存儲空間閾值;在確定該各個(gè)終端中包括已接收數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的第二存儲空間閾值的多個(gè)終端時(shí),判斷該多個(gè)終端的性能信息中的剩余內(nèi)存是否大于或者等于預(yù)置的第二剩余內(nèi)存閾值;選取該多個(gè)終端中剩余內(nèi)存大于或者等于該預(yù)置的第二剩余內(nèi)存閾值的終端作為第二終端。
s303、若確定對所述第二終端的已傳輸數(shù)據(jù)在所述待傳輸數(shù)據(jù)中的比例超過預(yù)置的比例閾值,則發(fā)送通知消息至所述第二終端或者所述直連通信集群中的目標(biāo)終端。
本發(fā)明實(shí)施例中,該通知消息用于通知該第二終端作為發(fā)送端,并與該目標(biāo)終端之間通過建立的直連通信連接傳輸該已傳輸數(shù)據(jù)。
可選地,該已傳輸數(shù)據(jù)在所述待傳輸數(shù)據(jù)中的比例可以為該已傳輸數(shù)據(jù)在該待傳輸數(shù)據(jù)中所占的數(shù)據(jù)量。相應(yīng)地,該預(yù)置的比例閾值可以為預(yù)置的數(shù)據(jù)量的閾值。可選地,可以為該已傳輸數(shù)據(jù)在該待傳輸數(shù)據(jù)中所占的數(shù)據(jù)量的閾值??蛇x地,該已傳輸數(shù)據(jù)在所述待傳輸數(shù)據(jù)中的比例還可以為該已傳輸數(shù)據(jù)在該待傳輸數(shù)據(jù)中所占的百分比。相應(yīng)地,該預(yù)置的比例閾值可以為預(yù)置的百分比的閾值??蛇x地,可以為該已傳輸數(shù)據(jù)在該待傳輸數(shù)據(jù)中所占的百分比的閾值。
需要說明的是,包括但不限于以發(fā)送指令/請求的形式至該第二終端和/或該直連通信集群中的目標(biāo)終端的方式,以用于觸發(fā)該第二終端與該直連通信集群中的目標(biāo)終端之間建立直連通信連接。其中,指令/請求中可以包括不同的內(nèi)容。
可選地,該第一終端確定該已傳輸數(shù)據(jù)的數(shù)據(jù)量;在該已傳輸數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)量閾值時(shí),則發(fā)送第一連接請求,該第一連接請求用于觸發(fā)建立該第二終端與該直連通信集群中的目標(biāo)終端之間的第一直連通信連接;在該已傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值時(shí),則發(fā)送第二連接請求,該第二連接請求用于觸發(fā)建立該第二終端與該直連通信集群中的目標(biāo)終端之間的第二直連通信連接。
舉例來說,若第一終端確定出該已傳輸數(shù)據(jù)的數(shù)據(jù)量為10m,預(yù)置的數(shù)據(jù)量閾值為6m。第一終端可以確定該已傳輸數(shù)據(jù)的數(shù)據(jù)量大于預(yù)置的數(shù)據(jù)量閾值,則發(fā)送第一連接請求。該第一連接請求可以觸發(fā)該第二終端與直連通信集群中的目標(biāo)終端建立第一直連通信連接,如wi-fi連接。
又舉例來說,若該第一終端確定出該已傳輸數(shù)據(jù)的數(shù)據(jù)量為10m,預(yù)置的數(shù)據(jù)量閾值為15m,第一終端可以確定該已傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值,則發(fā)送第二連接請求。該第二連接請求可以觸發(fā)該第二終端與該直連通信集群中的目標(biāo)終端建立第二直連通信連接,如藍(lán)牙連接。
可選地,該直連通信集群中的目標(biāo)終端可以通過如下方式確定:該第一終端確定該直連通信集群中需要接收該待傳輸數(shù)據(jù)的初始終端;該第一終端向各初始終端發(fā)送探測信號;該探測信號用于探測該各初始終端與該第一終端間的信號強(qiáng)度;確定出該各初始終端中與該第一終端間的信號強(qiáng)度小于預(yù)置信號強(qiáng)度閾值的初始終端為目標(biāo)終端。其中,該初始終端不包括確定出的第二終端。該信號強(qiáng)度包括但不限于以數(shù)字,圖標(biāo)等形式呈現(xiàn)。
舉例來說,如圖4所示,若第一終端為終端402,第二終端為終端401。終端402可以確定該直連通信集群中需要接收該待傳輸數(shù)據(jù)的初始終端包括:終端400、終端403、終端404,則終端402分別發(fā)送探測信號至終端400、終端403、終端404,以測試終端402與終端400間的信號強(qiáng)度,終端402與終端403間的信號強(qiáng)度,終端402與終端404間的信號強(qiáng)度。若測試到終端402與終端400間的信號強(qiáng)度為80,終端402與終端400間的信號強(qiáng)度為60,終端402與終端400間的信號強(qiáng)度為30。假設(shè)預(yù)置信號強(qiáng)度閾值為50,則可以確定終端400為目標(biāo)終端,以便終端400與終端401之間建立直連通信連接,并傳輸待傳輸數(shù)據(jù)。
可選地,該第一終端可以確定該待傳輸數(shù)據(jù)的數(shù)據(jù)量。在待傳輸數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)量閾值時(shí),通過該第一終端與第二終端建立的第一直連通信連接將該待傳輸數(shù)據(jù)發(fā)送至第二終端。在該待傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值時(shí),可以通過該第一終端與第二終端建立的第二直連通信連接將該待傳輸數(shù)據(jù)發(fā)送至第二終端。
舉例來說,若第一終端確定出該待傳輸數(shù)據(jù)的數(shù)據(jù)量為10m,預(yù)置的數(shù)據(jù)量閾值為6m。第一終端可以確定該待傳輸數(shù)據(jù)的數(shù)據(jù)量大于預(yù)置的數(shù)據(jù)量閾值,則通過與該第二終端建立的第一直連通信連接,如wi-fi連接,傳輸該待傳輸數(shù)據(jù)。
再舉例來說,若該第一終端確定出該待傳輸數(shù)據(jù)的數(shù)據(jù)量為10m,預(yù)置的數(shù)據(jù)量閾值為15m,第一終端可以確定該待傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值,則通過與該第二終端建立的第二直連通信連接,如藍(lán)牙連接,傳輸該待傳輸數(shù)據(jù)。
可見,圖3所示的實(shí)施例中,第一終端可以在確定該第一終端的性能信息小于對應(yīng)預(yù)置的閾值時(shí),可以確定出第二終端,并可以已傳輸數(shù)據(jù)在待傳輸數(shù)據(jù)中的比例大于或者等于預(yù)置的比例閾值時(shí),可以發(fā)送通知消息至第二終端,從而可以由該第二終端將該已傳輸數(shù)據(jù)發(fā)送至目標(biāo)終端,實(shí)現(xiàn)了在終端可以根據(jù)自身性能狀態(tài)來選取合適的終端,繼續(xù)數(shù)據(jù)的傳輸,保障了數(shù)據(jù)傳輸?shù)倪B續(xù)性和完整性,并且可以通過多終端的協(xié)作數(shù)據(jù)傳輸來提高數(shù)據(jù)傳輸?shù)男省?/p>
請參閱圖5,為本發(fā)明再一實(shí)施例提供的一種數(shù)據(jù)傳輸方法的流程示意圖。其中,該方法可以應(yīng)用于智能終端,包括但不限于手機(jī)、平板電腦、智能可穿戴設(shè)備等便攜式移動(dòng)設(shè)備。其中,該方法可以包括:
s501、在檢測到第一終端發(fā)送的用于獲取性能信息的請求時(shí),將所述第二終端的性能信息通過與所述第一終端建立的直連通信連接發(fā)送至所述第一終端。
舉例來說,如圖6所示,該直連通信集群中包括終端600、終端601、終端602、終端603、終端604。在該直連通信集群中,若第一終端為終端602,第二終端為終端601,則終端601通過第二直連通信連接,在接收到終端601發(fā)送的用于獲取性能信息的請求時(shí)、終端601將本機(jī)的性能信息發(fā)送至終端602。
本發(fā)明實(shí)施例中,該第二終端可以為第一終端可以根據(jù)該直連通信集群中各個(gè)終端的性能信息確定出的終端。該第二終端可以與該第一終端建立直連通信連接,包括第一直連通信連接和/或第二直連通信連接。
其中,該第二終端可以通過與第一終端建立的第二直連通信連接,如藍(lán)牙連接,來發(fā)送該第二終端的性能信息。該第二終端的性能信息包括但不限于該第二終端的剩余內(nèi)存、剩余電量、存儲空間、傳輸速度等信息。
本發(fā)明實(shí)施例中,該第二直連通信連接包括但不限于射頻連接、藍(lán)牙連接、超聲波連接等無線通信連接。該第一直連通信連接可以為wi-fi連接等無線通信連接。
s502、若接收到所述第一終端發(fā)送的通知消息,則作為發(fā)送端,通過與所述直連通信集群中的目標(biāo)終端建立的直連通信連接,將從所述第一終端接收到的已傳輸數(shù)據(jù)發(fā)送至所述目標(biāo)終端。
可選地,第二終端可以接收第一連接請求,用于觸發(fā)建立該第二終端與該直連通信集群中的目標(biāo)終端之間的第一直連通信連接;或者,第二終端可以接收第二連接請求,用于觸發(fā)建立該第二終端與該直連通信集群中的目標(biāo)終端之間的第二直連通信連接。
舉例來說,如圖6所示,若第一終端為終端602,第二終端為終端601。若終端601接收到終端602發(fā)送的第一連接請求,該連接請求中可以包括終端600的設(shè)備信息,那么可以確定終端600為目標(biāo)終端。則終端601可以通過終端600的設(shè)備信息與終端600之間建立第一直連通信連接,以便終端601可以作為發(fā)送端以傳輸接收到的終端602發(fā)送的已傳輸數(shù)據(jù)。
本發(fā)明實(shí)施例中,該連接請求為各目標(biāo)終端發(fā)送的,或者為所述第一終端發(fā)送的。
可選地,該連接請求根據(jù)已傳輸數(shù)據(jù)的數(shù)據(jù)量的不同,可以為第一終端發(fā)送的第一連接請求,用于觸發(fā)該第二終端與該直連通信集群中的目標(biāo)終端建立第一直連通信連接。該第一連接請求中可以包括該直連通信集群中的目標(biāo)終端的設(shè)備信息,以便該第二終端與該直連通信集群中的目標(biāo)終端建立第一直連通信連接。
可選地,該連接請求根據(jù)已傳輸?shù)臄?shù)據(jù)量的不同,還可以為第一終端發(fā)送的第二連接請求,用于觸發(fā)該第二終端與該直連通信集群中的目標(biāo)終端建立第二直連通信連接。該第二連接請求中可以包括該直連通信集群中的目標(biāo)終端的設(shè)備信息,以便該第二終端與該直連通信集群中的目標(biāo)終端建立第二直連通信連接。
可選地,該連接請求,還可以為該直連通信集群中的目標(biāo)終端發(fā)送的,用于觸發(fā)建立該第二終端與該直連通信集群中的目標(biāo)終端建立直連通信連接。進(jìn)一步可選地,根據(jù)待傳輸數(shù)據(jù)中已傳輸數(shù)據(jù)的數(shù)據(jù)量的不同,該連接請求可以為用于使該第二終端與該目標(biāo)終端建立第一直連通信連接的請求,還可以為用于使第二終端與該目標(biāo)終端建立第二直連通信連接的請求。該連接請求中可以包括該目標(biāo)終端的設(shè)備信息。
可選地,該第一終端可以確定該待傳輸數(shù)據(jù)的數(shù)據(jù)量。在待傳輸數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)量閾值時(shí),第二終端通過與該第一終端建立的第一直連通信連接接收將該待傳輸數(shù)據(jù)。在該待傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值時(shí),第二終端可以通過該第一終端與第二終端建立的第二直連通信連接接收該待傳輸數(shù)據(jù)。該第一終端的已傳輸數(shù)據(jù)可以為該待傳輸數(shù)據(jù),還可以為該待傳輸數(shù)據(jù)中的部分?jǐn)?shù)據(jù)。
舉例來說,若第一終端確定出該待傳輸數(shù)據(jù)的數(shù)據(jù)量為10m,預(yù)置的數(shù)據(jù)量閾值為6m。第一終端可以確定該待傳輸數(shù)據(jù)的數(shù)據(jù)量大于預(yù)置的數(shù)據(jù)量閾值,則第二終端通過與該第一終端建立的第一直連通信連接,如wi-fi連接,接收該待傳輸數(shù)據(jù)。
再舉例來說,若該第一終端確定出該待傳輸數(shù)據(jù)的數(shù)據(jù)量為10m,預(yù)置的數(shù)據(jù)量閾值為15m,第一終端可以確定該待傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值,則第二終端通過與該第一終端建立的第二直連通信連接,如藍(lán)牙連接,接收該待傳輸數(shù)據(jù)。
本發(fā)明實(shí)施例中,在步驟s503中,第二終端若接收到第一終端發(fā)送的通知消息,則可以作為發(fā)送端,通過與該直連通信集群中的目標(biāo)終端建立的直連通信連接,將從該第一終端接收到的已傳輸數(shù)據(jù)發(fā)送至該目標(biāo)終端。
其中,該通知消息可以通于通知第二終端作為發(fā)送端,并通過與該直連通信集群中的目標(biāo)終端建立的直連通信連接發(fā)送該已傳輸數(shù)據(jù)至該目標(biāo)終端。
可見,圖5所示的實(shí)施例中,第二終端可以與直連通信集群中的目標(biāo)終端建立直連通信連接,并將從第一終端接收到的已傳輸數(shù)據(jù)通過與直連通信集群中的目標(biāo)終端建立的直連通信連接,發(fā)送至該目標(biāo)終端,達(dá)到了由性能較佳的終端繼續(xù)數(shù)據(jù)傳輸?shù)哪康?,方便了?shù)據(jù)的傳輸。
請參閱圖7,為本發(fā)明實(shí)施例提供的一種數(shù)據(jù)傳輸裝置的結(jié)構(gòu)示意圖,其中,該裝置可以應(yīng)用于智能終端,包括但不限于,如手機(jī)、平板等便攜式移動(dòng)設(shè)備。具體地,該裝置可以獲取模塊701、確定模塊702、發(fā)送模塊703,還可以包括判斷模塊704。具體地,該裝置可以包括:
獲取模塊701,用于在所述第一終端需要向直連通信集群中的終端傳輸待傳輸數(shù)據(jù)時(shí),獲取所述第一終端的性能信息。
其中,該獲取模塊701可以設(shè)置于處理器中。該第一終端的性能信息包括但不限于第一終端的存儲空間、剩余內(nèi)存、傳輸速度、剩余電量等信息。該待傳輸數(shù)據(jù)可以為第一終端選取的將要傳輸?shù)囊粢曨l文件、圖片、文檔等數(shù)據(jù)。
確定模塊702,用于若確定所述第一終端的性能信息小于對應(yīng)預(yù)置的閾值,則根據(jù)所述直連通信集群中各個(gè)終端的性能信息確定出第二終端。
其中,該確定模塊702可以設(shè)置于處理器中。該各個(gè)終端的性能信息包括但不限于各個(gè)終端的存儲空間、剩余內(nèi)存、剩余電量、傳輸速度等信息。該各個(gè)終端的性能信息可以通過與該直連通信集群中各個(gè)終端建立的第二直連通信連接來獲取。
需要說明的是,包括但不限于以發(fā)送指令/請求的形式至該第二終端和/或該直連通信集群中的目標(biāo)終端的方式,觸發(fā)該第二終端與該直連通信集群中的目標(biāo)終端之間建立直連通信連接。其中,指令/通知消息/請求中可以包括不同的內(nèi)容。
本發(fā)明實(shí)施例中,可以通過發(fā)送第一連接請求、第二連接請求來觸發(fā)建立直連通信連接,并可以攜帶對應(yīng)終端的設(shè)備信息。
發(fā)送模塊703,用于若確定對所述第二終端的已傳輸數(shù)據(jù)在所述待傳輸數(shù)據(jù)中的比例超過預(yù)置的比例閾值,則發(fā)送通知消息至所述第二終端或者所述直連通信集群中的目標(biāo)終端。
其中,該通知消息用于通知該第二終端作為發(fā)送端,并與該目標(biāo)終端之間通過建立的直連通信連接傳輸該已傳輸數(shù)據(jù)。該發(fā)送模塊703可以對應(yīng)于通信接口,如wi-fi模塊、藍(lán)牙模塊、射頻模塊等無線通信模塊。
可選地,該發(fā)送模塊703,可以在確定模塊702確定待傳輸數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)量閾值時(shí),通過該第一終端與第二終端建立的第一直連通信連接將該待傳輸數(shù)據(jù)發(fā)送至第二終端。該發(fā)送模塊703,可以在確定模塊702確定該待傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值時(shí),可以通過該第一終端與第二終端建立的第二直連通信連接將該待傳輸數(shù)據(jù)發(fā)送至第二終端。
可選地,該確定模塊702,還用于確定所述已傳輸數(shù)據(jù)的數(shù)據(jù)量。
可選地,該發(fā)送模塊703,還用于在所述已傳輸數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)量閾值時(shí),則發(fā)送第一連接請求,所述第一連接請求用于觸發(fā)建立所述第二終端與所述直連通信集群中的目標(biāo)終端之間的第一直連通信連接;在所述已傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值時(shí),則發(fā)送第二連接請求,所述第二連接請求用于觸發(fā)建立所述第二終端與所述直連通信集群中的目標(biāo)終端之間的第二直連通信連接。
舉例來說,若該已傳輸數(shù)據(jù)的數(shù)據(jù)量為10m,預(yù)置的數(shù)據(jù)量閾值為6m。確定模塊702可以確定該已傳輸數(shù)據(jù)的數(shù)據(jù)量大于預(yù)置的數(shù)據(jù)量閾值,并通過發(fā)送模塊703發(fā)送第一連接請求。該第一連接請求可以觸發(fā)該第二終端與直連通信集群中的目標(biāo)終端建立第一直連通信連接,如wi-fi連接。
可選地,該確定模塊702,還用于確定所述直連通信集群中需要接收所述待傳輸數(shù)據(jù)的初始終端。
可選地,該發(fā)送模塊703,還用于向各初始終端發(fā)送探測信號;所述探測信號用于探測所述各初始終端與所述第一終端間的信號強(qiáng)度。
其中,該信號強(qiáng)度包括但不限于以數(shù)字、圖標(biāo)等形式表達(dá)出來。該初始終端不包括確定出的第二終端。
可選地,該確定模塊702,還用于確定出所述各初始終端中與所述第一終端間的信號強(qiáng)度小于預(yù)置信號強(qiáng)度閾值的初始終端為目標(biāo)終端。
舉例來說,若第一終端為終端1,第二終端為終端2,確定出的初始終端包括終端3、終端4。終端1與終端3之間的信號強(qiáng)度為60,與終端4之間的信號強(qiáng)度為50,若預(yù)置信號強(qiáng)度閾值為55,則確定模塊702可以確定終端4為目標(biāo)終端。
可選地,判斷模塊704,用于在所述第一終端的性能信息包括剩余電量時(shí),判斷所述剩余電量是否小于預(yù)置的第一電量閾值;在所述第一終端的性能信息包括傳輸速度時(shí),判斷所述傳輸速度是否小于預(yù)置的第一速度閾值。其中,該判斷模塊704可以對應(yīng)設(shè)置在處理器中。
可選地,該確定模塊702,還用于若所述剩余電量小于所述預(yù)置的電量閾值和/或所述傳輸速度小于所述預(yù)置的第一速度閾值,則確定所述第一終端的性能信息小于對應(yīng)預(yù)置的閾值。
舉例來說,假設(shè)第一終端的預(yù)置的第一電量閾值為30%、第一速度閾值為0.5m/s。若該第一終端當(dāng)前的剩余電量為60%,傳輸速度為1m/s,則確定模塊702可以確定第一終端的性能信息不小于對應(yīng)預(yù)置的閾值。若該終端當(dāng)前的剩余電量低于60%,和/或當(dāng)前的傳輸速度小于1m/s,則確定模塊702可以確定該第一終端的性能信息小于對應(yīng)預(yù)置的閾值。
可選地,確定模塊702,具體用于判斷所述直連通信集群中各個(gè)終端的性能信息中的剩余電量是否大于或者等于預(yù)置的第二電量閾值;在確定所述各個(gè)終端中包括剩余電量大于或者等于所述預(yù)置的第二電量閾值的多個(gè)終端時(shí),判斷所述多個(gè)終端的性能信息中的傳輸速度是否大于或者等于預(yù)置的第二速度閾值;選取所述多個(gè)終端中傳輸速度大于或者等于所述預(yù)置的第二速度閾值的終端作為第二終端。
可選地,確定模塊702,具體用于判斷所述直連通信集群中各個(gè)終端的性能信息中的已接收數(shù)據(jù)的數(shù)據(jù)量是否大于或等于預(yù)置的數(shù)據(jù)接收閾值;在確定所述各個(gè)終端中包括已接收數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)接收閾值的多個(gè)終端時(shí),判斷所述多個(gè)終端的性能信息中的傳輸速度是否大于或者等于預(yù)置的第二速度閾值;選取所述多個(gè)終端中傳輸速度大于或者等于所述預(yù)置的第二速度閾值的終端作為第二終端。
可見,圖7所示的實(shí)施例中,第一終端可以在確定該第一終端的性能信息小于對應(yīng)預(yù)置的閾值時(shí),可以確定出第二終端,在發(fā)送至第二終端的已傳輸數(shù)據(jù)在待傳輸數(shù)據(jù)中的比例超過預(yù)置的比例閾值時(shí),可以發(fā)送通知消息至該第二終端以用于通知第二終端作為發(fā)送以傳輸該已傳輸數(shù)據(jù)至目標(biāo)終端,實(shí)現(xiàn)了在終端可以根據(jù)自身性能狀態(tài)來選取合適的終端,繼續(xù)數(shù)據(jù)的傳輸,保障了數(shù)據(jù)傳輸?shù)倪B續(xù)性和完整性,并且可以通過多終端的協(xié)作數(shù)據(jù)傳輸來提高數(shù)據(jù)傳輸?shù)男省?/p>
請參閱圖8,為本發(fā)明再一實(shí)施例提供的一種數(shù)據(jù)傳輸裝置的結(jié)構(gòu)示意圖,其中,該裝置可以應(yīng)用于智能終端,包括但不限于,如手機(jī)、平板等便攜式移動(dòng)設(shè)備。具體地,該裝置可以發(fā)送模塊801,還可以包括接收模塊802。具體地,該裝置可以包括:
發(fā)送模塊801,用于在檢測到第一終端發(fā)送的用于獲取性能信息的請求時(shí),將所述第二終端的性能信息通過與所述第一終端建立的直連通信連接發(fā)送至所述第一終端。
其中,發(fā)送模塊801可以通過該第二終端與第一終端建立的第二直連通信連接,如藍(lán)牙連接,來發(fā)送該第二終端的性能信息。
可選地,所述發(fā)送模塊801還用于若接收到所述第一終端發(fā)送的通知消息,則作為發(fā)送端,通過與所述直連通信集群中的目標(biāo)終端建立的直連通信連接,將從所述第一終端接收到的已傳輸數(shù)據(jù)發(fā)送至所述目標(biāo)終端。
可選地,接收模塊802,用于接收第一連接請求,所述第一連接請求為所述第一終端和/或目標(biāo)終端發(fā)送的,用于觸發(fā)建立所述第二終端與所述直連通信集群中的目標(biāo)終端之間的第一直連通信連接。
可選地,所述接收模塊802,還用于接收第二連接請求,所述第二連接請求為所述第一終端和/或目標(biāo)終端發(fā)送的,用于觸發(fā)建立所述第二終端與所述直連通信集群中的目標(biāo)終端之間的第二直連通信連接。
具體地,該連接請求可以為第一終端發(fā)送的第一連接請求,還可以為第一終端發(fā)送的第二連接請求。除此之外,還可以為目標(biāo)終端發(fā)送的用于使第二終端與目標(biāo)終端間建立第一直連通信連接的請求,還可以是目標(biāo)終端發(fā)送的用于使第二終端與目標(biāo)終端間建立第而直連通信連接的請求。
接收模塊802,用于接收所述第一終端發(fā)送的已傳輸數(shù)據(jù)。
可選地,該第一終端確定該待傳輸數(shù)據(jù)的數(shù)據(jù)量。在待傳輸數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)量閾值時(shí),第二終端通過該第一終端與第二終端建立的第一直連通信連接接收將該待傳輸數(shù)據(jù)。在該待傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值時(shí),第二終端可以通過該第一終端與第二終端建立的第二直連通信連接接收該待傳輸數(shù)據(jù)。
具體地,該連接請求為第一終端發(fā)送的第一連接請求時(shí),發(fā)送模塊801可以通過第一直連通信連接已傳輸數(shù)據(jù)發(fā)送至目標(biāo)終端。該連接請求為第一終端發(fā)送的第二連接請求時(shí),發(fā)送模塊801可以通過第二直連通信連接將已傳輸數(shù)據(jù)發(fā)送至目標(biāo)終端。除此之外,該連接請求為目標(biāo)終端發(fā)送的第一連接請求時(shí),發(fā)送模塊801可以通過第一直連通信連接將已傳輸數(shù)據(jù)發(fā)送至目標(biāo)終端,該連接請求為是目標(biāo)終端發(fā)送的第二連接請求時(shí),發(fā)送模塊801可以通過第二直連通信連接將已傳輸數(shù)據(jù)發(fā)送至各目標(biāo)終端。
其中,該發(fā)送模塊801、接收模塊802可以對應(yīng)于通信接口,如wi-fi模塊、藍(lán)牙模塊、射頻模塊等無線通信模塊。
可見,圖8所示的實(shí)施例中,第二終端可以與直連通信集群中的目標(biāo)終端建立直連通信連接,并將從第一終端接收到的已傳輸數(shù)據(jù)通過直連通信集群中的目標(biāo)終端建立直連通信連接,發(fā)送至直連通信集群中的目標(biāo)終端,達(dá)到了由性能較佳的終端繼續(xù)數(shù)據(jù)傳輸?shù)哪康?,方便了?shù)據(jù)的傳輸。
請參閱圖9,圖9是本發(fā)明實(shí)施例提供的一種終端的結(jié)構(gòu)示意圖,用于執(zhí)行如本申請圖3實(shí)施例中所示的數(shù)據(jù)傳輸方法。具體地,如圖9所示,本發(fā)明實(shí)施例的終端可以包括:至少一個(gè)處理器1000、存儲器3000等組件??蛇x的,該終端還可以包括至少一個(gè)通信接口2000。其中,這些組件通過一條或多條總線4000進(jìn)行通信連接。本領(lǐng)域技術(shù)人員可以理解,圖9中示出的終端的結(jié)構(gòu)并不構(gòu)成對本發(fā)明實(shí)施例的限定,它既可以是總線形結(jié)構(gòu),也可以是星型結(jié)構(gòu),還可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。其中:
處理器1000為終端的控制中心,利用各種接口和線路連接整個(gè)終端的各個(gè)部分,通過運(yùn)行或執(zhí)行存儲在存儲器3000內(nèi)的程序和/或模塊,以及調(diào)用存儲在存儲器3000內(nèi)的數(shù)據(jù)以執(zhí)行終端的各種功能和處理數(shù)據(jù)。處理器1000可以由集成電路(integratedcircuit,簡稱ic)組成,例如可以由單顆封裝的ic所組成,也可以由連接多顆相同功能或不同功能的封裝ic而組成。舉例來說,處理器1000可以僅包括中央處理器(centralprocessingunit,簡稱cpu),也可以是cpu、數(shù)字信號處理器(digitalsignalprocessor,簡稱dsp)、圖形處理器(graphicprocessingunit,簡稱gpu)及各種控制芯片的組合。在本發(fā)明實(shí)施方式中,cpu可以是單運(yùn)算核心,也可以包括多運(yùn)算核心。
通信接口2000可以包括多個(gè)無線通信模塊,如射頻模塊、wi-fi模塊、藍(lán)牙模塊、超聲波模塊等,可以用于建立直連通信集群中各個(gè)終端間的直連通信連接,包括但不限于實(shí)施例中提及的第一直連通信連接、第二直連通信連接。該通信接口2000還可以包括顯示屏,用于輸出用戶界面。
存儲器3000可用于存儲計(jì)算機(jī)程序以及模塊,處理器1000、通信接口2000通過調(diào)用存儲在存儲器3000中的計(jì)算機(jī)程序以及模塊,從而執(zhí)行終端的各項(xiàng)功能應(yīng)用以及實(shí)現(xiàn)數(shù)據(jù)處理。存儲器3000主要包括程序存儲區(qū)和數(shù)據(jù)存儲區(qū),其中,程序存儲區(qū)可存儲操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序等;數(shù)據(jù)存儲區(qū)可存儲根據(jù)終端的使用所創(chuàng)建的數(shù)據(jù)等。在本發(fā)明實(shí)施例中,操作系統(tǒng)可以是android系統(tǒng)、ios系統(tǒng)或windows操作系統(tǒng)等等。
具體地,當(dāng)本發(fā)明實(shí)施例的移動(dòng)終端用于執(zhí)行如本申請圖3所示的數(shù)據(jù)傳輸方法時(shí),處理器1000調(diào)用存儲在存儲器3000中的計(jì)算機(jī)程序,用于執(zhí)行以下步驟:
在所述第一終端需要向直連通信集群中的終端傳輸待傳輸數(shù)據(jù)時(shí),獲取所述第一終端的性能信息;
若確定所述第一終端的性能信息小于對應(yīng)預(yù)置的閾值,則根據(jù)所述直連通信集群中各個(gè)終端的性能信息確定出第二終端;
若確定對所述第二終端的已傳輸數(shù)據(jù)在所述待傳輸數(shù)據(jù)中的比例超過預(yù)置的比例閾值,則通過通信接口2000發(fā)送通知消息至所述第二終端或者所述直連通信集群中的目標(biāo)終端;所述通知消息用于通知所述第二終端作為發(fā)送端,并與所述目標(biāo)終端之間通過建立的直連通信連接傳輸所述已傳輸數(shù)據(jù)。
可選地,處理器1000調(diào)用存儲在存儲器3000中的計(jì)算機(jī)程序,還用于執(zhí)行以下步驟:
確定所述已傳輸數(shù)據(jù)的數(shù)據(jù)量;
在所述已傳輸數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)量閾值時(shí),則發(fā)送第一連接請求,所述第一連接請求用于觸發(fā)建立所述第二終端與所述直連通信集群中的目標(biāo)終端之間的第一直連通信連接;
在所述已傳輸數(shù)據(jù)的數(shù)據(jù)量小于預(yù)置的數(shù)據(jù)量閾值時(shí),則發(fā)送第二連接請求,所述第二連接請求用于觸發(fā)建立所述第二終端與所述直連通信集群中的目標(biāo)終端之間的第二直連通信連接。
可選地,處理器1000調(diào)用存儲在存儲器3000中的計(jì)算機(jī)程序,還用于執(zhí)行以下步驟:
確定所述直連通信集群中需要接收所述待傳輸數(shù)據(jù)的初始終端;
向各初始終端發(fā)送探測信號;所述探測信號用于探測所述各初始終端與所述第一終端間的信號強(qiáng)度;
確定出所述各初始終端中與所述第一終端間的信號強(qiáng)度小于預(yù)置信號強(qiáng)度閾值的初始終端為目標(biāo)終端。
可選地,處理器1000調(diào)用存儲在存儲器3000中的計(jì)算機(jī)程序,還用于執(zhí)行以下步驟:
在所述第一終端的性能信息包括剩余電量時(shí),判斷所述剩余電量是否小于預(yù)置的第一電量閾值;
在所述第一終端的性能信息包括傳輸速度時(shí),判斷所述傳輸速度是否小于預(yù)置的第一速度閾值;
若所述剩余電量小于所述預(yù)置的第一電量閾值和/或所述傳輸速度小于所述預(yù)置的第一速度閾值,則確定所述第一終端的性能信息小于對應(yīng)預(yù)置的閾值。
可選地,處理器1000調(diào)用存儲在存儲器3000中的計(jì)算機(jī)程序,所述根據(jù)所述直連通信集群中各個(gè)終端的性能信息確定出第二終端,用于執(zhí)行以下步驟:
判斷所述直連通信集群中各個(gè)終端的性能信息中的剩余電量是否大于或者等于預(yù)置的第二電量閾值;
在確定所述各個(gè)終端中包括剩余電量大于或者等于所述預(yù)置的第二電量閾值的多個(gè)終端時(shí),判斷所述多個(gè)終端的性能信息中的傳輸速度是否大于或者等于預(yù)置的第二速度閾值;
選取所述多個(gè)終端中傳輸速度大于或者等于所述預(yù)置的第二速度閾值的終端作為第二終端。
可選地,處理器1000調(diào)用存儲在存儲器3000中的計(jì)算機(jī)程序,所述根據(jù)所述直連通信集群中各個(gè)終端的性能信息確定出第二終端,用于執(zhí)行以下步驟:
判斷所述直連通信集群中各個(gè)終端的性能信息中的已接收數(shù)據(jù)的數(shù)據(jù)量是否大于或等于預(yù)置的數(shù)據(jù)接收閾值;
在確定所述各個(gè)終端中包括已接收數(shù)據(jù)的數(shù)據(jù)量大于或等于預(yù)置的數(shù)據(jù)接收閾值的多個(gè)終端時(shí),判斷所述多個(gè)終端的性能信息中的傳輸速度是否大于或者等于預(yù)置的第二速度閾值;
選取所述多個(gè)終端中傳輸速度大于或者等于所述預(yù)置的第二速度閾值的終端作為第二終端。
可見,圖9所示的實(shí)施例中,第一終端可以在確定該第一終端的性能信息小于對應(yīng)預(yù)置的閾值時(shí),確定出第二終端,并在對第二終端的已傳輸數(shù)據(jù)在待傳輸數(shù)據(jù)中的比例超過預(yù)置的比例閾值時(shí),發(fā)送通知消息至第二終端,以用于通知該第二終端將該已傳輸數(shù)據(jù)發(fā)送至目標(biāo)終端,實(shí)現(xiàn)了在終端可以根據(jù)自身性能狀態(tài)來選取合適的終端,繼續(xù)數(shù)據(jù)的傳輸,保障了數(shù)據(jù)傳輸?shù)倪B續(xù)性和完整性,并且可以通過多終端的協(xié)作數(shù)據(jù)傳輸來提高數(shù)據(jù)傳輸?shù)男省?/p>
請參閱圖10,圖10是本發(fā)明再一實(shí)施例提供的一種終端的結(jié)構(gòu)示意圖,用于執(zhí)行如本申請圖5實(shí)施例中所示的數(shù)據(jù)傳輸方法。具體地,如圖10所示,本發(fā)明實(shí)施例的終端可以包括:至少一個(gè)處理器1001存儲器3001等組件??蛇x地,該終端還可以包括至少一個(gè)通信接口2001、其中,這些組件可以通過一條或多條總線4001進(jìn)行通信連接。本領(lǐng)域技術(shù)人員可以理解,圖10中示出的終端的結(jié)構(gòu)并不構(gòu)成對本發(fā)明實(shí)施例的限定,它既可以是總線形結(jié)構(gòu),也可以是星型結(jié)構(gòu),還可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。其中:
處理器1001為終端的控制中心,利用各種接口和線路連接整個(gè)終端的各個(gè)部分,通過運(yùn)行或執(zhí)行存儲在存儲器3001內(nèi)的程序和/或模塊,以及調(diào)用存儲在存儲器3001內(nèi)的數(shù)據(jù)以執(zhí)行終端的各種功能和處理數(shù)據(jù)。處理器1001可以由集成電路(integratedcircuit,簡稱ic)組成,例如可以由單顆封裝的ic所組成,也可以由連接多顆相同功能或不同功能的封裝ic而組成。舉例來說,處理器1001可以僅包括中央處理器(centralprocessingunit,簡稱cpu),也可以是cpu、數(shù)字信號處理器(digitalsignalprocessor,簡稱dsp)、圖形處理器(graphicprocessingunit,簡稱gpu)及各種控制芯片的組合。在本發(fā)明實(shí)施方式中,cpu可以是單運(yùn)算核心,也可以包括多運(yùn)算核心。
通信接口2001可以包括多個(gè)無線通信模塊,如射頻模塊、wi-fi模塊、藍(lán)牙模塊、超聲波模塊等,可以用于建立直連通信集群中各個(gè)終端間的直連通信連接,包括但不限于實(shí)施例中提及的第一直連通信連接、第二直連通信連接。該通信接口2001還可以包括顯示屏,用于輸出用戶界面。
存儲器3001可用于存儲計(jì)算機(jī)程序以及模塊,處理器1001、通信接口2001通過調(diào)用存儲在存儲器3001中的計(jì)算機(jī)程序以及模塊,從而執(zhí)行終端的各項(xiàng)功能應(yīng)用以及實(shí)現(xiàn)數(shù)據(jù)處理。存儲器3001主要包括程序存儲區(qū)和數(shù)據(jù)存儲區(qū),其中,程序存儲區(qū)可存儲操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序等;數(shù)據(jù)存儲區(qū)可存儲根據(jù)終端的使用所創(chuàng)建的數(shù)據(jù)等。在本發(fā)明實(shí)施例中,操作系統(tǒng)可以是android系統(tǒng)、ios系統(tǒng)或windows操作系統(tǒng)等等。
具體地,當(dāng)本發(fā)明實(shí)施例的移動(dòng)終端用于執(zhí)行如本申請圖5所示的數(shù)據(jù)傳輸方法時(shí),處理器1001調(diào)用存儲在存儲器3001中的計(jì)算機(jī)程序,用于執(zhí)行以下步驟:
在檢測到第一終端發(fā)送的用于獲取性能信息的請求時(shí),將所述第二終端的性能信息通過與所述第一終端建立的直連通信連接發(fā)送至所述第一終端;
若通過通信接口2001接收到所述第一終端發(fā)送的通知消息,則作為發(fā)送端,通過與所述直連通信集群中的目標(biāo)終端建立的直連通信連接,通過通信接口2001將從所述第一終端接收到的已傳輸數(shù)據(jù)發(fā)送至所述目標(biāo)終端。
可選地,處理器1001調(diào)用存儲在存儲器3001中的計(jì)算機(jī)程序,還用于執(zhí)行以下步驟:
接收第一連接請求,所述第一連接請求為所述第一終端和/或目標(biāo)終端發(fā)送的,用于觸發(fā)建立所述第二終端與所述直連通信集群中的目標(biāo)終端之間的第一直連通信連接;
或者,接收第二連接請求,所述第二連接請求為所述第一終端和/或目標(biāo)終端發(fā)送的,用于觸發(fā)建立所述第二終端與所述直連通信集群中的目標(biāo)終端之間的第二直連通信連接。
在一個(gè)實(shí)施例中,還提供了一種計(jì)算機(jī)可讀存儲介質(zhì),該計(jì)算機(jī)可讀存儲介質(zhì)存儲有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如本申請圖3或圖5實(shí)施例中所描述的數(shù)據(jù)傳輸方法。
再一個(gè)實(shí)施例中,還提供了一種計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品包括了存儲有計(jì)算機(jī)程序的計(jì)算機(jī)可讀存儲介質(zhì),該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如本申請圖3或圖5的實(shí)施例中所描述的數(shù)據(jù)傳輸方法。
可見,圖10所示的實(shí)施例中,第二終端可以與直連通信集群中的目標(biāo)終端建立直連通信連接,并將從第一終端接收到的已傳輸數(shù)據(jù)通過與直連通信集群中的目標(biāo)終端建立的直連通信連接,發(fā)送至該目標(biāo)終端,達(dá)到了由性能較佳的終端繼續(xù)數(shù)據(jù)傳輸?shù)哪康?,方便了?shù)據(jù)的傳輸。
在上述實(shí)施例中,對各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。
在本發(fā)明所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)模塊或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或模塊的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
所述該作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理模塊,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)模塊上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個(gè)實(shí)施例中的各功能模塊可以集成在一個(gè)處理模塊中,也可以是各個(gè)模塊單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上模塊集成在一個(gè)模塊中。上述集成的模塊既可以采用硬件的形式實(shí)現(xiàn),也可以采用硬件加軟件功能模塊的形式實(shí)現(xiàn)。
上述以軟件功能模塊的形式實(shí)現(xiàn)的集成的模塊,可以存儲在一個(gè)計(jì)算機(jī)可讀取存儲介質(zhì)中。上述軟件功能模塊存儲在一個(gè)存儲介質(zhì)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(processor)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的部分步驟。而前述的存儲介質(zhì)包括:u盤、移動(dòng)硬盤、rom、ram、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
本領(lǐng)域技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,僅以上述各功能模塊的劃分進(jìn)行舉例說明,實(shí)際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。上述描述的裝置的具體工作過程,可以參考前述方法實(shí)施例中的對應(yīng)過程,在此不再贅述。
最后應(yīng)說明的是:以上各實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。