吃一節 TCPIP!!中

300px-AetherWind.svg

300px-Michelson-Morley_experiment_(en).svg

Michelson–Morley 想藉著地球產生的乙太風捕捉光波,這可能嗎?一度人類所知道的都有一個『介質』,這個介質的振盪就產生了波。比方水波聲波空氣,那光波介質是什麼呢?因此十九世紀的物理學家,假想了一種稱作『乙太』的介質。然而這個命名可大有來頭,古希臘哲學家亞里斯多德的物理學認為,地球是由『』四種元素組成;而天堂以及宇宙中所有其牠物質都由永恆無質量第五元素乙太所構造

240px-Möbius_strip

220px-Trefoil_knot_arb

MobiusStrip-01

拓撲學 Topology 一詞源自希臘文『地點之研究』,始於歐拉柯尼斯堡的七橋問題。這門數學探討連通性 connectedness 、連續性 continuity 、以及邊界 boundary。它不用東西的『形狀』來作分類,而是分析那個東西裡所有連通的點,各個連續的區域,和有哪些分別內外的邊界。想畫德國數學家莫比烏斯發現的帶子  Möbius strips ,它只有一個『』和一條『邊界』?!

Möbius strips

220px-BusNetwork.svg

220px-Network_card

500px-Coaxial_cable_cutaway.svg

lans.bus

220px-StarNetwork.svg

剛開始乙太網是用一條『同軸電纜』當作信號訊息傳送的骨幹,它的網路拓撲就像一個『』字,稱之為匯流排 BUS,是個運『信號波』的公車站。由於每一個連接到 BUS 的節點 = 接點 NODE,都可用作『收發』點,那就必須考慮對應的通訊機制。當然一個節點發送每個接點都同時接收沒有什麼問題;然而多個節點同時發送,就會產生信號『碰撞』以致訊息錯誤。這些特性的總稱叫做 CSMA/CD ── CS = 載波偵聽、MA=多路存取和CD=碰撞察覺 ──,可以說 BUS 上廣告著 ALOHA 在這裡!

由於任一節點的收發都是連通的自己發送自己也可以接收,這稱為 loopback 回送;在 Raspbian 裡,就是你用 ifconfig 命令看到的 lo ,它的 IP 地址通常是 127.0.0.1 ,這是 IPv4 所保留的 256 個地址區塊 127.0.0.0/8 ── 127.0.0.0 到127.0.0.255 ──之一。其次任一個節點都可以接收所有其它接點的信號,不管是不是發送給它的;通常乙太網卡驅動程式過濾掉這些不是自己應該接收的訊息,但是你也可以進入所謂混雜模式 Promiscuous mode 去監聽所有的收發。再者,乙太網使用自己全球唯一的 48 位元 MAC 媒介存取控制位址,約為二百八十兆個地址來區別連上它的整個世界不同的節點。不知是夠是不夠??

碰撞察覺的載波偵聽多路存取 CSMA/CD 技術要如何實現通訊機制呢?藉著節點收發守則

一、開始發送前── 偵聽到線路空閒才啟動傳輸,否則移至第四步

二、發送──即使察覺碰撞,繼續發送一段最小的時距,用以確保 所有其它節點都能察覺碰撞,再移至第四步

三、發送成功──回報上層的網路協定傳送成功,結束發送模式。

四、忙線中──等待,直至偵聽到線路空閒

五、擲骰子──線路雖已進入空閒狀態 ,必須等待隨機的一段時間,才可移至第一步,假如超過約定的最大嘗試次數,就走下一步吧

六、失敗── 回報上層的網路協定傳送失敗,結束發送模式

咦!說的不是收發守則嗎?怎們沒講到『接收』呢?節點總是接收的,就像耳朵聽的到自己說話一樣;更何況以對談的目的而言,一大半都是聽別人講話,所以講的人需要懂得『禮貌』,如果大家『搶著說』那就一團混亂了。哦!愛因斯坦不是說『上帝不擲骰子』嗎?為什麼要擲骰子呢?由於『等待多久』是很難決定的,所以才把它交給能確定『隨機』的上帝!!

含羞草 丰

海星 star

早先乙太網因為使用同軸電纜之故,為了確保信號收發品質,必須使用適當的『終端電阻』。這使的這個 BUS 增加減少節點困難,一旦某一個接點故障,檢查起來非常費事,整個 BUS 多半得停下來,就像貌的『含羞草』一碰就收起來了。所以後來保留ALOHA 守則 的精神,把網路拓樸就從匯流排改成了以『HUB』集線器為中心簡便好用的『星形網路』了!現在集線器又已被交換機 Network switch 所取代

那要怎麽把兩個乙太網介接起來呢?用丰 + 丰就能加成字嗎?假如設想一種東西就叫做『橋接器』吧!把它接上把左右乙太網兩邊各選的一個節點,它能把左邊聽到的,向右邊轉說,將右邊聽到的,往左邊重複。因著 ALOHA 守則的作用,兩個乙太網就被合而為一了,你網中有我,我網中有你!!

─── …待續,啃一塊唄 K TCPIP!!下 ──