新四季網

移動終端及數據包傳輸方法與流程

2023-12-11 23:54:37 2


本發明涉及通信技術領域,尤其涉及一種移動終端及數據包傳輸方法。



背景技術:

隨著移動通信技術的發展,越來越多的移動終端如智慧型手機具有雙卡雙通的功能,使得用戶在實現語音業務的待機同時,能建立數據業務連接。移動終端通常具有兩個用戶識別卡以及分別與所述兩個用戶識別卡連接的數據機,兩個用戶識別卡全開時,一個用戶識別卡(sim1)可以使用4g(the4thgenerationmobilecommunicationtechnology,第四代移動通信技術),例如lte(longtermevolution,長期演進技術)網絡,另一個用戶識別卡(sim2)僅能使用2g(2-generationwirelesstelephonetechnology,第二代手機通信技術規格)或3g(3rdgeneration,第三代移動通信技術)網絡,sim2不能上4g的原因主要是:移動終端只有一套射頻,兩張卡使用該套射頻是分時復用的關係,並不能同時佔用,由於兩張卡全開時,只有一張卡可以使用4g網絡,另一張卡只能使用2g或3g網絡,導致移動終端中數據傳輸的效率較低。

因此,為了使移動終端可以支持雙lte,以提高數據傳輸效率,移動終端可內置兩個處理晶片,每個處理晶片對應一個數據機,以使移動終端的兩張sim卡連接不同的數據機,從而實現雙lte通信功能。但是,當移動終端中的用戶識別卡是電信卡時,由於電信卡一般都大於數據機之間數據傳輸的臨時緩衝區buffer的容量值,因此buffer無法緩存一個完整的數據包,若是直接進行數據傳輸,容易導致移動終端死機。



技術實現要素:

本發明的主要目的在於提出一種移動終端及數據包傳輸方法,旨在解決現有的數據包傳輸方式,容易導致移動終端死機的技術問題。

為實現上述目的,本發明提供的一種移動終端,所述移動終端包括基於預設接口連接的第一處理晶片和第二處理晶片、與所述第一處理晶片連接的第一射頻模塊、以及與所述第二處理晶片連接的第二射頻模塊,所述第一處理晶片包括第一應用處理器以及與第一用戶識別卡和第二用戶識別卡連接的第一數據機,所述第二處理晶片包括第二應用處理器和第二數據機;

第一數據機,用於通過預設接口接收第二數據機發送的數據包獲取請求時,從第一用戶識別卡或第二用戶識別卡中提取所述數據包獲取請求對應的數據包;

對提取的數據包進行拆分,並對同一個數據包拆分後的各個子數據包添加相同的標識信息;

將添加有標識信息的各個子數據包緩存至所述預設接口的臨時緩衝區buffer中,以供第二數據機從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合。

可選地,所述第一數據機,還用於向第一用戶識別卡或第二用戶識別卡中的片內作業系統發送數據包獲取請求,由所述片內作業系統在第一用戶識別卡或第二用戶識別卡中的文件存儲模塊中提取所述數據包獲取請求對應的數據包,並反饋至所述第一數據機;接收所述片內作業系統反饋的數據包。

可選地,所述第一數據機,還用於確定數據包的容量值;在有數據包的容量值大於預設閾值時,對所述數據包進行拆分,得到各個子數據包;在各個子數據包對應的包頭中添加相同的標識信息。

可選地,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,所述第一數據機,還用於將不同標識信息的各個子數據包按照預設的順序緩存至所述預設接口的buffer中。

可選地,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,所述第一數據機,還用於將相同標識信息的各個子數據包歸為一類;按照類別的順序,依次將同一類的各個子數據包緩存至所述預設接口的buffer中。

此外,為實現上述目的,本發明還提供一種數據包傳輸方法,所述數據包傳輸方法應用於移動終端,所述移動終端包括基於預設接口連接的第一處理晶片和第二處理晶片、與所述第一處理晶片連接的第一射頻模塊、以及與所述第二處理晶片連接的第二射頻模塊,所述第一處理晶片包括第一應用處理器以及與第一用戶識別卡和第二用戶識別卡連接的第一數據機,所述第二處理晶片包括第二應用處理器和第二數據機,所述方法包括:

第一數據機通過預設接口接收第二數據機發送的數據包獲取請求時,從第一用戶識別卡或第二用戶識別卡中提取所述數據包獲取請求對應的數據包;

對提取的數據包進行拆分,並對同一個數據包拆分後的各個子數據包添加相同的標識信息;

將添加有標識信息的各個子數據包緩存至所述預設接口的臨時緩衝區buffer中,以供第二數據機從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合。

可選地,所述從第一用戶識別卡或第二用戶識別卡中提取所述數據包獲取請求對應的數據包的步驟包括:

所述第一數據機向第一用戶識別卡或第二用戶識別卡中的片內作業系統發送數據包獲取請求,由所述片內作業系統在第一用戶識別卡或第二用戶識別卡中的文件存儲模塊中提取所述數據包獲取請求對應的數據包,並反饋至所述第一數據機;

所述第一數據機接收所述片內作業系統反饋的數據包。

可選地,所述對提取的數據包進行拆分,並對同一個數據包拆分後的各個子數據包添加相同的標識信息的步驟包括:

所述第一數據機確定數據包的容量值;

在有數據包的容量值大於預設閾值時,對所述數據包進行拆分,得到各個子數據包;

在各個子數據包對應的包頭中添加相同的標識信息。

可選地,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,所述將添加有標識信息的各個子數據包緩存至所述預設接口的buffer中的步驟包括:

所述第一數據機將不同標識信息的各個子數據包按照預設的順序緩存至所述預設接口的buffer中。

可選地,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,所述將添加有標識信息的各個子數據包緩存至所述預設接口的buffer中的步驟還包括:

所述第一數據機將相同標識信息的各個子數據包歸為一類;

按照類別的順序,依次將同一類的各個子數據包緩存至所述預設接口的buffer中。

本發明提出的技術方案,所述移動終端包括基於預設接口連接的第一處理晶片和第二處理晶片、與所述第一處理晶片連接的第一射頻模塊、以及與所述第二處理晶片連接的第二射頻模塊,所述第一處理晶片包括第一應用處理器以及與第一用戶識別卡和第二用戶識別卡連接的第一數據機,所述第二處理晶片包括第二應用處理器和第二數據機;第一數據機通過預設接口接收第二數據機發送的數據包獲取請求時,先從第一用戶識別卡或第二用戶識別卡中提取所述數據包獲取請求對應的數據包,然後對提取的數據包進行拆分,並對同一個數據包拆分後的各個子數據包添加相同的標識信息,最終將添加有標識信息的各個子數據包緩存至所述預設接口的buffer中,以供第二數據機從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合,以完成數據包的傳輸。本方案在傳輸數據包時,先對待傳輸的數據包進行拆分,再將拆分後的各個子數據包添加相同的標識信息後進行傳輸,使得傳輸的數據包的容量值有所減小,後續對端接收到各個子數據包之後按照相同的標識信息進行重組即可,避免了數據傳輸過程中移動終端死機的情況。

