一、MAC地址/IP地址
-
32位IP地址:
- 接口的網絡層地址
- 用於標識網絡層(第3層)分組, 支持分組轉發
-
MAC地址 (或稱LAN地址,物理地址,以太網地址) :
- 作用:用於局域網內標識一個幀從哪個接口發出,到達哪個物理相連的其他接口;
- 48位MAC地址(用於大部分LANs), 固化在網卡的ROM中,有時也可以軟件設置;
- e.g. 1A-2F-BB-76-09-AD(十六進制)。
-
局域網中的每塊網卡都有一個唯一的MAC地址。
-
MAC地址由IEEE統一管理與分配。
-
網卡生產商購買MAC地址空間(前24比特)。
-
類比:
- MAC地址: 身份證號
- IP地址: 郵政地址
-
MAC地址是“平面”地址 → 可“攜帶”
- 可以從一個L .AN移到另一個LAN
IP地址是層次地址 → 不可“攜帶”
- IP地址依賴於結點連接到哪個子網
二、ARP協議(地址解析協議)
問題: (在同一個LAN內)如何在已知目的接口的IP地址前提下確定其MAC地址?
ARP表:LAN中的每個IP結點(主機、路由器)維護一個表
- 存儲某些LAN結點的IP/MAC地址映射關係: < IP地址; MAC地址; TTL>
- TTL (Time To Live): 經過這個時間以後該映射關係會被遺棄(典型值爲20min)
1. ARP協議:同一局域網內
-
A想要給同一局域網內的B發送數據報;
- B的MAC地址不在A的ARP表中.
-
A廣播ARP查詢分組,其中包含B的IP地址;
- 目的MAC地址= FF-FF-FF-FF-FF-FF
- LAN中所有結點都會接收ARP查詢
-
B接收ARP查詢分組,IP地址匹配成功,向A應答B的MAC地址;
- 利用單播幀向A發送應答
-
A在其ARP表中,緩存B的IP-MAC地址對,直至超時;
- 超時後,再次刷新
-
ARP是“即插即用”協議: 結點自主創建ARP表,無需干預。
2. ARP協議:尋址(從一個LAN路由至另一個LAN)
通信過程:A通過路由器向B發送數據報
- 關注尋址:IP地址(數據報中)和MAC地址(幀中)
三、以太網(ETHERNET)
1. 地位:“統治地位”的有線LAN技術
- 造價低廉(NIC不足100.00)
- 應用最廣泛的LAN技術
- 比令牌局域網和ATM等,簡單、便宜
- 滿足網絡速率需求:10Mbps-10Gbps
2. 物理拓撲
- 總線(bus):上世紀90年代中期前流行
- 所有結點在同一衝突域(collision domain) (可能彼此衝突)
- 同軸電纜
- 星型(star):目前主流網絡拓撲
- 中心交換機(switch)
- 每個結點一個單獨衝突域(結點間彼此不衝突)
3. 不可靠、無連接服務
- 無連接(connectionless):發送幀的網卡與接收幀的網卡間沒有“握手”過程。
- 不可靠(unreliable):接收網卡不向發送網卡進行確認。
- 差錯幀直接丟棄,丟棄幀中的數據恢復依靠高層協議(e.g., TCP),否則,發生數據丟失
- 以太網的MAC協議:採用二進制指數退避算法的CSMA/CD。
4. 幀結構
發送端網卡將IP數據報(或其他網絡層協議分組)封裝到以太網幀中:
- 前導碼(Preamble)(8B):用於發送端與接收端的時鐘同步
- 目的MAC地址、源MAC地址(各6B)
- 類型(Type)(2B):指示幀中封裝的是哪種高層協議的分組(如,IP數據報、Novell IPX數據報、Apple Talk數據報等)
- 數據(Data)(46-1500B):指上層協議載荷。
- CRC(4B):循環冗餘校驗碼。
5. 以太網交換機
- 鏈路層設備:
- 存儲-轉發以太網幀
- 檢驗到達幀的目的MAC地址,選擇性(selectively)向一一個或多個輸出鏈路轉發幀
- 利用CSMA/CD訪問鏈路,發送幀
- 透明(transparent):主機感知不到交換機的存在。
- 即插即用(plug-and-play)
- 自學習(self-learning):不需要配置。
交換機:多端口間同時傳輸
- 主機利用獨享(dedicated)鏈路直接連接交換機
- 交換機緩存幀
- 交換機在每段鏈路上利用CSMACD收發幀,但無衝突,且可以全雙工
- 每段鏈路一個獨立的衝突域
- 交換(switching): ’A-A’與‘B-B’的傳輸可以同時進行,沒有衝突
交換機轉發表:交換表
- 每個交換機有一個交換表,每個入口:主機的MAC地址,到達主機的接口,時間戳。
- 交換機通過自學習,獲知到達主機的接口信息。
幀過濾/轉發
交換機互聯
6. 交換機 Vs 路由器
兩者均爲存儲-轉發設備:
- 路由器:網絡層設備(檢測網絡層分組首部);
- 交換機:鏈路層設備(檢測鏈路層幀的首部)。
二者均使用轉發表:
- 路由器:利用路由算法(路由協議)計算(設置),依據IP地址;
- 交換機:利用自學習、泛洪構建轉發表,依據MAC地址。
7. 虛擬局域網(VLANs,VirtualLocal Area Networks)
- 支持VLAN劃分的交換機,可以在一個物理LAN架構上配置、定義多個VLAN;
- 流量隔離
- 動態成員:端口可以動態分配給不同的VLAN;
- 在VLAN間轉發:通過路由。
- 在實踐中,路由器和交換機集成在一起。
四、PPP協議(Point-to-Point Protocol,點對點協議)
1. 點對點數據鏈路控制
一個發送端,一個接收端,一條鏈路:比廣播鏈路容易
- 無需介質訪問控制(Media Access Control)
- 無需明確的MAC尋址
- e.g. 撥號鏈路, ISDN鏈路
常見的點對點數據鏈路控制協議:
- HDLC: High Level Data Link Control
- PPP:Point-to-Point Protocol
2. PPP設計需求[RFC 1557]
-
組幀:將網絡層數據報封裝到數據鏈路層幀中
- 可以同時承載任何網絡層協議分組(不僅IP數據報)
- 可以向上層實現分用(多路分解)
-
比特透明傳輸:數據域必須支持承載任何比特模式
-
差錯檢測:(無糾正)
-
連接活性(connection liveness)檢測:檢測、並向網絡層通知鏈路失效
-
網絡層地址協商:端結點可以學習/配置彼此網絡地址
3. 無需支持的功能(由上層協議實現即可)
- 無需差錯糾正/恢復
- 無需流量控制
- 不存在亂序交付
- 無需支持多點鏈路
4. PPP數據幀
- 標誌(Flag):定界符(delimiter) ,如果數據中也有這個標誌,再加一個標誌。
- 地址(Address):無效(僅僅是一個選項)
- 控制(Control):無效;未來可能的多種控制域
- 協議(Protocol):上層協議(eg, PPP-LCP, IP, IPCP, etc)
- 信息(info)::上層協議分組數據
- **校驗(check):**CRC校驗,用於差錯檢測
5. PPP數據控制協議
在交換網絡層數據之前,PPP數據鏈路兩端必須:
- 配置PPP鏈路
- 最大幀長
- 身份認證(authentication)
- etc.
- 學習/配置網絡層信息
- 對於IP協議:通過交換IPCP協議(IP Control Protocol )報文(IP分組首部的“上層協議”字段取值: 8021),完成IP地址等相關信息配置。
五、IEEE 802.11 無線局域網
1. 分類
802.11b
- 2.4-2.5GHz免費頻段(unlicensed spectrum)
- 最高速率: 11 Mbps
- 物理層採用直接序列擴頻(DSSS)技術
- 所有主機使用相同的碼片序列
802.11a
- 5-6 GHz頻段
- 最高速率: 54 Mbps
802.11g
- 2.4-2.5 GHz頻段
- 最高速率: 54 Mbps
802.11n:
-
多天線(MIMO)
-
2.4-2.5 GHz頻段
-
最高速率: 600 Mbps
均使用CSMA/CA多路訪問控制協議;
均有基礎設施(基站)網絡模式和特定網(自組網)網絡模式。
2. 體系結構
-
無線主機與基站通信
- 基站(base station) = 訪問點(access point-AP)
-
基本服務集BSS(Basic Service Set),也稱爲單元(cell)
3. 信道與AP關聯
- 802.11b: 2.4GHz-2 .485GHz頻譜劃分爲11個不同頻率的信道
- 每個AP選擇一個頻率(信道)
- 存在干擾可能:相鄰的AP可能選擇相同的信道!
- 主機:必須與某個AP關聯(associate)。
4. 802.11:多路訪問控制MAC協議——載波偵聽多路訪問/衝突避免(CSMA/CA)
- 避免衝突: 2+結點同時傳輸
- 802.11: CSMA-發送數據前監聽信道
- 避免與正在進行傳輸的其他結點衝突
- 802.11:不能像CSMA/CD那樣,邊發送、邊檢測衝突!
- 無線信道很難實現
- 無法偵聽到所有可能的衝突:隱藏站、信號衰落
- 目標:避免衝突——採用CSMA/CA(載波偵聽多路訪問/衝突避免)
- 基本思想:允許發送端“預約”(reserve)信道,而不是隨機發送數據幀,從而避免長數據幀的衝突。
- 數據幀MAC地址:802.11數據幀有4個地址字段。