擴散法及其改進

擴散法是一種靜態路由算法,每一個輸入的分組都被從除輸入線路之外的所有其它線路上轉發出去.擴散法顯然會產生大量的分組副本,因此必須有一些辦法來抑制無限的轉發.
1.一種辦法是在分組頭中攜帶一個跳數計數器,分組每到一個節點其跳數計數器就減1,當計數器為0時分組被丟棄.計數器的初始值可以設為通信子網的直徑,即相距最遠的兩個節點之間的跳數.
2.另一種辦法是記住哪些分組已經轉發過了,從而確保一個分組不會被同一個節點轉發兩次.這要求源路由器從主機收到一個分組后,將一個序號放入分組頭中,同時每一個路由器對于每一個源路由器都要維護一張序號表,記錄從每一個源路由器上已經收到的分組的序號.每當一個路由器收到來自某個源路由器的分組時,就用分組的序號去查找該源路由器的序號表,如果序號已在表中則該分組被丟棄.為了防止序號表過大,序號表中還應增設一個計數器k,表示序號直至k的分組都已經轉發過了,從而不需要保留序號小于k的序號.

盡管擴散法在很多應用中都不實用,但它確實也有一些適用的地方.比如由于擴散法的魯棒性(robustness)很好,它在戰場的軍事網絡中特別有用;其次擴散法在本質上是一種廣播式的路由算法,因此在一些要求廣播傳輸的應用中也很有用,如分布式數據庫的同步更新;在無線網絡中位于發送站功率范圍內的所有站都能收到發送站發送的消息,這其實也是一種擴散的形式,這個特性常被一些算法所利用;由于擴散法總能找到最短通路,因此其它路由算法都可以和擴散法進行比較,以衡量各自的算法性能.

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/453056.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/453056.shtml
英文地址,請注明出處:http://en.pswp.cn/news/453056.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

h5頁 點擊返回時關閉_在微信、支付寶、百度錢包實現點擊返回按鈕關閉當前頁面和窗口...

最近在使用微信、支付寶、百度錢包實現網頁支付,對支付成功將自動關閉頁面,對于支付失敗,將顯示錯誤信息。當在錯誤頁面的時候,點擊返回或者Android物理按鍵上一步的時候,將關閉頁面。在微信、支付寶、百度錢包中&…

串操作指令

串操作指令可以方便對一組連續的數據進行操作。串操作后自動根據DF標志位修改ESI和EDI,DF 0時,ESI,EDI遞增,DF 1時,ESI,EDI遞減。串操作指令有2組,1組實現數據串傳送,另1組實現數據…

IS-IS基本配置

實驗內容:現在網絡中有4臺路由器,用戶希望利用這4臺路由器通過IS-IS協議實現網絡互聯,并且因為R1和R2性能相對較低,所以還要使這兩臺路由器處理的數據信息相對較少。 網絡拓撲: 實驗分析: 根據題意可知R1和…

高并發高流量網站架構

Web2.0的興起,掀起了互聯網新一輪的網絡創業大潮。以用戶為導向的新網站建設概念,細分了網站功能和用戶群,不僅成功的造就了一大批新生的網站,也極大的方便了上網的人們。但Web2.0以用戶為導向的理念,使得新生的網站有…

多處理機的進程調度方式

一.自調度方式 二.成組調度方式 三.專用處理機分配方式

枚舉類型用法_Mybatis-plus常見用法總結三

