引用:
作者xaren
排序或是儲存,是不是就有一個 client delay 了,而不是即時。
一個被排序過的東西可以叫同時嗎?
我對這一句話很有意見。
您的意思是說hub不能同時上網,switch可以同時上網。
retry 和 reorder 可以叫做一個是不同時,一個是同時嗎?
我認為是不行的。
一樣有一台 client 不是 real-time,只是 overhead 多寡而以。
|
你所引言的那段話,我在之後有做過補充,請先向前閱覽,我就不再重複貼了。
你的思考只要轉個方向就會知道主要的討論重點了。
這裡討論的重點是在於HUB與SWITCH的差異,而實際上,SWITCH上的應用時,就是可以允許各埠間在同一時間送出請求,也就因此不會造成Client端的請求失敗等等的情形。
當然單一埠的多重連線請求上是必須經過排序的,但不代表請求的排隊動作是該由Client端來執行,而是由SWITCH自動完成,且只要是合乎標準的SWITCH晶片,其中間所造成的延遲時間,絕對是遠低於設備IO瓶頸與WAN端線路問題所造成的延遲,所以這對Client端的上網應用來說,就是即時的。
但是當使用HUB時,所有的連線請求端在發出請求之前,都必須偵測線路的閒置與否,才可決定是否發送連線請求。由於HUB屬於共享式的網路架構,所有的訊框都會flooding到所有連接埠上(泛流,也就是複製到所有通訊埠),也因此,使用HUB的網路架構下,共用的碰撞網域中,同一時間僅可允許單一連線,回到前面所說的偵測閒置的部分共同說明,也就是當任何一端持續使用連線時,因為flooding的緣故,會使所有的Client將不斷偵測到線路處於非閒置狀態而持續等待,即使因持續使用端的些許延遲而造成其它Client判斷線路閒置而發出訊框時,也會因為先前的連線端再次送出請求而發生碰撞(也就是俗稱的晚碰撞),當所有的連線端偵測到碰撞發生時,會將所有的連線停止,而在一定時間內執行撤回重傳等待。
例如一個ADSL連線於連接SWITCH提供單一Client使用時平均回應時間30ms,而當增加Client為2到3個時,其平均回應時間仍是30ms(當流量接近滿載時而造成的延遲時間增長,是由WAN端連線所造成,而非SWITCH)。反過來換成使用HUB時,則可能因多次的同時請求或單一連線持續使用時,造成封包碰撞而使延遲時間大增,甚至服務中斷的情形(此時的延遲則為本地端造成,而非WAN端問題)。
基於共享媒體一次僅允許單一連線的使用,所以HUB並不符合你所提到TDM網路的基本要求。就如同DOS環境下,一次僅可執行一項程式,所以不屬於多工作業系統是相同的道理。(而即使視窗系統中使用單一處理器而須排程處理多項工作時,但由於仍可允許同時間多項程序與程式並行,故其方可歸類為多工作業系統。)
重複的問題不同的人一直提,而要重複做相同的解釋實在很浪費時間,這些問題在網路基礎書籍中,甚至許多網路技術討論區中都是可以輕易爬到的文章,先前所提供的BBS精華討論文也有非常詳細的討論與解釋,此類的問題在發問前或有所質疑前情先爬文或參考下列連結。
study-area Hub & Switch:http://www.study-area.org/tips/hub_switch.htm