導航:首頁 > 源碼編譯 > 光網路路由演算法Java模擬

光網路路由演算法Java模擬

發布時間:2023-08-29 09:54:05

Ⅰ 請教用c++/c 或者matlab模擬路由基本原理

如果你是做網路模擬的話,我倒不建議使用單純的c++/c或者matlab,而是有專門針對網路模擬的軟體。

1 網路模擬環境 NS-2模擬軟體:
NS-2全稱是Network Simulator Version 2。它是面向對象的,離散事件驅動的網路環境模擬器,主要用於解決網路研究方面的問題。NS-2提供在無線或有線網路上,TCP、路由、多播等多種協議的模擬。
NS-2最早來源與1989年的Real Network Simulator項目,經過多年的發展之後,於1995年得到施樂公司(Xerox)的支持,加入VINT項目。NS一直以來都在吸收全世界各地研究者的成果,包括UCB、CMU等大學和SUN等公司的無線網路方面的代碼。
NS-2由兩種編程語言,OTCL(具有面向對象特性的TCL腳本程序設計語言)和C++實現。之所以使用兩種編程語言,是因為模擬器有兩方面的事情需要做。一方面,具體協議的模擬和實現,需要一種程序設計語言,能夠高效率的處理位元組(Byte),報頭(Packet Header)等信息,能夠應用合適的演算法在大量的數據集合上進行操作。為了實現這個任務,程序內部模塊的運行速度(run-time speed)是非常重要的,而運行模擬環境的時間、尋找和修復bug的時間,重新編譯和運行的時間(run-around time)不是很重要。這種情況下,C++語言是非常合適的。

2 Boson NetSim
Boson NetSim是Boson公司推出了一款Cisco路由器、交換機模擬程序。它的出現給那些正在准備CCNA、CCNP考試卻苦於沒有實驗設備、實驗環境的備考者提供了實踐練習的有力環境。

3 路由模擬模擬軟體RouteSim
RouteSim是在研究國外同類軟體的基礎上開發的中文路由模擬軟體,特點是界面直觀、操作簡單、幫助功能強、容易上手。適合初學者或在校生網路互聯課程的實驗教學。相信考網工的朋友和CCNP,CCNA的朋友都知道這個軟體。
http://www.ankty.com/soft/2/48/248/4647.html

就這么多了,還有一些模擬軟體我就不說了,上手比較困難。

Ⅱ 路由演算法

路由演算法是網路層軟體的一部分。子網提供數據報服務,每個包都要做路由選擇;子網提供虛電路服務,只需在建立連接時做一次路由選擇

正確性,簡單性,健壯性(魯棒性,網路出現意外情況時候的解決問題的能力。例如突然某個路由器停電了,使得周邊的路由器都沒法正常工作,如果出現這樣的問題說明路由器的健壯性不夠),穩定性(常規使用是否穩定,數據量增多的時候能否正常工作),公平性(網路資源的使用是否公平,避免有些節點出現特別繁忙的狀態,而有些節點總是處於很閑的狀態),最優性

• 按轉發方式和數據副本數量劃分
1.全路路由(廣播路由)演算法:如洪泛演算法,按照所有路徑廣播轉發(中間轉發節點以及目標節點都會送到很多重復數據。不需要路由表和路由控制功能)
2.多路路由演算法:向所有接近目的節點的路徑轉發(中間轉發節點以及目標節點都會送到很多重復數據。)
3.單路路由演算法:如距離矢量演算法,向目的節點沿著唯一的路徑轉發(中間的轉發節點只轉發一份數據即可)

• 按健壯性和簡單性劃分
1.非自適應演算法(靜態路由演算法):不能根據網路流量和拓撲結構的變化更新路由表,使用靜態路由表。需要人為的更改和設定。特點是簡單、開銷小、靈活性差。典型演算法為基於流量的路由演算法等
2.自適應演算法(動態路由演算法):可根據網路流量(網路承載的數據量)和拓撲結構的變化更新路由表。特點是開銷大、健壯性和靈活性好。典型演算法為距離向量路由演算法、鏈路狀態路由演算法等

