ESP_NOW是上海樂鑫公司以其ESPxx無線WiFi晶片為基礎所定義的一種無線通信協定,這種通信協定是一種不需要交握(Handshake)的過程,就可以讓多個設備在不使用 WiFi 的情況下相互通信的協定。
該協定類似於2.4GHz低功耗的無線連接,這些設備之間在它們通信之前需要先經過配對的過程,配對完成後,是屬於點對點且安全的連接。這意味著在將設備相互配對後,它們之間的連接是連續且持久的,換句話說如果其中一個ESPxx模組板突然斷電或重置,當它重新啟動時,它會自動連接到它之前配對的對等實體以繼續通信。
在ESP-NOW中,應用程式的資料被封裝成供應廠商指定(Vendor – Specific)式的動作框架(action frame),它可以在沒有連接的狀態下從一個WiFi裝置傳送到另一個WiFi裝置上去。為了保護這個動作框架的安全性,在其中使用了CCMP (CTR with CBC-MAC) 這種安全通信協定 。
ESP-NOW框架格式
ESP-NOW使用所謂的供應廠商指定(Vendor – Specific)式動作框架(action frame),這個動作框架的格式內容如下,其預設的傳輸速度為 1 Mpbs。
供應廠商指定(Vendor – Specific)動作框架(action frame)格式內容
1.MAC Header:MAC表頭,由於 ESP-NOW 是無連接的,因此 MAC 標頭與標準WiFi框架的標頭略有不同,其中FrameControl 字段的 FromDS 和 ToDS的位元值均為0;接著第一個字段設定為目標地址,第二地址字段設定為來源地址,第三個地址字段設定為廣播地址(即0xff:0xff:0xff:0xff:0xff:0xff)。
2.Category Code:類別代碼,在此設定為表示供應商特定類別的值 (即127)。
3.Organization Identifier:組織識別碼,組織識別碼包含一個唯一代碼,即上海樂鑫申請的 MAC 地址的前三個bytes(0x18fe34)。
4.Random Values:隨機值,主要是用於防止網路的中繼攻擊(Realy Attack)之用。
5.Vendor Specific Content:供應廠商特定內容,其內容如下:
只需不到短短一分鐘...
輸入您的信箱與ID註冊即可享有一切福利!
會員福利
免費電子報
會員搶先看
主題訂閱
好文收藏