【求助】switch 的連接與網路運作 - 第2頁 - PCZONE 討論區

返回   PCZONE 討論區 > ▲ ADSL_CABLE_FTTH 寬 頻 上 網 討 論 > -- 網 路 技 術 版


PCZONE 討論區



通知

-- 網 路 技 術 版 較深入的網路方面技術問題,請來此這版討論

會員

太感謝了,以下是我的解讀,有誤煩請指正:

SWITCH 就是一接到封包就先作比對 (比對自己維護的 MAC Address Table) ,
若其中還沒有紀錄該封包的 source address 與 port 之對應,則先填上.
反之,若已有,就繼續比對該封包中的 destination address 與 port 之對應 --

1.
若有,就直接 forward 到對應的 port ,而此行為就是所謂的:
"forwarding" and "filtering" ,即推進/轉送 封包至正確,適當的 port
並且過濾掉不須轉送的 port 以免於網路資源與效率上的浪費!

2.
若無,則進行 flood(一如水流般,除了進水道外,會流往每個通道),流往
每個 port ,然後只有目的電腦才會有所回應.然後回應封包在送往 switch 後,就
又開始了比對的機制.



另外,
關於我前文的疑問,

那反過來 pc2 要給 pc3 的封包在流到 B 後, B 是如何判斷要往連接 A 的 port 傳送呢?
難道說 B 連接 A 的 port 記得所有 pc3,pc4,pc5,pc6 的 MAC 嗎?
->我改成:
switch(B) 維護的 table 關於連接 switch(A) 的 port 又是如何紀錄此 port 的對應關係呢?


還有,可否把 switch(A) 去掉,直接將
router , switch(B) , switch(D) 連接上 switch(C) 呢? (以及有何差別呢?)

回覆
會員

1. 大致正確, 但裡面有些細節錯了, 再多看幾遍唄
2. Layer 2 跑的東西叫框訊 (frame), 不叫封包 (packet)
3. 每一個 port都有一個 MAC Address, 但習慣上是說對應到 port

引用:
另外, 那反過來 pc2 要給 pc3 的封包在流到 B 後, B 是如何判斷要往連接 A 的 port 傳送呢?
難道說 B 連接 A 的 port 記得所有 pc3,pc4,pc5,pc6 的 MAC 嗎?
->我改成:
switch(B) 維護的 table 關於連接 switch(A) 的 port 又是如何紀錄此 port 的對應關係呢?
Q: pc2 --> pc3

A:
pc2 --> SW(B) --> SW(B) floods to pc1 & SW(A)
SW(A) floods to SW(C) & SW(D)
SW(C) floods to pc3 & pc4
SW(D) floods to pc5 & pc6

pc3 responses the broadcast --> SW(C) --> SW(A) --> SW(B) --> pc2
SW(A, B, C, D) 都有 pc2 的 MAC
SW(A, B, C) 都有 pc3 的 MAC

引用:
還有,可否把 switch(A) 去掉,直接將
router , switch(B) , switch(D) 連接上 switch(C) 呢? (以及有何差別呢?)
如果 pc1-6 只是單純的 Client, 因為 SW(B, C, D) 不是 Hub, 沒啥問題唄.....
回覆
會員

引用:
作者: Giorgio
1. 大致正確, 但裡面有些細節錯了, 再多看幾遍唄
請問您指的是哪些細節? (教學圖片的文字不多,我看了好幾遍了...)
回覆
會員

試著再詳細描述一次 pc2 --> pc3
回覆
會員

引用:
作者: b90220208
那反過來 pc2 要給 pc3 的封包在流到 B 後, B 是如何判斷要往連接 A 的 port 傳送呢?
難道說 B 連接 A 的 port 記得所有 pc3,pc4,pc5,pc6 的 MAC 嗎?
沒錯,只要訊框有通過port都會被解析並將來源MAC紀錄下來,所以每個PORT並不是只能記憶一組MAC,在DES-1008D規格上就有這麼一條:「 每台可過濾8K之網路硬體住址,且網路硬體位址可以自動學習記錄」,由此可證一個PORT可記憶非常非常多組MAC。
回覆
會員

Thanks a lot!!
引用:
作者: Giorgio
試著再詳細描述一次 pc2 --> pc3

我試著再解讀看看,
所以若 pc2 -> pc3 的情況下以下英文大寫字母表 SWITCH)

frame 到 B 時, B 先比對 table 看要否增加一筆 pc2 MAC 對應到接收到該 frame 的 port,然後再比對該 frame 的 destination MAC(即 pc3) ,不管有或無都會往連接 A 的 port 送,只是若無時是以 flood 的方式罷了.

