專利名稱:一種穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種頁面推送方法,尤其涉及一種穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送 方法。
背景技術(shù):
終端web頁面推送技術(shù)是指當(dāng)用戶端使用瀏覽器瀏覽網(wǎng)頁時(shí),第三方設(shè)備(一般 指頁面推送服務(wù)器)根據(jù)用戶端瀏覽網(wǎng)頁的上行g(shù)et報(bào)文,向用戶端終端推送頁面。頁面 推送服務(wù)器一般部署于核心路由器旁路,由路由器將通過該路由器的用戶端上行報(bào)文分光 至推送服務(wù)器,頁面推送服務(wù)器根據(jù)用戶端訪問網(wǎng)頁上行報(bào)文,向用戶端終端推送頁面。申 請?zhí)枮?00910223404. 6的發(fā)明專利實(shí)現(xiàn)頁面推送和控制的網(wǎng)絡(luò)、頁面推送方法、控制方 法中就公開了這樣一種頁面推送的方法?,F(xiàn)有的推送服務(wù)器通常根據(jù)用戶端終端源IP地址區(qū)分用戶端,向用戶端終端推 送頁面。為提高用戶端感受,防止頁面推送泛濫,通常需要對每個用戶端設(shè)置推送間隔。一 般推送間隔較大,如4個小時(shí)等。而由于現(xiàn)實(shí)網(wǎng)絡(luò)中存在大量私網(wǎng),當(dāng)私網(wǎng)用戶端訪問網(wǎng)頁 時(shí),私網(wǎng)內(nèi)所有用戶終端IP地址都相同,此時(shí),由于傳統(tǒng)頁面推送服務(wù)器以IP地址區(qū)分用 戶端,會導(dǎo)致大量用戶終端不能推送頁面。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種能夠區(qū)分私網(wǎng)用戶端、單個用戶端并且能夠穿透私 網(wǎng),為每一個用戶端推送頁面的穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法。本發(fā)明的目的還在于提供的穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法能夠統(tǒng)計(jì)私網(wǎng) 下用戶終端的個數(shù)。為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下本發(fā)明穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法,運(yùn)行在包含頁面推送服務(wù)器和信 息服務(wù)器的網(wǎng)絡(luò)中,包含在所述的信息服務(wù)上設(shè)置透明頁面A和推送頁面B,在所述的頁面推送服務(wù)器上 設(shè)置兩種用戶端狀態(tài)私網(wǎng)用戶和單個用戶,并分別為不同用戶狀態(tài)的用戶端設(shè)置不同的 推送時(shí)間間隔私網(wǎng)用戶推送間隔和單個用戶推送間隔;所述的頁面推送服務(wù)器獲得用戶端發(fā)送的觸發(fā)頁面推送的GET報(bào)文后,檢查用戶 端的設(shè)置狀態(tài),如果用戶端為單個用戶,則判斷距上次推送的時(shí)間有沒有超過所述單個用 戶推送間隔,沒有超過則直接結(jié)束本次推送,超過則重定向用戶端報(bào)文,使用戶端訪問信息 服務(wù)器上的透明頁面A ;如果用戶端為私網(wǎng)用戶,則判斷所述用戶端距上次推送的時(shí)間有 沒有超過所述私網(wǎng)用戶推送間隔,如果沒有超過則直接結(jié)束本次推送,如果超過則重定向 用戶端報(bào)文,使用戶端訪問信息服務(wù)器上的透明頁面A ;如果用戶端沒有記錄,則將用戶端 狀態(tài)設(shè)置為私網(wǎng)用戶,并重定向用戶端報(bào)文,使用戶端訪問信息服務(wù)器上的透明頁面A ;所述信息服務(wù)器接收到用戶端請求訪問透明頁面A的請求后,檢查報(bào)文中是否攜帶了 cookie,如果攜帶有cookie則返回透明頁面A ;如果沒有則在報(bào)文中植入cookie,并 將所述cookie的生存周期設(shè)置為單個用戶推送間隔,同時(shí)加入推送頁面B的地址返回給用 戶端;所述的頁面推送服務(wù)器接收到的用戶端發(fā)送過來的訪問推送頁面B的報(bào)文,檢查 報(bào)文中是否攜帶了 cookie,如果沒有攜帶所述cookie,則將所述的用戶端設(shè)置為單個用戶 狀態(tài);如果信息服務(wù)器接收到的用戶端的發(fā)送過來的訪問推送頁面B的報(bào)文中包含所述的 cookie,則繼續(xù)保持用戶端的私網(wǎng)用戶狀態(tài);所述的信息服務(wù)器接收到用戶端發(fā)送過來的訪問推送頁面B的報(bào)文,返回推送頁 面B給用戶端,從而結(jié)束本次推送;所述的頁面推送服務(wù)器再次接收所述用戶端發(fā)送過來的觸發(fā)頁面推送的GET報(bào) 文后,繼續(xù)按照上述步驟向所述用戶端推送頁面,并監(jiān)視用戶端發(fā)往信息服務(wù)器的報(bào)文,檢 查是否攜帶cookie并記錄,如果在一個計(jì)數(shù)周期內(nèi)接收到的所述用戶端發(fā)送的請求訪問 透明頁面A的報(bào)文中都攜帶了 cookie,則將該用戶端狀態(tài)設(shè)置為單個用戶狀態(tài),否則,繼續(xù) 保持用戶端的私網(wǎng)用戶狀態(tài)。所述的計(jì)數(shù)周期是一個時(shí)間間隔或者訪問次數(shù)。所述的頁面推送服務(wù)器在cookie的生存周期的時(shí)間范圍內(nèi)監(jiān)測狀態(tài)為私網(wǎng)用戶 的用戶端發(fā)送過來的請求訪問透明頁面A的報(bào)文,并檢測報(bào)文中是否攜帶cookie,如果沒 有攜帶cookie,則將該用戶端對應(yīng)的用戶終端數(shù)加1。所述的頁面推送服務(wù)器在cookie的生存周期的時(shí)間范圍內(nèi)監(jiān)測狀態(tài)為私網(wǎng)用戶 的用戶端發(fā)送過來的請求訪問推送頁面B的報(bào)文,每監(jiān)測到一段同一用戶端發(fā)送過來的請 求訪問推送頁面B的報(bào)文,就將該用戶端對應(yīng)的用戶終端數(shù)加1。本發(fā)明的有益效果如下使用本發(fā)明的穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法,可以檢測每一個獨(dú)立IP是 否含有多個用戶終端,并且可以統(tǒng)計(jì)該獨(dú)立IP下的用戶終端數(shù)量。解決了第三方網(wǎng)絡(luò)側(cè)設(shè) 備無法識別和統(tǒng)計(jì)私網(wǎng)用戶端的難題;同時(shí),本發(fā)明的頁面推送方法能夠?yàn)槊恳挥脩艚K端 (包括私網(wǎng))推送頁面,對于私網(wǎng)下的用戶端也能保持較高的到達(dá)率并且沒有對單個用戶 重復(fù)推送的情況。
圖1為本發(fā)明的穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法的流程圖。
具體實(shí)施例方式參見附圖1,本發(fā)明的穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法首先在信息服務(wù)器 上設(shè)置透明頁面A和推送頁面B,同時(shí)在頁面推送服務(wù)器上設(shè)置兩種用戶狀態(tài)私網(wǎng)用戶和 單個用戶,并分別為不同用戶狀態(tài)的用戶端設(shè)置不同的推送時(shí)間間隔私網(wǎng)用戶推送間隔 和單個用戶推送間隔;其中私網(wǎng)用戶推送間隔較短,比如可以是1分鐘,單個用戶推送間隔 較長,比如可以是4小時(shí)。這樣,當(dāng)頁面推送服務(wù)器接收到用戶端發(fā)送過來的觸發(fā)頁面推送的報(bào)文后會先核 對用戶端的IP地址,檢查用戶端狀態(tài),如果該用戶端為單個用戶狀態(tài),則判斷距上次向該
4用戶端推送頁面的時(shí)間間隔是否超過單個用戶推送間隔,如果沒有超過,則直接結(jié)束本次 推送,如果超過則重定向用戶端報(bào)文,使用戶端訪問信息服務(wù)器上的透明頁面A ;同樣,如 果所述用戶端為私網(wǎng)用戶狀態(tài),則判斷距上次向該用戶端推送頁面的時(shí)間間隔是否超過私 網(wǎng)用戶推送間隔,如果沒有超過,則直接結(jié)束本次推送,如果超過,則重定向用戶端報(bào)文, 使用戶端訪問信息服務(wù)器上的透明頁面A ;還有就是該用戶端在頁面推送服務(wù)器上沒有記 錄,則直接將該用戶設(shè)為私網(wǎng)用戶狀態(tài),并在以后的推送中對其真實(shí)的用戶狀態(tài)作出判斷。用戶端接收到頁面推送服務(wù)器發(fā)送的重定向報(bào)文后,會向信息服務(wù)器發(fā)送要求訪 問透明頁面A的報(bào)文,當(dāng)信息服務(wù)器接受到所述用戶端的報(bào)文后,先檢查報(bào)文中有沒有攜 帶cookie,如果沒有攜帶cookie,則植入cookie,并將所述cookie的生存周期設(shè)置為單個 用戶推送間隔,并同時(shí)加入推送頁面B的地址返回給用戶端;如果攜帶cookie,則直接返回 透明頁面A。這樣在完成一次推送之后,在cookie的生存周期內(nèi),同一用戶端或者出于私網(wǎng) 下的同一用戶終端發(fā)送過來的要求訪問透明頁面A的報(bào)文中都會攜帶cookie,該cookie在 信息服務(wù)器接到報(bào)文時(shí)會被檢測到,從而只返回透明頁面,不對同一用戶進(jìn)行連續(xù)推送,提 升用戶感受;同時(shí),在私網(wǎng)用戶端下的不同用戶終端發(fā)送的請求由于不包含cookie,信息 服務(wù)器會返回植入cookie且加入推送頁面B的報(bào)文,從而完成向不同用戶端的頁面推送。如果用戶端實(shí)際上為單個用戶,則在cookie的生命周期內(nèi),頁面推送服務(wù)器監(jiān)視 用戶端發(fā)往信息服務(wù)器的請求訪問透明頁面A的報(bào)文中都會攜帶cookie,這樣頁面推送服 務(wù)器以此為判斷依據(jù),將用戶狀態(tài)設(shè)置為單個用戶狀態(tài)。如果用戶端是禁用cookie,則用戶端在接收到信息服務(wù)器返回的植入cookie,并 加入推送頁面B的報(bào)文后,向信息服務(wù)器發(fā)送的請求訪問推送頁面B的報(bào)文中將不會攜帶 cookie,此時(shí),頁面推送服務(wù)器監(jiān)測會到?jīng)]有包含cookie的請求訪問推送頁面B的報(bào)文,從 而感知此用戶端是禁用cookie的,為了避免向該用戶的連續(xù)大量推送,直接將該用戶端設(shè) 置為單個用戶狀態(tài),按照單個用戶推送間隔推送頁面。本發(fā)明的穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法還可以統(tǒng)計(jì)同一 IP地址下用戶 終端的個數(shù),具體的,在頁面推送服務(wù)器上監(jiān)視狀態(tài)為私網(wǎng)用戶的用戶端發(fā)往信息服務(wù)器 的要求訪問推送頁面B的報(bào)文,每監(jiān)測到同一終端發(fā)送過來的請求訪問推送頁面B的報(bào) 文,就將該用戶端包含的用戶終端數(shù)加1,這是因?yàn)樵诒痉椒ㄖ校骄W(wǎng)下的同一用戶終端在 cookie的生存周期內(nèi)只發(fā)送一次訪問推送頁面B的報(bào)文,如果在cookie的生存周期內(nèi)監(jiān)測 到同一用戶端的多個訪問推送頁面B的報(bào)文說明有多個用戶終端。本發(fā)明的穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法還可以通過另一種方法統(tǒng)計(jì)同一 IP地址下用戶終端的個數(shù),即在頁面推送服務(wù)器上監(jiān)視狀態(tài)為私網(wǎng)用戶的用戶端發(fā)往信 息服務(wù)器的要求訪問透明頁面A的報(bào)文,并檢查報(bào)文中是否攜帶了 cookie,如果沒有攜帶 cookie,則將用戶端對應(yīng)的用戶終端數(shù)加1,這是因?yàn)樗骄W(wǎng)用戶端下的某一用戶終端第一次 訪問信息服務(wù)器后就會被植入cookie,這樣在cookie的生存周期內(nèi)用戶端發(fā)往信息服務(wù) 器的報(bào)文中都會攜帶cookie,如果頁面推送服務(wù)器監(jiān)測到不含cookie的報(bào)文,則說明該報(bào) 文是私網(wǎng)用戶端下的另一個用戶終端發(fā)送的,頁面推送服務(wù)器依此為依據(jù)將用戶終端數(shù)加 1。
權(quán)利要求
穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法,運(yùn)行在包含頁面推送服務(wù)器和信息服務(wù)器的網(wǎng)絡(luò)中,其特征在于包含在所述的信息服務(wù)上設(shè)置透明頁面A和推送頁面B,在所述的頁面推送服務(wù)器上設(shè)置兩種用戶端狀態(tài)私網(wǎng)用戶和單個用戶,并分別為不同用戶狀態(tài)的用戶端設(shè)置不同的推送時(shí)間間隔私網(wǎng)用戶推送間隔和單個用戶推送間隔;所述的頁面推送服務(wù)器獲得用戶端發(fā)送的觸發(fā)頁面推送的GET報(bào)文后,檢查用戶端的設(shè)置狀態(tài),如果用戶端為單個用戶,則判斷距上次推送的時(shí)間有沒有超過所述單個用戶推送間隔,沒有超過則直接結(jié)束本次推送,超過則重定向用戶端報(bào)文,使用戶端訪問信息服務(wù)器上的透明頁面A;如果用戶端為私網(wǎng)用戶,則判斷所述用戶端距上次推送的時(shí)間有沒有超過所述私網(wǎng)用戶推送間隔,如果沒有超過則直接結(jié)束本次推送,如果超過則重定向用戶端報(bào)文,使用戶端訪問信息服務(wù)器上的透明頁面A;如果用戶端沒有記錄,則將用戶端狀態(tài)設(shè)置為私網(wǎng)用戶,并重定向用戶端報(bào)文,使用戶端訪問信息服務(wù)器上的透明頁面A;所述信息服務(wù)器接收到用戶端請求訪問透明頁面A的請求后,檢查報(bào)文中是否攜帶了cookie,如果攜帶有cookie則返回透明頁面A;如果沒有則在報(bào)文中植入cookie,并將所述cookie的生存周期設(shè)置為單個用戶推送間隔,同時(shí)加入推送頁面B的地址返回給用戶端;所述的頁面推送服務(wù)器接收到的用戶端發(fā)送過來的訪問推送頁面B的報(bào)文,檢查報(bào)文中是否攜帶了cookie,如果沒有攜帶所述cookie,則將所述的用戶端設(shè)置為單個用戶狀態(tài);如果信息服務(wù)器接收到的用戶端的發(fā)送過來的訪問推送頁面B的報(bào)文中包含所述的cookie,則繼續(xù)保持用戶端的私網(wǎng)用戶狀態(tài);所述的信息服務(wù)器接收到用戶端發(fā)送過來的訪問推送頁面B的報(bào)文,返回推送頁面B給用戶端,從而結(jié)束本次推送;所述的頁面推送服務(wù)器再次接收所述用戶端發(fā)送過來的觸發(fā)頁面推送的GET報(bào)文后,繼續(xù)按照上述步驟向所述用戶端推送頁面,并監(jiān)視用戶端發(fā)往信息服務(wù)器的報(bào)文,檢查是否攜帶cookie并記錄,如果在一個計(jì)數(shù)周期內(nèi)接收到的所述用戶端發(fā)送的請求訪問透明頁面A的報(bào)文中都攜帶了cookie,則將該用戶端狀態(tài)設(shè)置為單個用戶狀態(tài),否則,繼續(xù)保持用戶端的私網(wǎng)用戶狀態(tài)。
2.根據(jù)權(quán)利要求1所述的、穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法,其特征在于所述 的計(jì)數(shù)周期是一個時(shí)間間隔或者訪問次數(shù)。
3.根據(jù)權(quán)利要求1所述的、穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法,其特征在于所述 的頁面推送服務(wù)器在cookie的生存周期的時(shí)間范圍內(nèi)監(jiān)測狀態(tài)為私網(wǎng)用戶的用戶端發(fā)送 過來的請求訪問透明頁面A的報(bào)文,并檢測報(bào)文中是否攜帶cookie,如果沒有攜帶cookie, 則將該用戶端對應(yīng)的用戶終端數(shù)加1。
4.根據(jù)權(quán)利要求1所述的、穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法,其特征在于所述 的頁面推送服務(wù)器在cookie的生存周期的時(shí)間范圍內(nèi)監(jiān)測狀態(tài)為私網(wǎng)用戶的用戶端發(fā)送 過來的請求訪問推送頁面B的報(bào)文,每監(jiān)測到一段同一用戶端發(fā)送過來的請求訪問推送頁 面B的報(bào)文,就將該用戶端對應(yīng)的用戶終端數(shù)加1。
全文摘要
本發(fā)明公開了一種穿透私網(wǎng)、網(wǎng)關(guān)、proxy的頁面推送方法,該方法在信息推送服務(wù)器上設(shè)置透明頁面和推送頁面,進(jìn)行推送頁面時(shí),先將用戶報(bào)文重定向到透明頁面,并通過檢查用戶訪問信息服務(wù)器的透明頁面的報(bào)文中是否攜帶cookie來判斷用戶終端在合理的時(shí)間內(nèi)是否被推送頁面,如果攜帶cookie則說明在cookie的生存周期內(nèi)已經(jīng)推送過頁面,則本次不在推送,如果沒有攜帶cookie,則說明在cookie的生存周期內(nèi)沒有推送過頁面,則向用戶終端推送頁面,并在返回給用戶端的報(bào)文中植入cookie,將cookie的生存周期設(shè)置為合理的推送間隔。本發(fā)明解決了目前的推送方法無法區(qū)分私網(wǎng)用戶和單個用戶,從而無法對私網(wǎng)下同一IP地址的用戶終端進(jìn)行頁面推送的問題。
文檔編號H04L29/08GK101902495SQ200910260910
公開日2010年12月1日 申請日期2009年12月17日 優(yōu)先權(quán)日2009年12月17日
發(fā)明者劉生, 姚震環(huán), 張玉波, 張錚, 李娜, 李翔宇, 羅峰, 鄭芳只, 黃蘇支 申請人:億贊普(北京)科技有限公司