王亞星,李瓊
(哈爾濱工業(yè)大學(xué) 計算學(xué)部,哈爾濱 150001)
由于QKD 設(shè)備具有點對點模式的固有特性[1],利用多套QKD 設(shè)備的連接來構(gòu)建QKD 網(wǎng)絡(luò)[2-4],是突破節(jié)點規(guī)模和通信距離限制的一種主流解決方案。目前,單套QKD 設(shè)備已能夠在點對點模式下支持?jǐn)?shù)百公里的保密通信服務(wù),為構(gòu)建QKD 網(wǎng)絡(luò)提供了物質(zhì)保障。例如,單套QKD 設(shè)備在10 km 和50 km 的傳輸距離下,密鑰分發(fā)速率分別可達(dá)10 Mbps[5]和1 Mbps[5-6];單套QKD 設(shè)備在光纖和自由空間環(huán)境中的傳輸距離分別可達(dá)509 km 和1200 km[7-8]。搭建的實驗性QKD 網(wǎng)絡(luò)也已經(jīng)能夠為數(shù)十用戶提供千公里范圍內(nèi)的保密通信服務(wù),驗證了建設(shè)大規(guī)模QKD 網(wǎng)絡(luò)的物理可行性。經(jīng)過三十多年的發(fā)展,實驗性QKD 網(wǎng)絡(luò)的節(jié)點規(guī)模已經(jīng)從6 個擴展到了56 個,覆蓋范圍從19.6 km 擴展到了7 600 km[9-11]。隨著實驗性QKD 網(wǎng)絡(luò)用戶規(guī)模和覆蓋范圍的不斷擴大,預(yù)先進(jìn)行方案設(shè)計與仿真驗證在性能保障、設(shè)備優(yōu)化、成本控制等方面都發(fā)揮著至關(guān)重要的作用。
與經(jīng)典網(wǎng)絡(luò)領(lǐng)域不同,QKD 網(wǎng)絡(luò)的仿真驗證還沒有引起足夠的重視,相關(guān)的研究文獻(xiàn)較少。為了對通信過程中的量子密鑰消耗量進(jìn)行統(tǒng)計,Yang等人[12]在2017 年搭建了一個簡單的QKD 網(wǎng)絡(luò)仿真系統(tǒng)。然而,該系統(tǒng)將一套QKD 設(shè)備的密鑰生成能力設(shè)置為無窮大,僅對密鑰消耗進(jìn)行了統(tǒng)計,這與QKD 設(shè)備密鑰生成能力十分受限于光纖長度的特性是不相符的。此外,Mehic等人[13]在2017 年設(shè)計了一套相對完善的QKD 網(wǎng)絡(luò)仿真系統(tǒng),可支持對密鑰生成過程和流量生成過程的仿真模擬。然而,該系統(tǒng)將所有鏈路上的密鑰生成能力都假定為同一常數(shù),這不僅與QKD 設(shè)備密鑰生成能力十分受限于光纖長度的特性是不相符的,與QKD 網(wǎng)絡(luò)需要滿足的波動性通信流量需求特性也是不相符的。
為了對受限性密鑰生成能力、波動性通信流量需求及兩者之間的博弈關(guān)系進(jìn)行詳細(xì)分析,本文通過設(shè)計以全網(wǎng)密鑰生成模塊和多方并發(fā)流量生成模塊為核心的兩層架構(gòu),提出了一種基于兩層架構(gòu)的QKD 網(wǎng)絡(luò)仿真系統(tǒng),并基于NS3 平臺進(jìn)行實現(xiàn)。此外,使用單向時延、吞吐量、數(shù)據(jù)包投遞率及路由代價4 項指標(biāo),對傳統(tǒng)目的節(jié)點序列距離矢量協(xié)議(Destination Sequenced Distance Vector routing,DSDV)、路由協(xié)議應(yīng)用于QKD 網(wǎng)絡(luò)的通信性能進(jìn)行了仿真與分析,驗證本文所提仿真系統(tǒng)的可行性。
QKD 網(wǎng)絡(luò)與經(jīng)典網(wǎng)絡(luò)的最大不同之處在于,QKD 網(wǎng)絡(luò)的通信過程需要消耗QKD 設(shè)備生成的量子密鑰,導(dǎo)致了QKD 網(wǎng)絡(luò)的通信性能十分受限于密鑰生成能力與通信流量需求之間的匹配程度。由于密鑰生成能力取決于網(wǎng)絡(luò)中點對點連接的通信鏈路,而通信流量需求取決于網(wǎng)絡(luò)中端到端的通信用戶。為了對兩者之間的聯(lián)系進(jìn)行準(zhǔn)確描述,本文提出了一種基于兩層架構(gòu)的QKD 網(wǎng)絡(luò)仿真系統(tǒng)。該系統(tǒng)主要包含全網(wǎng)密鑰生成、多方并發(fā)流量生成、通信數(shù)據(jù)生成、通信數(shù)據(jù)接收、數(shù)據(jù)加密、數(shù)據(jù)解密、數(shù)據(jù)包封裝、數(shù)據(jù)包解析、密鑰管理及路由協(xié)議等多個關(guān)鍵模塊,QKD 網(wǎng)絡(luò)仿真系統(tǒng)如圖1 所示。
圖1 QKD 網(wǎng)絡(luò)仿真系統(tǒng)Fig.1 The simulation system of QKD network
該仿真系統(tǒng)中,全網(wǎng)密鑰生成模塊屬于量子層,用于模擬全網(wǎng)所有鏈路上的密鑰生成過程;其它模塊均屬于經(jīng)典層,用于模擬全網(wǎng)所有通信用戶之間的保密通信過程。為了最大限度地兼容傳統(tǒng)通信設(shè)施,除了全網(wǎng)密鑰生成模塊和多方并發(fā)流量生成模塊,需要針對QKD 網(wǎng)絡(luò)特點進(jìn)行特殊設(shè)計外,其它模塊均可借鑒經(jīng)典網(wǎng)絡(luò)中的技術(shù)方案。
全網(wǎng)密鑰生成模塊的主要功能,是對QKD 網(wǎng)絡(luò)受限性的密鑰生成能力進(jìn)行刻畫。2004 年,Gottesman、Lo、Lutkenhaus 與Preskill 4 位學(xué)者聯(lián)合提出了GLLP 理論,對單套QKD 設(shè)備的實際密鑰生成速率進(jìn)行計算[14],并在其后被廣泛采用。據(jù)此,本文設(shè)計的全網(wǎng)密鑰生成模塊,通過將QKD 設(shè)備看成黑盒,使用GLLP 理論對其外在特性,即密鑰生成速率,進(jìn)行了精確描述。
單套QKD 設(shè)備密鑰生成能力的計算公式為:
其中,freq表示光路重復(fù)頻率;q表示基選擇效率;Qμ表示信號態(tài)脈沖的響應(yīng)率,計算公式為:Qμ=表示信號態(tài)的平均光子數(shù);α表示每公里光纖的衰減系數(shù);d表示光纖長度;ηBob表示光路系統(tǒng)的透過率;Y0表示暗計數(shù)的響應(yīng)率;fec表示誤碼協(xié)商算法的糾錯效率;H2(x) 表示二進(jìn)制熵函數(shù);Eμ表示信號態(tài)脈沖的誤碼率(計算公式為:,其中,edetector表示探測器的探測效率;e0表示暗計數(shù)的誤碼率);Q1表示單光子脈沖的響應(yīng)率(計算公式為:Q1=);e1表示單光子脈沖的誤碼率(計算公式為:,v表示誘騙態(tài)的平均光子數(shù);Qv表示誘騙態(tài)脈沖的響應(yīng)率,計算公式為:Qv=1-;Ev表示誘騙態(tài)脈沖的誤碼率,計算公式為:;Y1表示單光子脈沖的計數(shù)率,計算公式為:Y1=。
根據(jù)公式(1)可計算出網(wǎng)絡(luò)中每套QKD 設(shè)備的密鑰生成能力。將各個密鑰生成能力進(jìn)行累加,即可得到全網(wǎng)總的密鑰生成能力。
多方并發(fā)流量生成模塊的主要功能,是對QKD網(wǎng)絡(luò)波動性的通信流量需求進(jìn)行刻畫。數(shù)據(jù)包的發(fā)送過程可認(rèn)為滿足以下假設(shè):
(1)在任意兩個互斥的時間段內(nèi),發(fā)送的數(shù)據(jù)包數(shù)目是互相獨立的隨機變量;
(2)在一個任意小的時間段內(nèi),發(fā)送一個數(shù)據(jù)包的概率與起始時間無關(guān),只與時間長度有關(guān);
(3)在一個任意小的時間段內(nèi),發(fā)送一個數(shù)據(jù)包的概率為1 或者為0。數(shù)據(jù)包的發(fā)送過程可被證明是一種泊松隨機過程,可用基于指數(shù)分布的發(fā)包間隔來模擬。
用λ表示單位時間內(nèi)平均數(shù)據(jù)包發(fā)送個數(shù);η表示多個數(shù)據(jù)包發(fā)送間隔組成的隨機數(shù)序列;ξ表示滿足[0,1]區(qū)間上均勻分布的隨機數(shù)序列。則η服從均值為1/λ的指數(shù)分布,計算公式為:
根據(jù)公式(2),可計算出每個通信對進(jìn)行流量生成的發(fā)包間隔。令網(wǎng)絡(luò)中所有通信根據(jù)各自的發(fā)包間隔同時進(jìn)行,即可得到多方并發(fā)的流量生成過程。
為了驗證本文所設(shè)計QKD 網(wǎng)絡(luò)仿真系統(tǒng)的有效性,本節(jié)使用單向時延、吞吐量、數(shù)據(jù)包投遞率及路由代價4 項指標(biāo),對傳統(tǒng)DSDV 路由協(xié)議應(yīng)用于QKD 網(wǎng)絡(luò)的通信性能進(jìn)行了仿真與分析。
實驗選用歐盟在2008 年搭建的實驗性QKD 網(wǎng)絡(luò)—SECOQC 網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),共包含6 個通信用戶和8 條通信鏈路,如圖2 所示。
圖2 SECOQC 網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)Fig.2 Topology of the SECOQC network
假定圖2 中每條鏈路上布置一套QKD 設(shè)備,每套QKD 設(shè)備的光學(xué)參數(shù)相同,見表1。將其帶入公式(1),可得到每套QKD 設(shè)備的密鑰生成能力。由于每條鏈路的光纖距離不同,每套QKD 設(shè)備的密鑰生成能力也不相同。
表1 QKD 設(shè)備的參數(shù)設(shè)計Tab.1 Parameters of QKD devices
令用戶v1為發(fā)送方,v6為接收方,進(jìn)行性能仿真。將數(shù)據(jù)包大小設(shè)置為500 字節(jié),平均通信流量需求設(shè)置為100 kbps,采用DSDV 路由協(xié)議得到的實驗結(jié)果如圖3 所示。
圖3 100 kbps 流量需求下的通信性能Fig.3 Network performance with 100 kbps communication rate
圖中4 項實驗指標(biāo)分別為:單向時延、吞吐量、數(shù)據(jù)包投遞率和路由開銷。單向時延是指數(shù)據(jù)包從發(fā)送到接收整個過程所耗費的時間;吞吐量是指單位時間內(nèi)成功傳送的數(shù)據(jù)總量;數(shù)據(jù)包投遞率是指接收方接收到的數(shù)據(jù)包總數(shù)與發(fā)送方發(fā)送的數(shù)據(jù)包總數(shù)的比值;路由開銷是指網(wǎng)絡(luò)運行過程中,路由包消耗的量子密鑰總量。由于一次一密加密機制要求密鑰與明文長度一致,該值等同于網(wǎng)絡(luò)運行過程中產(chǎn)生的路由包總量。
由圖中可見:在45 s 之前,網(wǎng)絡(luò)的各項指標(biāo)均正常,路由代價較高,約為3 kbps。但在45 s 后,單向時延急劇增大、吞吐量驟減為0、數(shù)據(jù)包投遞率驟減為0,表明接收方已經(jīng)無法收到發(fā)送方發(fā)來的數(shù)據(jù)包。即,在45 s時,網(wǎng)絡(luò)因量子密鑰不足發(fā)生了癱瘓。此后的時間里,由于沒有有效的數(shù)據(jù)包接收,單向時延、吞吐量、數(shù)據(jù)包投遞率的統(tǒng)計值一直保持為0,而QKD 設(shè)備生成的量子密鑰僅用于路由包的加密,路由代價稍有波動。
在本實驗的參數(shù)設(shè)計下,DSDV 路由協(xié)議只能支持45 s 的正常通信,隨后則會因為密鑰生成能力不足以支撐通信流量需求,而發(fā)生網(wǎng)絡(luò)癱瘓。至此,所提QKD 網(wǎng)絡(luò)仿真系統(tǒng)的有效性得到了驗證。
本文提出了一種以全網(wǎng)密鑰生成模塊和多方并發(fā)流量生成模塊為核心的QKD 網(wǎng)絡(luò)仿真系統(tǒng),并利用NS3 仿真平臺進(jìn)行了實現(xiàn)。基于DSDV 路由協(xié)議的仿真實驗,驗證了所提仿真系統(tǒng)的可行性。實驗結(jié)果給出了DSDV 路由協(xié)議應(yīng)用于QKD 網(wǎng)絡(luò)的性能局限,未來將針對QKD 網(wǎng)絡(luò)特點,對DSDV等傳統(tǒng)路由協(xié)議進(jìn)行優(yōu)化改進(jìn),以提升QKD 網(wǎng)絡(luò)的通信性能。