☆可以靜態路由和動態路由結合起來使用,此時靜態路由的優先順序別較高

測量(獲取)有關路由選擇的網路度量參數(選擇最優,比如是要求傳播距離最短,還是要求傳輸時延短等)。如何測量?選取哪些網路參數?
將路由信息傳送到適當的網路節點。傳送給誰?如何傳送?傳送什麼信息?
計算和更新路由表。更新路由表的演算法
根據新路由表執行分組的轉發

如果路由器J在路由器I到K的最優路由上,那麼從J到K的最優路由一定落在同一路由上

從所有的源節點到一個給定的目的節點的最優路由的集合形成了一個以目的節點為根的樹,稱為匯集樹;路由演算法的目的是找出並使用匯集樹

基本思想:構建子網的拓撲圖,圖中的每個節點代表一個路由器,每條弧代表一條通信線路。為了選擇兩個路由器間的路由,演算法需要在圖中找出節點間的最短路徑

節點數量;地理距離;傳輸延遲;距離、信道帶寬等參數的加權函數

網路規模增大帶來的問題:路由器中的路由表增大;路由器為選擇路由而佔用的內存、CPU時間和網路帶寬增大
分層路由:分而治之的思想;根據需要,將路由器分成區域、聚類、區和組;Fig.6-6,路由表由17項減為7項
分層路由帶來的問題:路由表中的路由不一定是最優路由

☆分層路由功能大部分時候性能是比較好的,可以選擇最優路徑,但是有時也會選擇到非最優路徑。比如上圖中如果想從1A到5C,應該是1A→1B→2A→2B→2D→5C是比較優的選擇,但是按照1A的分層路由表顯示,從區域1到區域5出口線路為1C,因此選擇的路線為1A→1C→3B→4A→5A→5B→5C,這時就相對繞遠了

DVR - Distance Vector Routing
動態路由演算法,也稱Bellman - Ford路由演算法或Ford - Fulkerson演算法,最初用於ARPANET(Internet的前身),被RIP協議所採用

每個路由器維護一張路由表,表中給出了到每個目的地的已知最佳距離和線路,並通過與相鄰路由器交換距離信息來更新表;每隔一段時間,路由器向所有鄰居節點發送它到每個目的節點的距離表,同時它也接收每個鄰居節點發來的距離表;鄰居節點X發來的表中,X到路由器I的距離為Xi,本路由器到X的距離為m,則路由器經過X到i的距離為Xi + m。根據不同鄰居發來的信息,計算Xi + m,並取最小值,更新本路由器的路由表

圖1:
此時路由A把它的路由表發給路由B,B會綜合從A得來的路由表來更新自己的矢量表↓
根據初始A矢量表和B矢量表得知B到A為6,B到C為1,B到D沒有;兩個表都有到E的距離,直接從B到E為8;如果B經由A再到E就要計算A到B的距離加上A到E的距離即可,即6+1=7

圖2:
B把路由表發給C之後↓
從C的初始矢量表可得知C到B為1,C到D為2,C無法直接到A,但是通過B的路由表得知B到A為6,再加上C到B的距離1,得出C到A距離為7,同理可得到E距離為7+1=8

圖3:
C把路由表發給D之後↓

圖4:
D把路由表發給E之後↓

J的相鄰節點為4個,分別為A,I,H,K,因此可以選擇的路線也為4種
現在要求J的最新路由表。以J到E為例,J到A為8,A到E為14,和為22;J到I為10,I到E為7,和為17;J到H為12,H到E為30,和為42;J到K為6,K到E為22,和為28。從而得出,經由I的時候得到的和17最小,因此在新生成的J到E的位置記錄17

無限計算問題:對好消息反應迅速,對壞消息反應遲鈍

