国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

局域網(wǎng)下基于智能路由器的NAS 應(yīng)用系統(tǒng)

2022-11-18 14:01:46王樂欣
電子設(shè)計工程 2022年22期
關(guān)鍵詞:文件共享群組路由器

王樂欣

(武漢郵電科學(xué)研究院,湖北武漢 430073)

當(dāng)今,國內(nèi)NAS(Network Attached Storage)市場主要被臺灣企業(yè)占據(jù)[1],市場上的NAS 存儲系統(tǒng)專業(yè)性強(qiáng)、存儲容量大,未能在家庭中廣泛使用。家用NAS 的普及并不理想,一方面它存在專業(yè)操作性太強(qiáng)、價格高昂、能耗大等問題,另一方面人們更熱衷于通過硬盤和網(wǎng)盤備份。硬盤僅能滿足用戶的數(shù)據(jù)存儲需求,網(wǎng)盤雖然具備強(qiáng)大的文件管理與共享功能,但是用戶數(shù)據(jù)最終存儲于服務(wù)器商,存在一定的風(fēng)險,可能會導(dǎo)致用戶數(shù)據(jù)泄露或者丟失[2-3]。

該文設(shè)計和實現(xiàn)的局域網(wǎng)下基于智能路由器的NAS 應(yīng)用系統(tǒng),以“傻瓜式”、輕量級、低成本為核心進(jìn)行開發(fā),普通用戶訪問系統(tǒng)地址,輸入賬號和密碼即可進(jìn)行文件操作,用戶數(shù)據(jù)通過路由器存儲在本地。系統(tǒng)具備文件管理與共享的功能,解決了家庭用戶數(shù)據(jù)存儲、共享問題。所開發(fā)系統(tǒng)基于家庭已有智能路由器設(shè)備,減輕了設(shè)備冗余,減少了用戶多設(shè)備開銷,使用簡單,擴(kuò)展靈活。

1 系統(tǒng)總體結(jié)構(gòu)設(shè)計

1.1 系統(tǒng)結(jié)構(gòu)

系統(tǒng)整體框架如圖1 所示,路由操作系統(tǒng)為Linux,利用其擴(kuò)展USB 接口掛載存儲設(shè)備作為存儲介質(zhì),部署Samba 服務(wù),連接路由器與應(yīng)用系統(tǒng)之間的通信。系統(tǒng)采用B/S 結(jié)構(gòu),用戶在瀏覽器中輸入系統(tǒng)地址,登錄成功后即可上傳文件或獲取服務(wù)器數(shù)據(jù),其共分為三層:瀏覽器、Web 服務(wù)器和數(shù)據(jù)庫服務(wù)器[4]。

1.2 系統(tǒng)功能模塊設(shè)計

根據(jù)家庭用戶對數(shù)據(jù)存儲與分享的日常需求,系統(tǒng)需要實現(xiàn)數(shù)據(jù)上傳、下載、分享、刪除等功能。為了進(jìn)一步方便用戶管理文件,系統(tǒng)增加分類、排序、收藏、搜索等功能,同時用戶也可以查看文件被分享、收藏和下載的次數(shù)。系統(tǒng)功能模塊設(shè)計如圖2所示。

1.3 數(shù)據(jù)庫設(shè)計

數(shù)據(jù)庫設(shè)計的合理與否,直接影響到系統(tǒng)的效能及拓展性[5]。所構(gòu)建系統(tǒng),主要使用數(shù)據(jù)庫存儲以下幾方面的數(shù)據(jù)。

用戶信息表(users):用于存放用戶信息。包括用戶ID(uid)、用戶名(name)、密碼(password)、注冊時間(time)以及最后一次退出系統(tǒng)的時間(lastLogin Time)、token、用戶文件數(shù)量(fileNumbers)、文件大?。╢ilesize)。

總文件表(allInfo):用于存放所有上傳文件信息。包括uid、文件名(filename)、path(存儲地址)、mime、文件類型(type)、size、上傳時間。

共享文件表(share):用于存放共享文件信息。包括分享者uid、type、文件在allInfo 中的id、鏈接密碼(可選)、分享時間、過期時間(可選)。

