發表文章

[WiFi] WiFi 網路的認證: 802.1X 與 EAP (Extensible Authentication Protocol)

圖片
在上一篇文章中, 我們介紹了 RADIUS 認證協定, RADIUS 是基於 UDP 的方式建立連線, 不但無法保證資料傳輸的完整性, 也無法保證資料的安全性. 使用 UDP 的主要原因應該是在舊有有線網路的設計架構下, 將控制訊息以 UDP 傳輸, 使用者資料以 TCP 傳輸的想法, 此想法基於控制訊息短, 且具有定期重送的保護機制而形成, 使用 UDP 傳輸可以避免封包多餘的重傳, 以及訊息交換, 節省使用頻寬, 特別適用於早年頻寬有限的網路架構. 然而, 隨著網路的發展, 安全性和穩定性受到更多注意, 特別是針對無線網路, 由於在空氣中的封包可以側聽, 因此, 安全性受到更多考量. 為了增進 WiFi 網路的安全性, EAP (Extensible Authentication Protocol) 首先被提出, EAP 被定義於 RFC3748 , 為一個點對點的認證框架, 由於 EAP 的角色是框架, 而非協定, 因此有各家廠商的不同實現, 不同 EAP 的協定比較可以參考 Intel 的這篇文章: https://www.intel.com.tw/content/www/tw/zh/support/articles/000006999/network-and-i-o/wireless.html 802.1X 基於 EAP 的架構, 提出一種在區域網路 (Local Area Network, LAN) 的實作方式, 或者也可以稱為 EAPOL (EAP Over LAN), 提供 EAP 架構進行裝置與伺服器之間的資料交換, EAPOL 為一個點對點的通訊協議, 不依賴 IP 層, 可用 MAC 直接溝通, 在 EAPOL (或是 802.1X) 加入後, 整體的架構如下圖: 來自:  https://www.semanticscholar.org/paper/Extensible-Authentication-Protocol-(-EAP-)-Security-Sotillo/417b0aa1fd8d7ddb8616a018de1fbc9de039a40e 在上圖中, 可以看出來 802.1X, EAP 和 RADIUS 之間的分工, 一方面, EAP 架構下通訊的兩點為終端裝置和 RADIUS 伺服器, 補足了 RADIUS 只定義 NAS (...

[WiFi] WiFi 網路的認證: RADIUS 架構

圖片
對於使用公眾 WiFi 的使用者, 連上網路之後第一件事應該就是被導到一個登入的網頁, 輸入帳密之後, 才能開始進行一般的上網瀏覽, 而此處的登入與認證程序, 通常使用 RADIUS 作為認證機制. RADIUS 全稱為: Remote Authentication Dial-In User Service, 初始定義於 RFC 2865:  https://tools.ietf.org/html/rfc2865 是一個基於 UDP 協定的通訊架構 (因此應用層要自行處理連線保證), 負責處理客戶端 (稱為NAP, Network Access Server) 的認證需求, 如下圖所示: 來自:  https://en.wikipedia.org/wiki/RADIUS 在上述的應用情境中, NAS 扮演的定義為: Initial Entry Point to a Network, 換句話說, 扮演類似 router 的角色, 做為對外網路的代理, RADIUS Server (Proxy) 的功能則是對應一分散式網路框架, 當 NAS 分屬不同地區的區域網路 router 時, 可以透過 proxy 的代理, 將各地區域網路的認證導向統一的 RADIUS Server. 事實上, 在一開始敘述的應用環境中, 使用者裝置一共認證兩次: 第一次, 連上 WiFi 網路, RADIUS 會先給予此 MAC 位址准入權限, 並將通訊導向設定的網頁伺服器, 第二次, 透過網頁伺服器送出使用者名稱與密碼 (或其他認證手段), 此時使用者才真正擁有上網的權限, 如下圖所示: 來自:  https://www.watchguard.com/help/docs/help-center/en-US/Content/en-US/Wi-Fi-Cloud/manage_wirelessmanager/configuration/wifi_access/radius_mac_auth.html RADIUS 伺服器的功能不止於此, 還可以包含使用者登入後的計費, 登入時間控管等, 甚至也可以和 VLAN 結合, 動態賦予流量不同的安全設定. 同時, 為了進一步增強 RADIUS 的安全性, RADIUS 也加入了和 EAP (Extensibl...

LTE筆記: SGi interface 和 SGi LAN 在 4G 網路中的應用

