欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

在模擬大話務量測試中控制話務量的方法

文檔序號:7595708閱讀:198來源:國知局
專利名稱:在模擬大話務量測試中控制話務量的方法
技術領域
本發(fā)明涉及通信領域中模擬大話務量測試的方法,具體涉及如何精確控制話務量的技術。
背景技術
目前,隨著用戶規(guī)模的不斷擴大,通信領域的應用面臨的話務量不斷的提高,在用戶密集的區(qū)域更可能達到幾千條/秒。因此,對相應產品的測試工作中的大話務量測試也提出了更高的要求。一般測試都是利用定時器進行觸發(fā),定時器的觸發(fā)間隔從幾個毫秒到幾秒鐘不等,每次觸發(fā)產生一定的話務量,從而模擬出與實際類似的話務規(guī)模。
現(xiàn)有的技術中的控制話務量的方法有兩種第一種根據(jù)每秒鐘的話務量計算出每條話務占用的發(fā)送時間,以此時間作為定時器的觸發(fā)間隔,每次定時器觸發(fā)發(fā)送一條話務。
這種方法的缺點是由于計算機硬件平臺和操作系統(tǒng)軟件本身的限制,一般定時器觸發(fā)精度有限,也不夠精確,以windows操作系統(tǒng)為例,定時器的觸發(fā)間隔大多在10毫秒的級別上,無法達到更高的精度。這樣無法模擬超過100條/秒的話務量,實際的話務量要遠遠低于設置值。而且隨著計算機硬件平臺和操作系統(tǒng)軟件環(huán)境的變化,實際得到的話務量也會變化,無法控制。
第二種設定一個固定的定時器間隔,計算每次定時器觸發(fā)需要發(fā)送的話務量,定時器觸發(fā)時一次發(fā)送完計算得到的話務量。
這種方法的缺點是因為每次發(fā)送的話務量必須是整數(shù)。所以在一般計算的時候對除法的結果取整。這樣會帶來一定的“時間損失”,即本次發(fā)送的實際話務量小于精確計算的話務量。所以這樣得到的結果也會低于預設的話務量。同時,如果定時器間隔設置過大的話(比如幾秒鐘),會造成話務量分布不均勻,這也是此方法的一個缺陷。

發(fā)明內容
本發(fā)明所要解決的技術問題就是克服現(xiàn)有技術中對話務量控制不夠精確的缺點,提出一種能精確控制話務量的方法。
本發(fā)明的技術方案為1.1預設每秒的話務量;1.2獲取開始時操作系統(tǒng)的時間,作為第一次發(fā)送的時間;1.3設置定時器的觸發(fā)間隔;1.4定時器觸發(fā)后,獲取系統(tǒng)的當前時間,計算本次發(fā)送的時長;1.5根據(jù)預設的話務量和本次發(fā)送的時長,計算在本次定時器觸發(fā)應產生的話務量,并進行發(fā)送;1.6發(fā)送完畢后,根據(jù)實際發(fā)送條數(shù)計算本次發(fā)送的話務量占用的發(fā)送時間,累加到累計發(fā)送時間上作為下一次發(fā)送的開始時間;等待下一次觸發(fā)。
本發(fā)明中,將話務量分解成百位、十位和個位的話務量分別處理。
在本發(fā)明中,不是根據(jù)預設的定時器觸發(fā)間隔來決定本次觸發(fā)產生的話務量,而是通過變量記錄本次發(fā)送的“開始發(fā)送時間”,根據(jù)時間差來確定本次觸發(fā)產生的話務量,克服了定時器觸發(fā)精度不夠帶來的負面影響。同時在每次觸發(fā)后把實際發(fā)送的業(yè)務量換算成時間累計到下一次發(fā)送的“開始發(fā)送時間”里面,這樣能夠有效的避免因計算精度而產生的“時間損失”。同時,本算法能夠把話務量盡可能均勻的分布在每一段發(fā)送時間。