附圖說明

圖1為本發明一實施例的lte網絡架構的示意圖;

圖2為本發明實施例中移動終端的一種硬體結構示意圖;

圖3為本發明數據包傳輸方法第一實施例的流程示意圖;

圖4為圖3中步驟s10的細化流程示意圖。

本發明目的的實現、功能特點及優點將結合實施例,參照附圖做說明。

具體實施方式

應當理解,此處所描述的具體實施例僅僅用以解釋本發明,並不用於限定本發明。需要說明的是,在不衝突的情況下,本發明中的實施例及實施例中的特徵可以相互任意結合。

為了對本發明的技術特徵、目的和效果有更加清楚的理解,現對照附圖詳細說明本發明的具體實施方式。

圖1是本發明一實施例的lte網絡架構的示意圖。本發明一實施例的lte網絡架構包括:一個或多個移動終端(userequipment,ue)100、e-utran(evolvedumtsterrestrialradioaccessnetwork,演進的umts陸地無線接入網)(圖中未標號)、演進分組核心(epc)(圖中未標號)、歸屬訂戶伺服器(hss)107、網絡(例如,網際網路)(圖中未標號)以及電路交換系統(圖中未標號)。

e-utran包括演進b節點(enodeb)101和其它enodeb102。enodeb101提供朝向移動終端100的用戶面和控制面的協議終接。enodeb101可經由x2接口連接到其他enodeb。enodeb101也可稱為基站、基收發機站、無線電基站、無線電收發機、收發機功能、基本服務集、擴展服務集、或其他某個合適的術語。enodeb101為移動終端100提供去往epc的接入點。

enodeb101通過s1接口連接到epc。epc包括移動管理實體(eem)104、其他移動管理實體106、服務網關103,以及分組數據網絡(pdn)網關105。移動管理實體104是處理移動終端100與epc之間的信令的控制節點。移動管理實體104提供承載和連接管理。所有用戶ip分組通過服務網關103來傳遞,服務網關103自身連接到pdn網關105。pdn網關105提供ueip地址分配以及其他功能。pdn網關105連接到網絡,例如,網際網路。

電路交換系統包括交互解決方案模塊(iws)108、移動交換中心(msc)109、基站110和移動站111。在一個方面,電路交換系統可以通過iws和mme(mobilitymanagemententity,移動管理實體)與eps(evolvedpacketsystem,演進的分組系統)進行通信。

圖2為本發明實施例中移動終端100的一種硬體結構示意圖。

在本發明實施例中,移動終端100包括第一處理晶片001和第二處理晶片002,與所述第一處理晶片001連接的第一射頻模塊12、以及與所述第二處理晶片002連接的第二射頻模塊22。其中,第一處理晶片001和第二處理晶片002通過預設接口連接。所述預設接口包括第一預設接口和第二預設接口。第一處理晶片001包括第一應用處理器(applicationprocessor,用ap1表示)10、與第一用戶識別卡13和第二用戶識別卡14連接的第一數據機11(modem1)、rpm(resourcepowermanager,資源電源管理器)15。第二處理晶片002包括第二應用處理器20和第二數據機(modem2)21。用戶識別卡(第一用戶識別卡13和第二用戶識別卡14)為sim(subscriberidentitymodule,用戶識別模塊)卡。

第一應用處理器10和第二應用處理器20的內部框架包括應用層、框架層等,可處理複雜的邏輯操作以及進行任務分配等。在本發明實施例中,應用處理器指android作業系統,以及基於android作業系統的各種apk(androidpackage,安卓安裝包)。

在本發明的實施例中,第一應用處理器10和第二應用處理器20通過第一預設接口實現連接,為用戶提供交互接口,將用戶輸入的操作指令(例如,用戶通過用戶界面輸入的有關啟動視頻通話的操作指令)傳輸給第一數據機11或第二數據機21,以實現兩個應用處理器之間數據的定義與傳遞,例如,進行兩個應用處理器的休眠、喚醒、同步的控制、開關機時晶片啟動順序的控制等。其中,第一預設接口為usb(universalserialbus,通用串行總線)。應當理解的是,在本發明實施例中,usb數據線復用出兩條數據通道,分別用於第一應用處理器10和第二應用處理器20之間用戶數據和控制信令數據的交互,即第一應用處理器10和第二應用處理器20通過usb數據線傳輸的數據包括上述兩種數據。其中,用戶數據包括上網產生的數據,圖片和聊天信息數據;控制信令數據包括開關機的控制數據,開關飛行模式的控制數據,顯示狀態信號的控制數據。

本實施例中,第一應用處理器10和第二應用處理器20通過otg(on-the-go)技術進行數據交互。通過otg技術,移動終端100中的第一數據機11可通過第一用戶識別卡13中的sim卡參數來接入enodeb101,第二數據機21可通過第二用戶識別卡14中的sim卡參數來接入enodeb101;或者第一數據機11通過第二用戶識別卡14中的sim卡參數來接入enodeb101,第二數據機21通過第一用戶識別卡13中的sim卡參數來接入enodeb101。sim卡參數包括但不限於sim卡鑑權數據。

第一數據機11和第二數據機21通過第二預設接口連接。在本發明實施例中,第二預設接口為uart(universalasynchronousreceiver/transmitter,通用異步收發傳輸器)。uart用於第一數據機11和第二數據機21之間sim卡參數的傳輸。其中,uart接口的buffer存在於第一數據機11和第二數據機21的兩端,用buffer1和buffer2表示。需要說明的是,buffer1和buffer2對應著同一個物理地址,通過該物理地址,可控制buffer1和buffer2容量值和狀態的同步變化。

具體地:第二數據機21通過第二射頻模塊22接收到基站發送的sim卡數據獲取請求時,將數據獲取請求傳送至第一數據機11中,由第一數據機11反饋響應的sim卡數據。

其中,所述sim卡數據獲取請求的觸發方式包括兩種:

a、第二數據機21主動註冊lte網絡,以觸發sim卡數據獲取請求;

b、基站側需要鑑權用戶是否合法,將鑑權請求發給第二數據機21,由第二數據機21主動發sim卡數據獲取請求。

