目錄
一、路由器的整體結(jié)構(gòu)
二、輸入端口的功能
1. 三大模塊
2. 查找與轉(zhuǎn)發(fā)模塊
三、交換結(jié)構(gòu)
1. 經(jīng)內(nèi)存的交換結(jié)構(gòu)
2. 經(jīng)總線的交換結(jié)構(gòu)
3.?經(jīng)交換矩陣交換結(jié)構(gòu)
四、輸出端口的功能
五、排隊(duì)
1. 輸入端口排隊(duì)
2. 輸出端口排隊(duì)
一、路由器的整體結(jié)構(gòu)
路由器的兩個核心功能:
- 運(yùn)行路由協(xié)議或稱路由算法(OSPF/RIP/BGP)
- 將分組從路由器的輸入鏈路傳送到正確的輸出鏈路
路由器的體系結(jié)構(gòu):
根據(jù)路由器之間的通訊,路由處理器再運(yùn)行路由協(xié)議,計算得到路由表,進(jìn)而得到轉(zhuǎn)發(fā)表。
二、輸入端口的功能
1. 三大模塊
模塊名 | 功能 |
---|---|
線路端接 | 將一條物理鏈路端接到路由器的物理層 |
數(shù)據(jù)鏈路處理 | 實(shí)現(xiàn)路由器的數(shù)據(jù)鏈路層功能 |
查找與轉(zhuǎn)發(fā) | 實(shí)現(xiàn)查找與轉(zhuǎn)發(fā)功能,以便分組通過路由器的交換結(jié)構(gòu)轉(zhuǎn)發(fā)到適當(dāng)?shù)妮敵龆丝?/td> |
輸入端口示意圖
在物理層,將接收到的信號轉(zhuǎn)換為二進(jìn)制序列。在數(shù)據(jù)鏈路層,解析數(shù)據(jù)幀得到數(shù)據(jù)報,再解析數(shù)據(jù)報得到目的主機(jī)的 IP 地址。
2. 查找與轉(zhuǎn)發(fā)模塊
確定將一個到達(dá)的分組通過交換結(jié)構(gòu)轉(zhuǎn)發(fā)給哪個輸出端口。 通過查找轉(zhuǎn)發(fā)表實(shí)現(xiàn),這里的轉(zhuǎn)發(fā)表是存儲在輸入端口的內(nèi)存中。
如果不為每個輸入端口設(shè)置內(nèi)存存儲轉(zhuǎn)發(fā)表,則每個端口都需要查詢路由器處理器內(nèi)存中的轉(zhuǎn)發(fā)表,從而形成瓶頸。
分布式交換:
- 選路處理器計算轉(zhuǎn)發(fā)表,給每個輸入端口存放一份轉(zhuǎn)發(fā)表拷貝。
- 在每個輸入端口本地做出交換決策,無須激活中央選路處理器。
- 可避免在路由器中某個單點(diǎn)產(chǎn)生轉(zhuǎn)發(fā)處理瓶頸。
輸入端口也可直接稱為端口,因?yàn)槁酚善鞯拿總€端口都是既能出也能入的。
目的:以線速完成輸入端口的處理。
排隊(duì):如果數(shù)據(jù)報到達(dá)輸入端口的速度快于輸入端口將數(shù)據(jù)報轉(zhuǎn)發(fā)到交換結(jié)構(gòu)的速度,就會發(fā)生排隊(duì)。
三、交換結(jié)構(gòu)
功能:將分組從輸入端口緩存交換/轉(zhuǎn)發(fā)到恰當(dāng)?shù)妮敵龆丝诰彺嬷小?/p>
三種類型的交換結(jié)構(gòu):經(jīng)內(nèi)存、經(jīng)總線、經(jīng)交換矩陣。
1. 經(jīng)內(nèi)存的交換結(jié)構(gòu)
早期用計算機(jī)作為路由器時所采用的結(jié)構(gòu)。
輸入端口與輸出端口之間的交換由 CPU(路由處理器)控制完成;
輸入端口與輸出端口類似 I/O 設(shè)備:
- 當(dāng)分組到達(dá)輸入端口時,通過中斷向路由處理器發(fā)出信號,將分組拷貝到處理器內(nèi)存中;
- 路由處理器根據(jù)分組中的目的地址查表找出適當(dāng)?shù)妮敵龆丝?,將該分組拷貝到輸出端口的緩存中。
輸入端口與輸出端口也和 I/O 設(shè)備一樣只有緩存沒有內(nèi)存。
交換速度受總線帶寬的速度限制,因?yàn)槊總€分組需要經(jīng)過兩次總線。
若總線帶寬為每秒寫入或讀出 B 個分組,則總的轉(zhuǎn)發(fā)吞吐量(分組從輸入端口被傳送到輸出端口的總速率)小于 B/2 。
轉(zhuǎn)發(fā)一個分組需要經(jīng)過兩次總線,而單位時間內(nèi)總線寫入或讀出 B 個分組,因此單位時間內(nèi)只能寫入 B/2 分組和讀出 B/2 個分組,即至多完成 B/2 個分組的轉(zhuǎn)發(fā)。注意是寫入 “和” 讀出不是寫入 “或” 讀出。
2. 經(jīng)總線的交換結(jié)構(gòu)
輸入端口通過一條共享總線將分組直接傳送到輸出端口,不需要路由處理器的干預(yù)。
每個輸入端口的內(nèi)存中都存有一份拷貝來的轉(zhuǎn)發(fā)表,不再需要被路由處理器拷貝到路由器內(nèi)存中查找。分組只用經(jīng)過一次總線。
- 每次只能有一個分組通過總線傳送。
- 分組到達(dá)一個輸入端口時,若總線正忙,會被暫時阻塞,在輸入端口排隊(duì)
- 路由器交換帶寬受總線速率限制。
3.?經(jīng)交換矩陣交換結(jié)構(gòu)
縱橫式交換機(jī):由 2n 條總線組成,n 個輸入端口與 n 個輸出端口連接。
到達(dá)輸入端口的分組沿水平總線穿行,直至與所希望的輸出端口的垂直總線交叉點(diǎn):
- 若該條垂直總線空閑,則分組被傳送到輸出端口;
- 否則,該到達(dá)的分組被阻塞,必須在輸入端口排隊(duì)。
- 輸入端口通過查詢自己內(nèi)存中的轉(zhuǎn)發(fā)表,來決定關(guān)閉哪個交叉點(diǎn)的開關(guān)。
- 不能有多個輸入端口同時向一個輸出端口轉(zhuǎn)發(fā)分組。
- 同一時刻最多能夠閉合三個開關(guān),即轉(zhuǎn)發(fā)三個分組。
四、輸出端口的功能
取出存放在輸出端口內(nèi)存中的分組,并將其傳輸?shù)捷敵鲦溌飞稀?/p>
當(dāng)交換結(jié)構(gòu)將分組交付給輸出端口的速率超過輸出鏈路速率時,就需要排隊(duì)與緩存管理功能。
- 當(dāng)輸出端口的緩沖區(qū)溢出時,就會出現(xiàn)延時和丟包。
在數(shù)據(jù)鏈路層,根據(jù)采用的鏈路技術(shù)的不同,將 IP 分組封裝成不同的鏈路幀。在物理層,根據(jù)采用的物理鏈路的不同,如:雙絞線、光纖、無線電磁波,將數(shù)據(jù)轉(zhuǎn)換為不同的信號。
五、排隊(duì)
路由器中排隊(duì)的位置有:
- 輸入端口的內(nèi)存中
- 交換結(jié)構(gòu)中(如果采用的是內(nèi)存交換方式)
- 輸出端口的內(nèi)存中
1. 輸入端口排隊(duì)
當(dāng)交換結(jié)構(gòu)的速度慢于輸入端口的速度時,就會在輸入端口的緩沖區(qū)發(fā)生排隊(duì)。
會導(dǎo)致排隊(duì)延時和由于輸入緩沖區(qū)溢出導(dǎo)致的丟包!
線頭阻塞(Head-of-the-Line(HOL)blocking):在隊(duì)列前面的被阻塞的數(shù)據(jù)報會阻止隊(duì)列中的其它數(shù)據(jù)報被轉(zhuǎn)發(fā)。
2. 輸出端口排隊(duì)
當(dāng)經(jīng)過交換結(jié)構(gòu)到達(dá)的速度快于輸出端口的處理線速時,就會在輸出端口的緩沖區(qū)發(fā)生排隊(duì)。
當(dāng)輸出端口的緩沖區(qū)溢出時就會發(fā)生丟包!文章來源:http://www.zghlxwxcb.cn/news/detail-422063.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-422063.html
到了這里,關(guān)于DJ4-3 路由器的工作原理的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!