再來到 A 時, A 再看看是否須新增 pc2 MAC 對應到該接收 port 的紀錄,然後再比對 table 看看有無 pc3 MAC 的對應,一樣地,若有則直接 forward 到連接 C 的 port,若無,則 flood 出去.

再來到 C 時, C 再看看是否須新增 pc2 MAC 對應到該接收 port 的紀錄,然後再比對 table 看看有無 pc3 MAC 的對應,一樣地,若有則直接 forward 到連接 pc3 的 port,若無,則 flood 出去.而若為 flood 時,則只有 pc3 會回應.

引用:
作者: ysc_kyy
沒錯,只要訊框有通過port都會被解析並將來源MAC紀錄下來,所以每個PORT並不是只能記憶一組MAC,在DES-1008D規格上就有這麼一條:「 每台可過濾8K之網路硬體住址,且網路硬體位址可以自動學習記錄」,由此可證一個PORT可記憶非常非常多組MAC。
應再改成:
流入 port 的訊框都會被解析並紀錄下來源 MAC ,.........
因為 "通過" 一詞包含訊框是從 port 流出的(不論是被 forward 或 flood 出),但此時無須紀錄下訊框的來源 MAC.


若有誤麻煩再指正了,謝謝!
回覆
會員

之前的解讀好像不大正確,
綜合各位的觀點,我再整理了一下並列出如下有誤的話還麻煩前輩指正)



[條件]
router 有 4 張卡
假設所有 SWITCH 都是 layer2 設備,
各網段依次為:
192.168.1.0/24
192.168.2.0/24
192.168.3.0/24

[事件]
pc2 -聯繫-> pc3 -回應-> pc2

[流程]
[pc2 以 ARP broadcast 求 router 的 MAC]
因 pc2,pc3 分處於不同網段,所以一定要經由路由器 forward,
假設 pc2 還不知道 router 的 MAC ,則會作 ARP 廣播,

<frame 的相關訊息>
來源 ip 為 pc2's ip ,目的 ip 為 192.168.1.255
來源 MAC 為 pc2's MAC ,目的 MAC 為 FF:FF:FF:FF:FF:FF

<frame 的流程則是>
當 frame 經 SWITCH(B) 時, SWITCH(B) 會比對來源 MAC 看看是否需要新增一筆 pc2 與端口的對應紀錄,
接著 flood 出去.

當 SWITCH(A) 收到 frame 時,一樣 SWITCH(A) 會比對來源 MAC 看看是否需要新增一筆 pc2 與端口的對應紀錄,
然後再 flood 出去.

[router 回應 pc2 的 ARP broadcast]
當 router 收到 frame 後就會回應 pc2 告知自己的 MAC 值,
因為此時 router 已經知道 pc2 的 MAC 且又與 pc2 有同網段的介面,所以就直接以 unicast 回應 pc2 .

<frame 的相關訊息>
來源 ip 為 router's ip ,目的 ip 為 pc2's ip
來源 MAC 為 router's MAC ,目的 MAC 為 pc2's MAC

<frame 的流程則是>
流經 SWITCH(A) , SWITCH(A) 會比對來源 MAC 看看是否需要新增一筆 router 與端口的對應紀錄,
然後由於 TABLE 中已有 pc2's MAC 的對應紀錄所以就直接 forward 出去給 SWITCH(B).

到了 SWITCH(B) 一樣會比對來源 MAC 看看是否需要新增一筆 router 與端口的對應紀錄,
然後由於 TABLE 中已有 pc2's MAC 的對應紀錄所以就直接 forward 給 pc2.
-----

[pc2 始聯繫 pc3 並找 router 幫忙]
再來 pc2 因知道了 router 的 MAC 所以就直接找 router 幫忙 forward 要給 pc3 的 frame

<frame 的相關訊息>
來源 ip 為 pc2's ip ,目的 ip 為 pc3's ip ,
來源 MAC 為 pc2's MAC ,目的 MAC 為 router's MAC

<frame 的流程則是>
流經 SWITCH(B) 一樣先比對來源 MAC 看看是否需要新增一筆 pc2 與端口的對應紀錄,
然後由於 TABLE 中已有 router's MAC 的對應紀錄所以就直接 forward 給 SWITCH(A).

到了 SWITCH(A) 一樣先比對來源 MAC 看看是否需要新增一筆 pc2 與端口的對應紀錄,
然後由於 TABLE 中已有 router's MAC 的對應紀錄所以就直接 forward 給 router.

[router 進行 forward 幫忙轉送]
router 收到後就 forward 到與 pc3 同網段的介面.
(這裡我省略其經由ARP廣播得知pc3's MAC的流程,以及,pc3也因此而知道了router的MAC位址,
還有 SWITCH(A) , SWITCH(C) 因此而在自己的 TABLE 中有了 pc3's MAC 以及 router's MAC 的對應端口紀錄 )