第二數據機21通過第二射頻模塊22接收到基站發送的sim卡數據獲取請求時,通過uart將數據獲取請求傳送至第一數據機11中,由第一數據機11根據數據獲取請求從第一用戶識別卡13或第二用戶識別卡14獲取數據,下文以第一數據機11根據數據獲取請求從第一用戶識別卡13中獲取數據為例進行詳述。

需要理解的是,第一用戶識別卡13中包括有cos(chipoperatingsystem,片內作業系統)作業系統和存儲模塊,其中,所述cos作業系統作為存儲模塊的文件代理,根據所述第一數據機11發送的數據獲取請求從所述存儲模塊中提取數據,所述存儲模塊用來存儲數據。即,本發明實施例中,第一數據機11是無法與第一用戶識別卡13內部的存儲模塊進行交互以獲取數據,只能通過cos作業系統進行獲取。因此,當所述第一數據機11將數據獲取請求發送至第一用戶識別卡13時,第一用戶識別卡13內部的cos作業系統解析出所述數據獲取請求的地址信息,然後根據所述地址信息,從所述存儲模塊中獲取所述地址信息對應的數據。當所述cos作業系統從存儲模塊中獲取到數據之後,將獲取的數據反饋至所述第一數據機11。

第一數據機11在獲取到cos作業系統反饋的數據之後,將數據通過uart發送給第二數據機21,最終第二數據機21通過第二射頻模塊22將數據上傳至基站,以完成鑑權。

由於上文已經說明,buffer1和buffer2對應著同一個物理地址,因此第一數據機11將提取的數據包緩存至buffer1時,數據包通過該uart發送至buffer2中緩存,第二數據機21在buffer2中檢測到該數據包時,即可獲取到該數據包,以實現數據包的傳輸。

可以理解的是,通過第一預設接口和/或第二預設接口,即可可實現第一處理晶片001和第二處理晶片002之間的連接。

第一數據機11和第二數據機21包含各種網絡交互的網絡制式的協議棧,協議棧包含lte(longtermevolution,長期演進)/wcdma(widebandcodedivisionmultipleaccess,寬帶碼分多址)/gsm(globalsystemformobilecommunication,全球移動通信系統)/td-scdma(timedivision-synchronouscodedivisionmultipleaccess,同步時分碼分多址)/cdma(codedivisionmultipleaccess,碼分多址)/edge(enhanceddatarateforgsmevolution,強型數據速率gsm演進技術)等通訊標準裡邊規定的協議代碼。移動終端100通過協議與運營商網絡進行交互,即進行數據流量上網、volte(voiceoverlte)打電話或者cs(circuitswitched,電路交換)域打電話。第一數據機11和第二數據機21還用於對sim卡的管控等等。

在本發明實施例中,第一射頻模塊12用於將第一處理晶片001傳輸的數據處理後傳給enodeb101(基站網絡),以及用於將enodeb101傳輸的數據處理後傳給第一處理晶片001。第二射頻模塊22用於將第二處理晶片002傳輸的數據處理後傳給enodeb101(基站網絡),以及用於將enodeb101傳輸的數據處理後傳給第二處理晶片002。

第一射頻模塊12和第二射頻模塊22所涉及的無線接入技術可以包括lte、gsm、gprs(generalpacketradioservice,通用分組無線服務)、cdma、edge、wlan(wirelesslocalareanetworks,無線區域網)、cdma-2000、td-scdma、wcdma、wifi(wirelessfidelity,無線保真)等等。

移動終端100中的第一用戶識別卡13和第二用戶識別卡14存儲不同的無線通信標準相關聯的用戶信息。應當理解,目前的移動終端只有一套射頻,移動終端內部的兩個用戶識別卡使用該套射頻是分時復用的關係,並不能同時佔用。例如,在兩張用戶識別卡全開時,一張卡可以處理gsm通話,另一張卡只能處理4g網絡信息,具體哪個用戶識別卡執行何種網絡,不做限定。因此目前的射頻雙卡分時復用這種架構僅做到了lte+gsm(即一張用戶識別卡對應的技術標準為lte,另一張用戶識別卡對應的技術標準為gsm)。

也就是說,現有的移動終端100雖然可以支持雙用戶識別卡,但是移動終端100在註冊網絡的情況下,兩個用戶識別卡支持的是不同技術標準的網絡,一個支持2g或3g,另一個支持4g,會使得移動終端100使用過程中,上網流量速度較慢,因此本發明中,移動終端100通過預設接口連接第一處理晶片001和第二處理晶片002,由於第二處理晶片002包括第二數據機21、並連接第二射頻模塊22,且第二射頻模塊22支持4g網絡。因此,移動終端100可通過第一處理晶片001和第二處理晶片002具備雙lte功能。

在本實施例中,第一用戶識別卡13和第二用戶識別卡14用於提供移動通信業務(cs語音業務、ps數據業務和ps語音業務)所需的相關數據,並在其內部存儲用戶信息、短消息、執行鑑權算法和產生加密密匙等。

用戶識別卡(第一用戶識別卡13和第二用戶識別卡14)與移動終端100交互時,移動終端100檢測該用戶識別卡存在與否的信號只在開機瞬時產生,當開機檢測不到用戶識別卡存在時,移動終端100將提示「插入用戶識別卡」。移動終端100開機之後,移動終端100和用戶識別卡之間28秒通信一次,完成一些固定的通信檢查(例如,用戶識別卡是否在位等)。

在本發明的實施例中,第一用戶識別卡13和第二用戶識別卡14承載信息,並且根據外界請求返回對應卡參數,以及對網絡進行鑑權運算,第一射頻模塊12和第二射頻模塊22所涉及的無線接入技術為lte。當第一應用晶片001和第二應用晶片002連接時,第一用戶識別卡13可通過移動終端100中的第一數據機11支持lte,而第二用戶識別卡14通過第二數據機21支持lte;或者,第一用戶識別卡13可通過第二數據機21支持lte,而第二用戶識別卡14通過第一數據機11支持lte,以實現移動終端100可支持雙lte。

移動終端100中的rpm15用於管控各種資源,包括時鐘資源、總線資源、pmic(powermanagementic,電源管理集成電路,即各個晶片的電壓)、ddr(內存分配),以及管理晶片的休眠喚醒的中斷和應用處理器喚醒的截止時間。移動終端100的各個子系統,在需要資源時,向rpm15申請資源,各個子系統分別包括第一應用處理器10,第一數據機11、pronto(wifi/藍牙、nfc(nearfieldcommunication,近場通信)等)、lpass(lowpoweraudiosubsystem,低功耗音頻子系統),rpm15用來決定移動終端100系統的休眠狀態,具體是,rpm15基於各個子系統的投票機制實現,當各個子系統都投休眠票時,rpm15才可以使移動終端100整個系統進行休眠。在移動終端100的整個系統休眠之後,若是要重新啟動運行,第二處理晶片002可自動喚醒,但是第一處理晶片001需要第二處理晶片002喚醒,以進行數據的傳輸交互。

