專利名稱:路由方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別涉及一種路由方法和裝置。
背景技術(shù):
路由是網(wǎng)絡(luò)層的數(shù)據(jù)包轉(zhuǎn)發(fā)設(shè)備?,F(xiàn)有技術(shù)一般通過路由器轉(zhuǎn)發(fā)數(shù)據(jù)包來實(shí)現(xiàn)網(wǎng)絡(luò)互連。目前比較通用的一種路由方法是采用將上層IP存放在本地session中,并生成唯一的seq,將該seq存放在包體的預(yù)留字段中,帶到下層server ;收到下層server回包的時(shí)候,從包體的預(yù)留字段中,取出seq,根據(jù)該sequence從session中取出上層ip,然后實(shí)現(xiàn)路由功能。現(xiàn)有技術(shù)中還有一種路由方法是采用在協(xié)議包頭中填寫上層IP地址,主要用于下層服務(wù)器是interface加server的架構(gòu)的場景。在這個(gè)場景下,下層服務(wù)器的interface 負(fù)責(zé)接包,然后根據(jù)一定的規(guī)則給下層server發(fā)包,server收到包處理后,不再回給 interface,而是直接回到上層server,這個(gè)時(shí)候,就需要在包頭中填入上層server的IP以完成路由?,F(xiàn)有技術(shù)至少具有如下缺點(diǎn)現(xiàn)有技術(shù)中第一種路由方法中,每一層server都需要在本地存儲上層ip,通過異步的方式來實(shí)現(xiàn)復(fù)雜路由,這種方式增加了編碼工作量,增加了每層服務(wù)器的架構(gòu)設(shè)計(jì)的復(fù)雜度;現(xiàn)有技術(shù)中第二種路由方法中,需要在包頭中增加上層server的IP地址,無法解決需要跳過兩層interace或需要跳過多層interface的情況。并且上述兩種方案都無法解決根據(jù)不同的業(yè)務(wù)邏輯回包到不同的上層server的情況。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種路由方法和裝置。所述技術(shù)方案如下一種路由方法,包括接收攜帶變長字段的請求,所述請求的變長字段中包含所述請求經(jīng)過的各個(gè)服務(wù)器的地址信息; 判斷所述請求是否在本地執(zhí)行,如果是,則執(zhí)行所述請求,并根據(jù)預(yù)設(shè)規(guī)則在所述變長字段中保存的地址信息中查詢指定服務(wù)器的地址信息;根據(jù)查詢到的地址信息,將所述請求的響應(yīng)發(fā)送給所述所述指定服務(wù)器。所述變長字段為接入層的服務(wù)器接收到請求時(shí)寫入的。所述響應(yīng)中包括所述請求,相應(yīng)地,將所述請求的響應(yīng)發(fā)送給所述所述指定服務(wù)器還包括當(dāng)所述指定服務(wù)器接收到所述響應(yīng)時(shí),將所述請求中所述指定服務(wù)器對應(yīng)的地址
信息清除。
所述方法還包括當(dāng)所述請求不在本地執(zhí)行,則將本地地址信息寫入所述變長字段,并將寫入后的請求轉(zhuǎn)發(fā)至下一層服務(wù)器。將本地地址信息寫入所述變長字段,具體包括將地址信息、預(yù)設(shè)類型和所述地址信息的長度寫入所述變長字段。一種路由裝置,包括接收模塊,用于接收攜帶變長字段的請求,所述請求的變長字段中包含所述請求經(jīng)過的各個(gè)服務(wù)器的地址信息;判斷模塊,用于判斷所述請求是否在本地執(zhí)行,如果是,則觸發(fā)用于執(zhí)行所述請求的執(zhí)行模塊,并觸發(fā)用于根據(jù)預(yù)設(shè)規(guī)則在所述變長字段中保存的地址信息中查詢指定服務(wù)器的地址信息的查詢模塊;發(fā)送模塊,用于根據(jù)查詢到的地址信息,將所述請求的響應(yīng)發(fā)送給所述指定服務(wù)
ο所述變長字段為接入層的服務(wù)器接收到請求時(shí)寫入的。所述響應(yīng)中包括所述請求,相應(yīng)地,所述裝置還包括清除模塊,用于當(dāng)接收到所述響應(yīng)時(shí),將所述請求中對應(yīng)的地址信息清除。所述裝置還包括寫入模塊,用于當(dāng)所述請求不在本地執(zhí)行,則將本地地址信息寫入所述變長字段, 并將寫入后的請求轉(zhuǎn)發(fā)至下一層服務(wù)器。所述寫入模塊具體用于將地址信息、預(yù)設(shè)類型和所述地址信息的長度寫入所述變長字段。本發(fā)明實(shí)施例提供的技術(shù)方案的有益效果是通過在集群服務(wù)器中將地址信息寫入變長字段中以供尋址,并根據(jù)寫入的地址信息進(jìn)行任意層的跳轉(zhuǎn),不僅以方便快捷的方式實(shí)現(xiàn)復(fù)雜系統(tǒng)的路由,并且可以根據(jù)業(yè)務(wù)邏輯需要跳轉(zhuǎn)到任何一個(gè)上層服務(wù)器,增加了協(xié)議和邏輯的靈活性,并減少了現(xiàn)有解決方案的復(fù)雜度。
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是本發(fā)明實(shí)施例提供的一種路由方法的流程圖;圖2是本發(fā)明實(shí)施例提供的又一種路由方法的流程圖;圖3是本發(fā)明實(shí)施例提供的一種路由裝置的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。
IP 因特網(wǎng)上給每條主機(jī)或者設(shè)計(jì)的唯一標(biāo)志Sequence 序列號,一般是唯一的用來標(biāo)識請求包和返回包的序列號。Session 本地存儲的數(shù)據(jù),用于在server交互時(shí),存儲信息以便在回包的時(shí)候利用,可以采用共享內(nèi)存存儲,也可以采用進(jìn)程內(nèi)的緩存存儲。實(shí)施例1為了增強(qiáng)協(xié)議和邏輯的靈活性,本發(fā)明實(shí)施例提供了一種路由方法,參見圖1,該方法包括101 接收攜帶變長字段的請求,所述請求的變長字段中包含所述請求經(jīng)過的各個(gè)服務(wù)器的地址信息;102 判斷所述請求是否在本地執(zhí)行,如果是,則執(zhí)行步驟103 ;103 執(zhí)行所述請求,并根據(jù)預(yù)設(shè)規(guī)則在所述變長字段中保存的地址信息中查詢指定服務(wù)器的地址信息;104 根據(jù)查詢到的地址信息,將所述請求的響應(yīng)發(fā)送給所述所述指定服務(wù)器。所述變長字段為接入層的服務(wù)器接收到請求時(shí)寫入的。所述響應(yīng)中包括所述請求,相應(yīng)地,將所述請求的響應(yīng)發(fā)送給所述所述指定服務(wù)器還包括當(dāng)所述指定服務(wù)器接收到所述響應(yīng)時(shí),將所述請求中所述指定服務(wù)器對應(yīng)的地址
信息清除。所述方法還包括當(dāng)所述請求不在本地執(zhí)行,則將本地地址信息寫入所述變長字段,并將寫入后的請求轉(zhuǎn)發(fā)至下一層服務(wù)器。將本地地址信息寫入所述變長字段,具體包括將地址信息、預(yù)設(shè)類型和所述地址信息的長度寫入所述變長字段。本發(fā)明實(shí)施例提供的方法,通過在集群服務(wù)器中將地址信息寫入變長字段中以供尋址,并根據(jù)寫入的地址信息進(jìn)行任意層的跳轉(zhuǎn),不僅以方便快捷的方式實(shí)現(xiàn)復(fù)雜系統(tǒng)的路由,并且可以根據(jù)業(yè)務(wù)邏輯需要跳轉(zhuǎn)到任何一個(gè)上層服務(wù)器,增加了協(xié)議和邏輯的靈活性,并減少了現(xiàn)有解決方案的復(fù)雜度。實(shí)施例2為了增強(qiáng)協(xié)議和邏輯的靈活性,本發(fā)明實(shí)施例提供了一種路由方法,參見圖2,該方法包括201 當(dāng)接入層的服務(wù)器接收到來自用戶層的請求時(shí),在攜帶該請求的數(shù)據(jù)包中寫入變長字段,并將該寫入后的數(shù)據(jù)包下發(fā);在本發(fā)明實(shí)施例中,當(dāng)接收到來自用戶層的請求時(shí),需要對攜帶該請求的數(shù)據(jù)包進(jìn)行初始化,即在數(shù)據(jù)包的協(xié)議包頭和包體之間增加一個(gè)變長字段,優(yōu)選地,該變長字段的類型可以為tlv格式,該格式包含類型(Type),長度(Length)和信息(Valve)三部分。該變長字段可以為wLen+stFieldl+stField2+. . . +stFieldN,其中wlen為后面多個(gè)tlv的總長度,StField就是tlv字段。其中,tlv格式是一種變長的數(shù)據(jù)格式,分為類型(Type),長度(Length)和信息 (Valve)三部分,其中,Type用于區(qū)分不同意義的字段,而長度和信息則分別為信息的長度和信息的具體內(nèi)容。可選地,該變長字段的類型還可以為只包含類型和服務(wù)器地址信息兩部分的數(shù)據(jù)格式。202 當(dāng)前服務(wù)器接收到包含變長字段的請求(即寫入變長字段的數(shù)據(jù)包)時(shí),將當(dāng)前服務(wù)器所分配到的地址信息寫入該請求;其中,該請求的變長字段中包含該請求經(jīng)過的各個(gè)服務(wù)器的地址信息,需要說明的是,系統(tǒng)可以將變長字段中未包括的服務(wù)器設(shè)置為必須返回的服務(wù)器,即當(dāng)請求完成后, 其響應(yīng)必然要跳轉(zhuǎn)到該未包括的服務(wù)器。優(yōu)選地,該地址信息包括服務(wù)器IP、端口號和預(yù)設(shè)類型,其中,服務(wù)器IP和端口號為預(yù)先分配的,預(yù)設(shè)類型為協(xié)議制定者統(tǒng)一分配,給每一層服務(wù)器分配一個(gè)。在本發(fā)明實(shí)施例中,請求是通過逐層傳遞而下發(fā)的,并由響應(yīng)該請求的服務(wù)器進(jìn)行處理,當(dāng)服務(wù)器接收到包含變長字段的請求時(shí),將地址信息中的服務(wù)器IP和端口號寫入變長字段的信息部分,即寫入tlv的Value部分,并將預(yù)設(shè)類型寫入tlv的Type部分,進(jìn)一步地,當(dāng)該變長字段為tlv格式時(shí),該地址信息還可以包括信息長度,可將該信息長度寫入 tlv的Length部分,在一般情況下,服務(wù)器IP和端口號一共為6字節(jié),因此,Length部分可以為6。需要說明的是,該變長字段也可以是tlv格式以外的字段格式,而在寫入的地址信息也可以只有服務(wù)器IP、端口號和預(yù)設(shè)類型,該格式較tlv格式的變長字段簡化。203 判斷當(dāng)前服務(wù)器是否是執(zhí)行該請求的服務(wù)器,如果是,則執(zhí)行步驟205 ;如果否,則執(zhí)行步驟204;204 將寫入后的請求下發(fā)至下一層服務(wù)器,結(jié)束;在本發(fā)明實(shí)施例中,當(dāng)前接收到請求的服務(wù)器當(dāng)需要將該請求轉(zhuǎn)發(fā)至下一層服務(wù)器時(shí),將寫入后的請求發(fā)至該下一層服務(wù)器。該步驟202-204還可以是先判斷該請求是否需在本地執(zhí)行,如果是,則執(zhí)行步驟 205,如果否,則將服務(wù)器的本地地址信息寫入變長字段,并將寫入后的請求發(fā)至下一層服務(wù)器。進(jìn)一步地,若獲知當(dāng)前請求為不合法請求時(shí),可直接將該不合法請求跳轉(zhuǎn)回接入層的服務(wù)器。205 執(zhí)行該請求,并根據(jù)預(yù)設(shè)規(guī)則在請求的變長字段保存的地址信息中查詢指定服務(wù)器的地址信息;其中,該預(yù)設(shè)規(guī)則是指程序開發(fā)人員所預(yù)設(shè)的哪些響應(yīng)應(yīng)返回給哪些指定服務(wù)器。如,對于查詢請求,按照預(yù)設(shè)規(guī)則,需返回給邏輯層服務(wù)器,等等。206:根據(jù)查詢到的地址信息,將請求的響應(yīng)發(fā)送給指定服務(wù)器。在本發(fā)明實(shí)施例中,當(dāng)服務(wù)器接收到請求時(shí),該請求的變長字段中已經(jīng)存儲了所有向上的上層服務(wù)器的地址信息,本層服務(wù)器處理完該請求時(shí),按照服務(wù)器預(yù)設(shè)規(guī)則,根據(jù)預(yù)先存儲的服務(wù)器地址信息將該請求的響應(yīng)發(fā)送給指定服務(wù)器,即使得響應(yīng)可以跳轉(zhuǎn)到任何一個(gè)上層服務(wù)器中,無需通過層層轉(zhuǎn)發(fā),不僅增加了協(xié)議和邏輯的靈活性,且減少了現(xiàn)有解決方案的復(fù)雜度。進(jìn)一步地,當(dāng)該指定服務(wù)器接收到響應(yīng)時(shí),該響應(yīng)包含其對應(yīng)的請求,則將請求中變長字段內(nèi)該指定服務(wù)器對應(yīng)的地址信息清除,從而節(jié)約了代碼,也節(jié)約了網(wǎng)絡(luò)資源。舉例說明,若接入層的服務(wù)器接收到一調(diào)出10條最近消息記錄的請求,則在該請求中寫入一變長字段wLen,并將該寫入變長字段后的請求發(fā)送給下一層服務(wù)器,下一層服務(wù)器可以為邏輯層服務(wù)器,該服務(wù)器接收到該寫入后的請求,將自身的服務(wù)器IP、端口號和預(yù)設(shè)類型2寫入請求,使得該變長字段為wLen+stFieldl (stFieldl中包含服務(wù)器 IP 61.81. 110.0、端口號21和預(yù)設(shè)類型2)并將請求下發(fā)至索引層服務(wù)器,索引層服務(wù)器接收到該請求后,將自身的服務(wù)器IP、端口號和預(yù)設(shè)類型3寫入請求,使得該變長字段為 wLen+stFieldl+stField2 (stFieldl 中包含服務(wù)器 IP 61. 81. 110. 0、端口號 21 和預(yù)設(shè)類型 2 ;stField2中包含服務(wù)器IP 61. 81. 115. 0、端口號108和預(yù)設(shè)類型3),并將請求下發(fā)至沉淀層服務(wù)器,沉淀層服務(wù)器接收到該請求后,將自身的服務(wù)器IP、端口號和預(yù)設(shè)類型4寫入請求,使得該變長字段為wLen+stFieldl+stField2+stField3 (stFieldl中包含服務(wù)器IP 61. 81. 110. 0、端口號21和預(yù)設(shè)類型2 ;stField2中包含服務(wù)器IP61. 81. 115. 0、端口號108 和預(yù)設(shè)類型3 ;stField3中包含服務(wù)器IP 61. 81. 115. 8、端口號110和預(yù)設(shè)類型4),并處理該請求,調(diào)出10條最近消息記錄,將所述記錄和包含變長字段的請求打包成一響應(yīng),根據(jù)系統(tǒng)預(yù)設(shè)規(guī)則將該響應(yīng)跳轉(zhuǎn)給預(yù)設(shè)的服務(wù)器,如該沉淀層所反饋的響應(yīng)必須反饋給邏輯層服務(wù)器,則根據(jù)變長字段中的stFieldl,將該響應(yīng)跳轉(zhuǎn)給stFieldl中所指定地址的服務(wù)器,當(dāng)該指定地址的服務(wù)器接收到該響應(yīng)后,清除響應(yīng)中該服務(wù)器的地址信息。在本實(shí)施例中所述的請求,可以為搜索請求、提取請求或其他網(wǎng)絡(luò)技術(shù)中常用的數(shù)據(jù)請求,本發(fā)明實(shí)施例對此不做具體限定。本發(fā)明實(shí)施例提供的方法,通過在集群服務(wù)器中將地址信息寫入變長字段中以供尋址,并根據(jù)寫入的地址信息進(jìn)行任意層的跳轉(zhuǎn),不僅以方便快捷的方式實(shí)現(xiàn)復(fù)雜系統(tǒng)的路由,并且可以根據(jù)業(yè)務(wù)邏輯需要跳轉(zhuǎn)到任何一個(gè)上層服務(wù)器,增加了協(xié)議和邏輯的靈活性,并減少了現(xiàn)有解決方案的復(fù)雜度。實(shí)施例3為了增強(qiáng)協(xié)議和邏輯的靈活性,本發(fā)明實(shí)施例提供了一種路由裝置,參見圖3,該裝置包括接收模塊301,用于接收攜帶變長字段的請求,該請求的變長字段中包含該請求經(jīng)過的各個(gè)服務(wù)器的地址信息;判斷模塊302,用于判斷該請求是否在本地執(zhí)行,如果是,則觸發(fā)用于執(zhí)行該請求的執(zhí)行模塊303,并觸發(fā)用于根據(jù)預(yù)設(shè)規(guī)則在該變長字段中保存的地址信息中查詢指定服務(wù)器的地址信息的查詢模塊304 ;發(fā)送模塊305,用于根據(jù)查詢到的地址信息,將該請求的響應(yīng)發(fā)送給該指定服務(wù)
ο該變長字段為接入層的服務(wù)器接收到請求時(shí)寫入的。該響應(yīng)中包括該請求,相應(yīng)地,該裝置還包括清除模塊306,用于當(dāng)接收到該響應(yīng)時(shí),將該請求中對應(yīng)的地址信息清除。該裝置還包括寫入模塊307,用于當(dāng)該請求不在本地執(zhí)行,則將本地地址信息寫入該變長字段, 并將寫入后的請求轉(zhuǎn)發(fā)至下一層服務(wù)器。
該寫入模塊307具體用于將地址信息、預(yù)設(shè)類型和該地址信息的長度寫入該變長字段。本實(shí)施例提供的裝置,具體可以為服務(wù)器,與方法實(shí)施例屬于同一構(gòu)思,其具體實(shí)現(xiàn)過程詳見方法實(shí)施例,這里不再贅述。本發(fā)明實(shí)施例提供的裝置,通過在集群服務(wù)器中將地址信息寫入變長字段中以供尋址,并根據(jù)寫入的地址信息進(jìn)行任意層的跳轉(zhuǎn),不僅以方便快捷的方式實(shí)現(xiàn)復(fù)雜系統(tǒng)的路由,并且可以根據(jù)業(yè)務(wù)邏輯需要跳轉(zhuǎn)到任何一個(gè)上層服務(wù)器,增加了協(xié)議和邏輯的靈活性,并減少了現(xiàn)有解決方案的復(fù)雜度。本發(fā)明實(shí)施例提供的上述技術(shù)方案的全部或部分可以通過程序指令相關(guān)的硬件來完成,所述程序可以存儲在可讀取的存儲介質(zhì)中,該存儲介質(zhì)包括R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種路由方法,其特征在于,包括接收攜帶變長字段的請求,所述請求的變長字段中包含所述請求經(jīng)過的各個(gè)服務(wù)器的地址信息;判斷所述請求是否在本地執(zhí)行,如果是,則執(zhí)行所述請求,并根據(jù)預(yù)設(shè)規(guī)則在所述變長字段中保存的地址信息中查詢指定服務(wù)器的地址信息;根據(jù)查詢到的地址信息,將所述請求的響應(yīng)發(fā)送給所述指定服務(wù)器。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述變長字段為接入層的服務(wù)器接收到請求時(shí)寫入的。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述響應(yīng)中包括所述請求,相應(yīng)地,所述方法還包括當(dāng)接收到所述響應(yīng)時(shí),將所述請求中對應(yīng)的地址信息清除。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括當(dāng)所述請求不在本地執(zhí)行,則將本地地址信息寫入所述變長字段,并將寫入后的請求轉(zhuǎn)發(fā)至下一層服務(wù)器。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,將本地地址信息寫入所述變長字段,具體包括將地址信息、預(yù)設(shè)類型和所述地址信息的長度寫入所述變長字段。
6.一種路由裝置,其特征在于,包括接收模塊,用于接收攜帶變長字段的請求,所述請求的變長字段中包含所述請求經(jīng)過的各個(gè)服務(wù)器的地址信息;判斷模塊,用于判斷所述請求是否在本地執(zhí)行,如果是,則觸發(fā)用于執(zhí)行所述請求的執(zhí)行模塊,并觸發(fā)用于根據(jù)預(yù)設(shè)規(guī)則在所述變長字段中保存的地址信息中查詢指定服務(wù)器的地址信息的查詢模塊;發(fā)送模塊,用于根據(jù)查詢到的地址信息,將所述請求的響應(yīng)發(fā)送給所述指定服務(wù)器。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述變長字段為接入層的服務(wù)器接收到請求時(shí)寫入的。
8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述響應(yīng)中包括所述請求,相應(yīng)地,所述裝置還包括清除模塊,用于當(dāng)接收到所述響應(yīng)時(shí),將所述請求中對應(yīng)的地址信息清除。
9.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括寫入模塊,用于當(dāng)所述請求不在本地執(zhí)行,則將本地地址信息寫入所述變長字段,并將寫入后的請求轉(zhuǎn)發(fā)至下一層服務(wù)器。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述寫入模塊具體用于將地址信息、預(yù)設(shè)類型和所述地址信息的長度寫入所述變長字段。
全文摘要
本發(fā)明公開了一種路由方法和裝置,屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域。該方法包括接收攜帶變長字段的請求,所述請求的變長字段中包含所述請求經(jīng)過的各個(gè)服務(wù)器的地址信息;判斷所述請求是否在本地執(zhí)行,如果是,則執(zhí)行所述請求,并根據(jù)預(yù)設(shè)規(guī)則在所述變長字段中保存的地址信息中查詢指定服務(wù)器的地址信息;根據(jù)查詢到的地址信息,將所述請求的響應(yīng)發(fā)送給所述指定服務(wù)器。該裝置包括接收模塊、判斷模塊、執(zhí)行模塊、查詢模塊和發(fā)送模塊。本發(fā)明以方便快捷的方式實(shí)現(xiàn)復(fù)雜系統(tǒng)的路由,并且可以根據(jù)業(yè)務(wù)邏輯需要跳轉(zhuǎn)到任何一個(gè)上層服務(wù)器,增加了協(xié)議和邏輯的靈活性,并減少了現(xiàn)有解決方案的復(fù)雜度。
文檔編號H04L12/56GK102404191SQ20101028674
公開日2012年4月4日 申請日期2010年9月10日 優(yōu)先權(quán)日2010年9月10日
發(fā)明者熊歡, 王金華, 田明, 舒軍, 袁昌文, 袁清 申請人:騰訊科技(深圳)有限公司