• 沒有找到結果。

第四章 以流量為基礎之計價系統實作

4.3 系統實作

以下各小節為各相關設備實作的細部設定說明。

4.3.1 sFlow Collector

sFlow Collector 架在一台 Sun Solaris 8 的機器上,安裝完 sFlow Collector 相關程式 後,必須啟動 S86sflow 和 sflowtool 這兩個 daemon,這樣就可以開始收集 sFlow Datagram。sFlow Datagram 的資料極為詳盡,考量到流量統計的需求有限,目前每筆 Sample 只取 11 個值,所以額外以 perl 撰寫程式,將以下欄位另外擷取,

表 4 - 1 擷取之 sFlow Datagram 資料

擷取出的資料另行備存,並上傳至 Billing Server 進行流量統計。

4.3.2 RADIUS Server

本系統以一台 Windows Server 2003 安裝 Juniper Funk Steel-Belted RADIUS 5.4 版進 行測試,基本上只要能夠啟用 IEEE 802.1x 的 RADIUS 即可。

RADIUS Log 是以日期的方式存檔,每日利用 Server Scheduled Tasks 將前一日的日 誌檔以 FTP 方式上傳至 Billing Server,以日期為檔名,做為區別。RADIUS Log 記述相 當詳盡,本文所需擷取的屬性資料格式於下,

表 4 - 2 RADIUS Log Format

Called-Station-Id 是 Authenticator 的 IP 位址,而 Calling-Station-Id 則是 Supplicant 的 IP 位址,至於 User-Name 就是用戶用來驗證身份的帳號,在組織內即是員工代碼。因此 利用下一小節要說明的 DHCP Log 的 MAC Address 為鍵值,在 RADIUS Log 中即可找 到利用此 MAC 位址進行身份驗證的用戶。

4.3.3 DHCP Server

在 DHCP Server 這部分要增加的設定並不多。Windows 作業系統下的 DHCP Server 啟動時,在 %systemroot%\system32\dhcp 的目錄下,每日自動產生一個 Microsoft DHCP Service Activity Log,以週為限,一共七個檔案,所以必須另外將檔案備存出來,才能 避免日誌檔被覆蓋。

Microsoft DHCP Service Activity Log 記錄著 DHCP Client 向 Server 提出的 Request,

及 Server 回應的相關訊息,格式於下,

表 4 - 3 DHCP Log Format

其中 Host Name(主機名稱)的編碼依組織規定,採取前 2 碼為單位碼,中間 7 碼 為員工代碼,不足 7 碼者,在左側補 0 至 7 碼滿,後 2 碼為流水號。

為了將 Microsoft DHCP Service Activity Log 每日備存,所以在 Server Scheduled Tasks 加上了每日上傳前一日檔案設定。日誌檔每日上傳至 Billing Server,以日期為檔名,做

為區別。

上傳的方式是寫 Script,利用 FTP 將檔名格式已轉換成日期檔名的檔案傳送至 Billing Server,並留下一份備存在 DHCP Server 上,避免傳送失敗時沒有資料進行比對。

4.3.4 Fixed IP Table

除了採用動態 IP 位址之外,無可避免的會有固定 IP 位址的需求,舉凡工作站、伺 服器、印表機等設備,有上網需求卻又不完全適用於動態 IP 位址;有鑑於此,所以另 有一個表格記錄固定 IP 位址發放,以為查核。固定 IP 位址表格,格式於下,

表 4 - 4 固定 IP 位址表格格式

表格雖然記錄著部門、單位(Dept./Org.)的訊息,但由於人員及組織異動頻仍,所 以程式比對時以使用者員工代碼(User ID)為主,進人力資源系統比對,找出其部門、

單位,進行統計,除非使用者離職,才以固定 IP 位址表格的 Dept./Org.為查詢鍵值,進 人力資源系統查詢部門、單位是否存在,存在則予以統計;若該部門或單位不存在,這 個 IP 的流量即歸為公用網段。

4.3.5 Human Resource Database

人力資源系統登錄人力、組織的相關資料,而且資料最具即時性,因此將各方須進 行人事比對的資料在此進行查詢,以維持查詢資料的正確性,也確保統計資料能夠趨近 實際使用值。

4.3.6 Billing Server

Billing Server 要進行的工作可分為四項,依序分別為,

1. 統計 IP 位址流量:將 sFlow Collector 傳送過來,經過欄位精簡的資料進行 IP 位址統計的工作,這部分目前暫定以「月」為單位進行統計工作,也可以修改 程式以所要的統計區間為單位。

2. 查詢 IP 位址使用者:統計完每筆 IP 位址的流量之後,將 DHCP Server 每日上 傳的 Activity Log 進行 IP 位址的比對,抓取該 IP 位址的 Host Name 中的員工 代碼進行比對。倘若該 IP 位址無法在 DHCP Service Activity Log 找到,則與固 定 IP 位址表格進行比對,抓取該 IP 位址的申請人員工代碼(User ID)。

3. 查詢使用者單位:找尋到 IP 位址對映的員工代碼之後,以員工代碼為鍵值,

進人力資源系統進行比對,抓取該員工所屬的單位。員工倘若離職,則回固定 IP 位址表格,以 Dept./Org.的值進人力資源系統比對,若該單位仍然存在,即 將該 IP 位址流量算為該單位;倘若真的無法判定該筆 IP 位址的流量所屬單位,

則將此流量歸至公用流量。

4. 統計單位流量:利用上述的方式已將 IP 位址所屬的單位找出,此時再進行一 次統計的動作,即可將組織中各單位的流量計算出來,據此對各單位進行費用 分攤的作業。

相關文件