版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1T/JSHLW003—2025多模態(tài)工業(yè)互聯(lián)網(wǎng)絡(luò)主動認(rèn)知內(nèi)生安全技術(shù)規(guī)范本標(biāo)準(zhǔn)規(guī)定了工業(yè)網(wǎng)絡(luò)設(shè)備可信身份認(rèn)證與訪問控制平臺的框架模型、數(shù)據(jù)接入接口技術(shù)要求等相關(guān)內(nèi)容。本標(biāo)準(zhǔn)規(guī)定了工業(yè)網(wǎng)絡(luò)針對DoS/DDoS網(wǎng)絡(luò)攻擊的檢測以及防御機(jī)制、硬件需求、系統(tǒng)架構(gòu)等相關(guān)內(nèi)容。本標(biāo)準(zhǔn)適用于工業(yè)網(wǎng)絡(luò)設(shè)備可信身份認(rèn)證與訪問控制平臺的應(yīng)用開發(fā)、工業(yè)網(wǎng)絡(luò)設(shè)備和系統(tǒng)子模塊的接入、數(shù)據(jù)采集與處理接口的開發(fā)。本標(biāo)準(zhǔn)適用于工業(yè)網(wǎng)絡(luò)環(huán)境下針對外部網(wǎng)絡(luò)攻擊的檢測以及防御平臺的設(shè)計(jì)以及組建。其他場合下的工業(yè)網(wǎng)絡(luò)設(shè)備可信身份認(rèn)證與訪問控制平臺框架以及對網(wǎng)絡(luò)攻擊的監(jiān)控、緩解機(jī)制,可參照本標(biāo)準(zhǔn)執(zhí)行。2規(guī)范性引用文件下列文件中的內(nèi)容通過文中的規(guī)范性引用應(yīng)用而構(gòu)成本文件必不可少的條款。其中,注日期的引用文件,僅該日期對應(yīng)的版本適用于本文件;不注日期的引用文件,其最新版本(包括所有的修改單)適用于本文件。YD/T3844-2021工業(yè)互聯(lián)網(wǎng)平臺應(yīng)用管理接口要求AII/001-2018工業(yè)互聯(lián)網(wǎng)平臺接口模型GB/T33137-2016基于傳感器的產(chǎn)品監(jiān)測軟件集成接口規(guī)范GB/T34068-2017物聯(lián)網(wǎng)總體技術(shù)智能傳感器接口規(guī)范GB/T34069-2017物聯(lián)網(wǎng)總體技術(shù)智能傳感器特性與分類GB/T42573-2023信息安全技術(shù)網(wǎng)絡(luò)身份服務(wù)安全技術(shù)要求GB/T31916.2-2018信息技術(shù)云數(shù)據(jù)存儲和管理GB/T43779-2024網(wǎng)絡(luò)安全技術(shù)基于密碼令牌的主叫用戶可信身份鑒別技術(shù)規(guī)范GB/T25062-2010信息安全技術(shù)鑒別與授權(quán)基于角色的訪問控制模型與管理規(guī)范GB/T31491-2015無線網(wǎng)絡(luò)訪問控制技術(shù)規(guī)范GB/T26230-2010信息技術(shù)系統(tǒng)間遠(yuǎn)程通信和信息交換無線高速率超寬帶媒體訪問控制和物理層接口規(guī)范GB/T38641-2020信息技術(shù)系統(tǒng)間遠(yuǎn)程通信和信息交換低功耗廣域網(wǎng)媒體訪問控制層和物理層規(guī)范GB/T37027-2018信息安全技術(shù)網(wǎng)絡(luò)攻擊定義及描述規(guī)范GB/T22080-2016信息技術(shù)安全技術(shù)信息安全管理體系要求GB/T30279-2020信息安全技術(shù)網(wǎng)絡(luò)安全漏洞分類分級指南2T/JSHLW003—20253術(shù)語、定義和縮略詞3.1術(shù)語和定義YD/T3844-2021、AII/001-2018、GB/T33137-2016、GB/T34068-2017、GB/T34069-2017、GB/T42573-2023、GB/T31916.2-2018、GB/T43779-2024、GB/T25062-2010、GB/T31491-2015、GB/T26230-2010、GB/T37027-2018、GB/T22080-2016、GB/T30279-2020以及GB/T38641-2020中界定的術(shù)語和定義,及以下術(shù)語和定義適用于本文件。3.1.1工業(yè)互聯(lián)網(wǎng)平臺IndustrialInternetPlatform工業(yè)互聯(lián)網(wǎng)平臺是面向工業(yè)數(shù)字化、網(wǎng)絡(luò)化、智能化需求,構(gòu)建基于數(shù)據(jù)采集、匯聚、分析的服務(wù)體系,支撐工業(yè)資源在連接、彈性供給、高效配置的工業(yè)云平臺。3.1.2傳感設(shè)備SensorDevice連接傳感器,具有通信接口的數(shù)據(jù)采集硬件設(shè)備。3.1.3采集模塊AcquisitionModule從傳感設(shè)備通信接口獲取信息的計(jì)算機(jī)程序。3.1.4表述性狀態(tài)轉(zhuǎn)移RepresentationalStateTransfer一種針對網(wǎng)絡(luò)應(yīng)用的設(shè)計(jì)和開發(fā)方式,指的是一組架構(gòu)約束條件和原則,可以降低開發(fā)的復(fù)雜性,提高系統(tǒng)的可伸縮性。3.1.5遠(yuǎn)程過程調(diào)用RemoteProcedureCall一種通過網(wǎng)絡(luò)從遠(yuǎn)程計(jì)算機(jī)程序上請求服務(wù),通過接口調(diào)用遠(yuǎn)程服務(wù)進(jìn)程中函數(shù)的方3.1.6角色身份Principals主體的標(biāo)識屬性,可以是任何形式的標(biāo)識,如用戶名、郵箱等。3.1.7證明/憑證Credentials主體所持有的、只有其知曉的安全值,例如密碼、數(shù)字證書等。3.1.8工業(yè)串行通信協(xié)議ModbusTCP/IP運(yùn)行在TCP/IP協(xié)議之上的Modbus工業(yè)串行通信協(xié)議。3T/JSHLW003—20253.1.9訪問控制策略AccessControlPolicy由應(yīng)用程序確定的角色與資源之間的綁定關(guān)系。3.1.10授權(quán)管理PrivilegeManagement對主體與角色之間的分配關(guān)系進(jìn)行管理。3.1.11拒絕服務(wù)攻擊DenialofServiceAttack任何使當(dāng)前服務(wù)可用性降低或者失去可用性的干涉均稱為拒絕服務(wù)攻擊3.1.12分布式拒絕服務(wù)攻擊DistributedDenialofServiceAttack分布式拒絕服務(wù)攻擊是指處于不同位置的多個(gè)攻擊者同時(shí)向一個(gè)或數(shù)個(gè)目標(biāo)發(fā)動拒絕服務(wù)攻擊,或者一個(gè)攻擊者控制了位于不同位置的多臺機(jī)器并利用這些機(jī)器對受害者同時(shí)實(shí)施拒絕服務(wù)攻擊。3.1.13深度學(xué)習(xí)DeepLearning深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一個(gè)分支,利用多層神經(jīng)網(wǎng)絡(luò)模型通過大量數(shù)據(jù)進(jìn)行自動特征提取和模式識別,用于解決如圖像識別、語音處理等復(fù)雜任務(wù)。深度學(xué)習(xí)通常能獲得比傳統(tǒng)方法更高的準(zhǔn)確度和魯棒3.1.14整數(shù)線性規(guī)劃IntegerLinearProgramming整數(shù)線性規(guī)劃(IntegerLinearProgramming,ILP)是一類優(yōu)化問題,其中決策變量要求是整數(shù),并且目標(biāo)函數(shù)和約束條件都是線性的。常用于許多實(shí)際問題中,例如生產(chǎn)調(diào)度、資源分配、運(yùn)輸問題和網(wǎng)絡(luò)設(shè)計(jì)等。3.1.15聯(lián)邦學(xué)習(xí)FederatedLearning聯(lián)邦學(xué)習(xí)(FederatedLearning)是一種分布式機(jī)器學(xué)習(xí)方法,旨在在多個(gè)設(shè)備或數(shù)據(jù)源之間進(jìn)行聯(lián)合建模,而無需集中收集或共享數(shù)據(jù)。它允許數(shù)據(jù)保留在本地設(shè)備上,通過在本地訓(xùn)練模型并僅共享模型參數(shù)(如權(quán)重)或梯度來進(jìn)行學(xué)習(xí),從而保護(hù)數(shù)據(jù)隱私和安全。3.2縮略詞下列縮略語適用于本文件HTTP,超文本傳輸協(xié)議(HyperTextTransferProtocol)REST,表述性狀態(tài)轉(zhuǎn)移(RepresentationalStateTransfer)RPC,遠(yuǎn)程過程調(diào)用(RemoteProcedureCall)URI,統(tǒng)一資源標(biāo)識符(UniformResourceIdentifier)JSON,JavaScript對象表示法(JavaScriptObjectNotation)4T/JSHLW003—2025XML,可擴(kuò)展標(biāo)記語言(eXtensibleMarkupLanguage)SSL,安全套接層(SecureSocketsLayer)TLS,傳輸層安全(TransportLayerSecurity)PLC,可編程邏輯控制器(ProgrammableLogicController)NIC,網(wǎng)絡(luò)接口控制器(NetworkInterfaceController)RTP,實(shí)時(shí)傳輸協(xié)議(Real-timeTransportProtocol)RTCP,實(shí)時(shí)傳輸控制協(xié)議(Real-timeTransportControlProtocol)DoS,拒絕服務(wù)(DenialofService)DDoS,分布式拒絕服務(wù)(DistributedDenialofService)P4,一種專為網(wǎng)絡(luò)設(shè)備設(shè)計(jì)的編程語言(ProgrammingProtocol-IndependentPacketProcessors)4系統(tǒng)架構(gòu)多模態(tài)工業(yè)互聯(lián)網(wǎng)絡(luò)主動認(rèn)知安防平臺應(yīng)包括工業(yè)網(wǎng)絡(luò)設(shè)備可信身份認(rèn)證與訪問控制組件、DoS/DDoS攻擊檢測與防御組件兩個(gè)關(guān)鍵組件。4.1工業(yè)網(wǎng)絡(luò)設(shè)備可信身份認(rèn)證與訪問控制組件系統(tǒng)架構(gòu)本標(biāo)準(zhǔn)針對工業(yè)網(wǎng)絡(luò)模態(tài)設(shè)備可信身份入網(wǎng)認(rèn)證和訪問控制,提出了可信身份認(rèn)證和訪問控制系統(tǒng),包含多維度指紋提取,多模態(tài)數(shù)據(jù)感知和時(shí)空頻一致性驗(yàn)證等關(guān)鍵技術(shù),支持對5種工業(yè)網(wǎng)絡(luò)模態(tài)設(shè)備的設(shè)備可信認(rèn)證和使用人員的可信身份認(rèn)證與訪問控制。該系統(tǒng)的架構(gòu)和網(wǎng)絡(luò)拓?fù)淙缦聢D所示,該架構(gòu)支持Modbus,Ethernet,Ethercat,Profinet和TSN等模態(tài)設(shè)備的可信認(rèn)證。5T/JSHLW003—20254.2DoS/DDoS攻擊檢測與防御組件系統(tǒng)架構(gòu)本標(biāo)準(zhǔn)基于可編程交換機(jī)提出了一系列新式的原語防御設(shè)計(jì)以實(shí)現(xiàn)線速度的流量分析檢測,同時(shí)增加邊緣服務(wù)器調(diào)整整體防御原語的最佳放置策略,并提出了聯(lián)邦學(xué)習(xí)的整體框架,通過邊緣服務(wù)器、中心服務(wù)器的合作訓(xùn)練以達(dá)到更好的防御效果,模塊整體的系統(tǒng)架構(gòu)圖如下所示。5工業(yè)網(wǎng)絡(luò)設(shè)備可信身份認(rèn)證與訪問控制組件5.1組件基礎(chǔ)服務(wù)模塊組件基礎(chǔ)服務(wù)模塊應(yīng)為可信身份認(rèn)證與訪問控制平臺提供基本的系統(tǒng)支撐保障,支持各類工業(yè)設(shè)備和角色的接入,涵蓋設(shè)備管理、數(shù)據(jù)管理、服務(wù)管理和安全訪問控制等基礎(chǔ)功能?;A(chǔ)框架應(yīng)采用Spring架構(gòu),但不限于此,亦可擴(kuò)展至SpringBoot框架,或基于SpringCloud實(shí)現(xiàn)分布式服務(wù)。基礎(chǔ)服務(wù)模塊應(yīng)包括設(shè)備管理模塊、數(shù)據(jù)管理模塊、用戶管理模塊以及安全與認(rèn)證模塊,其技術(shù)標(biāo)準(zhǔn)如下。5.1.1設(shè)備管理模塊設(shè)備管理模塊應(yīng)負(fù)責(zé)工業(yè)網(wǎng)絡(luò)設(shè)備可信身份認(rèn)證與訪問控制平臺中的設(shè)備管理。該模塊應(yīng)支持管理端自定義的設(shè)備注冊認(rèn)證、設(shè)備信息的增刪改操作,并基于多層級用戶角色、設(shè)備所處的時(shí)間、空間以6T/JSHLW003—2025及頻域一致性,實(shí)現(xiàn)設(shè)備權(quán)限管理功能。主要包括以下功能:設(shè)備權(quán)限注冊與驗(yàn)證、權(quán)限分組與統(tǒng)計(jì)、設(shè)備操作審核、運(yùn)行維護(hù)記錄查詢、可視化實(shí)時(shí)監(jiān)控等。其中,設(shè)備權(quán)限注冊指的是注冊設(shè)備在安全環(huán)境中運(yùn)行所需的條件,包括時(shí)間、空間、網(wǎng)絡(luò)環(huán)境等。在數(shù)據(jù)安全與網(wǎng)絡(luò)安全方面,設(shè)備管理模塊應(yīng)支持基于國產(chǎn)密碼方案的加密傳輸,保障數(shù)據(jù)傳輸安全。該模塊還應(yīng)實(shí)現(xiàn)設(shè)備的統(tǒng)一接入管理,并對可能遭受入侵的設(shè)備進(jìn)行物理隔離,從而保護(hù)自治系統(tǒng)內(nèi)其他節(jié)點(diǎn)的安全性。5.1.2數(shù)據(jù)管理模塊數(shù)據(jù)管理模塊的主要功能是管理工業(yè)設(shè)備可信身份認(rèn)證與訪問控制平臺中的各類數(shù)據(jù)。通過建立統(tǒng)一的數(shù)據(jù)訪問接口,屏蔽底層異構(gòu)的數(shù)據(jù)格式和存儲方式,使得數(shù)據(jù)訪問操作實(shí)現(xiàn)統(tǒng)一化,從而提高平臺的效率和兼容性。在數(shù)據(jù)安全與網(wǎng)絡(luò)安全方面,數(shù)據(jù)管理模塊應(yīng)通過數(shù)字簽名、脫敏處理、加密等技術(shù)手段,確保平臺中數(shù)據(jù)在全生命周期內(nèi)的安全性與可信性。5.1.3用戶管理模塊用戶管理模塊負(fù)責(zé)工業(yè)網(wǎng)絡(luò)設(shè)備可信身份認(rèn)證與訪問控制平臺中的用戶相關(guān)管理。該模塊應(yīng)支持用戶創(chuàng)建、用戶審核、角色創(chuàng)建、角色權(quán)限分配、用戶角色分配、用戶信息更改及用戶信息展示等基礎(chǔ)功能,并應(yīng)基于角色訪問控制(RBAC)技術(shù)實(shí)現(xiàn)用戶對資源的限制訪問。在用戶管理服務(wù)中,用戶審核注冊、用戶角色分配和角色權(quán)限分配應(yīng)符合RBAC規(guī)范。用戶管理系統(tǒng)的對象應(yīng)包括資源(如工業(yè)設(shè)備和系統(tǒng)中的其他資源)、權(quán)限、用戶和角色,主要操作包括:角色權(quán)限分配和用戶角色分配。權(quán)限是訪問資源與訪問策略的綁定。訪問策略包括角色訪問策略和設(shè)備訪問策略,只有同時(shí)符合這兩種訪問策略,用戶才能訪問相應(yīng)的設(shè)備資源。角色權(quán)限分配將權(quán)限與角色進(jìn)行映射,而用戶角色分配則將用戶與角色進(jìn)行關(guān)聯(lián),從而實(shí)現(xiàn)用戶對資源的控制訪問。5.1.4安全和認(rèn)證模塊安全和認(rèn)證模塊負(fù)責(zé)工業(yè)網(wǎng)絡(luò)設(shè)備的可信身份認(rèn)證與訪問控制平臺中用戶和設(shè)備相關(guān)數(shù)據(jù)的保護(hù)、身份認(rèn)證和訪問控制等功能,包括安全類接口和認(rèn)證類接口。安全類接口安全類接口應(yīng)涵蓋身份認(rèn)證、權(quán)限管理、訪問控制、密鑰管理、數(shù)據(jù)加解密、數(shù)據(jù)保護(hù)、業(yè)務(wù)操作合法性、業(yè)務(wù)連續(xù)性、安全管理和安全處置等多個(gè)類型。具體要求如下:身份認(rèn)證類至少應(yīng)包含:獲取認(rèn)證信息、上傳認(rèn)證信息等接口。權(quán)限管理類至少應(yīng)包含:獲取權(quán)限、授予權(quán)限、刪除權(quán)限等接口。訪問控制類至少應(yīng)包含:獲取權(quán)限資源等接口。密鑰管理類至少應(yīng)包含:密鑰上傳、密鑰刪除等接口。數(shù)據(jù)加解密類至少應(yīng)包含:數(shù)據(jù)加密、數(shù)據(jù)解密等接口。數(shù)據(jù)保護(hù)類至少應(yīng)包含數(shù)據(jù)脫敏、數(shù)據(jù)審查、數(shù)據(jù)安全防御接口;業(yè)務(wù)操作合法性類至少應(yīng)包含業(yè)務(wù)行為監(jiān)測、分析、建模,異常行為預(yù)警接口;業(yè)務(wù)連續(xù)性類至少應(yīng)包含數(shù)據(jù)備份、業(yè)務(wù)平臺容災(zāi)接口;安全管理類至少應(yīng)包含事件集中管理、安全態(tài)勢、通報(bào)預(yù)警接口;安全處置類至少應(yīng)包含安全演練、自動化智能處置接口接口支持至少應(yīng)包含SSL、TSL、SHA2、對稱加密算法和方式。7T/JSHLW003—2025設(shè)備認(rèn)證接口設(shè)備認(rèn)證類至少應(yīng)包含以下接口:獲取認(rèn)證信息、刪除認(rèn)證信息、驗(yàn)證認(rèn)證信息等接口。6DoS/DDoS攻擊檢測與防御組件6.1組件基礎(chǔ)服務(wù)模塊組件基礎(chǔ)服務(wù)模塊保證了組件的基本功能。DoS/DDoS攻擊檢測與防御組件主要應(yīng)用于網(wǎng)絡(luò)流量的檢測上,支持低延時(shí)、高精度的網(wǎng)絡(luò)流量檢測,且保證了面對新型的攻擊方式能夠快速檢測并且做出防御措施。模塊的實(shí)現(xiàn)需要硬件層面的支持,需至少保證一臺可編程交換機(jī)(推薦使用IntelTofino架構(gòu),但不限于此以及多臺服務(wù)器組成的邊緣服務(wù)器集群(集群的數(shù)量可自由調(diào)整,但最少應(yīng)滿足三臺及以上)?;A(chǔ)服務(wù)模塊包括高速流量檢測以及防御模塊、分布式異常數(shù)據(jù)學(xué)習(xí)模塊、異常數(shù)據(jù)檢測模塊。6.1.1高速流量檢測以及防御模塊該模塊需要可編程交換機(jī)在硬件層面提供支持。高速流量檢測以及防御模塊主要負(fù)責(zé)在網(wǎng)絡(luò)當(dāng)中以線速度分析所有經(jīng)過指定鏈路(交換機(jī))的所有流量數(shù)據(jù),該模塊支持根據(jù)預(yù)寫入分析策略對網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行分析判斷,并根據(jù)分析結(jié)果對數(shù)據(jù)包進(jìn)行特定的處理。對于當(dāng)前策略無法判斷的流量數(shù)據(jù),該模塊還應(yīng)負(fù)責(zé)將該流量轉(zhuǎn)發(fā)至邊緣服務(wù)器做進(jìn)一步判斷。因此,該模塊還應(yīng)至少支持三種基本的流量轉(zhuǎn)發(fā)操作:1)Drop:丟棄數(shù)據(jù)包(可用于異常流量)2)Forward:正常轉(zhuǎn)發(fā)數(shù)據(jù)包(可用于正常流量)3)Confuse:將該數(shù)據(jù)包轉(zhuǎn)發(fā)至邊緣服務(wù)器(主要針對無法判斷的數(shù)據(jù)包)為了應(yīng)對多種DoS/DDoS攻擊,模塊還應(yīng)具備實(shí)時(shí)更新分析策略的功能,提供用以更改策略的接口。從而實(shí)現(xiàn)低延遲,面對多種類攻擊的實(shí)時(shí)攻擊檢測防御。為了實(shí)現(xiàn)這一流程,可編程交換機(jī)需要對數(shù)據(jù)包進(jìn)行適當(dāng)?shù)慕馕龉ぷ?,推薦將數(shù)據(jù)數(shù)據(jù)包解析為如下部分,其中每個(gè)部分的解析要求如下:1)ethernet_t解析含義解析長度(單位:bit)48源MAC地址48以太網(wǎng)類型2)ipv4解析含義解析長度(單位:bit)源IP地址32目的IP地址32版本4IP報(bào)文頭部長度4服務(wù)質(zhì)量控制(優(yōu)先級、延遲等)88T/JSHLW003—2025整個(gè)IP數(shù)據(jù)包的長度標(biāo)識分片數(shù)據(jù)包的ID標(biāo)志位3當(dāng)前數(shù)據(jù)包在整個(gè)數(shù)據(jù)流當(dāng)中的相對位置數(shù)據(jù)包的生存時(shí)間8IP數(shù)據(jù)包的上層協(xié)議類型8IP頭部校驗(yàn)和3)tcp解析含義解析長度(單位:bit)源端口seq序列號32ack序列號32數(shù)據(jù)偏移量(TCP頭部長度)4保留位4標(biāo)志位1接收窗口大小校驗(yàn)和緊急指針6.1.2分布式異常數(shù)據(jù)學(xué)習(xí)模塊該模塊需要多臺服務(wù)器構(gòu)成的集群提供支持。分布式異常數(shù)據(jù)學(xué)習(xí)模塊負(fù)責(zé)收集網(wǎng)絡(luò)當(dāng)中新出現(xiàn)的異常數(shù)據(jù)(高速流量檢測以及防御模塊根據(jù)現(xiàn)有策略無法正確識別的數(shù)據(jù)包并將其作為訓(xùn)練樣本進(jìn)行模型的訓(xùn)練迭代,通過將新的模型部署到異常數(shù)據(jù)邊緣檢測模型處來保證組件始終使用最貼合當(dāng)前網(wǎng)絡(luò)環(huán)境的異常檢測模型。為了盡可能地不增加網(wǎng)絡(luò)負(fù)載以及降低通信延遲,標(biāo)準(zhǔn)規(guī)定該模塊采用聯(lián)邦學(xué)習(xí)的架構(gòu),邊緣服務(wù)器本地訓(xùn)練模型,只向中心服務(wù)器上傳訓(xùn)練得到的參數(shù),中心服務(wù)器進(jìn)行微調(diào)之后下發(fā)新的模型參數(shù),以此達(dá)到上述目的。6.1.3異常數(shù)據(jù)邊緣檢測模塊該模塊由多臺服務(wù)器構(gòu)成的邊緣服務(wù)器集群構(gòu)成。異常數(shù)據(jù)邊緣檢測模塊的主要功能是對高速流量檢測以及防御模塊無法根據(jù)已有策略分析的流量數(shù)據(jù)進(jìn)行判斷,該功能主要通過部署于服務(wù)器上的異常檢測模型來實(shí)現(xiàn)(諸如機(jī)器學(xué)習(xí)的隨機(jī)森林模型,深度學(xué)習(xí)的CNN模型等等通過預(yù)訓(xùn)練的模型對流量進(jìn)行分類,再根據(jù)分類結(jié)果制定對應(yīng)的轉(zhuǎn)發(fā)操作,并更新高速流量檢測以及防御模塊當(dāng)中的分析策略(以便再次遇到同類數(shù)據(jù)時(shí)可以快速直接判斷,9T/JSHLW003—2025為了實(shí)現(xiàn)上述功能,模塊應(yīng)支持P4RuntimeAPI以接收網(wǎng)絡(luò)數(shù)據(jù)包以及更新高速流量檢測以及防御模塊當(dāng)中的策略,同時(shí)在硬件層面上,應(yīng)保證能夠正常部署異常檢測模型(滿足內(nèi)存大小以及CPU計(jì)算能力等基本要求)。7系統(tǒng)關(guān)鍵技術(shù)7.1工業(yè)網(wǎng)絡(luò)設(shè)備可信身份認(rèn)證與訪問控制組件關(guān)鍵技術(shù)在綜合考慮工業(yè)網(wǎng)絡(luò)設(shè)備可信身份認(rèn)證與訪問控制平臺基礎(chǔ)服務(wù)的基礎(chǔ)上,針對惡意設(shè)備接入和訪問權(quán)限濫用的威脅,本標(biāo)準(zhǔn)提出了基于多模多維信息一致性的可信身份認(rèn)證技術(shù)和基于細(xì)粒度時(shí)空頻約束的精細(xì)訪問控制技術(shù),以實(shí)現(xiàn)網(wǎng)絡(luò)內(nèi)生的設(shè)備可信認(rèn)證和精細(xì)化訪問控制。以下定義了平臺關(guān)鍵技術(shù)標(biāo)準(zhǔn)和方法。7.1.1基于多模多維信息一致性的可信身份認(rèn)證技術(shù)本標(biāo)準(zhǔn)針對工業(yè)互聯(lián)網(wǎng)多模態(tài)網(wǎng)絡(luò)中設(shè)備數(shù)量龐大、類型繁多所帶來的設(shè)備可信問題,規(guī)范了基于多模態(tài)、多維度指紋信息的設(shè)備可信身份認(rèn)證方法,以實(shí)現(xiàn)網(wǎng)絡(luò)內(nèi)生的設(shè)備可信認(rèn)證。多維度指紋提取和驗(yàn)證技術(shù)規(guī)范了基于終端設(shè)備不可篡改或克隆的物理特征,跨環(huán)境、跨設(shè)備的高效物理層信號指紋提取技術(shù)。該技術(shù)與通信內(nèi)容無關(guān),結(jié)合終端系統(tǒng)特征,提供難以偽造的可靠終端標(biāo)識,實(shí)現(xiàn)快速、實(shí)時(shí)的特征匹配與驗(yàn)證。多模態(tài)數(shù)據(jù)精準(zhǔn)自適應(yīng)感知技術(shù)根據(jù)工業(yè)互聯(lián)網(wǎng)感知數(shù)據(jù)分析結(jié)果自適應(yīng)調(diào)整感知模式,建模分析不同模態(tài)數(shù)據(jù)和設(shè)備物理身份及網(wǎng)絡(luò)行為的相關(guān)性,建立多模態(tài)感知數(shù)據(jù)在時(shí)空頻多個(gè)維度上的語義連接,為不同的工業(yè)設(shè)備提供可信身份相關(guān)多模態(tài)數(shù)據(jù)的準(zhǔn)確、高效感知信息。時(shí)空頻信息一致性驗(yàn)證技術(shù)該技術(shù)通過多維度、多層次獲取各個(gè)模態(tài)數(shù)據(jù)的時(shí)間、空間和頻域語義信息,旨在實(shí)現(xiàn)模態(tài)內(nèi)自我校驗(yàn)與模態(tài)間互認(rèn)證的目標(biāo),從而克服時(shí)空頻一致性驗(yàn)證中的測不準(zhǔn)效應(yīng)。通過這一技術(shù),可以為不同的工業(yè)應(yīng)用提供可靠的設(shè)備可信身份認(rèn)證。7.1.2基于細(xì)粒度時(shí)空頻約束的精細(xì)訪問控制技術(shù)本標(biāo)準(zhǔn)針對工業(yè)互聯(lián)網(wǎng)多模態(tài)網(wǎng)絡(luò)中待訪問數(shù)據(jù)資源的規(guī)模龐大、類型復(fù)雜、以及安全需求差異大的問題,規(guī)范了基于時(shí)空頻約束的訪問控制機(jī)制,實(shí)現(xiàn)了網(wǎng)絡(luò)內(nèi)生的精細(xì)化訪問控制。時(shí)空頻數(shù)據(jù)域安全等級劃分技術(shù)本標(biāo)準(zhǔn)旨在規(guī)范工業(yè)互聯(lián)網(wǎng)數(shù)據(jù)域普適的細(xì)粒度安全等級劃分技術(shù)。該技術(shù)包括基于不同數(shù)據(jù)模態(tài)(如數(shù)據(jù)生成時(shí)間、數(shù)據(jù)類型、語義等多種維度)進(jìn)行數(shù)據(jù)安全評估,結(jié)合系統(tǒng)架構(gòu)和設(shè)備功能的安全性及數(shù)據(jù)泄露風(fēng)險(xiǎn)分析,提出動態(tài)安全等級調(diào)整策略,能夠應(yīng)對時(shí)空頻數(shù)據(jù)變化和安全性沖突問題。細(xì)粒度時(shí)空頻約束訪問策略技術(shù)T/JSHLW003—2025本標(biāo)準(zhǔn)規(guī)范了工業(yè)互聯(lián)網(wǎng)數(shù)據(jù)域普適的細(xì)粒度時(shí)空頻約束訪問策略技術(shù)。該技術(shù)包括使用機(jī)器學(xué)習(xí)和統(tǒng)計(jì)方法分析不同時(shí)空頻條件下,基于用戶身份和屬性信息的訪問頻次和效率。通過自動化分組用戶和資源,優(yōu)化訪問控制策略,以實(shí)現(xiàn)更高效的資源管理和訪問控制。時(shí)空頻約束實(shí)時(shí)可信驗(yàn)證技術(shù)本標(biāo)準(zhǔn)針對工業(yè)互聯(lián)網(wǎng)環(huán)境中接入設(shè)備變化復(fù)雜、訪問人員多變的特點(diǎn),規(guī)范了高效的時(shí)空頻約束身份可信驗(yàn)證機(jī)制。此機(jī)制要求在訪問控制中,驗(yàn)證訪問行為的時(shí)間、空間、頻域信息,以及訪問者的身份信息,從而確保訪問請求的可信性。7.2DoS/DDoS攻擊檢測與防御組件關(guān)鍵技術(shù)7.2.1基于可編程交換機(jī)的線速度流量檢測技術(shù)低延遲的網(wǎng)絡(luò)流量實(shí)時(shí)檢測依托于現(xiàn)在最先進(jìn)的可編程硬件--可編程交換機(jī)之上,可編程交換機(jī)通過專用集成電路設(shè)計(jì),允許用戶通過P4程序直接在網(wǎng)絡(luò)層實(shí)現(xiàn)自定義操作,本標(biāo)準(zhǔn)基于此提出了基于可編程交換機(jī)的線速度流量檢測技術(shù),其中包括對復(fù)雜P4程序進(jìn)行原語級別的封裝設(shè)計(jì)、可編程交換機(jī)內(nèi)部的自適應(yīng)調(diào)整防御機(jī)制,以及基于整數(shù)規(guī)劃的最佳原語放置技術(shù)。復(fù)雜P4程序的原語封裝設(shè)計(jì)標(biāo)準(zhǔn)為了進(jìn)一步簡化部署P4程序的困難,規(guī)范部署程序的方式,將復(fù)雜的P4代碼以功能模塊的方式整合為原語,每一種原語代表了可編程交換機(jī)當(dāng)中的一些統(tǒng)計(jì)性的功能(以COUNT原語為例,表示統(tǒng)計(jì)具有某種特征的數(shù)據(jù)包個(gè)數(shù))。這些原語轉(zhuǎn)而替代P4代碼作為基本的編程組件參與到模塊設(shè)計(jì),以實(shí)現(xiàn)更便于理解的代碼設(shè)計(jì)。自適應(yīng)調(diào)整防御機(jī)制為了應(yīng)對多種攻擊,標(biāo)準(zhǔn)提出了自適應(yīng)調(diào)整防御機(jī)制(Monitor原語實(shí)時(shí)統(tǒng)計(jì)當(dāng)前數(shù)據(jù)包的各種特征數(shù)據(jù),根據(jù)特征的不同啟用不同的防御策略。該機(jī)制支持將多種策略同時(shí)部署至可編程交換機(jī)上,根據(jù)不同的流量特征調(diào)用對應(yīng)的防御措施,提高防御機(jī)制的靈活性。基于整數(shù)規(guī)劃的最佳原語放置技術(shù)考慮到可編程交換機(jī)計(jì)算存儲資源極其有限,無法存儲過多的防御策略,本標(biāo)準(zhǔn)通過系將其規(guī)范為0-1整數(shù)線性規(guī)劃(ILP)問題,并通過求解器得到最優(yōu)解的方式來確保最佳原語放置(部分原語直接部署于可編程交換機(jī),保證可編程交換機(jī)資源飽和的情況下,將其他原語卸載到邊緣服務(wù)器端)。7.2.2基于聯(lián)邦學(xué)習(xí)架構(gòu)的模型更新方法標(biāo)準(zhǔn)定義了聯(lián)邦學(xué)習(xí)訓(xùn)練框架,用于持續(xù)學(xué)習(xí)網(wǎng)絡(luò)狀態(tài)并更新集群服務(wù)器上部署的原始模型。該方法具有兩大優(yōu)勢1.保證了多臺邊緣服務(wù)器上都具有相應(yīng)的本地模型,避免所有流量分析任務(wù)集中于某臺服務(wù)器,造成高延遲。2.模型的訓(xùn)練過程都在本地完成,聯(lián)邦學(xué)習(xí)進(jìn)行模型更新只需要向中心服務(wù)器上傳本地模型的參數(shù)即可,大大降低網(wǎng)絡(luò)帶寬消耗。該方法的技術(shù)路線如圖:T/JSHLW003—20257.2.3基于深度學(xué)習(xí)的異常檢測方法為了進(jìn)一步提高對于異常流量分析的能力,標(biāo)準(zhǔn)提出了使用深度學(xué)習(xí)模型對可編程交換機(jī)無法處理的數(shù)據(jù)進(jìn)行進(jìn)一步分析。深度學(xué)習(xí)當(dāng)中用于異常檢測的模型非常多,本標(biāo)準(zhǔn)并不限定深度學(xué)習(xí)模型。借助深度學(xué)習(xí)模型對網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行進(jìn)一步挖掘可以得到較為精確的分類結(jié)果,以此輔助可編程交換機(jī)的流量分析。8接口開發(fā)規(guī)范標(biāo)準(zhǔn)規(guī)范所有模塊之間,組件之間的接口開發(fā)都應(yīng)遵循以下原則:1)單一職責(zé)原則:每個(gè)接口應(yīng)專注于特定的驗(yàn)證任務(wù),便于工業(yè)物聯(lián)網(wǎng)設(shè)備狀態(tài)的追蹤和審計(jì),同時(shí)能夠更好地進(jìn)行訪問控制和權(quán)限管理。出現(xiàn)安全事故時(shí),可快速定位到具體的驗(yàn)證環(huán)節(jié)。2)開放封閉原則:接口設(shè)計(jì)需要考慮未來的擴(kuò)展性,新增的安全要求、驗(yàn)證機(jī)制或設(shè)備類型的加入,不應(yīng)影響現(xiàn)有的驗(yàn)證流程。3)里氏替換原則:在升級驗(yàn)證機(jī)制時(shí),新的驗(yàn)證方式應(yīng)能夠完全覆蓋舊的驗(yàn)證場景,并保證系統(tǒng)的兼容性。4)接口隔離原則:不同類型的設(shè)備和不同級別的驗(yàn)證需求應(yīng)使用不同的接口。這樣可以最小化每個(gè)接口的攻擊面,同時(shí)便于實(shí)施細(xì)粒度的安全控制。5)依賴倒置原則:接口應(yīng)依賴于抽象的安全策略和驗(yàn)證規(guī)則,而非具體的實(shí)現(xiàn)細(xì)節(jié)。當(dāng)安全策略需要調(diào)整時(shí),僅需修改策略定義,無需改變接口本身。6)最少知識原則:驗(yàn)證接口應(yīng)僅暴露必要的信息,所有內(nèi)部的驗(yàn)證細(xì)節(jié)和安全策略執(zhí)行過程應(yīng)對外部不可見。調(diào)用方只需了解如何正確使用接口進(jìn)行驗(yàn)證,而無需關(guān)心具體的驗(yàn)證機(jī)制。T/JSHLW003—2025基礎(chǔ)服務(wù)接口規(guī)范A.1設(shè)備管理服務(wù)接口1.工業(yè)互聯(lián)網(wǎng)設(shè)備加入接口路由地址/industry/createDevice接口功能從管理端加入對應(yīng)工業(yè)互聯(lián)網(wǎng)設(shè)備參數(shù)realm(String)域name(String)設(shè)備名字remark(String)設(shè)備備注type(String)網(wǎng)絡(luò)類型id(String)設(shè)備idfingerprint(String)設(shè)備指紋返回?zé)o2.工業(yè)互聯(lián)網(wǎng)設(shè)備刪除接口路由地址/industry/delDevice接口功能從管理端刪除對應(yīng)工業(yè)互聯(lián)網(wǎng)設(shè)備參數(shù)id(String)設(shè)備id返回?zé)o3.工業(yè)互聯(lián)網(wǎng)設(shè)備更新接口路由地址/industry/updateDevice接口功能從管理端更新工業(yè)互聯(lián)網(wǎng)設(shè)備狀態(tài)T/JSHLW003—2025參數(shù)id(String)設(shè)備idname(String)設(shè)備名字remark(String)設(shè)備備注返回?zé)o4.工業(yè)互聯(lián)網(wǎng)設(shè)備列表展示接口路由地址/industry/listDevice接口功能從管理端獲取工業(yè)互聯(lián)網(wǎng)設(shè)備列表參數(shù)offset(Integer)頁面偏移量limit(Integer)頁面大小返回res(Result<List<IndNetworkDeviceRes>>)物聯(lián)網(wǎng)設(shè)備列表5.時(shí)空頻信息創(chuàng)建接口路由地址/tsf/createTsf接口功能創(chuàng)建人員或設(shè)備對應(yīng)的時(shí)空頻信息參數(shù)type(Byte)指名是設(shè)備還是人員realm(String)域devId(String)設(shè)備iduserId(String)用戶idtime(String)時(shí)間space(String)空間返回?zé)o6.時(shí)空頻信息刪除T/JSHLW003—2025接口路由地址/tsf/delTsf接口功能刪除人員或設(shè)備對應(yīng)的時(shí)空頻信息參數(shù)id(String)時(shí)空頻id返回?zé)o7.時(shí)空頻信息更新接口路由地址/tsf/updateTsf接口功能更新時(shí)空頻信息參數(shù)id(String)時(shí)空頻idtime(String)時(shí)間space(String)空間返回?zé)o8.時(shí)空頻信息列表展示接口路由地址/tsf/listTsf接口功能從管理端獲取時(shí)空頻列表參數(shù)offset(Integer)頁面偏移量limit(Integer)頁面大小返回res(Result<List<TsfRes>>)時(shí)空頻列表A.2用戶管理服務(wù)接口1.部門創(chuàng)建接口路由地址/org/createOrgT/JSHLW003—2025接口功能創(chuàng)建部門參數(shù)name(String)部門名字chargeUserId(String)創(chuàng)建用戶名remark(String)部門說明返回?zé)o2.部門刪除接口路由地址/org/delOrg接口功能刪除部門參數(shù)id(String)部門iddelSubTree(int)子部門刪除策略返回?zé)o3.部門更新接口路由地址/org/update接口功能更新部門信息參數(shù)name(String)部門名字chargeUserId(String)修改用戶名remark(String)部門說明返回?zé)o4.部門中添加用戶接口路由地址/org/add/userT/JSHLW003—2025接口功能部門中添加用戶參數(shù)orgId部門iduserIds(Set<String>)添加用戶id返回?zé)o5.部門中移除用戶接口路由地址/org/remove/user接口功能部門中移除用戶參數(shù)orgId部門iduserIds(Set<String>)移除用戶id返回?zé)o6.查詢機(jī)用戶列表接口路由地址/serviceUser/list接口功能查詢機(jī)用戶列表參數(shù)q(String)查詢機(jī)用戶名roleId(String)角色身份offset(Integer)頁面偏移量limit(Integer)頁面大小返回res(Result<List<ServiceUserListResVo>>)機(jī)用戶列表7.創(chuàng)建機(jī)用戶接口路由地址/serviceUser/createT/JSHLW003—2025接口功能創(chuàng)建機(jī)用戶參數(shù)serviceName(String)機(jī)用戶名稱remark(String)機(jī)用戶描述返回?zé)o8.更新機(jī)用戶接口路由地址/serviceUser/update接口功能更新機(jī)用戶參數(shù)serviceName(String)機(jī)用戶名稱remark(String)機(jī)用戶描述secret(String)密鑰返回?zé)o9.刪除機(jī)用戶接口路由地址/serviceUser/del接口功能刪除機(jī)用戶參數(shù)id(String)用戶id返回?zé)o10.機(jī)用戶添加角色接口路由地址/serviceUser/add/role接口功能機(jī)用戶添加角色參數(shù)serviceUserId(String)機(jī)用戶idT/JSHLW003—2025roleIds(Set<String>)角色id返回?zé)o11.機(jī)用戶刪除角色接口路由地址/serviceUser/remove/role接口功能機(jī)用戶刪除角色參數(shù)serviceUserId(String)機(jī)用戶idroleIds(Set<String>)角色id返回?zé)o12.每日用戶數(shù)統(tǒng)計(jì)接口路由地址/stat/daily/users接口功能每日用戶數(shù)統(tǒng)計(jì)參數(shù)startDate(String)開始日期endDate(String)結(jié)束日期返回res(Result<List<Integer>>)用戶數(shù)量13.查詢熱門認(rèn)證資源接口路由地址/stat/top/resources接口功能熱門認(rèn)證資源查詢參數(shù)TopResourcesId(List<String>)資源id返回res(Result<List<TopResourcesStatResVo>>)熱門認(rèn)證資源14.每日登錄次數(shù)統(tǒng)計(jì)T/JSHLW003—2025接口路由地址/stat/daily/logins接口功能每日登錄次數(shù)統(tǒng)計(jì)參數(shù)startDate(String)開始日期endDate(String)結(jié)束日期type(int)資源類型返回res(Result<List<Integer>>)登錄次數(shù)統(tǒng)計(jì)15.認(rèn)證行為地理位置分布接口路由地址/stat/geo/logins接口功能認(rèn)證行為地理位置分布參數(shù)date(String)日期返回res(Result<List<LoginsGeoStatResVo>>)地理位置A.3認(rèn)證管理服務(wù)接口1.工業(yè)互聯(lián)網(wǎng)設(shè)備認(rèn)證接口路由地址/devAuth接口功能設(shè)備認(rèn)證參數(shù)type(Integer)通信協(xié)議類型返回res(Result<Object>)設(shè)備認(rèn)證結(jié)果2.人員認(rèn)證接口路由地址/userAuth接口功能人員認(rèn)證T/JSHLW003—2025參數(shù)userName(String)用戶名Password(String)密碼返回res(Result<Boolean>)人員認(rèn)證結(jié)果3.獲取存在的設(shè)備類型接口路由地址/getExistTypes接口功能獲取存在的設(shè)備類型參數(shù)無返回res(Result<List<Integer>>)存在的設(shè)備類型4.遠(yuǎn)程啟動電機(jī)接口路由地址/startMotor接口功能啟動電機(jī)參數(shù)id(String)設(shè)備id返回?zé)o5.遠(yuǎn)程關(guān)閉電機(jī)接口路由地址/stopMotor接口功能關(guān)閉電機(jī)參數(shù)無返回?zé)oA.4安全防御服務(wù)接口1.工業(yè)互聯(lián)網(wǎng)設(shè)備負(fù)載查詢T/JSHLW003—2025接口路由地址/loadQuery接口功能檢查設(shè)備的運(yùn)作情況參數(shù)無返回res(Result<List<Integer>>)設(shè)備的工作負(fù)載(例如:cpu占用率)2.遠(yuǎn)程開啟防御策略接口路由地址/startDefense接口功能開啟防御策略參數(shù)無返回?zé)o3.遠(yuǎn)程變更防御策略接口路由地址/updatePolicy接口功能變更可編程交換機(jī)上的防御原語參數(shù)attackClass(String)攻擊類型返回?zé)o4.查詢檢測模型實(shí)時(shí)檢測結(jié)果接口路由地址/modelQuery接口功能查詢模型對當(dāng)前流量的分析結(jié)果參數(shù)無返回flowClass(String)流量種類T/JSHLW003—20255.查詢防御策略執(zhí)行情況接口路由地址/workQuery接口功能查詢當(dāng)前防御策略的執(zhí)行具體情況參數(shù)無返回res(Result<List<WorkStatusTable>>)開啟的防御原語以及對應(yīng)的命中次數(shù)列表T/JSHLW003—2025可編程交換機(jī)原語代碼B.1udp-flooddefense/*-*-P4_16-*-*/#include<core.p4>#include<v1model.p4>/*CONSTANTS*/constbit<16>TYPE_IPV4=0x800;constbit<8>TYPE_TCP=6;constbit<8>TYPE_UDP=17;#defineBLOOM_FILTER_ENTRIES4096#defineBLOOM_FILTER_BIT_WIDTH1/************************************************************************************************HEADERS************************************************************************************************************/typedefbit<9>egressSpec_t;typedefbit<48>macAddr_t;typedefbit<32>ip4Addr_t;headerethernet_t{macAddr_tdstAddr;macAddr_tsrcAddr;bit<16>etherType;}headeripv4_t{bit<4>bit<4>bit<8>bit<16>bit<16>bit<3>bit<13>version;ihl;diffserv;totalLen;identification;flags;fragOffset;bit<8>bit<8>bit<16>T/JSHLW003—2025ttl;protocol;hdrChecksum;ip4Addr_tsrcAddr;ip4Addr_tdstAddr;}headertcp_t{bit<16>srcPort;bit<16>dstPort;bit<32>seqNo;bit<32>ackNo;bit<4>bit<4>bit<1>bit<1>bit<1>bit<1>bit<1>bit<1>bit<1>bit<1>dataOffset;res;cwr;ece;urg;ack;psh;rst;syn;fin;bit<16>window;bit<16>checksum;bit<16>urgentPtr;}headerudp_t{bit<16>srcPort;bit<16>dstPort;bit<16>length_;bit<16>checksum;}structmetadata{/*empty*/}structheaders{ethernet_tipv4_ttcp_tudp_tethernet;ipv4;tcp;udp;T/JSHLW003—2025}/************************************************************************************************PARSER************************************************************************************************************/parserMyParser(packet_inpacket,outheadershdr,inoutmetadatameta,inoutstandard_metadata_tstandard_metadata){statestart{transitionparse_ethernet;}stateparse_ethernet{packet.extract(hdr.ethernet);transitionselect(hdr.ethernet.etherType){TYPE_IPV4:parse_ipv4;default:accept;}stateparse_ipv4{packet.extract(hdr.ipv4);transitionselect(tocol){TYPE_TCP:tcp;TYPE_UDP:udp;default:accept;}statetcp{packet.extract(hdr.tcp);transitionaccept;}stateudp{packet.extract(hdr.udp);transitionaccept;}T/JSHLW003—2025/*************************************************************************************CHECKSUMVERIFICATION**************************************************************************************/controlMyVerifyChecksum(inoutheadershdr,inoutmetadatameta){}/***************************************************************************************INGRESSPROCESSING********************************************************************************************/controlMyIngress(inoutheadershdr,inoutmetadatameta,inoutstandard_metadata_tstandard_metadata){register<bit<BLOOM_FILTER_BIT_WIDTH>>(BLOOM_FILTER_ENTRIES)bloom_filter_1;register<bit<BLOOM_FILTER_BIT_WIDTH>>(BLOOM_FILTER_ENTRIES)bloom_filter_2;bit<32>reg_pos_one;bit<32>reg_pos_two;bit<1>reg_val_one;bit<1>reg_val_two;bit<1>direction;register<bit<32>>(4096)syn_register;register<bit<32>>(4096)ack_register;counter(4096,CounterType.packets_and_bytes)synCounter;counter(4096,CounterType.packets_and_bytes)ackCounter;bit<32>reg_val_syn;bit<32>reg_val_ack;register<bit<32>>(4096)udp_register;register<bit<48>>(4096)udp_first_time_register;bit<32>reg_val_udp;bit<48>udp_rate;bit<48>time_first_udp;bit<48>udp_duration;bit<48>udp_cnt;actiondrop(){mark_to_drop(standard_metadata);}actioncompute_hashes(ip4Addr_tipAddr1,ip4Addr_tipAddr2){T/JSHLW003—2025//Getregisterposition//Setk=2,2memberfuctionshash(reg_pos_one,HashAlgorithm.crc16,(bit<32>)0,{ipAddr1,ipAddr2,tocol},(bit<32>)BLOOM_FILTER_ENTRIES);hash(reg_pos_two,HashAlgorithm.crc32,(bit<32>)0,{ipAddr1,ipAddr2,tocol},(bit<32>)BLOOM_FILTER_ENTRIES);}actionipv4_forward(macAddr_tdstAddr,egressSpec_tport){standard_metadata.egress_spec=port;hdr.ethernet.srcAddr=hdr.ethernet.dstAddr;hdr.ethernet.dstAddr=dstAddr;hdr.ipv4.ttl=hdr.ipv4.ttl-1;}tableipv4_lpm{key={hdr.ipv4.dstAddr:lpm;}actions={ipv4_forward;drop;NoAction;}size=1024;default_action=drop();}actionset_direction(bit<1>dir){direction=dir;}tablecheck_ports{key={standard_metadata.ingress_port:exact;standard_metadata.egress_spec:exact;T/JSHLW003—2025}actions={set_direction;NoAction;}size=1024;default_action=NoAction();}apply{if(hdr.ipv4.isValid()){ipv4_lpm.apply();direction=0;//defaultreg_val_syn=0;reg_val_ack=0;reg_val_udp=0;if(check_ports.apply().hit){//testandsetthebloomfilterif(direction==0){compute_hashes(hdr.ipv4.srcAddr,hdr.ipv4.dstAddr);}else{compute_hashes(hdr.ipv4.dstAddr,hdr.ipv4.srcAddr);}//Packetcomesfromoutsidenetworkif(direction==1){//UDPFloodDefenseif(hdr.udp.isValid()){bloom_filter_1.read(reg_val_one,reg_pos_one);bloom_filter_2.read(reg_val_two,reg_pos_two);if(reg_val_one==1&®_val_two==1){//udp_register++udp_register.read(reg_val_udp,reg_pos_one);reg_val_udp=reg_val_udp+1;udp_register.write(reg_pos_one,reg_val_udp);}else{bloom_filter_1.write(reg_pos_one,1);bloom_filter_2.write(reg_pos_two,1);//savestarttimeudp_first_time_register.write(reg_pos_one,standard_metadata.ingress_global_timestamp);}T/JSHLW003—2025//calculateudprateudp_first_time_register.read(time_first_udp,reg_pos_one);udp_duration=standard_metadata.ingress_global_timestamp-time_first_udp;udp_cnt=(bit<48>)reg_val_udp;udp_rate=1;//rate100packetsif(udp_rate*udp_duration<udp_cnt*100*1000){drop();}//SYNFloodDefense//Ifthereisasynweupdatethebloomfilterandaddtheentryif(hdr.tcp.isValid()){if(hdr.tcp.syn==1){//updatesyn_registerbloom_filter_1.read(reg_val_one,reg_pos_one);bloom_filter_2.read(reg_val_two,reg_pos_two);if(reg_val_one==1&®_val_two==1){syn_register.read(reg_val_syn,reg_pos_one);reg_val_syn=reg_val_syn+1;syn_register.write(reg_pos_one,reg_val_syn);//syn_register++synCounter.count(1);}else{bloom_filter_1.write(reg_pos_one,1);bloom_filter_2.write(reg_pos_two,1);}if(hdr.tcp.ack==1&&hdr.tcp.rst!=1){//updateack_registerbloom_filter_1.read(reg_val_one,reg_pos_one);bloom_filter_2.read(reg_val_two,reg_pos_two);if(reg_val_one==1&®_val_two==1){ack_register.read(reg_val_ack,reg_pos_one);reg_val_ack=reg_val_ack+1;ack_register.write(reg_pos_one,reg_val_ack);//ack_register++ackCounter.count(1);}T/JSHLW003—2025}if(reg_val_syn-reg_val_ack>=50){drop();}}//Packetcomesfromoutside}}}/*****************************************************************************************EGRESSPROCESSING********************************************************************************************/controlMyEgress(inoutheadershdr,inoutmetadatameta,inoutstandard_metadata_tstandard_metadata){}/**************************************************************************************CHECKSUMCOMPUTATION***************************************************************************************/controlMyComputeChecksum(inoutheadershdr,inoutmetadatameta){apply{update_checksum(hdr.ipv4.isValid(),{hdr.ipv4.version,hdr.ipv4.ihl,hdr.ipv4.diffserv,hdr.ipv4.totalLen,hdr.ipv4.identification,hdr.ipv4.flags,T/JSHLW003—2025hdr.ipv4.fragOffset,hdr.ipv4.ttl,tocol,hdr.ipv4.srcAddr,hdr.ipv4.dstAddr},hdr.ipv4.hdrChecksum,HashAlgorithm.csum16);}/************************************************************************************************DEPARSER********************************************************************************************************/controlMyDeparser(packet_outpacket,inheadershdr){apply{packet.emit(hdr.ethernet);packet.emit(hdr.ipv4);packet.emit(hdr.tcp);}/************************************************************************************************SWITCH********************************************************************************************************/V1Switch(MyParser(),MyVerifyChecksum(),MyIngress(),MyEgress(),MyComputeChecksum(),MyDeparser())main;B.2syn-flooddefense/*-*-P4_16-*-*/#include<core.p4>#include<v1model.p4>/*CONSTANTS*/T/JSHLW003—2025constbit<16>TYPE_IPV4=0x800;constbit<8>TYPE_TCP=6;#defineBLOOM_FILTER_ENTRIES4096#defineBLOOM_FILTER_BIT_WIDTH1/************************************************************************************************HEADERS************************************************************************************************************/typedefbit<9>egressSpec_t;typedefbit<48>macAddr_t;typedefbit<32>ip4Addr_t;headerethernet_t{macAddr_tdstAddr;macAddr_tsrcAddr;bit<16>etherType;}headeripv4_t{bit<4>bit<4>bit<8>bit<16>bit<16>bit<3>bit<13>bit<8>bit<8>bit<16>version;ihl;diffserv;totalLen;identification;flags;fragOffset;ttl;protocol;hdrChecksum;ip4Addr_tsrcAddr;ip4Addr_tdstAddr;}headertcp_t{bit<16>srcPort;bit<16>dstPort;bit<32>seqNo;bit<32>ackNo;bit<4>dataOffset;T/JSHLW003—2025bit<4>res;bit<1>cwr;bit<1>ece;bit<1>urg;bit<1>ack;bit<1>psh;bit<1>rst;bit<1>syn;bit<1>fin;bit<16>window;bit<16>checksum;bit<16>urgentPtr;}structmetadata{/*empty*/}structheaders{ethernet_tipv4_ttcp_t}ethernet;ipv4;tcp;/************************************************************************************************PARSER************************************************************************************************************/parserMyParser(packet_inpacket,outheadershdr,inoutmetadatameta,inoutstandard_metadata_tstandard_metadata){statestart{transitionparse_ethernet;}stateparse_ethernet{packet.extract(hdr.ethernet);transitionselect(hdr.ethernet.etherType){TYPE_IPV4:parse_ipv4;default:accept;}T/JSHLW003—2025}stateparse_ipv4{packet.extract(hdr.ipv4);transitionselect(tocol){TYPE_TCP:tcp;default:accept;}statetcp{packet.extract(hdr.tcp);transitionaccept;}/*************************************************************************************CHECKSUMVERIFICATION**************************************************************************************/controlMyVerifyChecksum(inoutheadershdr,inoutmetadatameta){}/***************************************************************************************INGRESSPROCESSING********************************************************************************************/controlMyIngress(inoutheadershdr,inoutmetadatameta,inoutstandard_metadata_tstandard_metadata){register<bit<BLOOM_FILTER_BIT_WIDTH>>(BLOOM_FILTER_ENTRIES)bloom_filter_1;register<bit<BLOOM_FILTER_BIT_WIDTH>>(BLOOM_FILTER_ENTRIES)bloom_filter_2;bit<32>reg_pos_one;bit<32>reg_pos_two;bit<1>reg_val_one;bit<1>reg_val_two;bit<1>direction;register<bit<32>>(4096)syn_register;register<bit<32>>(4096)ack_register;register<bit<48>>(4096)first_time_register;counter(4096,CounterType.packets_and_bytes)synCounter;T/JSHLW003—2025counter(4096,CounterType.packets_and_bytes)ackCounter;bit<32>reg_val_syn;bit<32>reg_val_ack;bit<48>time_first_syn;bit<48>syn_rate;bit<48>syn_duration;bit<48>syn_cnt;actiondrop(){mark_to_drop(standard_metadata);}actioncompute_hashes(ip4Addr_tipAddr1,ip4Addr_tipAddr2){//Getregisterposition//Setk=2,2memberfuctionshash(reg_pos_one,HashAlgorithm.crc16,(bit<32>)0,{ipAddr1,ipAddr2,tocol},(bit<32>)BLOOM_FILTER_ENTRIES);hash(reg_pos_two,HashAlgorithm.crc32,(bit<32>)0,{ipAddr1,ipAddr2,tocol},(bit<32>)BLOOM_FILTER_ENTRIES);}actionipv4_forward(macAddr_tdstAddr,egressSpec_tport){standard_metadata.egress_spec=port;hdr.ethernet.srcAddr=hdr.ethernet.dstAddr;hdr.ethernet.dstAddr=dstAddr;hdr.ipv4.ttl=hdr.ipv4.ttl-1;}tableipv4_lpm{key={hdr.ipv4.dstAddr:lpm;}actions={ipv4_forward;drop;T/JSHLW003—2025NoAction;}size=1024;default_action=drop();}actionset_direction(bit<1>dir){direction=dir;}tablecheck_ports{key={standard_metadata.ingress_port:exact;standard_metadata.egress_spec:exact;}actions={set_direction;NoAction;}size=1024;default_action=NoAction();}apply{if(hdr.ipv4.isValid()){ipv4_lpm.apply();if(hdr.tcp.isValid()){direction=0;//defaultreg_val_syn=0;reg_val_ack=0;if(check_ports.apply().hit){//testandsetthebloomfilterif(direction==0){compute_hashes(hdr.ipv4.srcAddr,hdr.ipv4.dstAddr);}else{compute_hashes(hdr.ipv4.dstAddr,hdr.ipv4.srcAddr);}//Packetcomesfromoutsidenetworkif(direction==1){//SYNFlood//Ifthereisasynweupdatethebl
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建省南平市武夷山第三中學(xué)高三化學(xué)下學(xué)期期末試卷含解析
- 福建省南平市吳屯中學(xué)2021-2022學(xué)年高三化學(xué)聯(lián)考試卷含解析
- 5 周圍的人工世界 說課稿-2024-2025學(xué)年科學(xué)二年級上冊冀人版
- 2024深圳對外貿(mào)易貨物進(jìn)口貨物保險(xiǎn)合同3篇
- 2024汽車停車場管理三方租賃合同樣本
- 2024張家港新材料研發(fā)基地共建合同
- 暫估價(jià)設(shè)置及財(cái)政評審的要求和注意事項(xiàng)
- 外賣員合同范本(2篇)
- 大學(xué)生三方協(xié)議書(2篇)
- 2024年銷售折扣與信用政策3篇
- 全過程工程咨詢服務(wù)服務(wù)質(zhì)量保障方案
- 四年級數(shù)學(xué)(四則混合運(yùn)算)計(jì)算題專項(xiàng)練習(xí)與答案
- 心梗腦梗健康知識講座
- 成人經(jīng)鼻高流量濕化氧療臨床規(guī)范應(yīng)用專家共識
- 合同增項(xiàng)補(bǔ)充協(xié)議書范本
- 低壓電工常識及安全用電
- 2024五凌電力限公司招聘5人高頻考題難、易錯點(diǎn)模擬試題(共500題)附帶答案詳解
- 循環(huán)系統(tǒng)練習(xí)試題(含答案)
- 2024年安徽醫(yī)學(xué)高等??茖W(xué)校高職單招(英語/數(shù)學(xué)/語文)筆試題庫含答案解析
- 昭通土豆市場調(diào)研報(bào)告
- 公司招標(biāo)管理辦法(國有企業(yè)適用) 94m
評論
0/150
提交評論