回收表(recycle):用于存放被刪除文件信息。包括文件在文件信息表中的id、被刪除文件的用戶id、filename、path、type、文件大小、刪除時間。

文件信息表(info):用于存放文件信息、hash、type、path、md5、filesize,上傳多次的重復(fù)文件只保存一條信息。

收藏表(collection):用于存放uid、文件在allInfo中的id、path、filesize 和收藏時間。

1.4 環(huán)境搭建與相關(guān)技術(shù)

系統(tǒng)采用B/S 架構(gòu)進(jìn)行設(shè)計,用戶不需要安裝客戶端,通過瀏覽器即可操作。采用Xampp 集成環(huán)境,不需要單獨(dú)搭建Apache、MySQL、PHP 和PERL。項目采用Navicat 數(shù)據(jù)庫管理工具,Navicat 自帶圖形用戶界面,數(shù)據(jù)庫的創(chuàng)建、管理簡易快捷,如用戶權(quán)限設(shè)置、數(shù)據(jù)庫備份或移植,數(shù)據(jù)查看也更直觀[6-7]。后臺業(yè)務(wù)邏輯開發(fā)采用PHP 的ThinkPHP 框架,前端使用了Javascript、HTML、Ajax 等Web 編程技術(shù)。

2 部署Samba服務(wù)

客戶端和服務(wù)器之間的通信使用SMB(Server Message Block)協(xié)議,在Linux 系統(tǒng)上采用免費(fèi)軟件Samba 來實現(xiàn)SMB 協(xié)議。為了在NAS 系統(tǒng)中引入Samba 服務(wù),選取Samba 軟件包用于提供相關(guān)開源服務(wù),Samba 啟動的關(guān)鍵服務(wù)是smbd 和nmbd,同時也需要其他服務(wù)程序[8]。smbd 管理Samba 主機(jī)分享的目錄,nmbd 管理如NetBIOS name 和群組等的解析。linux 主機(jī)需要設(shè)定一個架構(gòu)在NetBIOS 協(xié)議上的名稱NetBIOS Name。Linux 主機(jī)必需要加入Windows主機(jī)的群組,才能使用Windows 提供的檔案數(shù)據(jù),在同一個群組當(dāng)中,NetBIOS Name 具有唯一性[9]。Samba 服務(wù)的核心在于smb.conf 配置,如下所示:

消息頭用[]表示,參數(shù)格式Parameter=value。重點(diǎn)配置參數(shù)工作群組workgroup,確保群組在所在局域網(wǎng)內(nèi)相同。netbios name 是主機(jī)名。security 用來規(guī)定Samba 主機(jī)的安全登入項目,security 等于share 時,不進(jìn)行安全登入,亦即沒有設(shè)定賬號與密碼,security 等于user 時,設(shè)定主機(jī)的密碼文件作為登入的驗證檔案[10]。usb1 表示共享目錄,writable 表示是否可以寫入,public 表示是否讓所有可以登錄的使用者看到這個項目。

用戶可在路由器管理界面配置Samba 的開啟、是否允許匿名操作、用戶名和密碼。路由器開啟Samba 后,管理系統(tǒng)便可通過用戶名和密碼建立與路由器共享盤之間的連接。

3 系統(tǒng)功能模塊實現(xiàn)

系統(tǒng)主要頁面包括用戶登錄頁面、系統(tǒng)主頁面和個人設(shè)置界面。用戶注冊或者登錄后到主頁面才可使用系統(tǒng)相關(guān)功能,主頁面同時提供個人設(shè)置界面的入口以及退出系統(tǒng)的出口。

3.1 登錄模塊

用戶登錄模塊用于實現(xiàn)用戶初次注冊、二次登錄的權(quán)限認(rèn)證。用戶初次登錄需要用戶名和密碼,認(rèn)證成功后便可獲取token 信息,后續(xù)的認(rèn)證可直接通過token 進(jìn)行。用戶登錄流程如圖3 所示。

3.2 用戶設(shè)置模塊