在本發明實施例中,第一處理晶片001和第二處理晶片002之間通過預設接口連接的情況下,喚醒方式可為以下三種:

1、第一應用處理器10接收到控制信令數據時,通過usb接口傳送探測包給第二應用處理器20,以喚醒第二應用處理器20。

2、第二數據機21接收到用戶數據時,喚醒第二應用處理器20,由第二應用處理器20通過usb接口傳送探測包給第一應用處理器10,以喚醒第一應用處理器10。

3、第二數據機21周期性查找尋呼請求,以主動激活自己,若接收到尋呼請求,喚醒第二應用處理器20,由第二應用處理器20通過usb接口發送探測包給第一應用處理器10,以喚醒第二應用處理器20。

此外,第二數據機21還可以定期喚醒自己,以在移動終端100進行位置更新時,跟基站進行握手交互,此時不需要喚醒第一應用處理器10。

在本發明實施例中,移動終端包括但不限於手機、pc(personalcomputer,個人電腦)或pad(personaldigitalassistant,個人數字助理)。

需要說明的是,傳輸的數據包為用戶數據或控制信令數據時,用戶數據或控制信令數據在應用處理器之間傳輸;當傳輸的數據包為用戶識別卡數據即sim卡數據時,sim卡數據只會在數據機之間傳輸;由於本發明實施例主要針對電信卡即sim卡傳輸數據導致終端死機的情況,因此本實施例中的數據包主要是在數據機之間傳輸的數據包。

本實施例中,sim卡包括移動卡、聯通卡和電信卡,其中,移動卡和聯通卡是指採用3gpp標準協議進行通訊的電話卡,3gpp標準協議規定了電話卡傳輸數據包的容量不能超出一定值,該值設置為512個字節;而電信卡是指採用3gpp2標準協議的電話卡,gpp2標準協議對電信卡傳輸的數據包的容量未做限制,電信卡傳輸的數據包的容量一般會超出512位元組。其中,移動卡是由中國移動(運營商)向用戶提供的sim卡,聯通卡是由中國聯通(運營商)向用戶提供的sim卡,電信卡是由中國電信(運營商)向用戶提供的sim卡。

由於現有的buffer的容量一般都不超過512個字節。因此,當移動終端100中的第一用戶識別卡13和第二用戶識別卡14都是移動卡或者是聯通卡時,由於移動卡或者是聯通卡收發數據包的數據容量小於512個字節的,因此,第一數據機11接收到數據包獲取請求時,從第一用戶識別卡13和第二用戶識別卡14獲取到的數據包也是小於512個字節,相應的,存儲到buffer的數據包也是小於512個字節的,因此,數據包可完整的存儲到buffer中,後續,第二數據機21也可以取出一個完整的數據包。

但是,由於電信卡一般大於512位元組,因此,在第一數據機11和第二數據機21的數據交互過程中,若是第一數據機11中連接的是電信卡,會出現這樣的情況:

以圖2為例,在第一用戶識別卡13和第二用戶識別卡14為電信卡的情況下,移動終端100的第一數據機11從第一用戶識別卡13中或第二用戶識別卡14提取出一個數據包,由於該數據包大於512位元組,而buffer一次性只能緩存不超過512位元組的數據包,這種情況下,會由於無法轉發大數據包導致移動終端的系統死機。

基於上述lte網絡的架構圖、移動終端100的硬體結構示意圖以及現有技術存在的問題,提出本發明的各個實施例。

參照圖2,本實施例提出一種移動終端,所述移動終端包括基於預設接口連接的第一處理晶片001和第二處理晶片002、與所述第一處理晶片001連接的第一射頻模塊12、以及與所述第二處理晶片002連接的第二射頻模塊22,所述第一處理晶片001包括第一應用處理器10以及與第一用戶識別卡13和第二用戶識別卡14連接的第一數據機11,所述第二處理晶片002包括第二應用處理器20和第二數據機21;

第一數據機11,用於通過預設接口接收第二調製解調21器發送的數據包獲取請求時,從第一用戶識別卡13或第二用戶識別卡14中提取所述數據包獲取請求對應的數據包;

對提取的數據包進行拆分,並對同一個數據包拆分後的各個子數據包添加相同的標識信息;

將添加有標識信息的各個子數據包緩存至所述預設接口的臨時緩衝區buffer中,以供第二數據機21從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合。

在本實施例中,所述第一數據機11通過預設接口接收第二數據機21發送的數據包獲取請求,後續也是通過所述預設接口將數據包反饋至所述第二數據機21。所述預設接口為uart接口。

其中,當第二處理晶片002的第二數據機21通過第二射頻模塊22接收到基站發送的數據包獲取請求時,先通過uart將數據包獲取請求傳送給第一處理晶片001的第一數據機11;第一數據機11接收到該數據包獲取請求後,根據數據包獲取請求從第一用戶識別卡13或第二用戶識別卡14中獲取數據包;第一數據機11在獲取到數據包之後,為了保證傳輸的數據包不會大於uart的buffer的容量值,先對獲取的數據包進行拆分,得到拆分後的各個子數據包,為了防止後續轉發的數據包不完整,所述數據機11對同一個數據包拆分後的各個子數據包添加相同的標識信息;再將添加有標識信息的各個子數據包緩存至uart的buffer中,以傳送至第二數據機21;第二數據機21從buffer中提取出各個子數據包,再按照相同的標識信息進行子數據包的組合,以得到完整的數據包,最終通過第二射頻模塊22將組合的數據包上傳至基站,以完成數據包的傳輸。

具體地,所述第一數據機11,還用於向第一用戶識別卡13或第二用戶識別卡14中的片內作業系統發送數據包獲取請求,由所述片內作業系統在第一用戶識別卡13或第二用戶識別卡14中的文件存儲模塊中提取所述數據包獲取請求對應的數據包,並反饋至所述第一數據機11;接收所述片內作業系統反饋的數據包。

在本實施例中,需要說明的是,第一用戶識別卡13或第二用戶識別卡14中的數據包存儲在文件存儲模塊中,當第一數據機11要獲取第一用戶識別卡13或第二用戶識別卡14中的數據包時,第一數據機11不會直接與第一用戶識別卡13或第二用戶識別卡14中的文件存儲模塊交互,而是先向第一用戶識別卡13或第二用戶識別卡14中的cos(chipoperatingsystem,片內作業系統)作業系統發送數據包獲取請求即request,然後第一用戶識別卡13或第二用戶識別卡14的cos作業系統基於該request在文件存儲模塊中獲取數據包,然後將獲取的數據包再傳輸給第一數據機11,第一數據機11隻要接收cos作業系統反饋的數據包即可實現數據包的獲取過程。