比如從E到A,E剛開始連通的時候是不知道如何才能到A的,只有通過B與A交互,C與B交互這樣最終E通過與D交互才知道如何能到A,這就是好消息。可能需要花些時間,但是結果都是無論目的節點是哪裡總會找到路徑

壞消息例子:A,B,C之間通信。B到A的距離為1(A,1),C到A的距離為2(B(經B),2)。各個節點都會有一個刷新周期,到了這個周期的時候每個節點會把自己的路由信息發給其相鄰節點。例如A路由斷開連接,這個時候B到A的線路斷開。也就是B到A的距離為無窮大了(A,∞)。如果在B把這個信息反饋給C之前,C先把路由信息告訴B了,那麼B收到的信息就為(C,3)。因為A已經不存在,而B從C處得知通過C有路徑可以到達A,這時B的路由表就變成(C,3),同樣的這時B再告訴C,C就會變成(B,4),就會這樣無窮計算下去。如果一開始是B先把信息發給C就不會發生這樣的問題

• 觸發式更新:節點不等到刷新周期的到來,只要有突發情況馬上就會把情況通知相鄰路由
• 水平分割:因為一開始C是從B得知經過B可以到達A的,所以用了這種方法之後,C就不會再向B發送如何到A,而只等著B給C發如何到A了。這樣就不會有無窮計算問題
• 定義一個最大值:壞消息例子當中,括弧里後面的數會一直循環增長下去,如果把這個數字設置一個最大值,那麼當循環到這個最大值的時候雙方就不會再就怎麼到A的信息進行交互了,就不會發生無窮計算的情況
• 掛起計數器:壞消息例子當中,B收到了C的路由最新信息(C,3)的時候這個不會馬上生效刷新,(A,∞)會保留兩個周期,在這兩個周期裡面,B肯定有機會給C發送(A,∞),
而因為C沒有通往A的路徑,所以當C到刷新周期的時候給B發的就為(B,∞)。B前後收到的信息不一致,但是第二次收到的信息和B發給C的信息是一致的,所以B就會認為第一次收到的(C,3)是無效的。但是如果C真的有了一條通往A的線路,這時兩次發的信息一定是一致的,那麼B就會相信C的信息,從而把(A,∞)刷新成C給B的信息

❉距離向量路由演算法只適用於小規模網路,每個節點不清楚整個網路的拓撲結構

發現鄰居節點,並學習它們的網路地址,測量到每個鄰居節點的延遲或開銷,將所有學習到的內容封裝成一個鏈路狀態包(包以發送方的標識符開頭,後面是序號、年齡和一個鄰居節點列表;鏈路狀態包定期創建或發生重大事件時創建)。將鏈路狀態包廣播發送給所有其他路由器【洪泛方式:狀態包包含一個序號,每次發送新包時加1。路由器記錄信息對(源路由器,序號),當一個鏈路狀態包到達時,若是新的則分發,若是重復的則丟棄,若序號比路由記錄中的最大序號小則認為過時而丟棄】。計算到每個其他路由器的最短路徑

☆鏈路狀態路由演算法適用於大規模網路。每個節點都會了解其他節點的局部拓撲,因此就會了解整個網路的拓撲結構,這時當前節點就能找到到目的節點的最優路由

• 使用32位序號。
因為序號是循環使用的,如果位數很少,比如只是1~7,那麼7不一定比1大,1有可能是下一輪的第一個數。而32位的時候因為數字特別龐大,不會出現這樣問題
• 增加年齡域,每秒鍾年齡減1,為零則丟棄
比如A發給B (C,4),由於差錯,本來是(C,5)的下一個包,變成了(C,1000)。這之後來的(C,6),(C,7)。。。都沒有(C,1000)大,因此包會被丟棄。但其實後面到的包都是新的。為了避免這樣的問題發生,(C,1000)里的1000就會在每一秒減1,直到年齡比新到的包小,接下來就可以正常接包了。不過這之前到的包都會被丟棄,這也是沒有辦法的事
• 鏈路狀態包到達後,延遲一段時間,並與其它已到達的來自同一路由器的鏈路狀態包比較序號,丟棄重復包,保留新包
• 鏈路狀態包需要應答
為了保證數據傳輸的可靠性

