国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種發(fā)送心跳消息的方法、系統(tǒng)、終端及網(wǎng)絡(luò)設(shè)備的制作方法

      文檔序號:7773814閱讀:324來源:國知局
      一種發(fā)送心跳消息的方法、系統(tǒng)、終端及網(wǎng)絡(luò)設(shè)備的制作方法
      【專利摘要】本發(fā)明公開了一種發(fā)送心跳消息的方法、系統(tǒng)、終端及網(wǎng)絡(luò)設(shè)備;所述方法包括:終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷,提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成一個整合頭部,加上所述載荷形成整合心跳包;將整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備;網(wǎng)絡(luò)設(shè)備將整合心跳包的頭部拆分為多個單獨的頭部信息,將整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆分出的頭部信息組成一個心跳消息;分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相應(yīng)的應(yīng)用程序服務(wù)器。本發(fā)明能避免頻繁地發(fā)送心跳消息,降低心跳消息對網(wǎng)絡(luò)的壓力。
      【專利說明】一種發(fā)送心跳消息的方法、系統(tǒng)、終端及網(wǎng)絡(luò)設(shè)備
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及網(wǎng)絡(luò)領(lǐng)域,尤其涉及一種發(fā)送心跳消息的方法、系統(tǒng)、終端及網(wǎng)絡(luò)設(shè)備。
      【背景技術(shù)】
      [0002]隨著移動互聯(lián)網(wǎng)的飛速發(fā)展,移動終端的應(yīng)用程序數(shù)量也快速增長。當(dāng)前智能手機上App應(yīng)用種類繁多,用戶群非常龐大,很多程序的下載量達(dá)到數(shù)千萬。大多數(shù)應(yīng)用程序都有一些常規(guī)性的小流量心跳消息需要發(fā)送,比如騰訊QQ的在線、離線狀態(tài)消息等,這些消息流量很小,但是發(fā)送十分頻繁。雖然類似的消息種類很多,但是大多數(shù)消息具有相似性,也就是說不同應(yīng)用程序都會發(fā)送類似的心跳消息。例如,許多應(yīng)用程序為了保持用戶常在線,常需要發(fā)送保持在線的心跳消息,告知應(yīng)用程序服務(wù)器客戶端的在線狀態(tài)。無論是哪種目的的心跳消息,移動終端每次發(fā)送時,都需要競爭申請無線資源,爭用無線信道。
      [0003]由于心跳消息單次傳輸數(shù)據(jù)量小,發(fā)送頻率高,并且多種應(yīng)用程序都有各自的心跳發(fā)送需求,因此,當(dāng)智能終端上安裝了多種具有心跳發(fā)送需求的應(yīng)用程序后,為同一目的,不同的應(yīng)用程序?qū)⒎謩e發(fā)送心跳消息,頻繁申請無線信道爭用寶貴的無線信道,這勢必會占用很多信令資源和數(shù)據(jù)資源,極有可能造成信令風(fēng)暴,給網(wǎng)絡(luò)造成了巨大的負(fù)擔(dān),甚至影響了正常的網(wǎng)絡(luò)通信服務(wù)。

      【發(fā)明內(nèi)容】

      [0004]本發(fā)明要解決的技術(shù)問題是如何避免頻繁地發(fā)送心跳消息,降低心跳消息對網(wǎng)絡(luò)的壓力。
      [0005]為了解決上述問題,本發(fā)明提供了一種發(fā)送心跳消息的方法,包括:
      [0006]終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷;
      [0007]所述終端提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成一個整合頭部,加上所述載荷形成整合心跳包;
      [0008]所述終端將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備;
      [0009]所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的頭部拆分為多個單獨的頭部信息;
      [0010]所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆分出的頭部信息組成一個心跳消息;
      [0011]所述網(wǎng)絡(luò)設(shè)備分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相應(yīng)的應(yīng)用程序服務(wù)器。
      [0012]可選地,所述終端將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備的步驟前還包括:
      [0013]所述終端在所述整合心跳包的頭部中加入預(yù)定標(biāo)識;
      [0014]所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的頭部拆分為多個單獨的頭部信息的步驟前還包括:CN 103532784 A



      2/9頁
      [0015]所述網(wǎng)絡(luò)設(shè)備判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識;如 果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的步驟。
      [0016]可選地,終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任 一個的載荷的步驟前還包括:
      [0017]當(dāng)所述終端獲知一個應(yīng)用程序需要發(fā)送心跳消息時,判斷其它應(yīng)用程序是否需要 在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,如果需要,則進(jìn)行所述終端提取在預(yù)定時間 長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷的步驟。
      [0018]本發(fā)明還提供了一種發(fā)送心跳消息的方法,包括:
      [0019]終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的 載荷;
      [0020]所述終端提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成一個整 合頭部,加上所述載荷形成整合心跳包;
      [0021]所述終端將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備。
      [0022]可選地,終端在預(yù)定時間長度內(nèi)提取待發(fā)送的具有相同作用的多個心跳消息中任 一個的載荷的步驟前還包括:
      [0023]當(dāng)所述終端獲知一個應(yīng)用程序需要發(fā)送心跳消息時,判斷其它應(yīng)用程序是否需要 在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,如果需要,則進(jìn)行所述終端提取在預(yù)定時間 長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷的步驟。
      [0024]本發(fā)明還提供了一種發(fā)送心跳消息的方法,包括:
      [0025]網(wǎng)絡(luò)設(shè)備將整合心跳包的頭部拆分為多個單獨的頭部信息;
      [0026]所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆分 出的頭部信息組成一個心跳消息;
      [0027]所述網(wǎng)絡(luò)設(shè)備分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相 應(yīng)的應(yīng)用程序服務(wù)器。
      [0028]可選地,所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的頭部拆分為多個單獨的頭部信息的步 驟前還包括:
      [0029]所述網(wǎng)絡(luò)設(shè)備判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識;如 果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的步驟。
      [0030]本發(fā)明還提供了一種發(fā)送心跳消息的系統(tǒng),包括:終端和網(wǎng)絡(luò)設(shè)備;
      [0031]所述終端包括:
      [0032]采集模塊,用于提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中 任一個的載荷;
      [0033]合并模塊,用于提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成 一個整合頭部,加上所述載荷形成整合心跳包;
      [0034]發(fā)送模塊,用于將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備;
      [0035]所述網(wǎng)絡(luò)設(shè)備包括:
      [0036]拆分模塊,用于將所述整合心跳包的頭部拆分為多個單獨的頭部信息;
      [0037]重組模塊,用于將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆 分出的頭部信息組成一個心跳消息;
      6[0038]消息發(fā)送模塊,用于分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相應(yīng)的應(yīng)用程序服務(wù)器。
      [0039]可選地,所述發(fā)送模塊還用于在所述整合心跳包的頭部中加入預(yù)定標(biāo)識;
      [0040]所述拆分模塊還用于判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識;如果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的操作。
      [0041]可選地,所述采集模塊還用于當(dāng)收到一個應(yīng)用程序發(fā)送來的心跳消息時,判斷其它應(yīng)用程序是否需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,從需要發(fā)送的應(yīng)用程序接收心跳消息并轉(zhuǎn)發(fā)給所述合并模塊。
      [0042]本發(fā)明還提供了一種終端,包括:
      [0043]采集模塊,用于提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷;
      [0044]合并模塊,用于提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成一個整合頭部,加上所述載荷形成整合心跳包;
      [0045]發(fā)送模塊,用于將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備。
      [0046]可選地,所述采集模塊還用于當(dāng)收到一個應(yīng)用程序發(fā)送來的心跳消息時,判斷其它應(yīng)用程序是否需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,從需要發(fā)送的應(yīng)用程序接收心跳消息并轉(zhuǎn)發(fā)給所述合并模塊。
      [0047]本發(fā)明還提供了一種網(wǎng)絡(luò)設(shè)備,包括:
      [0048]拆分模塊,用于將所述整合心跳包的頭部拆分為多個單獨的頭部信息;
      [0049]重組模塊,用于將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆分出的頭部信息組成一個心跳消息;
      [0050]消息發(fā)送模塊,用于分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相應(yīng)的應(yīng)用程序服務(wù)器。
      [0051]可選地,所述拆分模塊還用于判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識;如果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的操作。
      [0052]本發(fā)明的至少一個實施例通過壓縮不同應(yīng)用程序相同作用的心跳消息,實現(xiàn)了終端上不同應(yīng)用程序在一段時間內(nèi)發(fā)送同一作用的心跳消息時,終端只需要發(fā)送一個心跳包,爭用一次無線信道;能夠減少移動終端使用無線資源的頻率,提高了發(fā)送效率,減小終端發(fā)送心跳消息申請無線信道的次數(shù),降低發(fā)送心跳包的數(shù)據(jù)量,減少爭用無線信道的頻率,避免網(wǎng)絡(luò)擁塞和信令風(fēng)暴的發(fā)生。本發(fā)明的又一個實施例通過與終端上各應(yīng)用程序的交互,將發(fā)送時間鄰近的心跳消息合并,進(jìn)一步提高了發(fā)送心跳消息的效率。
      【專利附圖】

      【附圖說明】
      [0053]圖1為實施例一的發(fā)送心跳消息的方法的流程示意圖;
      [0054]圖2為整合心跳包的示意圖;
      [0055]圖3為實施例四的例子中合并心跳消息的流程圖;
      [0056]圖4為實施例四的例子中拆分心跳消息的流程圖;
      [0057]圖5為實施例五中終端的示意框圖。【具體實施方式】
      [0058]下面將結(jié)合附圖及實施例對本發(fā)明的技術(shù)方案進(jìn)行更詳細(xì)的說明。
      [0059]需要說明的是,如果不沖突,本發(fā)明實施例以及實施例中的各個特征可以相互結(jié)合,均在本發(fā)明的保護范圍之內(nèi)。另外,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
      [0060]實施例一、一種發(fā)送心跳消息的方法,如圖1所示,包括:
      [0061]101、終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷;
      [0062]102、所述終端提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成一個整合頭部,加上所述載荷形成整合心跳包;
      [0063]103、所述終端將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備;
      [0064]104、所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的頭部拆分為多個單獨的頭部信息;
      [0065]105、所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆分出的頭部信息組成一個心跳消息;
      [0066]106、所述網(wǎng)絡(luò)設(shè)備分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相應(yīng)的應(yīng)用程序服務(wù)器。
      [0067]本實施例中,具有相同作用的多個心跳消息是指這多個心跳消息的載荷內(nèi)容相同,或者是指這多個心跳消息中用于指示本心跳消息作用的標(biāo)識相同,該標(biāo)識可以位于心跳消息的頭部信息或載荷中。
      [0068]所述網(wǎng)絡(luò)設(shè)備既可以復(fù)用網(wǎng)絡(luò)中已有的服務(wù)器等設(shè)備,也可以采用一個新增的設(shè)備。
      [0069]所述預(yù)定時間長度可以根據(jù)不同網(wǎng)絡(luò)和應(yīng)用的具體情況自行設(shè)置,對于不同作用的心跳消息,預(yù)定時間長度也可以不同;比如某一個應(yīng)用程序服務(wù)器5分鐘收不到用于說明客戶端在線的心跳消息就會判斷客戶端不在線,而另一個應(yīng)用程序服務(wù)器20分鐘收不到心跳消息用于說明客戶端在線的心跳消息才會判斷客戶端不在線,此時可以將預(yù)定時間長度設(shè)為分鐘級,比如I?3分鐘。由于很多的應(yīng)用發(fā)送心跳消息的周期很短(比如30秒等),而且心跳消息的作用的類型并不多,因此在預(yù)定時間長度中非常有可能存在多個待發(fā)送且作用相同的心跳消息。
      [0070]本實施例考慮到大多數(shù)應(yīng)用程序發(fā)送的心跳消息往往作用類似,如果每個應(yīng)用程序都獨自發(fā)送相同的內(nèi)容,勢必會多次重復(fù)發(fā)送具有相同作用的心跳消息,造成無線資源利用率低且對網(wǎng)絡(luò)的沖擊較大。
      [0071]有鑒于此,并且考慮到稍許推遲或提早發(fā)送心跳消息給應(yīng)用程序服務(wù)器并不會產(chǎn)生實質(zhì)影響,本實施例在終端將預(yù)定時間長度內(nèi)具有相同作用的不同應(yīng)用程序的心跳消息進(jìn)行壓縮合并,只保留有差異的頭部信息和一份心跳消息的載荷,壓縮合并后作為一個整合心跳包進(jìn)行發(fā)送,由網(wǎng)絡(luò)設(shè)備負(fù)責(zé)將整合心跳包解壓拆分,為每個單獨的頭部獨自形成一個新的心跳包的頭部,再將合并包中的載荷部分進(jìn)行復(fù)制,形成幾個含有相同載荷內(nèi)容、不同頭部信息的心跳包,然后根據(jù)頭部信息中的地址信息,分別發(fā)送給各個目的應(yīng)用程序服務(wù)器。[0072]本實施例中雖然所述整合心跳包的頭部變長了,但是相比較每個應(yīng)用程序單獨發(fā)送心跳消息,實現(xiàn)相同作用的不同應(yīng)用程序的心跳消息只會被發(fā)送一次,只會爭用一次無線信道,無線資源得到了很好的利用,減小終端發(fā)送心跳消息申請無線信道的次數(shù),降低發(fā)送心跳包的數(shù)據(jù)量,減少爭用無線信道的頻率,避免網(wǎng)絡(luò)擁塞和信令風(fēng)暴的發(fā)生。
      [0073]本實施例的一種實施方式中,所述步驟103前還可以包括:
      [0074]所述終端在所述整合心跳包的頭部中加入預(yù)定標(biāo)識;
      [0075]所述步驟104前還可以包括:
      [0076]所述網(wǎng)絡(luò)設(shè)備判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識;如果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的步驟。
      [0077]所述預(yù)定標(biāo)識可以包括兩種狀態(tài),分別表示合并多個心跳消息的整合心跳包、及只包括獨立心跳消息的心跳包。
      [0078]在不加入預(yù)定標(biāo)識的方案中,所述網(wǎng)絡(luò)設(shè)備也可以通過判斷發(fā)來的心跳包頭部中具有幾個獨立的目的地址信息,從而判斷所收到的心跳包是否為整合心跳包。其中,每個頭部信息可以分別包含起始、終止位置的標(biāo)志位,用于供所述網(wǎng)絡(luò)設(shè)備拆分所述整合心跳包。 如果心跳包中只有一個獨立的心跳消息,則網(wǎng)絡(luò)設(shè)備直接將該心跳包發(fā)送至相應(yīng)的應(yīng)用程序服務(wù)器。
      [0079]本實施方式的一種備選方案中,所述預(yù)定標(biāo)識可以但不限于為該整合心跳包所合并的心跳消息的個數(shù),也就相當(dāng)于該整合心跳包中所包含的所述頭部信息的個數(shù)。
      [0080]本備選方案中,所述整合心跳包如圖2所示,包括整合頭部和載荷;所述整合頭部包括合并數(shù)量(所合并的心跳消息的個數(shù)),以及分屬于不同心跳消息的第一頭部信息、第
      二頭部信息、第三頭部信息……。
      [0081]本實施例的一種實施方式中,所述步驟101前還可以包括:
      [0082]當(dāng)所述終端獲知一個應(yīng)用程序需要發(fā)送心跳消息時,判斷其它應(yīng)用程序是否需要在所述預(yù)定時間長度內(nèi)發(fā)送具有相同作用的心跳消息,如果需要,則進(jìn)行步驟101。如果不需要,那么這個心跳消息將被單獨發(fā)送。
      [0083]本實施方式中,可以在所述終端中設(shè)置特定的模塊統(tǒng)計、記錄本終端上各應(yīng)用程序發(fā)送心跳消息的時刻及作用,根據(jù)該記錄獲知是否有應(yīng)用程序?qū)⒃谒鲱A(yù)定時間長度內(nèi)發(fā)送具有相同作用的心跳消息。也可以在終端中設(shè)置特定的模塊詢問本終端上各應(yīng)用程序,從而獲知是否有應(yīng)用程序?qū)⒃谒鲱A(yù)定時間長度內(nèi)發(fā)送具有相同作用的心跳消息;比如在詢問時攜帶所述預(yù)定時間長度和/或作用(載荷內(nèi)容或表示作用的標(biāo)識),由各應(yīng)用程序自行判斷后反饋判斷結(jié)果給該特定的模塊;再比如詢問各應(yīng)用程序是否要發(fā)送心跳消息,應(yīng)用程序反饋將要發(fā)送心跳消息的時刻及作用,由該特定的模塊進(jìn)行判斷。在其它實施方式中,也可以直接根據(jù)對各應(yīng)用程序心跳消息的記錄,獲知在每個預(yù)定時間長度中將會發(fā)送的心跳消息,直接對其中具有相同作用的心跳消息進(jìn)行合并和發(fā)送。比如預(yù)定時間長度是3分鐘,由于心跳消息是周期性發(fā)送的,因此根據(jù)對各應(yīng)用程序心跳消息作用及發(fā)送時刻的記錄,可以得知各長度為3分鐘的時間段中會有哪些應(yīng)用程序發(fā)送心跳消息,還可以根據(jù)該記錄得知其中哪些心跳消息的作用相同。
      [0084]實施例二、一種發(fā)送心跳消息的方法,包括:
      [0085]201、終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一CN 103532784 A



      6/9頁
      個的載荷;
      [0086]202、所述終端提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成一 個整合頭部,加上所述載荷形成整合心跳包;
      [0087]203、所述終端將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備;
      [0088]本實施例的一種實施方式中,所述步驟201前還可以包括:
      [0089]當(dāng)所述終端獲知一個應(yīng)用程序需要發(fā)送心跳消息時,判斷其它應(yīng)用程序是否需要 在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,如果需要,則進(jìn)行步驟201。
      [0090]如果不需要,那么這個心跳消息將被單獨發(fā)送。
      [0091]本實施例的一種實施方式中,所述步驟203前還可以包括:
      [0092]所述終端在所述整合心跳包的頭部中加入預(yù)定標(biāo)識。
      [0093]本實施方式的一種備選方案中,所述預(yù)定標(biāo)識可以但不限于為該整合心跳包所合 并的心跳消息的個數(shù),也就相當(dāng)于該整合心跳包中所包含的所述頭部信息的個數(shù)。
      [0094]實施例三、一種接收心跳消息的方法,包括:
      [0095]網(wǎng)絡(luò)設(shè)備將整合心跳包的頭部拆分為多個單獨的頭部信息;
      [0096]所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆分 出的頭部信息組成一個心跳消息;
      [0097]所述網(wǎng)絡(luò)設(shè)備分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相 應(yīng)的應(yīng)用程序服務(wù)器。
      [0098]本實施例的一種實施方式中,所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的頭部拆分為多個 單獨的頭部信息的步驟前還可以包括:
      [0099]所述網(wǎng)絡(luò)設(shè)備判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識;如 果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的步驟。
      [0100]實施例四、一種發(fā)送心跳消息的系統(tǒng),包括:
      [0101]終纟而和網(wǎng)絡(luò)設(shè)備;
      [0102]所述終端包括:
      [0103]采集模塊,用于提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中 任一個心跳消息的載荷;
      [0104]合并模塊,用于提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成 一個整合頭部,加上所述載荷形成整合心跳包;
      [0105]發(fā)送模塊,用于將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備;
      [0106]所述網(wǎng)絡(luò)設(shè)備包括:
      [0107]拆分模塊,用于將所述整合心跳包的頭部拆分為多個單獨的頭部信息;
      [0108]重組模塊,用于將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆 分出的頭部信息組成一個心跳消息;
      [0109]消息發(fā)送模塊,用于分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā) 送給相應(yīng)的應(yīng)用程序服務(wù)器。
      [0110]本實施例的一種實施方式中,所述發(fā)送模塊還可以用于在所述整合心跳包的頭部 中加入預(yù)定標(biāo)識;
      [0111]所述拆分模塊還可以用于判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述
      10預(yù)定標(biāo)識;如果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的操作。
      [0112]本實施方式的一種備選方案中,所述預(yù)定標(biāo)識可以但不限于為該整合心跳包所合并的心跳消息的個數(shù),也就相當(dāng)于該整合心跳包中所包含的所述頭部信息的個數(shù)。
      [0113]本實施例的一種實施方式中,所述采集模塊還可以用于當(dāng)收到一個應(yīng)用程序發(fā)送來的心跳消息時,判斷其它應(yīng)用程序是否需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,采集模塊可以通過詢問各應(yīng)用程序判斷,也可以通過統(tǒng)計、記錄各應(yīng)用程序的心跳消息的發(fā)送時刻和作用進(jìn)行判斷;采集模塊從需要發(fā)送的應(yīng)用程序接收心跳消息并轉(zhuǎn)發(fā)給所述合并1吳塊。
      [0114]如果其它應(yīng)用程序均不需要發(fā)送類似的心跳消息,那么這個心跳消息將被單獨發(fā)送。網(wǎng)絡(luò)設(shè)備在判斷其為一個獨立的心跳消息,則直接發(fā)送至對應(yīng)應(yīng)用程序服務(wù)器。省去了其中合并、拆分心跳包的過程。
      [0115]本實施方式中所述采集模塊負(fù)責(zé)對需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息的應(yīng)用程序進(jìn)行統(tǒng)計,合并模塊整合它們將要發(fā)送的心跳消息,只保留有差異的頭部信息,載荷部分只保留一份(作用相同的心跳消息的載荷具有相同內(nèi)容),實現(xiàn)消息的壓縮、合并發(fā)送。
      [0116]下面用一個具體的例子進(jìn)行說明,假設(shè)該例子中提及的心跳消息的作用是說明應(yīng)用程序客戶端在線,是以保持常在線狀態(tài)為目的而發(fā)送的心跳消息。其它類似的具有常規(guī)性功能的心跳消息的整合、拆分過程相同。
      [0117]該例子中心跳消息的整合過程如圖3所示,包括步驟301?307:
      [0118]301、某應(yīng)用程序發(fā)送客戶端在線狀態(tài)的心跳消息到所述采集模塊。
      [0119]302、采集模塊阻止其單獨發(fā)送心跳消息,把該心跳消息的頭部信息和載荷分開,查詢載荷的作用,發(fā)現(xiàn)是為了保持常在線狀態(tài)的心跳消息。
      [0120]303、為了提高心跳消息發(fā)送效率,詢問移動終端上正在運行或后臺運行的其它應(yīng)用程序,是否需要在預(yù)定時間長度內(nèi)發(fā)送相同作用(本例中即保持在線狀態(tài))的心跳消息,假設(shè)其它(假設(shè)為兩個)兩個應(yīng)用程序回應(yīng),需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,剩余應(yīng)用程序則回復(fù)不需要發(fā)送。由于存在需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的移動終端,因此進(jìn)行步驟304,否則單獨發(fā)送該心跳消息。
      [0121]304、需要在預(yù)定時間長度內(nèi)發(fā)送心跳消息的那兩個應(yīng)用程序?qū)l(fā)送自己保持在線狀態(tài)的心跳消息到采集模塊,頭部可能包含了應(yīng)用程序的標(biāo)識以及對應(yīng)的應(yīng)用程序服務(wù)器的地址信息。
      [0122]305、合并模塊收集到了這兩個應(yīng)用程序發(fā)來的心跳消息,將頭部信息與載荷分離,把兩個應(yīng)用程序的頭部信息與第一個應(yīng)用程序心跳消息的頭部信息組合,形成一個含有三個應(yīng)用程序的頭部信息的新的整合頭部,至此產(chǎn)生了一個載荷為空的、具有較長頭部的整合心跳包。
      [0123]306、合并模塊再將采集模塊提取出的第一個應(yīng)用程序(或步驟304中兩個應(yīng)用程序中的任一個)發(fā)來的心跳消息的載荷填入所述整合心跳包;所述整合心跳包包含了一個較長的頭部和唯一的載荷。所述頭部中每一部分分別標(biāo)識了每個應(yīng)用程序的標(biāo)識和對應(yīng)的應(yīng)用程序服務(wù)器的地址信息。CN 103532784 A



      8/9頁
      [0124]307、所述整合心跳包將送至發(fā)送模塊,由發(fā)送模塊爭用無線信道,將所述整合心 跳包發(fā)送出去;還可以在所述整合心跳包的頭部中加入預(yù)定標(biāo)識,以表示該數(shù)據(jù)包為整合 心跳包。
      [0125]該例子中心跳消息的拆分過程如圖4所示,包括步驟401?405 :
      [0126]401、網(wǎng)絡(luò)設(shè)備收到心跳包。
      [0127]402、首先判斷心跳包中的標(biāo)識信息,以判斷該心跳包是否為一個整合心跳包,如 果是則進(jìn)行步驟403 ;如果不是則直接進(jìn)行步驟405。
      [0128]403、根據(jù)不同應(yīng)用程序的標(biāo)識將頭部拆分,分成幾個單獨的頭部信息,各頭部信 息分別作為一個載荷為空的心跳包。
      [0129]404、再將所述整合心跳包的載荷部分進(jìn)行復(fù)制,分別放入每個單獨的心跳包的載 荷中,形成幾個內(nèi)容、作用相同,目的地址不同的心跳包。
      [0130]405、將心跳包根據(jù)頭部信息發(fā)往相應(yīng)的應(yīng)用程序服務(wù)器。實現(xiàn)了應(yīng)用程序為了保 持常在線狀態(tài)而發(fā)送心跳消息的目的。
      [0131]實施例五、一種終端,如圖5所示,包括:
      [0132]采集模塊51,用于提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息 中任一個心跳消息的載荷;
      [0133]合并模塊52,用于提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連 成一個整合頭部,加上所述載荷形成整合心跳包;
      [0134]發(fā)送模塊53,用于將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備。
      [0135]本實施例的一種實施方式中,所述采集模塊51還可以用于當(dāng)收到一個應(yīng)用程序 發(fā)送來的心跳消息時,判斷其它應(yīng)用程序是否需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳 消息,從需要發(fā)送的應(yīng)用程序接收心跳消息并轉(zhuǎn)發(fā)給所述合并模塊。
      [0136]本實施例的一種實施方式中,所述發(fā)送模塊53還可以用于在所述整合心跳包的 頭部中加入預(yù)定標(biāo)識。
      [0137]本實施方式的一種備選方案中,所述預(yù)定標(biāo)識可以但不限于為該整合心跳包所合 并的心跳消息的個數(shù),也就相當(dāng)于該整合心跳包中所包含的所述頭部信息的個數(shù)。
      [0138]實施例六、一種網(wǎng)絡(luò)設(shè)備,包括:
      [0139]拆分模塊,用于將所述整合心跳包的頭部拆分為多個單獨的頭部信息;
      [0140]重組模塊,用于將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆 分出的頭部信息組成一個心跳消息;
      [0141]消息發(fā)送模塊,用于分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā) 送給相應(yīng)的應(yīng)用程序服務(wù)器。
      [0142]本實施例的一種實施方式中,所述拆分模塊還可以用于判斷從所述終端接收到的 數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識;如果包含,則進(jìn)行所述將所述整合心跳包的頭部拆 分為多個單獨的頭部信息的操作。
      [0143]實施例四?六建立在應(yīng)用程序與移動終端操作系統(tǒng)及采集模塊、合并模塊和發(fā)送 模塊深度合作的基礎(chǔ)上,應(yīng)用程序應(yīng)該將自己的心跳消息上報到采集模塊,可以由所述采 集模塊對各應(yīng)用程序進(jìn)行統(tǒng)計和記錄,由所述合并模塊對具有相同作用的心跳消息進(jìn)行整 合并通過所述發(fā)送模塊傳輸給所述網(wǎng)絡(luò)設(shè)備。如果合作進(jìn)一步發(fā)展,那么可以將一些常規(guī)
      12性的動作,比如向服務(wù)器匯報客戶端的在線狀態(tài),提供自己的地址信息,以及其它一些各應(yīng)用程序均有的心跳消息,用統(tǒng)一的表達(dá)方式發(fā)送,例如可以統(tǒng)一用一種編碼方式或語法表達(dá),或可以用統(tǒng)一的標(biāo)識來表示本心跳消息的作用,使得采集模塊能夠獲知應(yīng)用程序發(fā)送的心跳消息的具體作用,以便采集其它需要發(fā)送且具有相同作用的心跳消息的頭部信息。
      [0144]本領(lǐng)域普通技術(shù)人員可以理解上述方法中的全部或部分步驟可通過程序來指令相關(guān)硬件完成,所述程序可以存儲于計算機可讀存儲介質(zhì)中,如只讀存儲器、磁盤或光盤等??蛇x地,上述實施例的全部或部分步驟也可以使用一個或多個集成電路來實現(xiàn)。相應(yīng)地,上述實施例中的各模塊/單元可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。本發(fā)明不限制于任何特定形式的硬件和軟件的結(jié)合。
      [0145]當(dāng)然,本發(fā)明還可有其它多種實施例,在不背離本發(fā)明精神及其實質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明的權(quán)利要求的保護范圍。
      【權(quán)利要求】
      1.一種發(fā)送心跳消息的方法,包括:終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷;所述終端提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成一個整合頭部,加上所述載荷形成整合心跳包;所述終端將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備; 所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的頭部拆分為多個單獨的頭部信息;所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆分出的頭部信息組成一個心跳消息;所述網(wǎng)絡(luò)設(shè)備分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相應(yīng)的應(yīng)用程序服務(wù)器。
      2.如權(quán)利要求1所述的方法,其特征在于,所述終端將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備的步驟前還包括:所述終端在所述整合心跳包的頭部中加入預(yù)定標(biāo)識;所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的頭部拆分為多個單獨的頭部信息的步驟前還包括:所述網(wǎng)絡(luò)設(shè)備判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識;如果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的步驟。
      3.如權(quán)利要求1所述的方法,其特征在于,終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷的步驟前還包括:當(dāng)所述終端獲知一個應(yīng)用程序需要發(fā)送心跳消息時,判斷其它應(yīng)用程序是否需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,如果需要,則進(jìn)行所述終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷的步驟。
      4.一種發(fā)送心跳消息的方法,包括:終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷;所述終端提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成一個整合頭部,加上所述載荷形成整合心跳包;所述終端將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備。
      5.如權(quán)利要求4所述的方法,其特征在于,終端在預(yù)定時間長度內(nèi)提取待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷的步驟前還包括:當(dāng)所述終端獲知一個應(yīng)用程序需要發(fā)送心跳消息時,判斷其它應(yīng)用程序是否需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,如果需要,則進(jìn)行所述終端提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷的步驟。
      6.一種發(fā)送心跳消息的方法,包括:網(wǎng)絡(luò)設(shè)備將整合心跳包的頭部拆分為多個單獨的頭部信息;所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆分出的頭部信息組成一個心跳消息;所述網(wǎng)絡(luò)設(shè)備分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相應(yīng)的應(yīng)用程序服務(wù)器。
      7.如權(quán)利要求6所述的方法,其特征在于,所述網(wǎng)絡(luò)設(shè)備將所述整合心跳包的頭部拆分為多個單獨的頭部信息的步驟前還包括: 所述網(wǎng)絡(luò)設(shè)備判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識;如果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的步驟。
      8.一種發(fā)送心跳消息的系統(tǒng),包括:終端和網(wǎng)絡(luò)設(shè)備; 其特征在于,所述終端包括: 采集模塊,用于提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷; 合并模塊,用于提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成一個整合頭部,加上所述載荷形成整合心跳包; 發(fā)送模塊,用于將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備; 所述網(wǎng)絡(luò)設(shè)備包括: 拆分模塊,用于將所述整合心跳包的頭部拆分為多個單獨的頭部信息; 重組模塊,用于將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆分出的頭部信息組成一個心跳消息; 消息發(fā)送模塊,用于·分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相應(yīng)的應(yīng)用程序服務(wù)器。
      9.如權(quán)利要求8所述的系統(tǒng),其特征在于: 所述發(fā)送模塊還用于在所述整合心跳包的頭部中加入預(yù)定標(biāo)識; 所述拆分模塊還用于判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識;如果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的操作。
      10.如權(quán)利要求8所述的系統(tǒng),其特征在于: 所述采集模塊還用于當(dāng)收到一個應(yīng)用程序發(fā)送來的心跳消息時,判斷其它應(yīng)用程序是否需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,從需要發(fā)送的應(yīng)用程序接收心跳消息并轉(zhuǎn)發(fā)給所述合并模塊。
      11.一種終端,其特征在于,包括: 采集模塊,用于提取在預(yù)定時間長度內(nèi)待發(fā)送的具有相同作用的多個心跳消息中任一個的載荷; 合并模塊,用于提取所述多個心跳消息的頭部信息,將所述頭部信息前后相連成一個整合頭部,加上所述載荷形成整合心跳包; 發(fā)送模塊,用于將所述整合心跳包發(fā)送給網(wǎng)絡(luò)設(shè)備。
      12.如權(quán)利要求11所述的終端,其特征在于: 所述采集模塊還用于當(dāng)收到一個應(yīng)用程序發(fā)送來的心跳消息時,判斷其它應(yīng)用程序是否需要在預(yù)定時間長度內(nèi)發(fā)送相同作用的心跳消息,從需要發(fā)送的應(yīng)用程序接收心跳消息并轉(zhuǎn)發(fā)給所述合并模塊。
      13.—種網(wǎng)絡(luò)設(shè)備,其特征在于,包括: 拆分模塊,用于將所述整合心跳包的頭部拆分為多個單獨的頭部信息; 重組模塊,用于將所述整合心跳包的載荷復(fù)制成多個,分別將每個載荷和一個拆分出的頭部信息組成一個心跳消息;消息發(fā)送模塊,用于分別根據(jù)各心跳消息的頭部信息中的地址,將各心跳消息發(fā)送給相應(yīng)的應(yīng)用程序服務(wù)器。
      14.如權(quán)利要求13所述的網(wǎng)絡(luò)設(shè)備,其特征在于:所述拆分模塊還用于判斷從所述終端接收到的數(shù)據(jù)包的頭部是否包含所述預(yù)定標(biāo)識; 如果包含,則進(jìn)行所述將所述整合心跳包的頭部拆分為多個單獨的頭部信息的操作。
      【文檔編號】H04L12/951GK103532784SQ201310487989
      【公開日】2014年1月22日 申請日期:2013年10月17日 優(yōu)先權(quán)日:2013年10月17日
      【發(fā)明者】解冰, 張鳳全, 盛明哲 申請人:中國聯(lián)合網(wǎng)絡(luò)通信集團有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1