可以理解,由於第一數據機11無法在第一用戶識別卡13或第二用戶識別卡14中的文件存儲模塊直接提取數據包,因此通過與第一用戶識別卡13或第二用戶識別卡14的cos作業系統進行交互,以實現數據包的提取,保證後續的數據保的傳輸過程正常運行。

當第一數據機11從第一用戶識別卡13或第二用戶識別卡14中提取出數據包獲取請求對應的數據包之後,再對提取的數據包進行拆分,本實施例中,所述第一數據機11對數據包進行拆分的方式,可選為:對數據包進行解析,以得到數據包對應的數據,然後按照預設容量值對數據進行分解,以將數據拆分成多個所述預設容量值的數據段,再將拆分後的各個數據段進行封包操作,以得到各個子數據包。其中,所述預設容量值可設置為512位元組,在其它實施例中,也可設置為其它值,只要保證後續各個子數據包的容量值小於512位元組即可,此處不做限定。

第一數據機11對數據包進行拆分以得到各個子數據包之後,即可對數據包拆分後的各個子數據包添加相同的標識信息,最終將添加有標識信息的各個子數據包緩存至uart的buffer中,以供第二數據機21從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合,以完成數據包的傳輸。

本實施例中需要說明的是,buffer存在於uart接口的兩端,即uart接口的兩端分別設置有buffer1和buffer2。當第二數據機21通過第二射頻模塊22接收到基站發送的數據獲取請求時,將數據包獲取請求通過uart接口發送給第一數據機11,第一數據機11從第一用戶識別卡13或第二用戶識別卡14提取出數據包之後,先將提取的數據包存儲到buffer1中,以通過uart傳輸至第二數據機21的buffer2中,第二數據機21再從buffer2中獲取數據包。

本實施例提出的移動終端,第一數據機通過預設接口接收第二數據機發送的數據包獲取請求時,先從第一用戶識別卡或第二用戶識別卡中提取所述數據包獲取請求對應的數據包,然後對提取的數據包進行拆分,並對同一個數據包拆分後的各個子數據包添加相同的標識信息,最終將添加有標識信息的各個子數據包緩存至所述預設接口的buffer中,以供第二數據機從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合,以完成數據包的傳輸。本方案在傳輸數據包時,先對待傳輸的數據包進行拆分,再將拆分後的各個子數據包添加相同的標識信息後進行傳輸,使得傳輸的數據包的容量值有所減小,後續對端接收到各個子數據包之後按照相同的標識信息進行重組即可,避免了數據傳輸過程中移動終端死機的情況。

進一步地,基於第一實施例提出本發明移動終端第二實施例。

移動終端第二實施例與移動終端第一實施例的區別在於,

所述第一數據機11,還用於確定數據包的容量值;在有數據包的容量值大於預設閾值時,對所述數據包進行拆分,得到各個子數據包;在各個子數據包對應的包頭中添加相同的標識信息。

在本實施例中,當第二數據機21向第一數據機11發送數據包獲取請求(request)時,若第一用戶識別卡13或第二用戶識別卡14為電信卡,且第一數據機11從所述第一用戶識別卡13或所述第二用戶識別卡14中提取的數據包大於預設閾值如512位元組,所述第一數據機11可確定數據包的容量值大於預設閾值,此時由於buffer一次性只能緩存不超過512位元組的數據包,因此第一數據機11需要先將提取的數據包進行拆分,以拆分成多個子數據包,然後再將多個子數據包存儲到buffer中進行轉發。

在本實施例中,第一數據機11提取的數據包可以為一個或多個,在提取的數據包包括多個時,所述第一數據機11可同時對多個數據包進行拆分,或者按照各個數據包的提取順序進行拆分。

具體地,所述第一數據機11拆分數據包時,先在拆分後的各個子數據包的包頭中添加相同的標識信息,該標識信息優選是第一數據機11拆分數據包時根據拆分後的數據包執行封包操作所添加的,封包就是給一段數據加上包頭,這樣一來數據包就分為包頭和包體兩部分內容。

本實施例中需要說明的是,包頭實際上是大小固定的結構體,其中有個結構體成員變量包括拆分後子包體的長度,以及我們定義的拆分標識信息flag,可以理解,由一個大包拆分出的多個子包具有相同的flag標識,該flag標識的具體標識信息不限於包名或者預設欄位信息,可根據實際情況設置,此處不做限定。第一數據機11執行完封包操作後,再將添加有相同標識信息的數據包依次存儲到buffer中。

為更好理解,舉例如下:當前連著要傳輸三個電信卡的數據包,第一個大數據包拆分成各個子數據包後,將flag都標識都設置為0xf9f9,第二個大數據包拆分成各個子數據包後,將flag標識都設置為0x9f9f,第三個大數據包拆分成各個子數據包後,將各個子包的flag標識都設置為0xf9f9,這樣三個數據包標識就可以區分開來,後續接收端即第二數據機21即可將flag標識相同的各個子數據包進行歸類並重組成三個大數據包。

本實施例中,在確定數據包的容量值大於預設閾值時,才執行拆分操作,防止數據包小於預設閾值時也進行拆分操作造成系統資源的浪費,而在對數據包進行拆分操作後,將同一個數據包拆分後的各個子數據包添加相同的標識信息,後續對端可根據相同的標識信息進行重組,防止轉發的數據包不完整,提高了數據包轉發準確性。

進一步地,基於第一實施例提出本發明移動終端第三實施例。

移動終端第三實施例與移動終端第一實施例的區別在於,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,所述第一數據機11,還用於將不同標識信息的各個子數據包按照預設的順序緩存至所述預設接口的buffer中。

在本實施例中,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,此時,所述第一數據機11可將不同標識信息的各個子數據包按照預設順序緩存至所述預設接口的buffer中。本實施例中,所述隨機順序優先與各個子數據包的生成順序一致,即在第一數據機11根據數據包拆分出一個子數據包,並對子數據包添加有標識信息之後,即可將該子數據包緩存至uart接口的buffer中。

應當理解的是,若當前提出的數據包包括多個數據包,那麼拆分得到的子數據包也包括多個,並且不同數據包拆分後的子數據對應的標識信息不同,因此,當拆分後的各個子數據包對應不同的標識信息時,所述第一數據機11可將不同標識信息的各個子數據包按照子數據包的生成順序依次緩存至所述uart接口的buffer中。後續,所述第二數據機21從所述buffer中提取各個子數據包後,按照相同的標識信息進行子數據包的組合的方式為:第二數據機21從buffer中提取出各個子數據包,將提取的各個子數據包存儲至預設空間,然後在buffer中的各個子數據包提取完成後,依次識別提取的各個子數據包的標識信息,以將標識信息相同的子數據包合成一個大數據包。

