# 這是測量CBR封包遺失率的awk程式
BEGIN {
# 程式初始化, 設定一變數記錄packet被drop的數目
fsDrops = 0;
numFs = 0;
}
{
action = $1; # +/- 表示進入/離開了佇列 r/d表示封包被某個節點接收/丟棄
time = $2; # 事件發生的時間
from = $3; # 事件發生地點 (from node)
to = $4; # 事件發生地點 (to node)
type = $5; # 封包的型態
pktsize = $6; # 封包的大小
flow_id = $8; # 封包屬於哪個資料流
src = $9; # 封包的來源端 (a.b) a = 節點編號, b = port number
dst = $10; # 封包的目的端 (a.b) a = 節點編號, b = port number
seq_no = $11; # 封包的序號
packet_id = $12; # 封包的ID
# 統計從ns送出多少packets
if(from == 1 && to == 2 && action == "+")
numFs++;
# 統計flow_id為2, 且被drop的封包
if(flow_id == 2 && action == "d")
fsDrops++;
}
END{
printf("number of packets sent:%d lost:%d\n", numFs, fsDrops)
}
# 取自於柯志亨老師-計算機網路實驗 一書
全站熱搜
留言列表