專利名稱:限制p2p應(yīng)用的方法及設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,尤其涉及一種限制P2P應(yīng)用的方法及設(shè)備。
背景技術(shù):
由于使用P2P (Peer-to-Peer,點(diǎn)對(duì)點(diǎn))軟件能夠高速實(shí)現(xiàn)資源下載,因此P2P軟 件被廣泛應(yīng)用于網(wǎng)絡(luò)中。但是,P2P軟件的應(yīng)用容易導(dǎo)致網(wǎng)絡(luò)堵塞。具體的,PC通過路由 器接入網(wǎng)絡(luò),當(dāng)PC使用P2P軟件點(diǎn)播視頻時(shí),通過該路由器與視頻資源種子設(shè)備建立連接。 當(dāng)PC從種子設(shè)備接收視頻數(shù)據(jù)時(shí),這些視頻數(shù)據(jù)首先到達(dá)路由器,由路由器轉(zhuǎn)發(fā)給PC。但 是,當(dāng)有大量視頻資源種子設(shè)備與路由器建立連接,向路由器發(fā)送大量視頻數(shù)據(jù)時(shí),將導(dǎo)致 路由器在數(shù)據(jù)接收方向的流量堵塞。同時(shí),與大量種子設(shè)備的連接加重了路由器的CPU負(fù) 載,容易導(dǎo)致路由器CPU不能正常進(jìn)行報(bào)文轉(zhuǎn)發(fā)調(diào)度。如何減少P2P軟件的應(yīng)用所導(dǎo)致的 流量阻塞一直是研究的熱點(diǎn)問題?,F(xiàn)有技術(shù)中提供一種通過P2P軟件的特征碼限制P2P應(yīng)用的方法,該方法中路由 器根據(jù)P2P軟件的特征碼識(shí)別P2P應(yīng)用對(duì)應(yīng)的報(bào)文,對(duì)于P2P應(yīng)用對(duì)應(yīng)的報(bào)文不做處理。早 期的P2P軟件都有固定的特征碼,借助于這些特征碼,路由器一般都可支持限制某幾種P2P 軟件的應(yīng)用,例如限制迅雷、BT(BitTorrent,比特流)、PPLIVE (Peer-to-Peer LIVE, P2P網(wǎng) 絡(luò)電視)應(yīng)用等。但是,由于P2P軟件的特征碼有限,使用該方法限制使用的P2P軟件類別也有限, 并且,P2P軟件的特征碼可能隨著軟件的升級(jí)而發(fā)生變化,或者有些P2P軟件通信采取加密 方式,特征碼很難提取出來,因此,這種通過P2P軟件的特征碼限制P2P應(yīng)用的方法無法解 決P2P軟件的應(yīng)用所導(dǎo)致的流量阻塞問題。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種限制P2P應(yīng)用的方法及設(shè)備,通過控制NAT會(huì)話建立過 程限制P2P應(yīng)用,避免P2P軟件應(yīng)用導(dǎo)致的流量阻塞問題。本發(fā)明實(shí)施例提供了一種限制P2P應(yīng)用的方法,應(yīng)用于建立網(wǎng)絡(luò)地址轉(zhuǎn)換NAT會(huì) 話的網(wǎng)絡(luò)接入設(shè)備,包括網(wǎng)絡(luò)接入設(shè)備接收到內(nèi)網(wǎng)發(fā)往外網(wǎng)的報(bào)文時(shí),判斷是否已建立與接收到的內(nèi)網(wǎng)報(bào) 文對(duì)應(yīng)的NAT會(huì)話;如果判斷結(jié)果為是,則轉(zhuǎn)發(fā)所述接收到的報(bào)文,如果判斷結(jié)果為否,所述網(wǎng)絡(luò)接入 設(shè)備獲取與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù);當(dāng)獲取到的NAT會(huì)話數(shù)達(dá)到閾值時(shí),所述網(wǎng)絡(luò)接入設(shè)備丟棄所述內(nèi)網(wǎng)報(bào)文;否則, 所述網(wǎng)絡(luò)接入設(shè)備建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。所述網(wǎng)絡(luò)接入設(shè)備獲取與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù) 之前,還包括判斷所述內(nèi)網(wǎng)報(bào)文是否為用戶數(shù)據(jù)包協(xié)議UDP報(bào)文;如果否則建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話;如果是則繼續(xù)。所述網(wǎng)絡(luò)接入設(shè)備判斷是否已建立與接收到的內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話包括所述網(wǎng)絡(luò)接入設(shè)備根據(jù)所述內(nèi)網(wǎng)報(bào)文的五元組信息查找存儲(chǔ)的NAT會(huì)話表,判斷 是否存儲(chǔ)有與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。所述網(wǎng)絡(luò)接入設(shè)備獲取與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù) 包括所述網(wǎng)絡(luò)接入設(shè)備查找存儲(chǔ)的NAT會(huì)話表,統(tǒng)計(jì)與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源 端口相同的NAT會(huì)話數(shù);或者所述網(wǎng)絡(luò)接入設(shè)備根據(jù)所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口在存儲(chǔ)的會(huì)話數(shù)統(tǒng)計(jì) 表內(nèi)查找對(duì)應(yīng)的NAT會(huì)話數(shù),所述會(huì)話數(shù)統(tǒng)計(jì)表用于存儲(chǔ)與源IP地址和源端口相同的NAT 會(huì)話數(shù)。當(dāng)所述網(wǎng)絡(luò)接入設(shè)備存儲(chǔ)有會(huì)話數(shù)統(tǒng)計(jì)表時(shí),所述網(wǎng)絡(luò)接入設(shè)備建立與所述內(nèi)網(wǎng) 報(bào)文對(duì)應(yīng)的NAT會(huì)話之后,還包括更新所述會(huì)話數(shù)統(tǒng)計(jì)表統(tǒng)計(jì)的所述內(nèi)網(wǎng)報(bào)文的源IP地址 和源端口相同的NAT會(huì)話數(shù)。本發(fā)明實(shí)施例提供了一種網(wǎng)絡(luò)接入設(shè)備,包括判斷單元,用于當(dāng)所述網(wǎng)絡(luò)接入設(shè)備接收到內(nèi)網(wǎng)發(fā)往外網(wǎng)的報(bào)文時(shí),判斷所述網(wǎng) 絡(luò)接入設(shè)備是否已建立與接收到的內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話;獲取單元,用于當(dāng)所述判斷單元的判斷結(jié)果為否時(shí),獲取與所述內(nèi)網(wǎng)報(bào)文的源IP 地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù);丟棄單元,用于當(dāng)所述獲取單元獲取到的NAT會(huì)話數(shù)達(dá)到閾值時(shí),丟棄所述內(nèi)網(wǎng) 報(bào)文;建立單元,用于當(dāng)所述獲取單元獲取到的NAT會(huì)話數(shù)未達(dá)到閾值時(shí),建立與所述 內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。所述判斷單元還用于當(dāng)所述內(nèi)網(wǎng)報(bào)文未建立NAT會(huì)話時(shí),判斷所述內(nèi)網(wǎng)報(bào)文是 否為UDP報(bào)文;所述建立單元還與所述判斷單元連接,用于當(dāng)所述內(nèi)網(wǎng)報(bào)文未建立NAT會(huì)話、且 所述內(nèi)網(wǎng)報(bào)文不是UDP報(bào)文時(shí),建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話;所述獲取單元還用于當(dāng)所述內(nèi)網(wǎng)報(bào)文未建立NAT會(huì)話、且所述內(nèi)網(wǎng)報(bào)文為UDP報(bào) 文時(shí),獲取與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)。還包括存儲(chǔ)單元,用于存儲(chǔ)NAT會(huì)話表,所述NAT會(huì)話表中存儲(chǔ)五元組信息與NAT 會(huì)話的對(duì)應(yīng)關(guān)系;所述判斷單元還與所述存儲(chǔ)單元連接,用于根據(jù)所述內(nèi)網(wǎng)報(bào)文的五元組信息查找 所述NAT會(huì)話表,判斷是否存儲(chǔ)有與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。還包括存儲(chǔ)單元,用于存儲(chǔ)NAT會(huì)話表和/或會(huì)話數(shù)統(tǒng)計(jì)表,所述NAT會(huì)話表中存 儲(chǔ)五元組信息與NAT會(huì)話的對(duì)應(yīng)關(guān)系;所述會(huì)話數(shù)統(tǒng)計(jì)表用于存儲(chǔ)與源IP地址和源端口相 同的NAT會(huì)話數(shù);所述獲取單元還用于查找所述NAT會(huì)話表,統(tǒng)計(jì)與所述內(nèi)網(wǎng)報(bào)文的源IP地址和 源端口相同的NAT會(huì)話數(shù);或者根據(jù)所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口在所述會(huì)話數(shù)統(tǒng)計(jì) 表內(nèi)查找對(duì)應(yīng)的NAT會(huì)話數(shù)。
還包括更新單元,用于在所述建立單元建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話后, 更新所述會(huì)話數(shù)統(tǒng)計(jì)表統(tǒng)計(jì)的所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口相同的NAT會(huì)話數(shù)。與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例至少具有以下優(yōu)點(diǎn)當(dāng)網(wǎng)絡(luò)接入設(shè)備接收到內(nèi)網(wǎng)報(bào)文后,如果該內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng) 的NAT會(huì)話數(shù)已經(jīng)達(dá)到閾值,則丟棄UDP報(bào)文,不再建立NAT會(huì)話,從而減少P2P軟件使用 時(shí)網(wǎng)絡(luò)接入設(shè)備與外網(wǎng)種子設(shè)備的連接,限制P2P應(yīng)用,避免出現(xiàn)P2P軟件使用導(dǎo)致的網(wǎng)絡(luò)
流量阻塞。
圖1是P2P數(shù)據(jù)傳輸?shù)倪^程示意圖;圖2是本發(fā)明實(shí)施例一提供的NAT會(huì)話建立的方法的流程示意圖;圖3是本發(fā)明實(shí)施例一提供的方法的效果示意圖;圖4是本發(fā)明實(shí)施例二提供的NAT會(huì)話建立的方法的流程示意圖;圖5是本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)接入設(shè)備的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了清楚介紹本發(fā)明實(shí)施例通過控制NAT (Network Address Translation,網(wǎng)絡(luò) 地址轉(zhuǎn)換)會(huì)話建立過程避免P2P軟件應(yīng)用導(dǎo)致的流量阻塞問題,下面首先以路由器作為 網(wǎng)絡(luò)接入設(shè)備、P2P軟件為PPLIVE軟件為例,介紹P2P軟件應(yīng)用中數(shù)據(jù)傳輸?shù)倪^程。如圖1所示,PC通過PPLIVE軟件點(diǎn)播資源時(shí),PC首先初始化一個(gè)隨機(jī)源端口,然 后在點(diǎn)播過程中始終通過這個(gè)隨機(jī)源端口請(qǐng)求和接收數(shù)據(jù),由外往里形成多對(duì)一的網(wǎng)絡(luò)會(huì) 話。具體的,PC通過PPLIVE軟件點(diǎn)播資源時(shí)初始化隨機(jī)源端口,通過該源端口向路由器發(fā) 送UDP(User Datagram Protocol,用戶數(shù)據(jù)包協(xié)議)報(bào)文,路由器根據(jù)UDP報(bào)文建立NAT會(huì) 話,然后將UDP報(bào)文向外網(wǎng)的種子設(shè)備發(fā)送。路由器在NAT會(huì)話表中記錄并更新建立的NAT 會(huì)話,NAT會(huì)話表中存儲(chǔ)NAT會(huì)話與UDP報(bào)文的五元組信息的對(duì)應(yīng)關(guān)系。其中,由于PC發(fā) 送大量的UDP報(bào)文,且這些UDP報(bào)文通過同一端口發(fā)送,因此以PC的IP地址為源IP地址、 以上述端口為源端口,在路由器的NAT會(huì)話表中對(duì)應(yīng)有多個(gè)NAT會(huì)話。本發(fā)明實(shí)施例一提供一種NAT會(huì)話建立的方法,當(dāng)網(wǎng)絡(luò)接入設(shè)備接收到內(nèi)網(wǎng)報(bào)文 后,查找是否已建立與內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話,如果尚未建立對(duì)應(yīng)的NAT會(huì)話,且報(bào)文為 UDP報(bào)文,則獲取該UDP報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù),如果該NAT會(huì)話數(shù)達(dá) 到閾值,則丟棄UDP報(bào)文。如果該NAT會(huì)話數(shù)未達(dá)到閾值,則建立與內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì) 話。如圖2所示,該方法包括以下步驟步驟201,網(wǎng)絡(luò)接入設(shè)備判斷接收到的報(bào)文是否為內(nèi)網(wǎng)報(bào)文。如果報(bào)文為外網(wǎng)報(bào)文 執(zhí)行步驟202,如果報(bào)文為內(nèi)網(wǎng)報(bào)文執(zhí)行步驟203。具體的,網(wǎng)絡(luò)接入設(shè)備預(yù)設(shè)內(nèi)網(wǎng)報(bào)文與外網(wǎng)報(bào)文識(shí)別條件,例如存儲(chǔ)內(nèi)網(wǎng)報(bào)文與 外網(wǎng)報(bào)文的IP地址范圍,根據(jù)接收到的報(bào)文的源IP地址所屬的范圍確定報(bào)文為內(nèi)網(wǎng)報(bào)文 或者外網(wǎng)報(bào)文。步驟202,網(wǎng)絡(luò)接入設(shè)備轉(zhuǎn)發(fā)接收到的外網(wǎng)報(bào)文。
步驟203,網(wǎng)絡(luò)接入設(shè)備判斷是否建立有與內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。如果判斷結(jié) 果為是,則執(zhí)行步驟204,否則執(zhí)行步驟205。網(wǎng)絡(luò)接入設(shè)備的NAT會(huì)話表內(nèi)存儲(chǔ)NAT會(huì)話與報(bào)文五元組的對(duì)應(yīng)關(guān)系,網(wǎng)絡(luò)接入 設(shè)備根據(jù)接收到的內(nèi)網(wǎng)報(bào)文的五元組信息查找NAT會(huì)話表,判斷是否存儲(chǔ)有內(nèi)網(wǎng)報(bào)文對(duì)應(yīng) 的NAT會(huì)話。步驟204,網(wǎng)絡(luò)接入設(shè)備轉(zhuǎn)發(fā)接收到的內(nèi)網(wǎng)報(bào)文。步驟205,網(wǎng)絡(luò)接入設(shè)備判斷內(nèi)網(wǎng)報(bào)文是否為UDP報(bào)文,如果判斷結(jié)果為是執(zhí)行步 驟206 ;否則執(zhí)行步驟209。步驟206,網(wǎng)絡(luò)接入設(shè)備獲取與UDP報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)。具體的,網(wǎng)絡(luò)接入設(shè)備可以查找NAT會(huì)話表中與UDP報(bào)文的源IP地址和源端口對(duì) 應(yīng)的NAT會(huì)話,統(tǒng)計(jì)查找到的NAT會(huì)話數(shù)。網(wǎng)絡(luò)接入設(shè)備還可以設(shè)置會(huì)話數(shù)統(tǒng)計(jì)表統(tǒng)計(jì)相 同源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù),網(wǎng)絡(luò)接入設(shè)備根據(jù)UDP報(bào)文的源IP地址和源端 口查找會(huì)話數(shù)統(tǒng)計(jì)表得到對(duì)應(yīng)的NAT會(huì)話數(shù)。步驟207,網(wǎng)絡(luò)接入設(shè)備判斷NAT會(huì)話數(shù)是否達(dá)到閾值,如果是則執(zhí)行步驟208,否 則執(zhí)行步驟209。NAT會(huì)話數(shù)的閾值由用戶預(yù)先設(shè)置,可以根據(jù)網(wǎng)絡(luò)接入設(shè)備使用的不同場(chǎng)景設(shè)置 不同的取值。步驟208,網(wǎng)絡(luò)接入設(shè)備丟棄接收到的內(nèi)網(wǎng)報(bào)文。步驟209,網(wǎng)絡(luò)接入設(shè)備創(chuàng)建與內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話,并轉(zhuǎn)發(fā)報(bào)文。如果網(wǎng)絡(luò)接入設(shè)備內(nèi)配置會(huì)話數(shù)統(tǒng)計(jì)表,則網(wǎng)絡(luò)接入設(shè)備還需要在創(chuàng)建與UDP報(bào) 文對(duì)應(yīng)的NAT會(huì)話后,更新會(huì)話數(shù)統(tǒng)計(jì)表內(nèi)統(tǒng)計(jì)的NAT會(huì)話數(shù)。當(dāng)然,在NAT會(huì)話結(jié)束時(shí)網(wǎng) 絡(luò)接入設(shè)備也會(huì)更新會(huì)話數(shù)統(tǒng)計(jì)表內(nèi)統(tǒng)計(jì)的NAT會(huì)話數(shù)。需要說明的是,本發(fā)明實(shí)施例中,網(wǎng)絡(luò)接入設(shè)備上可以根據(jù)實(shí)際需要配置特殊源 端口,對(duì)于該特殊源端口不通過NAT會(huì)話數(shù)閾值限制其與外網(wǎng)的連接。更進(jìn)一步地,網(wǎng)絡(luò)接 入設(shè)備上還可以配置特殊IP地址,該IP地址的任何P2P應(yīng)用網(wǎng)絡(luò)接入設(shè)備不加限制。本發(fā)明實(shí)施例提供的方法中,網(wǎng)絡(luò)接入設(shè)備能夠識(shí)別出P2P流并控制P2P軟件應(yīng) 用時(shí)的NAT會(huì)話數(shù),從而減少了 P2P軟件應(yīng)用時(shí)建立的連接數(shù),限制P2P應(yīng)用,其直接效果 就是控制了 P2P的泛濫,保證了在允許借用帶寬時(shí),網(wǎng)絡(luò)不再出現(xiàn)因P2P應(yīng)用把帶寬用光而 出現(xiàn)掉線現(xiàn)象。例如,設(shè)置同一個(gè)源端口發(fā)起的UDP會(huì)話最多為50個(gè),打擊而不完全禁止 P2P流,滿足P2P用戶的需要并防止P2P泛濫。正常情況下,以IE打開網(wǎng)頁為例,IE也需要 發(fā)起很多連接,但是由于P2P之外的應(yīng)用通常不會(huì)同一源端口與多個(gè)對(duì)端收發(fā)報(bào)文,因此 本發(fā)明實(shí)施例提供的方法不會(huì)干擾用戶的其他正常應(yīng)用訪問。本發(fā)明實(shí)施例提供的方法的 效果如圖3所示,原來PPLIVE能夠向N個(gè)種子通信,現(xiàn)在根據(jù)設(shè)定值同一源端口的NAT會(huì) 話數(shù)閾值為5,則只允許與5個(gè)種子通信,原來的6-N相當(dāng)于全被攔截,減少了多連接流量對(duì) 入口帶寬的影響,也降低了路由器的CPU利用率。考慮到現(xiàn)有技術(shù)中用戶終端在使用P2P軟件點(diǎn)播資源過程中,通過同一源端口請(qǐng) 求和接收數(shù)據(jù),即通過同一源端口建立大量連接,而其他應(yīng)用通常是一個(gè)源端口只建立一 個(gè)連接,因此,本發(fā)明實(shí)施例二還提供一種NAT會(huì)話建立的方法,如圖4所示,包括步驟401,網(wǎng)絡(luò)接入設(shè)備判斷接收到的報(bào)文是否為內(nèi)網(wǎng)報(bào)文。如果報(bào)文為外網(wǎng)報(bào)文執(zhí)行步驟402,如果報(bào)文為內(nèi)網(wǎng)報(bào)文執(zhí)行步驟403。步驟402,網(wǎng)絡(luò)接入設(shè)備轉(zhuǎn)發(fā)接收到的外網(wǎng)報(bào)文。步驟403,網(wǎng)絡(luò)接入設(shè)備判斷是否建立有與內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。如果判斷結(jié) 果為是,則執(zhí)行步驟404,否則執(zhí)行步驟405。步驟404,網(wǎng)絡(luò)接入設(shè)備轉(zhuǎn)發(fā)接收到的內(nèi)網(wǎng)報(bào)文。步驟405,網(wǎng)絡(luò)接入設(shè)備獲取與內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)。步驟406,網(wǎng)絡(luò)接入設(shè)備判斷NAT會(huì)話數(shù)是否達(dá)到閾值,如果是則執(zhí)行步驟407,否 則執(zhí)行步驟408。步驟407,網(wǎng)絡(luò)接入設(shè)備丟棄接收到的內(nèi)網(wǎng)報(bào)文。步驟408,網(wǎng)絡(luò)接入設(shè)備創(chuàng)建與內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話,并轉(zhuǎn)發(fā)報(bào)文。上述步驟的詳細(xì)內(nèi)容可參見圖2所對(duì)應(yīng)NAT會(huì)話建立的方法。由于P2P軟件之外的應(yīng)用通常是一個(gè)源端口只建立一個(gè)連接,因此,內(nèi)網(wǎng)報(bào)文的 源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)達(dá)到閾值時(shí),該內(nèi)網(wǎng)報(bào)文只是P2P軟件對(duì)應(yīng)的UDP報(bào) 文,因此本發(fā)明實(shí)施例二提供的方法不會(huì)影響到P2P之外的正常應(yīng)用訪問。通過本發(fā)明實(shí) 施例提供的方法,網(wǎng)絡(luò)接入設(shè)備限制相同源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù),從而限制 P2P應(yīng)用中網(wǎng)絡(luò)接入設(shè)備與外網(wǎng)建立的連接,防止出現(xiàn)網(wǎng)絡(luò)流量阻塞。基于與上述實(shí)施例相同的技術(shù)構(gòu)思,本發(fā)明實(shí)施例還提供一種網(wǎng)絡(luò)接入設(shè)備,如 圖5所示,包括判斷單元11,用于當(dāng)所述網(wǎng)絡(luò)接入設(shè)備接收到內(nèi)網(wǎng)發(fā)往外網(wǎng)的報(bào)文時(shí),判斷所述 網(wǎng)絡(luò)接入設(shè)備是否已建立與接收到的內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話;獲取單元12,用于當(dāng)所述判斷單元11的判斷結(jié)果為否時(shí),獲取與所述內(nèi)網(wǎng)報(bào)文的 源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù);丟棄單元13,用于當(dāng)所述獲取單元12獲取到的NAT會(huì)話數(shù)達(dá)到閾值時(shí),丟棄所述 內(nèi)網(wǎng)報(bào)文;建立單元14,用于當(dāng)所述獲取單元12獲取到的NAT會(huì)話數(shù)未達(dá)到閾值時(shí),建立與 所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。所述判斷單元11還用于當(dāng)所述內(nèi)網(wǎng)報(bào)文未建立NAT會(huì)話時(shí),判斷所述內(nèi)網(wǎng)報(bào)文 是否為UDP報(bào)文;所述建立單元14還與所述判斷單元11連接,用于當(dāng)所述內(nèi)網(wǎng)報(bào)文未建立 NAT會(huì)話、且所述內(nèi)網(wǎng)報(bào)文不是UDP報(bào)文時(shí),建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話;所述獲 取單元12還用于當(dāng)所述內(nèi)網(wǎng)報(bào)文未建立NAT會(huì)話、且所述內(nèi)網(wǎng)報(bào)文為UDP報(bào)文時(shí),獲取與 所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)。還包括存儲(chǔ)單元15,用于存儲(chǔ)NAT會(huì)話表,所述NAT會(huì)話表中存儲(chǔ)五元組信息與 NAT會(huì)話的對(duì)應(yīng)關(guān)系;所述判斷單元11還與所述存儲(chǔ)單元15連接,用于根據(jù)所述內(nèi)網(wǎng)報(bào)文 的五元組信息查找所述NAT會(huì)話表,判斷是否存儲(chǔ)有與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。存儲(chǔ)單元15還可以用于存儲(chǔ)會(huì)話數(shù)統(tǒng)計(jì)表,會(huì)話數(shù)統(tǒng)計(jì)表用于存儲(chǔ)與源IP地址 和源端口對(duì)應(yīng)的NAT會(huì)話數(shù),即源IP地址和源端口相同的NAT會(huì)話數(shù);所述獲取單元12還 與所述存儲(chǔ)單元15連接,用于查找所述NAT會(huì)話表,統(tǒng)計(jì)與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源 端口對(duì)應(yīng)的NAT會(huì)話數(shù),也就是統(tǒng)計(jì)與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口相同的NAT會(huì)話 數(shù);或者根據(jù)所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口在所述會(huì)話數(shù)統(tǒng)計(jì)表內(nèi)查找對(duì)應(yīng)的NAT會(huì)話數(shù)。還包括更新單元16,用于在所述建立單元14建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話后,更新所述會(huì)話數(shù)統(tǒng)計(jì)表統(tǒng)計(jì)的所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)。本發(fā)明實(shí)施例中,當(dāng)網(wǎng)絡(luò)接入設(shè)備接收到內(nèi)網(wǎng)報(bào)文后,如果該內(nèi)網(wǎng)報(bào)文的源IP地 址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)已經(jīng)達(dá)到閾值,則丟棄UDP報(bào)文,不再建立NAT會(huì)話,從而減 少P2P軟件使用時(shí)網(wǎng)絡(luò)接入設(shè)備與外網(wǎng)種子設(shè)備的連接,限制P2P應(yīng)用,避免出現(xiàn)P2P軟件 使用導(dǎo)致的網(wǎng)絡(luò)流量阻塞。通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助 軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更 佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的 部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若 干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā) 明各個(gè)實(shí)施例所述的方法。本領(lǐng)域技術(shù)人員可以理解附圖只是一個(gè)優(yōu)選實(shí)施例的示意圖,附圖中的模塊或流 程并不一定是實(shí)施本發(fā)明所必須的。本領(lǐng)域技術(shù)人員可以理解實(shí)施例中的裝置中的模塊可以按照實(shí)施例描述進(jìn)行分 布于實(shí)施例的裝置中,也可以進(jìn)行相應(yīng)變化位于不同于本實(shí)施例的一個(gè)或多個(gè)裝置中。上 述實(shí)施例的模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。以上公開的僅為本發(fā)明的幾個(gè)具體實(shí)施例,但是,本發(fā)明并非局限于此,任何本領(lǐng) 域的技術(shù)人員能思之的變化都應(yīng)落入本發(fā)明的保護(hù)范圍。
權(quán)利要求
一種限制P2P應(yīng)用的方法,應(yīng)用于建立網(wǎng)絡(luò)地址轉(zhuǎn)換NAT會(huì)話的網(wǎng)絡(luò)接入設(shè)備,其特征在于,包括網(wǎng)絡(luò)接入設(shè)備接收到內(nèi)網(wǎng)發(fā)往外網(wǎng)的報(bào)文時(shí),判斷是否已建立與接收到的內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話;如果判斷結(jié)果為是,則轉(zhuǎn)發(fā)所述接收到的報(bào)文,如果判斷結(jié)果為否,所述網(wǎng)絡(luò)接入設(shè)備獲取與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù);當(dāng)獲取到的NAT會(huì)話數(shù)達(dá)到閾值時(shí),所述網(wǎng)絡(luò)接入設(shè)備丟棄所述內(nèi)網(wǎng)報(bào)文;否則,所述網(wǎng)絡(luò)接入設(shè)備建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。
2.如權(quán)利要求1所述的方法,其特征在于,所述網(wǎng)絡(luò)接入設(shè)備獲取與所述內(nèi)網(wǎng)報(bào)文的 源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)之前,還包括判斷所述內(nèi)網(wǎng)報(bào)文是否為用戶數(shù)據(jù)包協(xié)議UDP報(bào)文;如果否則建立與所述內(nèi)網(wǎng)報(bào)文對(duì) 應(yīng)的NAT會(huì)話;如果是則繼續(xù)。
3.如權(quán)利要求1或2所述的方法,其特征在于,所述網(wǎng)絡(luò)接入設(shè)備判斷是否已建立與接 收到的內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話包括所述網(wǎng)絡(luò)接入設(shè)備根據(jù)所述內(nèi)網(wǎng)報(bào)文的五元組信息查找存儲(chǔ)的NAT會(huì)話表,判斷是否 存儲(chǔ)有與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。
4.如權(quán)利要求1或2所述的方法,其特征在于,所述網(wǎng)絡(luò)接入設(shè)備獲取與所述內(nèi)網(wǎng)報(bào)文 的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)包括所述網(wǎng)絡(luò)接入設(shè)備查找存儲(chǔ)的NAT會(huì)話表,統(tǒng)計(jì)與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口 相同的NAT會(huì)話數(shù);或者所述網(wǎng)絡(luò)接入設(shè)備根據(jù)所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口在存儲(chǔ)的會(huì)話數(shù)統(tǒng)計(jì)表內(nèi) 查找對(duì)應(yīng)的NAT會(huì)話數(shù),所述會(huì)話數(shù)統(tǒng)計(jì)表用于存儲(chǔ)與源IP地址和源端口相同的NAT會(huì)話 數(shù)。
5.如權(quán)利要求4所述的方法,其特征在于,當(dāng)所述網(wǎng)絡(luò)接入設(shè)備存儲(chǔ)有會(huì)話數(shù)統(tǒng)計(jì)表 時(shí),所述網(wǎng)絡(luò)接入設(shè)備建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話之后,還包括更新所述會(huì)話數(shù) 統(tǒng)計(jì)表統(tǒng)計(jì)的所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口相同的NAT會(huì)話數(shù)。
6.一種網(wǎng)絡(luò)接入設(shè)備,其特征在于,包括判斷單元,用于當(dāng)所述網(wǎng)絡(luò)接入設(shè)備接收到內(nèi)網(wǎng)發(fā)往外網(wǎng)的報(bào)文時(shí),判斷所述網(wǎng)絡(luò)接 入設(shè)備是否已建立與接收到的內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話;獲取單元,用于當(dāng)所述判斷單元的判斷結(jié)果為否時(shí),獲取與所述內(nèi)網(wǎng)報(bào)文的源IP地址 和源端口對(duì)應(yīng)的NAT會(huì)話數(shù);丟棄單元,用于當(dāng)所述獲取單元獲取到的NAT會(huì)話數(shù)達(dá)到閾值時(shí),丟棄所述內(nèi)網(wǎng)報(bào)文;建立單元,用于當(dāng)所述獲取單元獲取到的NAT會(huì)話數(shù)未達(dá)到閾值時(shí),建立與所述內(nèi)網(wǎng) 報(bào)文對(duì)應(yīng)的NAT會(huì)話。
7.如權(quán)利要求6所述的網(wǎng)絡(luò)接入設(shè)備,其特征在于,所述判斷單元還用于當(dāng)所述內(nèi)網(wǎng) 報(bào)文未建立NAT會(huì)話時(shí),判斷所述內(nèi)網(wǎng)報(bào)文是否為UDP報(bào)文;所述建立單元還與所述判斷單元連接,用于當(dāng)所述內(nèi)網(wǎng)報(bào)文未建立NAT會(huì)話、且所述 內(nèi)網(wǎng)報(bào)文不是UDP報(bào)文時(shí),建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話;所述獲取單元還用于當(dāng)所述內(nèi)網(wǎng)報(bào)文未建立NAT會(huì)話、且所述內(nèi)網(wǎng)報(bào)文為UDP報(bào)文時(shí),獲取與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)。
8.如權(quán)利要求6或7所述的網(wǎng)絡(luò)接入設(shè)備,其特征在于,還包括存儲(chǔ)單元,用于存儲(chǔ) NAT會(huì)話表,所述NAT會(huì)話表中存儲(chǔ)五元組信息與NAT會(huì)話的對(duì)應(yīng)關(guān)系;所述判斷單元還與所述存儲(chǔ)單元連接,用于根據(jù)所述內(nèi)網(wǎng)報(bào)文的五元組信息查找所述 NAT會(huì)話表,判斷是否存儲(chǔ)有與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。
9.如權(quán)利要求6或7所述的網(wǎng)絡(luò)接入設(shè)備,其特征在于,還包括存儲(chǔ)單元,用于存儲(chǔ) NAT會(huì)話表和/或會(huì)話數(shù)統(tǒng)計(jì)表,所述NAT會(huì)話表中存儲(chǔ)五元組信息與NAT會(huì)話的對(duì)應(yīng)關(guān) 系;所述會(huì)話數(shù)統(tǒng)計(jì)表用于存儲(chǔ)與源IP地址和源端口相同的NAT會(huì)話數(shù);所述獲取單元還用于查找所述NAT會(huì)話表,統(tǒng)計(jì)與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端 口相同的NAT會(huì)話數(shù);或者根據(jù)所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口在所述會(huì)話數(shù)統(tǒng)計(jì)表內(nèi) 查找對(duì)應(yīng)的NAT會(huì)話數(shù)。
10.如權(quán)利要求9所述的網(wǎng)絡(luò)接入設(shè)備,其特征在于,還包括更新單元,用于在所述建 立單元建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話后,更新所述會(huì)話數(shù)統(tǒng)計(jì)表統(tǒng)計(jì)的所述內(nèi)網(wǎng)報(bào) 文的源IP地址和源端口相同的NAT會(huì)話數(shù)。
全文摘要
本發(fā)明實(shí)施例公開了一種限制P2P應(yīng)用的方法及設(shè)備,該方法包括網(wǎng)絡(luò)接入設(shè)備判斷是否已建立與接收到的內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話;如果判斷結(jié)果為否,所述網(wǎng)絡(luò)接入設(shè)備獲取與所述內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù);當(dāng)獲取到的NAT會(huì)話數(shù)達(dá)到閾值時(shí),所述網(wǎng)絡(luò)接入設(shè)備丟棄所述內(nèi)網(wǎng)報(bào)文;否則,所述網(wǎng)絡(luò)接入設(shè)備建立與所述內(nèi)網(wǎng)報(bào)文對(duì)應(yīng)的NAT會(huì)話。本發(fā)明實(shí)施例中,當(dāng)網(wǎng)絡(luò)接入設(shè)備接收到內(nèi)網(wǎng)報(bào)文后,如果該內(nèi)網(wǎng)報(bào)文的源IP地址和源端口對(duì)應(yīng)的NAT會(huì)話數(shù)已經(jīng)達(dá)到閾值,則丟棄UDP報(bào)文,不再建立NAT會(huì)話,從而減少P2P軟件使用時(shí)網(wǎng)絡(luò)接入設(shè)備與外網(wǎng)種子設(shè)備的連接,限制P2P應(yīng)用,避免出現(xiàn)P2P軟件使用導(dǎo)致的網(wǎng)絡(luò)流量阻塞。
文檔編號(hào)H04L12/56GK101958841SQ201010519448
公開日2011年1月26日 申請(qǐng)日期2010年10月26日 優(yōu)先權(quán)日2010年10月26日
發(fā)明者石冬雪 申請(qǐng)人:杭州華三通信技術(shù)有限公司