為更好理解本實施例,舉例如下:

第一數據機11基於數據包獲取請求提取出x、y、z三個數據包時,對每個數據包進行拆分,以得到每個數據包對應的多個子數據包,如x數據包對應x1、x2、和x3,y數據包對應y1、y2、和y3,z數據包對應z1、z2、和z3,此時,若各個子數據包的生成順序依次是x1、z1、x2、y1……,那麼,緩存到buffer的各個子數據包是就按照x1、z1、x2、y1的順序依次存儲。這種情況下,當第二數據機21從buffer中提取子數據包時,先將提取的各個子數據包預存起來,在提取完成後,依次識別提取的各個子數據包的標識信息,再將標識信息相同的子數據包合成一個大數據包,並通過第二射頻模塊23將合成後的大數據包上傳至基站。

在本實施例中,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,將不同標識信息的各個子數據包按照預設順序緩存至所述預設接口的buffer中,不需要非得同一個數據包拆分後的各個子數據包齊全之後,再全部緩存至uart接口的buffer中,而是先拆分出的子數據包先緩存,提高了數據包傳輸的靈活性。

進一步地,基於第三實施例提出本發明數據包傳輸方法第四實施例。

數據包傳輸方法第四實施例與數據包傳輸方法第三實施例的區別在於,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,所述第一數據機,還用於將相同標識信息的各個子數據包歸為一類;按照類別的順序,依次將同一類的各個子數據包緩存至所述預設接口的buffer中。

在本實施例中,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,所述第一數據機11可先將相同標識信息的各個子數據包歸為一類,然後按照類別的順序,依次將同一類的各個子數據包緩存至所述預設接口的buffer中。本實施例中,類別的順序優選為先歸為一類的順序,也就是說,即使第一數據機11提取的數據包包括多個數據包,並且對每個數據包拆分後得到對應的各個子數據包,所述第一數據機還是可以先將相同標識信息的各個子數據包歸為一類,然後將按照類別的順序,將同一類的各個子數據包依次緩存至所述預設接口的buffer中,即將先歸為一類的子數據包緩存至所述預設接口的buffer中,最終完成所有類別的子數據包的緩存。

後續,所述第二數據機21從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合的方式包括:第二數據機21從buffer中提取出子數據包,依次識別子數據包的標識信息,在識別到有新的子數據包與上一個子數據包的標識信息相同時,將該當前識別的子數據包與上一個子數據包歸為一類,並繼續識別下一個子數據包,直達識別到的子數據包與上一個子數據包的標識信息不同時,將之前標識信息相同的各個子數據包合成一個大數據包。

為更好理解本實施例,舉例如下:

第一數據機11基於數據包獲取請求提取出x、y、z三個數據包時,對每個數據包進行拆分,以得到每個數據包對應的多個子數據包,如x數據包對應x1、x2、和x3,y數據包對應y1、y2、和y3,z數據包對應z1、z2、和z3,此時,將x1、x2、和x3歸為一類,然後確定三類數據包哪類先拆分完成,若此時x類先拆分完成,即可將x1、x2、和x3依次緩存至所述uart的buffer中。後續,所述第二數據機21從所述buffer中提取各個子數據包之後,將x1、x2、和x3歸為一類,並繼續識別下一個子數據包,若識別到下一個是y1,則將之前x1、x2、和x3的各個子數據包合成一個大數據包。

在本實施例中,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,將相同標識信息的各個子數據包歸為一類,最終按照類別的順序,依次將同一類的各個子數據包緩存至所述預設接口的buffer中,使得子數據包的傳輸,是按照順序緩存的,防止子數據包出現遺漏的情況,提高了數據包傳輸的準確性。

綜上所述,本發明實施例中,在移動終端100中的電信卡傳輸的數據包較大時,第一數據機11對數據包進行拆分,以改變數據包的期望值,後續緩存到buffer的數據包就不會超出buffer的容量值,那麼,避免了大數據包傳輸導致死機的問題,同時對拆分成多個子數據包添加相同的標識信息,第二數據機21可根據標識信息進行重組,使得後續轉發的數據包是完整的數據包,避免了數據包轉發不完整的情況。

本發明進一步提供一種數據包傳輸方法。

參照圖3,圖3為本發明數據包傳輸方法第一實施例的流程示意圖。

本實施例提出一種數據包識別方法,在本實施例中,提供了數據包傳輸方法的實施例,需要說明的是,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同於此處的順序執行所示出或描述的步驟。

本發明中,數據包傳輸方法應用於移動終端,所述移動終端包括基於預設接口連接的第一處理晶片001和第二處理晶片002、與所述第一處理晶片001連接的第一射頻模塊12、以及與所述第二處理晶片002連接的第二射頻模塊22,所述第一處理晶片001包括第一應用處理器10以及與第一用戶識別卡13和第二用戶識別卡14連接的第一數據機11,所述第二處理晶片002包括第二應用處理器20和第二數據機21,所述方法包括:

步驟s10,第一數據機通過預設接口接收第二數據機發送的數據包獲取請求時,從第一用戶識別卡或第二用戶識別卡中提取所述數據包獲取請求對應的數據包;

步驟s20,對提取的數據包進行拆分,並對同一個數據包拆分後的各個子數據包添加相同的標識信息;

步驟s30,將添加有標識信息的各個子數據包緩存至所述預設接口的臨時緩衝區buffer中,以供第二數據機從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合。

在本實施例中,所述第一數據機11通過預設接口接收第二數據機21發送的數據包獲取請求,後續也是通過所述預設接口將數據包反饋至所述第二數據機21。所述預設接口為uart接口。

其中,當第二處理晶片002的第二數據機21通過第二射頻模塊22接收到基站發送的數據包獲取請求時,先通過uart將數據包獲取請求傳送給第一處理晶片001的第一數據機11;第一數據機11接收到該數據包獲取請求後,根據數據包獲取請求從第一用戶識別卡13或第二用戶識別卡14中獲取數據包;第一數據機11在獲取到數據包之後,為了保證傳輸的數據包不會大於uart的buffer的容量值,先對獲取的數據包進行拆分,得到拆分後的各個子數據包,為了防止後續轉發的數據包不完整,所述數據機11對同一個數據包拆分後的各個子數據包添加相同的標識信息;再將添加有標識信息的各個子數據包緩存至uart的buffer中,以傳送至第二數據機21;第二數據機21從buffer中提取出各個子數據包,再按照相同的標識信息進行子數據包的組合,以得到完整的數據包,最終通過第二射頻模塊22將組合的數據包上傳至基站,以完成數據包的傳輸。