Ⅲ 用java實現des演算法

分類: 電腦/網路 >> 程序設計 >> 其並運他編程語言
問題描述:

各位好,請求各位java學習者幫助釘解決這個問題。

我想用des演算法對我的名字進行加密

我也在網上下載了des演算法,包括FileDES,SubKey,Des各程序,

可能沒真正理解這些程序,所以我想調用都鍵讓不知道將這些東西

組合起來,有知道的請幫幫忙啊!

解析:

package des;

import java.io.*;

import java.nio.*;

import java.nio.channels.FileChannel;

public class FileDES{

private static final boolean enc=true; 加密

private static final boolean dec=false; 解密

private String srcFileName;

private String destFileName;

private String inKey;

private boolean actionType;

private File srcFile;

private File destFile;

private Des des;

private void *** yzePath(){

String dirName;

int pos=srcFileNamestIndexOf("/稿蔽局");

dirName=srcFileName.substring(0,pos);

File dir=new File(dirName);

if (!dir.exists()){

System.err.println(dirName+" is not exist");

System.exit(1);

}else if(!dir.isDirectory()){

System.err.println(dirName+" is not a directory");

System.exit(1);

}

pos=destFileNamestIndexOf("/");

dirName=destFileName.substring(0,pos);

dir=new File(dirName);

if (!dir.exists()){

if(!dir.mkdirs()){

System.out.println ("can not creat directory:"+dirName);

System.exit(1);

}

}else if(!dir.isDirectory()){

System.err.println(dirName+" is not a directory");

System.exit(1);

}

}

private static int replenish(FileChannel channel,ByteBuffer buf) throws IOException{

long byteLeft=channel.size()-channel.position();

if(byteLeft==0L)

return -1;

buf.position(0);

buf.limit(buf.position()+(byteLeft<8 ? (int)byteLeft :8));

return channel.read(buf);

}

private void file_operate(boolean flag){

des=new Des(inKey);

FileOutputStream outputFile=null;

try {

outputFile=new FileOutputStream(srcFile,true);

}catch (java.io.FileNotFoundException e) {

e.printStackTrace(System.err);

}

FileChannel outChannel=outputFile.getChannel();

try{

if(outChannel.size()%2!=0){

ByteBuffer bufTemp=ByteBuffer.allocate(1);

bufTemp.put((byte)32);

bufTemp.flip();

outChannel.position(outChannel.size());

outChannel.write(bufTemp);

bufTemp.clear();

}

}catch(Exception ex){

ex.printStackTrace(System.err);

System.exit(1);

}

FileInputStream inFile=null;

try{

inFile=new FileInputStream(srcFile);

}catch(java.io.FileNotFoundException e){

e.printStackTrace(System.err);

System.exit(1);

}

outputFile=null;

try {

outputFile=new FileOutputStream(destFile,true);

}catch (java.io.FileNotFoundException e) {

e.printStackTrace(System.err);

}

FileChannel inChannel=inFile.getChannel();

outChannel=outputFile.getChannel();

ByteBuffer inBuf=ByteBuffer.allocate(8);

ByteBuffer outBuf=ByteBuffer.allocate(8);

try{

String srcStr;

String destStr;

while(true){

if (replenish(inChannel,inBuf)==-1) break;

srcStr=((ByteBuffer)(inBuf.flip())).asCharBuffer().toString();

inBuf.clear();

if (flag)

destStr=des.enc(srcStr,srcStr.length());

else

destStr=des.dec(srcStr,srcStr.length());

outBuf.clear();

if (destStr.length()==4){

for (int i = 0; i<4; i++) {

outBuf.putChar(destStr.charAt(i));

}

outBuf.flip();

}else{

outBuf.position(0);

outBuf.limit(2*destStr.length());

for (int i = 0; i<destStr.length(); i++) {

outBuf.putChar(destStr.charAt(i));

}

outBuf.flip();

}

try {

outChannel.write(outBuf);

outBuf.clear();

}catch (java.io.IOException ex) {

ex.printStackTrace(System.err);

}

}

System.out.println (inChannel.size());

System.out.println (outChannel.size());

System.out.println ("EoF reached.");

inFile.close();

outputFile.close();

}catch(java.io.IOException e){

e.printStackTrace(System.err);

System.exit(1);

}

}

public FileDES(String srcFileName,String destFileName,String inKey,boolean actionType){

this.srcFileName=srcFileName;

this.destFileName=destFileName;

this.actionType=actionType;

*** yzePath();

srcFile=new File(srcFileName);

destFile=new File(destFileName);

this.inKey=inKey;

if (actionType==enc)

file_operate(enc);

else

file_operate(dec);

}

public static void main(String[] args){

String file1=System.getProperty("user.dir")+"/111.doc";

String file2=System.getProperty("user.dir")+"/222.doc";

String file3=System.getProperty("user.dir")+"/333.doc";

String passWord="1234ABCD";

FileDES fileDes=new FileDES(file1,file2,passWord,true);

FileDES fileDes1=new FileDES(file2,file3,passWord,false);

}

Ⅳ 路由演算法的類型有

靜態路由演算法

1.Dijkstra演算法(最短路徑演算法)

Dijkstra(迪傑斯特拉)演算法是典型的單源最短路徑演算法,用於計算一個節點到其他所有節點的最短路徑。主要特點是以起始點為中心向外層層擴展,直到擴展到終點為止。Dijkstra演算法是很有代表性的最短路徑演算法,在很多專業課程中都作為基本內容有詳細的介紹,如數據結構,圖論,運籌學等等。Dijkstra一般的表述通常有兩種方式,一種用永久和臨時標號方式,一種是用OPEN,CLOSE表的方式,這里均採用永久和臨時標號的方式。注意該演算法要求圖中不存在負權迴路。

Dijkstra演算法執行步驟如下:

步驟一:路由器建立一張網路圖,並且確定源節點和目的節點,在這個例子里我們設為V1和V2。然後路由器建立一個矩陣,稱為「鄰接矩陣」。在這個矩陣中,各矩陣元素表示權值。例如,[i,j]是節點Vi與Vj之間的鏈路權值。如果節點Vi與Vj之間沒有鏈路直接相連,它們的權值設為「無窮大」。

步驟二:路由器為網路中的每一個節點建立一組狀態記錄。此記錄包括三個欄位:

前序欄位———表示當前節點之前的節點。

長度欄位———表示從源節點到當前節點的權值之和。

標號欄位———表示節點的狀態。每個節點都處於一個狀態模式:「永久」或「暫時」。

步驟三:路由器初始化(所有節點的)狀態記錄集參數,將它們的長度設為「無窮大」,標號設為「暫時」。

步驟四:路由器設置一個T節點。例如,如果設V1是源T節點,路由器將V1的標號更改為「永久」。當一個標號更改為「永久」後,它將不再改變。一個T節點僅僅是一個代理而已。

步驟五:路由器更新與源T節點直接相連的所有暫時性節點的狀態記錄集。

步驟六:路由器在所有的暫時性節點中選擇距離V1的權值最低的節點。這個節點將是新的T節點。

步驟七:如果這個節點不是V2(目的節點),路由器則返回到步驟5。

步驟八:如果節點是V2,路由器則向前回溯,將它的前序節點從狀態記錄集中提取出來,如此循環,直到提取到V1為止。這個節點列表便是從V1到V2的最佳路由。

2.擴散法

事先不需要任何網路信息;路由器把收到的每一個分組,向除了該分組到來的線路外的所有輸出線路發送。將來會有多個分組的副本到達目的地端,最先到達的,可能是走了「最優」的路徑常見的擴散法是選擇性擴散演算法。

3.LS演算法

採用LS演算法時,每個路由器必須遵循以下步驟:

步驟一:確認在物理上與之相連的路由器並獲得它們的IP地址。當一個路由器開始工作後,它首先向整個網路發送一個「HELLO」分組數據包。每個接收到數據包的路由器都將返回一條消息,其中包含它自身的IP地址。

步驟二:測量相鄰路由器的延時(或者其他重要的網路參數,比如平均流量)。為做到這一點,路由器向整個網路發送響應分組數據包。每個接收到數據包的路由器返回一個應答分組數據包。將路程往返時間除以2,路由器便可以計算出延時。(路程往返時間是網路當前延遲的量度,通過一個分組數據包從遠程主機返回的時間來測量。)該時間包括了傳輸和處理兩部分的時間——也就是將分組數據包發送到目的地的時間以及接收方處理分組數據包和應答的時間。

步驟三:向網路中的其他路由器廣播自己的信息,同時也接收其他路由器的信息。

在這一步中,所有的路由器共享它們的知識並且將自身的信息廣播給其他每一個路由器。這樣,每一個路由器都能夠知道網路的結構以及狀態。

步驟四:使用一個合適的演算法,確定網路中兩個節點之間的最佳路由。

Ⅳ 關於各種排列組合java演算法實現方法

一 利用二進制狀態法求排列組合 此種方法比較容易懂 但是運行喊隱頌效率不高 小數據排列組合可以使用

復制代碼 代碼如下: import java util Arrays;

//利用二進制演算法進行全排列 //count : //count :

public class test { public static void main(String[] args) { long start=System currentTimeMillis(); count (); long end=System currentTimeMillis(); System out println(end start); } private static void count (){ int[] num=new int []{ }; for(int i= ;i<Math pow( );i++){ String str=Integer toString(i ); int sz=str length(); for(int j= ;j< sz;j++){ str=" "+str; } char[] temp=str toCharArray(); Arrays sort(temp); String gl=new String(temp); if(!gl equals(" ")){ continue; } String result=""; for(int m= ;m<str length();m++){ result+=num[Integer parseInt(str charAt(m)+"")]; } System out println(result); } } public static void count (){ int[] num=new int []{ }; int[] ss=new int []{ }; int[] temp=new int[ ]; while(temp[ ]< ){ temp[temp length ]++; for(int i=temp length ;i> ;i ){ if(temp[i]== ){ temp[i]= ; temp[i ]++; } } int []tt=temp clone(); Arrays sort(tt); if(!Arrays equals(tt ss)){ continue; } String result=""; for(int i= ;i<num length;i++){ result+=num[temp[i]]; } System out println(result); } } }

二 用遞歸的思想攜慧來求排列跟組合 代碼量比較大

復制代碼 代碼如下鄭鄭: package practice;

import java util ArrayList; import java util List;

public class Test {

/** * @param args */ public static void main(String[] args) { // TODO Auto generated method stub Object[] tmp={ }; // ArrayList<Object[]> rs=RandomC(tmp); ArrayList<Object[]> rs=cmn(tmp ); for(int i= ;i<rs size();i++) { // System out print(i+"="); for(int j= ;j<rs get(i) length;j++) { System out print(rs get(i)[j]+" "); } System out println(); } }

// 求一個數組的任意組合 static ArrayList<Object[]> RandomC(Object[] source) { ArrayList<Object[]> result=new ArrayList<Object[]>(); if(source length== ) { result add(source); } else { Object[] psource=new Object[source length ]; for(int i= ;i<psource length;i++) { psource[i]=source[i]; } result=RandomC(psource); int len=result size();//fn組合的長度 result add((new Object[]{source[source length ]})); for(int i= ;i<len;i++) { Object[] tmp=new Object[result get(i) length+ ]; for(int j= ;j<tmp length ;j++) { tmp[j]=result get(i)[j]; } tmp[tmp length ]=source[source length ]; result add(tmp); } } return result; } static ArrayList<Object[]> cmn(Object[] source int n) { ArrayList<Object[]> result=new ArrayList<Object[]>(); if(n== ) { for(int i= ;i<source length;i++) { result add(new Object[]{source[i]}); } } else if(source length==n) { result add(source); } else { Object[] psource=new Object[source length ]; for(int i= ;i<psource length;i++) { psource[i]=source[i]; } result=cmn(psource n); ArrayList<Object[]> tmp=cmn(psource n ); for(int i= ;i<tmp size();i++) { Object[] rs=new Object[n]; for(int j= ;j<n ;j++) { rs[j]=tmp get(i)[j]; } rs[n ]=source[source length ]; result add(rs); } } return result; }

}

三 利用動態規劃的思想求排列和組合

復制代碼 代碼如下: package Acm; //強大的求組合數 public class MainApp { public static void main(String[] args) { int[] num=new int[]{ }; String str=""; //求 個數的組合個數 // count( str num ); // 求 n個數的組合個數 count ( str num); }

private static void count (int i String str int[] num) { if(i==num length){ System out println(str); return; } count (i+ str num); count (i+ str+num[i]+" " num); }

private static void count(int i String str int[] num int n) { if(n== ){ System out println(str); return; } if(i==num length){ return; } count(i+ str+num[i]+" " num n ); count(i+ str num n); } }

下面是求排列

復制代碼 代碼如下: lishixin/Article/program/Java/JSP/201311/20148

Ⅵ 跪求好寫的畢業設計論文題目,計算機通信方面的。。。

無論如何,得有\如下內容啊.
1. 無線數據網路中基於斯塔克爾博格博弈的功率控制
2. 動能定理,機械能守恆定律應用
3. 寬頻網路中業務模型的模擬分析
4. 基於H.264 AVC碼率控制演算法的研究
5. 基於GRF-3100射頻系統的混頻器的設計與製作
6. VOIP語音通信系統的設計與應用
7. 基於Labview的實驗數據處理的研究
8. 基於NS2的路由演算法研究與模擬
9. 圖像處理工具箱的VC實現
10. 嵌入式實時系統設計模式的應用
11. 基於VC的UDP的實現
12. 基於TCP/IP協議嵌入式數字語音傳輸系統終端硬體設計
13. 基於MPLS的VPN技術原理及其實現
14. 基於FPGA的步進電機控制系統的數字硬體設計研究
15. 多路信號復用的基帶發信系統模型
16. 數字音頻水印研究
17. 數字電視傳輸系統-城市數字電視平移
18. 虛擬演播室應用研究與設計
19. 電視節目製作系統設計
20. KM3知識管理系統解決方案
21. 移動通信系統的頻率分配演算法設計
22. 通信系統的抗干擾技術
23. 擴頻通信系統抗干擾分析
24. 基於OPNET的網路規劃設計
25. 基於NS2的路由演算法模擬
26. 基於GPRS的數據採集與傳輸系統設計
27. 攪拌混合器微分先行控制系統設計
28. 車輛牌照自動識別系統
29. 基於CPLD器件的數字頻率計的設計
30. 大容量漢字顯示系統的設計
31. 數控直流電壓源的設計
32. 基於s6700電子標簽閱讀器設計
33. 嵌入式網路連接設計
34. Java手機網路游戲的實現和程序設計
35. 簡頻率特性測試儀設計
36. DDS及其在聲學多普勒流速測量系統中的應用
37. AVR 8位嵌入式單片機在車載全球定位系統顯示終端中的應用
38. 基於單片機的考勤系統設計
39. 基於單片機的尋呼機編碼器
40. 基於MF RC632射頻識別讀寫器晶元的專用讀卡器
41. 具有SPI介面的數字式同步發送器設計
42. 小區停車場計費系統設計
43. 村村通無線接入系統中的CDMA技術
44. 語音校檢報文的程序設計
45. 基於軋制擾動負荷觀測器的軋機傳動機電振動控制系統設計
46. 基於MATLAB的數字濾波器的設計
47. 基於VHDL的乒乓游戲機的設計
48. 語音信號的濾波設計
49. 基於DSPTMS320F206的高爐自動進料控制系統
50. 基於VHDL語言的基帶線路碼產生電路模擬設計
51. 智能天線的研究
52. 混合動力汽車電機驅動單元
53. 混合動力汽車
54. 直流電機雙閉環調速系統設計
55. 雙饋電機直接轉矩DSP控制
56. 雙饋電機直接轉矩控制
57. 無刷直流電機調速系統
58. 非同步電機直接轉矩控制
59. 人臉識別系統的研究與實現
60. 鎖相頻率合成器的設計與模擬
61. 動態鏈接庫進階
62. 電話業務綜合管理系統設計
63. 彈性分組環RPR的公平演算法研究
64. 低軌衛星移動通信信道模型研究
65. 大數計算的演算法探討及其在橢圓曲線密碼體制中的應用
66. HY防火牆管理軟體開發過程及ACL模塊功能實現
67. EPON的原理分析
68. DCS通訊與軟測量技術的研究
69. 3G的AKA協議中F1至F5的UE端的實現
70. 《信號與系統》課件的設計與實現
71. 《電路與電子學》電子課件的設計與製作
72. RSA公鑰演算法研究與實現
73. p2p通信模型的java實現
74. 搜索引擎的開發與實現
75. 圖書館管理系統及原代碼畢業設計
76. 網路安全專題學習網站設計
77. 網路教育應用網站設計
78. 校園網組建、開發與管理
79. 最優化軟體設計實現
80. 租賃網的設計和實現
81. 遠程式控制制終端數據介面設計
82. 遺傳演算法及其在網路計劃中的應用
83. 研華PCI-1753板卡Linux驅動程序的開發
84. 軟測量技術在造紙打漿過程的應用研究
85. 嵌入式系統研製AD數模轉換器
86. 勞動生產率增長條件的研究
87. 基於XML幫助系統的設計與實現
88. 基於MPT-1327的集群系統智能基站的研究與設計
89. 基於J2ME的手機部分功能實現
90. 購銷存財務軟體的應用比較
91. 高清視頻多媒體播放器
92. 基於CORBA網路管理技術及其安全性的研究和應用
93. 基本asp.net開發的網上商場的設計與實現
94. 桂林大廣電子公司網站設計
95. 電信客戶關系管理系統的分析與實現
96. 企業辦公區域網的建設
97. 第三代移動通信承載業務和QoS處理機制無線資源管
98. 計算機病毒動態防禦系統畢業論文
99. 3G標准化進程及其演進策略
100. 魯棒數字水印演算法的研究和比較
101. 基於SPCE061A的語音遙控小車設計——?硬體電路設計

閱讀全文

與光網路路由演算法Java模擬相關的資料

熱點內容
路由器多種加密方法 瀏覽:604
程序員阻止電腦自動彈出定位 瀏覽:166
如何做伺服器服務商 瀏覽:759
su剖切命令 瀏覽:726
devc編譯背景 瀏覽:209
學習單片機的意義 瀏覽:49
音頻演算法AEC 瀏覽:911
加密貨幣容易被盜 瀏覽:82
蘋果平板如何開啟隱私單個app 瀏覽:704
空調壓縮機一開就停止 瀏覽:528
如何下載虎牙app 瀏覽:847
日語年號的演算法 瀏覽:955
dev裡面的編譯日誌咋調出來 瀏覽:298
php函數引用返回 瀏覽:816
文件夾和文件夾的創建 瀏覽:259
香港加密貨幣牌照 瀏覽:838
程序員鼓勵自己的代碼 瀏覽:393
計算機網路原理pdf 瀏覽:752
吃雞國際體驗服為什麼伺服器繁忙 瀏覽:94
php中sleep 瀏覽:491