圖片
在 LTE 的核網中, 資料透過 PDN (Package Data Network) gateway 連結外部網路, 在過往我的理解中, 資料只要出了 PDN GW, 就是和網際網路 (Internet) 相連, 因此, 不論是封包的轉傳, 或是應用的提供, 應該都要回歸 IP 層的設定. 然而, 事實上, 在 PDN GW 和 Internet 之間, 3GPP 還定義一個通訊界面, 稱為 SGi, 在此介面上, 或者說是在這中間的網路 (SGi LAN), 可以建立不同的應用,  用以提供各式加值服務, 以下是對 SGi 介面的定義: Interface between the PDN-GW and a packet data network. It may be an operator external public or private packet data network or an intra operator packet data network, e.g. for provision of IMS services 在定義中的 IMS (IP Multimedia Subsystem) services, 為電信商所提供的多媒體服務, 像是: VoLTE, 影像電話等, 和一般網際網路的應用不同, IMS 服務可以存取核網資訊 (例如: HSS 資料庫), 並透過其在核心網路出口的優勢, 提供較佳反應時間與頻寬. 另一方面, SGi LAN 也可以用以實作防火牆, DPI (Deep Packet Inspection), 等安全控制功能, 並可透過服務疊加的方式 (service chaining), 提供不同服務組合, 如下圖所示: 來自:  https://blog.advantech.com/tech-blogs/ntg/2017/11/sgi-lan-service-chaining/ 我們可以看到可以利用 SGi LAN 實現的服務可以分成兩類: 電信商的應用服務: 對於此類服務, 一開始的 IP 位址就必須為電信商服務的 IP, 當服務進入 SGi LAN 之後, 可藉由 NAT 實現負載平衡, 並利用資料中心內的資源, 提供服務 網路安全管理: 此類應用可以利用防火牆的設定, 提供 黑名單/白名單 的功能, 也...

LTE筆記: Service-Based Architeture (SBA) in in 5G Core Network ~2

圖片
在上一篇文章中, 我們介紹了 SBA 的架構,  然而, 考慮到 SBA 架構中, 出現不少 5G 專有的元件, 因此, 我們參考了 TS 23.502 4.3.6.3 中的一個和 routing 相關範例  (An example for interactions between AF and NEF), 說明如何在 SBA 架構下進行資料的交換. 此範例中,  AF (Application Function) 提供控管 User Plane 資料流的功能  (Application Function influence on traffic routing), AF 透過 SBA 架構, 對 SMF (Session Management Function) 下達指令, 更改在 Core Network 中的資料轉傳路徑, 完成 SDN (Software-Define Network) 的功能,  至於, NEF (Network Exposure Function) 則扮演不安全網路的代理角色, 整體流程如下所示: 來自: https://www.tech-invite.com/3m23/toc/ tinv-3gpp-23-502_t.html#e-4-3-6 此範例中,  訊息主要在 SMF 和 AF 之間交換, 又分成兩種情況: AF 在安全的網域內 (例如: 在 Core Network 之中), 以及 AF 在不安全的網域 (例如: Core Network 外部的應用程式), 可以用以下 4 個步驟解說: 因應預先 AF 設定的條件, 或是, session anchor 的建立, SMF 會向 AF 發出通知 (notification) 若 AF 非信任節點, 此通知以及回覆透過 NEF 送出 (2a, 2b, 2d, 2e, 4a, 4b, 4d, 4e) 若 AF 為信任節點, 此通知以及回覆可以直接在 SMF 和 AF 之間交換 (2c, 2f, 4c, 4f) SMF 根據 AF 的回覆, 修改 UPF (User Plane Function) 的 routing 規則 在此範例中, 我們可以了解 AF 以及 NEF 的功能與設計, 同時, 透過 SDN 概念的引入, 5G...

LTE筆記: Service-Based Architeture (SBA) in in 5G Core Network ~1

圖片
在 4G Core Network 中, 不同的單元之間, 透過不同的介面溝通, 此架構又稱為點對點 (Point-to-Point, P2P) 架構, 其優點在於可以針對每一個介面, 設計最佳的通訊協定, 然而, 這樣的架構也造成網路的僵化, 難以擴展新功能. 考量至此, 3GPP 在定義 5G Core Network 時, 引入了 Service-Oriented 的想法, 命名為: Service-Based Architeture (SBA),  定義於 TS 23.501, 並以 RESTful API 作為溝通的介面, JSON 作為溝通的格式, 在 SBA 架構下, 5G Core Network 拆解成許多獨立的功能模組, 如下圖所示: 在上圖中, 我們可以看到 SBA 架構下, 可以分成兩部分, 其中, 和 RAN 直接相關的部分 (UPF, AMF, SMF), 仍舊維持 P2P 的架構, 但是, 對 AMF 以及 SMF 的管理單元, 都在同一個匯流排上, 以 RESTful API 的方式串聯, 而在匯流排上的功能單元, UDM, AUSF, PCF 是屬於標準的 Control Plane 功能, 其中, 和 4G Core Network 的功能對應可以表示於下圖: 其中, 由於 Control Plane 和 User Plane 分離的緣故, SGW-U, PGW-U 分別代表了 Serving Gateway (SGW) 和 PDN Gateway (PGW) 的 User Plane, 相對的, SGW-C 和 PGW-C 則代表了 Control Plane 的功能, AMF 用以管理 UE 的 Access 和 Mobility, 而 SMF 管理 UE 的 Session,  此兩個功能元件, 直接和 UPF (User Plane Function, 主要就是資料的路由) 以及 RAN (Radio Access Network, 主要就是基地台) 溝通, 並直接給予指令, 因此, AMF 和 SMF 仍是走標準的 P2P 介面. 其他在匯流排上的 SBA 單元, 則可以視為提供 AMF 和 SMF 的計算單元, 若以 SDN 作為框架, AMF 和 SMF 角色類似於 OpenFlow, 而其他元件則...