具體地,參照圖4,所述步驟s10包括:

步驟s11,所述第一數據機向第一用戶識別卡或第二用戶識別卡中的片內作業系統發送數據包獲取請求,由所述片內作業系統在第一用戶識別卡或第二用戶識別卡中的文件存儲模塊中提取所述數據包獲取請求對應的數據包,並反饋至所述第一數據機;

步驟s12,所述第一數據機接收所述片內作業系統反饋的數據包。

在本實施例中,需要說明的是,第一用戶識別卡13或第二用戶識別卡14中的數據包存儲在文件存儲模塊中,當第一數據機11要獲取第一用戶識別卡13或第二用戶識別卡14中的數據包時,第一數據機11不會直接與第一用戶識別卡13或第二用戶識別卡14中的文件存儲模塊交互,而是先向第一用戶識別卡13或第二用戶識別卡14中的cos(chipoperatingsystem,片內作業系統)作業系統發送數據包獲取請求即request,然後第一用戶識別卡13或第二用戶識別卡14的cos作業系統基於該request在文件存儲模塊中獲取數據包,然後將獲取的數據包再傳輸給第一數據機11,第一數據機11隻要接收cos作業系統反饋的數據包即可實現數據包的獲取過程。

可以理解,由於第一數據機11無法在第一用戶識別卡13或第二用戶識別卡14中的文件存儲模塊直接提取數據包,因此通過與第一用戶識別卡13或第二用戶識別卡14的cos作業系統進行交互,以實現數據包的提取,保證後續的數據保的傳輸過程正常運行。

當第一數據機11從第一用戶識別卡13或第二用戶識別卡14中提取出數據包獲取請求對應的數據包之後,再對提取的數據包進行拆分,本實施例中,所述第一數據機11對數據包進行拆分的方式,可選為:對數據包進行解析,以得到數據包對應的數據,然後按照預設容量值對數據進行分解,以將數據拆分成多個所述預設容量值的數據段,再將拆分後的各個數據段進行封包操作,以得到各個子數據包。其中,所述預設容量值可設置為512位元組,在其它實施例中,也可設置為其它值,只要保證後續各個子數據包的容量值小於512位元組即可,此處不做限定。

第一數據機11對數據包進行拆分以得到各個子數據包之後,即可對數據包拆分後的各個子數據包添加相同的標識信息,最終將添加有標識信息的各個子數據包緩存至uart的buffer中,以供第二數據機21從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合,以完成數據包的傳輸。

本實施例中需要說明的是,buffer存在於uart接口的兩端,即uart接口的兩端分別設置有buffer1和buffer2。當第二數據機21通過第二射頻模塊22接收到基站發送的數據獲取請求時,將數據包獲取請求通過uart接口發送給第一數據機11,第一數據機11從第一用戶識別卡13或第二用戶識別卡14提取出數據包之後,先將提取的數據包存儲到buffer1中,以通過uart傳輸至第二數據機21的buffer2中,第二數據機21再從buffer2中獲取數據包。

本實施例提出的數據包傳輸方法,第一數據機通過預設接口接收第二數據機發送的數據包獲取請求時,先從第一用戶識別卡或第二用戶識別卡中提取所述數據包獲取請求對應的數據包,然後對提取的數據包進行拆分,並對同一個數據包拆分後的各個子數據包添加相同的標識信息,最終將添加有標識信息的各個子數據包緩存至所述預設接口的buffer中,以供第二數據機從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合,以完成數據包的傳輸。本方案在傳輸數據包時,先對待傳輸的數據包進行拆分,再將拆分後的各個子數據包添加相同的標識信息後進行傳輸,使得傳輸的數據包的容量值有所減小,後續對端接收到各個子數據包之後按照相同的標識信息進行重組即可,避免了數據傳輸過程中移動終端死機的情況。

進一步地,基於第一實施例提出本發明數據包傳輸方法第二實施例。

數據包傳輸方法第二實施例與數據包傳輸方法第一實施例的區別在於,所述步驟s20包括:

步驟a、所述第一數據機確定數據包的容量值;

步驟b、在有數據包的容量值大於預設閾值時,對所述數據包進行拆分,得到各個子數據包;

步驟c、在各個子數據包對應的包頭中添加相同的標識信息。

在本實施例中,當第二數據機21向第一數據機11發送數據包獲取請求(request)時,若第一用戶識別卡13或第二用戶識別卡14為電信卡,且第一數據機11從所述第一用戶識別卡13或所述第二用戶識別卡14中提取的數據包大於預設閾值如512位元組,所述第一數據機11可確定數據包的容量值大於預設閾值,此時由於buffer一次性只能緩存不超過512位元組的數據包,因此第一數據機11需要先將提取的數據包進行拆分,以拆分成多個子數據包,然後再將多個子數據包存儲到buffer中進行轉發。

在本實施例中,第一數據機11提取的數據包可以為一個或多個,在提取的數據包包括多個時,所述第一數據機11可同時對多個數據包進行拆分,或者按照各個數據包的提取順序進行拆分。

具體地,所述第一數據機11拆分數據包時,先在拆分後的各個子數據包的包頭中添加相同的標識信息,該標識信息優選是第一數據機11拆分數據包時根據拆分後的數據包執行封包操作所添加的,封包就是給一段數據加上包頭,這樣一來數據包就分為包頭和包體兩部分內容。

本實施例中需要說明的是,包頭實際上是大小固定的結構體,其中有個結構體成員變量包括拆分後子包體的長度,以及我們定義的拆分標識信息flag,可以理解,由一個大包拆分出的多個子包具有相同的flag標識,該flag標識的具體標識信息不限於包名或者預設欄位信息,可根據實際情況設置,此處不做限定。第一數據機11執行完封包操作後,再將添加有相同標識信息的數據包依次存儲到buffer中。

為更好理解,舉例如下:當前連著要傳輸三個電信卡的數據包,第一個大數據包拆分成各個子數據包後,將flag都標識都設置為0xf9f9,第二個大數據包拆分成各個子數據包後,將flag標識都設置為0x9f9f,第三個大數據包拆分成各個子數據包後,將各個子包的flag標識都設置為0xf9f9,這樣三個數據包標識就可以區分開來,後續接收端即第二數據機21即可將flag標識相同的各個子數據包進行歸類並重組成三個大數據包。

本實施例中,在確定數據包的容量值大於預設閾值時,才執行拆分操作,防止數據包小於預設閾值時也進行拆分操作造成系統資源的浪費,而在對數據包進行拆分操作後,將同一個數據包拆分後的各個子數據包添加相同的標識信息,後續對端可根據相同的標識信息進行重組,防止轉發的數據包不完整,提高了數據包轉發準確性。

