# 這是測量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)
}

# 取自於柯志亨老師-計算機網路實驗   一書
arrow
arrow
    全站熱搜

    NS2lab 發表在 痞客邦 留言(0) 人氣()