• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    網(wǎng)卡流量監(jiān)測新方法

    2012-12-31 00:00:00胡建東等

    摘要:近些年,上網(wǎng)又多了利用無線網(wǎng)卡上網(wǎng)的新模式。怎樣檢測它的流量是一個新的課題。軟件檢測只能檢測一臺PC機上的流量使用情況,由于軟件不會顯示什么時候用了多少流量所以如果網(wǎng)卡在多臺PC機上運行過以后我們只能知道一臺PC機上的流量情況,于是怎樣克服軟件的弊端是一個急需解決的重要的問題。將來很可能會有許多品種的網(wǎng)卡,怎樣能做到檢測所有品種網(wǎng)卡的流量,是一個新的課題。本文主要論述用硬件克服軟件弊端,怎樣做到用概率方法較為準(zhǔn)確地估計已經(jīng)使用的流量。

    關(guān)鍵詞:流量監(jiān)測 網(wǎng)卡 USB 單片機

    0 引言

    無線網(wǎng)卡越來越成為上網(wǎng)的流行趨勢,對于它的流量監(jiān)測一直是用戶面臨的一個重要問題。目前監(jiān)測流量的方法都是采用軟件檢測,它有一個難以彌補的缺點:如果3G網(wǎng)卡在電腦甲上用了5M流量,再到自己的電腦上繼續(xù)用那么電腦甲的流量自己的電腦就檢測不到這樣就造成了軟件檢測流量不可靠。如果網(wǎng)卡自身可以監(jiān)測流量那么這個問題就得以解決。目前雖然有檢測3G網(wǎng)卡流量的技術(shù),但是他采取的方法是捕獲數(shù)據(jù)包,因為數(shù)據(jù)中間專門有一個字段是記錄該數(shù)據(jù)包的大小的,只要讀到這個字段再累加就可以得到流量。但是這也只能檢測一種網(wǎng)卡的流量。將來有可能出其他種類的網(wǎng)卡,本文主要談網(wǎng)卡流量監(jiān)測的通用方法,所以具有前瞻性。

    1 流量監(jiān)測基本原理

    網(wǎng)卡采用USB接口與電腦相連,數(shù)據(jù)傳輸采用的是D+和D-之間的差動信號傳輸?shù)?,并且采用NRZI編碼。在NRZ-I編碼中,編碼后電平只有正負電平之分,沒有零電平,是不歸零編碼。NRZ-I電平的一次翻轉(zhuǎn)代表邏輯0。與前一個電平相同的信號代表邏輯1(翻轉(zhuǎn)為0,不變?yōu)?)。仔細觀察,我們發(fā)現(xiàn),NRZI編碼信號經(jīng)過反向后,還原的內(nèi)容不變。典型應(yīng)用如USB傳輸。

    根據(jù)這一編碼原則,假設(shè)發(fā)送端傳送8位數(shù)據(jù)流0000 0001B,前面的7個0位經(jīng)過NRZ-I編碼后,將得到7次翻轉(zhuǎn)信號。在接收端根據(jù)脈寬很容易得到同步接收時鐘。此后根據(jù)這個頻率的倍頻來采樣后面的數(shù)據(jù)。在傳輸過程中,每一次編碼的跳變都可以用來同步。這種同步機制在USB低速和中速傳輸中得到應(yīng)用。即發(fā)送數(shù)據(jù)前,首先發(fā)送同步頭SYNC,內(nèi)容為01H。這樣就可以同步傳輸數(shù)據(jù)了,且字節(jié)開頭和結(jié)尾不需要起始位和停止位。在USB高速傳輸中,同步頭SYNC為00 01H,15個翻轉(zhuǎn)信號。

    USB協(xié)議規(guī)定:如果要發(fā)送的數(shù)據(jù)中出現(xiàn)有連續(xù)的6個1,則在進行NRZI編碼前,在這6個連續(xù)的1后面會插入1個0,然后再進行NRZI編碼。接收端收到連續(xù)6個1,將自動去掉后面的1個0。這樣就使得USB通信的接收同步更加可靠。無論數(shù)據(jù)是什么樣子,最終都是0和1的代碼,只要知道這些代碼就知道走過了多少流量。D+對地的信號可以用示波器打出來,高的認為是1,低的認為是0,這樣的數(shù)據(jù)再經(jīng)過NRZI解碼就是傳輸?shù)臄?shù)據(jù)。要知道傳送了多少數(shù)據(jù)就一位位數(shù)出來就是了。

    2 流量監(jiān)測的幾種方法

    2.1 串行通信法

    從USB的D+端引出一根線作為數(shù)據(jù)線,然后另外一根線作為時鐘線,這樣可以作為同步串行信號讀取數(shù)據(jù)。讀取出的數(shù)據(jù)單位是位,所以需要轉(zhuǎn)換單位。如果為了精確數(shù)據(jù)流量可以在讀到這一串代碼之后轉(zhuǎn)碼,把連續(xù)多個的0過濾掉剩下的就是我們需要的流量。這個方法最大的優(yōu)點就是準(zhǔn)確度高,很可靠;缺點就是硬件設(shè)計較復(fù)雜,程序也難調(diào)試。

    2.2 概率法

    數(shù)據(jù)傳輸過程中0和1是有規(guī)律的,但是以位為單位時數(shù)據(jù)流量很大而且由于輸送的指令我們在發(fā)生之前是不知道的,所以0和1的代碼可以用隨機事件流解釋。泊松分布的參數(shù)λ是單位時間(或單位面積)內(nèi)隨機事件的平均發(fā)生率。泊松分布適合于描述單位時間內(nèi)隨機事件發(fā)生的次數(shù)。一段時間內(nèi)一個上升沿到周圍的下降沿一共隔了幾位數(shù)據(jù)(設(shè)為K)基本符合泊松分布,經(jīng)過試驗發(fā)現(xiàn)它基本服從λ=3.0的泊松分布。有了這個知識我們的問題變得簡單了,只需要從D+接一根線到單片機的計數(shù)器引腳,每個下降沿中斷一次計數(shù)累加。假設(shè)計數(shù)器結(jié)果是n個下降沿,那么由泊松分布表知:假設(shè)P(K)表示值為K的概率,數(shù)據(jù)位數(shù)W=n[2P(K)1+3P(K)2+4P(K3)……9P(K9)],超過9位的數(shù)據(jù)忽略掉。經(jīng)過單位轉(zhuǎn)換后由顯示屏顯示即可。這個方法最大的優(yōu)點就是可以簡化電路和程序調(diào)試難度;但是數(shù)據(jù)不如方法一準(zhǔn)確。表1是關(guān)于λ=3.0泊松分布表用到的的一部分。

    3 硬件設(shè)計

    3.1 芯片介紹

    單片機芯片STC12C5608AD:

    STC12系列單片機是宏晶公司生產(chǎn)的單時鐘機器周期的單片機是高速,低功耗,強抗干擾的新一代8051單片機。指令系統(tǒng)完全兼容8051但是比8051快8到12倍,內(nèi)部集成MAX810專用復(fù)位電路。它有4路PWM/PCA(可編程計數(shù)陣列),可以用作四路D/A轉(zhuǎn)換,也可用來實現(xiàn)四個定時器。

    3.2 總體電路設(shè)計

    該系統(tǒng)主要是從USB接口的D+引出一根線再通過三極管的共射極放大電路放大波形,再通過運算放大器放大波形把波形放大到單片機可以檢測得到。由于在波形放大的過程中,波形可能產(chǎn)生失真導(dǎo)致單片機誤讀,所以再加一個斯密特觸發(fā)器整理為方波送到單片機引腳監(jiān)測。

    芯片是STC12C5608AD,數(shù)據(jù)采集模塊把波形傳送到INT0引腳后單片機自動監(jiān)測下降沿個數(shù),根據(jù)概率統(tǒng)計可以做一個算法估計已經(jīng)用了的流量,流量超過了一定額度立馬報警。

    4 誤差分析與解決

    上述的兩種方法都會把不該計入的數(shù)據(jù)流量算進去,所以存在一定誤差。消除誤差主要以實驗方法來實現(xiàn)。首先,我們這種方法統(tǒng)計的流量中不該計入的部分是每部分都有的一些標(biāo)識字段,所以他應(yīng)該是均勻的線性的誤差。有了這個假設(shè)那么就有了試驗方法。在360上監(jiān)測網(wǎng)卡流量時同時用我們設(shè)計的系統(tǒng)檢測流量。整個過程中我們的系統(tǒng)會與360監(jiān)測結(jié)果出現(xiàn)偏差,我們只檢測10分鐘,假設(shè)差值是a,實驗十次或者更多取平均值得到結(jié)果A,那么可以認為每秒鐘流量誤差有A/36000。這樣的話在寫檢測流量程序的時候,只需要每秒在原來監(jiān)測的基礎(chǔ)上加A/36000(A有正負)就行了。為了保證這個流量監(jiān)測裝置能及時報警可以多加一部分上去以保證監(jiān)測的流量比實際流量稍大。

    5 實驗與總結(jié)

    最終成品是用的第二種方法——概率法,電路圖已經(jīng)給出。第一種方法雖然精確但是電路結(jié)構(gòu)比較繁瑣,第二種方法簡潔很多,無論是硬件電路還是程序第二種都比較方便,而且容易調(diào)試。綜合上述原因最終決定用概率法。由表2可以知道誤差是隨著數(shù)據(jù)流量的增大而減小的,這符合了我們之前的概率假設(shè),因為數(shù)值越大越符合統(tǒng)計規(guī)律,隨機事件流的規(guī)律就會越發(fā)明顯。

    參考文獻:

    [1]劉青麗.基于USB2.0接口技術(shù)的數(shù)據(jù)采集系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:西南交通大學(xué),2004.

    [2]周云峰.基于USB2.0的高速同步數(shù)據(jù)采集系統(tǒng)設(shè)計[J].電子技術(shù)應(yīng)用,2004,30(2).

    [3]陳啟美.USB協(xié)議層[J].電力自動化設(shè)備,2001,21(5).

    [4]吳贛昌.《概率論與數(shù)理統(tǒng)計》.理工類第四版.北京:中國人民出版社,2006.

    作者簡介:胡建東,(1992-),男,四川眉山人,畢業(yè)于西華大學(xué) 機械電子工程專業(yè),研究方向:數(shù)字信號采集與分析。

    双峰县| 永嘉县| 慈利县| 辉县市| 潮安县| 商都县| 镇沅| 广东省| 无棣县| 仁布县| 石棉县| 澄城县| 哈巴河县| 台北县| 玛纳斯县| 比如县| 镇原县| 商南县| 庄浪县| 石棉县| 绍兴市| 和林格尔县| 金坛市| 天台县| 定边县| 浮山县| 闵行区| 临颍县| 资阳市| 农安县| 西藏| 休宁县| 阜新| 汨罗市| 卫辉市| 永德县| 阿城市| 临泽县| 黄浦区| 垦利县| 天门市|