<frame 的相關訊息>
來源 ip 為 pc2's ip ,目的 ip 為 pc3's ip
來源 MAC 為 router's MAC ,目的 MAC 則為 pc3's MAC

<frame 的流程則是>
流經 SWITCH(A) 一樣先比對來源 MAC 看看是否需要新增一筆 router 與端口的對應紀錄,
然後由於 TABLE 中已有 pc3's MAC 的對應紀錄所以就直接 forward 到 SWITCH(C).

來到了 SWITCH(C) 一樣先比對來源 MAC 看看是否需要新增一筆 router 與端口的對應紀錄,
然後由於 TABLE 中已有 pc3's MAC 的對應紀錄所以就直接 forward 到 pc3.
-----

[pc3 決定回應 pc2 並找 router 幫忙]
因為是不同網段,所以 pc3 還是得透過 router 作 forward.
也因為 pc3 知道 router 的 MAC 了,所以就直接找 router 幫忙,

<frame 的相關訊息>
來源 ip 為 pc3's ip ,目的 ip 為 pc2's ip.
來源 MAC 為 pc3's MAC ,目的 MAC 為 router's MAC.

<frame 的流程則是>
流經 SWITCH(C) 一樣先比對來源 MAC 看看是否需要新增一筆 pc3 與端口的對應紀錄,
然後由於 TABLE 中已有 router's MAC 的對應紀錄所以就直接 forward 給 SWITCH(A).

來到了 SWITCH(A) 一樣先比對來源 MAC 看看是否需要新增一筆 pc3 與端口的對應紀錄,
然後由於 TABLE 中已有 router's MAC 的對應紀錄所以就直接 forward 給 router.

[router 進行 forward 幫忙轉送]
來到了 router,由於其已經知道 pc2 的 MAC ,就不用作 ARP broadcast ,所以就直接 forward 到與 pc2 同網段的介面.

<frame 的相關訊息>
來源 ip 為 pc3's ip ,目的 ip 為 pc2's ip.
來源 MAC 為 router's MAC ,目的 MAC 為 pc2's MAC.

<frame 的流程則是>
流經 SWITCH(A) 一樣先比對來源 MAC 看看是否需要新增一筆 router 與端口的對應紀錄,
然後由於 TABLE 中已有 pc2's MAC 的對應紀錄所以就直接 forward 給 SWITCH(B).

來到了 SWITCH(B) 一樣先比對來源 MAC 看看是否需要新增一筆 router 與端口的對應紀錄,
然後由於 TABLE 中已有 pc2's MAC 的對應紀錄所以就直接 forward 給 pc2.
-----


所以關於某網友提到的:
引用:
如果第一次路由成功後...
第二次傳送封包..則採用比對mac 的方式傳送....而不路由...
請問這是為何?...應該不可能吧.
回覆
會員

有的 Router 可以那麼做 ....
回覆
會員

引用:
作者: 某網友說
這我不知是不是特殊功能....在 cisco 的 mls
多層交換中..有特別提到 route once
switch many ......不過書上並未強
調是cisco 的特技...不過前提是用L3
交換器才算是 MLS ...
有興趣的話可以去翻看看 CISCO PRESS
給CCNP 的 BCMSN ..中譯本參考看看..
以下純脆憑空猜測的想法:
關於 L3 SWITCH 我腦中閃過的想法是--
其該不會是採用 ip 對應 port 端口吧...不知其運作之原理為何,可否請了解的人說一下?

既然其可像 ffff 前輩說的不必經由 router 就可 forward 來源與目的 ip 網段不同的訊框往更快的方向去,那麼難不成該 SWITCH 能夠改寫訊框的目的 MAC 值,這樣當訊框被 forward 到目的電腦時才可能被收下處理...不是嗎?
回覆
會員

Go to Cisco website, and search "NFFC"



回覆


類似的主題
主題 主題作者 討論版 回覆 最後發表
【求助】Switch 可以擋廣播嗎? b90220208 -- 網 路 技 術 版 7 2006-01-22 11:27 PM
【求助】Switch Hub的選擇? mingyen0707 ---- ADSL 軟 硬 體 技 術 4 2005-08-17 10:37 PM
【求助】Switch Hub怪聲連連.... alice425 -- 網 路 硬 體 版 3 2003-02-07 03:00 PM






 XML   RSS 2.0   RSS 
本站使用 vBulletin 合法版權程式
站務信箱 : [email protected]

本論壇所有文章僅代表留言者個人意見,並不代表本站之立場,討論區以「即時留言」方式運作,故無法完全監察所有即時留言,若您發現文章可能有異議,請 email :[email protected] 處理。