前面已經介紹了Mybatis-plus基本用法,今天為大家分享一些Mybatis-plus高級應用邏輯刪除自動注入枚舉類型處理Sql注入器多租戶表結構CREATE TABLE sys_role ( id varchar(64) NOT NULL COMMENT 主鍵, code varchar(64) NOT NULL DEFAULT COMMENT 角色編碼, name …

NOIP 2011 Day2

tags: 貪心模擬NOIP categories:信息學競賽總結計算系數 Solution 根據二項式定理,\[ \begin{align} (ab)^n\sum_{k0}^nC_{n}^{k}a^kb^{n-k} \end{align} \] 那么\[ \begin{align}(axby)^k&\sum_{p0}^kC_{k}^p(ax)^p(by)^{k-p}\\ &\sum_{p0}^k(C_{k}^pa^pb^{k-p})x^py^…

VS Code的golang開發配置 之 代碼提示

之前用VS Code的時候,發現自己的代碼的提示一直不好,換用JetBrain的Goland的代碼提示是好了,但是比較占用資源。在網上找了一些資料,發現很多人也是遇到第三方或者自己的代碼無法提示的情況,但是都沒有下文了。后來發現…

使用oprofile分析性能瓶頸

使用oprofile分析性能瓶頸 1. 概述oprofile 是 Linux 平臺上,類似 INTEL VTune 的一個功能強大的性能分析工具。其支持兩種采樣(sampling)方式:基于事件的采樣(event based)和基于時間的采樣(time based)。基于事件的采樣是oprofile只記錄特定事件&#…

什么是死鎖

死鎖是多個進程在運行過程中因競爭資源時產生的一種僵局。 各并發資源彼此等待對方擁有的資源,且在得到對方資源前不釋放自己的資源。

python數據工程師 面試題_阿里P7工程師耗時兩天整理的292道python大廠面試題,內含解析!...

前言相對于python大家應該都不會陌生吧!現在java跟python可以算的是勢均力敵了,所以現在學習python 的小伙伴也是越來越多了,可是學完之后就能找到稱心如意的工作了嗎?很多小伙伴學習Python的時候感覺很簡單,但是到了去…

數組復制

在Java里面,可以用復制語句”AB”給基本類型的數據傳遞值,但是如果A,B是兩個同類型的數組,復制就相當于將一個數組變量的引用傳遞給另一個數組;如果一個數組發生改變,那么引用同一數組的變量也要發生改變。 1.使用FOR循環,將數組的每個元素復…

IntelliJ IDEA 對于generated source的處理

IntelliJ IDEA 對于generated source的處理 學習了:https://stackoverflow.com/questions/5170620/unable-to-use-intellij-with-a-generated-sources-folder 如果有generated source ,例如使用gRPC過程中生成的,可以使用鼠標右鍵點擊使之成為…

產生死鎖的原因

一 競爭資源,但是資源的數目不能滿足進程的需要。 二 進程間推進順序非法,進程在運行過程中請求和釋放資源的順序不當。

fabric shim安裝合約_hyperledger fabric 開發第一個智能合約

一、編寫智能合約代碼HelloWorld.go,go語言實現,代碼很簡單,每個合約包含兩個方法,Init、Invoke。package mainimport ("fmt""github.com/hyperledger/fabric/core/chaincode/shim""github.com/hyperled…

不能干一輩子開發???

程序員的職業生涯之我見 總是聽到下面的論調 程序員干不了一輩子! 程序員怎么也不能干一輩子吧! 在中國程序員還能干一輩子? 過了(30)40我就干不動程序員了! 每每聽…

分布式緩存的25個優秀實踐與線上案例 done

楊彪,螞蟻金服技術專家,《分布式服務架構:原理、設計與實戰》和《可伸縮服務架構:框架與中間件》作者。近10年互聯網和游戲行業工作經驗。本文節選自即將出版的《可伸縮服務架構:框架與中間件》一書,作者&a…

服務器性能估算參考(硬件-應用服務器)

2019獨角獸企業重金招聘Python工程師標準>>> Environment(2013-05-24) two identical machines via a GB-Ethernet link a client machine generating HTTP requests with wrk as the load generator a server machine running the respective “benchmarkee”all …

產生死鎖的四個必要條件

(1)互斥條件:進程對所分配到的資源不允許其他進程進行訪問,若其他進程訪問該資源,只能等待,直至占有該資源的進程使用完成后釋放該資源 (2)請求和保持條件:進程獲得一定的…

下拉選擇_在管理Excel中實現聯動下拉選擇

在系統中常常出現這樣的情況:由于下拉選擇的數量太多了,難以高效選擇。為此管理Excel通過通過引入多級聯動選擇的方式來減少下拉選擇的困難度。先看下使用效果:聯動下拉選擇這個功能,在管理Excel中可以通過比較簡單的配置方法實現…