一種消息推送方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及機會網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別涉及一種消息推送方法及裝置。
【背景技術(shù)】
[0002] 機會網(wǎng)絡(luò)是一種不需要源節(jié)點和目的節(jié)點之間存在完整路徑,利用節(jié)點移動帶來 的相遇機會實現(xiàn)網(wǎng)絡(luò)通信的自組織網(wǎng)絡(luò),其中,機會網(wǎng)絡(luò)中的節(jié)點可以是手機、平板電腦 等。
[0003] 機會網(wǎng)絡(luò)的節(jié)點不是被統(tǒng)一部署的,網(wǎng)絡(luò)規(guī)模和節(jié)點初始位置未進行預(yù)先設(shè)置, 源節(jié)點和目的節(jié)點之間的路徑事先不能確定。機會網(wǎng)絡(luò)利用節(jié)點移動形成的通信機會逐跳 傳輸信息,以"存儲一攜帶一轉(zhuǎn)發(fā)"的路由模式實現(xiàn)節(jié)點間通信。機會網(wǎng)絡(luò)的運行依賴于節(jié) 點之間的協(xié)作傳輸。機會網(wǎng)絡(luò)的路由依賴節(jié)點之間的消息轉(zhuǎn)發(fā)。消息需要依賴中間節(jié)點的 轉(zhuǎn)發(fā)才能從源節(jié)點到達目的節(jié)點。例如,節(jié)點A欲向節(jié)點B發(fā)送消息,則節(jié)點A先將消息發(fā) 送給節(jié)點C,節(jié)點C攜帶該消息,將該消息直接轉(zhuǎn)發(fā)給節(jié)點B,或?qū)⒃撓⑥D(zhuǎn)發(fā)給其他節(jié)點, 以使其他節(jié)點將消息轉(zhuǎn)發(fā)給節(jié)點B。
[0004] 機會網(wǎng)絡(luò)中的每一節(jié)點的使用者都有自己的社會屬性(例如,屬于同一城市、屬 于同一朋友圈等等),而目前的機會網(wǎng)絡(luò)很少基于節(jié)點的使用者(人)的社會屬性進行研 究,而在實際應(yīng)用中,機會網(wǎng)絡(luò)是以人為主體,隨著移動設(shè)備的不斷增加,以節(jié)點的使用者 (人)為研究主體才能突顯機會網(wǎng)絡(luò)的實際應(yīng)用。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明實施例的目的在于提供一種消息推送方法及裝置,以提高機會網(wǎng)絡(luò)的實際 應(yīng)用。
[0006] 為達到上述目的,本發(fā)明實施例公開了一種消息推送方法,應(yīng)用于機會網(wǎng)絡(luò)所包 含社區(qū)中的用于發(fā)送消息的第一普通節(jié)點,其中,根據(jù)普通節(jié)點的使用者的社會屬性,所述 機會網(wǎng)絡(luò)被預(yù)先劃分出多個社區(qū),每一社區(qū)至少包括一個普通節(jié)點;所述方法包括:
[0007] 當檢測到所述第一普通節(jié)點的數(shù)據(jù)傳輸范圍內(nèi)有新的普通節(jié)點進入時,判斷所述 新的普通節(jié)點是否為待接收目標消息的第二普通節(jié)點;
[0008] 如果是,向作為所述第二普通節(jié)點的所述新的普通節(jié)點發(fā)送所述目標消息;
[0009] 如果否,判斷所述新的普通節(jié)點是否處于所述第一普通節(jié)點的黑名單中且請求獲 得所述新的普通節(jié)點發(fā)送的所述第一普通節(jié)點是否處于所述新的普通節(jié)點的黑名單中的 信息;
[0010] 在所述新的普通節(jié)點未處于所述第一普通節(jié)點的黑名單中、且請求獲得的所述新 的普通節(jié)點發(fā)送的信息為所述第一普通節(jié)點未處于所述新的普通節(jié)點的黑名單中時,根據(jù) 所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū),確定所述新的普通節(jié)點的聲譽 值或利他值,其中,所述利他值為根據(jù)普通節(jié)點接收和轉(zhuǎn)發(fā)其他普通節(jié)點的消息總數(shù)計算 得到的值; toon] 根據(jù)所述新的普通節(jié)點的聲譽值或利他值,判斷所述新的普通節(jié)點是否滿足預(yù)定 消息發(fā)送條件,并在判斷結(jié)果為是時,向所述新的普通節(jié)點發(fā)送所述目標消息,以使所述新 的普通節(jié)點將所述目標消息轉(zhuǎn)發(fā)給所述第二普通節(jié)點。
[0012] 較佳的,還包括:
[0013] 當根據(jù)所述新的普通節(jié)點的聲譽值或利他值,判斷出所述新的普通節(jié)點不滿足預(yù) 定消息發(fā)送條件時,將所述新的普通節(jié)點加入所述第一普通節(jié)點的黑名單中。
[0014] 較佳的,所述根據(jù)所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū),確 定所述新的普通節(jié)點的聲譽值,包括:
[0015] 判斷所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū);
[0016] 在判斷結(jié)果為是時,獲得自身存儲的所述新的普通節(jié)點的直接聲譽值,將獲得的 直接聲譽值確定為所述新的普通節(jié)點的聲譽值,其中,所述直接聲譽值為所述第一普通節(jié) 點對所述新的普通節(jié)點的聲譽進行直接評價的值;
[0017] 所述根據(jù)所述新的普通節(jié)點的聲譽值,判斷所述新的普通節(jié)點是否滿足預(yù)定消息 發(fā)送條件,包括:
[0018] 判斷所述第一普通節(jié)點存儲的所述新的普通節(jié)點的直接聲譽值是否不小于預(yù)設(shè) 的第一閾值,如果是,表明所述新的普通節(jié)點滿足預(yù)定消息發(fā)送條件。
[0019] 較佳的,每一社區(qū)中還包括超級節(jié)點,所述超級節(jié)點存儲自身所處社區(qū)的所有普 通節(jié)點對除自身普通節(jié)點之外的其他普通節(jié)點的直接聲譽值;
[0020] 所述根據(jù)所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū),確定所述新 的普通節(jié)點的聲譽值,包括:
[0021] 判斷所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū);
[0022] 在判斷結(jié)果為是時,向所在社區(qū)的超級節(jié)點請求獲得除所述第一普通節(jié)點之外的 其他普通節(jié)點對所述新的普通節(jié)點的直接聲譽值;
[0023] 根據(jù)接收到的所述直接聲譽值,計算所述第一普通節(jié)點對所述新的普通節(jié)點的間 接聲譽值;
[0024] 將計算得到的所述間接聲譽值,確定為所述新的普通節(jié)點的聲譽值;
[0025] 所述根據(jù)所述新的普通節(jié)點的聲譽值,判斷所述新的普通節(jié)點是否滿足預(yù)定消息 發(fā)送條件,包括:
[0026] 判斷計算得到的間接聲譽值是否不小于預(yù)設(shè)的第二閾值,如果是,表明所述新的 普通節(jié)點滿足預(yù)定消息發(fā)送條件。
[0027] 較佳的,所述每一社區(qū)中還包括超級節(jié)點,所述超級節(jié)點存儲自身所處社區(qū)的所 有普通節(jié)點對除自身普通節(jié)點之外的其他普通節(jié)點的直接聲譽值;
[0028] 所述根據(jù)所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū),確定所述新 的普通節(jié)點的聲譽值,包括:
[0029] 判斷所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū);
[0030] 在判斷結(jié)果為是時,向所在社區(qū)的超級節(jié)點請求獲得除所述第一普通節(jié)點之外的 其他普通節(jié)點對所述新的普通節(jié)點的直接聲譽值;
[0031] 根據(jù)接收到的所述直接聲譽值和所述第一普通節(jié)點存儲的所述新的普通節(jié)點的 直接聲譽值,計算所述第一普通節(jié)點對所述新的普通節(jié)點的綜合聲譽值;
[0032] 將計算得到的所述綜合聲譽值,確定為所述新的普通節(jié)點的聲譽值;
[0033] 所述根據(jù)所述新的普通節(jié)點的聲譽值,判斷所述新的普通節(jié)點是否滿足預(yù)定消息 發(fā)送條件,包括:
[0034] 判斷計算得到的綜合聲譽值是否不小于預(yù)設(shè)的第三閾值,如果是,表明所述新的 普通節(jié)點滿足預(yù)定消息發(fā)送條件。
[0035] 較佳的,每一社區(qū)中還包括超級節(jié)點,所述超級節(jié)點存儲自身所處社區(qū)的所有普 通節(jié)點接收除自身普通節(jié)點之外的其他普通節(jié)點的消息總數(shù)以及轉(zhuǎn)發(fā)除自身普通節(jié)點之 外的其他普通節(jié)點的消息總數(shù);
[0036] 所述根據(jù)所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū),確定所述新 的普通節(jié)點的利他值,包括:
[0037] 判斷所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū);
[0038] 在判斷結(jié)果為是時,向該社區(qū)的超級節(jié)點請求獲得所述新的普通節(jié)點接收和轉(zhuǎn)發(fā) 其他普通節(jié)點的消息總數(shù);
[0039] 根據(jù)接收到的所述消息總數(shù),計算所述新的普通節(jié)點的利他值;
[0040] 根據(jù)所述新的普通節(jié)點的利他值,判斷所述新的普通節(jié)點是否滿足預(yù)定消息發(fā)送 條件,包括:
[0041] 判斷計算得到的利他值是否不小于預(yù)設(shè)的第四閾值,如果是,表明所述新的普通 節(jié)點滿足預(yù)定消息發(fā)送條件。
[0042] 較佳的,每一社區(qū)還包括超級節(jié)點,所述超級節(jié)點存儲有其他社區(qū)的社區(qū)聲譽 值;
[0043] 所述根據(jù)所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū),確定所述新 的普通節(jié)點的聲譽值,包括:
[0044] 判斷所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū);
[0045] 在判斷結(jié)果為否時,向所在社區(qū)的超級節(jié)點請求獲得所述新的普通節(jié)點所處社區(qū) 的社區(qū)聲譽值;
[0046] 將請求獲得的所述社區(qū)聲譽值確定為所述新的普通節(jié)點的聲譽值;
[0047] 根據(jù)所述新的普通節(jié)點的聲譽值判斷所述新的普通節(jié)點是否滿足預(yù)定消息發(fā)送 條件,包括:
[0048] 判斷接收到的社區(qū)聲譽值是否不小于預(yù)設(shè)的第五閾值,如果是,表明所述新的普 通節(jié)點滿足預(yù)定消息發(fā)送條件;
[0049] 所述方法還包括:
[0050] 在向所述新的普通節(jié)點發(fā)送目標消息后,接收所述新的普通節(jié)點攜帶的屬于所述 第一普通節(jié)點所處社區(qū)的其他普通節(jié)點的消息;
[0051] 在判斷出新的普通節(jié)點不滿足預(yù)定消息發(fā)送條件時,將所述新的普通節(jié)點加入所 述第一普通節(jié)點的黑名單中,并向所述第一普通節(jié)點所處社區(qū)的超級節(jié)點發(fā)送判斷結(jié)果, 以使所述第一普通節(jié)點所處社區(qū)的超級節(jié)點根據(jù)接收到的判斷結(jié)果,向所述第一普通節(jié)點 所處社區(qū)中的其他普通節(jié)點發(fā)送將所述新的普通節(jié)點加入黑名單的信息,以使所述第一普 通節(jié)點所處社區(qū)中的其他普通節(jié)點將所述新的普通節(jié)點加入各自的黑名單中。
[0052] 較佳的,每一社區(qū)中還包括超級節(jié)點,所述超級節(jié)點存儲自身所處社區(qū)的所有普 通節(jié)點對除自身普通節(jié)點之外的其他普通節(jié)點的直接聲譽值;
[0053] 所述根據(jù)所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū),確定所述新 的普通節(jié)點的聲譽值,包括:
[0054] 判斷所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū);
[0055] 在判斷結(jié)果為否時,請求獲得所述第一普通節(jié)點所處社區(qū)的超級節(jié)點發(fā)送的所述 新的普通節(jié)點的直接聲譽值,其中,所述第一普通節(jié)點所處社區(qū)的超級節(jié)點發(fā)送的所述新 的普通節(jié)點的直接聲譽值為所述新的普通節(jié)點所處社區(qū)的超級節(jié)點發(fā)送給所述第一普通 節(jié)點所處社區(qū)的超級節(jié)點的;
[0056] 根據(jù)獲得的所述第一普通節(jié)點所處社區(qū)的超級節(jié)點發(fā)送的所述新的普通節(jié)點的 直接聲譽值,計算所述第一普通節(jié)點對所述新的普通節(jié)點的間接聲譽值;
[0057] 將計算得到的所述間接聲譽值,確定為所述新的普通節(jié)點的聲譽值;
[0058] 所述根據(jù)所述新的普通節(jié)點的聲譽值,判斷所述新的普通節(jié)點是否滿足預(yù)定消息 發(fā)送條件,包括:
[0059] 判斷計算得到的間接聲譽值是否不小于預(yù)設(shè)的第六閾值,如果是,表明所述新的 普通節(jié)點滿足預(yù)定消息發(fā)送條件;
[0060] 所述方法還包括:
[0061] 在向所述新的普通節(jié)點發(fā)送目標消息后,接收所述新的普通節(jié)點攜帶的屬于所述 第一普通節(jié)點所處社區(qū)的其他普通節(jié)點的消息;
[0062] 在判斷出新的普通節(jié)點不滿足預(yù)定消息發(fā)送條件時,將所述新的普通節(jié)點加入所 述第一普通節(jié)點的黑名單中,并向所述第一普通節(jié)點所處社區(qū)的超級節(jié)點發(fā)送判斷結(jié)果, 以使所述第一普通節(jié)點所處社區(qū)的超級節(jié)點根據(jù)接收到的判斷結(jié)果,向所述第一普通節(jié)點 所處社區(qū)中的其他普通節(jié)點發(fā)送將所述新的普通節(jié)點加入黑名單的信息,以使所述第一普 通節(jié)點所處社區(qū)中的其他普通節(jié)點將所述新的普通節(jié)點加入各自的黑名單中。
[0063] 較佳的,每一社區(qū)中還包括超級節(jié)點,所述超級節(jié)點存儲自身所處社區(qū)的所有普 通節(jié)點對除自身普通節(jié)點之外的其他普通節(jié)點的直接聲譽值以及其他社區(qū)的社區(qū)聲譽 值;
[0064] 所述根據(jù)所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū),確定所述新 的普通節(jié)點的聲譽值,包括:
[0065] 判斷所述第一普通節(jié)點和所述新的普通節(jié)點是否處于同一社區(qū);
[0066] 在判斷結(jié)果為否時,向所在社區(qū)的超級節(jié)點請求獲得所述新的普通節(jié)點所處社區(qū) 的社區(qū)聲譽值以及所述新的普通節(jié)點的直接聲譽值;其中,向所在社區(qū)的超級節(jié)點請求獲 得的所述新的普通節(jié)點的直接聲譽值為所述新的普通節(jié)點所處社區(qū)的超級節(jié)點發(fā)送給所 述第一普通節(jié)點所處社區(qū)的超級節(jié)點的;
[0067] 根據(jù)接收到的所述社區(qū)聲譽值以及接收到的所述直接聲譽值,計算所述第一普通 節(jié)點對所述新普通節(jié)點的綜合聲譽值;
[0068] 將計算得到的所述綜合聲譽值,確定為所述新的普通節(jié)點的聲譽值;
[0069] 所述根據(jù)所述新的普通節(jié)點的聲譽值,判斷所述新的普通節(jié)點是否滿足預(yù)定消息 發(fā)送條件,包括:
[0070] 判斷計算得到的間接聲譽值是否不小于預(yù)設(shè)的第七閾值,如果是,表明所述新的 普通節(jié)點滿足預(yù)定消息發(fā)送條件;
[0071] 所述方法還包括:
[0072] 在向所述新的普通節(jié)點發(fā)送目標消息后,接收所述新的普通節(jié)點攜帶的屬于所述 第一普通節(jié)點所處社區(qū)的其他普通節(jié)點的消息;
[0073] 在判斷出新的普通節(jié)點不滿足預(yù)定消息發(fā)送條件時,將所述新的普通節(jié)點加入所 述第一普通節(jié)點的黑名單中,并向所述第一普通節(jié)點所處社區(qū)的超級節(jié)點發(fā)送判斷結(jié)果, 以使所述第一普通節(jié)點所處社區(qū)的超級節(jié)點根據(jù)接收到的判斷結(jié)果,向所述第一普通節(jié)點 所處社區(qū)中的其他普通節(jié)點發(fā)送將所述新的普通節(jié)點加入黑名單的信息,以使所述第一普 通節(jié)點所處社區(qū)中的其他普通節(jié)點將所述新的普通節(jié)點加入各自的黑名單中。
[0074] 為達到上述目的,本發(fā)明實施例公開了一種消息推送裝置,應(yīng)用于機會網(wǎng)絡(luò)所包 含社區(qū)中的用于發(fā)送消息的第一普通節(jié)點,其中,根據(jù)普通節(jié)點的使用者的社會屬性,所述 機會網(wǎng)絡(luò)被預(yù)先劃分出多個社區(qū),每一社區(qū)至少包括一個普通節(jié)點;所述裝置包括:第一 判斷模塊、消息發(fā)送模塊、第二判斷模塊、信息請求獲得模塊、第三判斷模塊、確定模塊和第 四判斷模塊,其中,