一種路由模式下限制終端數(shù)量的方法
【專利摘要】本發(fā)明提供一種路由模式下限制終端數(shù)量的方法,至少包括:判斷終端數(shù)量限制類型;對(duì)于當(dāng)前終端數(shù)量限制類型,檢測是否存在終端不在線;若存在終端不在線,則允許新的終端的接入請(qǐng)求,并為所述新的終端分配IP;若不存在終端不在線,則不響應(yīng)新的終端接入請(qǐng)求。本發(fā)明的路由模式下限制終端數(shù)量的方法利用網(wǎng)關(guān)中已有的軟件資源實(shí)現(xiàn),實(shí)現(xiàn)過程比較簡單,不影響路由轉(zhuǎn)發(fā)的處理復(fù)雜程度;同時(shí)不會(huì)有額外的內(nèi)存需求,也不會(huì)造成網(wǎng)關(guān)的性能降低。
【專利說明】一種路由模式下限制終端數(shù)量的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)通信的【技術(shù)領(lǐng)域】,特別是涉及一種路由模式下限制終端數(shù)量的方法。
【背景技術(shù)】
[0002]隨著移動(dòng)互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,以及云計(jì)算、三網(wǎng)融合、物聯(lián)網(wǎng)等新興產(chǎn)業(yè)的進(jìn)一步推進(jìn),對(duì)寬帶的需求也日益劇增。在此環(huán)境下,寬帶提速被提上議程。寬帶提速的根本目的是為了更好的提升用戶的上網(wǎng)體驗(yàn),同時(shí)支持更加多元化的業(yè)務(wù)形態(tài)。然而用戶的寬帶使用意識(shí)尚未得到改變,需要進(jìn)一步的加強(qiáng)引導(dǎo)。運(yùn)營商在加強(qiáng)寬帶的線路鋪設(shè),提升用戶上網(wǎng)體驗(yàn)的同時(shí),會(huì)限制同一賬號(hào)上網(wǎng)終端的數(shù)量,從而使寬帶提速后的效果更加明顯。
[0003]現(xiàn)有技術(shù)中,在路由模式下,在網(wǎng)關(guān)中維護(hù)一個(gè)上網(wǎng)終端列表。該上網(wǎng)終端列表中的列表項(xiàng)包括終端類型和終端對(duì)應(yīng)的MAC地址。當(dāng)網(wǎng)關(guān)檢測到有上網(wǎng)請(qǐng)求時(shí),首先判斷發(fā)出上網(wǎng)請(qǐng)求的終端是否在列表中(通過MAC地址進(jìn)行比對(duì)),如果在列表中,則允許請(qǐng)求通過。如果發(fā)出上網(wǎng)請(qǐng)求的終端不在列表中,則判斷當(dāng)前列表中已有的該類型終端的個(gè)數(shù)。如果該類型終端的個(gè)數(shù)小于限制值,則將該終端加入列表中,并允許請(qǐng)求通過。如果終端列表中該類型終端個(gè)數(shù)等于限制值,則判斷列表中所有該類型終端是否有不在線的(通過ARP檢測)。如果有不在線的,則從列表中刪除不在線終端,并將該終端添加到列表中,允許請(qǐng)求通過。如果全都在線,則不允許請(qǐng)求通過。
[0004]然而,在上述方案中,需要在內(nèi)存中始終維護(hù)一個(gè)上網(wǎng)終端列表。這不但需要耗費(fèi)內(nèi)存,而且在網(wǎng)絡(luò)地址轉(zhuǎn)換(Network Address Translation,NAT)之前,需要專門模塊來處理這個(gè)過程。這就影響到路由器的性能,并且需要花費(fèi)一定的工作量來實(shí)現(xiàn)。
【發(fā)明內(nèi)容】
[0005]鑒于以上所述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的在于提供一種路由模式下限制終端數(shù)量的方法,能夠限制家庭網(wǎng)關(guān)中同一時(shí)間接入的終端數(shù)量,且不影響路由器的性能,不增加額外的系統(tǒng)消耗。
[0006]為實(shí)現(xiàn)上述目的及其他相關(guān)目的,本發(fā)明提供一種路由模式下限制終端數(shù)量的方法,至少包括:判斷終端數(shù)量限制類型;對(duì)于當(dāng)前終端數(shù)量限制類型,檢測是否存在終端不在線;若存在終端不在線,則允許新的終端的接入請(qǐng)求,并為所述新的終端分配IP;若不存在終端不在線,則不響應(yīng)新的終端接入請(qǐng)求。
[0007]根據(jù)上述的路由模式下限制終端數(shù)量的方法,其中:所述終端數(shù)量限制類型包括限制接入終端的總數(shù)量和限制不同類型終端的接入數(shù)量。
[0008]根據(jù)上述的路由模式下限制終端數(shù)量的方法,其中:檢測是否存在終端不在線時(shí),通過ARP檢測是否存在不在線的終端。
[0009]進(jìn)一步地,根據(jù)上述的路由模式下限制終端數(shù)量的方法,其中:在進(jìn)行ARP檢測時(shí),如果某一終端對(duì)連續(xù)若干次的ARP檢測無響應(yīng),則認(rèn)為該終端不在線。[0010]根據(jù)上述的路由模式下限制終端數(shù)量的方法,其中:所述路由模式下限制終端數(shù)量的方法通過修改DHCP服務(wù)代碼實(shí)現(xiàn)的。
[0011]進(jìn)一步地,根據(jù)上述的路由模式下限制終端數(shù)量的方法,其中:修改DHCP服務(wù)代碼時(shí),在DHCP服務(wù)器程序中添加一些全局變量,所述全局變量用于統(tǒng)計(jì)已連接各種類型終端的數(shù)量和連接終端的總數(shù)量,同時(shí)添加一些DHCP的配置項(xiàng),所述配置項(xiàng)用于表示各種類型終端的限制數(shù)和接入終端總的限制數(shù)。
[0012]更進(jìn)一步地,根據(jù)上述的路由模式下限制終端數(shù)量的方法,其中:所述配置項(xiàng)能夠通過串口命令和遠(yuǎn)程管理平臺(tái)進(jìn)行修改;當(dāng)所述配置項(xiàng)修改時(shí),DHCP服務(wù)器重新讀取配置文件,并初始化各配置項(xiàng)。
[0013]如上所述,本發(fā)明的路由模式下限制終端數(shù)量的方法,具有以下有益效果:
[0014]( I)利用網(wǎng)關(guān)中已有的軟件資源實(shí)現(xiàn),實(shí)現(xiàn)過程比較簡單,不影響路由轉(zhuǎn)發(fā)的處理復(fù)雜程度;
[0015](2)不會(huì)有額外的內(nèi)存需求;
[0016](3)不會(huì)造成網(wǎng)關(guān)的性能降低。
【專利附圖】
【附圖說明】
[0017]圖1顯示為本發(fā)明的路由模式下限制終端數(shù)量的方法的流程圖;
[0018]圖2顯示為本發(fā)明中DHCP服務(wù)器同DHCP客戶端交互獲取IP的流程圖。
【具體實(shí)施方式】
[0019]以下通過特定的具體實(shí)例說明本發(fā)明的實(shí)施方式,本領(lǐng)域技術(shù)人員可由本說明書所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點(diǎn)與功效。本發(fā)明還可以通過另外不同的【具體實(shí)施方式】加以實(shí)施或應(yīng)用,本說明書中的各項(xiàng)細(xì)節(jié)也可以基于不同觀點(diǎn)與應(yīng)用,在沒有背離本發(fā)明的精神下進(jìn)行各種修飾或改變。
[0020]需要說明的是,本實(shí)施例中所提供的圖示僅以示意方式說明本發(fā)明的基本構(gòu)想,遂圖式中僅顯示與本發(fā)明中有關(guān)的組件而非按照實(shí)際實(shí)施時(shí)的組件數(shù)目、形狀及尺寸繪制,其實(shí)際實(shí)施時(shí)各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復(fù)雜。
[0021]本發(fā)明的路由模式下限制終端數(shù)量的方法能夠使家庭網(wǎng)關(guān)限制同一時(shí)間接入公網(wǎng)的終端數(shù)量。該數(shù)量可配置,其中對(duì)于數(shù)量的限制包括以下兩種情形:
[0022]一:限制同時(shí)接入公網(wǎng)的終端總數(shù);
[0023]二:分別限制不同類型終端的數(shù)量。
[0024]本發(fā)明的路由模式下限制終端數(shù)量的方法采用的基本算法如下:假設(shè)當(dāng)前限制接入的終端數(shù)為N,那么在處理第N+1接入請(qǐng)求時(shí),首先通過ARP檢測當(dāng)前N個(gè)終端中是否存在有不在線的終端。其中,如果某個(gè)終端連續(xù)若干次次ARP檢測無響應(yīng),則認(rèn)為此終端不在線。如果N個(gè)終端都在線,那么拒絕第N+1個(gè)終端的接入請(qǐng)求,第N+1個(gè)終端無法獲取IP ;如果當(dāng)前在線終端的個(gè)數(shù)不足N個(gè),那么允許第N+1個(gè)終端的接入請(qǐng)求,并為其分配IP。
[0025]本發(fā)明的路由模式下限制終端數(shù)量的方法主要是利用網(wǎng)關(guān)中的DHCP服務(wù)器,通過在DHCP服務(wù)代碼里稍作修改來實(shí)現(xiàn)?;驹硎?當(dāng)終端連接上網(wǎng)關(guān)時(shí),終端會(huì)通過DHCP客戶端向網(wǎng)關(guān)請(qǐng)求IP。此時(shí)如果網(wǎng)關(guān)中已連接的該類型終端的個(gè)數(shù)等于限制值,則網(wǎng)關(guān)的DHCP服務(wù)器將不予響應(yīng),那么該終端就無法獲取IP地址,從而達(dá)到限制上網(wǎng)終端數(shù)量的目的。
[0026]具體地,參照?qǐng)D1,本發(fā)明的路由模式下限制終端數(shù)量的方法包括以下步驟:
[0027]步驟S1、判斷終端數(shù)量限制類型;
[0028]其中,終端數(shù)量限制類型包括限制接入終端的總數(shù)量和限制不同類型終端的接入數(shù)量。即可以限制接入網(wǎng)關(guān)的終端的總數(shù)量,也可以針對(duì)各個(gè)類型的終端,分別限制相應(yīng)的接入數(shù)量。
[0029]步驟S2、對(duì)于當(dāng)前終端數(shù)量限制類型,檢測是否存在終端不在線;
[0030]具體地,通過ARP檢測當(dāng)前連接的終端中是否存在有不在線的終端。如果某個(gè)終端連續(xù)若干次ARP檢測無響應(yīng),則認(rèn)為此終端不在線。其中,ARP檢測的次數(shù)可根據(jù)實(shí)際需要來靈活確定。
[0031]步驟S3、若存在終端不在線,則允許新的終端的接入請(qǐng)求,并為新的終端分配IP ;
[0032]步驟S4、若不存在終端不在線,則不響應(yīng)新的終端接入請(qǐng)求。
[0033]具體地,實(shí)現(xiàn)步驟S3和步驟S4時(shí),主要是在DHCP服務(wù)器端程序的結(jié)構(gòu)體Structserver_config_t中添加一些全局變量,以統(tǒng)計(jì)已連接各種類型終端的數(shù)量和連接終端的總數(shù)量,同時(shí)添加一些DHCP的配置項(xiàng),表示各種類型的終端的限制數(shù)和接入終端總的限制數(shù)。這些配置項(xiàng)可通過串口命令和遠(yuǎn)程管理平臺(tái)修改。當(dāng)配置項(xiàng)修改時(shí),DHCP服務(wù)器重新讀取配置文件,并初始化各配置項(xiàng)。
[0034]具體地,在Struct server_config_t結(jié)構(gòu)體中添加如下成員變量:
[0035]Struct category_config_info catainfo[NUMOFTYPES];
[0036]Int mwmode ;
[0037]Int allowed ;
[0038]Int TotalTerminalNumber ;
[0039]Struct category_config_info{
[0040]Int Ifrestrict;
[0041]Int RstNum;
[0042]Int Alreadlyallowed;
[0043]}
[0044]其中,mwmode表示限制終端的策略。當(dāng)mwmode值為O時(shí),終端數(shù)量限制功能不起作用;當(dāng)mwmode值為I時(shí),只對(duì)接入終端的總數(shù)量進(jìn)行限制;當(dāng)mwmode值為2時(shí),分別對(duì)不同類型的終端數(shù)量進(jìn)行限制。allowed用于統(tǒng)計(jì)已經(jīng)獲取IP的終端數(shù)量,TotalTerminalNumber 表不所限制的總終端數(shù)。結(jié)構(gòu)體 struct category_config_info 是對(duì)每一類型終端的數(shù)量進(jìn)行限制時(shí)用到的結(jié)構(gòu)。Ifrestrict表示功能開啟或關(guān)閉,RstNum表示相應(yīng)類型終端的設(shè)定限制數(shù),Alreadyallowed表示已經(jīng)獲取IP的該類型的終端數(shù)。
[0045]DHCP服務(wù)器同DHCP客戶端交互獲取IP的簡單過程如圖2所示。其中,關(guān)鍵在于:判斷當(dāng)前已獲取IP的終端的個(gè)數(shù),并根據(jù)條件執(zhí)行不同的內(nèi)容。從上面交互過程不難看出,增加的條件判斷內(nèi)容及處理放在sendoffer過程中比較合理。從DHCP服務(wù)器代碼中可以知道sendoffer這個(gè)過程是由sendoffer ()函數(shù)實(shí)現(xiàn)。這個(gè)函數(shù)會(huì)從地址池中得到一個(gè)未被使用的IP,并利用到客戶端發(fā)過來的discover包,構(gòu)造offer包的內(nèi)容,再將offer包發(fā)送個(gè)客戶端;然后客戶端根據(jù)offer包提供的IP向服務(wù)器發(fā)送request包,完成動(dòng)態(tài)IP的獲取過程;最后再sendoffer函數(shù)里面進(jìn)行處理。如果終端個(gè)數(shù)等于限制數(shù),則sendoffer ()函數(shù)返回出錯(cuò),一般是返回-1,此時(shí)該會(huì)話交互過程就結(jié)束,而終端也就獲取不到IP。
[0046]綜上所述,本發(fā)明的路由模式下限制終端數(shù)量的方法利用網(wǎng)關(guān)中已有的軟件資源實(shí)現(xiàn),實(shí)現(xiàn)過程比較簡單,不影響路由轉(zhuǎn)發(fā)的處理復(fù)雜程度;同時(shí)不會(huì)有額外的內(nèi)存需求,也不會(huì)造成網(wǎng)關(guān)的性能降低。所以,本發(fā)明有效克服了現(xiàn)有技術(shù)中的種種缺點(diǎn)而具高度產(chǎn)業(yè)利用價(jià)值。
[0047]上述實(shí)施例僅例示性說明本發(fā)明的原理及其功效,而非用于限制本發(fā)明。任何熟悉此技術(shù)的人士皆可在不違背本發(fā)明的精神及范疇下,對(duì)上述實(shí)施例進(jìn)行修飾或改變。因此,舉凡所屬【技術(shù)領(lǐng)域】中具有通常知識(shí)者在未脫離本發(fā)明所揭示的精神與技術(shù)思想下所完成的一切等效修飾或改變,仍應(yīng)由本發(fā)明的權(quán)利要求所涵蓋。
【權(quán)利要求】
1.一種路由模式下限制終端數(shù)量的方法,其特征在于,至少包括: 判斷終端數(shù)量限制類型; 對(duì)于當(dāng)前終端數(shù)量限制類型,檢測是否存在終端不在線; 若存在終端不在線,則允許新的終端的接入請(qǐng)求,并為所述新的終端分配IP ; 若不存在終端不在線,則不響應(yīng)新的終端接入請(qǐng)求。
2.根據(jù)權(quán)利要求1所述的路由模式下限制終端數(shù)量的方法,其特征在于:所述終端數(shù)量限制類型包括限制接入終端的總數(shù)量和限制不同類型終端的接入數(shù)量。
3.根據(jù)權(quán)利要求1所述的路由模式下限制終端數(shù)量的方法,其特征在于:檢測是否存在終端不在線時(shí),通過ARP檢測是否存在不在線的終端。
4.根據(jù)權(quán)利要求3所述的路由模式下限制終端數(shù)量的方法,其特征在于:在進(jìn)行ARP檢測時(shí),如果某一終端對(duì)連續(xù)若干次的ARP檢測無響應(yīng),則認(rèn)為該終端不在線。
5.根據(jù)權(quán)利要求1所述的路由模式下限制終端數(shù)量的方法,其特征在于:所述路由模式下限制終端數(shù)量的方法通過修改DHCP服務(wù)代碼實(shí)現(xiàn)的。
6.根據(jù)權(quán)利要求5所述的路由模式下限制終端數(shù)量的方法,其特征在于:修改DHCP服務(wù)代碼時(shí),在DHCP服務(wù)器程序中添加一些全局變量,所述全局變量用于統(tǒng)計(jì)已連接各種類型終端的數(shù)量和連接終端的總數(shù)量,同時(shí)添加一些DHCP的配置項(xiàng),所述配置項(xiàng)用于表示各種類型終端的限制數(shù)和接入終端總的限制數(shù)。
7.根據(jù)權(quán)利要求6所述的路由模式下限制終端數(shù)量的方法,其特征在于:所述配置項(xiàng)能夠通過串口命令和遠(yuǎn)程管理平臺(tái)進(jìn)行修改;當(dāng)所述配置項(xiàng)修改時(shí),DHCP服務(wù)器重新讀取配置文件,并初始化各配置項(xiàng)。
【文檔編號(hào)】H04L12/741GK103685285SQ201310699626
【公開日】2014年3月26日 申請(qǐng)日期:2013年12月18日 優(yōu)先權(quán)日:2013年12月18日
【發(fā)明者】伍文杰 申請(qǐng)人:上海斐訊數(shù)據(jù)通信技術(shù)有限公司