第二章、 文獻探討
2.2 分封交換網路與封包遺失模型
要在個人電腦或終端裝置之間傳遞數位聲音,必須透過分封交換網路在點對 點之間交換數位資料,我們在這個小節介紹什麼是分封交換網路,以及用來模擬 分封交換網路封包遺失的數種模型。
2.2.1 分封交換網路 Packet Switch Network
和早期電話機房使用的線路交換網路(Circuit Switch Network)相比,分封 交換網路著重在頻寬上的最大使用率。在分封交換網路的模式中,資料會在發送 端被切割成一小塊、一小塊的封包,這些小塊的封包,會視網路當時的狀況經由 相同、或不同的路徑路由(route)到目的地。由於在傳輸的途中,封包會被暫時 存放在路徑節點的佇列(queue)中等待處理,與線路交換網路相比,這會造成可 能影響通話品質的動態延遲(variable delay)及封包遺失(packet loss),尤其 在網路設備過於老舊時,這種情況更是明顯。目前我們使用的網際網路(Internet) 就是採用這種資料交換方式。
2.2.2 Packet Loss/Loss Correlation Model
以現行 VoIP 的實作來看,為了效率上的考量,都以 UDP(User Datagram Protocol)來傳送語音封包。相較於 TCP(Transmission Control Protocol)來說,
UDP 提供了較快速,但相對不可靠的傳送服務機制。且由於 UDP 傳輸的不可靠,
會使得封包遺失的現象經常發生在網路中,尤其是當網路發生壅塞(congestion) 時;這現象通常起因於網路節點的緩衝區溢位(buffer overflow),即是它所接
收的已超過它所能處理的封包數量,以致於它必須被迫放棄處理某些封包。而網 在這個章節介紹三種有名、常被用來摸擬封包遺失的網路模型。分別是 Bernoulli Model、Gilbert Model、m-order Markov Model。
2.2.2.1 Bernoulli Model
Bernoulli[15]模型表示在網路中,封包遺失的機率會服從機率論裡的伯努
但一般來說,我們較少使用 Bernoulli Model,因為在大部份的網路應用程式中,
傳送封包的間隔並不會那麼大。
2.2.2.2 Gilbert Model
Gilbert Model[7][10],又稱為 two-state Markov Model。它的基本想法 是,現實網路中的封包遺失是會互相影響的,遺失的封包間,往往會存在短暫的 相依性( temporary dependency)。在許多文獻中都建議使用 Gilbert Model 來 模擬網路封包遺失。
Gilbert Model 經常被用來描述網路中突發封包遺失現象,它是由 E‧N‧
Gilbert 在 1960 年提出的,如圖 3 所示。
圖 3 Gilbert Model 狀態轉換圖(1)
Gilbert Model 用兩個獨立的件機率 p 和 q 來描述網路模型。
令一隨機變數 X 表代封包遺失的事件
0:
1:
則機率 p 表示由“0"狀態轉變到“1"狀態的機率,q 表示由“1"狀態轉變到
“0"狀態的機率。因此 p 又可以表示為 P01,即機率
P(X = 1 | X = 0) = (封包遺失事件的次數)/(封包沒有遺失事件的次數) 其中“封包遺失事件的次數"是將連續若干封包遺失視為『一次』遺失事件,即 為從 0 狀態轉變到 1 狀態的次數,同時也是從 1 狀態轉變到 0 狀態的次數。同樣 地,q 又可以表示為 P10,由於從 1 狀態轉變到 0 狀態的次數等於從 0 狀態轉變到 1 狀態的次數,因此得到
P(X = 0 | X = 1) = (發生遺失事件的次數)/(1 狀態出現的次數)
1-p 表示為 P00,即 P(X = 0 | X = 0),1-q 表示為 P11,即 P(X = 1 |X = 1)。則 Gilbert Model 又可用圖 4 來表示:
圖 4 Gilbert Model 狀態轉換圖(2)
設 P1為總平均遺失率,P0為總平均未遺失率,P1又稱為 ulp(Unconditional Loss Probability),P11稱為 clp(Conditional Loss Probability)。
0
0 狀態出現的次數
0 狀態出現的次數 1 狀態出現的次數
1 1 0
1 1 1
如上推導出的公式,p 和 q 可以分別用 ulp 和 clp 來表示。實際上 ulp 即為 一個網路的平均封包遺失率,而 clp 則反應了網路中遺失封包間的相依性,可以 用 clp 和 ulp 兩個參數來描述一個網路的封包遺失特性。如果 p+q=1,則 Gilbert Model 會轉化為只有一個狀態的 Bernoulli Model,此時 ulp = clp。表 11[7]
為在兩所大學間,量測該段學術網路計算後得到的值。
表 1 Gilbert Model 參數量測表
封包間隔時間 (ms)
8 20 50 100 200 500
ulp 0.23 0.16 0.12 0.10 0.11 0.09 clp 0.60 0.42 0.27 0.18 0.18 0.09
2.2.2.3 m-order Markov Model
m-order Markov Model[15]對遺失封包之間的相依性做了更詳細的描述。可 以這麼想,當 m =0 時,封包遺失率只有一種狀態,也就是 Bernoulli Model,
當 m=1 時,即成為 Gilbert Model。m 的次數越大,對封包遺失的相依性會描述 得越詳細(但在估算該網路時,必須耗用更多記憶體)。和 Gilbert Model 一樣,
同樣有如下假設:令隨機變數 s 表示封包遺失的事件。
0:
1:
定義 P(l(s) | l(s-k),……,l(s-2),l(s-1))為第 s 個封包的轉換機率,則所有 0 與1(l(s-m),…l(s-2),l(s-1_)的組合都會出現在狀態空間中。如圖 5 所示,
P(l(s)=1|l(s-2),l(s-1) = 01)表示若在第 s-2 個封包未遺失及第 s-1 個封包遺 失的條件之下,第 s 個封包遺失的條件機率,如此依序類推(詳細的估算方法參 考[15])。
圖 5 m-order Markov Model