專利名稱:一種用戶終端參數(shù)信息的獲取方法
技術領域:
本發(fā)明涉及計算機網(wǎng)絡通信技術領域,尤其涉及一種用戶終端參數(shù)信息的獲取方法,終端管理系統(tǒng)通過其下掛的網(wǎng)關內存中的記錄獲取網(wǎng)關LAN側的用戶終端的參數(shù)信息。
背景技術:
隨著通信技術發(fā)展,特別是云計算,移動互聯(lián)網(wǎng)以及物聯(lián)網(wǎng)等技術迅速崛起,各種智能終端出現(xiàn),服務器或局端對用戶終端的實時發(fā)現(xiàn)與管理尤為重要,以方便業(yè)務的及時下發(fā)與數(shù)據(jù)處理。本論述提出了一種方法可以實現(xiàn)終端管理系統(tǒng)對用戶終端的實時無盲點查詢,方便終端管理系統(tǒng)對用戶終端的查詢與管理,具有良好的應用前景。在目前終端管理系統(tǒng)中對網(wǎng)關LAN側用戶終端的查詢與管理是通過終端管理系統(tǒng)發(fā)起查詢請求,然后直接讀取網(wǎng)關內存的用戶終端的信息。目前網(wǎng)關內存記錄用戶終端參數(shù)信息的觸發(fā)方式是當用戶終端接入網(wǎng)關后,網(wǎng)關內DHCP (Dynamic HostConfiguration Protocol,動態(tài)主機設置協(xié)議)服務器為該用戶終端分配一個動態(tài)IP地址,同時將相應的參數(shù)信息存入網(wǎng)關內存,在網(wǎng)關收到終端管理系統(tǒng)發(fā)起查詢請求后直接將網(wǎng)關內存中記錄信息上報。這種方法簡單,快捷,但是這種方法存在以下不足
首先,讀取信息不是最新終端的信息,因為終端的IP地址是可以變化的,直接讀取內存中的信息有可能是過時的或者錯誤信息;
其次,目前網(wǎng)關內存中記錄用戶終端參數(shù)信息的觸發(fā)方式是網(wǎng)關DHCP為用戶終端分配IP地址后,申請內存記錄相應的參數(shù)信息,但是實際應用中有的用戶喜歡手動設置IP地址,如果用戶終端不和網(wǎng)關有通信這里我們稱作不活動終端,網(wǎng)關就不能發(fā)現(xiàn)用戶終端,內存也不會記錄相應的參數(shù)信息,這就會導致終端管理系統(tǒng)出現(xiàn)查詢盲點,不能查詢發(fā)現(xiàn)所有用戶終端,出現(xiàn)管理漏洞,業(yè)務下發(fā)錯誤等問題;
最后,當一個新用戶終端進來或用戶終端參數(shù)變化時,終端管理系統(tǒng)如果不主動查詢就也不能及時發(fā)現(xiàn)。
發(fā)明內容
本發(fā)明的目的在于克服現(xiàn)有技術的不足,提供一種用戶終端參數(shù)信息的獲取方法,能夠使終端管理系統(tǒng)及時準確地獲取不活動(與網(wǎng)關無通信)用戶終端以及新出現(xiàn)終端的參數(shù)信息,進而使終端管理系統(tǒng)對網(wǎng)關LAN側用戶終端實現(xiàn)實時無盲點的查詢與管理。本發(fā)明具體采用以下技術方案解決上述技術問題。一種用戶終端參數(shù)信息的獲取方法,終端管理系統(tǒng)通過其下掛的網(wǎng)關內存中的記錄獲取網(wǎng)關LAN側的用戶終端的參數(shù)信息,包括以下步驟
步驟I、當網(wǎng)關收到終端管理系統(tǒng)的查詢請求時或者按照預設周期向其LAN側的用戶終端廣播ARP (Address Resoluition Protocol,地址解析協(xié)議)請求包;所述ARP請求包的報頭中,發(fā)送MAC地址為網(wǎng)關的MAC,IP地址為網(wǎng)關的IP地址,目標MAC為廣播MAC地址,目標IP為網(wǎng)關允許的合法網(wǎng)段;
步驟2、用戶終端收到ARP請求包后立刻響應回包,把正在使用的IP地址和對應的物理MAC通知網(wǎng)關;
步驟3、網(wǎng)關收到LAN側所有用戶終端的ARP回包后更新ARP緩存列表,把對應的MAC和IP寫入ARP緩存表;
步驟4、網(wǎng)關逐條讀取ARP緩存列表記錄項并判斷是否需要更新內存中的相應記錄,具體包括
步驟401、讀取ARP緩存列表中的記錄項,判斷該記錄項中的IP地址是否是LAN側地址,若否,則轉步驟406 ; 步驟402、將記錄項的MAC地址與內存中的記錄相比,判斷是否是新加進來的用戶終端,若否,則轉進入步驟404;
步驟403、申請內存空間,創(chuàng)建新的記錄項,記錄用戶終端的IP地址、IP地址類型、物理MAC地址、屬于哪個網(wǎng)口等參數(shù)信息;在判斷IP地址類型時,IP地址與DHCP已分配地址池比較,如果是屬于已分配列表IP地址,則IP地址類型為DHCP,否則為STATIC ;
步驟404、比較內存中該用戶終端的參數(shù)信息與新讀取該用戶終端參數(shù)信息是否有變化,若否,則轉步驟407 ;
步驟405、刪除內存中記錄該用戶終端的參數(shù)信息,轉步驟403 ;
步驟406、讀取ARP緩存列表的下一個記錄項并重復步驟401-步驟405,若下一個記錄項為空則進入步驟407 ;
步驟407、退出;
步驟5、根據(jù)步驟4的判斷結果更新網(wǎng)關內存中的相應記錄;
步驟6、網(wǎng)關將內存中的記錄上報給終端管理系統(tǒng)。相比現(xiàn)有技術,本發(fā)明方法可以使終端管理系統(tǒng)及時準確地獲取不活動(與網(wǎng)關無通信)用戶終端以及新出現(xiàn)終端的參數(shù)信息,進而使終端管理系統(tǒng)對網(wǎng)關LAN側用戶終端實現(xiàn)實時無盲點的查詢與管理。
圖I為本發(fā)明用戶終端參數(shù)信息的獲取方法的過程示意 圖2為網(wǎng)關讀取并判斷ARP緩存列表記錄的流程圖。
具體實施例方式下面結合附圖對本發(fā)明的技術方案進行詳細說明
本發(fā)明的發(fā)明思路是由網(wǎng)關定期或在接收到終端管理系統(tǒng)的查詢請求時向其LAN側用戶終端廣播一個ARP請求包,用戶終端收到ARP請求包后,把自身的對應的MAC地址、IP地址反饋給網(wǎng)關,網(wǎng)關對ARP緩存列表中的記錄進行判斷,并根據(jù)判斷結果對網(wǎng)關內存中儲存的用戶終端參數(shù)信息進行相應的更新,最后將更新后的內存中的用戶終端參數(shù)信息發(fā)送給終端管理系統(tǒng)。本發(fā)明方法具體包括以下步驟
步驟I、當網(wǎng)關收到終端管理系統(tǒng)的查詢請求時或者按照預設周期向其LAN側的用戶終端廣播ARP請求包。
本發(fā)明中,網(wǎng)關對用戶終端參數(shù)信息的查詢可以采用定期輪詢的方式,也可以應終端管理系統(tǒng)的請求。由于傳統(tǒng)的ARP協(xié)議主要在已知對方IP地址時獲取對方MAC地址,其報頭格式如下
ARPmsg {
struct ethhdr ethhdr;A 以太網(wǎng)頭 */
int hardwaretype;A 硬件類型 */
int protocoltype;/*以太網(wǎng)協(xié)議類型*/
int hardwarelen;A硬件地址長度*/
char protocollen;/* 協(xié)議類型 */ int operation;/*ARP 操作 */
char sendMACr [6] ;A 發(fā)送端 MAC 地址 */
char sendIP[4] ;/* 發(fā)送端 IP 地址 */
char targetMAC[6] ;/* 目的端 MAC 地址 */
char target IP [4] ; /* 目的端 IP 地址 */
};
網(wǎng)關如果不知道用戶終端IP地址是無法獲取MAC地址,因此無法實現(xiàn)對用戶終端IP和物理MAC的查詢,需要對ARP請求包的報頭進行修改。為此,本發(fā)明對傳統(tǒng)ARP請求包的報頭進行了重新定義發(fā)送MAC地址為網(wǎng)關的MAC,IP地址為網(wǎng)關的IP地址,目標MAC為廣播MAC地址,目標IP為網(wǎng)關允許的合法網(wǎng)段。釆用重新定義的ARP請求包即可實現(xiàn)對用戶終端IP和物理MAC的查詢,以下為重新定義的ARP請求包的報頭
ARPmsg {
struct ethhdr ethhdr;A 以太網(wǎng)頭 */
int hardwaretype;/* 硬件類型 */
int protocoltype;/*以太網(wǎng)協(xié)議類型*/
int hardware len;A硬件地址長度*/
char protocollen;/* 協(xié)議類型 */
int operation;/*ARP 操作 */
char sendMACr [6] ;A 發(fā)送端 MAC 地址 */
char sendIP[4] ;/* 發(fā)送端 IP 地址 */
char targetMAC [6] =ARP 廣播 MAC 地址 /* 端 MAC 地址 */
char targetIP[4]=合法網(wǎng)段IP地址 /*目的端IP地址*/
}o步驟2、用戶終端收到ARP請求包后立刻響應回包,把正在使用的IP地址和對應的物理MAC通知網(wǎng)關;
步驟3、網(wǎng)關收到LAN側所有用戶終端的ARP回包后更新ARP緩存列表,把對應的MAC和IP寫入ARP緩存表;
步驟4、網(wǎng)關逐條讀取ARP緩存列表記錄項并判斷是否需要更新內存中的相應記錄。網(wǎng)關ARP緩存列表記錄的是WAN和LAN側所有IP地址,MAC地址信息,另外ARP記錄不能直接判斷IP地址是STATIC還是DHCP類型。因此需要提取LAN側用戶終端參數(shù)信息,對每條記錄進行判斷。本步驟具體包括以下子步驟
步驟401、讀取ARP緩存列表中的記錄項,判斷該記錄項中的IP地址是否是LAN側地址,若否,則轉步驟406 ;
步驟402、將記錄項的MAC地址與內存中的記錄相比,判斷是否是新加進來的用戶終端,若否,則轉進入步驟404;
步驟403、申請內存空間,創(chuàng)建新的記錄項,記錄用戶終端的IP地址、IP地址類型、物理MAC地址、屬于哪個網(wǎng)口等參數(shù)信息;在判斷IP地址類型時,IP地址與DHCP已分配地址池比較,如果是屬于已分配列表IP地址,則IP地址類型為DHCP,否則為STATIC ; 步驟404、比較內存中該用戶終端的參數(shù)信息與新讀取該用戶終端參數(shù)信息是否有變化,若否,則轉步驟407 ;
步驟405、刪除內存中記錄該用戶終端的參數(shù)信息,轉步驟403;
步驟406、讀取ARP緩存列表的下一個記錄項并重復步驟401-步驟405,若下一個記錄項為空則進入步驟407 ;
步驟407、退出;
步驟5、根據(jù)步驟4的判斷結果更新網(wǎng)關內存中的相應記錄,即把新加入終端的參數(shù)信息以及需要更新的參數(shù)項寫入網(wǎng)關內存中;
步驟6、網(wǎng)關將內存中的記錄上報給終端管理系統(tǒng)。為了便于公眾充分理解本發(fā)明技術方案,下面舉一具體實例。假設網(wǎng)關LAN側有四個用戶終端,分別為用戶終端1,用戶終端2,用戶終端3,用戶終端4,四個用戶終端對應的參數(shù)信息具體如下
用戶終端 I :IP=192. 168. I. 2,類型 DHCP, MAC=AA:BB:CC:DD 用戶終端 2 :IP=192. 168. I. 3,類型 STATIC,MAC=BB:AA:CC:DD 用戶終端 3 :IP=192. 168. I. 4,類型 DHCP, MAC=CC: AA:BB:DD 用戶終端 4 :IP=192. 168. I. 5,類型 STATIC,MAC=DD:AA:BB:CC 假設網(wǎng)關內存中當前存儲的用戶終端信息如下
用戶終端 I IP=192. 168. I. 12,類型 STATIC, MAC=AA:BB:CC:DD用戶終端 2 :IP=192. 168. I. 13,類型 DHCP, MAC=BB:AA:CC:DD如采用傳統(tǒng)的終端管理系統(tǒng)查詢網(wǎng)關LAN側用戶終端參數(shù)信息方法,終端管理系統(tǒng)發(fā)起查詢請求,網(wǎng)關收到請求后,直接將內存中參數(shù)信息上報即只將用戶終端I和2參數(shù)上報,實際網(wǎng)關LAN側有四個用戶終端,很明顯這種方法出現(xiàn)查詢盲點,對新用戶終端不能及時發(fā)現(xiàn)。采用本發(fā)明方法時,其過程如圖I所示,具體按照以下方法
(1)網(wǎng)關在收到終端管理系統(tǒng)的查詢請求或輪詢周期T時刻一到,向LAN側廣播本發(fā)明重新定義的ARP請求包,其中char targetMAC [6] =FF: FF: FF: FF, chartargetIP [4] =192. 168. I. 0 ;
(2)所有LAN側用戶終端用戶終端I 用戶終端4都會收到網(wǎng)關發(fā)的ARP請求包,收到以后立刻響應回包,將以下信息發(fā)送給網(wǎng)關用戶終端 I IP=192. 168. I. 2,MAC=AA:BB:CC:DD 用戶終端 2 :IP=192. 168. I. 3,MAC=BB:AA:CC:DD 用戶終端 3 IP=192. 168. I. 4,MAC=CC:AA:BB:DD 用戶終端 4 :IP=192. 168. I. 5,MAC=DD:AA:BB:CC
(3)網(wǎng)關收到LAN側所有終端的響應包后,將用IP=192.168. I. 2 ; MAC=AA:BB:CC:DD,和 IP=192. 168. I. 3,MAC=BB:AA:CC:DD, IP=192. 168. I.4, MAC=CC:AA:BB:DD,IP=192. 168. I. 5,MAC=DD: AA:BB: CC 更新 ARP 緩存列表;
(4)網(wǎng)關讀取對ARP列表記錄并每一條進行判斷,詳細的判斷流程如圖2所示,判斷結果分別如下
用戶終端I :內存中有記錄,IP地址和類型需更新,所以先刪除原記錄,查詢DHCP已分配IP地址列表為DHCP ;
用戶終端2 :內存中有記錄,IP地址和類型需更新,所以先刪除原記錄,查詢DHCP已分配IP地址列表為STATIC;
用戶終端3 :內存沒有記錄,申請內存空間,查詢DHCP已分配IP地址列表為DHCP ;
用戶終端4 :內存沒有記錄,申請內存空間,查詢DHCP已分配IP地址列表為STATIC ;
(5)把需要更新的參數(shù)項寫入網(wǎng)關內存中;
(6)網(wǎng)關把內存中記錄上報給終端管理系統(tǒng),更新終端管理系統(tǒng)上用戶終端的參數(shù)信
肩、O
權利要求
1.一種用戶終端參數(shù)信息的獲取方法,終端管理系統(tǒng)通過其下掛的網(wǎng)關內存中的記錄獲取網(wǎng)關LAN側的用戶終端的參數(shù)信息,其特征在于,包括以下步驟 步驟I、當網(wǎng)關收到終端管理系統(tǒng)的查詢請求時或者按照預設周期向其LAN側的用戶終端廣播ARP請求包;所述ARP請求包的報頭中,發(fā)送MAC地址為網(wǎng)關的MAC,IP地址為網(wǎng)關的IP地址,目標MAC為廣播MAC地址,目標IP為網(wǎng)關允許的合法網(wǎng)段; 步驟2、用戶終端收到ARP請求包后立刻響應回包,把正在使用的IP地址和對應的物理MAC通知網(wǎng)關; 步驟3、網(wǎng)關收到LAN側所有用戶終端的ARP回包后更新ARP緩存列表,把對應的MAC和IP寫入ARP緩存表; 步驟4、網(wǎng)關逐條讀取ARP緩存列表記錄項并判斷是否需要更新內存中的相應記錄,具體包括 步驟401、讀取ARP緩存列表中的記錄項,判斷該記錄項中的IP地址是否是LAN側地址,若否,則轉步驟406 ; 步驟402、將記錄項的MAC地址與內存中的記錄相比,判斷是否是新加進來的用戶終端,若否,則轉進入步驟404; 步驟403、申請內存空間,創(chuàng)建新的記錄項,記錄用戶終端的IP地址、IP地址類型、物理MAC地址、屬于哪個網(wǎng)ロ等參數(shù)信息;在判斷IP地址類型時,IP地址與DHCP已分配地址池比較,如果是屬于已分配列表IP地址,則IP地址類型為DHCP,否則為STATIC ; 步驟404、比較內存中該用戶終端的參數(shù)信息與新讀取該用戶終端參數(shù)信息是否有變化,若否,則轉步驟407 ; 步驟405、刪除內存中記錄該用戶終端的參數(shù)信息,轉步驟403 ; 步驟406、讀取ARP緩存列表的下一個記錄項并重復步驟401-步驟405,若下一個記錄項為空則進入步驟407 ; 步驟407、退出; 步驟5、根據(jù)步驟4的判斷結果更新網(wǎng)關內存中的相應記錄; 步驟6、網(wǎng)關將內存中的記錄上報給終端管理系統(tǒng)。
全文摘要
本發(fā)明公開了一種用戶終端參數(shù)信息的獲取方法,終端管理系統(tǒng)通過其下掛的網(wǎng)關內存中的記錄獲取網(wǎng)關LAN側的用戶終端的參數(shù)信息。本發(fā)明方法由網(wǎng)關定期或在接收到終端管理系統(tǒng)的查詢請求時向其LAN側用戶終端廣播一個ARP請求包,用戶終端收到ARP請求包后,把自身的對應的MAC地址、IP地址反饋給網(wǎng)關,網(wǎng)關對ARP緩存列表中的記錄進行判斷,并根據(jù)判斷結果對網(wǎng)關內存中儲存的用戶終端參數(shù)信息進行相應的更新,最后將更新后的內存中的用戶終端參數(shù)信息發(fā)送給終端管理系統(tǒng)。相比現(xiàn)有技術,本發(fā)明方法可以使終端管理系統(tǒng)及時準確地獲取不活動用戶終端以及新出現(xiàn)終端的參數(shù)信息,進而使終端管理系統(tǒng)對網(wǎng)關LAN側用戶終端實現(xiàn)實時無盲點的查詢與管理。
文檔編號H04L12/24GK102710439SQ201210169068
公開日2012年10月3日 申請日期2012年5月29日 優(yōu)先權日2012年5月29日
發(fā)明者倪健, 孟世勝, 陳健, 陳然 申請人:南京郵電大學