LTE筆記: 5G 核心網路 (core network) 的演進

圖片
在通訊系統的演進中, 我們通常著重於 RAN (Radio Access Network) 的進展, 畢竟, RAN 的進步 (如: 傳送速率, 新的裝置, 等) 都比較和使用者相關, 但是, 相對於 RAN, 核心網路 (core network) 的改變也非常巨大, 從 3G 到 4G, 基本上完成了從 circuit switch 到 packet switch 的轉換, 讓行動網路, 不只有語音通訊的功能, 也引領手機裝置, 從功能手機演進為智慧型裝置, 接著, 從 4G 到 5G 網路, 面對多樣的終端裝置 (智慧手錶, 物聯網裝置, 等) 5G 核心網路引入兩個重要概念: 網路功能虛擬化 (Network Function Virtualization, NFV) 與雲端. 在本文中, 會著重在架構和功能的比較, 5G core network 的特色之後有機會再說明. 來自:  https://medium.com/@sarpkoksal/core-network-evolution-3g-vs-4g-vs-5g-7738267503c7 在 3G 的 core network 中, packet-switch 和 circuit-switch 是分開的, 其中, 負責 packet-switch 的是 GPRS (General Packet Radio Service), 藉由分時多工的方式, 分享通訊資源. 其中, SGSN 負責管理 UE 的 session, 移動性, 計費的功能, 可以想像是 control plane, GGSN 則負責將 IP-based 的在通訊系統傳送, 可以想像是 user plane. 來自:  https://medium.com/@sarpkoksal/core-network-evolution-3g-vs-4g-vs-5g-7738267503c7 到了 4G 網路, 就正式把 circuit-switch 從 core network 中移除, 相對於 3G 把所有功能都放在 SGSN 內, 4G core network 針對功能做了較佳的切分, 其中, MME 負責 session 和 mobility 的管理, HSS 為使用者認證資料庫, S-GW 將來自 internet 的...

[BLE] BLE 5.1 室內定位

圖片
在 BLE 5.1 中加入了對角度估測的支援, 此功能可以廣泛利用於室內定位的範疇, 提供公尺以下之定位精確度, 此定位功能利用多天線之技術, 估計目標裝置相對之角度, 又可以分成以下兩種估計之架構: AoA (Angle of Arrival) 和 AoD (Angle of Departure). 來自:  https://www.rohde-schwarz.com/ae/solutions/test-and-measurement/wireless-communication/ wireless-connectivity/bluetooth/bluetooth-direction-finding/bluetooth-direction-finding_251246.html 在 AoA 的架構下, 移動裝置需要單一天線, 並發送一特殊訊號 (DF-enabled packet), 固定裝置 (BLE Gateway, BLE GW) 擁有多根天線, 進行角度之估測, 在 DoA 的架構下, 移動裝置依然透過單一天線傳輸, 但是此時, 特殊的 DF-enabled packet 由 BLE GW 發出, 角度之估測則在移動裝置進行, 在 BLE 5.1 的架構下, 裝置必須發送一特殊訊號,  也就是上述的 DF-enabled packet, 其中 DF 為 Direction Finding  的縮寫, 此訊號的特色為包含一串 Constant Tone Extension (CTE) 訊號, 用以提供固定的波型 (waveform) 和頻率 (frequency) 的訊號, 以供接收端進行 IQ 的分解 (顯示收到訊號的的強度和相位改變), 進行之後之角度估測. https://www.bluetooth.com/wp-content/uploads/2019/05/BTAsia/1145-NORDIC-Bluetooth-Asia-2019Bluetooth-5.1-Direction-Finding-Theory-and-Practice-v0.pdf 在角度估測部分, 以 AoA 為例, 移動裝置發出 DF-enabled packet, 而 BLE GW 依序從不同天線接收,  因此, 每根天...