基于http協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法【專利摘要】本發(fā)明涉及一種基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法,其中包括智能網(wǎng)關創(chuàng)建nfqueue隊列連接通道;在設備接入后根據(jù)該設備的接入信息中的MAC地址設定相應的防火墻規(guī)則;根據(jù)防火墻規(guī)則對該設備的上網(wǎng)報文打上標記值;監(jiān)聽該nfqueue隊列連接通道的數(shù)據(jù)包,并判斷是否存在具有標記值的上網(wǎng)報文,如果是,則解析具有標記值的上網(wǎng)報文,并獲得相應設備的設備信息,然后將設備信息上傳至網(wǎng)關管理平臺。采用本發(fā)明的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法,在實現(xiàn)過程中不需要修改任何內(nèi)核代碼即可對傳統(tǒng)功能進行改進,使之更加快速、有效與智能化,是一種無侵入式的方法,結構簡單,易于實現(xiàn),不受環(huán)境約束,具有更廣泛的應用范圍?!緦@f明】基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法【
技術領域:
】[0001]本發(fā)明涉及智能網(wǎng)關【
技術領域:
】,尤其涉及設備類型識別【
技術領域:
】,具體是指一種基于計算機軟件實現(xiàn)多功能指紋解鎖的方法。【
背景技術:
】[0002]隨著智能家居,智能網(wǎng)關等概念的逐步發(fā)展與成熟,相關產(chǎn)品也逐步進入人們的生活,傳統(tǒng)網(wǎng)關一些功能無法滿足智能化的需求,不能給用戶帶來方便,有效的體驗。[0003]傳統(tǒng)網(wǎng)關對LAN側設備類別識別主要使用DHCP協(xié)議OPT1N選項來實現(xiàn)的,這要求設備支持此選項才能被識別,而且對操作系統(tǒng),廠家等信息的識別存在天然缺陷,使用此方式不能滿足智能網(wǎng)關對LAN側設備類型的識別需求?!?br/>發(fā)明內(nèi)容】[0004]本發(fā)明的目的是克服了上述現(xiàn)有技術的缺點,提供了一種需要修改任何內(nèi)核代碼,基于HTTP協(xié)議頭解析實現(xiàn)下掛設備類型識別的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法。[0005]為了實現(xiàn)上述目的,本發(fā)明的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法具有如下構成:[0006]該基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法,其主要特點是,所述的方法包括以下步驟:[0007](I)所述的智能網(wǎng)關創(chuàng)建nfqueue隊列連接通道;[0008](2)所述的智能網(wǎng)關在設備接入后根據(jù)該設備的接入信息中的MAC地址設定相應的防火墻規(guī)則;[0009](3)所述的智能網(wǎng)關根據(jù)所述的防火墻規(guī)則對該設備的上網(wǎng)報文打上標記值;[0010](4)所述的智能網(wǎng)關監(jiān)聽該nfqueue隊列連接通道的數(shù)據(jù)包,并判斷是否存在具有標記值的上網(wǎng)報文,如果是,則繼續(xù)步驟(5),否則繼續(xù)步驟(4);[0011](5)所述的智能網(wǎng)關解析所述的具有標記值的上網(wǎng)報文,并獲得相應設備的設備信息;[0012](6)所述的智能網(wǎng)關將所述的設備信息上傳至網(wǎng)關管理平臺。[0013]進一步地,所述的智能網(wǎng)關解析所述的具有標記值的上網(wǎng)報文并獲得相應設備的設備信息,具體包括以下步驟:[0014](5.1)所述的智能網(wǎng)關判斷所述的具有標記值的上網(wǎng)報文是否為HTTP協(xié)議的數(shù)據(jù)報文,如果是,則繼續(xù)步驟(5.2),否則返回步驟(4);[0015](5.2)所述的智能網(wǎng)關判斷所述的具有標記值的上網(wǎng)報文是否帶有用戶信息代理協(xié)議頭,如果是,則繼續(xù)步驟(5.3),否則返回步驟(4);[0016](5.3)所述的智能網(wǎng)關根據(jù)所述的用戶信息代理協(xié)議頭的信息分析出相應設備的設備信息。[0017]進一步地,所述的步驟(6)之后,哈還包括以下步驟:[0018](7)所述的智能網(wǎng)關刪除該設備相應的防火墻規(guī)則。[0019]其中,所述的防火墻規(guī)則為ebtables規(guī)則或iptables規(guī)則,所述的設備信息包括設備的操作系統(tǒng)、詳細類型和廠家型號。[0020]采用了本發(fā)明的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法,使用ebtables/iptables規(guī)則將LAN側設備上網(wǎng)的協(xié)議包通過nfqueue的方式導入到應用層守護進程,守護進程解析出HTTP協(xié)議,根據(jù)user-agent頭里攜帶的信息,分析出設備的相關信息(如操作系統(tǒng)類別,是否為移動設備,廠家名稱等),該方法在實現(xiàn)過程中不需要修改任何內(nèi)核代碼即可對傳統(tǒng)功能進行改進,使之更加快速、有效與智能化,是一種無侵入式的方法,結構簡單,易于實現(xiàn),不受環(huán)境約束,具有更廣泛的應用范圍?!緦@綀D】【附圖說明】[0021]圖1為本發(fā)明的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法的流程圖?!揪唧w實施方式】[0022]為了能夠更清楚地描述本發(fā)明的技術內(nèi)容,下面結合具體實施例來進行進一步的描述。[0023]如圖1所示,在一種實施方式中,本發(fā)明的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法包括以下步驟:[0024](I)所述的智能網(wǎng)關創(chuàng)建nfqueue隊列連接通道;[0025](2)所述的智能網(wǎng)關在設備接入后根據(jù)該設備的接入信息中的MAC地址設定相應的防火墻規(guī)則;[0026](3)所述的智能網(wǎng)關根據(jù)所述的防火墻規(guī)則對該設備的上網(wǎng)報文打上標記值;[0027](4)所述的智能網(wǎng)關監(jiān)聽該nfqueue隊列連接通道的數(shù)據(jù)包,并判斷是否存在具有標記值的上網(wǎng)報文,如果是,則繼續(xù)步驟(5),否則繼續(xù)步驟(4);[0028](5)所述的智能網(wǎng)關解析所述的具有標記值的上網(wǎng)報文,并獲得相應設備的設備信息;[0029](6)所述的智能網(wǎng)關將所述的設備信息上傳至網(wǎng)關管理平臺。[0030]在一種優(yōu)選的實施方式中,所述的智能網(wǎng)關解析所述的具有標記值的上網(wǎng)報文并獲得相應設備的設備信息,具體包括以下步驟:[0031](5.1)所述的智能網(wǎng)關判斷所述的具有標記值的上網(wǎng)報文是否為HTTP協(xié)議的數(shù)據(jù)報文,如果是,則繼續(xù)步驟(5.2),否則返回步驟(4);[0032](5.2)所述的智能網(wǎng)關判斷所述的具有標記值的上網(wǎng)報文是否帶有用戶信息代理協(xié)議頭,如果是,則繼續(xù)步驟(5.3),否則返回步驟(4);[0033](5.3)所述的智能網(wǎng)關根據(jù)所述的用戶信息代理協(xié)議頭的信息分析出相應設備的設備信息。[0034]在一種優(yōu)選的實施方式中,,所述的步驟(6)之后,哈還包括以下步驟:[0035](7)所述的智能網(wǎng)關刪除該設備相應的防火墻規(guī)則。[0036]其中,所述的防火墻規(guī)則為ebtables規(guī)則或iptables規(guī)則,所述的設備信息包括設備的操作系統(tǒng)、詳細類型和廠家型號。[0037]在實際應用中,為了實現(xiàn)上述目的,需要設計網(wǎng)關的應用層守護程序,用來與網(wǎng)關的內(nèi)核通信,完成nfqueue消息接收與數(shù)據(jù)包分析,主要實現(xiàn)如下功能:[0038]當有新設備接入到網(wǎng)關時,網(wǎng)關將設備上線的信息通知給守護進程,守護進程根據(jù)設備的MAC地址,使用ebtables規(guī)則或iptables規(guī)則打上特定的MARK(標記值),帶此MARK標記的數(shù)據(jù)包會在IP層通過nfqueue導入給應用守護進程。當應該守護進程完成對此設備的類型識別后,清除此設備的ebtables規(guī)則或iptables規(guī)則,具體步驟如下:[0039]I)應用層守護進程啟動后,建立與內(nèi)核的nfqueue隊列連接通道,并配置將帶有特定MARK(其值為任意定義合并值)的數(shù)據(jù)導入到設定的隊列;[0040]2)當應用守護進程收到網(wǎng)關的上網(wǎng)設備通知信息后,根據(jù)信息里攜帶的MAC地址,設定ebtables規(guī)則或iptables規(guī)則,在鏈路層將此MAC的報文打上步驟I中設定的MARK值,這樣這些報文就會被傳給守護進程;[0041]3)守護進程接收到IP層數(shù)據(jù)庫包后,開始進行解析,如果發(fā)現(xiàn)接收到的數(shù)據(jù)包并不是HTTP協(xié)議數(shù)據(jù)包,則忽略解析,繼續(xù)監(jiān)聽。[0042]4)如果發(fā)現(xiàn)數(shù)據(jù)報為正常的http協(xié)議,且?guī)в衭ser-agent(用戶信息代理)協(xié)議頭,則根據(jù)此協(xié)議頭里攜帶的信息,分析出設備的操作系統(tǒng),詳細類型和廠家型號等。由于設備類型更新很快,這部分的解析可以配合特定我服務器去解析,讓服務器完成設備數(shù)據(jù)庫信息更新,保證類型識別的有效性。[0043]5)守護進程將分析出的設備信息,上報給網(wǎng)關管理中心,并刪除相關設備的ebtables規(guī)則或iptables規(guī)則。[0044]其中,創(chuàng)建nfqueue通道和ebtables/iptables規(guī)則在守護進程啟動時創(chuàng)建,并且在守護進程生命周期內(nèi)一直存在,守護進程一直監(jiān)聽nfqueue隊列的數(shù)據(jù)包;創(chuàng)建ebtables/iptables規(guī)則打MARK發(fā)生在守護進程接收到網(wǎng)關的設備上線通知信息后,守護進程在得到上網(wǎng)設備的MAC地址的情況下,給此設備上網(wǎng)包打開MARK標記;通過nfqueue通道傳輸報文發(fā)生在設備上網(wǎng)時,經(jīng)過網(wǎng)關的數(shù)據(jù)包會使用步驟I中創(chuàng)建的通道傳輸給守護進程,守護進程對數(shù)據(jù)包進行解析;刪除完成解析的設備的ebtables/iptables規(guī)則發(fā)生在守護進程完成某個設備類型識別后,使其上網(wǎng)走正常流程。[0045]采用了本發(fā)明的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法,使用ebtables/iptables規(guī)則將LAN側設備上網(wǎng)的協(xié)議包通過nfqueue的方式導入到應用層守護進程,守護進程解析出HTTP協(xié)議,根據(jù)user-agent頭里攜帶的信息,分析出設備的相關信息(如操作系統(tǒng)類別,是否為移動設備,廠家名稱等),該方法在實現(xiàn)過程中不需要修改任何內(nèi)核代碼即可對傳統(tǒng)功能進行改進,使之更加快速、有效與智能化,是一種無侵入式的方法,結構簡單,易于實現(xiàn),不受環(huán)境約束,具有更廣泛的應用范圍。[0046]在此說明書中,本發(fā)明已參照其特定的實施例作了描述。但是,很顯然仍可以作出各種修改和變換而不背離本發(fā)明的精神和范圍。因此,說明書和附圖應被認為是說明性的而非限制性的?!緳嗬蟆?.一種基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法,其特征在于,所述的方法包括以下步驟:(1)所述的智能網(wǎng)關創(chuàng)建nfqueue隊列連接通道;(2)所述的智能網(wǎng)關在設備接入后根據(jù)該設備的接入信息中的MAC地址設定相應的防火墻規(guī)則;(3)所述的智能網(wǎng)關根據(jù)所述的防火墻規(guī)則對該設備的上網(wǎng)報文打上標記值;(4)所述的智能網(wǎng)關監(jiān)聽該nfqueue隊列連接通道的數(shù)據(jù)包,并判斷是否存在具有標記值的上網(wǎng)報文,如果是,則繼續(xù)步驟(5),否則繼續(xù)步驟(4);(5)所述的智能網(wǎng)關解析所述的具有標記值的上網(wǎng)報文,并獲得相應設備的設備信息;(6)所述的智能網(wǎng)關將所述的設備信息上傳至網(wǎng)關管理平臺。2.根據(jù)權利要求1所述的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法,其特征在于,所述的智能網(wǎng)關解析所述的具有標記值的上網(wǎng)報文并獲得相應設備的設備信息,具體包括以下步驟:(5.1)所述的智能網(wǎng)關判斷所述的具有標記值的上網(wǎng)報文是否為HTTP協(xié)議的數(shù)據(jù)報文,如果是,則繼續(xù)步驟(5.2),否則返回步驟(4);(5.2)所述的智能網(wǎng)關判斷所述的具有標記值的上網(wǎng)報文是否帶有用戶信息代理協(xié)議頭,如果是,則繼續(xù)步驟(5.3),否則返回步驟(4);(5.3)所述的智能網(wǎng)關根據(jù)所述的用戶信息代理協(xié)議頭的信息分析出相應設備的設備信息。3.根據(jù)權利要求1所述的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法,其特征在于,所述的步驟(6)之后,哈還包括以下步驟:(7)所述的智能網(wǎng)關刪除該設備相應的防火墻規(guī)則。4.根據(jù)權利要求1至3中任一項所述的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法,其特征在于,所述的防火墻規(guī)則為ebtables規(guī)則或iptables規(guī)則。5.根據(jù)權利要求1至3中任一項所述的基于HTTP協(xié)議在智能網(wǎng)關中實現(xiàn)設備類型識別的方法,其特征在于,所述的設備信息包括設備的操作系統(tǒng)、詳細類型和廠家型號。【文檔編號】H04L29/06GK104410724SQ201410828332【公開日】2015年3月11日申請日期:2014年12月23日優(yōu)先權日:2014年12月23日【發(fā)明者】李慶洋,張定理,晏春平申請人:上海市共進通信技術有限公司