圖1是現(xiàn)有技術中的第一種話務量控制方法的流程圖;圖2是現(xiàn)有技術中的第二種話務量控制方法的流程圖;圖3是本發(fā)明的一種實施例的流程圖;圖4是本發(fā)明的第二種實施例的流程圖。
具體實施例方式
圖1和圖2是現(xiàn)有技術中的方法,在背景技術中已有介紹,此處不再重復。
考慮到計算精度的問題,本發(fā)明的方法主要針對預設的話務量在100和1000之間的情況。低于100的話務量用通常的方法就能達到較好的效果。超過1000的話務量可以使用多個采用本方法的程序共同產生,例如需要產生1600條/秒的話務量,可以使用兩個模擬程序,每個產生800條/秒的話務量,加起來就能滿足要求;或者使用3個模擬程序,分別產生500條/秒、500條/秒和600條/秒的話務量,加起來滿足要求。
在計算本次發(fā)送的話務量的時候,將預設的話務量分解成為百位,十位和個位來處理。比如預設的話務量為673條/秒,在處理的過程中分解成600條/秒,70條/秒和3條/秒分別進行計算和發(fā)送。
下面結合圖3和圖4對本發(fā)明進行詳細介紹。需要說明的是,流程圖里面采用windows操作系統(tǒng)的函數(shù)settimer和事件timer3event等來表示設置定時器和定時器觸發(fā)事件,但是本方法適用于各種操作系統(tǒng)。在下面對算法的描述中,時間變量的單位是毫秒,話務量變量的單位是條,所有的變量都是整數(shù)。
圖3是本發(fā)明的一種實施例的流程圖。具體包括以下步驟1、設置每秒需要發(fā)送的話務量n;2、獲取當前操作系統(tǒng)時間told,作為第一次發(fā)送時的累計發(fā)送時間。根據(jù)n的百,十,個位分別處理的原則,令told1=told2=told3=told。其中told1對應n的百位,told2對應n的十位,told3對應n的個位;3、設置定時器,定時器的的觸發(fā)間隔為合適值,比如1毫秒;4、等待定時器觸發(fā);5、定時器觸發(fā)后,獲取系統(tǒng)當前時間tnow;6、計算本次發(fā)送n的百位對應的“發(fā)送時長”t1=tnow-told1;7、計算本次發(fā)送n的百位對應的話務量m1=t1/(1000/n的百位*100);8、發(fā)起并完成m1次呼叫;9、計算本次發(fā)送n的百位耗費的時長,并累計到told1,told1=told1+m1*(1000/n的百位*100);10、計算本次發(fā)送n的十位對應的“發(fā)送時長”t2=tnow-told2;11、計算本次發(fā)送n的十位對應的話務量m2=t2/(1000/n的十位*10);12、發(fā)起并完成m2次呼叫;13、計算本次發(fā)送n的十位耗費的時長,并累計到told2,told2=told2+m2*(1000/n的十位*10);14、計算本次發(fā)送n的個位對應的“發(fā)送時長”t3=tnow-told3;15、計算本次發(fā)送n的個位對應的話務量m3=t3/(1000/n的個位);16、發(fā)起并完成m3次呼叫;17、計算本次發(fā)送n的個位耗費的時長,并累計到told3,told3=told3+m3*(1000/n的個位);18、返回第4步。
圖4是本發(fā)明的另一種實施例的流程圖,是在圖3所示實施例的基本上改進的實施例。所做的改進的主要是增強對預設話務量的百位數(shù)字代表的話務量的精度控制。
在圖3所示的實施例中,計算百位數(shù)字在本次發(fā)送中應該產生的話務量時,首先計算出發(fā)送一條話務占用的時間是多少毫秒(1000毫秒/(n的百位×100)),再用本次發(fā)送時長除以一條話務占用的時間,得到百位數(shù)字在本次發(fā)送中應該產生的話務量。因為變量為整數(shù),就帶來一個問題——計算的發(fā)送一條話務占用的時間不夠精確。例如當n的百位=3的時候,計算出發(fā)送一條話務占用的時間=3毫秒(實際為3.33毫秒),假設本次發(fā)送時長=22毫秒,計算得到的話務量=7條(實際為6條——22/3.33再取整)。所以圖3所示的實施例在精度上還有缺陷。
解決的辦法是在計算發(fā)送一條話務占用的時間時,用10000代替1000計算,相當于把一條話務占用的時間放大了10倍,這樣就要求計算話務量的時候把本次發(fā)送時長也放大10倍。例如當n的百位=3的時候,計算出發(fā)送一條話務占用的時間=33毫秒(實際為33.33毫秒),假設本次發(fā)送時長=22毫秒,計算時放大10倍就是220毫秒,計算得到的話務量=6條(實際也為6條——220/33.33再取整)。這樣就避免了圖3所示的實施例在精度控制上的缺陷。
總結一下,為了提高對預設話務量的百位數(shù)字代表的話務量的精度控制,圖4所示實施例在處理百位數(shù)字的時候采取的改進就是把所有的時間變量放大10倍。
具體包括以下步驟1、設置每秒需要發(fā)送的話務量n;2、獲取當前系統(tǒng)時間told,作為第一次發(fā)送時的累計發(fā)送時間。根據(jù)n的百,十,個位分別處理的原則令told1=10*told,told2=told3=told。其中told1對應n的百位,told2對應n的十位,told3對應n的個位;(因為在處理百位數(shù)字的時候需要對所有的時間變量放大10倍,所以計算told1的時候用told乘以10)3、設置定時器,定時器的觸發(fā)間隔為合適值,比如1毫秒;4、等待定時器觸發(fā);5、定時器觸發(fā)后,獲取系統(tǒng)當前時間tnow;6、計算本次發(fā)送n的百位對應的“發(fā)送時長”t1=10*tnow-told1;(因為told1放大了十倍,所以把tnow放大10倍再和told1相減,結果就是本次發(fā)送n的百位對應的“發(fā)送時長t1”放大了10倍)7、計算本次發(fā)送n的百位對應的話務量m1=t1/(10000/n的百位*100);(這里用10000代替圖3所示的實施例里面的1000,達到一條話務占用的時間放大10倍的目的)8、發(fā)起并完成m1次呼叫;9、計算本次發(fā)送n的百位耗費的時長,并累計到told1;told1=told1+m1*(10000/n的百位*100);(這里用10000代替圖3所示的實施例里面的1000,達到一條話務占用的時間放大10倍的目的)10、計算本次發(fā)送n的十位對應的“發(fā)送時長”t2=tnow-told2;11、計算本次發(fā)送n的十位對應的話務量m2=t2/(1000/n的十位*10);12、發(fā)起并完成m2次呼叫;13、計算本次發(fā)送n的十位耗費的時長,并累計到told2;
told2=told2+m2*(1000/n的十位*10);14、計算本次發(fā)送n的個位對應的“發(fā)送時長”t3=tnow-told3;15、計算本次發(fā)送n的個位對應的話務量m3=t3/(1000/n的個位);16、發(fā)起并完成m3次呼叫;17、計算本次發(fā)送n的個位耗費的時長,并累計到told3,told3=told3+m3*(1000/n的個位);18、返回第4步。
權利要求
1.在模擬大話務量測試中控制話務量的方法,包括以下步驟1.1預設每秒的話務量;1.2獲取開始時操作系統(tǒng)的時間,作為第一次發(fā)送的時間;1.3設置定時器的觸發(fā)間隔;1.4定時器觸發(fā)后,獲取系統(tǒng)的當前時間,計算本次發(fā)送的時長;1.5根據(jù)預設的話務量和本次發(fā)送的時長,計算在本次定時器觸發(fā)應產生的話務量,并進行發(fā)送;1.6發(fā)送完畢后,根據(jù)實際發(fā)送條數(shù)計算本次發(fā)送的話務量占用的發(fā)送時間,累加到累計發(fā)送時間上作為下一次發(fā)送的開始時間;等待下一次觸發(fā)。
2.權利要求1所述的在模擬大話務量測試中控制話務量的方法,其特征在于,將話務量分解成百位、十位和個位的話務量分別處理。
3.權利要求2所述的在模擬大話務量測試中控制話務量的方法,其特征在于,對百位的話務量進行處理的方法為,先計算本次發(fā)送的百位對應的時長,再計算本次發(fā)送的百位對應的話務量,然后發(fā)起呼叫,呼叫完畢后,計算本次發(fā)送百位結束時間,并累加到百位累計發(fā)送時間,作為下一次發(fā)送的開始時間。
4.權利要求3所述的在模擬大話務量測試中控制話務量的方法,其特征在于,在計算百位的話務量時,把一條話務占用的時間放大10倍,同時把本次發(fā)送時長也放大10倍。
5.權利要求2所述的在模擬大話務量測試中控制話務量的方法,其特征在于,對十位的話務量進行處理的方法為,先計算本次發(fā)送的十位對應的時長,再計算本次發(fā)送的十位對應的話務量,然后發(fā)起呼叫,呼叫完畢后,計算本次發(fā)送十位結束時間,并累加到十位累計發(fā)送時間,作為下一次發(fā)送的開始時間。
6.權利要求2所述的在模擬大話務量測試中控制話務量的方法,其特征在于,對個位的話務量進行處理的方法為,先計算本次發(fā)送的個位對應的時長,再計算本次發(fā)送的個位對應的話務量,然后發(fā)起呼叫,呼叫完畢后,計算本次發(fā)送個位結束時間,并累加到個位累計發(fā)送時間,作為下一次發(fā)送的開始時間。
全文摘要
在模擬大話務量測試中控制話務量的方法預設每秒的話務量;獲取開始時操作系統(tǒng)的時間,作為第一次發(fā)送的時間;設置定時器的觸發(fā)間隔;定時器觸發(fā)后,獲取系統(tǒng)的當前時間,計算本次發(fā)送的時長;根據(jù)預設的話務量和本次發(fā)送的時長,計算在本次定時器觸發(fā)應產生的話務量,并進行發(fā)送;發(fā)送完畢后,根據(jù)實際發(fā)送條數(shù)計算本次發(fā)送的話務量占用的發(fā)送時間,累加到累計發(fā)送時間上作為下一次發(fā)送的開始時間;等待下一次觸發(fā)。將話務量分解成百位、十位和個位的話務量分別處理。本發(fā)明能夠有效的避免因計算精度而產生的“時間損失”。把話務量盡可能均勻的分布在每一段發(fā)送時間。
文檔編號H04M3/36GK1770797SQ20041006564
公開日2006年5月10日 申請日期2004年11月4日 優(yōu)先權日2004年11月4日
發(fā)明者張勇, 孔韜 申請人:中興通訊股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
隆昌县| 海口市| 高陵县| 高台县| 深圳市| 二手房| 佛坪县| 都兰县| 高要市| 库尔勒市| 浦县| 安阳县| 肇东市| 垣曲县| 关岭| 嘉峪关市| 望谟县| 嘉荫县| 榆林市| 怀仁县| 南澳县| 海晏县| 南川市| 兰州市| 漾濞| 合江县| 衡东县| 浑源县| 冀州市| 泰州市| 许昌市| 高碑店市| 贵港市| 佛坪县| 交口县| 六安市| 惠州市| 徐州市| 伽师县| 芦山县| 双桥区|