該模塊實現(xiàn)對用戶基本信息進(jìn)行查看和維護(hù)功能。用戶基本信息包括手機(jī)號、郵箱、昵稱、頭像等。同時該模塊會記錄用戶的活動信息(比如最近登錄時間)。用戶設(shè)置流程如圖4 所示。

3.3 文件管理模塊

文件上傳功能是文件管理系統(tǒng)的核心,用于傳輸用戶本地數(shù)據(jù),文件的管理也是基于用戶所上傳的文件來實現(xiàn)的[11]。文件上傳采用Plupload 插件,上傳方式有flash、HTML5 和silverlight 等。Plupload 會根據(jù)所屬環(huán)境,選擇最適合的方式進(jìn)行文件傳輸,HTML5 有最大優(yōu)先級。支持大文件切割成小塊上傳,如果上傳列表中存在文件大小大于chunk_size 但是小于max_file_size 的文件,Plupload 會將其分解成最大為chunk_size 的幾個小塊,然后再將文件中的各個文件(包括分解后的小塊)依次上傳給服務(wù)器[12-13]。

文件上傳、下載過慢是文件傳輸中常碰到的難題之一。該應(yīng)用系統(tǒng)針對這一問題,采用MD5 消息摘要算法。用戶上傳的文件通過MD5 消息摘要算法處理后生成唯一的MD5 碼,二次上傳文件會查詢對比MD5 碼,若文件的MD5 已存在,則只需復(fù)制服務(wù)器上的文件,即可實現(xiàn)文件秒傳。

MD5 消息摘要算法具體過程如下:

1)數(shù)據(jù)填充

對信息進(jìn)行數(shù)據(jù)填充,使信息的長度對512 取模得448,如果信息長度為L,則需滿足Lmod 512=448[14]。

填充方法:在信息后面添加一個1,1 后面添加多個0,添加后的信息長度為(N×512+448)。

2)記錄信息長度

以64 位為間隔來存儲填充前的信息長度。將這64 位加在第一步結(jié)果的后面,若信息長度大于264 位,則只使用低64 位的值(Lmode 264),這樣信息長度就變?yōu)?12 的整數(shù)倍,即N×512+448+64=(N+1)×512 位[15]。

3)初始化四個32 位鏈接變量

A=0X01234567,B=0X89ABCDEF,

C=0XFEDCBA98,D=0X76543210。

4)四輪循環(huán)運(yùn)算

循環(huán)N+1 次,A 復(fù)制到a,B 復(fù)制到b,C 復(fù)制到c,D 復(fù)制到c,這樣就得到了8 個初始變量。共有四輪主循環(huán),一輪操作16 次,每一輪運(yùn)算含一個非線性函數(shù)。每次操作對復(fù)制后的初始變量執(zhí)行非線性函數(shù)運(yùn)算。非線性函數(shù)為:

繼續(xù)定義四個分別用于四輪變換的函數(shù),每輪只使用FF、HH、GG 和II 中的一種操作。將512 bit 的數(shù)據(jù)子段拆分為Mj(j=0,1,2,…,15)子塊。<<<s表示循環(huán)左移s位,四個函數(shù)為FF(a,b,c,d,Mj,s,ti),GG(a,b,c,d,Mj,s,ti),HH(a,b,c,d,Mj,s,ti),II(a,b,c,d,Mj,s,ti),用公式分別表示如下:

經(jīng)過多步計算,輸出四組32 位長度的散列值,通過級聯(lián)得到128 位長度的數(shù)字簽名[16]。

文件分類:根據(jù)每個文件的mime 劃分為相對應(yīng)的type 類型存儲在數(shù)據(jù)庫中,根據(jù)不同type 值把文件分為圖片、音樂、文檔、視頻、其他。從數(shù)據(jù)庫中選擇所對應(yīng)的type 值實現(xiàn)文件分類。

文件下載:用戶將上傳到系統(tǒng)中的文件、其他用戶共享文件下載到本地的操作,下載功能利用fileDown()函數(shù)實現(xiàn)[17]。