進一步地,基於第一實施例提出本發明數據包傳輸方法第三實施例。

數據包傳輸方法第三實施例與數據包傳輸方法第一實施例的區別在於,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,所述步驟s30包括:

所述第一數據機將不同標識信息的各個子數據包按照預設的順序緩存至所述預設接口的buffer中。

在本實施例中,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,此時,所述第一數據機11可將不同標識信息的各個子數據包按照預設順序緩存至所述預設接口的buffer中。本實施例中,所述隨機順序優先與各個子數據包的生成順序一致,即在第一數據機11根據數據包拆分出一個子數據包,並對子數據包添加有標識信息之後,即可將該子數據包緩存至uart接口的buffer中。

應當理解的是,若當前提出的數據包包括多個數據包,那麼拆分得到的子數據包也包括多個,並且不同數據包拆分後的子數據對應的標識信息不同,因此,當拆分後的各個子數據包對應不同的標識信息時,所述第一數據機11可將不同標識信息的各個子數據包按照子數據包的生成順序依次緩存至所述uart接口的buffer中。後續,所述第二數據機21從所述buffer中提取各個子數據包後,按照相同的標識信息進行子數據包的組合的方式為:第二數據機21從buffer中提取出各個子數據包,將提取的各個子數據包存儲至預設空間,然後在buffer中的各個子數據包提取完成後,依次識別提取的各個子數據包的標識信息,以將標識信息相同的子數據包合成一個大數據包。

為更好理解本實施例,舉例如下:

第一數據機11基於數據包獲取請求提取出x、y、z三個數據包時,對每個數據包進行拆分,以得到每個數據包對應的多個子數據包,如x數據包對應x1、x2、和x3,y數據包對應y1、y2、和y3,z數據包對應z1、z2、和z3,此時,若各個子數據包的生成順序依次是x1、z1、x2、y1……,那麼,緩存到buffer的各個子數據包是就按照x1、z1、x2、y1的順序依次存儲。這種情況下,當第二數據機21從buffer中提取子數據包時,先將提取的各個子數據包預存起來,在提取完成後,依次識別提取的各個子數據包的標識信息,再將標識信息相同的子數據包合成一個大數據包,並通過第二射頻模塊23將合成後的大數據包上傳至基站。

在本實施例中,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,將不同標識信息的各個子數據包按照預設順序緩存至所述預設接口的buffer中,不需要非得同一個數據包拆分後的各個子數據包齊全之後,再全部緩存至uart接口的buffer中,而是先拆分出的子數據包先緩存,提高了數據包傳輸的靈活性。

進一步地,基於第三實施例提出本發明數據包傳輸方法第四實施例。

數據包傳輸方法第四實施例與數據包傳輸方法第三實施例的區別在於,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,所述步驟s30還包括:

所述第一數據機將相同標識信息的各個子數據包歸為一類;

按照類別的順序,依次將同一類的各個子數據包緩存至所述預設接口的buffer中。

在本實施例中,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,所述第一數據機11可先將相同標識信息的各個子數據包歸為一類,然後按照類別的順序,依次將同一類的各個子數據包緩存至所述預設接口的buffer中。本實施例中,類別的順序優選為先歸為一類的順序,也就是說,即使第一數據機11提取的數據包包括多個數據包,並且對每個數據包拆分後得到對應的各個子數據包,所述第一數據機11還是可以先將相同標識信息的各個子數據包歸為一類,然後將按照類別的順序,將同一類的各個子數據包依次緩存至所述預設接口的buffer中,即將先歸為一類的子數據包緩存至所述預設接口的buffer中,最終完成所有類別的子數據包的緩存。

後續,所述第二數據機21從所述buffer中提取各個子數據包,並按照相同的標識信息進行子數據包的組合的方式包括:第二數據機21從buffer中提取出子數據包,依次識別子數據包的標識信息,在識別到有新的子數據包與上一個子數據包的標識信息相同時,將該當前識別的子數據包與上一個子數據包歸為一類,並繼續識別下一個子數據包,直達識別到的子數據包與上一個子數據包的標識信息不同時,將之前標識信息相同的各個子數據包合成一個大數據包。

為更好理解本實施例,舉例如下:

第一數據機11基於數據包獲取請求提取出x、y、z三個數據包時,對每個數據包進行拆分,以得到每個數據包對應的多個子數據包,如x數據包對應x1、x2、和x3,y數據包對應y1、y2、和y3,z數據包對應z1、z2、和z3,此時,將x1、x2、和x3歸為一類,然後確定三類數據包哪類先拆分完成,若此時x類先拆分完成,即可將x1、x2、和x3依次緩存至所述uart的buffer中。後續,所述第二數據機21從所述buffer中提取各個子數據包之後,將x1、x2、和x3歸為一類,並繼續識別下一個子數據包,若識別到下一個是y1,則將之前x1、x2、和x3的各個子數據包合成一個大數據包。

在本實施例中,在提取的數據包包括多個數據包,且拆分後的各個子數據包對應不同的標識信息時,將相同標識信息的各個子數據包歸為一類,最終按照類別的順序,依次將同一類的各個子數據包緩存至所述預設接口的buffer中,使得子數據包的傳輸,是按照順序緩存的,防止子數據包出現遺漏的情況,提高了數據包傳輸的準確性。

綜上所述,本發明實施例中,在移動終端100中的電信卡傳輸的數據包較大時,第一數據機11對數據包進行拆分,以改變數據包的期望值,後續緩存到buffer的數據包就不會超出buffer的容量值,那麼,避免了大數據包傳輸導致死機的問題,同時對拆分成多個子數據包添加相同的標識信息,第二數據機21可根據標識信息進行重組,使得後續轉發的數據包是完整的數據包,避免了數據包轉發不完整的情況。

需要說明的是,在本文中,術語「包括」、「包含」或者其任何其它變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者系統不僅包括那些要素,而且還包括沒有明確列出的其它要素,或者是還包括為這種過程、方法、物品或者系統所固有的要素。在沒有更多限制的情況下,由語句「包括一個……」限定的要素,並不排除在包括該要素的過程、方法、物品或者系統中還存在另外的相同要素。

上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。

通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可藉助軟體加必需的通用硬體平臺的方式來實現,當然也可以通過硬體,但很多情況下前者是更佳的實施方式。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質(如rom/ram、磁碟、光碟)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,伺服器,空調器,或者網絡設備等)執行本發明各個實施例所述的方法。

以上僅為本發明的優選實施例,並非因此限制本發明的專利範圍,凡是利用本發明說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其它相關的技術領域,均同理包括在本發明的專利保護範圍內。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