基於ndnSIM實現一發多收

2021-10-08 13:04:26 字數 1178 閱讀 7668

直接進入正題,想要實現一發多收,就是要在路由進行廣播時**的興趣包與接收到資料報的數目相等,即for_num==rec_num;但正常情況下,路由在第一次接收到資料報時就會把pit條目刪除,所以接下來的目的是在接收到資料報對刪除pit的命令進行修改。

先進入到ndnsim源目錄下

然後進入pit-entry.cpp/.hpp所在目錄,對這兩個檔案進行修改。

cd nfd/daemon/table/
先對hpp進行修改,新增for_num和rec_num兩個變數

然後新增獲取引數的函式與對變數操作的函式

int 

get_recnum()

int

get_fornum()

void

afterrec_inter()

void

afterrec_data()

接下進行引數的初始化定義,在cpp中實現

進入forwarder.cpp所在資料夾

cd nfd

/daemon/fw

修改onoutgoinginterest()函式

在同乙個目錄下開啟strategy.cpp檔案,對senddata()函式進行修改

執行乙個具有多個生產者的路由拓撲,檢視路由接收的資料報數量,即可確認是否實現一發多收。

有上圖可以得出接收的是傳送的兩倍,實現一發多收。

開博第一發

終於鼓起勇氣來開了個人部落格,之前也知道有這個東西,一直不想弄它,個人有些懶散,估計以當時的個想法跟狀態開了部落格只能是寫些文學性質的文章。不會有關於技術的東西出現。現在面臨找工作了,再不專心學學技術說不過去。大學看了不少雜書,個人想法蠻多的,技術卻基本沒有怎麼學過,寫下這篇部落格乙個是給以後的部落...

字典樹入門爽一發

trie樹,即字典樹,又稱單詞查詢樹或鍵樹,是一種樹形結構,是一種雜湊樹的變種。典型應用是用於統計和排序大量的字串 但不僅限於字串 所以經常被搜尋引擎系統用於文字詞頻統計。它的優點是 最大限度地減少無謂的字串比較,查詢效率比雜湊表高。trie的核心思想是空間換時間。利用字串的公共字首來降低查詢時間的...

資料結構 第一發

有改進和優化的地方,希望大家幫助指出。1.1 兩個集合的並 include include using namespace std vector union1 vector a,vector b int main cin.clear while cin a c union1 a,b for int ...