一種家庭網關檢測及屏蔽用戶上網業務的系統和方法
【技術領域】
[0001]本發明涉及家庭網關,具體涉及一種家庭網關檢測及屏蔽用戶上網業務的系統和方法。
【背景技術】
[0002]隨著寬帶技術的發展與智能終端的普及應用,一個家庭中除了電腦外,還存在多種設備需要接入互聯網,如智能手機、PAD等便攜設備。解決這種問題的主要方式是種用家庭網關接入各類設備并轉發多種業務,以實現互聯網應用。
[0003]互聯網內容魚龍混雜,為了實現家庭內不同設備安全、健康地應用互聯網(綠色上網),對檢測及屏蔽用戶上網業務的需求極為迫切,例如:
[0004](I)考慮到對家庭未成年用戶的保護,家長希望知道有哪些設備,訪問了哪些業務,并屏蔽某些設備訪問某些業務;
[0005](2)運營商出于相關組織機構對公共安全保護的角度考慮,也存在特定場合下對用戶上網業務了解的需求。
[0006]鑒于以上情況,作為家庭網絡組網核心設備的家庭網關需要具備檢測及屏蔽用戶上網業務的功能。目前,家庭網關檢測及屏蔽用戶上網業務的功能主要是通過家庭網關深度包檢測技術完成。然而,這種檢測方式的實現是固化到家庭網關的鏡像文件中去的,若有新的業務出現或現有特征值有變化的,則需要利用新的鏡像文件重新升級家庭網關。利用鏡像文件升級家庭網關并非任何普通人員都可以完成,所以這種方式很難使廣大普通用戶靈活應用。
[0007]鑒于以上情況,需要對現有家庭網關檢測及屏蔽用戶上網業務的方式進行改進,以方便普通用戶靈活應用。
【發明內容】
[0008]本發明所要解決的技術問題是現有家庭網關檢測及屏蔽用戶上網業務的方式進行改進,以方便普通用戶靈活應用的問題。
[0009]為了解決上述技術問題,本發明所采用的技術方案是提供一種家庭網關檢測及屏蔽用戶上網業務的方法,包括以下步驟:
[0010]家庭網關從管理平臺獲取特征值文件以及黑名單文件,所述特征值文件用于檢測出相關業務并抓取相關關鍵字段,所述黑名單文件用于屏蔽接入家庭網關的特定設備訪問特定上網業務;
[0011]家庭網關利用其獲取的特征值文件,從用戶上網業務的數據包中檢測出相關業務,并生成對應的上網記錄文件回傳給管理平臺保存;同時,利用黑名單文件接入或屏蔽特定設備訪問的特定上網業務;
[0012]用戶利用管理平臺查詢家庭網關所接入的設備的上網業務記錄。
[0013]在上述方法中,所述特征值文件中包含有上網業務的特征信息,家庭網關根據所述上網業務的特征信息檢測出相關業務并抓取相關關鍵字段。
[0014]在上述方法中,所述特征值文件用來定義檢測用戶上網業務的規則,包括類型、動作、協議、端口、個數和規則6個字段,其中:
[0015]類型是所檢測業務的編號,每種業務都設有與特征值文件中的類型相對應的類型字段編號;
[0016]動作是檢測該業務采取的方式,包括匹配和抓取;
[0017]協議是所檢測業務的IP協議類型;
[0018]端口是所檢測業務的傳輸層目地端口號;
[0019]個數是所檢測業務匹配動作需要的規則的個數,或抓取動作需要的規則的個數;
[0020]規則是指匹配和抓取動作的依據。
[0021]在上述方法中,匹配動作對應的規則依次包含以下字段:偏移、特征長度和特征數據,指的是傳輸層負載的指定的偏移位置要有特征長度的特征數據;
[0022]抓取動作對應的規則依次包含以下字段:偏移、首部長度和首部數據、尾部長度和尾部數據,指的是傳輸層負載從偏移位置開始,存在對應首部長度的首部數據及尾部長度的尾部數據,則并抓取其中的數據。
[0023]在上述方法中,利用黑名單文件屏蔽特定設備訪問特定的上網業務中,所述特定設備通過它的源MAC來標識,具體方法如下:
[0024]針對匹配動作的業務,后續字段是若干源MAC字段,表示針對某類業務,只要源MAC符合任一源MAC字段,則屏蔽;
[0025]針對抓取動作的業務,后續字段是一個源MAC字段外加若干關鍵詞字段,表示針對某類業務,若是來自特定源MAC,且所抓取數據符合任一關鍵詞字段中的值,則屏蔽。
[0026]在上述方法中,所述業務記錄文件記載接入家庭網關的某臺設備在某一時間段訪問相關上網業務的最后一次時間、訪問頻率、持續時長以及包含抓取規則的相關業務所抓取的數據;每一條記錄通過類型、源MAC和抓取數據三元組標識,其中:
[0027]類型字段與例特征值文件中的類型一致;
[0028]源MAC字段為接入家庭網關的設備MAC ;
[0029]最近訪問字段為最近一次上網業務的時間;
[0030]命中次數字段為該上網業務被家庭網關業務檢測模塊檢測到的次數;
[0031]持續時間字段為該上網業務的持續時間;
[0032]抓取數據字段為抓取動作獲取的數據,針對匹配動作該字段值為空。
[0033]在上述方法中,家庭網關利用其獲取的特征值文件,從用戶上網業務的數據包中檢測出相關業務的方法如下:
[0034]首先創建Netlink通信接口,注冊通信鉤子函數;
[0035]然后在Linux內核Netfliter框架的NF_BR_PRE_ROUTING節點掛上數據包分析鉤子函數,使得家庭網關下的各終端數據包通過家庭網關轉發時,第一時間被優先處理分析,其中:
[0036]通信鉤子函數用來接受用戶空間平臺交互模塊特征值設定消息、黑名單設定消息,生成對應的匹配規則鏈表與黑名單鏈表;
[0037]數據包分析鉤子函數對進入家庭網關的每個二層報文進行分析,若報文特征與匹配規則鏈表中的某節點特征值匹配,則指的是檢測到相關的上網業務;
[0038]若來自某源MAC的業務與黑名單鏈表中的某節點規則匹配,則將該報文丟棄,不轉發;其他情況下,則轉發,且向用戶空間的平臺交互模塊通知檢測到的業務信息。
[0039]本發明還提供了一種家庭網關檢測及屏蔽用戶上網業務的系統,包括家庭網關,還包括管理平臺,
[0040]所述家庭網關上設有業務檢測模塊和平臺交互模塊,所述管理平臺上設有網關交互模塊、用戶數據庫和用戶人機接口 ;
[0041]業務檢測模塊從管理平臺獲取特征值文件以及黑名單文件,并根據特征值文件中對不同業務設定的規則,從用戶上網業務的數據包中檢測出相關業務,抓取數據包中的相關字段傳回平臺交互模塊,平臺交互模塊將業務檢測模塊返回的用戶上網業務記錄寫入業務記錄文件,并傳給管理平臺的網關交互模塊,網關交互模塊再對用戶數據庫中的相關內容進行更新保存;業務檢測模塊根據黑名單文件屏蔽特定的設備訪問特定的上網業務;
[0042]用戶利用用戶人機接口查詢家庭網關所接入設備的上網業務記錄。
[0043]本發明,家庭網關利用從管理平臺獲取待檢測上網業務的特征值以及黑名單文件,檢測用戶上網業務類型,并屏蔽特定的設備訪問特定的上網業務,當待檢測的上網業務的特征值發生變化時,只需要改變管理平臺上的特征值文件,于是家庭網關就會從管理平臺上獲取最新的待檢測上網業務的特征值以及黑名單文件,無需因待檢測特征值變化而升級家庭網關的鏡像文件,普通用戶也要以很方便地進行操作。
【附圖說明】
[0044]圖1為本發明中家庭網關檢測及屏蔽用戶上網業務的系統的示意圖;
[0045]圖2為本發明中的特征值文件文件結構示意圖;
[0046]圖3為本發明中的黑名單文件結構示意圖;
[0047]圖4為本發明中的業務記錄文件結構示意圖;
[0048]圖5為本發明中匹配規則鏈表結構示意圖;
[0049]圖6為本發明中業務檢測模塊生成匹配規則鏈表和黑名單鏈表流程圖;
[0050]圖7為本發明中業務檢測模塊數據包分析流程圖;
[0051]圖8為本發明中業務檢測模塊黑名單判斷流程圖;
[0052]圖9為本發明中平臺交互模塊業務記錄鏈表結構示意圖;
[0053]圖10為本發明中平