文件排序:文件排序支持根據(jù)文件名、文件上傳日期和文件大小三種方式排序,用戶根據(jù)自己的需求選擇對應(yīng)方式對文件排序,方便用戶更直觀地查看文件。

文件刪除:文件刪除包括單文件刪除和多文件刪除,可以利用搜索功能對指定文件進(jìn)行刪除,文件刪除功能利用fileDel()函數(shù)實現(xiàn),所刪除的文件還會在回收站中記錄。

文件共享:文件共享包括分享給我和我的分享,用于存儲他人分享給所屬賬戶,以及所屬賬戶分享給他人的文件。用戶既可以實現(xiàn)一對一文件共享,又可以實現(xiàn)一對多的文件共享。

文件收藏:文件收藏用來存儲用戶收藏的重要文件,用戶可把一些重要的文件點(diǎn)擊收藏,再次訪問便可直接到收藏文件夾快速訪問文件。

回收站:回收站存儲已經(jīng)刪除的文件信息,防止用戶誤刪文件。用戶可在回收站模塊選擇還原資料和徹底刪除文件,刪除后不能再找回。

4 結(jié)束語

該文提出并實現(xiàn)了一種局域網(wǎng)下基于智能路由器的NAS 應(yīng)用系統(tǒng),普通用戶訪問系統(tǒng)地址,輸入賬號和密碼即可進(jìn)行文件操作,解決了現(xiàn)有NAS 專業(yè)性操作強(qiáng)的問題。支持用戶上傳文件至路由器外掛的存儲設(shè)備,并對上傳的文件進(jìn)行分類式、精細(xì)化管理,在實現(xiàn)現(xiàn)有網(wǎng)盤文件管理功能的同時解決現(xiàn)有網(wǎng)盤數(shù)據(jù)存儲在云端的安全性問題。系統(tǒng)具備文件共享功能,用戶既可以實現(xiàn)一對一文件共享,又可以實現(xiàn)一對多的文件共享。所開發(fā)系統(tǒng)基于家庭已有設(shè)備智能路由器,減輕設(shè)備冗余,減少用戶多設(shè)備開銷,同時對NAS 應(yīng)用今后的發(fā)展方向具有很大的意義。所實現(xiàn)的系統(tǒng)雖然具備基本的用戶數(shù)據(jù)存儲、共享、管理功能,性能尚可,出于安全考慮,應(yīng)用系統(tǒng)只提供了局域網(wǎng)內(nèi)的訪問接入方式。從實際的應(yīng)用場景出發(fā),將考慮實現(xiàn)廣域網(wǎng)下的智能路由器NAS應(yīng)用系統(tǒng)。

猜你喜歡
文件共享群組路由器
買千兆路由器看接口參數(shù)
科教新報(2022年24期)2022-07-08 02:54:21
關(guān)系圖特征在敏感群組挖掘中的應(yīng)用研究
電子測試(2018年14期)2018-09-26 06:04:10
基于統(tǒng)計模型的空間群組目標(biāo)空間位置計算研究
你所不知道的WIFI路由器使用方法?
省級氣象數(shù)據(jù)文件共享存儲管理系統(tǒng)研究
一種基于Web瀏覽器的文件共享系統(tǒng)設(shè)計與實現(xiàn)
無線路由器輻射可忽略
群組聊天業(yè)務(wù)在IMS客戶端的設(shè)計與實現(xiàn)
巧設(shè)路由器,下載更快速
丟掉收藏夾,GB群組管網(wǎng)頁
临桂县| 自治县| 吴江市| 庆元县| 湾仔区| 峨眉山市| 武冈市| 嘉荫县| 灵台县| 盐津县| 库车县| 长葛市| 潞西市| 孟连| 舞阳县| 保靖县| 泸定县| 巴东县| 临朐县| 云浮市| 荣成市| 和田县| 客服| 西藏| 荆门市| 明水县| 图们市| 凌海市| 陇西县| 岳池县| 根河市| 乐业县| 河北省| 长宁区| 溆浦县| 都江堰市| 邯郸市| 正蓝旗| 农安县| 新沂市| 新闻|